Add [-q] [-t TYPEREGEXP] [NAMEREGEXP] args to info [args|functions|locals|variables]
[external/binutils.git] / gdb / ChangeLog
1 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2
3         * stack.c (print_variable_and_value_data): Add preg and treg.
4         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
5         and update callers.
6         (print_frame_arg_vars): Likewise.
7         (prepare_reg): New function.
8         (info_locals_command): Extract info print args and use them.
9         (info_args_command): Likewise.
10         (_initialize_stack): Modify on-line help.
11         * symtab.c (treg_matches_sym_type_name): New function.
12         (search_symbols): New arg t_regexp.
13         (symtab_symbol_info): New args quiet, regexp, t_regexp.
14         (info_variables_command): Extract info print args and use them.
15         (info_functions_command): Likewise.
16         (info_types_command): Update call to symtab_symbol_info.
17         (_initialize_symtab): Modify on-line help.
18         * symtab.h (treg_matches_sym_type_name): New function.
19         (search_symbols): New t_regexp arg.
20
21 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
22
23         * cli-utils.c (extract_arg_maybe_quoted): New function.
24         (extract_info_print_args): New function.
25         (info_print_args_help): New function.
26         (report_unrecognized_option_error): New function.
27         * cli-utils.h (extract_arg_maybe_quoted): New function.
28         (extract_info_print_args): New function.
29         (info_print_args_help): New function.
30         (report_unrecognized_option_error): New function.
31
32 2018-10-26  Tom Tromey  <tom@tromey.com>
33
34         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
35         (compute_compunit_symtab_includes): Update.
36         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
37         (compunit_symtab_ptr): Likewise.
38
39 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
40
41         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
42         default_print_auxv_entry for specific tag values.
43
44 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
45
46         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
47
48 2018-10-26  Jim Wilson  <jimw@sifive.com>
49
50         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
51         (riscv_linux_sigframe_init): Declare.
52         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
53         (riscv_linux_sigframe): New.
54         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
55         (riscv_linux_sigframe_init): Define.
56         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
57
58         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
59         (riscv_isa_flen): Likewise.  Drop static.
60         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
61         (riscv_isa_flen): Likewise.  Declare.
62
63 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
64             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
65
66         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
67         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
68         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
69         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
70         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
71         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
72         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
73         Define.
74         (struct ppc_linux_features) <htm>: New field.
75         (ppc_linux_no_features): Add initializer for htm field.
76         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
77         new tdescs.
78         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
79         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
80         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
81         Define if not already defined.
82         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
83         and rs6000/powerpc-isa207-htm-vsx64l.
84         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
85         rs6000/powerpc-isa207-htm-vsx64l.xml.
86         * features/rs6000/power-htm-spr.xml: New file.
87         * features/rs6000/power-htm-core.xml: New file.
88         * features/rs6000/power64-htm-core.xml: New file.
89         * features/rs6000/power-htm-fpu.xml: New file.
90         * features/rs6000/power-htm-altivec.xml: New file.
91         * features/rs6000/power-htm-vsx.xml: New file.
92         * features/rs6000/power-htm-ppr.xml: New file.
93         * features/rs6000/power-htm-dscr.xml: New file.
94         * features/rs6000/power-htm-tar.xml: New file.
95         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
96         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
97         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
98         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
99         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
100         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
101         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
102         fetch_regset with HTM regsets.
103         (store_register, store_ppc_registers): Call store_regset with HTM
104         regsets.
105         (ppc_linux_nat_target::read_description): Set htm field in the
106         features struct if needed.
107         * ppc-linux-tdep.c: Include
108         features/rs6000/powerpc-isa207-htm-vsx32l.c and
109         features/rs6000/powerpc-isa207-htm-vsx64l.c.
110         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
111         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
112         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
113         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
114         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
115         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
116         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
117         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
118         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
119         (ppc32_linux_ctarregset): New globals.
120         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
121         (ppc_linux_collect_core_cpgrregset): New function.
122         (ppc_linux_iterate_over_regset_sections): Call back with the htm
123         regsets.
124         (ppc_linux_core_read_description): Check if the tm spr section is
125         present and set htm in the features struct.
126         (_initialize_ppc_linux_tdep): Call
127         initialize_tdesc_powerpc_isa207_htm_vsx32l and
128         initialize_tdesc_powerpc_isa207_htm_vsx64l.
129         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
130         Declare.
131         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
132         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
133         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
134         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
135         New fields.
136         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
137         Likewise.
138         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
139         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
140         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
141         New enum fields.
142         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
143         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
144         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
145         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
146         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
147         <PPC_CTAR_REGNUM>: Likewise.
148         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
149         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
150         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
151         (IS_CEFP_PSEUDOREG): Define.
152         (rs6000_register_name): Hide the upper halves of checkpointed VSX
153         registers.  Return names for the checkpointed DFP, VSX, and EFP
154         pseudo registers.
155         (rs6000_pseudo_register_type): Remove initial assert and raise an
156         internal error in the else clause instead.  Return types for the
157         checkpointed DFP, VSX, and EFP pseudo registers.
158         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
159         checkpointed DFP pseudo registers.
160         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
161         checkpointed VSX pseudo registers.
162         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
163         from efpr_pseudo_register_read and
164         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
165         registers.
166         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
167         Handle checkpointed DFP, VSX, and EFP registers.
168         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
169         (efp_ax_pseudo_register_collect): New functions.
170         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
171         register logic to new functions.  Handle checkpointed DFP, VSX,
172         and EFP pseudo registers.
173         (rs6000_gdbarch_init): Look for and validate the htm features.
174         Include checkpointed DFP, VSX and EFP pseudo-registers.
175         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
176         HTM registers.
177
178 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
179
180         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
181         without altivec or fpu.
182
183 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
184             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
185
186         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
187         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
188         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
189         Define if not already defined.
190         * features/rs6000/power-ebb.xml: New file.
191         * features/rs6000/power-linux-pmu.xml: New file.
192         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
193         features.
194         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
195         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
196         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
197         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
198         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
199         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
200         fetch_regset with ebb and pmu regsets.
201         (store_register, store_ppc_registers): Call store_regset with ebb
202         and pmu regsets.
203         (ppc_linux_nat_target::read_description): Set isa207 field in the
204         features struct if ebb and pmu are avaiable.
205         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
206         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
207         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
208         and pmu regsets.
209         (ppc_linux_core_read_description): Check if the pmu section is
210         present and set isa207 in the features struct.
211         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
212         (ppc32_linux_pmuregset): Declare.
213         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
214         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
215         <ppc_sier_regnum>: New field.
216         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
217         New enum values.
218         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
219         values.
220         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
221         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
222         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
223         ebb and pmu features.
224
225 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
226             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
227
228         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
229         (tdesc_powerpc_isa207_vsx64l): Declare.
230         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
231         (struct ppc_linux_features) <isa207>: New field.
232         (ppc_linux_no_features): Add initializer for isa207 field.
233         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
234         new tdescs.
235         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
236         (NT_PPC_TAR): Define if not already defined.
237         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
238         rs6000/powerpc-isa207-vsx64l.
239         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
240         rs6000/powerpc-isa207-vsx64l.xml.
241         * features/rs6000/power-tar.xml: New file.
242         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
243         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
244         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
245         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
246         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
247         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
248         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
249         fetch_regset with the TAR regset.
250         (store_register, store_ppc_registers): Call store_regset with the
251         TAR regset.
252         (ppc_linux_nat_target::read_description): Set isa207 field in the
253         features struct if needed.
254         * ppc-linux-tdep.c: Include
255         features/rs6000/powerpc-isa207-vsx32l.c and
256         features/rs6000/powerpc-isa207-vsx64l.c.
257         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
258         (ppc_linux_iterate_over_regset_sections): Call back with the tar
259         regset.
260         (ppc_linux_core_read_description): Check if the tar section is
261         present and set isa207 in the features struct.
262         (_initialize_ppc_linux_tdep): Call
263         initialize_tdesc_powerpc_isa207_vsx32l and
264         initialize_tdesc_powerpc_isa207_vsx64l.
265         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
266         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
267         (enum) <PPC_TAR_REGNUM>: New enum value.
268         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
269         feature.
270         (ppc_process_record_op31): Record changes to TAR.
271
272 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
273             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
274
275         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
276         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
277         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
278         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
279         (struct ppc_linux_features) <ppr_dscr>: New field.
280         (ppc_linux_no_features): Add initializer for ppr_dscr field.
281         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
282         new tdescs.
283         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
284         Define if not already defined.
285         * features/Makefile (WHICH): Add
286         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
287         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
288         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
289         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
290         * features/rs6000/power-dscr.xml: New file.
291         * features/rs6000/power-ppr.xml: New file.
292         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
293         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
294         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
295         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
296         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
297         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
298         * ppc-linux-nat.c: Include <sys/uio.h>.
299         (fetch_regset, store_regset, check_regset): New functions.
300         (fetch_register, fetch_ppc_registers): Call fetch_regset with
301         DSCR and PPR regsets.
302         (store_register, store_ppc_registers): Call store_regset with
303         DSCR and PPR regsets.
304         (ppc_linux_get_hwcap2): New function.
305         (ppc_linux_nat_target::read_description): Call
306         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
307         features struct if needed.
308         * ppc-linux-tdep.c: Include
309         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
310         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
311         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
312         (ppc32_linux_dscrregset): New globals.
313         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
314         and dscr regsets.
315         (ppc_linux_core_read_description): Check if the ppr and dscr
316         sections are present and set ppr_dscr in the features struct.
317         (_initialize_ppc_linux_tdep): Call
318         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
319         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
320         * ppc-linux-tdep.h (ppc32_linux_pprregset)
321         (ppc32_linux_dscrregset): Declare.
322         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
323         <ppc_dscr_regnum>: New field.
324         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
325         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
326         and dscr features.
327         (ppc_process_record_op31): Record changes to PPR and DSCR.
328
329 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
330
331         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
332         second initializer line for the have_* variables.  Initialize
333         have_fpu to 0 instead of 1.
334
335 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
336
337         * arch/ppc-linux-common.c (ppc_linux_match_description):
338         Parenthesize tdesc assignements and indent them properly.
339
340 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
341
342         * ppc-linux-nat.c (fetch_register): Change if statement to else
343         if.
344         (store_register): Likewise.
345
346 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
347
348         * rs6000-tdep.c: Remove reggroups.h include.
349         (rs6000_pseudo_register_reggroup_p): Remove.
350         (rs6000_gdbarch_init): Remove call to
351         set_tdesc_pseudo_register_reggroup_p.
352
353 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
354
355         * reggroups.c (default_register_reggroup_p): Return true for
356         decfloat registers and float_reggroup.
357
358 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
359
360         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
361         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
362         ppc_linux_collect_vrregset by regcache_collect_regset.
363
364 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
365
366         * linux-tdep.c (linux_collect_regset_section_cb): Use
367         std::vector<gdb_byte> instead of char * and malloc for buf.
368         Remove xfree.
369
370 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
371
372         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
373         symtab_start instead of always using language_unknown.
374
375 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
376
377         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
378         READ_P parameter, catch and ignore register access errors from
379         either the old or new MISA location.
380         (riscv_has_feature): Update call to riscv_read_misa_reg.
381
382 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
383
384         * python/py-function.c (convert_values_to_python): Return
385         gdbpy_ref<>.  Add header comment.
386         (fnpy_call): Adjust.
387
388 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
389
390         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
391         (cmdpy_completer_handle_brkchars): Adjust.
392         (cmdpy_completer): Adjust.
393
394 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
395
396         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
397         Pass correct regnum to raw_supply_zeroed.
398
399 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
400
401         * regcache.c (cooked_read_test): Add CSKY to the list of
402         architectures with a save_reggroup
403
404 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
405
406         PR gdb/23368
407         * infrun.c (follow_exec): In the follow_exec_mode_new case,
408         transfer terminal state from old new new inferior.
409         * terminal.h (swap_terminal_info): New function.
410         * inflow.c (swap_terminal_info): New function.
411
412 2018-10-23  Tom Tromey  <tom@tromey.com>
413
414         * record-btrace.c (get_thread_current_frame_id): Rename from
415         get_thread_current_frame.  Return a frame_id.
416         (record_btrace_start_replaying): Update.
417
418 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
419
420         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
421         for CSRs.
422
423 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
424
425         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
426         have_nonsteppable_watchpoint attribute to 1.
427
428 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
429
430         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
431         register names.
432         (struct register_alias): Rename to...
433         (struct riscv_register_alias): ...this, and update comment.
434         (riscv_register_aliases): Update type, and alias names.  Remove
435         CSR names from this list.
436         (riscv_register_name): Use riscv_gdb_reg_names for int and float
437         register names.  Add an extra assertion.
438         (riscv_is_regnum_a_named_csr): New function.
439         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
440
441 2018-10-22  Jim Wilson  <jimw@sifive.com>
442
443         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
444         FP reg smaller than FP reg size, and fill with -1 instead of 0.
445
446         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
447         (riscv_register_type): Use them.
448         (riscv_print_one_register_info): Handle union of floats same as float.
449         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
450         riscv_fpreg_q_type fields.
451
452 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
453
454         * gdbarch.sh (gdbarch_num_cooked_regs): New.
455         * gdbarch.h: Re-generate.
456         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
457         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
458         * eval.c (evaluate_subexp_standard): Likewise.
459         * findvar.c (value_of_register): Likewise.
460         (value_of_register_lazy): Likewise.
461         (address_from_register): Likewise.
462         * frame.c (get_frame_register_bytes): Likewise.
463         * gdbarch-selftests.c (register_to_value_test): Likewise.
464         * h8300-tdep.c (h8300_register_type): Likewise.
465         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
466         (i386_svr4_reg_to_regnum): Likewise.
467         * infcmd.c (default_print_registers_info): Likewise.
468         (registers_info): Likewise.
469         (print_vector_info): Likewise.
470         (default_print_float_info): Likewise.
471         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
472         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
473         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
474         (mi_cmd_data_list_changed_registers): Likewise.
475         (mi_cmd_data_list_register_values): Likewise.
476         (mi_cmd_data_write_register_values): Likewise.
477         (mi_cmd_trace_frame_collected): Likewise.
478         * mips-tdep.c (print_gp_register_row): Likewise.
479         (mips_print_registers_info): Likewise.
480         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
481         * regcache.c (init_regcache_descr): Likewise.
482         (register_size): Likewise.
483         (register_dump::dump): Likewise.
484         (cooked_read_test): Likewise.
485         (cooked_write_test): Likewise.
486         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
487         (rs6000_gdbarch_init): Likewise.
488         * stabsread.c (stab_reg_to_regnum): Likewise.
489         * stack.c (info_frame_command): Likewise.
490         * target-descriptions.c (tdesc_register_name): Likewise.
491         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
492         * tui/tui-regs.c (tui_show_register_group): Likewise.
493         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
494         (user_reg_map_regnum_to_name): Likewise.
495         (value_of_user_reg): Likewise.
496         (maintenance_print_user_registers): Likewise.
497         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
498         (xtensa_register_name): Likewise.
499         (xtensa_register_type): Likewise.
500         (xtensa_reg_to_regnum): Likewise.
501         (xtensa_pseudo_register_read): Likewise.
502         (xtensa_pseudo_register_write): Likewise.
503
504 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
505
506         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
507         correctly-sized buffer with raw_read.
508         (amd64_pseudo_register_write): Use correctly-sized buffer for
509         raw_read/raw_write.
510
511 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
512
513         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
514         in add_prefix_cmd of set print type.
515
516 2018-10-19  Tom Tromey  <tom@tromey.com>
517
518         PR tui/18388:
519         * NEWS: Mention tabset deprecation.
520         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
521         (update_tab_width): New function.
522         (tui_set_tab_width, tui_show_tab_width): New functions.
523         (tui_set_tab_width_command): Use update_tab_width.
524         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
525         Add new "set tui tab-width" command.
526         * tui/tui-source.c (tui_set_source_content): Update.
527         * tui/tui-disasm.c (tui_set_disassem_content): Update.
528         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
529         Don't declare.
530         (tui_tab_width): Declare.
531         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
532         (tui_set_default_tab_len): Remove.
533
534 2018-10-19  Tom Tromey  <tom@tromey.com>
535
536         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
537         (key_is_backspace, tui_getc): Don't declare.
538         * tui/tui-io.c (key_is_start_sequence): Now static.
539         (key_is_end_sequence, key_is_backspace): Remove.
540         (tui_getc): Now static.
541
542 2018-10-19  Tom Tromey  <tom@tromey.com>
543
544         * symfile.c (reread_symbols): Clear "static_links".
545
546 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
547
548         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
549         define.
550         (aarch64_linux_sigframe_init): Extra boundary checks.
551
552 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
553
554         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
555         the possibly non-existent tdesc type 'vec128', but the type of raw
556         register v16 instead.
557
558 2018-10-19  Gary Benson <gbenson@redhat.com>
559
560         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
561
562 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
563
564         PR cli/23785
565         * cli/cli-dump.c (restore_binary_file): Check if "file" is
566         NULL.
567
568 2018-10-17  Paul Koning  <paul_koning@dell.com>
569
570         * charset.c (convert_between_encodings): Fix unsigned overflow.
571
572 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
573
574         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
575         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
576         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
577         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
578         New functions.
579         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
580         and fbsd_info_proc_mappings_header.
581         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
582         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
583         New.
584
585 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
586
587         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
588         Solaris Maintainer.
589
590 2018-10-15  Tom Tromey  <tom@tromey.com>
591
592         * tui/tui.c (strcat_to_buf): Remove casts.
593         * tui/tui-winsource.c (tui_show_source_line)
594         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
595         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
596         * tui/tui-windata.c (tui_first_data_item_displayed)
597         (tui_delete_data_content_windows, tui_erase_data_content)
598         (tui_display_all_data, tui_display_data_from)
599         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
600         * tui/tui-win.c (tui_set_win_height)
601         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
602         casts.
603         * tui/tui-win.c (tui_resize_all): Remove casts.
604         (tui_scroll_backward_command, tui_set_focus)
605         (tui_set_tab_width_command): Likewise.
606         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
607         * tui/tui-regs.c (tui_show_register_group): Remove cast.
608         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
609         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
610         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
611         Remove casts.
612
613 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
614
615         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
616         AArch64/ARM maintainer.
617
618 2018-10-11  Gary Benson <gbenson@redhat.com>
619
620         * interps.h (interp::m_name): Make private and mutable.
621         * interps.c (interp::~interp): Free m_name.
622
623 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
624             Simon Marchi <simark@simark.ca>
625
626         * README (`configure' options): Add documentation for new
627         "--enable-unit-tests" option.
628         * acinclude.m4: Include "selftest.m4".
629         * configure: Regenerate.
630         * configure.ac: Use "GDB_AC_SELFTEST".
631         * maint.c (maintenance_selftest): Update message informing
632         that selftests have been disabled.
633         (maintenance_info_selftests): Likewise.
634         * selftest.m4: New file.
635
636 2018-10-10  Gary Benson <gbenson@redhat.com>
637
638         * remote.c (remote_target::remote_send_printf): Add
639         missing va_end found by Coverity.
640
641 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
642
643         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
644
645 2018-10-09  Tom Tromey  <tom@tromey.com>
646
647         * configure: Rebuild.
648         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
649         * NEWS: Update --enable-ubsan documentation.
650
651 2018-10-09  Gary Benson <gbenson@redhat.com>
652
653         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
654         found by Coverity.
655
656 2018-10-08  Tom Tromey  <tom@tromey.com>
657
658         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
659         variable.
660         (riscv_fbsd_init_abi): Likewise.
661
662 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
663         * valops.c (value_struct_elt_for_reference): Rename local variable
664         to work around the shadowing a previous local warning.
665
666 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
667
668         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
669         * NEWS: Mention new FreeBSD/riscv native configuration.
670         * configure.host: Add riscv*-*-freebsd*.
671         * configure.nat: Likewise.
672         * riscv-fbsd-nat.c: New file.
673
674 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
675
676         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
677         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
678         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
679         * NEWS: Mention new FreeBSD/riscv target.
680         * configure.tgt: Add riscv*-*-freebsd*.
681         * riscv-fbsd-tdep.c: New file.
682         * riscv-fbsd-tdep.h: New file.
683
684 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
685
686         * regcache.h (struct regcache_map_entry): Note that this type can
687         be used with traditional frame caches.
688         * trad-frame.c (trad_frame_set_reg_regmap): New.
689         * trad-frame.h (trad_frame_set_reg_regmap): New.
690
691 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
692
693         PR c++/16841
694         * valops.c (get_virtual_base_offset): New function.
695         (value_struct_elt_for_reference): Use it to get virtual base offset
696         and add it in calculating class member address.
697
698 2018-10-08   John Darrington <john@darrington.wattle.id.au>
699
700     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
701       (check_producer): Check if the producer is codewarrior.
702       (producer_is_codewarrior): New function.
703       (lnp_state_machine::record_line): Ignore is_stmt flag for records
704        produced by codewarrior.
705       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
706
707 2018-10-06  Tom Tromey  <tom@tromey.com>
708
709         PR python/19399:
710         * python/py-inferior.c: Add "architecture" entry.
711         (infpy_architecture): New function.
712
713 2018-10-06  Tom Tromey  <tom@tromey.com>
714
715         PR python/21765:
716         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
717         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
718         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
719         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
720
721 2018-10-06  Tom Tromey  <tom@tromey.com>
722
723         PR build/17077:
724         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
725         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
726         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
727         #include.
728
729 2018-10-06  Tom Tromey  <tom@tromey.com>
730
731         * python/py-breakpoint.c (bppy_get_location): Handle a
732         bp_breakpoint without a location.
733
734 2018-10-06  Tom Tromey  <tom@tromey.com>
735
736         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
737         (_RegEx): Reformat help text.
738         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
739         (AnyCallerIs, AnyCallerMatches): Reformat help text.
740         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
741         text.
742         * python/lib/gdb/command/xmethods.py (InfoXMethod)
743         (EnableXMethod, DisableXMethod): Remove help indentation.
744         Capitalize meta-syntactic variables.
745         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
746         (EnableUnwinder, DisableUnwinder): Remove help indentation.
747         Capitalize meta-syntactic variables.
748         * python/lib/gdb/command/explore.py (ExploreCommand)
749         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
750         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
751         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
752         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
753         Remove help indentation.
754         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
755         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
756         (DisableFrameFilter, SetFrameFilterPriority)
757         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
758
759 2018-10-06  Tom Tromey  <tom@tromey.com>
760
761         PR tui/28819:
762         * tui/tui-io.c (gdb_wgetch): New function.
763         (tui_mld_getc, tui_getc): Use it.
764
765 2018-10-05  Tom Tromey  <tom@tromey.com>
766
767         * sol-thread.c (sol_thread_target::wait): Rename inner
768         "save_ptid".
769
770 2018-10-04  Tom Tromey  <tom@tromey.com>
771
772         * configure: Rebuild.
773         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
774
775 2018-10-04  Tom Tromey  <tom@tromey.com>
776
777         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
778         declaration of "block".
779
780 2018-10-04  Tom Tromey  <tom@tromey.com>
781
782         * common/filestuff.c (fdwalk): Remove inner declaration of
783         "result".
784
785 2018-10-04  Tom Tromey  <tom@tromey.com>
786
787         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
788         "structs_addr" and hoist declaration.
789
790 2018-10-04  Tom Tromey  <tom@tromey.com>
791
792         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
793         variable "size".
794
795 2018-10-04  Tom Tromey  <tom@tromey.com>
796
797         * mdebugread.c (parse_partial_symbols): Use std::string.
798
799 2018-10-04  Tom Tromey  <tom@tromey.com>
800
801         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
802         * p-valprint.c (pascal_val_print): Split inner "i" variable.
803         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
804         header.
805         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
806         more inner scope.
807         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
808         * varobj.c (varobj_update): Rename inner "newobj",
809         "type_changed".
810         * valprint.c (generic_emit_char): Rename inner "buf".
811         * valops.c (find_overload_match): Rename inner "temp".
812         (value_struct_elt_for_reference): Declare "v" in more inner
813         scope.
814         * v850-tdep.c (v850_push_dummy_call): Rename "len".
815         * unittests/array-view-selftests.c (run_tests): Rename inner
816         "vec".
817         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
818         header.
819         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
820         "tsv" in more inner scope.
821         (print_one_static_tracepoint_marker): Rename inner
822         "tuple_emitter".
823         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
824         (tic6x_push_dummy_call): Don't redeclare "addr".
825         * target-float.c: Declare "dto" lower.
826         * symtab.c (lookup_local_symbol): Rename inner "sym".
827         (find_pc_sect_line): Rename inner "pc".
828         * stack.c (print_frame): Don't redeclare "gdbarch".
829         (return_command): Rename inner "gdbarch".
830         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
831         "sp".
832         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
833         header.
834         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
835         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
836         scope.
837         * remote.c (remote_target::update_thread_list): Don't redeclare
838         "tp".
839         (remote_target::process_initial_stop_replies): Rename inner
840         "thread".
841         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
842         (remote_target::wait_as): Don't redeclare "stop_reply".
843         (remote_target::get_thread_local_address): Rename inner
844         "result".
845         (remote_target::get_tib_address): Likewise.
846
847         * regcache.c (cooked_read_test): Rename "regnum".
848         * record-btrace.c (cmd_record_btrace_start): Rename inner
849         "exception".
850         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
851         loop header.
852         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
853         header.
854         (ppu2spu_sniffer): Rename inner "buf".
855         * parse.c (operator_check_standard): Rename inner "type",
856         "objfile".
857         * p-valprint.c (pascal_val_print): Introduce new scope for
858         "low_bound", "high_bound".
859         * p-exp.y (yylex): Declare "i" in loop header.
860         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
861         Lower declaration of "s".
862         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
863         header.
864         (nios2_push_dummy_call): Rename "len".
865         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
866         "buf".
867         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
868         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
869         (linux_xfer_osdata_modules): Likewise.
870         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
871         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
872         (mips_o64_push_dummy_call): Likewise.
873         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
874         "op".
875         * mi/mi-main.c (list_available_thread_groups): Rename inner
876         "tuple_emitter".
877         (mi_cmd_data_read_memory): Rename inner "opts".
878         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
879         "tuple_emitter".
880         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
881         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
882         more inner scope.
883         (parse_partial_symbols): Rename inner "pst", "p", "name"
884         * main.c (captured_main_1): Rename inner "i"s.
885         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
886         "oso2".
887         * linux-tdep.c (linux_info_proc): Rename inner "filename".
888         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
889         * infrun.c (handle_no_resumed): Don't redeclare "thread".
890         (handle_signal_stop): Rename inner "gdbarch".
891         (handle_command): Declare "signum" in loop header.
892         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
893         "status".
894         (examine_prologue): Rename inner "sol" and "sof".
895         (ia64_extract_return_value): Rename inner "val".  Declare another
896         "val" in a more inner scope.
897         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
898         inner scope.
899         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
900         "except".
901         * findvar.c (default_read_var_value): Don't redeclare "addr".
902         * f-exp.y (yylex): Declare "i" in loop header.
903         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
904         Rename inner "type", "expect_type".
905         (evaluate_subexp_for_sizeof): Rename inner "pc".
906         * elfread.c (elf_symfile_read): Rename inner "abfd".
907         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
908         "bytes_read".
909         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
910         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
911         (dwarf_decode_line_header): Rename inner "lh".
912         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
913         "offset".  Declare "i" in loop header.
914         (disassemble_dwarf_expression): Rename inner "addr_size".
915         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
916         inner "result".
917         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
918         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
919         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
920         "inner_list_emitter".
921         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
922         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
923         declaration in a block.
924         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
925         * cp-valprint.c (cp_print_value_fields): Don't redeclare
926         "obstack_final_size".
927         * cp-support.c (inspect_type): Declare "i" in loop header.
928         * compile/compile.c (compile_instance::insert_symbol_error):
929         Rename inner "e".
930         * common/agent.c (agent_run_command): Remove inner "ret"
931         declaration.
932         * coffread.c (coff_symfile_read): Rename inner "name".
933         (coff_symfile_read): Rename inner "abfd".
934         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
935         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
936         "high".
937         * c-exp.y (lex_one_token): Move "len" declaration lower.
938         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
939         "gdbarch".
940         (create_exception_master_breakpoint): Likewise.  Don't redeclare
941         "b".
942         (watch_command_1): Declare "mark" later.
943         (clear_command): Don't shadow "a" or "b".
944         (delete_command): Rename inner "b".
945         (delete_trace_command): Likewise.
946         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
947         "op".
948         (arm_gdbarch_init): Remove inner "e_flags".
949         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
950         "offset" in inner blocks.
951
952 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
953
954         * dwarf-index-write.c (file_write): Don't write if the vector is
955         empty.
956
957 2018-10-05  Tom de Vries  <tdevries@suse.de>
958
959         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
960         PyArg_ParseTuple call.
961
962 2018-10-05  Tom de Vries  <tdevries@suse.de>
963
964         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
965         PyArg_ParseTuple call.
966
967 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
968
969         * psymtab.c (recursively_search_psymtabs): Reformat parameters
970         to avoid exceeding 80 characters per line limit.
971
972 2018-10-04  Tom Tromey  <tom@tromey.com>
973
974         * symfile.c (syms_from_objfile_1, finish_new_objfile)
975         (reread_symbols): Update.
976         * complaints.h (clear_complaints): Remove argument.
977         * complaints.c (enum complaint_series): Remove.
978         (series): Remove global.
979         (complaint_internal): Update.
980         (clear_complaints): Remove argument.
981
982 2018-10-04  Tom Tromey  <tom@tromey.com>
983
984         * symfile.c (symbol_file_add_with_addrs): Do not print "no
985         debugging symbols" message if there is a separate debug objfile.
986
987 2018-10-04  Tom Tromey  <tom@tromey.com>
988
989         PR cli/19551:
990         * symfile.c (symbol_file_add_with_addrs): Update output.
991         * psymtab.c (require_partial_symbols): Update output.
992
993 2018-10-04  Tom Tromey  <tom@tromey.com>
994
995         PR cli/22234:
996         * complaints.c: Emit \n.
997
998 2018-10-04  Tom Tromey  <tom@tromey.com>
999
1000         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1001         (separate_debug_file_exists, find_separate_debug_file)
1002         (add_symbol_file_command, reread_symbols, allocate_symtab)
1003         (allocate_compunit_symtab): Use filtered printing, not
1004         unfiltered.
1005         * psymtab.c (require_partial_symbols, dump_psymtab)
1006         (allocate_psymtab): Use filtered printing, not unfiltered.
1007
1008 2018-10-04  Tom Tromey  <tom@tromey.com>
1009
1010         * complaints.c (complaint_internal): Correctly check complaint
1011         count.
1012
1013 2018-10-04  Tom Tromey  <tom@tromey.com>
1014
1015         * complaints.h (struct complaints): Remove declaration.
1016         * complaints.c (clear_complaints): Remove an unused variable.
1017
1018 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1019
1020         * MAINTAINERS (Write After Approval): Add self.
1021
1022 2018-10-03  Tom Tromey  <tom@tromey.com>
1023
1024         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1025         "buffer_contents".
1026         * coffread.c (coff_symtab_read): Initialize "newobj".
1027
1028 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1029
1030         * dwarf2read.c (read_func_scope): Remove struct keyword in
1031         range-based for.
1032
1033 2018-10-03  Tom Tromey  <tom@tromey.com>
1034
1035         * README: Mention --enable-ubsan.
1036         * NEWS: Mention --enable-ubsan.
1037         * acinclude.m4: Include sanitize.m4.
1038         * configure: Rebuild.
1039         * configure.ac: Call AM_GDB_UBSAN.
1040         * sanitize.m4: New file.
1041
1042 2018-10-03  Tom Tromey  <tom@tromey.com>
1043
1044         * expression.h (enum exp_opcode): Use uint8_t as base type.
1045         * expprint.c (op_name): Handle invalid opcodes.
1046
1047 2018-10-03  Tom Tromey  <tom@tromey.com>
1048
1049         * parse.c (prefixify_expression): Add assert.
1050         (parse_exp_in_context_1): Throw exception if the expression is
1051         empty.
1052
1053 2018-10-03  Tom Tromey  <tom@tromey.com>
1054
1055         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1056
1057 2018-10-03  Tom Tromey  <tom@tromey.com>
1058
1059         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1060
1061 2018-10-03  Tom Tromey  <tom@tromey.com>
1062
1063         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1064         unsigned.
1065
1066 2018-10-03  Tom Tromey  <tom@tromey.com>
1067
1068         * findvar.c (extract_integer): Do work in an unsigned type.
1069
1070 2018-10-03  Tom Tromey  <tom@tromey.com>
1071
1072         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1073         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1074         base type.
1075         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1076         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1077         type.
1078         * c-lang.h (enum c_string_type_values): Use unsigned as base
1079         type.
1080         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1081
1082 2018-10-03  Tom Tromey  <tom@tromey.com>
1083
1084         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1085         <~dwarf2_frame_state_reg_info>: Update.
1086         <dwarf2_frame_state_reg_info>: Update.
1087         <alloc_regs>: Add assertion.  Update.
1088         <reg>: Now a std::vector.
1089         <num_regs>: Remove.
1090         <swap>: Update.
1091         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1092         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1093
1094 2018-10-03  Tom Tromey  <tom@tromey.com>
1095
1096         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1097
1098 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1099
1100         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1101
1102 2018-10-02  Tom Tromey  <tom@tromey.com>
1103
1104         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1105
1106 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1107
1108         * NEWS: Mention changed commands.
1109         * ser-uds.c: New file.
1110         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1111         * configure: Regenerate.
1112         * Makefile.in: Add new file.
1113         * serial.c (serial_open): Check if filename is a socket
1114           and lookup the appropriate interface accordingly.
1115
1116 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1117
1118         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1119         define.
1120         (AARCH64_EXTRA_MAGIC): Likewise.
1121         (AARCH64_FPSIMD_MAGIC): Likewise.
1122         (AARCH64_SVE_MAGIC): Likewise.
1123         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1124         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1125         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1126         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1127         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1128         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1129         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1130         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1131         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1132         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1133         (read_aarch64_ctx): Add function.
1134         (aarch64_linux_sigframe_init): Detect FP registers.
1135
1136 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1137
1138         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1139         (AARCH64_D0_REGNUM): Likewise.
1140         (AARCH64_S0_REGNUM): Likewise.
1141         (AARCH64_H0_REGNUM): Likewise.
1142         (AARCH64_B0_REGNUM): Likewise.
1143         (AARCH64_SVE_V0_REGNUM): Likewise.
1144         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1145         (AARCH64_D0_REGNUM): Likewise.
1146         (AARCH64_S0_REGNUM): Likewise.
1147         (AARCH64_H0_REGNUM): Likewise.
1148         (AARCH64_B0_REGNUM): Likewise.
1149         (AARCH64_SVE_V0_REGNUM): Likewise.
1150
1151 2018-10-01  Gary Benson <gbenson@redhat.com>
1152
1153         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1154         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1155         prfpregset_t instead of gdb_prfpregset_t.
1156         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1157         * configure, config.in: Rebuild.
1158
1159 2018-10-01  Gary Benson <gbenson@redhat.com>
1160
1161         * common/gdb_proc_service.h: New file, factored out from...
1162         * gdb_proc_service.h: Moved common code to the above file.
1163         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1164
1165 2018-10-01  Gary Benson <gbenson@redhat.com>
1166
1167         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1168         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1169
1170 2018-10-01  Gary Benson <gbenson@redhat.com>
1171
1172         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1173         (AC_CHECK_HEADERS): Check for linux/elf.h.
1174         * configure, config.in: Rebuild.
1175         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1176         doesn't define elf_fpregset_t.
1177
1178 2018-10-01  Gary Benson <gbenson@redhat.com>
1179
1180         * gdb_proc_service.h: Whitespace change.
1181
1182 2018-10-01  Tom Tromey  <tom@tromey.com>
1183
1184         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1185         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1186         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1187
1188 2018-10-01  Tom Tromey  <tom@tromey.com>
1189
1190         * README: Minor change.
1191
1192 2018-09-30  Pedro Alves  <palves@redhat.com>
1193
1194         * darwin-nat-info.c (darwin_debug_regions_recurse)
1195         (info_mach_exceptions_command): Remove unused local variables.
1196         * darwin-nat.c (darwin_decode_notify_message)
1197         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1198         (darwin_stop_inferior, darwin_setup_exceptions)
1199         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1200         (darwin_nat_target::attach, darwin_nat_target::detach)
1201         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1202         local variables.
1203         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1204         variables.
1205
1206 2018-09-29  Tom Tromey  <tom@tromey.com>
1207
1208         * README: Remove some leftover text.
1209
1210 2018-09-29  Tom Tromey  <tom@tromey.com>
1211
1212         * PROBLEMS: Rewrite.
1213         * README: Update.
1214
1215 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1216
1217         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1218         case with explicit breakpoint kind.
1219         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1220         'additional_info' and related logic.
1221         (riscv_debug_breakpoints): New variable.
1222         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1223         instruction to determine the breakpoint kind.
1224         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1225         flag.  Update description of 'set/show riscv
1226         use-compressed-breakpoints' flag.
1227
1228 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1229
1230         (NEWS): Mention changes to frame related commands.
1231         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1232         (add_prefix_cmd_suppress_notification): New function.
1233         (add_com_suppress_notification): Call
1234         add_cmd_suppress_notification.
1235         * command.h (add_cmd_suppress_notification): Declare.
1236         (add_prefix_cmd_suppress_notification): Declare.
1237         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1238         (parse_frame_specification): Moved from stack.c, with
1239         simplification to handle a single argument.
1240         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1241         switch to the selected frame.  Add a header comment.
1242         * stack.c: Remove 'safe-ctype.h' include.
1243         (find_frame_for_function): Add declaration.
1244         (find_frame_for_address): New function.
1245         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1246         (frame_selection_by_function_completer): New function.
1247         (info_frame_command): Rename to...
1248         (info_frame_command_core): ...this, and update parameter types.
1249         (select_frame_command): Rename to...
1250         (select_frame_command_core): ...this, and update parameter types.
1251         (frame_command): Rename to...
1252         (frame_command_core): ...this, and update parameter types.
1253         (class frame_command_helper): New class to wrap implementations of
1254         frame related sub-commands.
1255         (frame_apply_cmd_list): New static global.
1256         (frame_cmd_list): Make static.
1257         (select_frame_cmd_list): New global for sub-commands.
1258         (info_frame_cmd_list): New global for sub-commands.
1259         (_initialize_stack): Register sub-commands for 'frame',
1260         'select-frame', and 'info frame'.  Update 'frame apply' commands
1261         to use frame_apply_cmd_list.  Move function local static
1262         frame_apply_list to file static frame_apply_cmd_list for
1263         consistency.
1264         * stack.h (select_frame_command): Delete declarationn.
1265         (select_frame_for_mi): Declare new function.
1266
1267 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1268
1269         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1270         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1271         and NOP.
1272
1273 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1274
1275         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1276
1277 2018-09-26  Tom Tromey  <tom@tromey.com>
1278
1279         * valops.c (auto_abandon): Remove dead code.
1280
1281 2018-09-26  Tom Tromey  <tom@tromey.com>
1282
1283         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1284
1285 2018-09-24  Tom Tromey  <tom@tromey.com>
1286
1287         * common/pathstuff.c (get_standard_cache_dir): Make
1288         "xdg_cache_home" and "home" const.
1289         * top.c (init_history): Make "tmpenv" const.
1290         * main.c (get_init_files): Make "homedir" const.
1291
1292 2018-09-23  Tom Tromey  <tom@tromey.com>
1293
1294         PR python/18852:
1295         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1296
1297 2018-09-23  Tom Tromey  <tom@tromey.com>
1298
1299         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1300         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1301         * python/python-internal.h (gdbpy_handle_exception): Declare.
1302         * python/py-utils.c (gdbpy_handle_exception): New function.
1303
1304 2018-09-23  Tom Tromey  <tom@tromey.com>
1305
1306         PR python/17284:
1307         * python/py-type.c (typy_template_argument): Check for negative
1308         argument number.
1309
1310 2018-09-23  Tom Tromey  <tom@tromey.com>
1311
1312         PR python/14062:
1313         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1314
1315 2018-09-23  Tom Tromey  <tom@tromey.com>
1316
1317         PR python/18170:
1318         * python/py-value.c (valpy_int): Allow conversion from pointer
1319         type.
1320
1321 2018-09-23  Tom Tromey  <tom@tromey.com>
1322
1323         PR python/20126:
1324         * python/py-value.c (valpy_int): Respect type sign.
1325
1326 2018-09-23  Tom Tromey  <tom@tromey.com>
1327
1328         PR python/18352;
1329         * python/py-value.c (valpy_float): Allow conversions from int or
1330         char.
1331         (valpy_int, valpy_long): Allow conversions from float.
1332
1333 2018-09-23  Tom Tromey  <tom@tromey.com>
1334
1335         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1336         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1337
1338 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1339
1340         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1341         __sighndlr.
1342         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1343
1344 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1345
1346         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1347         target_terminal::ours().
1348
1349 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1350
1351         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1352         of vl to ULONGEST.
1353
1354 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1355
1356         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1357         redundant condition.
1358
1359 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1360
1361         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1362
1363         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1364         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1365         * sol-thread.c (ps_pdmodel): Don't guard definition.
1366
1367         * procfs.c: Fix formatting.
1368
1369         * procfs.c (sysset_t_alloc): Remove.
1370         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1371         (procfs_debug_inferior): Likewise.
1372         (procfs_set_exec_trap): Likewise.
1373         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1374         (proc_set_traced_sysexit): Likewise.
1375
1376         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1377         (dead_procinfo): Likewise.
1378         (proc_warn): Likewise.
1379         (proc_error): Likewise.
1380         (proc_get_LDT_entry): Likewise.
1381         (do_attach): Likewise.
1382         (procfs_target::pid_to_str): Likewise.
1383         (iterate_over_mappings): Likewise.
1384
1385         * procfs.c (create_procinfo): Fix ARI warning.
1386         (proc_get_status): Likewise.
1387         (proc_stop_process): Likewise.
1388         (proc_run_process): Likewise.
1389         (proc_kill): Likewise.
1390         (proc_get_LDT_entry): Likewise.
1391         (procfs_find_LDT_entry): Likewise.
1392         (proc_update_threads): Likewise.
1393         (proc_iterate_over_threads): Likewise.
1394         (do_attach): Likewise.
1395         (procfs_xfer_memory): Likewise.
1396         (invalidate_cache): Likewise.
1397         (procfs_target::resume): Likewise.
1398         (procfs_init_inferior): Likewise.
1399         (procfs_set_exec_trap): Likewise.
1400         (procfs_target::thread_alive): Likewise.
1401         (procfs_target::pid_to_exec_file): Likewise.
1402         (iterate_over_mappings): Likewise.
1403         (procfs_target::make_corefile_notes): Likewise.
1404         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1405
1406         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1407         (procfs_find_LDT_entry): Likewise.
1408         * sol-thread.c (ps_lgetLDT): Likewise.
1409
1410 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1411
1412         PR tdep/17903
1413         * procfs.c (procfs_target): Declare pid_to_exec_file.
1414         (procfs_target::pid_to_exec_file): New.
1415
1416 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1417
1418         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1419         renaming.
1420         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1421         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1422
1423 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1424
1425         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1426         (supply_fpregset, fill_fpregset): Move ...
1427         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1428         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1429         Remove references to ioctl-based procfs.
1430         Include <sys/reg.h>.
1431         Remove PR_MODEL_NATIVE guards.
1432         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1433         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1434
1435 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1436
1437         PR gdb/20981:
1438         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1439         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1440         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1441
1442 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1443
1444         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1445         (fbsd_print_sockaddr_in6): Likewise.
1446
1447 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1448             Chris January  <chris.january@arm.com>
1449
1450         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1451         (evaluate_subexp_standard): Return a dummy type when
1452         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1453         OP_F77_UNDETERMINED_ARGLIST case.
1454         * expression.h (enum noside): Update comment.
1455
1456 2018-09-19  George Vasick <george.vasick@oracle.com>
1457
1458         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1459
1460 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1461             April Chin <april.chin@oracle.com>
1462             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1463
1464         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1465         uint_t lwpid_t.
1466         (create_procinfo): Print pids in /proc without leading zeros.
1467
1468 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1469
1470         * nios2-tdep.c (nios2_gcc_target_options): New.
1471         (nios2_gdb_arch_init): Install new hook.
1472
1473 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1474
1475         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1476         New file.
1477         * update-gnulib.sh: Apply patch.
1478         * configure: Re-generate.
1479
1480 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1481
1482         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1483         description.  Make "info proc" command descriptions more
1484         consistent.
1485
1486 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1487
1488         * NEWS: Mention 'info proc files' command.
1489
1490 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1491
1492         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1493         descriptors for IP_FILES and IP_ALL.
1494
1495 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1496
1497         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1498         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1499         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1500         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1501         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1502         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1503         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1504         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1505         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1506         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1507         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1508         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1509         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1510         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1511         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1512         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1513         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1514         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1515         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1516         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1517         (struct fbsd_sockaddr_un): New types.
1518         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1519         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1520         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1521         (fbsd_core_info_proc_files): New functions.
1522         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1523         IP_ALL.
1524         * fbsd-tdep.h (fbsd_info_proc_files_header)
1525         (fbsd_info_proc_files_entry): New.
1526
1527 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1528
1529         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1530         * infcmd.c (info_proc_cmd_files): New function.
1531         (_initialize_infcmd): Register 'info proc files' command.
1532
1533 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1534
1535         * gnulib/aclocal-m4-deps.mk: Re-generate.
1536         * gnulib/aclocal.m4: Re-generate.
1537         * gnulib/config.in: Re-generate.
1538         * gnulib/configure: Re-generate.
1539         * gnulib/import/Makefile.am: Re-generate.
1540         * gnulib/import/Makefile.in: Re-generate.
1541         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1542         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1543         * gnulib/import/arpa_inet.in.h: New file.
1544         * gnulib/import/inet_ntop.c: New file.
1545         * gnulib/import/m4/arpa_inet_h.m4: New file.
1546         * gnulib/import/m4/inet_ntop.m4: New file.
1547         * gnulib/import/m4/netinet_in_h.m4: New file.
1548         * gnulib/import/m4/socklen.m4: New file.
1549         * gnulib/import/m4/sockpfaf.m4: New file.
1550         * gnulib/import/m4/stdalign.m4: New file.
1551         * gnulib/import/m4/sys_uio_h.m4: New file.
1552         * gnulib/import/netinet_in.in.h: New file.
1553         * gnulib/import/stdalign.in.h: New file.
1554         * gnulib/import/sys_socket.c: New file.
1555         * gnulib/import/sys_socket.in.h: New file.
1556         * gnulib/import/sys_uio.in.h: New file.
1557         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1558         module.
1559
1560 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1561
1562         * gnulib/aclocal-m4-deps.mk: New file.
1563         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1564         deterministically.
1565
1566 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1567
1568         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1569         KVE_PATH.
1570
1571 2018-09-18  Tom Tromey  <tom@tromey.com>
1572
1573         * compile/compile-object-load.c (struct
1574         link_hash_table_cleanup_data): Add constructor and destructor.
1575         Use DISABLE_COPY_AND_ASSIGN.
1576         (~link_hash_table_cleanup_data): Rename from
1577         link_hash_table_free.  Now a destructor.
1578         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1579
1580 2018-09-18  Tom Tromey  <tom@tromey.com>
1581
1582         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1583         * compile/compile-object-load.c (struct munmap_list): Move to
1584         header file.
1585         (munmap_list::add): Rename from munmap_list_add; rewrite.
1586         (munmap_list::~munmap_list): Rename from munmap_list_free.
1587         (munmap_listp_free_cleanup): Remove.
1588         (compile_object_load): Update.
1589         * compile/compile-object-load.h (struct munmap_list): Move from
1590         compile-object-load.c.  Rewrite.
1591
1592 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1593
1594         * aarch64-tdep.c (pass_in_v): Use register size.
1595         (aarch64_extract_return_value): Likewise.
1596         (aarch64_store_return_value): Likewise.
1597
1598 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1599
1600         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1601         rlim_t.
1602
1603 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1604
1605         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1606         Fix short help line.
1607
1608 2018-09-17  Tom Tromey  <tom@tromey.com>
1609
1610         PR python/20445:
1611         * configure: Rebuild.
1612         * configure.ac: Conditionally use -DNDEBUG for Python.
1613
1614 2018-09-17  Tom Tromey  <tom@tromey.com>
1615
1616         * configure: Rebuild.
1617         * configure.ac: Use gmp as a library dependency when checking for
1618         mpfr.
1619
1620 2018-09-17  Pedro Alves  <palves@redhat.com>
1621
1622         * python/py-inferior.c (find_inferior_object): Delete.
1623
1624 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1625
1626         * compile/compile-cplus-types.c
1627         (compile_cplus_instance::enter_scope): Don't use new_scope after
1628         std::move.
1629
1630 2018-09-17  Tom Tromey  <tom@tromey.com>
1631
1632         * common/pathstuff.c (get_standard_cache_dir): Use
1633         ~/Library/Caches on macOS.
1634         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1635
1636 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1637
1638         PR python/23669
1639         * breakpoint.c (commands_cmd_element): New.
1640         (_initialize_breakpoint): Assign commands_cmd_element.
1641         * breakpoint.h (commands_cmd_element): New.
1642         * cli/cli-script.c (while_cmd_element, if_command,
1643         define_cmd_element): New.
1644         (command_name_equals): Remove.
1645         (process_next_line): Compare commands by pointer, not by name.
1646         (_initialize_cli_script): Assign the various cmd_list_element
1647         variables.
1648         * compile/compile.c (compile_cmd_element): New.
1649         (_initialize_compile): Assign compile_cmd_element.
1650         * compile/compile.h (compile_cmd_element): New.
1651         * guile/guile.c (guile_cmd_element): New.
1652         (install_gdb_commands): Assign guile_cmd_element.
1653         * guile/guile.h (guile_cmd_element): New.
1654         * python/python.c (python_cmd_element): New.
1655         (_initialize_python): Assign python_cmd_element.
1656         * python/python.h (python_cmd_element): New.
1657         * tracepoint.c (while_stepping_cmd_element): New.
1658         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1659         * tracepoint.h (while_stepping_cmd_element): New.
1660
1661 2018-09-17  Tom Tromey  <tom@tromey.com>
1662
1663         * infrun.c (save_infcall_suspend_state): Return
1664         infcall_suspend_state_up.
1665         (save_infcall_control_state): Return infcall_control_state_up.
1666         * inferior.h (save_infcall_suspend_state)
1667         (save_infcall_control_state): Declare later.  Return unique
1668         pointers.
1669
1670 2018-09-17  Tom Tromey  <tom@tromey.com>
1671
1672         * infrun.c (struct stop_context): Declare constructor,
1673         destructor, "changed" method.
1674         (stop_context::stop_context): Rename from save_stop_context.
1675         (stop_context::~stop_context): Rename from
1676         release_stop_context_cleanup.
1677         (normal_stop): Update.
1678         (stop_context::changed): Rename from stop_context_changed.  Return
1679         bool.
1680
1681 2018-09-17  Tom Tromey  <tom@tromey.com>
1682
1683         * inferior.h (struct infcall_suspend_state_deleter): New.
1684         (infcall_suspend_state_up): New typedef.
1685         (struct infcall_control_state_deleter): New.
1686         (infcall_control_state_up): New typedef.
1687         (make_cleanup_restore_infcall_suspend_state)
1688         (make_cleanup_restore_infcall_control_state): Don't declare.
1689         * infcall.c (call_function_by_hand_dummy): Update.
1690         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1691         (make_cleanup_restore_infcall_suspend_state): Remove.
1692         (do_restore_infcall_control_state_cleanup)
1693         (make_cleanup_restore_infcall_control_state): Remove.
1694
1695 2018-09-17  Tom Tromey  <tom@tromey.com>
1696
1697         * gdbthread.h (struct thread_control_state): Add initializer.
1698         (class thread_info) <control>: Remove initializer.
1699         * inferior.h (struct inferior_control_state): Add initializer.
1700         (class inferior) <control>: Remove initializer.
1701         (exit_inferior_1): Update.
1702         * infrun.c (struct infcall_control_state): Add constructors.
1703         (save_infcall_control_state): Use new.
1704         (restore_infcall_control_state, discard_infcall_control_state):
1705         Use delete.
1706
1707 2018-09-17  Tom Tromey  <tom@tromey.com>
1708
1709         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1710         unique_ptr.
1711         <siginfo_data>: Now a unique_xmalloc_ptr.
1712         (save_infcall_suspend_state, restore_infcall_suspend_state)
1713         (discard_infcall_suspend_state)
1714         (get_infcall_suspend_state_regcache): Update.
1715
1716 2018-09-17  Tom Tromey  <tom@tromey.com>
1717
1718         * gdbthread.h (struct thread_suspend_state): Add initializers.
1719         (class thread_info) <suspend>: Remove initializer.
1720         * infrun.c (struct infcall_suspend_state): Add initializers.
1721         (save_infcall_suspend_state): Use new.
1722         (discard_infcall_suspend_state): Use delete.
1723
1724 2018-09-16  Tom Tromey  <tom@tromey.com>
1725
1726         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1727         Remove.
1728         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1729         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1730         (py_varobj_iter_new): Likewise.
1731         (py_varobj_get_iterator): Use gdbpy_ref.
1732
1733 2018-09-16  Tom Tromey  <tom@tromey.com>
1734
1735         * python/py-threadevent.c (py_get_event_thread): Simplify.
1736         * python/py-inferior.c (infpy_thread_from_thread_handle):
1737         Return immediately after calling thread_to_thread_object.  Use
1738         Py_RETURN_NONE.
1739         (thread_to_thread_object): Set the exception on a NULL return.
1740
1741 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1742
1743         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1744
1745 2018-09-16  Tom Tromey  <tom@tromey.com>
1746
1747         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1748         Remove.
1749
1750 2018-09-16  Tom Tromey  <tom@tromey.com>
1751
1752         * python/python-internal.h (thread_to_thread_object): Change
1753         return type.
1754         * python/py-inferior.c (thread_to_thread_object): Return a new
1755         reference.
1756         (infpy_thread_from_thread_handle): Update.
1757         * python/py-infthread.c (gdbpy_selected_thread): Update.
1758         * python/py-stopevent.c (create_stop_event_object): Update.
1759         * python/py-threadevent.c (py_get_event_thread): Return a new
1760         reference.
1761         (py_get_event_thread): Update.
1762         * python/py-event.h (py_get_event_thread): Change return type.
1763         * python/py-continueevent.c (create_continue_event_object):
1764         Update.
1765
1766 2018-09-16  Tom Tromey  <tom@tromey.com>
1767
1768         * python/py-progspace.c (pspy_get_objfiles): Update.
1769         * python/python-internal.h (objfile_to_objfile_object): Change
1770         return type.
1771         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1772         Update.
1773         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1774         Update.
1775         * python/python.c (gdbpy_get_current_objfile): Update.
1776         (gdbpy_objfiles): Update.
1777         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1778         Update.
1779         (objfile_to_objfile_object): Return a new reference.
1780         * python/py-symtab.c (stpy_get_objfile): Update.
1781         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1782         Update.
1783
1784 2018-09-16  Tom Tromey  <tom@tromey.com>
1785
1786         * python/py-inferior.c (infpy_get_progspace): Update.
1787         * python/python-internal.h (pspace_to_pspace_object): Change
1788         return type.
1789         * python/py-newobjfileevent.c
1790         (create_clear_objfiles_event_object): Update.
1791         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1792         Update.
1793         * python/python.c (gdbpy_get_current_progspace): Update.
1794         (gdbpy_progspaces): Update.
1795         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1796         reference.
1797         * python/py-objfile.c (objfpy_get_progspace): Update.
1798         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1799         Update.
1800
1801 2018-09-16  Tom Tromey  <tom@tromey.com>
1802
1803         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1804         (solib_name, block_for_pc, find_pc_line): New functions.
1805         (execute_unwinders): Update.
1806         * python/py-block.c (gdbpy_block_for_pc): Remove.
1807         * python/py-inferior.c (infpy_get_progspace): New function.
1808         (inferior_object_getset) <progspace>: Add.
1809         * python/py-progspace.c (pspy_objfiles): Rewrite.
1810         (pspy_solib_name, pspy_block_for_pc)
1811         (pspy_find_pc_line, pspy_is_valid): New functions.
1812         (progspace_object_methods): Add entries for solib_name,
1813         block_for_pc, find_pc_line, is_valid.
1814         * python/python-internal.h (gdbpy_block_for_pc)
1815         (build_objfiles_list): Don't declare.
1816         * python/python.c: Don't include solib.h.
1817         (gdbpy_solib_name, gdbpy_find_pc_line)
1818         (gdbpy_get_current_progspace, build_objfiles_list)
1819         (gdbpy_objfiles): Remove.
1820         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1821         solib_name, find_pc_line>: Remove entries.
1822
1823 2018-09-16  Tom Tromey  <tom@tromey.com>
1824
1825         * top.c (new_ui_command): Use GNU style for metasyntactic
1826         variables.
1827         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1828         variables.
1829         * maint.c (maintenance_translate_address): Remove "<>" around
1830         text.
1831         * interps.c (interpreter_exec_cmd): Use GNU style for
1832         metasyntactic variables.
1833         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1834         metasyntactic variables.
1835         * tracepoint.c (tfind_range_command): Use GNU style for
1836         metasyntactic variables.
1837         (tfind_outside_command): Likewise.
1838         (_initialize_tracepoint): Likewise.
1839         * remote.c (extended_remote_target::create_inferior): Use GNU
1840         style for metasyntactic variables.
1841         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1842         metasyntactic variables.
1843         (adi_assign_command): Likewise.
1844
1845 2018-09-16  Tom Tromey  <tom@tromey.com>
1846
1847         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1848         metasyntactic variables.  Print message if no disassembler options
1849         are available.
1850
1851 2018-09-15  Tom Tromey  <tom@tromey.com>
1852
1853         * infcmd.c (get_inferior_args): Return const char *.
1854         * inferior.h (get_inferior_args): Return type now const.
1855         * linux-tdep.c (linux_fill_prpsinfo): Update.
1856         * procfs.c (procfs_target::make_corefile_notes): Update.
1857
1858 2018-09-07  Tom Tromey  <tom@tromey.com>
1859
1860         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1861         inside the TRY.
1862
1863 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1864
1865         * nios2-tdep.c (nios2_type_align): New.
1866         (nios2_gdb_arch_init): Install type_align hook.
1867
1868 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1869
1870         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1871         type that is neither object file owned, nor gdbarch owned.
1872         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1873         gdbarch is non-NULL.
1874         (alloc_type_instance): Allocate non-objfile owned types on the
1875         gdbarch obstack.
1876         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1877         using TYPE_ALLOC to ensure memory is allocated on the correct
1878         obstack.
1879         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1880         obstack, or the gdbarch obstack.
1881         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1882
1883 2018-09-14  Tom Tromey  <tom@tromey.com>
1884
1885         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1886         block.
1887
1888 2018-09-14  Tom Tromey  <tom@tromey.com>
1889
1890         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1891
1892 2018-09-13  Tom Tromey  <tom@tromey.com>
1893
1894         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1895         static.
1896
1897 2018-09-13  Tom Tromey  <tom@tromey.com>
1898
1899         * exec.c (try_open_exec_file): Use std::string.
1900
1901 2018-09-13  Tom Tromey  <tom@tromey.com>
1902
1903         * utils.h (gdb_bfd_errmsg): Return std::string.
1904         * exec.c (exec_file_attach): Update.
1905         * compile/compile-object-load.c (compile_object_load): Update.
1906         * utils.c (gdb_bfd_errmsg): Return std::string.
1907
1908 2018-09-13  Tom Tromey  <tom@tromey.com>
1909
1910         * procfs.c (struct procinfo_deleter): New.
1911         (procinfo_up): New typedef.
1912         (do_destroy_procinfo_cleanup): Remove.
1913         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1914
1915 2018-09-13  Tom Tromey  <tom@tromey.com>
1916
1917         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1918
1919 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1920 2018-09-13  Tom Tromey  <tom@tromey.com>
1921
1922         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1923         (pspy_get_objfiles): New function.
1924         (progspace_object_methods): New.
1925         (pspace_object_type): Add tp_methods callback.
1926         * python/python-internal.h (build_objfiles_list): New
1927         declaration.
1928         * python/python.c (build_objfiles_list): New function.
1929         (gdbpy_objfiles): Implement using build_objfiles_list.
1930         * NEWS: Mention the Progspace.objfiles method.
1931
1932 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1933
1934         * python/py-inferior.c (infpy_get_progspace): New function.
1935         (inferior_object_getset): Add progspace property.
1936         * NEWS: Mention the new property.
1937
1938 2018-09-13  Tom Tromey  <tom@tromey.com>
1939
1940         PR rust/23650:
1941         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1942
1943 2018-09-13  Tom Tromey  <tom@tromey.com>
1944
1945         PR rust/23626:
1946         * rust-lang.c (rust_enum_variant): Now static.
1947         (rust_empty_enum_p): New function.
1948         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1949         Handle empty enum.
1950
1951 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1952
1953         * python/py-inferior.c (infpy_repr): New.
1954         (inferior_object_type): Register infpy_repr.
1955         * python/py-objfile.c (objfpy_repr): New.
1956         (objfile_object_type): Register objfpy_repr.
1957
1958 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1959
1960         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1961
1962 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1963
1964         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1965         typo.
1966
1967 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1968
1969         * common/common-utils.c: Don't include '<sys/stat.h>'.
1970         (is_regular_file): Move to...
1971         * common/filestuff.c (is_regular_file): ... here.
1972         * common/common-utils.h (is_regular_file): Move to...
1973         * common/filestuff.h (is_regular_file): ... here.
1974
1975 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1976
1977         * skip.c (debug_skip): New variable.
1978         (skiplist_entry::do_skip_file_p): Add debug output.
1979         (skiplist_entry::do_skip_gfile_p): Likewise.
1980         (skiplist_entry::skip_function_p): Likewise.
1981         (_initialize_step_skip): Create debug command.
1982         * NEWS: Mention set/show debug skip.
1983
1984 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1985
1986         * darwin-nat.c (should_disable_startup_with_shell):
1987         New function.
1988         (darwin_nat_target::create_inferior): Add call.
1989
1990 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1991
1992         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1993         inf_port, msg_state>: Initialize.
1994         (struct darwin_thread_info) <signaled, single_step>: Change
1995         type and initialize.
1996         (struct darwin_thread_info) <event>: Initialize.
1997
1998 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1999
2000         PR gdb/23555
2001         PR gdb/23558
2002         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2003         guesses.
2004
2005 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2006
2007         Revert:
2008         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2009
2010         PR gdb/23555
2011         PR gdb/23558
2012         * gnulib/aclocal.m4: Regenerate.
2013         * gnulib/config.in: Regenerate.
2014         * gnulib/configure: Regenerate.
2015         * gnulib/import/Makefile.am: Update.
2016         * gnulib/import/Makefile.in: Update.
2017         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2018         * gnulib/import/_Noreturn.h: ... this.
2019         * gnulib/import/alloca.in.h: Update.
2020         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2021         * gnulib/import/arg-nonnull.h: ... this.
2022         * gnulib/import/assure.h: Update.
2023         * gnulib/import/at-func.c: Update.
2024         * gnulib/import/basename-lgpl.c: Update.
2025         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2026         * gnulib/import/c++defs.h: ... this.
2027         * gnulib/import/canonicalize-lgpl.c: Update.
2028         * gnulib/import/cdefs.h: Update.
2029         * gnulib/import/chdir-long.c: Update.
2030         * gnulib/import/chdir-long.h: Update.
2031         * gnulib/import/cloexec.c: Update.
2032         * gnulib/import/cloexec.h: Update.
2033         * gnulib/import/close.c: Update.
2034         * gnulib/import/closedir.c: Update.
2035         * gnulib/import/config.charset: Update.
2036         * gnulib/import/dirent-private.h: Update.
2037         * gnulib/import/dirent.in.h: Update.
2038         * gnulib/import/dirfd.c: Update.
2039         * gnulib/import/dirname-lgpl.c: Update.
2040         * gnulib/import/dirname.h: Update.
2041         * gnulib/import/dosname.h: Update.
2042         * gnulib/import/dup-safer-flag.c: Update.
2043         * gnulib/import/dup-safer.c: Update.
2044         * gnulib/import/dup.c: Update.
2045         * gnulib/import/dup2.c: Update.
2046         * gnulib/import/errno.in.h: Update.
2047         * gnulib/import/error.c: Update.
2048         * gnulib/import/error.h: Update.
2049         * gnulib/import/exitfail.c: Update.
2050         * gnulib/import/exitfail.h: Update.
2051         * gnulib/import/extra/update-copyright: Update.
2052         * gnulib/import/fchdir.c: Update.
2053         * gnulib/import/fcntl.c: Update.
2054         * gnulib/import/fcntl.in.h: Update.
2055         * gnulib/import/fd-hook.c: Update.
2056         * gnulib/import/fd-hook.h: Update.
2057         * gnulib/import/fd-safer-flag.c: Update.
2058         * gnulib/import/fd-safer.c: Update.
2059         * gnulib/import/fdopendir.c: Update.
2060         * gnulib/import/filename.h: Update.
2061         * gnulib/import/filenamecat-lgpl.c: Update.
2062         * gnulib/import/filenamecat.h: Update.
2063         * gnulib/import/flexmember.h: Update.
2064         * gnulib/import/float+.h: Update.
2065         * gnulib/import/float.c: Update.
2066         * gnulib/import/float.in.h: Update.
2067         * gnulib/import/fnmatch.c: Update.
2068         * gnulib/import/fnmatch.in.h: Update.
2069         * gnulib/import/fnmatch_loop.c: Update.
2070         * gnulib/import/fpucw.h: Update.
2071         * gnulib/import/frexp.c: Update.
2072         * gnulib/import/frexpl.c: Update.
2073         * gnulib/import/fstat.c: Update.
2074         * gnulib/import/fstatat.c: Update.
2075         * gnulib/import/getcwd-lgpl.c: Update.
2076         * gnulib/import/getcwd.c: Update.
2077         * gnulib/import/getdtablesize.c: Update.
2078         * gnulib/import/getlogin_r.c: Update.
2079         * gnulib/import/getprogname.c: Update.
2080         * gnulib/import/getprogname.h: Update.
2081         * gnulib/import/gettext.h: Update.
2082         * gnulib/import/gettimeofday.c: Update.
2083         * gnulib/import/glob-libc.h: Update.
2084         * gnulib/import/glob.c: Update.
2085         * gnulib/import/glob.in.h: Update.
2086         * gnulib/import/glob_internal.h: Update.
2087         * gnulib/import/glob_pattern_p.c: Update.
2088         * gnulib/import/globfree.c: Update.
2089         * gnulib/import/hard-locale.c: Update.
2090         * gnulib/import/hard-locale.h: Update.
2091         * gnulib/import/intprops.h: Update.
2092         * gnulib/import/inttypes.in.h: Update.
2093         * gnulib/import/isnan.c: Update.
2094         * gnulib/import/isnand-nolibm.h: Update.
2095         * gnulib/import/isnand.c: Update.
2096         * gnulib/import/isnanl-nolibm.h: Update.
2097         * gnulib/import/isnanl.c: Update.
2098         * gnulib/import/itold.c: Update.
2099         * gnulib/import/libc-config.h: Update.
2100         * gnulib/import/limits.in.h: Update.
2101         * gnulib/import/localcharset.c: Update.
2102         * gnulib/import/localcharset.h: Update.
2103         * gnulib/import/localtime-buffer.c: Update.
2104         * gnulib/import/localtime-buffer.h: Update.
2105         * gnulib/import/lstat.c: Update.
2106         * gnulib/import/m4/00gnulib.m4: Update.
2107         * gnulib/import/m4/__inline.m4: Update.
2108         * gnulib/import/m4/absolute-header.m4: Update.
2109         * gnulib/import/m4/alloca.m4: Update.
2110         * gnulib/import/m4/builtin-expect.m4: Update.
2111         * gnulib/import/m4/canonicalize.m4: Update.
2112         * gnulib/import/m4/chdir-long.m4: Update.
2113         * gnulib/import/m4/close.m4: Update.
2114         * gnulib/import/m4/closedir.m4: Update.
2115         * gnulib/import/m4/configmake.m4: Update.
2116         * gnulib/import/m4/d-ino.m4: Update.
2117         * gnulib/import/m4/d-type.m4: Update.
2118         * gnulib/import/m4/dirent_h.m4: Update.
2119         * gnulib/import/m4/dirfd.m4: Update.
2120         * gnulib/import/m4/dirname.m4: Update.
2121         * gnulib/import/m4/double-slash-root.m4: Update.
2122         * gnulib/import/m4/dup.m4: Update.
2123         * gnulib/import/m4/dup2.m4: Update.
2124         * gnulib/import/m4/eealloc.m4: Update.
2125         * gnulib/import/m4/environ.m4: Update.
2126         * gnulib/import/m4/errno_h.m4: Update.
2127         * gnulib/import/m4/error.m4: Update.
2128         * gnulib/import/m4/exponentd.m4: Update.
2129         * gnulib/import/m4/exponentl.m4: Update.
2130         * gnulib/import/m4/extensions.m4: Update.
2131         * gnulib/import/m4/extern-inline.m4: Update.
2132         * gnulib/import/m4/fchdir.m4: Update.
2133         * gnulib/import/m4/fcntl-o.m4: Update.
2134         * gnulib/import/m4/fcntl.m4: Update.
2135         * gnulib/import/m4/fcntl_h.m4: Update.
2136         * gnulib/import/m4/fdopendir.m4: Update.
2137         * gnulib/import/m4/filenamecat.m4: Update.
2138         * gnulib/import/m4/flexmember.m4: Update.
2139         * gnulib/import/m4/float_h.m4: Update.
2140         * gnulib/import/m4/fnmatch.m4: Update.
2141         * gnulib/import/m4/fnmatch_h.m4: Update.
2142         * gnulib/import/m4/fpieee.m4: Update.
2143         * gnulib/import/m4/frexp.m4: Update.
2144         * gnulib/import/m4/frexpl.m4: Update.
2145         * gnulib/import/m4/fstat.m4: Update.
2146         * gnulib/import/m4/fstatat.m4: Update.
2147         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2148         * gnulib/import/m4/getcwd-path-max.m4: Update.
2149         * gnulib/import/m4/getcwd.m4: Update.
2150         * gnulib/import/m4/getdtablesize.m4: Update.
2151         * gnulib/import/m4/getlogin.m4: Update.
2152         * gnulib/import/m4/getlogin_r.m4: Update.
2153         * gnulib/import/m4/getpagesize.m4: Update.
2154         * gnulib/import/m4/getprogname.m4: Update.
2155         * gnulib/import/m4/gettimeofday.m4: Update.
2156         * gnulib/import/m4/glibc21.m4: Update.
2157         * gnulib/import/m4/glob.m4: Update.
2158         * gnulib/import/m4/glob_h.m4: Update.
2159         * gnulib/import/m4/gnulib-cache.m4: Update.
2160         * gnulib/import/m4/gnulib-common.m4: Update.
2161         * gnulib/import/m4/gnulib-comp.m4: Update.
2162         * gnulib/import/m4/gnulib-tool.m4: Update.
2163         * gnulib/import/m4/hard-locale.m4: Update.
2164         * gnulib/import/m4/include_next.m4: Update.
2165         * gnulib/import/m4/inttypes-pri.m4: Update.
2166         * gnulib/import/m4/inttypes.m4: Update.
2167         * gnulib/import/m4/isnand.m4: Update.
2168         * gnulib/import/m4/isnanl.m4: Update.
2169         * gnulib/import/m4/largefile.m4: Update.
2170         * gnulib/import/m4/limits-h.m4: Update.
2171         * gnulib/import/m4/localcharset.m4: Update.
2172         * gnulib/import/m4/locale-fr.m4: Update.
2173         * gnulib/import/m4/locale-ja.m4: Update.
2174         * gnulib/import/m4/locale-zh.m4: Update.
2175         * gnulib/import/m4/localtime-buffer.m4: Update.
2176         * gnulib/import/m4/longlong.m4: Update.
2177         * gnulib/import/m4/lstat.m4: Update.
2178         * gnulib/import/m4/malloc.m4: Update.
2179         * gnulib/import/m4/malloca.m4: Update.
2180         * gnulib/import/m4/math_h.m4: Update.
2181         * gnulib/import/m4/mbrtowc.m4: Update.
2182         * gnulib/import/m4/mbsinit.m4: Update.
2183         * gnulib/import/m4/mbsrtowcs.m4: Update.
2184         * gnulib/import/m4/mbstate_t.m4: Update.
2185         * gnulib/import/m4/memchr.m4: Update.
2186         * gnulib/import/m4/memmem.m4: Update.
2187         * gnulib/import/m4/mempcpy.m4: Update.
2188         * gnulib/import/m4/memrchr.m4: Update.
2189         * gnulib/import/m4/mkdir.m4: Update.
2190         * gnulib/import/m4/mkstemp.m4: Update.
2191         * gnulib/import/m4/mmap-anon.m4: Update.
2192         * gnulib/import/m4/mode_t.m4: Update.
2193         * gnulib/import/m4/msvc-inval.m4: Update.
2194         * gnulib/import/m4/msvc-nothrow.m4: Update.
2195         * gnulib/import/m4/multiarch.m4: Update.
2196         * gnulib/import/m4/nocrash.m4: Update.
2197         * gnulib/import/m4/off_t.m4: Update.
2198         * gnulib/import/m4/onceonly.m4: Update.
2199         * gnulib/import/m4/open-cloexec.m4: Update.
2200         * gnulib/import/m4/open.m4: Update.
2201         * gnulib/import/m4/openat.m4: Update.
2202         * gnulib/import/m4/opendir.m4: Update.
2203         * gnulib/import/m4/pathmax.m4: Update.
2204         * gnulib/import/m4/rawmemchr.m4: Update.
2205         * gnulib/import/m4/readdir.m4: Update.
2206         * gnulib/import/m4/readlink.m4: Update.
2207         * gnulib/import/m4/realloc.m4: Update.
2208         * gnulib/import/m4/rename.m4: Update.
2209         * gnulib/import/m4/rewinddir.m4: Update.
2210         * gnulib/import/m4/rmdir.m4: Update.
2211         * gnulib/import/m4/save-cwd.m4: Update.
2212         * gnulib/import/m4/secure_getenv.m4: Update.
2213         * gnulib/import/m4/setenv.m4: Update.
2214         * gnulib/import/m4/signal_h.m4: Update.
2215         * gnulib/import/m4/ssize_t.m4: Update.
2216         * gnulib/import/m4/stat-time.m4: Update.
2217         * gnulib/import/m4/stat.m4: Update.
2218         * gnulib/import/m4/std-gnu11.m4: Update.
2219         * gnulib/import/m4/stdbool.m4: Update.
2220         * gnulib/import/m4/stddef_h.m4: Update.
2221         * gnulib/import/m4/stdint.m4: Update.
2222         * gnulib/import/m4/stdio_h.m4: Update.
2223         * gnulib/import/m4/stdlib_h.m4: Update.
2224         * gnulib/import/m4/strchrnul.m4: Update.
2225         * gnulib/import/m4/strdup.m4: Update.
2226         * gnulib/import/m4/strerror.m4: Update.
2227         * gnulib/import/m4/string_h.m4: Update.
2228         * gnulib/import/m4/strstr.m4: Update.
2229         * gnulib/import/m4/strtok_r.m4: Update.
2230         * gnulib/import/m4/sys_socket_h.m4: Update.
2231         * gnulib/import/m4/sys_stat_h.m4: Update.
2232         * gnulib/import/m4/sys_time_h.m4: Update.
2233         * gnulib/import/m4/sys_types_h.m4: Update.
2234         * gnulib/import/m4/tempname.m4: Update.
2235         * gnulib/import/m4/time_h.m4: Update.
2236         * gnulib/import/m4/unistd-safer.m4: Update.
2237         * gnulib/import/m4/unistd_h.m4: Update.
2238         * gnulib/import/m4/warn-on-use.m4: Update.
2239         * gnulib/import/m4/wchar_h.m4: Update.
2240         * gnulib/import/m4/wchar_t.m4: Update.
2241         * gnulib/import/m4/wctype_h.m4: Update.
2242         * gnulib/import/m4/wint_t.m4: Update.
2243         * gnulib/import/malloc.c: Update.
2244         * gnulib/import/malloc/scratch_buffer.h: Update.
2245         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2246         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2247         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2248         * gnulib/import/malloca.c: Update.
2249         * gnulib/import/malloca.h: Update.
2250         * gnulib/import/malloca.valgrind: Update.
2251         * gnulib/import/math.in.h: Update.
2252         * gnulib/import/mbrtowc.c: Update.
2253         * gnulib/import/mbsinit.c: Update.
2254         * gnulib/import/mbsrtowcs-impl.h: Update.
2255         * gnulib/import/mbsrtowcs-state.c: Update.
2256         * gnulib/import/mbsrtowcs.c: Update.
2257         * gnulib/import/memchr.c: Update.
2258         * gnulib/import/memmem.c: Update.
2259         * gnulib/import/mempcpy.c: Update.
2260         * gnulib/import/memrchr.c: Update.
2261         * gnulib/import/mkdir.c: Update.
2262         * gnulib/import/mkstemp.c: Update.
2263         * gnulib/import/msvc-inval.c: Update.
2264         * gnulib/import/msvc-inval.h: Update.
2265         * gnulib/import/msvc-nothrow.c: Update.
2266         * gnulib/import/msvc-nothrow.h: Update.
2267         * gnulib/import/open.c: Update.
2268         * gnulib/import/openat-die.c: Update.
2269         * gnulib/import/openat-priv.h: Update.
2270         * gnulib/import/openat-proc.c: Update.
2271         * gnulib/import/openat.c: Update.
2272         * gnulib/import/openat.h: Update.
2273         * gnulib/import/opendir.c: Update.
2274         * gnulib/import/pathmax.h: Update.
2275         * gnulib/import/pipe-safer.c: Update.
2276         * gnulib/import/rawmemchr.c: Update.
2277         * gnulib/import/readdir.c: Update.
2278         * gnulib/import/readlink.c: Update.
2279         * gnulib/import/realloc.c: Update.
2280         * gnulib/import/ref-add.sin: Update.
2281         * gnulib/import/ref-del.sin: Update.
2282         * gnulib/import/rename.c: Update.
2283         * gnulib/import/rewinddir.c: Update.
2284         * gnulib/import/rmdir.c: Update.
2285         * gnulib/import/same-inode.h: Update.
2286         * gnulib/import/save-cwd.c: Update.
2287         * gnulib/import/save-cwd.h: Update.
2288         * gnulib/import/scratch_buffer.h: Update.
2289         * gnulib/import/secure_getenv.c: Update.
2290         * gnulib/import/setenv.c: Update.
2291         * gnulib/import/signal.in.h: Update.
2292         * gnulib/import/stat-time.c: Update.
2293         * gnulib/import/stat-time.h: Update.
2294         * gnulib/import/stat-w32.c: Update.
2295         * gnulib/import/stat-w32.h: Update.
2296         * gnulib/import/stat.c: Update.
2297         * gnulib/import/stdbool.in.h: Update.
2298         * gnulib/import/stddef.in.h: Update.
2299         * gnulib/import/stdint.in.h: Update.
2300         * gnulib/import/stdio.in.h: Update.
2301         * gnulib/import/stdlib.in.h: Update.
2302         * gnulib/import/str-two-way.h: Update.
2303         * gnulib/import/strchrnul.c: Update.
2304         * gnulib/import/strdup.c: Update.
2305         * gnulib/import/streq.h: Update.
2306         * gnulib/import/strerror-override.c: Update.
2307         * gnulib/import/strerror-override.h: Update.
2308         * gnulib/import/strerror.c: Update.
2309         * gnulib/import/string.in.h: Update.
2310         * gnulib/import/stripslash.c: Update.
2311         * gnulib/import/strnlen1.c: Update.
2312         * gnulib/import/strnlen1.h: Update.
2313         * gnulib/import/strstr.c: Update.
2314         * gnulib/import/strtok_r.c: Update.
2315         * gnulib/import/sys_stat.in.h: Update.
2316         * gnulib/import/sys_time.in.h: Update.
2317         * gnulib/import/sys_types.in.h: Update.
2318         * gnulib/import/tempname.c: Update.
2319         * gnulib/import/tempname.h: Update.
2320         * gnulib/import/time.in.h: Update.
2321         * gnulib/import/unistd--.h: Update.
2322         * gnulib/import/unistd-safer.h: Update.
2323         * gnulib/import/unistd.in.h: Update.
2324         * gnulib/import/unsetenv.c: Update.
2325         * gnulib/import/verify.h: Update.
2326         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2327         * gnulib/import/wchar.in.h: Update.
2328         * gnulib/import/wctype.in.h: Update.
2329         * gnulib/import/xalloc-oversized.h: Update.
2330         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2331         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2332
2333 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2334
2335         * record-btrace.c (get_thread_current_frame): Remove
2336         old_inferior_ptid.
2337
2338 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2339
2340         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2341         with check_tag to 1 if and only if the type is tagged and the
2342         component being searched cannot been found in the current
2343         view. Otherwise, always call ada_to_fixed_type with
2344         check_tag to 0.
2345
2346 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2347
2348         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2349         declaration.
2350         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2351         * ada-varobj.c (ada_varobj_get_number_of_children,
2352         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2353
2354 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2355
2356         * ada-valprint.c (ada_value_print): Use type instead of
2357         enclosing type.
2358
2359 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2360
2361         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2362         an array of access to unconstrained array.
2363
2364 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2365
2366         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2367         (ada_check_typedef): Use it.
2368
2369 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2370
2371         * ada-varobj.c (ada_varobj_describe_struct_child)
2372         (ada_varobj_describe_child): Handle union case like struct one.
2373
2374 2018-09-10  Tom Tromey  <tom@tromey.com>
2375
2376         PR python/18380:
2377         * python/python.c (_initialize_python): Make example in "python"
2378         help work in Python 3.
2379
2380 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2381
2382         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2383         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2384         $(EXEEXT) to the script, as it is not a program.
2385
2386 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2387
2388         * python/py-prettyprint.c (pretty_print_one_value): Return
2389         gdbpy_ref<>.
2390         (print_string_repr): Adjust.
2391         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2392         * python/python-internal.h (apply_varobj_pretty_printer): Return
2393         gdbpy_ref<>.
2394         * varobj.c (varobj_value_get_print_value): Adjust.
2395
2396 2018-09-08  Tom Tromey  <tom@tromey.com>
2397
2398         PR python/16047:
2399         * python/py-prettyprint.c (pretty_print_one_value): Check for
2400         to_string method.
2401
2402 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2403
2404         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2405         replace_operator_with_call.
2406
2407 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2408
2409         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2410
2411 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2412
2413         * ada-typeprint.c (print_range): Print the bounds using TYPE
2414         rather than its TYPE_TARGET_TYPE.
2415
2416 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2417
2418         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2419         call to ada_to_fixed_value_create.
2420
2421 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2422
2423         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2424
2425 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2426
2427         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2428         by calls to error.
2429
2430 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2431
2432         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2433         Move update of loop variable "fi".
2434
2435 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2436
2437         * ada-lang.c (value_assign_to_component): In the case of
2438         big-endian targets, extract the bits of the given VAL
2439         using an src_offset of zero if container is not a scalar.
2440
2441 2018-09-06  Simon Ser  <contact@emersion.fr>
2442
2443         PR gdb/23105
2444         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2445         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2446         * fbsd-tdep.c (fbsd_make_note_desc): New.
2447         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2448         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2449         * target.h (enum target_object) Add FreeBSD-specific
2450         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2451
2452 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2453
2454         * compile/compile-c.h (generate_c_for_variable_locations):
2455         Change reference to pointer.
2456         * compile/compile-c-support.c (compile_program) <compute>:
2457         Likewise.
2458         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2459         (generate_c_for_for_one_variable): Likewise
2460         (generate_c_for_variable_locations): Likewise
2461         * compile/compile-c-types.c (compile_c_instance::convert_type):
2462         Likewise
2463         * compile/compile-cplus-symbols.c (convert_one_symbol):
2464         std::move the scope passed to enter_scope.
2465         * compile/compile-cplus-types.c
2466         (compile_cplus_instance::enter_scope): Make parameter
2467         rvalue-reference.
2468         (compile_cplus_instance::new_scope): Change reference to
2469         pointer.
2470         (compile_cplus_instance::convert_type): Likewise
2471         (compile_cplus_convert_typedef): std::move the scope passed to
2472         enter_scope.
2473         (compile_cplus_convert_struct_or_union): Likewise.
2474         (compile_cplus_convert_enum): Likewise.
2475         (compile_cplus_convert_namespace): Likewise.
2476         * compile/compile-cplus.h (compile_cplus_instance)
2477         <enter_scope>: Make parameter rvalue-reference.
2478         * compile/compile-internal.h (compile_instance)
2479         <get_cached_type>: Likewise
2480         * compile/compile-loc2c.c (push): Likewise
2481         (pushf): Likewise
2482         (unary): Likewise
2483         (binary): Likewise
2484         (print_label): Likewise
2485         (pushf_register_address): Likewise
2486         (pushf_register): Likewise
2487         (do_compile_dwarf_expr_to_c): Likewise
2488         (compile_dwarf_expr_to_c): Likewise
2489         (compile_dwarf_bounds_to_c): Likewise
2490         * compile/compile.c (compile_instance::get_cached_type):
2491         Likewise
2492         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2493         (compile_dwarf_bounds_to_c): Likewise
2494         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2495         (dwarf2_compile_property_to_c): Likewise
2496         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2497         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2498         Likewise
2499
2500 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2501
2502         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2503         * tui/tui-data.c (init_content_element): Don't initialize it.
2504
2505 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2506
2507         * tui/tui-data.h (struct tui_win_info)
2508         <detail::opaque>: Remove.
2509         * tui/tui-data.c (init_win_info): Remove assignment.
2510
2511 2018-09-05  Tom Tromey  <tom@tromey.com>
2512
2513         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2514         -Wformat-nonliteral.
2515         * target-float.c (host_float_ops<T>::to_string)
2516         (host_float_ops<T>::from_string): Use
2517         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2518         * configure: Rebuild.
2519
2520 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2521
2522         * printcmd.c (printf_c_string): Use
2523         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2524         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2525
2526 2018-09-05  Tom Tromey  <tom@tromey.com>
2527
2528         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2529
2530 2018-09-05  Tom de Vries  <tdevries@suse.de>
2531
2532         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2533         with resolve_abstract_p == true.
2534         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2535         defaulting to false. Propagate resolve_abstract_p to
2536         dwarf2_fetch_die_loc_sect_off.
2537         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2538         parameter, defaulting to false.
2539         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2540         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2541         parameter.
2542         * dwarf2read.h (struct die_info): Forward-declare.
2543         (die_info_ptr): New typedef.
2544         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2545
2546 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2547
2548         GDB 8.2 released.
2549
2550 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2551             Pedro Alves  <palves@redhat.com>
2552
2553         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2554         "aclocal-m4-deps.mk".  Include file here.
2555         $(srcdir)/aclocal.m4: Add "configure.ac".
2556         * gnulib/aclocal-m4-deps.mk: New file.
2557         * gnulib/update-gnulib.sh: Automatically update
2558         "aclocal-m4-deps.mk".
2559
2560 2018-09-04  Tom Tromey  <tom@tromey.com>
2561
2562         * configure: Rebuild.
2563         * configure.ac: Remove multi-ice code.
2564
2565 2018-09-04  Tom Tromey  <tom@tromey.com>
2566
2567         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2568         (ada-exp.o): Update.
2569
2570 2018-09-04  Tom Tromey  <tom@tromey.com>
2571
2572         * Makefile.in (printcmd.o, target-float.o): Remove.
2573         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2574
2575 2018-09-04  Tom Tromey  <tom@tromey.com>
2576
2577         * gnulib/Makefile.in: Remove obsolete comment.
2578         * Makefile.in: Remove obsolete comment.
2579
2580 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2581
2582         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2583         line with '+'.
2584
2585 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2586
2587         * riscv-tdep.c: Add 'prologue-value.h' include.
2588         (struct riscv_unwind_cache): New struct.
2589         (riscv_debug_unwinder): New global.
2590         (riscv_scan_prologue): Update arguments, capture register details
2591         from prologue scan.
2592         (riscv_skip_prologue): Reformat arguments line, move end of
2593         prologue calculation into riscv_scan_prologue.
2594         (riscv_frame_cache): Update return type, create
2595         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2596         details.
2597         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2598         (riscv_frame_prev_register): Use the trad_frame within the
2599         riscv_unwind_cache.
2600         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2601         flag.
2602
2603 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2604
2605         * trad-frame.h (trad_frame_set_realreg): Declare.
2606         (trad_frame_set_addr): Declare.
2607         * trad-frame.c (trad_frame_set_realreg): Define new function.
2608         (trad_frame_set_addr): Define new function.
2609         (trad_frame_set_reg_realreg): Use new function.
2610         (trad_frame_set_reg_addr): Use new function.
2611
2612 2018-09-01  Keith Seitz  <keiths@redhat.com>
2613
2614         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2615         pulongest instead of "%lld".
2616         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2617         ATTRIBUTE_UNUSED.
2618
2619 2018-08-31  Tom Tromey  <tom@tromey.com>
2620
2621         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2622         variant part type.
2623
2624 2018-08-31  Pedro Alves  <palves@redhat.com>
2625
2626         * gdbarch.h: Regenerate.
2627
2628 2018-08-31  Pedro Alves  <palves@redhat.com>
2629
2630         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2631         * target.h (Hardware watchpoint interfaces): Describe
2632         continuable/steppable/non-steppable watchpoints.
2633         * gdbarch.h, gdbarch.c: Regenerate.
2634
2635 2018-08-31  Pedro Alves  <palves@redhat.com>
2636
2637         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2638         Delete.
2639         * s390-linux-nat.c
2640         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2641         * target.h (target_ops::have_continuable_watchpoint): Delete.
2642         (target_have_continuable_watchpoint): Delete.
2643         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2644         * target-delegates.c: Regenerate.
2645
2646 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2647
2648         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2649         the files present in "gnulib/import/m4/".
2650
2651 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2652
2653         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2654         c.sw, c.swsp, and c.sdsp.
2655
2656 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2657
2658         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2659         (riscv_read_misa_reg): Don't cache value read into inferior data.
2660         (riscv_new_inferior_data): Delete.
2661         (riscv_inferior_data_cleanup): Delete.
2662         (riscv_inferior_data): Delete.
2663         (riscv_invalidate_inferior_data): Delete.
2664         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2665
2666 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2667
2668         * compile/compile-cplus-types.c
2669         (compile_cplus_instance::leave_scope): Take the address of scope
2670         object.
2671         (compile_cplus_instance::convert_qualified_base): Compare quals
2672         to 0.
2673
2674 2018-08-30  Keith Seitz  <keiths@redhat.com>
2675
2676         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2677         Use "%s" and host_address_to_string instead of "%p" in printf.
2678
2679 2018-08-29  Keith Seitz  <keiths@redhat.com>
2680
2681         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2682         and compile-cplus-types.c.
2683         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2684         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2685         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2686         Declare.
2687         * compile/compile-c-support.c: Include compile-cplus.h.
2688         (load_libcompile): Templatize.
2689         (get_compile_context): "New" function.
2690         (c_get_compile_context): Use get_compile_context.
2691         (cplus_get_compile_context): New function.
2692         (cplus_push_user_expression, cplus_pop_user_expression)
2693         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2694         (cplus_compute_program): Define new structs/functions.
2695         * compile/compile-cplus-symmbols.c: New file.
2696         * compile/compile-cplus-types.c: New file.
2697         * compile/compile-cplus.h: New file.
2698         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2699         Declare.
2700         * compile/compile-object-load.c (get_out_value_type): Use
2701         strncmp_iw when comparing symbol names.
2702         (compile_object_load): Add mst_bss and mst_data.
2703         * compile/compile.c (_initialize_compile): Remove
2704         -Wno-implicit-function-declaration from `compile_args'.
2705         * compile/gcc-cp-plugin.h: New file.
2706         * NEWS: Mention C++ compile support and new debug options.
2707
2708 2018-08-29  Keith Seitz  <keiths@redhat.com>
2709
2710         * linespec.c (collect_info::add_symbol): Make virtual.
2711         (struct symbol_searcher_collect_info): New struct.
2712         (symbol_searcher::find_all_symbols): New method.
2713         * symtab.h (class symbol_searcher): New class.
2714
2715 2018-08-29  Keith Seitz  <keiths@redhat.com>
2716
2717         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2718         Change to vector of block_symbol.  Update all users.
2719         (struct collect_info) <symbols>: Likewise.
2720         (collect_info::add_symbol): Take block_symbol as argument.
2721         Update all callers.
2722         (decode_compound_collector) <m_symbols>: Change type to vector
2723         of block_symbol.  Update all users.
2724         (decode_compound_collector::operator ()): Change parameter type
2725         to block_symbol.
2726         (find_method, find_function_symbols, find_linespec_symbols)
2727         (find_label_symbols_in_block, find_label_symbols): Change symbol
2728         vectors to block_symbol vectors.
2729         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2730         block_symbol.
2731
2732 2018-08-29  Keith Seitz  <keiths@redhat.com>
2733
2734         * linespec.c (symbolp): Remove typedef and VEC definitions.
2735         (bound_minimal_symbol_d): Likewise.
2736
2737 2018-08-29  Keith Seitz  <keiths@redhat.com>
2738
2739         * linespec.c (decode_compound_collector::decode_compound_collector):
2740         Remove initialization for `m_symtabs'.
2741         (decode_compound_collector::release_symbols): Change return type
2742         to std::vector.  Update all callers.
2743         (class decode_compound_collector) <m_symbols>: Change type to
2744         std::vector.
2745         (lookup_prefix_sym): Change return type to std::vector.  Update all
2746         callers.
2747         (compare_symbols): Remove.
2748         (std_compare_symbols): Rename to `compare_symbols'.
2749         (find_method): Change `sym_classes' parameter to std::vector.
2750         Update all callers.  Use std::sort to sort sym_classes.
2751         (find_linespec_symbols): Remove cleanup.
2752
2753 2018-08-29  Keith Seitz  <keiths@redhat.com>
2754
2755         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2756         std::vector.  Update all users.
2757         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2758         (struct collect_info) <minimal_symbols>: Likewise.
2759         (compare_msymbols): Return bool.  Change parameters to const
2760         bound_minimal_symbol references.
2761         (find_method, find_function_symbols, find_linespec_symbols): Change
2762         `minsyms' parameter to std::vector.  Update all callers.
2763
2764 2018-08-29  Keith Seitz  <keiths@redhat.com>
2765
2766         * linespec.c (struct linespec) <label_symbols>: Change type to
2767         std::vector.  Update all users.
2768         (find_label_symbols_in_block): Change `result' parameter to
2769         std::vector.  Update all callers.
2770         (find_label_symbols): Return std::vector.  Update all callers.
2771
2772 2018-08-29  Keith Seitz  <keiths@redhat.com>
2773
2774         * linespec.c (struct linespec) <function_symbols>: Change type to
2775         std::vector.  Update all users.
2776         (struct collect_info) <function_symbols>: Likewise.
2777         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2778         (std_compare_symbols): New function.
2779         (find_method, find_function_symbols, find_linespec_symbols)
2780         (find_label_symbols_in_block): Change `symbols' parameter to
2781         std::vector.  Update all callers.
2782         (find_label_symbols): Likewise for `function_symbols' and
2783         `label_funcs_ret'.
2784
2785 2018-08-29  Keith Seitz  <keiths@redhat.com>
2786
2787         * linespec.c (symtab_vector_up): Define.
2788         (struct linespec) <file_symtabs>: Change type to std::vector *.
2789         Update all uses.
2790         (struct collect_info) <file_symtabs>: Likewise.
2791         (collect_symtabs_from_filename): Return symtab_vector_up.
2792         Update all callers.
2793         (decode_objc): Remove cleanup.
2794         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2795         (symtab_collector::release_symtabs): Return symtab_vector_up.
2796         Update all callers.
2797         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2798         Update all users.
2799         (collect_symtabs_from_filename, symtabs_from_filename): Return
2800         symtab_vector_up.  Update all callers.
2801
2802 2018-08-29  Tom Tromey  <tom@tromey.com>
2803
2804         * csky-tdep.c (csky_analyze_prologue): Use
2805         core_addr_to_string_nz.
2806
2807 2018-08-29  Tom Tromey  <tom@tromey.com>
2808
2809         * windows-nat.c (struct xlate_exception) <them>: Change type to
2810         DWORD.
2811         (xlate): Fix formatting.  Remove last entry.
2812         (struct xlate_exception, xlate): Comment out.
2813         (windows_nat_target::resume): Use ranged for.
2814
2815 2018-08-29  Jim Wilson  <jimw@sifive.com>
2816
2817         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2818         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2819         of NT_PRFPREG.
2820         (riscv_linux_nat_target::store_registers): Likewise.
2821
2822 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2823
2824         PR gdb/23555
2825         PR gdb/23558
2826         * gnulib/aclocal.m4: Regenerate.
2827         * gnulib/config.in: Regenerate.
2828         * gnulib/configure: Regenerate.
2829         * gnulib/import/Makefile.am: Update.
2830         * gnulib/import/Makefile.in: Update.
2831         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2832         * gnulib/import/_Noreturn.h: ... this.
2833         * gnulib/import/alloca.in.h: Update.
2834         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2835         * gnulib/import/arg-nonnull.h: ... this.
2836         * gnulib/import/assure.h: Update.
2837         * gnulib/import/at-func.c: Update.
2838         * gnulib/import/basename-lgpl.c: Update.
2839         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2840         * gnulib/import/c++defs.h: ... this.
2841         * gnulib/import/canonicalize-lgpl.c: Update.
2842         * gnulib/import/cdefs.h: Update.
2843         * gnulib/import/chdir-long.c: Update.
2844         * gnulib/import/chdir-long.h: Update.
2845         * gnulib/import/cloexec.c: Update.
2846         * gnulib/import/cloexec.h: Update.
2847         * gnulib/import/close.c: Update.
2848         * gnulib/import/closedir.c: Update.
2849         * gnulib/import/config.charset: Update.
2850         * gnulib/import/dirent-private.h: Update.
2851         * gnulib/import/dirent.in.h: Update.
2852         * gnulib/import/dirfd.c: Update.
2853         * gnulib/import/dirname-lgpl.c: Update.
2854         * gnulib/import/dirname.h: Update.
2855         * gnulib/import/dosname.h: Update.
2856         * gnulib/import/dup-safer-flag.c: Update.
2857         * gnulib/import/dup-safer.c: Update.
2858         * gnulib/import/dup.c: Update.
2859         * gnulib/import/dup2.c: Update.
2860         * gnulib/import/errno.in.h: Update.
2861         * gnulib/import/error.c: Update.
2862         * gnulib/import/error.h: Update.
2863         * gnulib/import/exitfail.c: Update.
2864         * gnulib/import/exitfail.h: Update.
2865         * gnulib/import/extra/update-copyright: Update.
2866         * gnulib/import/fchdir.c: Update.
2867         * gnulib/import/fcntl.c: Update.
2868         * gnulib/import/fcntl.in.h: Update.
2869         * gnulib/import/fd-hook.c: Update.
2870         * gnulib/import/fd-hook.h: Update.
2871         * gnulib/import/fd-safer-flag.c: Update.
2872         * gnulib/import/fd-safer.c: Update.
2873         * gnulib/import/fdopendir.c: Update.
2874         * gnulib/import/filename.h: Update.
2875         * gnulib/import/filenamecat-lgpl.c: Update.
2876         * gnulib/import/filenamecat.h: Update.
2877         * gnulib/import/flexmember.h: Update.
2878         * gnulib/import/float+.h: Update.
2879         * gnulib/import/float.c: Update.
2880         * gnulib/import/float.in.h: Update.
2881         * gnulib/import/fnmatch.c: Update.
2882         * gnulib/import/fnmatch.in.h: Update.
2883         * gnulib/import/fnmatch_loop.c: Update.
2884         * gnulib/import/fpucw.h: Update.
2885         * gnulib/import/frexp.c: Update.
2886         * gnulib/import/frexpl.c: Update.
2887         * gnulib/import/fstat.c: Update.
2888         * gnulib/import/fstatat.c: Update.
2889         * gnulib/import/getcwd-lgpl.c: Update.
2890         * gnulib/import/getcwd.c: Update.
2891         * gnulib/import/getdtablesize.c: Update.
2892         * gnulib/import/getlogin_r.c: Update.
2893         * gnulib/import/getprogname.c: Update.
2894         * gnulib/import/getprogname.h: Update.
2895         * gnulib/import/gettext.h: Update.
2896         * gnulib/import/gettimeofday.c: Update.
2897         * gnulib/import/glob-libc.h: Update.
2898         * gnulib/import/glob.c: Update.
2899         * gnulib/import/glob.in.h: Update.
2900         * gnulib/import/glob_internal.h: Update.
2901         * gnulib/import/glob_pattern_p.c: Update.
2902         * gnulib/import/globfree.c: Update.
2903         * gnulib/import/hard-locale.c: Update.
2904         * gnulib/import/hard-locale.h: Update.
2905         * gnulib/import/intprops.h: Update.
2906         * gnulib/import/inttypes.in.h: Update.
2907         * gnulib/import/isnan.c: Update.
2908         * gnulib/import/isnand-nolibm.h: Update.
2909         * gnulib/import/isnand.c: Update.
2910         * gnulib/import/isnanl-nolibm.h: Update.
2911         * gnulib/import/isnanl.c: Update.
2912         * gnulib/import/itold.c: Update.
2913         * gnulib/import/libc-config.h: Update.
2914         * gnulib/import/limits.in.h: Update.
2915         * gnulib/import/localcharset.c: Update.
2916         * gnulib/import/localcharset.h: Update.
2917         * gnulib/import/localtime-buffer.c: Update.
2918         * gnulib/import/localtime-buffer.h: Update.
2919         * gnulib/import/lstat.c: Update.
2920         * gnulib/import/m4/00gnulib.m4: Update.
2921         * gnulib/import/m4/__inline.m4: Update.
2922         * gnulib/import/m4/absolute-header.m4: Update.
2923         * gnulib/import/m4/alloca.m4: Update.
2924         * gnulib/import/m4/builtin-expect.m4: Update.
2925         * gnulib/import/m4/canonicalize.m4: Update.
2926         * gnulib/import/m4/chdir-long.m4: Update.
2927         * gnulib/import/m4/close.m4: Update.
2928         * gnulib/import/m4/closedir.m4: Update.
2929         * gnulib/import/m4/configmake.m4: Update.
2930         * gnulib/import/m4/d-ino.m4: Update.
2931         * gnulib/import/m4/d-type.m4: Update.
2932         * gnulib/import/m4/dirent_h.m4: Update.
2933         * gnulib/import/m4/dirfd.m4: Update.
2934         * gnulib/import/m4/dirname.m4: Update.
2935         * gnulib/import/m4/double-slash-root.m4: Update.
2936         * gnulib/import/m4/dup.m4: Update.
2937         * gnulib/import/m4/dup2.m4: Update.
2938         * gnulib/import/m4/eealloc.m4: Update.
2939         * gnulib/import/m4/environ.m4: Update.
2940         * gnulib/import/m4/errno_h.m4: Update.
2941         * gnulib/import/m4/error.m4: Update.
2942         * gnulib/import/m4/exponentd.m4: Update.
2943         * gnulib/import/m4/exponentl.m4: Update.
2944         * gnulib/import/m4/extensions.m4: Update.
2945         * gnulib/import/m4/extern-inline.m4: Update.
2946         * gnulib/import/m4/fchdir.m4: Update.
2947         * gnulib/import/m4/fcntl-o.m4: Update.
2948         * gnulib/import/m4/fcntl.m4: Update.
2949         * gnulib/import/m4/fcntl_h.m4: Update.
2950         * gnulib/import/m4/fdopendir.m4: Update.
2951         * gnulib/import/m4/filenamecat.m4: Update.
2952         * gnulib/import/m4/flexmember.m4: Update.
2953         * gnulib/import/m4/float_h.m4: Update.
2954         * gnulib/import/m4/fnmatch.m4: Update.
2955         * gnulib/import/m4/fnmatch_h.m4: Update.
2956         * gnulib/import/m4/fpieee.m4: Update.
2957         * gnulib/import/m4/frexp.m4: Update.
2958         * gnulib/import/m4/frexpl.m4: Update.
2959         * gnulib/import/m4/fstat.m4: Update.
2960         * gnulib/import/m4/fstatat.m4: Update.
2961         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2962         * gnulib/import/m4/getcwd-path-max.m4: Update.
2963         * gnulib/import/m4/getcwd.m4: Update.
2964         * gnulib/import/m4/getdtablesize.m4: Update.
2965         * gnulib/import/m4/getlogin.m4: Update.
2966         * gnulib/import/m4/getlogin_r.m4: Update.
2967         * gnulib/import/m4/getpagesize.m4: Update.
2968         * gnulib/import/m4/getprogname.m4: Update.
2969         * gnulib/import/m4/gettimeofday.m4: Update.
2970         * gnulib/import/m4/glibc21.m4: Update.
2971         * gnulib/import/m4/glob.m4: Update.
2972         * gnulib/import/m4/glob_h.m4: Update.
2973         * gnulib/import/m4/gnulib-cache.m4: Update.
2974         * gnulib/import/m4/gnulib-common.m4: Update.
2975         * gnulib/import/m4/gnulib-comp.m4: Update.
2976         * gnulib/import/m4/gnulib-tool.m4: Update.
2977         * gnulib/import/m4/hard-locale.m4: Update.
2978         * gnulib/import/m4/include_next.m4: Update.
2979         * gnulib/import/m4/inttypes-pri.m4: Update.
2980         * gnulib/import/m4/inttypes.m4: Update.
2981         * gnulib/import/m4/isnand.m4: Update.
2982         * gnulib/import/m4/isnanl.m4: Update.
2983         * gnulib/import/m4/largefile.m4: Update.
2984         * gnulib/import/m4/limits-h.m4: Update.
2985         * gnulib/import/m4/localcharset.m4: Update.
2986         * gnulib/import/m4/locale-fr.m4: Update.
2987         * gnulib/import/m4/locale-ja.m4: Update.
2988         * gnulib/import/m4/locale-zh.m4: Update.
2989         * gnulib/import/m4/localtime-buffer.m4: Update.
2990         * gnulib/import/m4/longlong.m4: Update.
2991         * gnulib/import/m4/lstat.m4: Update.
2992         * gnulib/import/m4/malloc.m4: Update.
2993         * gnulib/import/m4/malloca.m4: Update.
2994         * gnulib/import/m4/math_h.m4: Update.
2995         * gnulib/import/m4/mbrtowc.m4: Update.
2996         * gnulib/import/m4/mbsinit.m4: Update.
2997         * gnulib/import/m4/mbsrtowcs.m4: Update.
2998         * gnulib/import/m4/mbstate_t.m4: Update.
2999         * gnulib/import/m4/memchr.m4: Update.
3000         * gnulib/import/m4/memmem.m4: Update.
3001         * gnulib/import/m4/mempcpy.m4: Update.
3002         * gnulib/import/m4/memrchr.m4: Update.
3003         * gnulib/import/m4/mkdir.m4: Update.
3004         * gnulib/import/m4/mkstemp.m4: Update.
3005         * gnulib/import/m4/mmap-anon.m4: Update.
3006         * gnulib/import/m4/mode_t.m4: Update.
3007         * gnulib/import/m4/msvc-inval.m4: Update.
3008         * gnulib/import/m4/msvc-nothrow.m4: Update.
3009         * gnulib/import/m4/multiarch.m4: Update.
3010         * gnulib/import/m4/nocrash.m4: Update.
3011         * gnulib/import/m4/off_t.m4: Update.
3012         * gnulib/import/m4/onceonly.m4: Update.
3013         * gnulib/import/m4/open-cloexec.m4: Update.
3014         * gnulib/import/m4/open.m4: Update.
3015         * gnulib/import/m4/openat.m4: Update.
3016         * gnulib/import/m4/opendir.m4: Update.
3017         * gnulib/import/m4/pathmax.m4: Update.
3018         * gnulib/import/m4/rawmemchr.m4: Update.
3019         * gnulib/import/m4/readdir.m4: Update.
3020         * gnulib/import/m4/readlink.m4: Update.
3021         * gnulib/import/m4/realloc.m4: Update.
3022         * gnulib/import/m4/rename.m4: Update.
3023         * gnulib/import/m4/rewinddir.m4: Update.
3024         * gnulib/import/m4/rmdir.m4: Update.
3025         * gnulib/import/m4/save-cwd.m4: Update.
3026         * gnulib/import/m4/secure_getenv.m4: Update.
3027         * gnulib/import/m4/setenv.m4: Update.
3028         * gnulib/import/m4/signal_h.m4: Update.
3029         * gnulib/import/m4/ssize_t.m4: Update.
3030         * gnulib/import/m4/stat-time.m4: Update.
3031         * gnulib/import/m4/stat.m4: Update.
3032         * gnulib/import/m4/std-gnu11.m4: Update.
3033         * gnulib/import/m4/stdbool.m4: Update.
3034         * gnulib/import/m4/stddef_h.m4: Update.
3035         * gnulib/import/m4/stdint.m4: Update.
3036         * gnulib/import/m4/stdio_h.m4: Update.
3037         * gnulib/import/m4/stdlib_h.m4: Update.
3038         * gnulib/import/m4/strchrnul.m4: Update.
3039         * gnulib/import/m4/strdup.m4: Update.
3040         * gnulib/import/m4/strerror.m4: Update.
3041         * gnulib/import/m4/string_h.m4: Update.
3042         * gnulib/import/m4/strstr.m4: Update.
3043         * gnulib/import/m4/strtok_r.m4: Update.
3044         * gnulib/import/m4/sys_socket_h.m4: Update.
3045         * gnulib/import/m4/sys_stat_h.m4: Update.
3046         * gnulib/import/m4/sys_time_h.m4: Update.
3047         * gnulib/import/m4/sys_types_h.m4: Update.
3048         * gnulib/import/m4/tempname.m4: Update.
3049         * gnulib/import/m4/time_h.m4: Update.
3050         * gnulib/import/m4/unistd-safer.m4: Update.
3051         * gnulib/import/m4/unistd_h.m4: Update.
3052         * gnulib/import/m4/warn-on-use.m4: Update.
3053         * gnulib/import/m4/wchar_h.m4: Update.
3054         * gnulib/import/m4/wchar_t.m4: Update.
3055         * gnulib/import/m4/wctype_h.m4: Update.
3056         * gnulib/import/m4/wint_t.m4: Update.
3057         * gnulib/import/malloc.c: Update.
3058         * gnulib/import/malloc/scratch_buffer.h: Update.
3059         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3060         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3061         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3062         * gnulib/import/malloca.c: Update.
3063         * gnulib/import/malloca.h: Update.
3064         * gnulib/import/malloca.valgrind: Update.
3065         * gnulib/import/math.in.h: Update.
3066         * gnulib/import/mbrtowc.c: Update.
3067         * gnulib/import/mbsinit.c: Update.
3068         * gnulib/import/mbsrtowcs-impl.h: Update.
3069         * gnulib/import/mbsrtowcs-state.c: Update.
3070         * gnulib/import/mbsrtowcs.c: Update.
3071         * gnulib/import/memchr.c: Update.
3072         * gnulib/import/memmem.c: Update.
3073         * gnulib/import/mempcpy.c: Update.
3074         * gnulib/import/memrchr.c: Update.
3075         * gnulib/import/mkdir.c: Update.
3076         * gnulib/import/mkstemp.c: Update.
3077         * gnulib/import/msvc-inval.c: Update.
3078         * gnulib/import/msvc-inval.h: Update.
3079         * gnulib/import/msvc-nothrow.c: Update.
3080         * gnulib/import/msvc-nothrow.h: Update.
3081         * gnulib/import/open.c: Update.
3082         * gnulib/import/openat-die.c: Update.
3083         * gnulib/import/openat-priv.h: Update.
3084         * gnulib/import/openat-proc.c: Update.
3085         * gnulib/import/openat.c: Update.
3086         * gnulib/import/openat.h: Update.
3087         * gnulib/import/opendir.c: Update.
3088         * gnulib/import/pathmax.h: Update.
3089         * gnulib/import/pipe-safer.c: Update.
3090         * gnulib/import/rawmemchr.c: Update.
3091         * gnulib/import/readdir.c: Update.
3092         * gnulib/import/readlink.c: Update.
3093         * gnulib/import/realloc.c: Update.
3094         * gnulib/import/ref-add.sin: Update.
3095         * gnulib/import/ref-del.sin: Update.
3096         * gnulib/import/rename.c: Update.
3097         * gnulib/import/rewinddir.c: Update.
3098         * gnulib/import/rmdir.c: Update.
3099         * gnulib/import/same-inode.h: Update.
3100         * gnulib/import/save-cwd.c: Update.
3101         * gnulib/import/save-cwd.h: Update.
3102         * gnulib/import/scratch_buffer.h: Update.
3103         * gnulib/import/secure_getenv.c: Update.
3104         * gnulib/import/setenv.c: Update.
3105         * gnulib/import/signal.in.h: Update.
3106         * gnulib/import/stat-time.c: Update.
3107         * gnulib/import/stat-time.h: Update.
3108         * gnulib/import/stat-w32.c: Update.
3109         * gnulib/import/stat-w32.h: Update.
3110         * gnulib/import/stat.c: Update.
3111         * gnulib/import/stdbool.in.h: Update.
3112         * gnulib/import/stddef.in.h: Update.
3113         * gnulib/import/stdint.in.h: Update.
3114         * gnulib/import/stdio.in.h: Update.
3115         * gnulib/import/stdlib.in.h: Update.
3116         * gnulib/import/str-two-way.h: Update.
3117         * gnulib/import/strchrnul.c: Update.
3118         * gnulib/import/strdup.c: Update.
3119         * gnulib/import/streq.h: Update.
3120         * gnulib/import/strerror-override.c: Update.
3121         * gnulib/import/strerror-override.h: Update.
3122         * gnulib/import/strerror.c: Update.
3123         * gnulib/import/string.in.h: Update.
3124         * gnulib/import/stripslash.c: Update.
3125         * gnulib/import/strnlen1.c: Update.
3126         * gnulib/import/strnlen1.h: Update.
3127         * gnulib/import/strstr.c: Update.
3128         * gnulib/import/strtok_r.c: Update.
3129         * gnulib/import/sys_stat.in.h: Update.
3130         * gnulib/import/sys_time.in.h: Update.
3131         * gnulib/import/sys_types.in.h: Update.
3132         * gnulib/import/tempname.c: Update.
3133         * gnulib/import/tempname.h: Update.
3134         * gnulib/import/time.in.h: Update.
3135         * gnulib/import/unistd--.h: Update.
3136         * gnulib/import/unistd-safer.h: Update.
3137         * gnulib/import/unistd.in.h: Update.
3138         * gnulib/import/unsetenv.c: Update.
3139         * gnulib/import/verify.h: Update.
3140         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3141         * gnulib/import/wchar.in.h: Update.
3142         * gnulib/import/wctype.in.h: Update.
3143         * gnulib/import/xalloc-oversized.h: Update.
3144         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3145         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3146
3147 2018-08-16  Gary Benson <gbenson@redhat.com>
3148
3149         PR gdb/13000:
3150         * gdb/main.c (captured_main_1): Exit with nonzero status
3151         in batch mode if the last command to be executed failed.
3152         * NEWS: Mention the above.
3153
3154 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3155
3156         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3157         end of warning message.
3158
3159 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3160
3161         PR gdb/22943:
3162         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3163         (aarch64_extract_return_value): Use
3164         aapcs_is_vfp_call_or_return_candidate.
3165         (aarch64_return_in_memory): Likewise.
3166         (aarch64_store_return_value): Likewise.
3167
3168 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3169
3170         * aarch64-tdep.c
3171         (aapcs_is_vfp_call_or_return_candidate): Make static
3172         (pass_in_v_or_stack): Remove function.
3173         (pass_in_v_vfp_candidate): New function.
3174         (aarch64_push_dummy_call): Check for float register candidates.
3175
3176 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3177
3178         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3179         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3180         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3181
3182 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3183
3184         PR build/23399
3185         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3186         (struct ipa_sym_addresses): Rename to...
3187         (struct ipa_sym_addresses_common): ... this.
3188         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3189
3190 2018-08-28  Tom Tromey  <tom@tromey.com>
3191
3192         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3193         (token_fifo): Now a std::vector.
3194         (yylex, c_parse): Update.
3195         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3196         (token_fifo): Now a std::vector.
3197         (yylex, d_parse): Update.
3198         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3199         (token_fifo): Now a std::vector.
3200         (yylex, go_parse): Update.
3201
3202 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3203
3204         * parser-defs.h (struct type_stack) <elements>: Change type to
3205         std::vector<union type_stack_elt>.
3206         <depth, size>: Remove.
3207         * parse.c (parse_exp_in_context_1): Adjust.
3208         (type_stack_reserve): Remove.
3209         (check_type_stack_depth): Remove.
3210         (insert_into_type_stack): Adjust to std::vector.
3211         (insert_type): Likewise.
3212         (push_type): Likewise.
3213         (push_type_int): Likewise.
3214         (insert_type_address_space): Likewise.
3215         (pop_type): Likewise.
3216         (pop_type_int): Likewise.
3217         (pop_typelist): Likewise.
3218         (pop_type_stack): Likewise.
3219         (append_type_stack): Likewise.
3220         (push_type_stack): Likewise.
3221         (get_type_stack): Likewise.
3222         (type_stack_cleanup): Likewise.
3223         (push_typelist): Likewise.
3224         (follow_types): Likewise.
3225         (_initialize_parse): Likewise.
3226
3227 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3228
3229         * NEWS: Mention csky target.
3230
3231 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3232             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3233             Don Breazeal  <donb@codesourcery.com>
3234
3235         * csky-linux-tdep.c: New file.
3236         * csky-tdep.c: Likewise.
3237         * csky-tdep.h: Likewise.
3238         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3239         csky-tdep.o.
3240         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3241         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3242         * configure.tgt: Add csky support.
3243
3244 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3245
3246         * python/py-framefilter.c (py_print_frame): Print frame architecture
3247         when printing on an MI output.
3248
3249 2018-08-27  Tom Tromey  <tom@tromey.com>
3250
3251         PR build/23087:
3252         * configure: Rebuild.
3253         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3254
3255 2018-08-27  Tom Tromey  <tom@tromey.com>
3256
3257         * aarch64-linux-tdep.c
3258         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3259         casts to int.
3260
3261 2018-08-27  Tom Tromey  <tom@tromey.com>
3262
3263         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3264         unsigned.
3265         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3266         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3267         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3268         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3269         unsigned.
3270
3271 2018-08-27  Tom Tromey  <tom@tromey.com>
3272
3273         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3274         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3275
3276 2018-08-27  Tom Tromey  <tom@tromey.com>
3277
3278         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3279         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3280         ULONGEST_MAX.
3281         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3282         ULONGEST_MAX.
3283         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3284         ULONGEST_MAX.
3285         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3286         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3287         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3288         ULONGEST_MAX.
3289         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3290         (ppc64_linux_sigaction_tramp_frame)
3291         (ppc32_linux_sighandler_tramp_frame)
3292         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3293         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3294         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3295         * mn10300-linux-tdep.c (am33_linux_sigframe)
3296         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3297         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3298         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3299         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3300         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3301         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3302         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3303         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3304         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3305         * microblaze-linux-tdep.c
3306         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3307         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3308         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3309         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3310         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3311         * common/common-types.h (ULONGEST_MAX): New define.
3312         (CORE_ADDR_MAX): Fix formatting.
3313         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3314         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3315         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3316         (arm_linux_rt_sigreturn_tramp_frame)
3317         (arm_eabi_linux_sigreturn_tramp_frame)
3318         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3319         (thumb2_eabi_linux_sigreturn_tramp_frame)
3320         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3321         (arm_linux_restart_syscall_tramp_frame)
3322         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3323         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3324         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3325         ULONGEST_MAX.
3326         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3327
3328 2018-08-27  Tom Tromey  <tom@tromey.com>
3329
3330         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3331         CORE_ADDR_MAX.
3332         * mips-tdep.c (mips_deal_with_atomic_sequence)
3333         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3334         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3335         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3336         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3337         CORE_ADDR_MAX.
3338         * aarch64-tdep.c (aarch64_software_single_step): Use
3339         CORE_ADDR_MAX.
3340
3341 2018-08-27  Tom Tromey  <tom@tromey.com>
3342
3343         * linespec.c (complete_linespec_component): Add cast to "char".
3344         * completer.c (completion_tracker::build_completion_result): Add
3345         cast to "char".
3346
3347 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3348
3349         * solist.h (struct solist, struct target_so_ops): Fix
3350         indentation.
3351
3352 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3353
3354         * ada-tasks.c (ada_task_info_s): Remove typedef.
3355         (DEF_VEC_O(ada_task_info_s)): Remove.
3356         (struct ada_tasks_inferior_data): Initialize fields.
3357         <task_list>: Make an std::vector.
3358         (get_ada_tasks_inferior_data): Allocate with new.
3359         (ada_get_task_number): Adjust.
3360         (get_task_number_from_id): Likewise.
3361         (valid_task_id): Likewise.
3362         (ada_get_task_info_from_ptid): Likewise.
3363         (iterate_over_live_ada_tasks): Likewise.
3364         (add_ada_task): Likewise.
3365         (read_known_tasks): Likewise.
3366         (ada_build_task_list): Likewise.
3367         (print_ada_task_info): Likewise.
3368         (info_task): Likewise.
3369         (task_command_1): Likewise.
3370
3371 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3372
3373         * ada-lang.c (add_angle_brackets): Return std::string.
3374
3375 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3376
3377         * python/py-threadevent.c (py_get_event_thread): Initialize
3378         pythread.
3379
3380 2018-08-24  Pedro Alves  <palves@redhat.com>
3381
3382         * python/py-bpevent.c (create_breakpoint_event_object): Use
3383         copy-initialization.
3384         * python/py-continueevent.c (emit_continue_event): Use
3385         copy-initialization.
3386         * python/py-exitedevent.c (create_exited_event_object): Return a
3387         gdbpy_ref<>.
3388         (emit_exited_event): Use copy-initialization.
3389         * python/py-inferior.c (python_new_inferior)
3390         (python_inferior_deleted, add_thread_object): Use
3391         copy-initialization.
3392         * python/py-infevents.c (create_inferior_call_event_object)
3393         (create_register_changed_event_object)
3394         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3395         (emit_inferior_call_event, emit_memory_changed_event)
3396         (emit_register_changed_event): Use copy-initialization.
3397         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3398         Return a gdbpy_ref<>.
3399         (emit_new_objfile_event): Use copy-initialization.
3400         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3401         (emit_clear_objfiles_event): Use copy-initialization.
3402         * python/py-signalevent.c (create_signal_event_object): Use
3403         copy-initialization.
3404         * python/py-threadevent.c (create_thread_event_object): Use
3405         copy-initialization.
3406
3407 2018-08-24  Pedro Alves  <palves@redhat.com>
3408             Simon Marchi  <simon.marchi@ericsson.com>
3409
3410         PR gdb/23379
3411         * python/py-continueevent.c: Include "gdbthread.h".
3412         (create_continue_event_object): Add intro comment.  Add 'ptid'
3413         parameter.  Use it to find thread to pass to
3414         create_thread_event_object.
3415         (emit_continue_event): Pass PTID down to
3416         create_continue_event_object.
3417         * python/py-event.h (py_get_event_thread): Declare.
3418         (create_thread_event_object): Remove default from 'thread'
3419         parameter.
3420         * python/py-stopevent.c (create_stop_event_object): Use
3421         py_get_event_thread.
3422         * python/py-threadevent.c (get_event_thread): Rename to ...
3423         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3424         and use it to find the thread.
3425         (create_thread_event_object): Assert that THREAD isn't null.
3426         Don't find the event thread here.
3427
3428 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3429
3430         * block.h (blockrange, blockranges): New struct declarations.
3431         (struct block): Add new field named `ranges'.
3432         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3433         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3434         macros for accessing ranges in struct block.
3435         (make_blockranges): New declaration.
3436         block.c (make_blockranges): New function.
3437         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3438         for block.
3439         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3440         * blockframe.c (cache_pc_function_block): New static global.
3441         (clear_pc_function_cache): Clear cache_pc_function_block.
3442         (find_pc_partial_function): Move comment to symtab.h.  Add
3443         support for non-contiguous blocks.
3444         * cli/cli-cmds.c (block.h): Include.
3445         (print_disassembly): Handle printing of non-contiguous blocks.
3446         (disassemble_current_function): Likewise.
3447         (disassemble_command): Likewise.
3448
3449         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3450         BLOCK_START.
3451         * blockframe.c (get_pc_function_start): Likewise.
3452         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3453         (gcc_symbol_address): Likewise.
3454         * compile/compile-object-run.c (compile_object_run): Likewise.
3455         * compile/compile.c (get_expr_block_and_pc): Likewise.
3456         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3457         (func_addr_to_tail_call_list): Likewise.
3458         * findvar.c (default_read_var_value): Likewise.
3459         * inline-frame.c (inline_frame_this_id): Likewise.
3460         (skip-inline_frames): Likewise.
3461         * infcmd.c (until_next_command): Likewise.
3462         * linespec.c (convert_linespec_to_sals): Likewise.
3463         * parse.c (parse_exp_in_context_1): Likewise.
3464         * printcmd.c (build_address_symbolic): likewise.
3465         (info_address_command): Likewise.
3466         symtab.c (find_function_start_sal): Likewise.
3467         (skip_prologue_sal): Likewise.
3468         (find_function_alias_target): Likewise.
3469         (find_gnu_ifunc): Likewise.
3470         * stack.c (find_frame_funname): Likewise.
3471         * symtab.c (fixup_symbol_section): Likewise.
3472         (find_function_start_sal): Likewise.
3473         (skip_prologue_sal): Likewsie.
3474         (find_function_alias_target): Likewise.
3475         (find_gnu_ifunc): Likewise.
3476         * tracepoint.c (info_scope_command): Likewise.
3477         * value.c (value_fn_field): Likewise.
3478
3479         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3480         in place of find_pc_partial_function.
3481         * blockframe.c (find_function_entry_range_from_pc): New function.
3482         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3483         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3484         for each range in a block.
3485
3486
3487 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3488
3489         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3490         incrementation.
3491
3492 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3493
3494         * solib-svr4.c (read_program_headers_from_bfd): Return
3495         gdb::optional<gdb::byte_vector>.
3496         (svr4_exec_displacement): Adjust.
3497
3498 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3499
3500         * solib-svr4.c (read_program_header): Return
3501         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3502         (find_program_interpreter): Return
3503         gdb::optional<gdb::byte_vector>.
3504         (scan_dyntag_auxv): Adjust.
3505         (enable_break): Adjust.
3506         (svr4_exec_displacement): Adjust.
3507
3508 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3509
3510         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3511         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3512
3513 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3514
3515         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3516         string_vprintf.
3517         * guile/scm-utils.c (gdbscm_printf): Likewise.
3518         * serial.c (serial_printf): Likewise.
3519         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3520
3521 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3522
3523         * stack.c (print_frame): Print frame architecture when printing on
3524         an MI output.
3525         * NEWS: Mention new "arch" attribute in frame output.
3526
3527 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3528
3529         * arch/aarch64.h (aarch64_regnum): Update comment.
3530
3531 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3532
3533         * NEWS: Add SVE to 8.2 section.
3534
3535 2018-08-21  Pedro Alves  <palves@redhat.com>
3536
3537         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3538         out from gdbscm_parse_function_args.
3539         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3540         gdbscm_parse_function_args_1.
3541
3542 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3543
3544         PR gdb/17816
3545         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3546         operator.
3547
3548 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3549
3550         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3551
3552 2018-08-19  Michael Spang  <spang@google.com>
3553
3554         PR gdb/11786
3555         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3556         for PT_TLS segments.
3557
3558 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3559
3560         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3561         dwarf_variable_value.
3562         * dwarf2-frame.c (class dwarf_expr_executor):
3563         Add override for dwarf_variable_value.
3564         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3565         (class symbol_needs_eval_context): Likewise.
3566         (indirect_synthetic_pointer): Add forward declaration.
3567         (sect_variable_value): New function.
3568         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3569         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3570         for DW_OP_GNU_variable_value.
3571
3572 2018-08-16  Tom Tromey  <tom@tromey.com>
3573
3574         * top.c (read_command_file): Update.
3575         (command_line_input): Remove "repeat" argument.
3576         * ada-lang.c (get_selections): Update.
3577         * linespec.c (decode_line_2): Update.
3578         * defs.h (command_line_input): Remove argument.
3579         * cli/cli-script.c (read_next_line): Update.
3580         * python/py-gdb-readline.c: Update.
3581
3582 2018-08-17  Tom Tromey  <tom@tromey.com>
3583
3584         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3585         command_line_input.
3586
3587 2018-08-15  Tom Tromey  <tom@tromey.com>
3588
3589         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3590
3591 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3592
3593         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3594         If used, use find_pc_partial_function to find address range
3595         to disassemble.
3596         * mi/mi-main.c (mi_cmd_list_features): Report
3597         "data-disassemble-a-option" feature.
3598         * NEWS: Mention new -data-disassemble option -a.
3599
3600 2018-08-13  Tom Tromey  <tom@tromey.com>
3601
3602         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3603
3604 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3605
3606         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3607         (aarch64_linux_collect_sve_regset): Likewise.
3608         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3609         * regcache.h (regcache_map_entry_size): New function.
3610
3611 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3612
3613         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3614         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3615         (SVE_HEADER_VL_LENGTH): Likewise.
3616         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3617         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3618         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3619         (SVE_HEADER_SIZE_OFFSET): Likewise.
3620         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3621         (SVE_HEADER_VL_OFFSET): Likewise.
3622         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3623         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3624         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3625         (SVE_HEADER_SIZE): Likewise.
3626         (aarch64_linux_core_read_vq): Add function.
3627         (aarch64_linux_core_read_description): Check for SVE section.
3628
3629 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3630
3631         * aarch64-fbsd-tdep.c
3632         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3633         collect_size.
3634         * aarch64-linux-tdep.c
3635         (aarch64_linux_iterate_over_regset_sections): Likewise.
3636         * alpha-linux-tdep.c
3637         (alpha_linux_iterate_over_regset_sections):
3638         * alpha-nbsd-tdep.c
3639         (alphanbsd_iterate_over_regset_sections): Likewise.
3640         * amd64-fbsd-tdep.c
3641         (amd64fbsd_iterate_over_regset_sections): Likewise.
3642         * amd64-linux-tdep.c
3643         (amd64_linux_iterate_over_regset_sections): Likewise.
3644         * arm-bsd-tdep.c
3645         (armbsd_iterate_over_regset_sections): Likewise.
3646         * arm-fbsd-tdep.c
3647         (arm_fbsd_iterate_over_regset_sections): Likewise.
3648         * arm-linux-tdep.c
3649         (arm_linux_iterate_over_regset_sections): Likewise.
3650         * corelow.c (get_core_registers_cb): Likewise.
3651         (core_target::fetch_registers): Likewise.
3652         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3653         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3654         * gdbarch.h (void): Regenerate.
3655         * gdbarch.sh: Add supply_size and collect_size.
3656         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3657         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3658         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3659         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3660         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3661         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3662         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3663         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3664         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3665         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3666         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3667         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3668         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3669         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3670         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3671         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3672         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3673         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3674         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3675         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3676         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3677         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3678         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3679         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3680         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3681         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3682         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3683         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3684         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3685         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3686
3687 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3688
3689         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3690         with string_printf.
3691
3692 2018-08-10  Keith Seitz  <keiths@redhat.com>
3693
3694         * compile/compile-c-support.c (add_code_header, add_code_footer):
3695         Move into policy class.
3696         (c_push_user_expression, pop_user_expression_nop)
3697         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3698         (compile_program): New host class.
3699         (c_compile_program): New typedef.
3700         (c_compute_porgram): Use c_compile_program.
3701
3702 2018-08-10  Keith Seitz  <keiths@redhat.com>
3703
3704         * compile/compile-internal.h (compile_instance::~compile_instance):
3705         Remove calls to htab_delete.
3706         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3707         * compile.c (compile_instance::compile_instance): Initialize
3708         htab unique pointers.
3709         (compile_instance::get_cached_type, compile_instance::insert_type)
3710         (compile_instance::error_symbol_once): Update for unique_ptr.
3711
3712 2018-08-10  Keith Seitz  <keiths@redhat.com>
3713
3714         * compile/compile-c-symbols.c (struct symbol_error)
3715         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3716         (compile_instance::insert_symbol_error)
3717         (compile_instance::error_symbol_once): Move to ...
3718         * compile/compile.c: ... here.
3719
3720 2018-08-10  Keith Seitz  <keiths@redhat.com>
3721
3722         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3723         instead of `new_compile_instance'.
3724         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3725         Update description.
3726         If the symbol error map is not initialized, create it.
3727         (generate_c_for_for_one_symbol): Do not check/initialize
3728         the symbol error map.
3729         * compile/compile-c-types.c (compile_c_instance): Make a class.
3730         Update all callers.
3731         (compile_instance::compile_instance): Initialize the type cache.
3732         (get_cached_type): New function.
3733         (insert_type): Update description.
3734         (compile_c_instance::m_default_cflags): Define.
3735         (convert_type): Update description.  Use get_cached_type.
3736         (delete_instance): Moved to destructor.
3737         (new_compile_instance): Moved to constructor.
3738         * compile/compile-c.h (compile_c_instance): Make class inheriting
3739         from compile_instance.
3740         <base>: Remove field.
3741         <type_map, symbol_err_map>: Move to base class.
3742         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3743         * compile/compile-internal.h (compile_instance): Make class.
3744         <type_map_t, symbol_err_map_t>: Define.
3745         <fe>: Rename to `m_gcc_fe'.
3746         <scope, block, gcc_target_options>: Add `m_' prefix.
3747         <m_type_map, m_symbol_err_map>: New fields, moved from
3748         compile_c_instance.
3749         <destroy>: Remove.
3750         (convert_type, new_compile_instance): Remove.
3751         * compile/compile.c (cleanup_compile_instance): Remove.
3752         (compile_to_object): Use unique_ptr to eliminate cleanups.
3753         (compile_instance::set_print_callback, compile_instance::version)
3754         (compile_instance::set_verbose)
3755         (compile_instance::set_driver_filename)
3756         (compile_instance::set_triplet_regexp)
3757         (compile_instance::set_arguments)
3758         (compile_instance::set_source_file)
3759         (compile_instance::compile): Define.
3760
3761 2018-08-10  Keith Seitz  <keiths@redhat.com>
3762
3763         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3764         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3765         gcc-c-fe.def to define C plugin.
3766         (delete_instance): Delete `c_plugin'.
3767         (new_compile_instance): Initialize `c_plugin'.
3768         * compile/compile-c.h: Include gcc_c_plugin.h.
3769         (struct compile_c_instance) <c_plugin>: New member.
3770         * gcc-c-plugin.h: New file.
3771         Update all callers with API change.
3772
3773 2018-08-10  Keith Seitz  <keiths@redhat.com>
3774
3775         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3776         (HFILES_NO_SRCDIR): ... to here.
3777         Add compile-internal.h and compile-c.h.
3778         * compile/compile-c-support.c: Include compile-c.h.
3779         * compile/compile-c-symbols.c: Include compile-c.h.
3780         (generate_c_for_variable_locations): Update comment.
3781         * compile/compile-c-types.c: Include compile-c.h.
3782         * compile/compile-c.h: New file -- moved C language declarations
3783         from other files here.
3784         * compile/compile-internal.h: Do not include hashtab.h or
3785         common/enum-flags.h.
3786         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3787         (gcc_convert_symbol, gcc_symbol_address)
3788         (generate_c_for_variable_locations, c_get_mode_for_size)
3789         (c_get_range_decl_name): Definitions moved to compile-c.h.
3790         * compile/compile-loc2c.c: Include compile-c.h.
3791
3792 2018-08-10  Keith Seitz  <keiths@redhat.com>
3793
3794         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3795         (c_symbol_substitution_name): ... this.
3796         Update all callers.
3797
3798 2018-08-10  Keith Seitz  <keiths@redhat.com>
3799
3800         * compile/compile-c-support.c (c_compute_program): Use
3801         unique_xmalloc_ptr to eliminate cleanup.
3802         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3803         Return a unique_xmalloc_ptr and eliminate cleanup.
3804         * compile/compile-internal.h (generate_c_for_variable_locations):
3805         Return unique_xmalloc_ptr and update description.
3806
3807 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3808
3809         * corelow.c (core_target::get_core_register_section): Rename
3810         min_size to section_min_size.
3811
3812 2018-08-09  Jim Wilson  <jimw@sifive.com>
3813
3814         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3815         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3816         * NEWS: Mention new GNU/Linux RISC-V target.
3817         * configure.host: Add riscv*-*-linux*.
3818         * configure.nat: Add riscv*.
3819         * configure.tgt: Add riscv*-*-linux*.
3820         * riscv-linux-nat.c: New file.
3821         * riscv-linux-tdep.c: New file.
3822
3823 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3824
3825         * infrun.c (resume): Make static, add forward declaration.
3826         (proceed): Update header comment.
3827         * infrun.h (resume): Delete declaration.
3828
3829 2018-08-09  Tom Tromey  <tom@tromey.com>
3830
3831         * riscv-tdep.h: Minor formatting fixes.
3832
3833 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3834
3835         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3836         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3837         (test_mkdir_recursive): Likewise.
3838         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3839
3840 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3841
3842         * valarith.c (value_subscripted_rvalue): If an array is not in
3843         memory, and we don't know the upper bound, then we can't know that
3844         the requested element exists or not.
3845
3846 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3847
3848         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3849         (target_options_to_string): Add comment.
3850
3851 2018-08-08  Tom Tromey  <tom@tromey.com>
3852
3853         * unittests/scoped_mmap-selftests.c: Check result of "write".
3854
3855 2018-08-08  Jim Wilson  <jimw@sifive.com>
3856
3857         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3858         (decode_register_index_short): New.
3859         (decode_j_type_insn, decode_cj_type_insn): New.
3860         (decode_b_type_insn, decode_cb_type_insn): New.
3861         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3862         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3863         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3864         is_c_sw_insn instead of is_sw_insn.
3865         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3866         (riscv_software_single_step): New.
3867         * riscv-tdep.h (riscv_software_single_step): Declare.
3868
3869         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3870         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3871
3872 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3873
3874         PR gdb/18050:
3875         * target.c (dispose_inferior): Don't dispose of inferiors that are
3876         already killed.
3877
3878 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3879
3880         * remote.c (remote_target::download_tracepoint): Change char* to
3881         const char*.
3882
3883 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3884
3885         * target.h (target_options_to_string): Return an std::string.
3886         * target.c (str_comma_list_concat_elem): Return void, use
3887         std::string.
3888         (do_option): Likewise.
3889         (target_options_to_string): Return an std::string.
3890         * linux-nat.c (linux_nat_target::wait): Adjust.
3891         * target-debug.h (target_debug_print_options): Adjust.
3892
3893 2018-08-07  Tom Tromey  <tom@tromey.com>
3894
3895         * Makefile.in (CPPFLAGS): New variable.
3896         (INTERNAL_CPPFLAGS): Use it.
3897
3898 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3899
3900         * NEWS: Mention the index cache.
3901
3902 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3903
3904         * common/pathstuff.h (get_standard_cache_dir): New.
3905         * common/pathstuff.c (get_standard_cache_dir): New.
3906         * build-id.h (build_id_to_string): New.
3907         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3908         DEBUG_STR_SUFFIX): Move to here.
3909         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3910         DEBUG_STR_SUFFIX): Move from there.
3911         (write_psymtabs_to_index): Make non-static, add basename
3912         parameter.  Write to temporary files, rename when done.
3913         (save_gdb_index_command): Adjust call to
3914         write_psymtabs_to_index.
3915         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3916         field.
3917         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3918         (get_gdb_index_contents_from_cache): New.
3919         (get_gdb_index_contents_from_cache_dwz): New.
3920         (dwarf2_initialize_objfile): Read index from cache.
3921         (dwarf2_build_psymtabs): Save to index.
3922         * dwarf-index-cache.h: New file.
3923         * dwarf-index-cache.c: New file.
3924         * dwarf-index-write.h: New file.
3925
3926 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3927
3928         * gnulib/aclocal.m4: Re-generate.
3929         * gnulib/config.in: Re-generate.
3930         * gnulib/configure: Re-generate.
3931         * gnulib/import/Makefile.am: Re-generate.
3932         * gnulib/import/Makefile.in: Re-generate.
3933         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3934         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3935         * gnulib/import/m4/mkdir.m4: New file.
3936         * gnulib/import/mkdir.c: New file.
3937         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3938         module.
3939
3940 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3941
3942         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3943         * common/scoped_mmap.c: New file.
3944         * common/scoped_mmap.h (destroy): New method.
3945         (~scoped_mmap, reset): Use destroy.
3946         (scoped_mmap): New move constructor.
3947         (mmap_file): New declaration.
3948         * unittests/scoped_mmap-selftests.c (test_normal,
3949         test_invalid_filename, run_tests): New functions.
3950         (_initialize_scoped_mmap_selftests): Register selftest.
3951
3952 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3953
3954         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3955         (read_gdb_index_from_buffer): ... this.  Remove section
3956         parameter, add buffer parameter.
3957         (get_gdb_index_contents_ftype,
3958         get_gdb_index_contents_dwz_ftype): New typedefs.
3959         (dwarf2_read_gdb_index): Add callback parameters to get the
3960         index contents.
3961         (get_gdb_index_contents_from_section): New.
3962         (dwarf2_initialize_objfile): Update call to
3963         dwarf2_read_gdb_index.
3964
3965 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3966
3967         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3968         (gdb_open_cloexec): Likewise.
3969         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3970         (commandline_from_pid): Likewise.
3971         (linux_xfer_osdata_threads): Likewise.
3972         (linux_xfer_osdata_fds): Likewise.
3973         * ada-lang.c (is_package_name): Likewise.
3974         * auxv.c (procfs_xfer_auxv): Likewise.
3975         * breakpoint.c (print_one_breakpoint_location): Use
3976         uiout::field_fmt.
3977         (print_one_catch_solib): Use string_printf.
3978         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3979         (add_pe_forwarded_sym): Likewise.
3980         * dwarf2read.c (create_type_unit_group): Likewise.
3981         (build_error_marker_type): Likewise.
3982         * infcall.c (get_function_name): Likewise.
3983         * valprint.c (print_converted_chars_to_obstack): Likewise.
3984         * xtensa-tdep.c (xtensa_register_type): Likewise.
3985
3986 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3987
3988         * remote.c (remote_target::download_tracepoint): Fix format
3989         string errors.
3990
3991 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3992
3993         * tracefile.c: Include common/byte-vector.h.
3994         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3995         with trace_regblock_size if needed.  Update uses of buf.
3996
3997 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3998
3999         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4000         std::vector<unsigned char>.
4001         * tracepoint.c (collection_list::collection_list): Remove
4002         m_regs_mask initializer from initializer list.  Resize
4003         m_regs_mask using the largest remote register number.
4004         (collection_list::add_remote_register): Remove size check on
4005         m_regs_mask.  Use at to access element.
4006         (collection_list::stringify): Change type of temp_buf to
4007         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4008         stringify the register mask.  Use pack_hex_byte for the register
4009         mask.
4010
4011 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4012
4013         * tracepoint.h (class collection_list) <add_register>: Remove.
4014         <add_remote_register, add_ax_registers, add_local_register>:
4015         Declare.
4016         <add_memrange>: Add scope parameter.
4017         * tracepoint.c (encode_actions_1): Likewise.
4018         (collection_list::add_register): Rename to ...
4019         (collection_list::add_remote_register): ... this.  Update
4020         comment.
4021         (collection_list::add_ax_registers, add_local_register): New
4022         methods.
4023         (collection_list::add_memrange): Add scope parameter.  Call
4024         add_local_register instead of add_register.
4025         (finalize_tracepoint_aexpr): New function.
4026         (collection_list::collect_symbol): Update calls to add_memrange.
4027         Call add_local_register instead of add_register.  Call
4028         add_ax_registers.  Call finalize_tracepoint_aexpr.
4029         (encode_actions_1): Get remote regnos for $reg action.  Call
4030         add_remote_register, add_ax_registers, and add_local_register.
4031         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4032         (validate_actionline): Call finalize_tracepoint_aexpr.
4033
4034 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4035
4036         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4037         Replace array buf with gdb::char_vector buf, of size
4038         get_remote_packet_size ().  Replace references to buf and
4039         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4040         and xsnprintf with snprintf.  Raise errors if the buffer is too
4041         small.
4042
4043 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4044
4045         * remote.c (remote_target::download_tracepoint): Fix the has_more
4046         predicate in the QTDP action list iteration.
4047
4048 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4049
4050         * remote.c (remote_target::download_tracepoint): Fix indentation
4051         in for block.
4052
4053 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4054
4055         * proc-api.c (_initialize_proc_api): Remove c, unused.
4056         * procfs.c (procfs_init_inferior): Remove signals, unused.
4057         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4058         unused.
4059
4060 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4061             Andrew Burgess  <andrew.burgess@embecosm.com>
4062
4063         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4064         'W_STOPCODE (0)' as this could be ambiguous.
4065
4066 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4067
4068         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4069         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4070         "ai_socktype").
4071
4072 2018-08-02  Tom Tromey  <tom@tromey.com>
4073
4074         PR symtab/16842.
4075         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4076         symbols.
4077         (process_structure_scope): Likewise.
4078
4079 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4080
4081         PR gdb/22629:
4082         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4083         kill inferior.
4084
4085 2018-08-02  Tom Tromey  <tom@tromey.com>
4086
4087         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4088         (darwin_suspend_inferior, darwin_resume_inferior)
4089         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4090         (darwin_check_new_threads): Check result of get_darwin_inferior.
4091
4092 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4093
4094         GDB 8.1.1 released.
4095
4096 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4097
4098         * varobj.c (varobj_get_path_expr_parent): Report an error if
4099         parent is a dynamic varobj.
4100
4101 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4102
4103         * gnulib/aclocal.m4: Re-generate.
4104         * gnulib/config.in: Re-generate.
4105         * gnulib/configure: Re-generate.
4106         * gnulib/import/Makefile.in: Re-generate.
4107         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4108         * gnulib/import/m4/onceonly.m4: Re-generate.
4109
4110 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4111
4112         * target-descriptions.c (struct xml_test_tdesc): New.
4113         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4114         (record_xml_tdesc): Update.
4115         (maintenance_check_xml_descriptions): Update.
4116         * target-descriptions.h (record_xml_tdesc): Update comment.
4117
4118 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4119
4120         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4121         checking array bounds are defined.
4122
4123 2018-07-30  Tom Tromey  <tom@tromey.com>
4124
4125         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4126         irreflexivity violation.
4127
4128 2018-07-30  Tom Tromey  <tom@tromey.com>
4129
4130         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4131         * value.c (unpack_long): Remove lint code.
4132         * valops.c (value_ind): Remove lint code.
4133         * valarith.c (value_x_binop, value_x_unop, value_equal)
4134         (value_pos): Remove lint code.
4135
4136 2018-07-28  Tom de Vries  <tdevries@suse.de>
4137
4138         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4139         with undefined upper bound as <optimized out>.
4140
4141 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4142
4143         * gcore.in: Rename variable "name" to "prefix".  Expand
4144         "usage" text.
4145
4146 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4147
4148         * windows-nat.c (windows_nat_target::create_inferior): Update to
4149         call close() in global namespace.
4150
4151 2018-07-26  Tom Tromey  <tom@tromey.com>
4152
4153         * dwarf-index-write.c (add_address_entry): Don't add objfile
4154         offsets.
4155         * dbxread.c (find_stab_function): Rename from
4156         find_stab_function_addr.  Return a bound_minimal_symbol.
4157         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4158         Don't add objfile offsets.
4159         (end_psymtab): Use raw_text_low, raw_text_high,
4160         MSYMBOL_VALUE_RAW_ADDRESS.
4161         (read_ofile_symtab): Update.
4162         (process_one_symbol): Update.
4163         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4164         offsets.
4165         (dw2_relocate): Remove.
4166         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4167         searching addrmap.
4168         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4169         Update.
4170         (process_psymtab_comp_unit_reader, add_partial_symbol)
4171         (add_partial_subprogram, dwarf2_ranges_read): Update.
4172         (load_partial_dies): Update.
4173         (add_address_entry): Don't add objfile offsets.
4174         (dwarf2_build_include_psymtabs): Update.
4175         (create_addrmap_from_aranges): Don't add objfile offsets.
4176         (dw2_find_pc_sect_compunit_symtab): Update.
4177         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4178         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4179         Update.
4180         (parse_partial_symbols): Don't add objfile offsets.  Use
4181         raw_text_low, raw_text_high.  Update.
4182         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4183         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4184         or call 'relocate' quick function.  Clear psymbol_map.
4185         * psympriv.h (struct partial_symbol) <address>: Add section
4186         offset.
4187         <set_unrelocated_address>: Rename from set_address.
4188         <raw_text_low, raw_text_high>: New methods.
4189         <text_low, text_high>: Add objfile parameter.
4190         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4191         set_unrelocated_address.
4192         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4193         (find_pc_psymbol): Update.
4194         (fixup_psymbol_section, relocate_psymtabs): Remove.
4195         (dump_psymtab, psym_functions): Update.
4196         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4197         parameter.
4198         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4199         (start_psymtab_common): Update.
4200         * symfile-debug.c (debug_qf_relocate): Remove.
4201         (debug_sym_quick_functions): Update.
4202         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4203         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4204         Update.
4205
4206 2018-07-26  Tom Tromey  <tromey@redhat.com>
4207
4208         * dbxread.c (end_psymtab): Use text_high_valid and
4209         text_low_valid.
4210         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4211         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4212         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4213         Update comment.
4214         <text_low_valid, text_high_valid>: New fields.
4215         <set_text_low, set_text_high>: Update.
4216         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4217
4218 2018-07-26  Tom Tromey  <tom@tromey.com>
4219
4220         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4221         Update.
4222         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4223         textlow and texthigh fields.
4224         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4225         Update.
4226         * mdebugread.c (parse_lines, parse_partial_symbols)
4227         (psymtab_to_symtab_1): Update.
4228         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4229         Rename fields.  Update comment.  Now private.
4230         <text_low, text_high, set_text_low, set_text_high>: New methods.
4231         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4232         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4233         (start_psymtab_common, maintenance_info_psymtabs)
4234         (maintenance_check_psymtabs): Update.
4235         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4236         texthigh fields.
4237         (scan_xcoff_symtab): Update.
4238
4239 2018-07-26  Tom Tromey  <tromey@redhat.com>
4240
4241         * psympriv.h (struct partial_symbol) <unrelocated_address,
4242         address, set_address>: New methods.
4243         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4244         (fixup_psymbol_section, relocate_psymtabs): Update.
4245         (print_partial_symbols): Add 'objfile' parameter.  Update.
4246         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4247         Update.
4248
4249 2018-07-26  Tom Tromey  <tom@tromey.com>
4250
4251         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4252         (debug_names::write_psymbols): Update.
4253         * psympriv.h (struct partial_symbol): Derive from
4254         general_symbol_info.
4255         <obj_section>: New method.
4256         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4257         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4258         (find_pc_sect_psymbol, fixup_psymbol_section)
4259         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4260         (print_partial_symbols, recursively_search_psymtabs)
4261         (compare_psymbols, psymbol_hash, psymbol_compare)
4262         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4263         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4264
4265 2018-07-26  Tom Tromey  <tromey@redhat.com>
4266
4267         * dbxread.c (end_psymtab): Remove dead code.
4268
4269 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4270
4271         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4272         DWARF unwinders are disabled.
4273         * dwarf2-frame.c: Add dwarf2read.h include.
4274         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4275         disabled.
4276         (dwarf2_frame_unwinders_enabled_p): Define.
4277         (show_dwarf_unwinders_enabled_p): New function.
4278         (_initialize_dwarf2_frame): Register switch to control DWARF
4279         unwinder use.
4280         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4281         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4282         (show_dwarf_cmdlist): Remove static keyword.
4283         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4284         (show_dwarf_cmdlist): Declare.
4285         * NEWS: Document new feature.
4286
4287 2018-07-26  Tom de Vries  <tdevries@suse.de>
4288
4289         PR breakpoints/23366
4290         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4291
4292 2018-07-26  Tom de Vries  <tdevries@suse.de>
4293
4294         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4295         DW_AT_count can't be translated to a dynamic prop.
4296
4297 2018-07-25  Tom de Vries  <tdevries@suse.de>
4298
4299         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4300         try/catch.
4301
4302 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4303
4304         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4305
4306 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4307
4308         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4309
4310 2018-07-24  Keith Seitz  <keiths@redhat.comt
4311
4312         PR symtab/23010
4313         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4314         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4315         instead of add_symbol_to_list.
4316         (read_file_scope): Call prepare_one_comp_unit before reading
4317         any other DIEs.
4318
4319 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4320
4321         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4322
4323 2018-07-24  Tom Tromey  <tom@tromey.com>
4324
4325         * utils.c (malloc, realloc, free): Don't declare.
4326         * configure, config.in: Rebuild.
4327         * configure.ac: Don't check for declarations of free, malloc, or
4328         realloc.
4329
4330 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4331
4332         * aarch64-linux-nat.c
4333         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4334         variable.
4335         * arm-linux-nat.c (fetch_regs): Likewise.
4336         (store_regs): Likewise.
4337         (fetch_vfp_regs): Likewise.
4338         (store_vfp_regs): Likewise.
4339         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4340         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4341         (arm_linux_nat_target::insert_watchpoint): Likewise.
4342         (arm_linux_nat_target::remove_watchpoint): Likewise.
4343         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4344         Likewise.
4345         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4346         Likewise.
4347         * ppc-linux-nat.c (fetch_register): Likewise.
4348         (fetch_all_gp_regs): Likewise.
4349         (fetch_ppc_registers): Likewise.
4350         (store_all_gp_regs): Likewise.
4351         (store_ppc_registers): Likewise.
4352         (hwdebug_insert_point): Likewise.
4353         (can_use_watchpoint_cond_accel): Likewise.
4354         * remote-sim.c (gdb_os_write_stdout): Likewise.
4355
4356 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4357             Tom Tromey  <tom@tromey.com>
4358
4359         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4360         test for it.
4361         * configure: Rebuild.
4362
4363 2018-07-22  Tom Tromey  <tom@tromey.com>
4364
4365         * regformats/regdat.sh: Define xmltarget_${name} inside
4366         #ifndef IN_PROCESS_AGENT.
4367
4368 2018-07-22  Tom Tromey  <tom@tromey.com>
4369
4370         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4371
4372 2018-07-22  Tom Tromey  <tom@tromey.com>
4373
4374         * symfile.c (reread_symbols): Notify iter, not objfile.
4375
4376 2018-07-22  Tom Tromey  <tom@tromey.com>
4377
4378         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4379         Use arch_ops.
4380         (ravenscar_thread_target::prepare_to_store): Likewise.
4381
4382 2018-07-22  Tom Tromey  <tom@tromey.com>
4383
4384         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4385         unused variable.  Call value_fetch_lazy when needed.
4386         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4387         Remove unused variable.  Call value_fetch_lazy when needed.
4388
4389 2018-07-22  Tom Tromey  <tom@tromey.com>
4390
4391         * m32c-tdep.c (mark_dma): Return void.
4392         (make_regs): Remove unused declarations.
4393
4394 2018-07-22  Tom Tromey  <tom@tromey.com>
4395
4396         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4397         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4398         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4399         bkscm_get_valid_block_smob_arg_unsafe for effect.
4400
4401 2018-07-22  Tom Tromey  <tom@tromey.com>
4402
4403         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4404         value_type.
4405
4406 2018-07-22  Tom Tromey  <tom@tromey.com>
4407
4408         * windows-nat.c (saved_context): Conditionally define.
4409         * remote.c (remote_target::remote_btrace_maybe_reopen):
4410         Conditionally declare "warned".
4411         * inflow.c (sigquit_ours): Conditionally define.
4412         (new_tty): Move "tty" declaration inside #if.
4413         * guile/guile.c (guile_datadir): Conditionally define.
4414         * charset.c (set_be_le_names): Move some declarations inside #if.
4415         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4416         #if.
4417         (parse_xml_btrace_conf): Likewise.
4418
4419 2018-07-22  Tom Tromey  <tom@tromey.com>
4420
4421         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4422
4423 2018-07-22  Tom Tromey  <tom@tromey.com>
4424
4425         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4426         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4427         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4428         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4429         * stack.c (frame_apply_level_command): Remove unused variable.
4430         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4431         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4432         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4433         unused variable.
4434         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4435         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4436         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4437         variable.
4438         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4439         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4440         variable.
4441         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4442         Remove unused variable.
4443         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4444         variable.
4445         * common/tdesc.c (print_xml_feature::visit): Remove unused
4446         variable.
4447         * compile/compile-object-load.c (store_regs): Remove unused
4448         variables.
4449         * complaints.c (clear_complaints): Remove unused variable.
4450         * corelow.c (core_target_open): Remove unused variable.
4451         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4452         variable.
4453         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4454         variable.
4455         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4456         variable.
4457         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4458         variable.
4459         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4460         variable.
4461         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4462         variable.
4463         * ia64-tdep.c (examine_prologue): Remove unused variable.
4464         * infcall.c (run_inferior_call): Remove unused variable.
4465         * inferior.c (exit_inferior): Remove unused variable.
4466         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4467         * linespec.c (decode_line_2): Remove unused variable.
4468         * linux-nat.c (super_close): Remove.
4469         * linux-tdep.c (linux_info_proc): Remove unused variable.
4470         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4471         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4472         Remove unused variable.
4473         * parse.c (find_minsym_type_and_address): Remove unused variable.
4474         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4475         variable.
4476         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4477         variable.
4478         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4479         variables.
4480         * record-btrace.c (record_btrace_target::store_registers): Remove
4481         unused variable.
4482         (cmd_show_record_btrace_cpu): Remove unused variable.
4483         * riscv-tdep.c (riscv_register_reggroup_p)
4484         (riscv_push_dummy_call, riscv_return_value): Remove unused
4485         variable.
4486         * rust-exp.y (literal): Remove unused variable.
4487         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4488         unused variable.
4489         <STRUCTOP_ANONYMOUS>: Likewise.
4490         * s390-linux-tdep.c (s390_linux_init_abi_31)
4491         (s390_linux_init_abi_64): Remove unused variable.
4492         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4493         (file_select_thread, net_windows_open, _initialize_ser_windows):
4494         Remove unused variables.
4495         * symtab.c (find_pc_sect_line): Remove unused variable.
4496         * target-memory.c (compute_garbled_blocks): Remove unused
4497         variable.
4498         (target_write_memory_blocks): Remove unused variable.
4499         * target.c (target_stack::unpush): Remove unused variables.
4500         * tracepoint.c (start_tracing, all_tracepoint_actions)
4501         (merge_uploaded_trace_state_variables)
4502         (print_one_static_tracepoint_marker): Remove unused variable.
4503         * unittests/basic_string_view/element_access/char/1.cc (test01):
4504         Remove unused variable.
4505         * windows-nat.c (windows_continue, windows_add_all_dlls)
4506         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4507         Remove unused variables.
4508
4509 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4510
4511         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4512         attr_profile in HAVE_ELF.
4513         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4514         HAVE_ELF.
4515
4516 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4517
4518         * frame.c (frame_register_unwind): Change parameter name.
4519         (frame_unwind_register): Likewise.
4520         (frame_unwind_register_value): Likewise.
4521         (frame_unwind_register_signed): Likewise.
4522         (frame_unwind_register_unsigned): Likewise.
4523         * frame.h (frame_register_unwind): Likewise.
4524         (frame_unwind_register): Likewise.
4525         (frame_unwind_register_value): Likewise.
4526         (frame_unwind_register_signed): Likewise.
4527         (frame_unwind_register_unsigned): Likewise.
4528         (frame_unwind_arch): Likewise.
4529
4530 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4531
4532         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4533         ISA maintenance.
4534
4535 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4536
4537         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4538         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4539         hand.
4540
4541 2018-07-20  Keith Seitz  <keiths@redhat.com>
4542
4543         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4544         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4545         m_compunit_symtab, m_language>: Add "m_" prefix.
4546         Update all uses.
4547         * buildsym.c: Update all uses.
4548
4549 2018-07-20  Tom Tromey  <tom@tromey.com>
4550
4551         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4552         * buildsym.h (record_line_ftype): Remove typedef.
4553
4554 2018-07-20  Tom Tromey  <tom@tromey.com>
4555
4556         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4557         (end_expandable_symtab): Likewise.
4558         (end_symtab_get_static_block): Likewise.
4559         (end_symtab_from_static_block): Likewise.
4560         * buildsym-legacy.c (augment_type_symtab): Remove.
4561         (end_expandable_symtab): Remove.
4562         (end_symtab_get_static_block): Remove.
4563         (end_symtab_from_static_block): Remove.
4564
4565 2018-07-20  Tom Tromey  <tom@tromey.com>
4566
4567         * dwarf2read.c: Include buildsym.h.
4568         (struct dwarf2_cu) <builder>: New method.
4569         (fixup_go_packaging): Update.
4570         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4571         use scoped_free_pendings.
4572         (using_directives): Add "cu" parameter, remove "language".
4573         (read_import_statement, setup_type_unit_groups, )
4574         (read_func_scope, read_lexical_block_scope)
4575         (dwarf2_record_block_ranges, read_namespace): Update.
4576         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4577         (lnp_state_machine::handle_end_sequence): Update.
4578         (class lnp_state_machine) <m_cu>: New member.
4579         <m_record_line_callback>: Remove.
4580         <m_currently_recording_lines>: New member.
4581         (lnp_state_machine::handle_set_file): Update.
4582         (noop_record_line): Remove.
4583         (dwarf_record_line_p): Add cu parameter.
4584         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4585         (lnp_state_machine::record_line)
4586         (lnp_state_machine::lnp_state_machine)
4587         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4588         (dwarf_decode_lines): Update.
4589         (dwarf2_start_subfile): Add cu parameter.
4590         (dwarf2_start_symtab, new_symbol): Update.
4591         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4592         Remove dwarf2_per_objfile parameter.
4593         (dwarf_decode_macros): Update.
4594
4595 2018-07-20  Tom Tromey  <tom@tromey.com>
4596
4597         * stabsread.c (define_symbol): Update.
4598         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4599         * dwarf2read.c (new_symbol): Update.
4600         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4601         * cp-namespace.c: Include buildsym.h.
4602         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4603         * buildsym-legacy.c (get_buildsym_compunit): New function.
4604
4605 2018-07-20  Tom Tromey  <tom@tromey.com>
4606
4607         * xcoffread.c: Include buildsym-legacy.h.
4608         * windows-nat.c: Include buildsym-legacy.h.
4609         * stabsread.c: Include buildsym-legacy.h.
4610         * mdebugread.c: Include buildsym-legacy.h.
4611         * buildsym-legacy.h: New file.
4612         * buildsym-legacy.c: New file, from buildsym.c.
4613         * go32-nat.c: Include buildsym-legacy.h.
4614         * dwarf2read.c: Include buildsym-legacy.h.
4615         * dbxread.c: Include buildsym-legacy.h.
4616         * cp-namespace.c: Include buildsym-legacy.h.
4617         * coffread.c: Include buildsym-legacy.h.
4618         * buildsym.h: Move some contents to buildsym-legacy.h.
4619         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4620         buildsym-legacy.c.
4621         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4622
4623 2018-07-20  Tom Tromey  <tom@tromey.com>
4624
4625         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4626         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4627         (buildsym_compunit::buildsym_compunit)
4628         (buildsym_compunit::~buildsym_compunit)
4629         (buildsym_compunit::get_macro_table): Define.
4630
4631 2018-07-20  Tom Tromey  <tom@tromey.com>
4632
4633         * buildsym.c (reset_symtab_globals): Remove.
4634         (buildsym_compunit::end_symtab_from_static_block): Update.
4635         (buildsym_compunit::augment_type_symtab): Update.
4636         (end_symtab_from_static_block): Call free_buildsym_compunit.
4637         (augment_type_symtab, end_symtab, end_expandable_symtab):
4638         Likewise.
4639
4640 2018-07-20  Tom Tromey  <tom@tromey.com>
4641
4642         * arch-utils.c: Do not include buildsym.h.
4643         * mipsread.c: Do not include buildsym.h.
4644         * machoread.c: Do not include buildsym.h.
4645         * elfread.c: Do not include buildsym.h.
4646
4647 2018-07-20  Tom Tromey  <tom@tromey.com>
4648
4649         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4650         initialization.
4651         (buildsym_compunit): Add new constructor.
4652         (struct buildsym_compunit) <get_last_source_file, finish_block,
4653         record_block_range, start_subfile, patch_subfile_names,
4654         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4655         set_last_source_start_addr, get_last_source_start_addr,
4656         get_local_using_directives, set_local_using_directives,
4657         get_global_using_directives, outermost_context_p,
4658         get_current_context_stack, get_context_stack_depth,
4659         get_current_subfile, get_local_symbols, get_file_symbols,
4660         get_global_symbols, record_debugformat, record_producer,
4661         push_context, pop_context, end_symtab_get_static_block,
4662         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4663         New public methods.
4664         <record_pending_block, finish_block_internal, make_blockvector,
4665         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4666         private methods.
4667         Update all users.
4668
4669 2018-05-22  Tom Tromey  <tom@tromey.com>
4670
4671         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4672         parameter.
4673         (finish_block_internal): Update.
4674
4675 2018-07-20  Tom Tromey  <tom@tromey.com>
4676
4677         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4678         parameter.
4679         (finish_block_internal): Update.
4680
4681 2018-07-20  Tom Tromey  <tom@tromey.com>
4682
4683         * buildsym.h (EXTERN): Don't define or undef.
4684         * buildsym.c (EXTERN): Don't define.
4685
4686 2018-07-20  Tom Tromey  <tom@tromey.com>
4687
4688         * buildsym.c: Remove TODO comment.
4689
4690 2018-07-20  Tom Tromey  <tom@tromey.com>
4691
4692         * coffread.c (coff_symtab_read): Update.
4693         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4694         (xcoff_new_init): Update.
4695         * mipsread.c (mipscoff_new_init): Update.
4696         * mdebugread.c (mdebug_build_psymtabs): Update.
4697         * elfread.c (elf_new_init): Update.
4698         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4699         Update.
4700         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4701         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4702         (stabsect_build_psymtabs): Update.
4703         * buildsym.h (buildsym_init): Don't declare.
4704         * buildsym.c: Update comment.
4705         (prepare_for_building): Remove.
4706         (start_symtab, restart_symtab): Update.
4707         (reset_symtab_globals): Update comment.
4708         (buildsym_init): Remove.
4709
4710 2018-07-20  Tom Tromey  <tom@tromey.com>
4711
4712         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4713         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4714         (read_enum_type, common_block_start, common_block_end)
4715         (cleanup_undefined_types_1, finish_global_stabs): Update.
4716         * mdebugread.c (psymtab_to_symtab_1): Update.
4717         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4718         (read_lexical_block_scope, new_symbol): Update.
4719         * dbxread.c (process_one_symbol): Update.
4720         * coffread.c (coff_symtab_read, process_coff_symbol)
4721         (coff_read_enum_type): Update.
4722         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4723         declare.
4724         (get_local_symbols, get_file_symbols, get_global_symbols): New
4725         functions.
4726         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4727         m_global_symbols.
4728         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4729         (~scoped_free_pendings): Update.
4730         (finish_block, prepare_for_building, reset_symtab_globals)
4731         (end_symtab_get_static_block, end_symtab_with_blockvector)
4732         (augment_type_symtab, push_context): Update.
4733         (get_local_symbols, get_file_symbols, get_global_symbols): New
4734         functions.
4735         (buildsym_init): Update.
4736
4737 2018-07-20  Tom Tromey  <tom@tromey.com>
4738
4739         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4740         (process_full_type_unit): Likewise.
4741         (dwarf2_start_symtab): Set list_in_scope.
4742
4743 2018-07-20  Tom Tromey  <tom@tromey.com>
4744
4745         * dwarf2read.c (process_psymtab_comp_unit_reader)
4746         (build_type_psymtabs_reader): Do not set list_in_scope.
4747
4748 2018-07-20  Tom Tromey  <tom@tromey.com>
4749
4750         * buildsym.c (free_pendings): Remove.
4751         (add_symbol_to_list, scoped_free_pendings)
4752         (finish_block_internal, buildsym_init): Update.
4753
4754 2018-07-20  Tom Tromey  <tom@tromey.com>
4755
4756         * xcoffread.c (read_xcoff_symtab): Update.
4757         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4758         Update.
4759         * dbxread.c (process_one_symbol): Update.
4760         * coffread.c (coff_symtab_read): Update.
4761         * buildsym.h (finish_block): Update.
4762         * buildsym.c (finish_block): Remove "listhead" argument.
4763         (end_symtab_get_static_block): Update.
4764
4765 2018-07-20  Tom Tromey  <tom@tromey.com>
4766
4767         * buildsym.h (class scoped_free_pendings): Remove constructor.
4768         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4769         method.
4770         <m_pending_block_obstack, m_pending_blocks>: New members.
4771         (pending_block_obstack, pending_blocks): Remove.
4772         (scoped_free_pendings::scoped_free_pendings): Default.
4773         (~scoped_free_pendings): Update.
4774         (free_pending_blocks): Remove.
4775         (finish_block_internal, record_pending_block, make_blockvector)
4776         (end_symtab_get_static_block, augment_type_symtab, push_context)
4777         (buildsym_init): Update.
4778
4779 2018-07-20  Tom Tromey  <tom@tromey.com>
4780
4781         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4782         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4783         members.
4784         (pending_addrmap, pending_addrmap_obstack)
4785         (pending_addrmap_interesting): Remove.
4786         (scoped_free_pendings, record_block_range, make_blockvector)
4787         (prepare_for_building, reset_symtab_globals, buildsym_init):
4788         Update.
4789
4790 2018-07-20  Tom Tromey  <tom@tromey.com>
4791
4792         * xcoffread.c (process_linenos): Update.
4793         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4794         * mdebugread.c (psymtab_to_symtab_1): Update.
4795         * dwarf2read.c (setup_type_unit_groups)
4796         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4797         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4798         * dbxread.c (process_one_symbol): Update.
4799         * coffread.c (coff_symtab_read, enter_linenos)
4800         (process_coff_symbol): Update.
4801         * buildsym.h (current_subfile): Don't declare.
4802         (get_current_subfile): Declare.
4803         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4804         member.
4805         (start_subfile, free_buildsym_compunit, push_subfile)
4806         (prepare_for_building, start_symtab): Update.
4807         (get_current_subfile): New function.
4808
4809 2018-07-20  Tom Tromey  <tom@tromey.com>
4810
4811         * coffread.c (coff_symtab_read): Update.
4812         * xcoffread.c (read_xcoff_symtab): Update.
4813         * dwarf2read.c (new_symbol): Update.
4814         (read_func_scope, read_lexical_block_scope): Update.
4815         * dbxread.c (process_one_symbol): Update.
4816         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4817         (outermost_context_p): Remove macro.
4818         (outermost_context_p, get_current_context_stack)
4819         (get_context_stack_depth): Declare.
4820         (pop_context): Return struct context_stack.
4821         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4822         member.
4823         (context_stack_size): Remove.
4824         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4825         (prepare_for_building, end_symtab_get_static_block)
4826         (augment_type_symtab, push_context): Update.
4827         (pop_context): Return struct context_stack.
4828         (outermost_context_p, get_current_context_stack)
4829         (get_context_stack_depth): New functions.
4830         (buildsym_init): Update.
4831
4832 2018-07-20  Tom Tromey  <tom@tromey.com>
4833
4834         * rust-exp.y: Now a pure parser.  Update all rules.
4835         (%union): Move earlier.
4836         (current_parser, work_obstack): Remove globals.
4837         (rust_parser, ~rust_parser): Update.
4838         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4839         lex_character, lex_number, lex_string, lex_identifier,
4840         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4841         convert_name, convert_params_to_expression,
4842         convert_ast_to_expression, ast_basic_type, ast_operation,
4843         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4844         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4845         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4846         ast_array_type, ast_slice_type, ast_reference_type,
4847         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4848         (rust_parse): Update.
4849         (rustyyerror, rustyylex): Add parser parameter.
4850         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4851         (rust_lex_stringish_test, rust_lex_test_sequence)
4852         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4853         (rust_lex_test_push_back, rust_lex_tests): Update.
4854
4855 2018-07-19  Pedro Alves  <palves@redhat.com>
4856
4857         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4858         gdb::unique_xmalloc_ptr.
4859         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4860         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4861         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4862         copy-initialization.
4863         * guile/scm-pretty-print.c (ppscm_print_children): Use
4864         gdb::unique_xmalloc_ptr instead of cleanups.
4865         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4866         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4867         gdb::unique_xmalloc_ptr.
4868         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4869         Adjust to use gdb::unique_xmalloc_ptr.
4870         * guile/scm-utils.c (extract_arg): Adjust.
4871         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4872         gdb::unique_xmalloc_ptr instead of a cleanup.
4873
4874 2018-07-19  Tom Tromey  <tom@tromey.com>
4875
4876         * utils.c (do_value_free_to_mark)
4877         (make_cleanup_value_free_to_mark): Remove.
4878         * utils.h (make_cleanup_value_free_to_mark): Remove.
4879
4880 2018-07-19  Pedro Alves  <palves@redhat.com>
4881
4882         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4883         forwarding reference.
4884
4885 2018-07-18  Pedro Alves  <palves@redhat.com>
4886
4887         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4888         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4889         cleanup.
4890
4891 2018-07-18  Pedro Alves  <palves@redhat.com>
4892
4893         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4894         exceptions.
4895         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4896         (gdbscm_wrap): New.
4897         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4898         directly instead of a cleanup.
4899         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4900         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4901         (vlscm_binop_gdbthrow): New, factored out from ...
4902         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4903         (vlscm_rich_compare): Use gdbscm_wrap.
4904         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4905         instead of a cleanup.
4906         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4907         cleanup.
4908         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4909         Use xfree directly instead of a cleanup.
4910         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4911         Adjust to use gdbscm_wrap and scoped_value_mark.
4912         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4913         (gdbscm_value_address, gdbscm_value_dereference)
4914         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4915         scoped_value_mark.
4916         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4917         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4918         scoped_value_mark.
4919         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4920         gdbscm_wrap and scoped_value_mark.
4921         (gdbscm_value_to_string): Use xfree directly instead of a
4922         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4923         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4924         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4925         scoped_value_mark.
4926         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4927         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4928         scoped_value_mark.
4929         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4930         gdbscm_wrap.
4931
4932 2018-07-18  Tom de Vries  <tdevries@suse.de>
4933
4934         * findvar.c (default_read_var_value): Also resolve dynamic type for
4935         LOC_OPTIMIZED_OUT vars.
4936
4937 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4938
4939         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4940         decoding.
4941
4942 2018-07-17  Tom Tromey  <tom@tromey.com>
4943
4944         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4945         (compute_enum_list, pascm_set_param_value_x)
4946         (gdbscm_parameter_value): Update.
4947         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4948         (gdbscm_scm_to_host_string): Update.
4949         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4950         Update.
4951         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4952         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4953         * guile/scm-string.c (gdbscm_scm_to_string): Return
4954         unique_xmalloc_ptr.
4955         (gdbscm_scm_to_host_string): Likewise.
4956
4957 2018-07-17  Tom Tromey  <tom@tromey.com>
4958
4959         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4960         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4961         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4962         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4963         unique_xmalloc_ptr.
4964
4965 2018-07-17  Tom Tromey  <tom@tromey.com>
4966
4967         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4968         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4969         Update.
4970         * guile/scm-cmd.c (cmdscm_function): Update.
4971         * guile/scm-pretty-print.c
4972         (ppscm_print_exception_unless_memory_error): Update.
4973         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4974         Return unique_xmalloc_ptr.
4975
4976 2018-07-17  Tom Tromey  <tom@tromey.com>
4977
4978         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4979         Use string_printf.
4980
4981 2018-07-17  Jim Wilson  <jimw@sifive.com>
4982
4983         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4984         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4985         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4986         unecessary braces after EF_RISCV_RVC test.  Delete call to
4987         set_gdbarch_decr_pc_after_break.
4988
4989         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4990         RISCV_LAST_FP_REGNUM + 1.
4991         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4992
4993 2018-07-17  Tom Tromey  <tom@tromey.com>
4994
4995         * configure.ac: Remove --disable-gdbcli.
4996         * configure: Rebuild.
4997         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4998         (SUBDIR_CLI_CFLAGS): Remove.
4999         (SFILES): Use SUBDIR_CLI_SRCS.
5000         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5001
5002 2018-07-17  Tom Tromey  <tom@tromey.com>
5003
5004         PR gdb/18624:
5005         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5006
5007 2018-07-16  Jim Wilson  <jimw@sifive.com>
5008
5009         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5010
5011 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5012
5013         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5014         variable.
5015         (libunwind_frame_sniffer): Likewise.
5016         (libunwind_frame_prev_register): Likewise.
5017         (libunwind_sigtramp_frame_sniffer): Likewise.
5018         * ia64-tdep.c (ia64_access_reg): Likewise.
5019         (ia64_access_rse_reg): Likewise.
5020         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5021         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5022
5023 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5024
5025         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5026
5027 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5028
5029         * remote-sim.c (gdbsim_target::close,
5030         gdbsim_target::mourn_inferior): Remove unused variables.
5031
5032 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5033
5034         * ia64-tdep.c (ktab_buf): New global.
5035         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5036         (get_kernel_table): Adjust.
5037
5038 2018-07-16  Tom Tromey  <tom@tromey.com>
5039
5040         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5041         * dwarf2read.c (using_directives, new_symbol): Use
5042         outermost_context_p.
5043         * dbxread.c (process_one_symbol): Use outermost_context_p.
5044         * coffread.c (coff_symtab_read): Use outermost_context_p.
5045
5046 2018-07-16  Tom Tromey  <tom@tromey.com>
5047
5048         * dwarf2read.c (using_directives, read_func_scope)
5049         (read_lexical_block_scope): Update.
5050         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5051         * buildsym.h (local_using_directives, global_using_directives):
5052         Don't declare.
5053         (get_local_using_directives, set_local_using_directives)
5054         (get_global_using_directives): Declare.
5055         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5056         m_global_using_directives>: New members.
5057         (finish_block_internal, prepare_for_building)
5058         (reset_symtab_globals, end_symtab_get_static_block)
5059         (push_context): Update.
5060         (get_local_using_directives, set_local_using_directives)
5061         (get_global_using_directives): New functions.
5062         (buildsym_init): Update.
5063
5064 2018-07-16  Tom Tromey  <tom@tromey.com>
5065
5066         * xcoffread.c (xcoff_initial_scan): Don't call
5067         free_pending_blocks.
5068         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5069         * buildsym.h (class scoped_free_pendings): Add constructor.
5070         (free_pending_blocks): Don't declare.
5071         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5072         (free_pending_blocks): Now static.
5073
5074 2018-07-16  Tom Tromey  <tom@tromey.com>
5075
5076         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5077         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5078         member.
5079         (struct subfile_stack): Remove.
5080         (subfile_stack): Remove.
5081         (push_subfile, pop_subfile, buildsym_init): Update.
5082
5083 2018-07-16  Tom Tromey  <tom@tromey.com>
5084
5085         * buildsym.c (push_subfile): Use gdb_assert.
5086         (pop_subfile): Use gdb_assert.
5087
5088 2018-07-16  Tom Tromey  <tom@tromey.com>
5089
5090         * buildsym.h (merge_symbol_lists): Remove.
5091         * buildsym.c (merge_symbol_lists): Remove.
5092
5093 2018-07-16  Tom Tromey  <tom@tromey.com>
5094
5095         * stabsread.c (scan_file_globals): Update comment.
5096         * stabsread.h (scan_file_globals): Move from buildsym.h.
5097         * buildsym.h (scan_file_globals): Move to stabsread.h.
5098
5099 2018-07-16  Tom Tromey  <tom@tromey.com>
5100
5101         * xcoffread.c (xcoff_new_init): Update.
5102         * mipsread.c (mipscoff_new_init): Update.
5103         * mdebugread.c (mdebug_build_psymtabs): Update.
5104         * elfread.c (elf_new_init): Update.
5105         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5106         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5107         * buildsym.h (buildsym_new_init): Don't declare.
5108         * buildsym.c (buildsym_new_init): Remove.
5109
5110 2018-07-16  Tom Tromey  <tom@tromey.com>
5111
5112         * stabsread.h (within_function): Move from buildsym.h.
5113         * stabsread.c (start_stabs): Clear within_function.
5114         * coffread.c (coff_start_symtab): Clear within_function.
5115         * buildsym.h (within_function): Move to stabsread.h.
5116         * buildsym.c (prepare_for_building): Update.
5117
5118 2018-07-16  Tom Tromey  <tom@tromey.com>
5119
5120         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5121         * dwarf2read.c (dwarf2_start_symtab): Don't set
5122         processing_gcc_compilation.
5123         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5124
5125 2018-07-16  Tom Tromey  <tom@tromey.com>
5126
5127         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5128         (next_symbol_text_func): Move from buildsym.h.
5129         * stabsread.c (hashname): Move from buildsym.c.
5130         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5131         (next_symbol_text_func, hashname): Move to stabsread.h.
5132         * buildsym.c: Don't include bcache.h
5133         (hashname): Move to stasbread.c.
5134
5135 2018-07-16  Tom Tromey  <tom@tromey.com>
5136
5137         * buildsym.h (context_stack_size): Don't declare.
5138         * buildsym.c (context_stack_size): New global.
5139
5140 2018-07-16  Tom Tromey  <tom@tromey.com>
5141
5142         * dbxread.c (processing_acc_compilation): New global.
5143         * buildsym.h (processing_acc_compilation): Don't declare.
5144
5145 2018-07-16  Tom Tromey  <tom@tromey.com>
5146
5147         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5148         * dbxread.c (read_ofile_symtab): Update.
5149         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5150         * buildsym.h (last_source_start_addr): Remove.
5151         (set_last_source_start_addr, get_last_source_start_addr):
5152         Declare.
5153         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5154         parameter.
5155         (struct buildsym_compunit) <m_last_source_start_addr>: New
5156         member.
5157         (prepare_for_building): Remove start_addr parameter.
5158         (start_symtab, restart_symtab, end_symtab_get_static_block)
5159         (end_symtab_with_blockvector): Update.
5160         (set_last_source_start_addr, get_last_source_start_addr): New
5161         functions.
5162
5163 2018-07-16  Tom Tromey  <tom@tromey.com>
5164
5165         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5166         member.
5167         (have_line_numbers): Remove.
5168         (record_line, prepare_for_building, end_symtab_get_static_block)
5169         (augment_type_symtab): Update.
5170
5171 2018-07-16  Tom Tromey  <tom@tromey.com>
5172
5173         * buildsym.c (~buildsym_compunit): Free the macro table.
5174         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5175         methods.
5176         <m_pending_macros>: New member.
5177         (pending_macros): Remove.
5178         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5179         (reset_symtab_globals, end_symtab_get_static_block)
5180         (end_symtab_with_blockvector, augment_type_symtab)
5181         (buildsym_init): Update.
5182
5183 2018-07-16  Tom Tromey  <tom@tromey.com>
5184
5185         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5186         parameter.
5187         (buildsym_compunit::set_last_source_file): New method.
5188         <m_last_source_file>: New member.
5189         (prepare_for_building): Remove "name" parameter.
5190         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5191         (last_source_file): Remove.
5192         (set_last_source_file, get_last_source_file): Update.
5193
5194 2018-07-16  Tom Tromey  <tom@tromey.com>
5195
5196         * buildsym.c (prepare_for_building): Add assert.
5197
5198 2018-07-16  Tom Tromey  <tom@tromey.com>
5199
5200         * buildsym.c (~buildsym_compunit): Update.
5201         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5202         (start_subfile, patch_subfile_names)
5203         (end_symtab_with_blockvector): Update.
5204
5205 2018-07-16  Tom Tromey  <tom@tromey.com>
5206
5207         * buildsym.c (struct buildsym_compunit): Add constructor,
5208         destructor, initializers.
5209         (start_buildsym_compunit): Remove.
5210         (free_buildsym_compunit): Use "delete".
5211         (start_symtab, restart_symtab): Use "new".
5212
5213 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5214
5215         * symfile.c (set_objfile_default_section_offset): Remove struct
5216         keyword.
5217
5218 2018-07-14  Stafford Horne  <shorne@gmail.com>
5219
5220         * (Responsible Maintainers): Add myself as or1k maintainer.
5221
5222 2018-07-13  Tom Tromey  <tom@tromey.com>
5223
5224         * symfile.c (set_objfile_default_section_offset): Use extra braces
5225         around initializer.
5226
5227 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5228
5229         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5230         non-branching basr.
5231
5232 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5233
5234         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5235         unittests/cli-utils-selftests.c
5236         * unittests/cli-utils-selftests.c: New file.
5237
5238 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5239
5240         * NEWS: Mention new commands. Mention change to 'thread apply'.
5241
5242 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5243
5244         * thread.c (thr_try_catch_cmd): New function.
5245         (thread_apply_all_command): Handle qcs flags.
5246         (thread_apply_command): Handle qcs flags.
5247         (taas_command): New function.
5248         (tfaas_command): New function.
5249         (_initialize_thread): Update to setup the new commands 'taas
5250         and 'tfaas'. Change doc string for 'thread apply'.
5251
5252 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5253
5254         * stack.c: (trailing_outermost_frame): New function, mostly
5255         extracted from backtrace_command_1.
5256         (leading_innermost_frame): New function.
5257         (backtrace_command_1): Update to call trailing_outermost_frame.
5258         (frame_apply_command_count): New function.
5259         (frame_apply_level_command): New function.
5260         (frame_apply_all_command): New function.
5261         (frame_apply_command): New function.
5262         (faas_command): New function.
5263         (frame_cmd_list): New variable.
5264         (_initialize_stack): Update to setup the new commands 'frame apply'
5265         and 'faas'.
5266
5267 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5268
5269         * cli-utils.c (number_or_range_parser::get_number): Only handle
5270         numbers or convenience var as numbers.
5271         (parse_flags): New function.
5272         (parse_flags_qcs): New function.
5273         (number_or_range_parser::finished): Ensure parsing end is detected
5274         before end of string.
5275         * cli-utils.h (parse_flags): New function.
5276         (parse_flags_qcs): New function.
5277         (number_or_range_parser): Remove m_finished bool.
5278         (number_or_range_parser::skip_range): Set m_in_range to false.
5279
5280 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5281
5282         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5283         on Windows.
5284
5285 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5286             Jan Kratochvil  <jan.kratochvil@redhat.com>
5287             Paul Fertser  <fercerpav@gmail.com>
5288             Tsutomu Seki  <sekiriki@gmail.com>
5289             Pedro Alves  <palves@redhat.com>
5290
5291         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5292         'unittests/parse-connection-spec-selftests.c'.
5293         (COMMON_SFILES): Add 'common/netstuff.c'.
5294         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5295         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5296         * common/netstuff.c: New file.
5297         * common/netstuff.h: New file.
5298         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5299         (wait_for_connect): Update comment.  New parameter
5300         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5301         Use 'sock' directly instead of 'scb->fd'.
5302         (try_connect): New function, with code from 'net_open'.
5303         (net_open): Rewrite main loop to deal with multiple
5304         sockets/addresses.  Handle IPv6-style hostnames; implement
5305         support for IPv6 connections.
5306         * unittests/parse-connection-spec-selftests.c: New file.
5307
5308 2018-07-11  Pedro Alves  <palves@redhat.com>
5309
5310         PR gdb/23377
5311         * remote.c (remote_target::remote_detach_pid): Call
5312         set_current_process.
5313
5314 2018-07-11  Pedro Alves  <palves@redhat.com>
5315
5316         * h8300-tdep.c (h8300_gdbarch_init): Remove
5317         set_gdbarch_ecoff_reg_to_regnum calls.
5318
5319 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5320
5321         PR c++/23373
5322         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5323         offsets/sizes for static members of a class/struct.
5324
5325 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5326
5327         * target-descriptions.c (tdesc_register_bitsize): Rename.
5328         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5329         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5330         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5331
5332 2018-07-10  Tom Tromey  <tom@tromey.com>
5333
5334         * breakpoint.c (moribund_locations): Now static and a
5335         std::vector.
5336         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5337         (build_bpstat_chain, update_global_location_list)
5338         (breakpoint_retire_moribund): Update.
5339         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5340         VEC.
5341
5342 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5343
5344         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5345         (riscv_register_reggroup_p): Use new function, remove unneeded
5346         parenthesis.
5347         (riscv_push_dummy_call): Extend assert to compare against xlen or
5348         flen based on register type.
5349
5350 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5351
5352         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5353
5354 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5355
5356         * remote.c (show_hardware_watchpoint_limit): New function.
5357         (show_hardware_watchpoint_length_limit): New function.
5358         (show_hardware_breakpoint_limit): New function.
5359         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5360         where appropriate, update help text.
5361
5362 2018-07-09  Tom Tromey  <tom@tromey.com>
5363
5364         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5365         (CLIBS): Don't mention NAT_CLIBS.
5366
5367 2018-07-09  Tom Tromey  <tom@tromey.com>
5368
5369         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5370         (LIBGDB_OBS, clean mostlyclean): Update.
5371         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5372
5373 2018-07-09  Tom Tromey  <tom@tromey.com>
5374
5375         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5376         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5377         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5378
5379 2018-07-09  Tom Tromey  <tom@tromey.com>
5380
5381         * Makefile.in (ALLDEPFILES): Remove exec.c.
5382         (COMMON_OBS): Remove exec.o.
5383         (COMMON_SFILES): Add exec.c.
5384
5385 2018-07-09  Tom Tromey  <tom@tromey.com>
5386
5387         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5388
5389 2018-07-09  Tom Tromey  <tom@tromey.com>
5390
5391         * Makefile.in (clean mostlyclean): Remove stamp-version.
5392         (version.c): Depend on stamp-version.
5393         (stamp-version): New rule, from version.c rule.
5394
5395 2018-07-09  Tom Tromey  <tom@tromey.com>
5396
5397         * Makefile.in (init.c): Depend on stamp-init.
5398         (stamp-init): New rule, from init.c rule.
5399         (clean mostlyclean): Remove stamp-init.
5400
5401 2018-07-09  Tom Tromey  <tom@tromey.com>
5402
5403         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5404         SUBDIR_GCC_COMPILE_SRCS.
5405
5406 2018-07-09  Tom Tromey  <tom@tromey.com>
5407
5408         * Makefile.in (init.c): Remove some unused sed rules.
5409
5410 2018-07-09  Tom Tromey  <tom@tromey.com>
5411
5412         * Makefile.in (TSOBS): Remove.
5413         (INIT_FILES): Update.
5414         (LIBGDB_OBS): Update.
5415         (COMMON_SFILES): Add inflow.c.
5416         (SFILES): Remove inflow.c.
5417
5418 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5419
5420         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5421
5422 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5423
5424         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5425         get_saveloc_name, is_signal_frame_name, step_name,
5426         init_remote_name, create_addr_space_name,
5427         destroy_addr_space_name, search_unwind_table_name,
5428         find_dyn_list_name): Constify.
5429
5430 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5431
5432         * darwin-nat.c (darwin_pthread_kill): New function.
5433         (darwin_resume_thread): Use darwin_pthread_kill.
5434
5435 2018-07-05  Tom de Vries  <tdevries@suse.de>
5436
5437         * macroexp.c (macro_buffer) <operator=>: New member function.
5438
5439 2018-07-04  Tom Tromey  <tom@tromey.com>
5440
5441         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5442
5443 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5444
5445         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5446         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5447         * maint.c: Likewise.
5448         * top.c: Likewise.
5449
5450 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5451
5452         * NEWS: Create a new section for the next release branch.
5453         Rename the section of the current branch, now that it has
5454         been cut.
5455
5456 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5457
5458         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5459         * version.in: Bump version to 8.2.50.DATE-git.
5460
5461 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5462             Pedro Alves  <palves@redhat.com>
5463
5464         * linux-nat.c (linux_init_ptrace): Rename to ...
5465         (linux_init_ptrace_procfs): ... this.  Call
5466         linux_proc_init_warnings.
5467         (linux_nat_target::post_attach)
5468         (linux_nat_target::post_startup_inferior): Adjust.
5469         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5470         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5471
5472 2018-07-04  Tom de Vries  <tdevries@suse.de>
5473
5474         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5475         check ...
5476         (read_comp_unit_head): ... here.
5477
5478 2018-07-03  Tom Tromey  <tom@tromey.com>
5479
5480         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5481         (stop_tracing, tstatus_command)
5482         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5483         (print_one_static_tracepoint_marker): Update.
5484         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5485         std::vector.
5486         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5487         VEC.
5488         (all_tracepoints, static_tracepoints_here): Return std::vector.
5489
5490 2018-07-03  Tom Tromey  <tom@tromey.com>
5491
5492         * common/ptid.c (ptid_equal): Remove.
5493         * common/ptid.h (ptid_equal): Don't declare.
5494         * ada-tasks.c: Update.
5495         * breakpoint.c: Update.
5496         * common/agent.c: Update.
5497         * corelow.c: Update.
5498         * darwin-nat-info.c: Update.
5499         * darwin-nat.c: Update.
5500         * dcache.c: Update.
5501         * dtrace-probe.c: Update.
5502         * dummy-frame.c: Update.
5503         * fbsd-nat.c: Update.
5504         * frame.c: Update.
5505         * gdbthread.h: Update.
5506         * gnu-nat.c: Update.
5507         * go32-nat.c: Update.
5508         * inf-loop.c: Update.
5509         * inf-ptrace.c: Update.
5510         * infcall.c: Update.
5511         * infcmd.c: Update.
5512         * inflow.c: Update.
5513         * infrun.c: Update.
5514         * linux-fork.c: Update.
5515         * linux-nat.c: Update.
5516         * linux-thread-db.c: Update.
5517         * mi/mi-cmd-var.c: Update.
5518         * mi/mi-interp.c: Update.
5519         * mi/mi-main.c: Update.
5520         * nto-procfs.c: Update.
5521         * ppc-linux-tdep.c: Update.
5522         * procfs.c: Update.
5523         * python/py-inferior.c: Update.
5524         * python/py-record-btrace.c: Update.
5525         * python/py-record.c: Update.
5526         * ravenscar-thread.c: Update.
5527         * regcache.c: Update.
5528         * remote-sim.c: Update.
5529         * remote.c: Update.
5530         * sol-thread.c: Update.
5531         * solib.c: Update.
5532         * target.c: Update.
5533         * tui/tui-stack.c: Update.
5534         * varobj.c: Update.
5535         * windows-nat.c: Update.
5536         * windows-tdep.c: Update.
5537
5538 2018-07-03  Tom Tromey  <tom@tromey.com>
5539
5540         * common/ptid.c (ptid_match): Remove.
5541         * common/ptid.h (ptid_match): Don't declare.
5542         * fbsd-nat.c: Update.
5543         * infcmd.c: Update.
5544         * infrun.c: Update.
5545         * linux-nat.c: Update.
5546         * record-btrace.c: Update.
5547         * regcache.c: Update.
5548         * remote.c: Update.
5549
5550 2018-07-03  Tom Tromey  <tom@tromey.com>
5551
5552         * common/ptid.c (ptid_tid_p): Remove.
5553         * common/ptid.h (ptid_tid_p): Don't declare.
5554         * sol-thread.c: Update.
5555
5556 2018-07-03  Tom Tromey  <tom@tromey.com>
5557
5558         * common/ptid.c (ptid_lwp_p): Remove.
5559         * common/ptid.h (ptid_lwp_p): Don't declare.
5560         * fbsd-nat.c: Update.
5561         * linux-nat.c: Update.
5562         * nat/linux-procfs.c: Update.
5563         * nat/x86-linux-dregs.c: Update.
5564         * sol-thread.c: Update.
5565
5566 2018-07-03  Tom Tromey  <tom@tromey.com>
5567
5568         * common/ptid.c (ptid_is_pid): Remove.
5569         * common/ptid.h (ptid_is_pid): Don't declare.
5570         * infrun.c: Update.
5571         * linux-nat.c: Update.
5572         * mi/mi-interp.c: Update.
5573         * remote.c: Update.
5574         * thread.c: Update.
5575
5576 2018-07-03  Tom Tromey  <tom@tromey.com>
5577
5578         * common/ptid.c (ptid_get_tid): Remove.
5579         * common/ptid.h (ptid_get_tid): Don't declare.
5580         * ada-tasks.c: Update.
5581         * aix-thread.c: Update.
5582         * bsd-uthread.c: Update.
5583         * darwin-nat.c: Update.
5584         * fbsd-nat.c: Update.
5585         * i386-darwin-nat.c: Update.
5586         * infrun.c: Update.
5587         * linux-tdep.c: Update.
5588         * nto-procfs.c: Update.
5589         * ppc-ravenscar-thread.c: Update.
5590         * python/py-infthread.c: Update.
5591         * ravenscar-thread.c: Update.
5592         * sol-thread.c: Update.
5593         * sparc-ravenscar-thread.c: Update.
5594         * windows-nat.c: Update.
5595
5596 2018-07-03  Tom Tromey  <tom@tromey.com>
5597
5598         * common/ptid.c (ptid_get_lwp): Remove.
5599         * common/ptid.h (ptid_get_lwp): Don't declare.
5600         * aarch64-linux-nat.c: Update.
5601         * ada-tasks.c: Update.
5602         * aix-thread.c: Update.
5603         * amd64-linux-nat.c: Update.
5604         * arm-linux-nat.c: Update.
5605         * corelow.c: Update.
5606         * fbsd-nat.c: Update.
5607         * fbsd-tdep.c: Update.
5608         * gnu-nat.c: Update.
5609         * i386-cygwin-tdep.c: Update.
5610         * i386-gnu-nat.c: Update.
5611         * i386-linux-nat.c: Update.
5612         * ia64-linux-nat.c: Update.
5613         * inf-ptrace.c: Update.
5614         * infrun.c: Update.
5615         * linux-fork.c: Update.
5616         * linux-nat.c: Update.
5617         * linux-tdep.c: Update.
5618         * linux-thread-db.c: Update.
5619         * mips-linux-nat.c: Update.
5620         * nat/aarch64-linux-hw-point.c: Update.
5621         * nat/aarch64-linux.c: Update.
5622         * nat/linux-btrace.c: Update.
5623         * nat/linux-osdata.c: Update.
5624         * nat/linux-procfs.c: Update.
5625         * nat/x86-linux-dregs.c: Update.
5626         * obsd-nat.c: Update.
5627         * ppc-fbsd-nat.c: Update.
5628         * ppc-linux-nat.c: Update.
5629         * procfs.c: Update.
5630         * python/py-infthread.c: Update.
5631         * ravenscar-thread.c: Update.
5632         * remote.c: Update.
5633         * s390-linux-nat.c: Update.
5634         * sol-thread.c: Update.
5635         * sol2-tdep.c: Update.
5636         * spu-linux-nat.c: Update.
5637         * x86-linux-nat.c: Update.
5638         * xtensa-linux-nat.c: Update.
5639
5640 2018-07-03  Tom Tromey  <tom@tromey.com>
5641
5642         * common/ptid.c (ptid_get_pid): Remove.
5643         * common/ptid.h (ptid_get_pid): Don't declare.
5644         * aarch64-linux-nat.c: Update.
5645         * ada-lang.c: Update.
5646         * aix-thread.c: Update.
5647         * alpha-bsd-nat.c: Update.
5648         * amd64-fbsd-nat.c: Update.
5649         * amd64-linux-nat.c: Update.
5650         * arm-linux-nat.c: Update.
5651         * arm-nbsd-nat.c: Update.
5652         * auxv.c: Update.
5653         * break-catch-syscall.c: Update.
5654         * breakpoint.c: Update.
5655         * bsd-uthread.c: Update.
5656         * corelow.c: Update.
5657         * ctf.c: Update.
5658         * darwin-nat.c: Update.
5659         * fbsd-nat.c: Update.
5660         * fbsd-tdep.c: Update.
5661         * gcore.c: Update.
5662         * gnu-nat.c: Update.
5663         * hppa-nbsd-nat.c: Update.
5664         * hppa-obsd-nat.c: Update.
5665         * i386-fbsd-nat.c: Update.
5666         * ia64-linux-nat.c: Update.
5667         * inf-ptrace.c: Update.
5668         * infcmd.c: Update.
5669         * inferior.c: Update.
5670         * inferior.h: Update.
5671         * inflow.c: Update.
5672         * infrun.c: Update.
5673         * linux-fork.c: Update.
5674         * linux-nat.c: Update.
5675         * linux-tdep.c: Update.
5676         * linux-thread-db.c: Update.
5677         * m68k-bsd-nat.c: Update.
5678         * mi/mi-interp.c: Update.
5679         * mi/mi-main.c: Update.
5680         * mips-linux-nat.c: Update.
5681         * mips-nbsd-nat.c: Update.
5682         * mips64-obsd-nat.c: Update.
5683         * nat/aarch64-linux-hw-point.c: Update.
5684         * nat/aarch64-linux.c: Update.
5685         * nat/linux-btrace.c: Update.
5686         * nat/linux-osdata.c: Update.
5687         * nat/linux-procfs.c: Update.
5688         * nat/x86-linux-dregs.c: Update.
5689         * nto-procfs.c: Update.
5690         * obsd-nat.c: Update.
5691         * ppc-linux-nat.c: Update.
5692         * ppc-nbsd-nat.c: Update.
5693         * ppc-obsd-nat.c: Update.
5694         * proc-service.c: Update.
5695         * procfs.c: Update.
5696         * python/py-inferior.c: Update.
5697         * python/py-infthread.c: Update.
5698         * ravenscar-thread.c: Update.
5699         * record.c: Update.
5700         * remote-sim.c: Update.
5701         * remote.c: Update.
5702         * rs6000-nat.c: Update.
5703         * s390-linux-nat.c: Update.
5704         * sh-nbsd-nat.c: Update.
5705         * sol-thread.c: Update.
5706         * sparc-nat.c: Update.
5707         * sparc64-tdep.c: Update.
5708         * spu-linux-nat.c: Update.
5709         * spu-tdep.c: Update.
5710         * target-debug.h: Update.
5711         * target.c: Update.
5712         * thread.c: Update.
5713         * tid-parse.c: Update.
5714         * tracefile-tfile.c: Update.
5715         * vax-bsd-nat.c: Update.
5716         * windows-nat.c: Update.
5717         * x86-linux-nat.c: Update.
5718         * x86-nat.c: Update.
5719
5720 2018-07-03  Tom Tromey  <tom@tromey.com>
5721
5722         * common/ptid.c (pid_to_ptid): Remove.
5723         * common/ptid.h (pid_to_ptid): Don't declare.
5724         * aix-thread.c: Update.
5725         * arm-linux-nat.c: Update.
5726         * common/ptid.c: Update.
5727         * common/ptid.h: Update.
5728         * corelow.c: Update.
5729         * ctf.c: Update.
5730         * darwin-nat.c: Update.
5731         * fbsd-nat.c: Update.
5732         * fork-child.c: Update.
5733         * gnu-nat.c: Update.
5734         * go32-nat.c: Update.
5735         * inf-ptrace.c: Update.
5736         * infcmd.c: Update.
5737         * inferior.c: Update.
5738         * infrun.c: Update.
5739         * linux-fork.c: Update.
5740         * linux-nat.c: Update.
5741         * nat/aarch64-linux-hw-point.c: Update.
5742         * nat/fork-inferior.c: Update.
5743         * nat/x86-linux-dregs.c: Update.
5744         * nto-procfs.c: Update.
5745         * obsd-nat.c: Update.
5746         * procfs.c: Update.
5747         * progspace.c: Update.
5748         * remote.c: Update.
5749         * rs6000-nat.c: Update.
5750         * s390-linux-nat.c: Update.
5751         * sol-thread.c: Update.
5752         * spu-linux-nat.c: Update.
5753         * target.c: Update.
5754         * top.c: Update.
5755         * tracefile-tfile.c: Update.
5756         * windows-nat.c: Update.
5757
5758 2018-07-03  Tom Tromey  <tom@tromey.com>
5759
5760         * common/ptid.h (ptid_build): Don't declare.
5761         * common/ptid.c (ptid_build): Remove.
5762         * aix-thread.c: Update.
5763         * bsd-kvm.c: Update.
5764         * bsd-uthread.c: Update.
5765         * common/agent.c: Update.
5766         * common/ptid.c: Update.
5767         * common/ptid.h: Update.
5768         * corelow.c: Update.
5769         * darwin-nat.c: Update.
5770         * fbsd-nat.c: Update.
5771         * gnu-nat.c: Update.
5772         * linux-fork.c: Update.
5773         * linux-nat.c: Update.
5774         * linux-thread-db.c: Update.
5775         * nat/linux-osdata.c: Update.
5776         * nat/linux-procfs.c: Update.
5777         * nto-procfs.c: Update.
5778         * obsd-nat.c: Update.
5779         * proc-service.c: Update.
5780         * procfs.c: Update.
5781         * ravenscar-thread.c: Update.
5782         * remote-sim.c: Update.
5783         * remote.c: Update.
5784         * sol-thread.c: Update.
5785         * target.c: Update.
5786         * windows-nat.c: Update.
5787
5788 2018-07-03  Tom Tromey  <tom@tromey.com>
5789
5790         * infrun.c (follow_exec): Use exit_inferior_silent.
5791         * inferior.c (exit_inferior_num_silent): Remove.
5792         * inferior.h (exit_inferior_num_silent): Don't declare.
5793
5794 2018-07-03  Tom Tromey  <tom@tromey.com>
5795
5796         PR cli/23340:
5797         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5798         inferior_ptid on error.
5799
5800 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5801             Simon Marchi  <simon.marchi@polymtl.ca>
5802
5803         PR tdep/8282
5804         * disasm.h (gdb_disassembler): Add
5805         `m_disassembler_options_holder'. member
5806         * disasm.c (get_all_disassembler_options): New function.
5807         (gdb_disassembler::gdb_disassembler): Use it.
5808         (gdb_buffered_insn_length_init_dis): Likewise.
5809         (gdb_buffered_insn_length): Adjust accordingly.
5810         (set_disassembler_options): Handle options with arguments.
5811         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5812         line if showing options with descriptions.
5813         (disassembler_options_completer): Adapt to using the
5814         `disasm_options_and_args_t' structure.
5815         * mips-tdep.c (mips_disassembler_options): New variable.
5816         (mips_disassembler_options_o32): Likewise.
5817         (mips_disassembler_options_n32): Likewise.
5818         (mips_disassembler_options_n64): Likewise.
5819         (gdb_print_insn_mips): Don't set `disassembler_options'.
5820         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5821         functions.
5822         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5823         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5824         `gdbarch_disassembler_options_implicit' and
5825         `gdbarch_valid_disassembler_options'.
5826         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5827         `disasm_options_and_args_t' structure.
5828         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5829         method.
5830         (valid_disassembler_options): Switch from `disasm_options_t' to
5831         the `disasm_options_and_args_t' structure.
5832         * NEWS: Document `set disassembler-options' support for the MIPS
5833         target.
5834         * gdbarch.h: Regenerate.
5835         * gdbarch.c: Regenerate.
5836
5837 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5838
5839         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5840
5841 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5842
5843         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5844         parameter in call to amd64_target_description.
5845         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5846         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5847         (amd64fbsd_init_abi): Likewise.
5848         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5849         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5850         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5851         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5852
5853 2018-06-29  Pedro Alves  <palves@redhat.com>
5854
5855         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5856         "segments" parameter.
5857         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5858         (_initialize_amd64_tdep): Update call to
5859         amd64_create_target_description.
5860         (amd64_target_description): Add "segments" parameter.  Adjust
5861         the implementation to use it.
5862         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5863         call to amd64_create_target_description.
5864         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5865         * gdb/arch/amd64.h (amd64_create_target_description): Add
5866         "segments" register.
5867         * gdb/arch/amd64.c (amd64_create_target_description): Add
5868         "segments" parameter.  Call create_feature_i386_64bit_segments
5869         only if SEGMENTS is true.
5870         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5871         call to amd64_create_target_description.
5872
5873 2018-06-29  Pedro Alves  <palves@redhat.com>
5874
5875         * thread.c (thread_target_id_str): New, factored out from ...
5876         (print_thread_info_1): ... here.  Use it to compute the max
5877         "Target Id" column width.
5878
5879 2018-06-29  Pedro Alves  <palves@redhat.com>
5880
5881         * remote.c (remote_target::extra_thread_info): Delete
5882         'display_buf' and 'n' locals.  from the cache, regardless of
5883         packet mechanims is in use.  Use cache for qThreadExtra and qP
5884         methods too.
5885
5886 2018-06-29  Pedro Alves  <palves@redhat.com>
5887
5888         * blockframe.c (find_pc_sect_containing_function): New function.
5889         * breakpoint.c (print_breakpoint_location): Don't call
5890         find_pc_sect_function.
5891         * linespec.c (create_sals_line_offset): Record the location's
5892         symbol in the sal.
5893         * linespec.c (convert_address_location_to_sals): Fill in sal's
5894         symbol with find_pc_sect_containing_function.
5895         * symtab.c (find_function_start_sal): Rename to ...
5896         (find_function_start_sal_1): ... this.
5897         (find_function_start_sal): Reimplement as wrapper around
5898         find_function_start_sal_1, and use
5899         find_pc_sect_containing_function to fill in the sal's symbol.
5900         (find_function_start_sal(symbol*, bool)): Adjust.
5901         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5902         comments.
5903         (find_pc_sect_containing_function): Declare.
5904
5905 2018-06-29  Pedro Alves  <palves@redhat.com>
5906
5907         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5908         true if the the location has no symbol.
5909
5910 2018-06-28  Tom Tromey  <tom@tromey.com>
5911
5912         * NEWS: Mention --enable-codesign.
5913         * silent-rules.mk (ECHO_SIGN): New variable.
5914         * configure.ac: Add --enable-codesign.
5915         * configure: Rebuild.
5916         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5917         (gdb$(EXEEXT)): Optionally invoke codesign.
5918
5919 2018-06-28  Pedro Alves  <palves@redhat.com>
5920
5921         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5922         comments.
5923         (switch_to_thread_no_regs): Adjust comment.
5924         * infcmd.c (stop_pc): Delete.
5925         (post_create_inferior, info_program_command): Replace references
5926         to stop_pc with references to thread_info->suspend.stop_pc.
5927         * inferior.h (stop_pc): Delete declaration.
5928         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5929         (handle_inferior_event_1, handle_signal_stop)
5930         (process_event_stop_test, keep_going_stepped_thread)
5931         (handle_step_into_function, handle_step_into_function_backward)
5932         (print_stop_location): Replace references to stop_pc with
5933         references to thread_info->suspend.stop_pc.
5934         (struct infcall_suspend_state) <stop_pc>: Delete field.
5935         (save_infcall_suspend_state, restore_infcall_suspend_state):
5936         Remove references to inf_stat->stop_pc.
5937         * linux-fork.c (fork_load_infrun_state): Likewise.
5938         * record-btrace.c (record_btrace_set_replay): Likewise.
5939         * record-full.c (record_full_goto_entry): Likewise.
5940         * remote.c (print_one_stopped_thread): Likewise.
5941         * target.c (target_resume): Extend comment.
5942         * thread.c (set_executing_thread): New.
5943         (set_executing): Use it.
5944         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5945         Remove references to stop_pc.
5946
5947 2018-06-28  Pedro Alves  <palves@redhat.com>
5948
5949         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5950         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5951
5952 2018-06-28  Tom Tromey  <tom@tromey.com>
5953
5954         * coffread.c (coff_symfile_finish): Update.
5955         * xcoffread.c (xcoff_symfile_finish): Update.
5956         * elfread.c (elf_symfile_finish): Update.
5957         * symfile.h (dwarf2_free_objfile): Don't declare.
5958         * dwarf2read.c (_initialize_dwarf2_read): Use
5959         register_objfile_data_with_cleanup.
5960         (dwarf2_free_objfile): Now static.  Change signature.
5961
5962 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5963
5964         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5965         option "-o" to add-symbol-file-load to add an offset to each
5966         section's load address.
5967         * symfile.c (set_objfile_default_section_offset): New function.
5968
5969 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5970
5971         * symfile.c (add_symbol_file_command): Make sure that sections
5972         with the same name are sorted in the same order.
5973
5974 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5975
5976         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5977         require the second argument.  If omitted, load sections at the
5978         addresses specified in the file.
5979
5980 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5981
5982         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5983         (_initialize_symfile): Add option "-o" to symbol-file to add an
5984         offset to each section of the symbol file.
5985
5986 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5987
5988         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5989
5990 2018-06-27  Tom Tromey  <tom@tromey.com>
5991
5992         * stack.c (_initialize_stack): Update "func" help text.
5993
5994 2018-06-27  Tom Tromey  <tom@tromey.com>
5995
5996         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5997         std::vector.
5998         (unwind_infopy_str, pyuw_create_unwind_info)
5999         (unwind_infopy_add_saved_register, pyuw_sniffer)
6000         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6001         Update.
6002         (struct saved_reg): Add constructor.
6003         <value>: Now a gdbpy_ref<>.
6004
6005 2018-06-27  Tom Tromey  <tom@tromey.com>
6006
6007         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6008
6009 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6010
6011         * gdb-gdb.py.in: Format using autopep8.
6012
6013 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6014
6015         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6016         (type_lookup_function): Recognize CORE_ADDR values.
6017
6018 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6019
6020         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6021         print tag_name.
6022
6023 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6024
6025         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6026         <__lt__>: Add.
6027
6028 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6029
6030         * gdb-gdb.py: Move to...
6031         * gdb-gdb.py.in: ... here.
6032         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6033         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6034         dependencies.
6035         (distclean): Remove gdb-gdb.py when cleaning.
6036         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6037         * configure: Re-generate.
6038
6039 2018-06-27  Pedro Alves  <palves@redhat.com>
6040
6041         * proc-service.c (get_ps_regcache): New.
6042         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6043         (ps_lsetfpregs): Use it.
6044
6045 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6046
6047         PR gdb/21695
6048         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6049         (dwarf_decode_lines_1): Adjust.
6050
6051 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6052
6053         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6054         override.
6055         <info_proc>: Likewise.
6056
6057 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6058
6059         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6060         to windows_fetch_one_register, and only handle the case of
6061         fetching one register.  Move the code that reloads the context
6062         and iterates over all registers if R is negative to...
6063         (windows_nat_target::fetch_registers): ... here.
6064         (do_windows_store_inferior_registers): Rename to
6065         windows_store_one_register, and only handle the case of storing
6066         one register.  Move the code that handles the case where r is
6067         negative to...
6068         (windows_nat_target::store_registers) ... here.
6069
6070 2018-06-26  Tom Tromey  <tom@tromey.com>
6071
6072         PR rust/22574:
6073         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6074         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6075         Update.
6076         (rust_internal_print_type): Add podata parameter.
6077         (rust_print_type): Update.
6078
6079 2018-06-26  Tom Tromey  <tom@tromey.com>
6080
6081         * typeprint.h (struct print_offset_data) <update, finish,
6082         maybe_print_hole>: New methods.
6083         <indentation>: New constant.
6084         * typeprint.c (print_offset_data::indentation): Define.
6085         (print_offset_data::maybe_print_hole, print_offset_data::update)
6086         (print_offset_data::finish): Move from c-typeprint.c and rename.
6087         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6088         (print_spaces_filtered_with_print_options): Update.
6089         (c_print_type_union_field_offset, maybe_print_hole)
6090         (c_print_type_struct_field_offset): Move to typeprint.c and
6091         rename.
6092         (c_type_print_base_struct_union): Update.
6093
6094 2018-06-25  Pedro Alves  <palves@redhat.com>
6095
6096         * gdbthread.h (thread_info_ref, delete_thread)
6097         (delete_thread_silent, first_thread_of_inferior)
6098         (any_thread_of_inferior, switch_to_thread)
6099         (enable_thread_stack_temporaries)
6100         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6101         (get_last_thread_stack_temporary)
6102         (value_in_thread_stack_temporaries, can_access_registers_thread):
6103         Spell out "struct thread_info" instead of just "thread_info".
6104         * inferior.h (notice_new_inferior): Likewise.
6105
6106 2018-06-25  Pedro Alves  <palves@redhat.com>
6107
6108         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6109         pass thread_info pointer to delete_thread.
6110         (windows_nat_target::detach): Pass inferior pointer to
6111         detach_inferior.
6112         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6113         delete_thread.
6114         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6115         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6116         and pass a thread_info pointer to delete_thread.
6117         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6118         pass thread_info pointer to delete_thread.
6119         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6120         delete_thread_silent call.
6121         * procfs.c (procfs_target::detach): Pass inferior pointer to
6122         detach_inferior.
6123         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6124         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6125         delete_thread_silent call.
6126         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6127         pass thread_info pointer to delete_thread.
6128         (windows_nat_target::detach): Pass inferior pointer to
6129         delete_inferior.
6130
6131 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6132
6133         * regcache.c (readable_regcache::read_part): Fix asserts.
6134         (reg_buffer::raw_collect_part): New function.
6135         (regcache::write_part): Fix asserts.
6136         (reg_buffer::raw_supply_part): New function.
6137         (regcache::transfer_regset_register): New helper function.
6138         (regcache::transfer_regset): Call new functions.
6139         (regcache_supply_regset): Use gdb_byte*.
6140         (regcache::supply_regset): Likewise.
6141         (regcache_collect_regset): Likewise.
6142         (regcache::collect_regset): Likewise.
6143         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6144         (reg_buffer::raw_supply_part): Likewise.
6145         (regcache::transfer_regset_register): Likewise.
6146         (regcache::transfer_regset): Use gdb_byte*.
6147
6148 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6149
6150         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6151
6152 2018-06-21  Pedro Alves  <palves@redhat.com>
6153
6154         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6155         instead of a ptid_t.  All callers adjusted.
6156         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6157         adjusted.
6158         (print_ada_task_info, display_current_task_id, task_command_1):
6159         Adjust.
6160         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6161         inferior_thread.
6162         (breakpoint_kind): Adjust.
6163         (remove_breakpoints_pid): Rename to ...
6164         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6165         pointer.  All callers adjusted.
6166         (bpstat_clear_actions): Use inferior_thread.
6167         (get_bpstat_thread): New.
6168         (bpstat_do_actions): Use it.
6169         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6170         to take a thread_info pointer.  All callers adjusted.
6171         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6172         (breakpoint_re_set_thread): Use inferior_thread.
6173         * breakpoint.h (struct inferior): Forward declare.
6174         (bpstat_stop_status): Update.
6175         (remove_breakpoints_pid): Delete.
6176         (remove_breakpoints_inf): New.
6177         * bsd-uthread.c (bsd_uthread_target::wait)
6178         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6179         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6180         (maint_btrace_packet_history_cmd)
6181         (maint_btrace_clear_packet_history_cmd): Adjust.
6182         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6183         inferior_thread.
6184         * cli/cli-interp.c: Include "inferior.h".
6185         * common/refcounted-object.h (struct
6186         refcounted_object_ref_policy): New.
6187         * compile/compile-object-load.c: Include gdbthread.h.
6188         (store_regs): Use inferior_thread.
6189         * corelow.c (core_target::close): Use current_inferior.
6190         (core_target_open): Adjust to use first_thread_of_inferior and use
6191         the current inferior.
6192         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6193         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6194         <thread>: ... this new field.  All references adjusted.
6195         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6196         Take a thread_info pointer instead of a ptid_t.
6197         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6198         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6199         thread_info pointer instead of a ptid_t.
6200         * elfread.c: Include "inferior.h".
6201         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6202         Use inferior_thread.
6203         * eval.c (evaluate_subexp): Likewise.
6204         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6205         inferior_thread.
6206         * gdb_proc_service.h (struct thread_info): Forward declare.
6207         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6208         <thread>: ... this new field.  All references adjusted.
6209         * gdbarch.h, gdbarch.c: Regenerate.
6210         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6211         'thread' parameter.  All implementations and callers adjusted.
6212         * gdbthread.h (thread_info) <set_running>: New method.
6213         (delete_thread, delete_thread_silent): Take a thread_info pointer
6214         instead of a ptid.
6215         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6216         (first_thread_of_process): Delete, replaced by ...
6217         (first_thread_of_inferior): ... this new function.  All callers
6218         adjusted.
6219         (any_live_thread_of_process): Delete, replaced by ...
6220         (any_live_thread_of_inferior): ... this new function.  All callers
6221         adjusted.
6222         (switch_to_thread, switch_to_no_thread): Declare.
6223         (is_executing): Delete.
6224         (enable_thread_stack_temporaries): Update comment.
6225         <enable_thread_stack_temporaries>: Take a thread_info pointer
6226         instead of a ptid_t.  Incref the thread.
6227         <~enable_thread_stack_temporaries>: Decref the thread.
6228         <m_ptid>: Delete
6229         <m_thr>: New.
6230         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6231         (get_last_thread_stack_temporary)
6232         (value_in_thread_stack_temporaries, can_access_registers_thread):
6233         Take a thread_info pointer instead of a ptid_t.  All callers
6234         adjusted.
6235         * infcall.c (get_call_return_value): Use inferior_thread.
6236         (run_inferior_call): Work with thread pointers instead of ptid_t.
6237         (call_function_by_hand_dummy): Work with thread pointers instead
6238         of ptid_t.  Use thread_info_ref.
6239         * infcmd.c (proceed_thread_callback): Access thread's state
6240         directly.
6241         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6242         access thread's state directly.
6243         (continue_command): Use inferior_thread.
6244         (info_program_command): Use find_thread_ptid and access thread
6245         state directly.
6246         (proceed_after_attach_callback): Use thread state directly.
6247         (notice_new_inferior): Take a thread_info pointer instead of a
6248         ptid_t.  All callers adjusted.
6249         (exit_inferior): Take an inferior pointer instead of a pid.  All
6250         callers adjusted.
6251         (exit_inferior_silent): New.
6252         (detach_inferior): Delete.
6253         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6254         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6255         (detach_inferior_command, kill_inferior_command): Use
6256         find_inferior_id instead of valid_gdb_inferior_id and
6257         gdb_inferior_id_to_pid.
6258         (inferior_command): Use inferior and thread pointers.
6259         * inferior.h (struct thread_info): Forward declare.
6260         (notice_new_inferior): Take a thread_info pointer instead of a
6261         ptid_t.  All callers adjusted.
6262         (detach_inferior): Delete declaration.
6263         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6264         instead of a pid.  All callers adjusted.
6265         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6266         (valid_gdb_inferior_id): Delete.
6267         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6268         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6269         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6270         ...
6271         <inf>: ... this new field.
6272         <step_ptid>: Delete, replaced by ...
6273         <step_thread>: ... this new field.
6274         (get_displaced_stepping_state): Take an inferior pointer instead
6275         of a pid.  All callers adjusted.
6276         (displaced_step_in_progress_any_inferior): Adjust.
6277         (displaced_step_in_progress_thread): Take a thread pointer instead
6278         of a ptid_t.  All callers adjusted.
6279         (displaced_step_in_progress, add_displaced_stepping_state): Take
6280         an inferior pointer instead of a pid.  All callers adjusted.
6281         (get_displaced_step_closure_by_addr): Adjust.
6282         (remove_displaced_stepping_state): Take an inferior pointer
6283         instead of a pid.  All callers adjusted.
6284         (displaced_step_prepare_throw, displaced_step_prepare)
6285         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6286         All callers adjusted.
6287         (start_step_over): Adjust.
6288         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6289         displaced step queue.
6290         (do_target_resume): Adjust.
6291         (fetch_inferior_event): Use inferior_thread.
6292         (context_switch, get_inferior_stop_soon): Take an
6293         execution_control_state pointer instead of a ptid_t.  All callers
6294         adjusted.
6295         (switch_to_thread_cleanup): Delete.
6296         (stop_all_threads): Use scoped_restore_current_thread.
6297         * inline-frame.c: Include "gdbthread.h".
6298         (inline_state) <inline_state>: Take a thread pointer instead of a
6299         ptid_t.  All callers adjusted.
6300         <ptid>: Delete, replaced by ...
6301         <thread>: ... this new field.
6302         (find_inline_frame_state): Take a thread pointer instead of a
6303         ptid_t.  All callers adjusted.
6304         (skip_inline_frames, step_into_inline_frame)
6305         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6306         pointer instead of a ptid_t.  All callers adjusted.
6307         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6308         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6309         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6310         pointers directly.
6311         * linux-nat.c (get_detach_signal): Likewise.
6312         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6313         (thread_db_notice_clone): Adjust.
6314         (thread_db_find_new_threads_silently)
6315         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6316         a thread pointer instead of a ptid_t.  All callers adjusted.
6317         * mi/mi-cmd-var.c: Include "inferior.h".
6318         (mi_cmd_var_update_iter): Update to use thread pointers.
6319         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6320         inferior directly.
6321         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6322         out to ...
6323         (mi_output_running): ... this new function.
6324         (mi_on_resume_1): Adjust to use it.
6325         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6326         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6327         directly.
6328         (interrupt_thread_callback): : Adjust to use thread and inferior
6329         pointers.
6330         * proc-service.c: Include "gdbthread.h".
6331         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6332         * progspace-and-thread.c: Include "inferior.h".
6333         * progspace.c: Include "inferior.h".
6334         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6335         hold a reference to an inferior_object.
6336         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6337         inferior_thread.
6338         * python/py-inferior.c (struct inferior_object): Give the type a
6339         tag name instead of a typedef.
6340         (python_on_normal_stop): No need to check if the current thread is
6341         listed.
6342         (inferior_to_inferior_object): Change return type to
6343         inferior_object.  All callers adjusted.
6344         (find_thread_object): Delete, bits factored out to ...
6345         (thread_to_thread_object): ... this new function.
6346         * python/py-infthread.c (create_thread_object): Use
6347         inferior_to_inferior_object.
6348         (thpy_is_stopped): Use thread pointer directly.
6349         (gdbpy_selected_thread): Use inferior_thread.
6350         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6351         field, replaced with ...
6352         <thread>: ... this new field.  All users adjusted.
6353         (btpy_insn_or_gap_new): Drop const.
6354         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6355         callers adjusted.
6356         * python/py-record.c: Include "gdbthread.h".
6357         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6358         a ptid_t.  All callers adjusted.
6359         (gdbpy_current_recording): Use inferior_thread.
6360         * python/py-record.h (recpy_record_object) <ptid>: Delete
6361         field, replaced with ...
6362         <thread>: ... this new field.  All users adjusted.
6363         (recpy_element_object) <ptid>: Delete
6364         field, replaced with ...
6365         <thread>: ... this new field.  All users adjusted.
6366         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6367         a ptid_t.  All callers adjusted.
6368         * python/py-threadevent.c: Include "gdbthread.h".
6369         (get_event_thread): Use thread_to_thread_object.
6370         * python/python-internal.h (struct inferior_object): Forward
6371         declare.
6372         (find_thread_object, find_inferior_object): Delete declarations.
6373         (thread_to_thread_object, inferior_to_inferior_object): New
6374         declarations.
6375         * record-btrace.c: Include "inferior.h".
6376         (require_btrace_thread): Use inferior_thread.
6377         (record_btrace_frame_sniffer)
6378         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6379         (get_thread_current_frame): Use scoped_restore_current_thread and
6380         switch_to_thread.
6381         (get_thread_current_frame): Use thread pointer directly.
6382         (record_btrace_replay_at_breakpoint): Use thread's inferior
6383         pointer directly.
6384         * record-full.c: Include "inferior.h".
6385         * regcache.c: Include "gdbthread.h".
6386         (get_thread_arch_regcache): Use the inferior's address space
6387         directly.
6388         (get_thread_regcache, registers_changed_thread): New.
6389         * regcache.h (get_thread_regcache(thread_info *thread)): New
6390         overload.
6391         (registers_changed_thread): New.
6392         (remote_target) <remote_detach_1>: Swap order of parameters.
6393         (remote_add_thread): <remote_add_thread>: Return the new thread.
6394         (get_remote_thread_info(ptid_t)): New overload.
6395         (remote_target::remote_notice_new_inferior): Use thread pointers
6396         directly.
6397         (remote_target::process_initial_stop_replies): Use
6398         thread_info::set_running.
6399         (remote_target::remote_detach_1, remote_target::detach)
6400         (extended_remote_target::detach): Adjust.
6401         * stack.c (frame_show_address): Use inferior_thread.
6402         * target-debug.h (target_debug_print_thread_info_pp): New.
6403         * target-delegates.c: Regenerate.
6404         * target.c (default_thread_address_space): Delete.
6405         (memory_xfer_partial_1): Use current_inferior.
6406         (target_detach): Use current_inferior.
6407         (target_thread_address_space): Delete.
6408         (generic_mourn_inferior): Use current_inferior.
6409         * target.h (struct target_ops) <thread_address_space>: Delete.
6410         (target_thread_address_space): Delete.
6411         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6412         pointers directly.
6413         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6414         thread pointer instead of a ptid_t.  Adjust all callers.
6415         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6416         (first_thread_of_process): Delete, replaced by ...
6417         (first_thread_of_inferior): ... this new function.  All callers
6418         adjusted.
6419         (any_thread_of_process): Rename to ...
6420         (any_thread_of_inferior): ... this, and take an inferior pointer.
6421         (any_live_thread_of_process): Rename to ...
6422         (any_live_thread_of_inferior): ... this, and take an inferior
6423         pointer.
6424         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6425         (value_in_thread_stack_temporaries)
6426         (get_last_thread_stack_temporary): Take a thread pointer instead
6427         of a ptid_t.  Adjust all callers.
6428         (thread_info::set_running): New.
6429         (validate_registers_access): Use inferior_thread.
6430         (can_access_registers_ptid): Rename to ...
6431         (can_access_registers_thread): ... this, and take a thread
6432         pointer.
6433         (print_thread_info_1): Adjust to compare thread pointers instead
6434         of ptids.
6435         (switch_to_no_thread, switch_to_thread): Make extern.
6436         (scoped_restore_current_thread::~scoped_restore_current_thread):
6437         Use m_thread pointer directly.
6438         (scoped_restore_current_thread::scoped_restore_current_thread):
6439         Use inferior_thread.
6440         (thread_command): Use thread pointer directly.
6441         (thread_num_make_value_helper): Use inferior_thread.
6442         * top.c (execute_command): Use inferior_thread.
6443         * tui/tui-interp.c: Include "inferior.h".
6444         * varobj.c (varobj_create): Use inferior_thread.
6445         (value_of_root_1): Use find_thread_global_id instead of
6446         global_thread_id_to_ptid.
6447
6448 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6449
6450         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6451         possible.
6452         (regcache::write_part): Likewise.
6453         (readable_regcache::cooked_read_part): Update comment.
6454         (readable_regcache::cooked_write_part): Likewise.
6455         * regcache.h: (readable_regcache::read_part): Likewise.
6456         (regcache::write_part): Likewise.
6457
6458 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6459             Dirk Schubert  <dirk.schubert@arm.com>
6460
6461         * aarch64-linux-nat.c (post_attach): New.
6462         (aarch64_linux_nat_target::post_attach): Override post_attach to
6463         record the number of hardware debug registers.
6464
6465 2018-06-20  Tom Tromey  <tom@tromey.com>
6466
6467         * python/py-param.c (add_setshow_generic): Make parameters const.
6468         (parmpy_init): Update.
6469
6470 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6471
6472         * regcache.h (regcache_cooked_read_ftype): Rename to...
6473         (register_read_ftype): ...this, change type to function_view.
6474         (class reg_buffer) <save>: Remove src parameter.
6475         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6476         parameter non-const in first overload.  Remove src parameter in
6477         second overload.
6478         * regcache.c (do_cooked_read): Remove.
6479         (readonly_detached_regcache::readonly_detached_regcache): Make
6480         parameter non-const, adjust call to other constructor.
6481         (reg_buffer::save): Remove src parameter.
6482         * frame.c (do_frame_register_read): Remove.
6483         (frame_save_as_regcache): Use lambda function.
6484         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6485         parameter to ppu2spu_data *.
6486         (ppu2spu_sniffer): Use lambda function.
6487
6488 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6489
6490         * record-full.c (record_full_target::insert_breakpoint): Remove
6491         "struct" keyword, add const.
6492
6493 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6494
6495         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6496         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6497         * configure.ac: Remove AC_PREREQ, add missing quoting.
6498         * gnulib/configure.ac: Modernize usage of
6499         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6500         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6501         (AUTOMAKE_VERSION): Bump to 1.15.1.
6502         * configure: Re-generate.
6503         * config.in: Re-generate.
6504         * aclocal.m4: Re-generate.
6505         * gnulib/aclocal.m4: Re-generate.
6506         * gnulib/config.in: Re-generate.
6507         * gnulib/configure: Re-generate.
6508         * gnulib/import/Makefile.in: Re-generate.
6509
6510 2018-06-19  Pedro Alves  <palves@redhat.com>
6511
6512         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6513         (lookup_minimal_symbol_by_pc_section): ... here with
6514         gdb_assert_not_reached added.
6515
6516 2018-06-19  Pedro Alves  <palves@redhat.com>
6517
6518         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6519         parameter with a block parameter.  Compare location's block symbol
6520         with the frame's block instead of addresses.
6521         (skip_inline_frames): Pass the current block instead of the
6522         frame's address.  Break out as soon as we determine the frame
6523         should not be skipped.
6524
6525 2018-06-18  Tom Tromey  <tom@tromey.com>
6526
6527         * solib-aix.c (solib_aix_get_section_offsets): Return
6528         unique_xmalloc_ptr.
6529         (solib_aix_solib_create_inferior_hook): Update.
6530
6531 2018-06-18  Tom Tromey  <tom@tromey.com>
6532
6533         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6534
6535 2018-06-18  Tom Tromey  <tom@tromey.com>
6536
6537         * solib-frv.c (frv_relocate_main_executable): Use
6538         unique_xmalloc_ptr.
6539         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6540         unique_xmalloc_ptr.
6541
6542 2018-06-18  Tom Tromey  <tom@tromey.com>
6543
6544         * objfiles.h (inhibit_section_map_updates): Update.
6545         (resume_section_map_updates, resume_section_map_updates_cleanup):
6546         Remove.
6547         * solib-svr4.c (svr4_handle_solib_event): Update.
6548         * objfiles.c (inhibit_section_map_updates): Return
6549         scoped_restore_tmpl<int>.
6550         (resume_section_map_updates, resume_section_map_updates_cleanup):
6551         Remove.
6552
6553 2018-06-18  Tom Tromey  <tom@tromey.com>
6554
6555         * valprint.h (read_string): Update.
6556         * valprint.c (read_string): Change type of "buffer".
6557         (val_print_string): Update.
6558         * python/py-value.c (valpy_string): Update.
6559         * language.h (struct language_defn) <la_get_string>: Change
6560         type of "buffer".
6561         (default_get_string, c_get_string): Update.
6562         * language.c (default_get_string): Change type of "buffer".
6563         * guile/scm-value.c (gdbscm_value_to_string): Update.
6564         * c-lang.c (c_get_string): Change type of "buffer".
6565
6566 2018-06-18  Tom Tromey  <tom@tromey.com>
6567
6568         * ser-mingw.c (struct pipe_state_destroyer): New.
6569         (pipe_state_up): New typedef.
6570         (cleanup_pipe_state): Remove.
6571         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6572
6573 2018-06-18  Tom Tromey  <tom@tromey.com>
6574
6575         * rust-lang.h (rust_yyerror): Don't declare.
6576         * rust-lang.c (rust_language_defn): Update.
6577         * rust-exp.y (yyerror): Now static.
6578         * parse.c (parse_exp_in_context_1): Update.
6579         * p-lang.h (p_yyerror): Don't declare.
6580         * p-lang.c (p_language_defn): Update.
6581         * p-exp.y (yyerror): Now static.
6582         * opencl-lang.c (opencl_language_defn): Update.
6583         * objc-lang.c (objc_language_defn): Update.
6584         * m2-lang.h (m2_yyerror): Don't declare.
6585         * m2-lang.c (m2_language_defn): Update.
6586         * m2-exp.y (yyerror): Now static.
6587         * language.h (struct language_defn) <la_error>: Remove.
6588         * language.c (unk_lang_error): Remove.
6589         (unknown_language_defn, auto_language_defn): Remove.
6590         * go-lang.h (go_yyerror): Don't declare.
6591         * go-lang.c (go_language_defn): Update.
6592         * go-exp.y (yyerror): Now static.
6593         * f-lang.h (f_yyerror): Don't declare.
6594         * f-lang.c (f_language_defn): Update.
6595         * f-exp.y (yyerror): Now static.
6596         * d-lang.h (d_yyerror): Don't declare.
6597         * d-lang.c (d_language_defn): Update.
6598         * d-exp.y (yyerror): Now static.
6599         * c-lang.h (c_yyerror): Don't declare.
6600         * c-lang.c (c_language_defn, cplus_language_defn)
6601         (asm_language_defn, minimal_language_defn): Update.
6602         * c-exp.y (yyerror): Now static.
6603         * ada-lang.h (ada_yyerror): Don't declare.
6604         * ada-lang.c (ada_language_defn): Update.
6605         * ada-exp.y (yyerror): Now static.
6606
6607 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6608
6609         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6610         (store_sveregs_to_thread): Likewise.
6611         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6612         (aarch64_linux_store_inferior_registers): Likewise.
6613         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6614         function.
6615         (aarch64_sve_regs_copy_to_regcache): Likewise.
6616         (aarch64_sve_regs_copy_from_regcache): Likewise.
6617         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6618         declaration.
6619         (aarch64_sve_regs_copy_to_regcache): Likewise.
6620         (aarch64_sve_regs_copy_from_regcache): Likewise.
6621         (sve_context): Structure from Linux headers.
6622         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6623         (SVE_SIG_ZREG_SIZE): Likewise.
6624         (SVE_SIG_PREG_SIZE): Likewise.
6625         (SVE_SIG_FFR_SIZE): Likewise.
6626         (SVE_SIG_REGS_OFFSET): Likewise.
6627         (SVE_SIG_ZREGS_OFFSET): Likewise.
6628         (SVE_SIG_ZREG_OFFSET): Likewise.
6629         (SVE_SIG_ZREGS_SIZE): Likewise.
6630         (SVE_SIG_PREGS_OFFSET): Likewise.
6631         (SVE_SIG_PREG_OFFSET): Likewise.
6632         (SVE_SIG_PREGS_SIZE): Likewise.
6633         (SVE_SIG_FFR_OFFSET): Likewise.
6634         (SVE_SIG_REGS_SIZE): Likewise.
6635         (SVE_SIG_CONTEXT_SIZE): Likewise.
6636         (SVE_PT_REGS_MASK): Likewise.
6637         (SVE_PT_REGS_FPSIMD): Likewise.
6638         (SVE_PT_REGS_SVE): Likewise.
6639         (SVE_PT_VL_INHERIT): Likewise.
6640         (SVE_PT_VL_ONEXEC): Likewise.
6641         (SVE_PT_REGS_OFFSET): Likewise.
6642         (SVE_PT_FPSIMD_OFFSET): Likewise.
6643         (SVE_PT_FPSIMD_SIZE): Likewise.
6644         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6645         (SVE_PT_SVE_PREG_SIZE): Likewise.
6646         (SVE_PT_SVE_FFR_SIZE): Likewise.
6647         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6648         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6649         (__SVE_SIG_TO_PT): Likewise.
6650         (SVE_PT_SVE_OFFSET): Likewise.
6651         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6652         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6653         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6654         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6655         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6656         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6657         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6658         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6659         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6660         (SVE_PT_SVE_SIZE): Likewise.
6661         (SVE_PT_SIZE): Likewise.
6662         (HAS_SVE_STATE): New define.
6663
6664 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6665
6666         * nat/aarch64-sve-linux-sigcontext.h: New file.
6667         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6668         new files.
6669         (SVE_VQ_MIN): Likewise.
6670         (SVE_VQ_MAX): Likewise.
6671         (SVE_VL_MIN): Likewise.
6672         (SVE_VL_MAX): Likewise.
6673         (SVE_NUM_ZREGS): Likewise.
6674         (SVE_NUM_PREGS): Likewise.
6675         (sve_vl_valid): Likewise.
6676         (struct user_sve_header): Likewise.
6677
6678 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6679             Richard Bunt <Richard.Bunt@arm.com>
6680
6681         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6682         was requested by GDB.
6683
6684 2018-06-15  Tom de Vries  <tdevries@suse.de>
6685
6686         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6687
6688 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6689
6690         * gnulib/update-gnulib.sh: Print expected versions of
6691         autoconf/aclocal.
6692
6693 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6694
6695         * arch-utils.c (default_type_align): Use type_length_units.
6696         * gdbtypes.c (type_align): Use type_length_units.
6697
6698 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6699
6700         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6701         of 'define' command.
6702
6703 2018-06-14  Tom de Vries  <tdevries@suse.de>
6704
6705         PR cli/22573
6706         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6707         get_no_prettyformat_print_options.
6708
6709 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6710
6711         * sparc-nat.h: Include target.h.
6712         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6713         <fetch_registers>: Remove this argument in function call.
6714         <store_registers>: Remove this argument in function call, remove
6715         extra semicolon.
6716         <low_forget_process>: Call sparc64_forget_process instead of
6717         sparc_forget_process.
6718
6719 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6720
6721         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6722         (procfs_target::make_corefile_notes): Adjust to new
6723         target_read_alloc return type.
6724
6725 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6726             Stephen Roberts  <stephen.roberts@arm.com>
6727
6728         PR gdb/22882
6729         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6730         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6731         Move should_notify_stop local into more inner scope.
6732
6733 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6734             Stephen Roberts  <stephen.roberts@arm.com>
6735
6736         PR gdb/22882
6737         * infrun.c (resume_1): Add call to mark_async_event_handler.
6738
6739 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6740
6741         * infrun.c (do_target_wait): Change old version of $pc printed.
6742
6743 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6744
6745         * dwarf2read.c (read_index_from_section): Rename to...
6746         (read_gdb_index_from_section): ... this, update all callers.
6747         (dwarf2_read_index): Rename to...
6748         (dwarf2_read_gdb_index): ... this, update all callers.
6749
6750 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6751
6752         * gdb/hppa-linux-nat.c
6753         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6754         hppa_linux_nat_target::fetch_registers.
6755
6756 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6757
6758         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6759         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6760         (AARCH64_DWARF_SVE_FFR): Likewise.
6761         (AARCH64_DWARF_SVE_P0): Likewise.
6762         (AARCH64_DWARF_SVE_Z0): Likewise.
6763
6764 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6765
6766         * common/common-regcache.h (raw_compare): New function.
6767         * regcache.c (regcache::raw_compare): Likewise.
6768         * regcache.h (regcache::raw_compare): New declaration.
6769
6770 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6771
6772         * common/common-regcache.h (reg_buffer_common): New structure.
6773         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6774         (reg_buffer::raw_supply): Likewise.
6775         (reg_buffer::raw_supply_integer): Likewise.
6776         (reg_buffer::raw_supply_zeroed): Likewise.
6777         (reg_buffer::raw_collect): Likewise.
6778         (reg_buffer::raw_collect_integer): Likewise.
6779         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6780         (reg_buffer::raw_supply): Likewise.
6781         (reg_buffer::raw_supply_integer): Likewise.
6782         (reg_buffer::raw_supply_zeroed): Likewise.
6783         (reg_buffer::raw_collect): Likewise.
6784         (reg_buffer::raw_collect_integer): Likewise.
6785
6786 2018-06-10  Tom Tromey  <tom@tromey.com>
6787
6788         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6789         (class remote_state) <stop_reply_queue>: Now std::vector.
6790         (remote_state::~remote_state)
6791         (remote_target::stop_reply_queue_length): Update.
6792         (struct queue_iter_param, remove_child_of_pending_fork)
6793         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6794         (check_pending_event_prevents_wildcard_vcont_callback)
6795         (remove_stop_reply_for_inferior)
6796         (remove_stop_reply_of_remote_state)
6797         (remote_notif_remove_once_on_match)
6798         (stop_reply_match_ptid_and_ws)
6799         (remote_kill_child_of_pending_fork): Remove.
6800         (remote_target::remove_new_fork_children)
6801         (remote_target::check_pending_events_prevent_wildcard_vcont)
6802         (remote_target::discard_pending_stop_replies)
6803         (remote_target::discard_pending_stop_replies_in_queue)
6804         (remote_target::remote_notif_remove_queued_reply)
6805         (remote_target::queued_stop_reply)
6806         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6807         (remote_target::wait, remote_target::kill_new_fork_children)
6808         (remote_target::async): Update.
6809
6810 2018-06-10  Tom Tromey  <tom@tromey.com>
6811
6812         * record-full.c (record_full_arch_list_cleanups): Remove.
6813         (record_full_message): Use try/catch.
6814         (record_full_wait_cleanups): Remove.
6815         (record_full_wait_1): Use try/catch.
6816         (record_full_restore): Likewise.
6817
6818 2018-06-10  Tom Tromey  <tom@tromey.com>
6819
6820         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6821         declare VEC.  Add constructor.
6822         <in_target_beneath>: Now bool.
6823         (record_full_breakpoints): Now a std::vector, static.
6824         (record_full_sync_record_breakpoints)
6825         (record_full_init_record_breakpoints)
6826         (record_full_target::insert_breakpoint)
6827         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6828
6829 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6830
6831         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6832         * serial.c (serial_interface_lookup): Remove struct keyword.
6833
6834 2018-06-10  Tom Tromey  <tom@tromey.com>
6835
6836         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6837         method.
6838         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6839         a method.
6840         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6841         method.
6842         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6843         "beneath" as a method.
6844         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6845         Use "beneath" as a method.
6846
6847 2018-06-10  Tom Tromey  <tom@tromey.com>
6848
6849         * tracefile.c (struct trace_file_writer_deleter): New.
6850         <operator()>: Rename from trace_file_writer_xfree.
6851         (trace_file_writer_up): New typedef.
6852         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6853
6854 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6855
6856         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6857         <m_registers, m_register_status>: Change type to
6858         std::unique_ptr.
6859         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6860         XCNEWVEC.
6861
6862 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6863
6864         * common/common-regcache.h (enum register_status): Add
6865         underlying type "signed char".
6866         * regcache.h (reg_buffer) <m_register_status>: Change type to
6867         register_status *.
6868         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6869         register_status instead of signed char.
6870         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6871         (reg_buffer::get_register_status): Remove cast.
6872         (readable_regcache::raw_read): Remove cast.
6873         (readable_regcache::cooked_read): Remove cast.
6874
6875 2018-06-09  Tom Tromey  <tom@tromey.com>
6876
6877         * source.c (reverse_search_command, forward_search_command): Use
6878         scoped_fd.
6879
6880 2018-06-09  Tom Tromey  <tom@tromey.com>
6881
6882         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6883         (serial_ops_list): Now static, std::vector.
6884         (serial_interface_lookup, serial_add_interface): Update.
6885
6886 2018-06-09  Tom Tromey  <tom@tromey.com>
6887
6888         * dwarf2read.c (process_cu_includes): Update.
6889         (process_full_comp_unit): Update.
6890         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6891         std::vector.
6892
6893 2018-06-08  Paul Koning  <paul_koning@dell.com>
6894
6895         PR gdb/23252
6896
6897         * python/python.c (do_start_initialization):
6898         Avoid call to internal Python API.
6899         (init__gdb_module): New function.
6900
6901 2018-06-08  Gary Benson <gbenson@redhat.com>
6902
6903         * linux-thread-db.c (valprint.h): New include.
6904         (struct check_thread_db_info): New structure.
6905         (check_thread_db_on_load, tdb_testinfo): New static globals.
6906         (check_thread_db, check_thread_db_callback): New functions.
6907         (try_thread_db_load_1): Run integrity checks if requested.
6908         (maintenance_check_libthread_db): New function.
6909         (_initialize_thread_db): Register "maint check libthread-db"
6910         and "maint set/show check-libthread-db".
6911         * NEWS: Mention the above new commands.
6912
6913 2018-06-08  Tom Tromey  <tom@tromey.com>
6914
6915         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6916         now a method.
6917
6918 2018-06-08  Tom Tromey  <tom@tromey.com>
6919
6920         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6921
6922 2018-06-08  Tom Tromey  <tom@tromey.com>
6923
6924         * common/btrace-common.h (struct btrace_data): Add constructor,
6925         destructor, move assignment operator.
6926         <empty, clear, fini>: New methods.
6927         <format>: Initialize.
6928         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6929         (btrace_data_empty): Don't declare.
6930         * common/btrace-common.c (btrace_data_init): Remove.
6931         (btrace_data::fini): Rename from btrace_data_fini.
6932         (btrace_data::empty): Rename from btrace_data_empty.
6933         (btrace_data::clear): Rename from btrace_data_clear.  Return
6934         bool.
6935         * btrace.h (make_cleanup_btrace_data): Don't declare.
6936         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6937         (parse_xml_btrace): Update.
6938         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6939         (maint_btrace_clear_packet_history_cmd): Update.
6940
6941 2018-06-07  Pedro Alves  <palves@redhat.com>
6942
6943         * target.h (target_ops) <beneath>: Now a method.  All references
6944         updated.
6945         (class target_stack): New.
6946         * target.c (g_target_stack): New.
6947         (g_current_top_target): Delete.
6948         (current_top_target): Get the top target out of g_target_stack.
6949         (target_stack::push, target_stack::unpush): New.
6950         (push_target, unpush_target): Reimplement.
6951         (target_is_pushed): Reimplement in terms of g_target_stack.
6952         (target_ops::beneath, target_stack::find_beneath): New.
6953
6954 2018-06-07  Pedro Alves  <palves@redhat.com>
6955
6956         * target.h (find_target_beneath): Delete declaration.
6957         * target.c (find_target_beneath): Delete definition.
6958         * aix-thread.c: All callers of find_target_beneath adjusted to
6959         call target_ops::beneath instead.
6960         * bsd-uthread.c: Likewise.
6961         * linux-thread-db.c: Likewise.
6962         * ravenscar-thread.c: Likewise.
6963         * sol-thread.c: Likewise.
6964         * spu-multiarch.c: Likewise.
6965
6966 2018-06-07  Pedro Alves  <palves@redhat.com>
6967
6968         * target.h (target_ops) <beneath>: Now a method.  All references
6969         updated.
6970         (target_ops) <m_beneath>: New.
6971         * target.c (target_ops::beneath): New.
6972         * corelow.c: Adjust all references to target_ops::beneath.
6973         * linux-thread-db.c: Likewise.
6974         * make-target-delegates: Likewise.
6975         * record-btrace.c: Likewise.
6976         * record-full.c: Likewise.
6977         * remote.c: Likewise.
6978         * target.c: Likewise.
6979         * target-delegates.c: Regenerate.
6980
6981 2018-06-07  Pedro Alves  <palves@redhat.com>
6982
6983         * target.h (target_stack): Delete.
6984         (current_top_target): Declare function.
6985         * target.c (target_stack): Delete.
6986         (g_current_top_target): New.
6987         (current_top_target): New function.
6988         * auxv.c: Use current_top_target instead of target_stack
6989         throughout.
6990         * avr-tdep.c: Likewise.
6991         * breakpoint.c: Likewise.
6992         * corefile.c: Likewise.
6993         * elfread.c: Likewise.
6994         * eval.c: Likewise.
6995         * exceptions.c: Likewise.
6996         * frame.c: Likewise.
6997         * gdbarch-selftests.c: Likewise.
6998         * gnu-v3-abi.c: Likewise.
6999         * ia64-tdep.c: Likewise.
7000         * ia64-vms-tdep.c: Likewise.
7001         * infcall.c: Likewise.
7002         * infcmd.c: Likewise.
7003         * infrun.c: Likewise.
7004         * linespec.c: Likewise.
7005         * linux-tdep.c: Likewise.
7006         * minsyms.c: Likewise.
7007         * ppc-linux-nat.c: Likewise.
7008         * ppc-linux-tdep.c: Likewise.
7009         * procfs.c: Likewise.
7010         * regcache.c: Likewise.
7011         * remote.c: Likewise.
7012         * rs6000-tdep.c: Likewise.
7013         * s390-linux-nat.c: Likewise.
7014         * s390-tdep.c: Likewise.
7015         * solib-aix.c: Likewise.
7016         * solib-darwin.c: Likewise.
7017         * solib-dsbt.c: Likewise.
7018         * solib-spu.c: Likewise.
7019         * solib-svr4.c: Likewise.
7020         * solib-target.c: Likewise.
7021         * sparc-tdep.c: Likewise.
7022         * sparc64-tdep.c: Likewise.
7023         * spu-tdep.c: Likewise.
7024         * symfile.c: Likewise.
7025         * symtab.c: Likewise.
7026         * target-descriptions.c: Likewise.
7027         * target-memory.c: Likewise.
7028         * target.c: Likewise.
7029         * target.h: Likewise.
7030         * tracefile-tfile.c: Likewise.
7031         * tracepoint.c: Likewise.
7032         * valops.c: Likewise.
7033         * valprint.c: Likewise.
7034         * value.c: Likewise.
7035         * windows-tdep.c: Likewise.
7036         * mi/mi-main.c: Likewise.
7037
7038 2018-06-07  Tom Tromey  <tom@tromey.com>
7039
7040         * valprint.h (build_address_symbolic): Declare.
7041         * printcmd.c (print_address_symbolic): Update.
7042         (build_address_symbolic): Change "name" and "filename" to
7043         std::string.
7044         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7045         Update.
7046         * defs.h (build_address_symbolic): Remove declaration.
7047
7048 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7049
7050         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7051         (aarch64_vnv_type): Add function.
7052         (aarch64_pseudo_register_name): Add V regs for SVE.
7053         (aarch64_pseudo_register_type): Likewise.
7054         (aarch64_pseudo_register_reggroup_p): Likewise.
7055         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7056         (aarch64_pseudo_read_value): Add V regs for SVE.
7057         (aarch64_pseudo_write_2): Use V0 offset for SVE
7058         (aarch64_pseudo_write): Add V regs for SVE.
7059         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7060
7061 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7062
7063         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7064         (sve_vl_from_vq): Likewise.
7065
7066 2018-06-05  Tom Tromey  <tom@tromey.com>
7067
7068         * cli/cli-cmds.c (show_version): Update.
7069         * top.c (print_gdb_version): Add "interactive" parameter.
7070         Update.
7071         * main.c (captured_main_1): Update.
7072         * top.h (print_gdb_version): Add "interactive" parameter and a
7073         comment.
7074
7075 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7076
7077         * common/enum-flags.h: Add trailing semicolon to example in
7078         comment.
7079
7080 2018-06-05  Tom Tromey  <tom@tromey.com>
7081
7082         PR cli/12326:
7083         * NEWS: Add entry about pager.
7084         * utils.c (pagination_disabled_for_command): New global.
7085         (prompt_for_continue): Allow "c" response to prompt.
7086         (reinitialize_more_filter): Clear
7087         pagination_disabled_for_command.
7088         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7089
7090 2018-06-04  Tom Tromey  <tom@tromey.com>
7091
7092         * ada-lang.h (ada_lookup_symbol_list): Update.
7093         * ada-lang.c (resolve_subexp): Update.
7094         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7095         parameter.
7096         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7097         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7098         results parameter to std::vector.
7099         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7100         Update.
7101         * ada-exp.y (block_lookup): Update.
7102         (select_possible_type_sym): Change type of syms.  Remove nsyms
7103         parameter.
7104         (write_var_or_type, write_name_assoc): Update.
7105
7106 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7107
7108         * windows-nat.c (windows_nat_target::xfer_partial): Return
7109         TARGET_XFER_E_IO if we need to delegate to the target beneath
7110         but BENEATH is NULL.
7111
7112 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7113
7114         * Makefile.in (config.status): Add configure.nat as a
7115         dependency.
7116
7117 2018-06-04  Tom Tromey  <tom@tromey.com>
7118
7119         * cp-name-parser.y (cpname_state): Add method declarations.
7120         (HANDLE_QUAL): Update.
7121         (cpname_state::d_grab, cpname_state::fill_comp)
7122         (cpname_state::make_operator, cpname_state::make_dtor)
7123         (cpname_state::make_builtin_type, cpname_state::make_name)
7124         (cpname_state::d_qualify, cpname_state::d_int_type)
7125         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7126         (%union): Move earlier.
7127
7128 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7129
7130         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7131
7132 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7133
7134         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7135         (aarch64_pseudo_write_1): Likewise.
7136         (aarch64_pseudo_read_value): Use helper.
7137         (aarch64_pseudo_write): Likewise.
7138
7139 2018-06-04  Pedro Alves  <palves@redhat.com>
7140
7141         * darwin-nat.c (darwin_ops): Delete.
7142         (darwin_attach_pid): Use get_native_target.
7143
7144 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7145
7146         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7147         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7148
7149 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7150
7151         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7152         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7153         (aarch64_gdbarch_init): Check for SVE.
7154         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7155
7156 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7157
7158         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7159         * aarch64-tdep.h (aarch64_read_description): Likewise.
7160         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7161         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7162         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7163         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7164         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7165
7166 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7167
7168         * value.c (value_fetch_lazy_bitfield): New.
7169         (value_fetch_lazy_memory): New.
7170         (value_fetch_lazy_register): New.
7171         (value_fetch_lazy): Factor out to smaller functions.
7172
7173 2018-06-01  Tom Tromey  <tom@tromey.com>
7174
7175         * cp-name-parser.y (backslashable, represented): Now const.
7176
7177 2018-06-01  Tom Tromey  <tom@tromey.com>
7178
7179         * cp-name-parser.y: Include parser-defs.h.
7180         (parser_fprintf): Remove declaration.
7181
7182 2018-06-01  Tom Tromey  <tom@tromey.com>
7183
7184         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7185         %parse-param.
7186         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7187         (global_result): Remove globals.
7188         (struct cpname_state): New.
7189         (yyparse): Don't declare.
7190         (yylex, yyerror): Move declarations after %union.
7191         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7192         (make_name): Add state parameter.
7193         Update all callers.
7194         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7195         parameter.
7196         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7197         Update.
7198         (yylex): Add lvalp, state parameters.
7199         (yyerror): Add state parameter.
7200         (cp_demangled_name_to_comp): Update.
7201
7202 2018-06-01  Tom Tromey  <tom@tromey.com>
7203
7204         * cp-name-parser.y (parser_fprintf): Declare.
7205         (GDB_YY_REMAP_PREFIX): Define.
7206         Include yy-remap.h.  Don't redefine yy* identifiers.
7207
7208 2018-06-01  Tom Tromey  <tom@tromey.com>
7209
7210         * python/py-type.c (typy_legacy_template_argument): Update.
7211         * cp-support.h (cp_demangled_name_to_comp): Update.
7212         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7213         parameter to be a "std::string *".
7214         (main): Update.
7215
7216 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7217
7218         * ada-lex.l: Include "diagnostics.h" instead of
7219         "common/diagnostics.h".
7220         * unittests/environ-selftests.c: Likewise.
7221         * common/diagnostics.h: Moved to ../include.
7222
7223 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7224
7225         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7226         to language_mode_manual while calling breakpoint_re_set_one.
7227
7228 2018-06-01  Tom Tromey  <tom@tromey.com>
7229
7230         * valops.c (value_cast_structs, destructor_name_p): Update.
7231         * symtab.c (gdb_mangle_name): Update.
7232         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7233         Update.
7234         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7235         (pascal_object_print_value_fields, pascal_object_print_value):
7236         Update.
7237         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7238         * linespec.c (find_methods): Update.
7239         * gdbtypes.h (type_name_no_tag): Remove.
7240         (type_name_or_error): Rename from type_name_no_tag_or_error.
7241         * gdbtypes.c (type_name_no_tag): Remove.
7242         (type_name_or_error): Rename from type_name_no_tag_or_error.
7243         (lookup_struct_elt_type, check_typedef): Update.
7244         * expprint.c (print_subexp_standard): Update.
7245         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7246         * d-namespace.c (d_lookup_nested_symbol): Update.
7247         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7248         (cp_print_class_member): Update.
7249         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7250         * completer.c (add_struct_fields): Update.
7251         * c-typeprint.c (cp_type_print_derivation_info)
7252         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7253         Update.
7254         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7255         (ada_prefer_type, ada_is_exception_sym): Update.
7256
7257 2018-06-01  Tom Tromey  <tom@tromey.com>
7258
7259         * valops.c (enum_constant_from_type, value_namespace_elt)
7260         (value_maybe_namespace_elt): Update.
7261         * valarith.c (find_size_for_pointer_math): Update.
7262         * target-descriptions.c (make_gdb_type): Update.
7263         * symmisc.c (print_symbol): Update.
7264         * stabsread.c (define_symbol, read_type)
7265         (complain_about_struct_wipeout, add_undefined_type)
7266         (cleanup_undefined_types_1): Update.
7267         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7268         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7269         (rust_internal_print_type, rust_composite_type)
7270         (rust_evaluate_funcall, rust_evaluate_subexp)
7271         (rust_inclusive_range_type_p): Update.
7272         * python/py-type.c (typy_get_tag): Update.
7273         * p-typeprint.c (pascal_type_print_base): Update.
7274         * mdebugread.c (parse_symbol, parse_type): Update.
7275         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7276         Update.
7277         * guile/scm-type.c (gdbscm_type_tag): Update.
7278         * go-lang.c (sixg_string_p): Update.
7279         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7280         Update.
7281         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7282         (TYPE_TAG_NAME): Remove.
7283         * gdbtypes.c (type_name_no_tag): Simplify.
7284         (check_typedef, check_types_equal, recursive_dump_type)
7285         (copy_type_recursive, arch_composite_type): Update.
7286         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7287         in summary mode when needed.
7288         * eval.c (evaluate_funcall): Update.
7289         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7290         (process_structure_scope, read_enumeration_type)
7291         (read_namespace_type, read_module_type, determine_prefix): Update.
7292         * cp-support.c (inspect_type): Update.
7293         * coffread.c (process_coff_symbol, decode_base_type): Update.
7294         * c-varobj.c (c_is_path_expr_parent): Update.
7295         * c-typeprint.c (c_type_print_base_struct_union): Update.
7296         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7297         summary when using C language.
7298         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7299         (gen_maybe_namespace_elt): Update.
7300         * ada-lang.c (ada_type_name): Simplify.
7301         (empty_record, ada_template_to_fixed_record_type_1)
7302         (template_to_static_fixed_type)
7303         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7304
7305 2018-06-01  Tom Tromey  <tom@tromey.com>
7306
7307         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7308         c_print_type.
7309         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7310         (c_print_type): Update.
7311         (c_print_type): New overload.
7312         (c_type_print_varspec_prefix, c_type_print_args)
7313         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7314         (c_type_print_base_struct_union, c_type_print_base_1)
7315         (cp_type_print_method_args): Add "language" parameter.
7316         (c_type_print_base): Update.
7317         * c-lang.h (c_print_type): Add new overload.
7318
7319 2018-06-01  Tom Tromey  <tom@tromey.com>
7320
7321         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7322         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7323
7324 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7325
7326         * aarch64-tdep.c (aarch64_sve_register_names): New const
7327         var.
7328         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7329         (AARCH64_SVE_Z_REGS_NUM): New define.
7330         (AARCH64_SVE_P_REGS_NUM): Likewise.
7331         (AARCH64_SVE_NUM_REGS): Likewise.
7332
7333 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7334
7335         * nat/linux-ptrace.h [__alpha__]
7336         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7337         definitions.
7338
7339 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7340
7341         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7342         the endianness selected.
7343         * NEWS: Document `set endian auto' mode operation update.
7344
7345 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7346
7347         * Makefile.in: Add new header.
7348         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7349         (sve_vl_from_vg): Likewise.
7350         (sve_vq_from_vl): Likewise.
7351         (sve_vl_from_vq): Likewise.
7352         (sve_vq_from_vg): Likewise.
7353         (sve_vg_from_vq): Likewise.
7354         * configure.nat: Add new c file.
7355         * nat/aarch64-sve-linux-ptrace.c: New file.
7356         * nat/aarch64-sve-linux-ptrace.h: New file.
7357
7358 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7359
7360         * aarch64-linux-nat.c (aarch64_linux_read_description):
7361         Add parmeter zero.
7362         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7363         Likewise.
7364         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7365         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7366         (aarch64_gdbarch_init): Add parmeter zero.
7367         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7368         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7369         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7370         parmeter.
7371         * doc/gdb.texinfo: Describe SVE feature
7372         * features/aarch64-sve.c: New file.
7373
7374 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7375
7376         PR gdb/23210
7377         * gdbarch.sh (significant_addr_bit): Default to zero when
7378         not set by target architecture.
7379         * gdbarch.c: Re-generated.
7380         * utils.c (address_significant): Update.
7381
7382 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7383
7384         * stack.c (func_command): Remove trailing newline in call to error.
7385
7386 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7387
7388         * regcache.h (regcache_raw_collect): Remove, update callers to
7389         use regcache::raw_collect.
7390         * regcache.c (regcache_raw_collect): Remove.
7391
7392 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7393
7394         * regcache.h (regcache_raw_supply): Remove, update callers to
7395         use detached_regcache::raw_supply.
7396         * regcache.c (regcache_raw_supply): Remove.
7397
7398 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7399
7400         * regcache.h (regcache_cooked_write_part): Remove, update
7401         callers to use regcache::cooked_write_part.
7402         * regcache.c (regcache_cooked_write_part): Remove.
7403
7404 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7405
7406         * regcache.h (regcache_cooked_read_part): Remove, update callers
7407         to use readable_regcache::cooked_read_part.
7408         * regcache.c (regcache_cooked_read_part): Remove.
7409
7410 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7411
7412         * regcache.h (regcache_cooked_read_value): Remove, update
7413         callers to use readable_regcache::cooked_read_value.
7414         * regcache.c (regcache_cooked_read_value): Remove.
7415
7416 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7417
7418         * regcache.h (regcache_cooked_write): Remove, update callers to
7419         use regcache::cooked_write.
7420         * regcache.c (regcache_cooked_write): Remove.
7421
7422 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7423
7424         * regcache.h (regcache_invalidate): Remove, update callers to
7425         use detached_regcache::invalidate instead.
7426         * regcache.c (regcache_invalidate): Remove.
7427
7428 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7429
7430         * regcache.h (regcache_raw_write_part): Remove, update callers
7431         to use regcache::raw_write_part instead.
7432         * regcache.c (regcache_raw_write_part): Remove.
7433
7434 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7435
7436         * regcache.h (regcache_raw_read_part): Remove, update callers to
7437         use readable_regcache::raw_read_part instead.
7438         * regcache.c (regcache_raw_read_part): Remove.
7439
7440 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7441
7442         * regcache.h (regcache_cooked_read): Remove, update callers to
7443         use readable_regcache::cooked_read instead.
7444         * regcache.c (regcache_cooked_read): Remove.
7445
7446 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7447
7448         * regcache.h (regcache_raw_write): Remove, update callers to use
7449         regcache::raw_write instead.
7450         * regcache.c (regcache_raw_write): Remove.
7451
7452 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7453
7454         * regcache.h (regcache_raw_read): Remove, update callers to use
7455         readable_regcache::raw_read instead.
7456         * regcache.c (regcache_raw_read): Remove.
7457
7458 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7459
7460         * regcache.h (regcache_raw_update): Remove, update callers to
7461         use readable_regcache::raw_update instead.
7462         * regcache.c (regcache_raw_update): Remove.
7463
7464 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7465
7466         * regcache.h (regcache_register_status): Remove, update callers
7467         to use reg_buffer::get_register_status directly instead.
7468         * regcache.c (regcache_register_status): Remove.
7469
7470 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7471
7472         * regcache.h (regcache_get_ptid): Remove, update all callers to
7473         call regcache::ptid instead.
7474         * regcache.c (regcache_get_ptid): Remove.
7475
7476 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7477
7478         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7479
7480 2018-05-30  Pedro Alves  <palves@redhat.com>
7481
7482         * common/common-exceptions.h (exception_rethrow): Use
7483         ATTRIBUTE_NORETURN.
7484
7485 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7486
7487         * breakpoint.c (print_solib_event, check_status_catch_solib):
7488         Remove struct keyword in range-based for loops.
7489         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7490         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7491         Likewise.
7492         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7493         Likewise.
7494         * symfile.c (addr_info_make_relative): Likewise.
7495         * thread.c (value_in_thread_stack_temporaries): Likewise.
7496
7497 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7498
7499         PR gdb/16841
7500         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7501         aggregate type to get its real type before accessing it.
7502
7503 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7504
7505         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7506         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7507         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7508         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7509         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7510         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7511         * printcmd.c (info_address_command): Likewise.
7512
7513 2018-05-29  Tom Tromey  <tom@tromey.com>
7514
7515         * windows-nat.c (handle_exception): Update fall-through comment.
7516
7517 2018-05-29  Tom Tromey  <tom@tromey.com>
7518
7519         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7520         (struct program_space) <added_solibs>: Now a std::vector.
7521         * breakpoint.c (print_solib_event): Update.
7522         (check_status_catch_solib): Update.
7523         * progspace.c (clear_program_space_solib_cache): Update.
7524         * solib.c (update_solib_list): Update.
7525
7526 2018-05-29  Tom Tromey  <tom@tromey.com>
7527
7528         * python/py-type.c (typy_richcompare): Update.
7529         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7530         * gdbtypes.h (types_deeply_equal): Return bool.
7531         (types_equal): Likewise.
7532         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7533         declare VEC.
7534         (check_types_equal): Change worklist to std::vector.  Return
7535         bool.
7536         (struct type_equality_entry): Add constructor.
7537         (compare_maybe_null_strings): Return bool.
7538         (check_types_worklist): Return bool.  Change worklist to
7539         std::vector.
7540         (types_deeply_equal): Use std::vector.
7541         (types_equal): Return bool.
7542         (compare_maybe_null_strings): Simplify.
7543
7544 2018-05-29  Tom Tromey  <tom@tromey.com>
7545
7546         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7547
7548 2018-05-29  Tom Tromey  <tom@tromey.com>
7549
7550         * objc-lang.h: Don't include cp-support.h.
7551         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7552         declare VEC.
7553
7554 2018-05-27  Tom Tromey  <tom@tromey.com>
7555
7556         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7557
7558 2018-05-25  Tom Tromey  <tom@tromey.com>
7559
7560         * value.c (value::location): Initialize.
7561
7562 2018-05-25  Tom Tromey  <tom@tromey.com>
7563
7564         * dbxread.c (init_bincl_list): Remove.
7565         (bincl_list): Now a std::vector.
7566         (bincls_allocated, next_bincl): Remove.
7567         (free_bincl_list, do_free_bincl_list_cleanup)
7568         (make_cleanup_free_bincl_list): Remove.
7569         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7570         unique_xmalloc_ptr.
7571         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7572         (struct header_file_location): Add constructor.
7573         (add_bincl_to_list): Remove.
7574
7575 2018-05-25  Tom Tromey  <tom@tromey.com>
7576
7577         * tui/tui.c (tui_enable): Update.
7578         * mi/mi-interp.c (mi_interp::init): Update.
7579         * interps.h (class interp) <name>: New method.
7580         <m_name>: Rename from name.
7581         (~scoped_restore_interp): Update.
7582         * interps.c (interp::interp): Update.
7583         (interp_add, interp_set, interp_lookup_existing)
7584         (current_interp_named_p): Update.
7585
7586 2018-05-25  Tom Tromey  <tom@tromey.com>
7587
7588         * interps.c (interp_name): Remove.
7589         * mi/mi-interp.c (mi_interp::init): Update.
7590         * interps.h (interp_name): Remove.
7591         (~scoped_restore_interp): Update.
7592         * tui/tui.c (tui_enable): Update.
7593
7594 2018-05-25  Tom Tromey  <tom@tromey.com>
7595
7596         * utils.c (fputs_maybe_filtered): Update.
7597         * linespec.c (decode_line_full): Update.
7598         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7599         (mi_print_breakpoint_for_event, mi_solib_loaded)
7600         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7601         (mi_user_selected_context_changed): Update.
7602         * mi/mi-main.c (mi_execute_command): Update.
7603         * cli/cli-script.c (execute_control_command): Update.
7604         * python/python.c (execute_gdb_command): Update.
7605         * solib.c (info_sharedlibrary_command): Update.
7606         * interps.c (interp_ui_out): Remove.
7607         * interps.h (interp_ui_out): Remove.
7608
7609 2018-05-25  Tom Tromey  <tom@tromey.com>
7610
7611         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7612         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7613         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7614
7615 2018-05-25  Tom Tromey  <tom@tromey.com>
7616
7617         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7618         * interps.c (interp_exec): Use scoped_restore.
7619
7620 2018-05-25  Tom Tromey  <tom@tromey.com>
7621
7622         * remote.c (remote_target::remote_file_get): Use
7623         gdb::byte_vector.
7624         (remote_target::remote_file_put): Likewise.
7625
7626 2018-05-25  Tom Tromey  <tom@tromey.com>
7627
7628         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7629         a std::string.
7630         (get_pe_section_index, add_pe_exported_sym): Update.
7631         (read_pe_exported_syms): Use gdb::def_vector.
7632
7633 2018-05-25  Tom Tromey  <tom@tromey.com>
7634
7635         * frame.c (remove_prev_frame): Remove.
7636         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7637
7638 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7639
7640         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7641         Remove prototypes.
7642         * mips-linux-nat.c (supply_fpregset): Always call
7643         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7644         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7645         `mips_fill_fpregset'.
7646         * mips-linux-tdep.c (mips_supply_fpregset)
7647         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7648         (mips_fill_fpregset_wrapper): Remove functions.
7649         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7650         (mips_linux_fpregset): Remove variable.
7651         (mips_linux_iterate_over_regset_sections): Use
7652         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7653         (mips_linux_o32_sigframe_init): Remove comment.
7654
7655 2018-05-25  Pedro Alves  <palves@redhat.com>
7656
7657         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7658         (struct readahead_cache, struct packet_reg, struct
7659         remote_arch_state, class remote_state): Move higher up in the
7660         file.
7661         (remote_target::m_remote_state): Now an object instead of a pointer.
7662         (remote_target::get_remote_state): Adjust.
7663
7664 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7665
7666         * stack.c (select_and_print_frame): Delete.
7667         (struct function_bounds): Move struct within function.
7668         (func_command): Most content moved into new function
7669         find_frame_for_function, use new function, print result, add
7670         function comment.
7671         (find_frame_for_function): New function, now returns a result.
7672
7673 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7674
7675         * stack.c (iterate_over_block_arg_vars): Fix comment.
7676         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7677
7678 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7679
7680         PR gdb/23203
7681         * frame.c
7682         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7683         Define.
7684         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7685         Define.
7686         * frame.h (class scoped_restore_selected_frame): New class.
7687         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7688         of any exception, use scoped_restore_selected_frame to restore the
7689         frame instead.
7690
7691 2018-05-24  Pedro Alves  <palves@redhat.com>
7692
7693         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7694         override.
7695
7696 2018-05-23  Tom Tromey  <tom@tromey.com>
7697
7698         * complaints.c (struct complaints): Remove.
7699         (symfile_complaint_book): Remove.
7700         (series): New global.
7701         (complaint_internal): Update.
7702         (clear_complaints): Update.
7703
7704 2018-05-23  Tom Tromey  <tom@tromey.com>
7705
7706         * complaints.c (counters): New global.
7707         (struct complain): Remove.
7708         (struct complaints) <root>: Remove.
7709         (complaint_sentinel): Remove.
7710         (symfile_complaint_book): Update.
7711         (find_complaint) Remove.
7712         (complaint_internal, clear_complaints): Update.
7713
7714 2018-05-23  Tom Tromey  <tom@tromey.com>
7715
7716         * complaints.c (struct complain) <file, line>: Remove.
7717         (find_complaint): Remove file, line parameters.
7718         (complaint_internal): Update.
7719
7720 2018-05-23  Tom Tromey  <tom@tromey.com>
7721
7722         * complaints.c (vcomplaint): Remove.
7723         (complaint_internal) Merge in contents of vcomplaint.
7724
7725 2018-05-23  Tom Tromey  <tom@tromey.com>
7726
7727         * complaints.c (struct complaints) <explanation>: Remove.
7728         (symfile_explanations): Remove.
7729         (symfile_complaint_book): Update.
7730         (vcomplaint): Update.
7731         (struct explanation): Remove.
7732
7733 2018-05-23  Tom Tromey  <tom@tromey.com>
7734
7735         * complaints.c (symfile_complaints): Remove.
7736         (complaint_internal): Remove "complaints" parameter.
7737         (clear_complaints, vcomplaint): Remove "c" parameter.
7738         (get_complaints): Remove.
7739         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7740         (dwarf2_debug_line_missing_file_complaint)
7741         (dwarf2_debug_line_missing_end_sequence_complaint)
7742         (dwarf2_complex_location_expr_complaint)
7743         (dwarf2_const_value_length_mismatch_complaint)
7744         (dwarf2_section_buffer_overflow_complaint)
7745         (dwarf2_macro_malformed_definition_complaint)
7746         (dwarf2_invalid_attrib_class_complaint)
7747         (create_addrmap_from_index, dw2_symtab_iter_next)
7748         (dw2_expand_marked_cus)
7749         (dw2_debug_names_iterator::find_vec_in_debug_names)
7750         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7751         (create_debug_type_hash_table, init_cutu_and_read_dies)
7752         (partial_die_parent_scope, add_partial_enumeration)
7753         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7754         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7755         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7756         (create_cus_hash_table, create_dwp_hash_table)
7757         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7758         (dwarf2_rnglists_process, dwarf2_ranges_process)
7759         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7760         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7761         (handle_struct_member_die, process_structure_scope)
7762         (read_array_type, read_common_block, read_module_type)
7763         (read_tag_pointer_type, read_typedef, read_base_type)
7764         (read_subrange_type, load_partial_dies, partial_die_info::read)
7765         (partial_die_info::read, partial_die_info::read)
7766         (partial_die_info::read, read_checked_initial_length_and_offset)
7767         (dwarf2_string_attr, read_formatted_entries)
7768         (dwarf_decode_line_header)
7769         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7770         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7771         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7772         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7773         (get_signatured_type, get_DW_AT_signature_type)
7774         (decode_locdesc, file_file_name, consume_improper_spaces)
7775         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7776         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7777         (dwarf2_symbol_mark_computed, set_die_type)
7778         (read_attribute_value): Update.
7779         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7780         Update.
7781         * dbxread.c (unknown_symtype_complaint)
7782         (lbrac_mismatch_complaint, repeated_header_complaint)
7783         (set_namestring, function_outside_compilation_unit_complaint)
7784         (read_dbx_symtab, process_one_symbol): Update.
7785         * gdbtypes.c (stub_noname_complaint): Update.
7786         * windows-nat.c (handle_unload_dll): Update.
7787         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7788         (decode_base_type): Update.
7789         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7790         (eb_complaint, record_include_begin, record_include_end)
7791         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7792         (process_xcoff_symbol, read_symbol)
7793         (function_outside_compilation_unit_complaint)
7794         (scan_xcoff_symtab): Update.
7795         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7796         * buildsym.c (finish_block_internal, make_blockvector)
7797         (end_symtab_get_static_block, augment_type_symtab): Update.
7798         * dtrace-probe.c (dtrace_process_dof)
7799         (dtrace_static_probe_ops::get_probes): Update.
7800         * complaints.h (struct complaint): Don't declare.
7801         (symfile_complaints): Remove.
7802         (complaint_internal): Remove "complaints" parameter.
7803         (complaint): Likewise.
7804         (clear_complaints): Likewise.
7805         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7806         (reread_symbols): Update.
7807         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7808         (dwarf2_frame_cache, decode_frame_entry): Update.
7809         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7810         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7811         (info_selectors_command): Update.
7812         * macrotab.c (macro_include, check_for_redefinition)
7813         (macro_undef): Update.
7814         * objfiles.c (filter_overlapping_sections): Update.
7815         * stabsread.c (invalid_cpp_abbrev_complaint)
7816         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7817         (define_symbol, error_type, read_type, rs6000_builtin_type)
7818         (stabs_method_name_from_physname, read_member_functions)
7819         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7820         (attach_fields_to_type, complain_about_struct_wipeout)
7821         (read_range_type, read_args, common_block_start)
7822         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7823         Update.
7824         * mdebugread.c (index_complaint, unknown_ext_complaint)
7825         (basic_type_complaint, bad_tag_guess_complaint)
7826         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7827         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7828         (parse_procedure, parse_lines)
7829         (function_outside_compilation_unit_complaint)
7830         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7831         (bad_tag_guess_complaint, reg_value_complaint): Update.
7832         * cp-support.c (demangled_name_complaint): Update.
7833         * macroscope.c (sal_macro_scope): Update.
7834         * dwarf-index-write.c (class debug_names): Update.
7835
7836 2018-05-23  Tom Tromey  <tom@tromey.com>
7837
7838         * complaints.c (clear_complaints): Remove "noisy" parameter.
7839         * complaints.h (clear_complaints): Update.
7840         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7841         (reread_symbols): Update.
7842
7843 2018-05-23  Tom Tromey  <tom@tromey.com>
7844
7845         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7846         SUBSEQUENT_MESSAGE.
7847         (vcomplaint, clear_complaints): Update.
7848         (symfile_explanations): Remove some messages.
7849
7850 2018-05-23  Tom Tromey  <tom@tromey.com>
7851
7852         * complaints.c (internal_complaint): Remove.
7853         * complaints.h (internal_complaint): Remove.
7854
7855 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7856
7857         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7858
7859 2018-05-22  Pedro Alves  <palves@redhat.com>
7860
7861         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7862         (remote_fileio_badfd, remote_fileio_return_errno)
7863         (remote_fileio_return_success, remote_fileio_func_open)
7864         (remote_fileio_func_open, remote_fileio_func_close)
7865         (remote_fileio_func_read, remote_fileio_func_write)
7866         (remote_fileio_func_lseek, remote_fileio_func_rename)
7867         (remote_fileio_func_unlink, remote_fileio_func_stat)
7868         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7869         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7870         remote_target parameter.
7871         (remote_fio_func_map) <func>: Add remote_target parameter.
7872         (do_remote_fileio_request, remote_fileio_request):
7873         * remote-fileio.h (remote_fileio_request):
7874         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7875         remote_target parameter.
7876         (remote_notif_process, handle_notification): Adjust to pass down
7877         the remote.
7878         (remote_notif_state_allocate): Add remote_target parameter.  Save
7879         it.
7880         * remote-notif.h (struct remote_target): Forward declare.
7881         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7882         remote_target parameter.
7883         (struct remote_notif_state) <remote>: New field.
7884         (remote_notif_ack, remote_notif_parse): Add remote_target
7885         parameter.
7886         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7887         remote_target parameter.
7888         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7889         (threads_listing_context, rmt_thread_action, protocol_feature)
7890         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7891         (packet_result, struct threads_listing_context, remote_state):
7892         Move definitions and declarations higher up.
7893         (remote_target) <~remote_target>: Declare.
7894         (remote_download_command_source, remote_file_put, remote_file_get)
7895         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7896         (remote_hostio_pread_vFile, remote_hostio_send_command)
7897         (remote_hostio_set_filesystem, remote_hostio_open)
7898         (remote_hostio_close, remote_hostio_unlink, remote_state)
7899         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7900         (get_memory_write_packet_size, get_memory_read_packet_size)
7901         (append_pending_thread_resumptions, remote_detach_1)
7902         (append_resumption, remote_resume_with_vcont)
7903         (add_current_inferior_and_thread, wait_ns, wait_as)
7904         (process_stop_reply, remote_notice_new_inferior)
7905         (process_initial_stop_replies, remote_add_thread)
7906         (btrace_sync_conf, remote_btrace_maybe_reopen)
7907         (remove_new_fork_children, kill_new_fork_children)
7908         (discard_pending_stop_replies, stop_reply_queue_length)
7909         (check_pending_events_prevent_wildcard_vcont)
7910         (discard_pending_stop_replies_in_queue, stop_reply)
7911         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7912         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7913         (remote_interrupt_as, remote_interrupt_ns)
7914         (remote_get_noisy_reply, remote_query_attached)
7915         (remote_add_inferior, remote_current_thread, get_current_thread)
7916         (set_thread, set_general_thread, set_continue_thread)
7917         (set_general_process, write_ptid)
7918         (remote_unpack_thread_info_response, remote_get_threadinfo)
7919         (parse_threadlist_response, remote_get_threadlist)
7920         (remote_threadlist_iterator, remote_get_threads_with_ql)
7921         (remote_get_threads_with_qxfer)
7922         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7923         (get_offsets, remote_check_symbols, remote_supported_packet)
7924         (remote_query_supported, remote_packet_size)
7925         (remote_serial_quit_handler, remote_detach_pid)
7926         (remote_vcont_probe, remote_resume_with_hc)
7927         (send_interrupt_sequence, interrupt_query)
7928         (remote_notif_get_pending_events, fetch_register_using_p)
7929         (send_g_packet, process_g_packet, fetch_registers_using_g)
7930         (store_register_using_P, store_registers_using_G)
7931         (set_remote_traceframe, check_binary_download)
7932         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7933         (remote_xfer_live_readonly_partial, remote_read_bytes)
7934         (remote_send_printf, remote_flash_write, readchar)
7935         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7936         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7937         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7938         (extended_remote_disable_randomization, extended_remote_run)
7939         (send_environment_packet, extended_remote_environment_support)
7940         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7941         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7942         (packet_command): Now methods of ...
7943         (remote_target): ... this class.
7944         (m_remote_state) <remote_target>: New field.
7945         (struct remote_state) <stop_reply_queue,
7946         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7947         fields.
7948         (remote_state::remote_state): Allocate stop_reply_queue.
7949         (remote_state): Delete global.
7950         (get_remote_state_raw): Delete.
7951         (remote_target::get_remote_state): Allocate m_remote_state on
7952         demand.
7953         (get_current_remote_target): New.
7954         (remote_ops, extended_remote_ops): Delete.
7955         (wait_forever_enabled_p, remote_async_inferior_event_token):
7956         Delete, moved to struct remote_state.
7957         (remote_target::close): Delete self.  Destruction bits split to
7958         ...
7959         (remote_target::~remote_target): ... this.
7960         (show_memory_packet_size): Adjust to use
7961         get_current_remote_target.
7962         (struct protocol_feature) <func>: Add remote_target parameter.
7963         All callers adjusted.
7964         (curr_quit_handler_target): New.
7965         (remote_serial_quit_handler): Reimplement.
7966         (remote_target::open_1): Adjust to use get_current_remote_target.
7967         Heap-allocate remote_target/extended_remote_target instances.
7968         (vcont_builder::vcont_builder): Add remote_target parameter, and
7969         save it in m_remote.  All callers adjusted.
7970         (vcont_builder::m_remote): New field.
7971         (vcont_builder::restart, vcont_builder::flush)
7972         (vcont_builder::push_action): Use it.
7973         (remote_target::commit_resume): Use it.
7974         (struct queue_iter_param) <remote>: New field.
7975         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7976         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7977         (check_pending_event_prevents_wildcard_vcont_callback)
7978         (remote_target::check_pending_events_prevent_wildcard_vcont)
7979         (remote_target::discard_pending_stop_replies)
7980         (remote_target::discard_pending_stop_replies_in_queue)
7981         (remote_target::remote_notif_remove_queued_reply): Fill in
7982         'remote' field.
7983         (remote_notif_get_pending_events): New.
7984         (remote_target::readchar, remote_target::remote_serial_write):
7985         Save/restore curr_quit_handler_target.
7986         (putpkt): New.
7987         (kill_new_fork_children): Fill in 'remote' field.
7988         (packet_command): Use get_current_remote_target, defer to
7989         remote_target method of same name.
7990         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7991         parameter, and save it in m_remote.  All callers adjusted.
7992         (scoped_remote_fd::release): Use m_remote.
7993         (scoped_remote_fd::m_remote): New field.
7994         (remote_file_put, remote_file_get, remote_file_delete): Use
7995         get_current_remote_target, defer to remote_target method of same
7996         name.
7997         (remote_btrace_reset): Add remote_state paremeter.  Update all
7998         callers.
7999         (remote_async_inferior_event_handler). Pass down 'data'.
8000         (remote_new_objfile): Use get_current_remote_target.
8001         (remote_target::vcont_r_supported): New.
8002         (set_range_stepping): Use get_current_remote_target and
8003         remote_target::vcont_r_supported.
8004         (_initialize_remote): Don't allocate 'remote_state' and
8005         'stop_reply_queue' globals.
8006         * remote.h (struct remote_target): Forward declare.
8007         (getpkt, putpkt, remote_notif_get_pending_events): Add
8008         'remote_target' parameter.
8009
8010 2018-05-22  Pedro Alves  <palves@redhat.com>
8011
8012         * remote.c (vcont_builder): Now a class.  Make all data members
8013         private.
8014         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8015         Declare methods.
8016         (vcont_builder_restart): Rename to ...
8017         (vcont_builder::restart): ... this.
8018         (vcont_builder_flush): Rename to ...
8019         (vcont_builder::flush): ... this.
8020         (vcont_builder_push_action): Rename to ...
8021         (vcont_builder::push_action): ... this.
8022         (remote_target::commit_resume): Adjust.
8023
8024 2018-05-22  Pedro Alves  <palves@redhat.com>
8025
8026         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8027         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8028         (get_fixed_memory_packet_size): New.
8029         (get_memory_packet_size): Use it.
8030         (set_memory_packet_size): Don't override the config size with
8031         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8032         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8033         Don't refer to get_memory_packet_size if not connected to a remote
8034         target.  Show "(default)" if configured size is 0.
8035
8036 2018-05-22  Pedro Alves  <palves@redhat.com>
8037
8038         * remote.c (remote_target::mourn_inferior): Move
8039         discard_pending_stop_replies call here from ...
8040         (_initialize_remote): ... here.
8041
8042 2018-05-22  Pedro Alves  <palves@redhat.com>
8043
8044         * remote.c (compare_section_command): Remove set_general_process
8045         call.
8046
8047 2018-05-22  Pedro Alves  <palves@redhat.com>
8048
8049         * remote.c (struct packet_reg, struct remote_arch_state):
8050         Move higher up in the file.
8051         (remote_state) <m_arch_states>: Store remote_arch_state values
8052         instead of remote_arch_state pointers.
8053         (remote_state::get_remote_arch_state): Adjust.
8054
8055 2018-05-22  Pedro Alves  <palves@redhat.com>
8056
8057         * remote.c: Include <unordered_map>.
8058         (remote_state): Now a class.
8059         (remote_state) <get_remote_arch_state>: Declare method.
8060         <get_remote_arch_state>: New field.
8061         (remote_arch_state) <remote_arch_state>: Declare ctor.
8062         <regs>: Now a unique_ptr.
8063         (remote_gdbarch_data_handle): Delete.
8064         (get_remote_arch_state): Delete.
8065         (remote_state::get_remote_arch_state): New.
8066         (get_remote_state): Adjust to call remote_state's
8067         get_remote_arch_state method.
8068         (init_remote_state): Delete, bits factored out to ...
8069         (remote_arch_state::remote_arch_state): ... this new method.
8070         (get_remote_packet_size, get_memory_packet_size)
8071         (process_g_packet, remote_target::fetch_registers)
8072         (remote_target::prepare_to_store, store_registers_using_G)
8073         (remote_target::store_registers, remote_target::get_trace_status):
8074         Adjust to call remote_state's method.
8075         (_initialize_remote): Remove reference to
8076         remote_gdbarch_data_handle.
8077
8078 2018-05-22  Pedro Alves  <palves@redhat.com>
8079
8080         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8081         pread>: New method declarations.
8082         (remote_target::open_1): Adjust.
8083         (readahead_cache_invalidate): Rename to ...
8084         (readahead_cache::invalidate): ... this, and adjust to be a class
8085         method.
8086         (readahead_cache_invalidate_fd): Rename to ...
8087         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8088         class method.
8089         (remote_hostio_pwrite): Adjust.
8090         (remote_hostio_pread_from_cache): Rename to ...
8091         (readahead_cache::pread): ... this, and adjust to be a class
8092         method.
8093         (remote_hostio_close): Adjust.
8094
8095 2018-05-22  Pedro Alves  <palves@redhat.com>
8096
8097         * remote.c (remote_hostio_close_cleanup): Delete.
8098         (class scoped_remote_fd): New.
8099         (remote_file_put, remote_file_get): Use it.
8100
8101 2018-05-22  Pedro Alves  <palves@redhat.com>
8102
8103         (struct vCont_action_support): Use bool and initialize all fields.
8104         (struct readahead_cache): Initialize all fields.
8105         (remote_state): Use bool and initialize all fields.
8106         (remote_state::remote_state, remote_state::~remote_state): New.
8107         (new_remote_state): Delete.
8108         (_initialize_remote): Use new to allocate remote_state.
8109
8110 2018-05-22  Pedro Alves  <palves@redhat.com>
8111             張俊芝  <zjz@zjz.name>
8112
8113         PR gdb/22973
8114         * c-exp.y: Include "c-support.h".
8115         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8116         of tolower.  Use c_ident_is_alpha to scan names.
8117         * c-lang.c: Include "c-support.h".
8118         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8119         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8120         * c-support.h: New file, with bits factored out from ...
8121         * cp-name-parser.y: ... this file.
8122         Include "c-support.h".
8123         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8124         c-support.h and renamed.
8125         (symbol_end, yylex): Adjust.
8126
8127 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8128
8129         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8130         parameter type to CORE_ADDR.
8131         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8132         parameter type in declaration to CORE_ADDR.
8133         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8134         target_auxv_search to get AT_HWCAP and use the result to get the
8135         target description.
8136         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8137         to CORE_ADDR. Remove the cast of the return value to unsigned
8138         long. Fix error predicate of target_auxv_search.
8139         (ppc_linux_nat_target::read_description): Change the type of the
8140         hwcap variable to CORE_ADDR.
8141
8142 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8143
8144         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8145         if the size of fpscr is larger than 32 bits.
8146
8147 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8148
8149         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8150         (ppc32_linux_vsxregmap): New global.
8151         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8152         regcache_supply_regset, and regcache_collect_regset.
8153         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8154         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8155         (fetch_vsx_register, store_vsx_register): Remove.
8156         (fetch_vsx_registers): Add regno parameter. Get regset using
8157         ppc_linux_vsxregset. Use regset to supply registers.
8158         (store_vsx_registers): Add regno parameter. Get regset using
8159         ppc_linux_vsxregset. Use regset to collect registers.
8160         (fetch_register): Call fetch_vsx_registers instead of
8161         fetch_vsx_register.
8162         (store_register): Call store_vsx_registers instead of
8163         store_vsx_register.
8164         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8165         new regno parameter.
8166         (store_ppc_registers): Call store_vsx_registers with -1 for the
8167         new regno parameter.
8168         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8169         (ppc_collect_vsxregset): Remove.
8170
8171 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8172
8173         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8174         offset fields.
8175         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8176         for vector register offset fields.
8177         (ppc64_fbsd_reg_offsets): Likewise.
8178         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8179         to vector register offset fields.
8180         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8181         to vector register offset fields.
8182         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8183         vector register offset fields.
8184         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8185         initializers for vector register offset fields.
8186         (rs6000_aix64_reg_offsets): Likewise.
8187         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8188         (ppc_supply_vrregset): Remove.
8189         (ppc_collect_vrregset): Remove.
8190         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8191         (ppc_linux_vrregset) : New function.
8192         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8193         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8194         (ppc32_linux_vrregset): Remove.
8195         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8196         and use result instead of ppc32_linux_vrregset.
8197         (ppc32_linux_reg_offsets): Remove initializers for vector register
8198         offset fields.
8199         (ppc64_linux_reg_offsets): Likewise.
8200         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8201         * ppc-linux-nat.c: Include regset.h.
8202         (gdb_vrregset_t): Adjust comment to account for little-endian
8203         mode.
8204         (supply_vrregset, fill_vrregset): Remove.
8205         (fetch_altivec_register, store_altivec_register): Remove.
8206         (fetch_altivec_registers): Add regno parameter. Get regset using
8207         ppc_linux_vrregset. Use regset to supply registers.
8208         (store_altivec_registers): Add regno parameter. Get regset using
8209         ppc_linux_vrregset. Use regset to collect registers.
8210         (fetch_register): Call fetch_altivec_registers instead of
8211         fetch_altivec_register.
8212         (store_register): Call store_altivec_registers instead of
8213         store_altivec_register.
8214         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8215         the new regno parameter.
8216         (store_ppc_registers): Call store_altivec_registers with -1 for
8217         the new regno parameter.
8218
8219 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8220
8221         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8222         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8223         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8224         (gdb_vrregset_t): Change array type size to
8225         PPC_LINUX_SIZEOF_VRREGSET.
8226         (gdb_vsxregset_t): Change array type size to
8227         PPC_LINUX_SIZEOF_VSXREGSET.
8228         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8229         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8230         PPC_LINUX_SIZEOF_VSXREGSET.
8231
8232 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8233
8234         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8235         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8236         nat/ppc-linux.c.
8237         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8238         ppc_linux_target_wordsize with tid.
8239         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8240         wordsize with tid.
8241         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8242         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8243         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8244         tid parameter. Remove static specifier.
8245         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8246         (ppc_linux_target_wordsize): New declaration.
8247
8248 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8249
8250         * arch/ppc-linux-common.c: New file.
8251         * arch/ppc-linux-common.h: New file.
8252         * arch/ppc-linux-tdesc.h: New file.
8253         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8254         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8255         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8256         arch/ppc-linux-tdesc.h.
8257         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8258         arch/ppc-linux-tdesc.h.
8259         (ppc_linux_nat_target::read_description): Remove target
8260         description matching code. Fill a ppc_linux_features struct and
8261         call ppc_linux_match_description with it. Move comment about ISA
8262         2.05 to ppc-linux-common.c.
8263         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8264         arch/ppc-linux-tdesc.h.
8265         (ppc_linux_core_read_description): Remove target description
8266         matching code. Fill a ppc_linux_features struct and call
8267         ppc_linux_match_description with it.
8268         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8269         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8270         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8271         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8272         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8273         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8274         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8275         (tdesc_powerpc_e500l): Remove.
8276
8277 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8278
8279         * ada-lang.c (catch_assert_command): Pass empty string instead
8280         of NULL for excep_string argument.
8281
8282 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8283
8284         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8285         the width of the requested register exceeds the width of the
8286         `ptrace' data type.
8287
8288 2018-05-21  Tom Tromey  <tom@tromey.com>
8289
8290         * printcmd.c (output_command): Remove.
8291         (output_command_const): Rename to output_command.
8292         * valprint.h (output_command): Rename from output_command_const.
8293         * tracepoint.c (trace_dump_actions): Call output_command.
8294
8295 2018-05-21  Tom Tromey  <tom@tromey.com>
8296
8297         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8298         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8299         * ada-lang.h (create_ada_exception_catchpoint): Update.
8300         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8301         std::string.
8302         (create_excep_cond_exprs, ~ada_catchpoint)
8303         (should_stop_exception, print_one_exception)
8304         (print_mention_exception, print_recreate_exception): Update.
8305         (ada_get_next_arg): Remove.
8306         (catch_ada_exception_command_split): Use std::string.  Change type
8307         of "excep_string", "cond_string".
8308         (catch_ada_exception_command): Update.
8309         (create_ada_exception_catchpoint): Change type of excep_string.
8310         (ada_exception_sal): Remove excep_string parameter.
8311         (~ada_catchpoint): Remove.
8312
8313 2018-05-21  Tom Tromey  <tom@tromey.com>
8314
8315         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8316         cleanup.
8317
8318 2018-05-21  Tom Tromey  <tom@tromey.com>
8319
8320         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8321         Return unique_xmalloc_ptr.
8322         (print_it_exception): Update.
8323
8324 2018-05-21  Tom Tromey  <tom@tromey.com>
8325
8326         * tracepoint.c (trace_dump_actions): Use std::string.
8327
8328 2018-05-21  Tom Tromey  <tom@tromey.com>
8329
8330         * symfile.c (reread_symbols): Use std::string for original_name.
8331
8332 2018-05-21  Tom Tromey  <tom@tromey.com>
8333
8334         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8335         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8336         constructor.
8337
8338 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8339
8340         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8341         instance to...
8342         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8343         * objfiles.c (get_objfile_bfd_data): Allocate
8344         objfile_per_bfd_storage with obstack_new when allocating on
8345         obstack.
8346
8347 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8348
8349         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8350         OBSTACK_ZALLOC.
8351         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8352         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8353         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8354         (add_pending): Likewise.
8355         (parse_symbol): Likewise.
8356         (parse_partial_symbols): Likewise.
8357         (psymtab_to_symtab_1): Likewise.
8358         (new_psymtab): Likewise.
8359         (elfmdebug_build_psymtabs): Likewise.
8360         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8361         * objfiles.c (get_objfile_bfd_data): Likewise.
8362         (objfile_register_static_link): Likewise.
8363         * psymtab.c (allocate_psymtab): Likewise.
8364         * stabsread.c (read_member_functions): Likewise.
8365         * xcoffread.c (xcoff_end_psymtab): Likewise.
8366
8367 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8368
8369         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8370         compiler supports std::is_trivially_constructible.
8371         * common/poison.h: Include obstack.h.
8372         (IsMallocable): Define to is_trivially_constructible if the
8373         compiler supports it, define to true_type otherwise.
8374         (xobnew): New.
8375         (XOBNEW): Redefine.
8376         (xobnewvec): New.
8377         (XOBNEWVEC): Redefine.
8378         * gdb_obstack.h (obstack_zalloc): New.
8379         (OBSTACK_ZALLOC): Redefine.
8380         (obstack_calloc): New.
8381         (OBSTACK_CALLOC): Redefine.
8382         (obstack_new): New.
8383         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8384         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8385         gdbarch.c.
8386         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8387         obstack_calloc/obstack_zalloc.
8388         (gdbarch_obstack_zalloc): Remove.
8389         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8390
8391 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8392
8393         * stack.c (backtrace_command_1): Remove useless variable int i.
8394
8395 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8396
8397         * stack.c (print_frame_info): Fix comment.
8398
8399 2018-05-18  Tom Tromey  <tom@tromey.com>
8400
8401         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8402         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8403         (~dwarf2_per_objfile): Update
8404         (dwarf2_get_dwz_file): Use new.
8405         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8406         unique_ptr.
8407
8408 2018-05-18  Tom Tromey  <tom@tromey.com>
8409
8410         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8411         unique_ptr.
8412         * dwarf2read.c (struct dwp_file): Add constructor and
8413         initializers.
8414         (open_and_init_dwp_file): Return a unique_ptr.
8415         (dwarf2_per_objfile, create_dwp_hash_table)
8416         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8417         (lookup_dwo_unit_in_dwp): Update.
8418         (open_and_init_dwp_file, get_dwp_file): Update.
8419
8420 2018-05-18  Tom Tromey  <tom@tromey.com>
8421
8422         * dwarf2read.c (dwarf2_per_objfile): Update.
8423         (struct mapped_index): Add initializers.
8424         (dwarf2_read_index): Use new.
8425         (dw2_symtab_iter_init): Update.
8426         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8427         unique_ptr.
8428
8429 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8430
8431         * dwarf2read.c (mapped_index) <total_size>: Remove.
8432
8433 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8434
8435         * unittests/format_pieces-selftests.c (test_format_specifier):
8436         Add ARI comments.
8437
8438 2018-05-18  Tom Tromey  <tom@tromey.com>
8439
8440         * c-typeprint.c (maybe_print_hole): New function.
8441         (c_print_type_struct_field_offset): Update.
8442         (c_type_print_base_struct_union): Call maybe_print_hole.
8443
8444 2018-05-17  Keith Seitz  <keiths@redhat.com>
8445
8446         * breakpoint.c (build_bpstat_chain): New function, moved from
8447         bpstat_stop_status.
8448         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8449         If no stop chain is passed, call build_bpstat_chain to build it.
8450         * breakpoint.h (build_bpstat_chain): Declare.
8451         (bpstat_stop_status): Move documentation here from breakpoint.c.
8452         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8453         build the stop chain and pass it to skip_inline_frames.
8454         Pass this stop chain to bpstat_stop_status.
8455         * inline-frame.c: Include breakpoint.h.
8456         (stopped_by_user_bp_inline_frame): New function.
8457         (skip_inline_frames): Add parameter `stop_chain'.
8458         Move documention to inline-frame.h.
8459         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8460         whether the frame should be elided.
8461         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8462         Add moved documentation and update for new parameter.
8463
8464 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8465
8466         PR cli/14975
8467         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8468         unittests/format_pieces-selftests.c.
8469         * common/format.h (format_piece) <operator==>: New.
8470         (format_pieces) <operator[]>: Remove.
8471         * common/format.c (format_pieces::format_pieces): Handle \e.
8472         * unittests/format_pieces-selftests.c: New.
8473
8474 2018-05-17  Tom Tromey  <tom@tromey.com>
8475
8476         PR symtab/23010:
8477         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8478         (dw2_instantiate_symtab): Add skip_partial parameter.
8479         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8480         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8481         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8482         (dw2_expand_symtabs_matching_one)
8483         (dw2_find_pc_sect_compunit_symtab)
8484         (dw2_debug_names_lookup_symbol)
8485         (dw2_debug_names_expand_symtabs_for_function): Update.
8486         (init_cutu_and_read_dies): Add skip_partial parameter.
8487         (process_psymtab_comp_unit, build_type_psymtabs_1)
8488         (process_skeletonless_type_unit, load_partial_comp_unit)
8489         (psymtab_to_symtab_1): Update.
8490         (load_full_comp_unit): Add skip_partial parameter.
8491         (process_imported_unit_die, dwarf2_read_addr_index)
8492         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8493         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8494         (read_signatured_type): Update.
8495
8496 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8497
8498         * value.c (release_value): Remove unused variable.
8499         (record_latest_value): Likewise.
8500         (access_value_history): Likewise.
8501         (preserve_values): Likewise.
8502
8503 2018-05-17  Tom Tromey  <tom@tromey.com>
8504
8505         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8506         Initialize.
8507
8508 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8509
8510         PR gdb/22286
8511         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8512         Also handle registers whose width is not a multiple of
8513         PTRACE_TYPE_RET.
8514         (linux_nat_trad_target::store_register): Likewise.
8515
8516 2018-05-16  Tom Tromey  <tom@tromey.com>
8517
8518         * gdbcore.h (core_bfd): Redefine.
8519         * corelow.c (core_target::close): Update.
8520         (core_target_open): Update.
8521         * progspace.h (struct program_space) <cbfd>: Now a
8522         gdb_bfd_ref_ptr.
8523
8524 2018-05-16  Tom Tromey  <tom@tromey.com>
8525
8526         PR cli/19551:
8527         * symfile-add-flags.h (enum symfile_add_flags)
8528         <SYMFILE_NOT_FILENAME>: New constant.
8529         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8530         objfile name from BFD.
8531         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8532         * minidebug.c (find_separate_debug_file_in_section): Put
8533         ".gnu_debugdata" into BFD's file name.
8534
8535 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8536
8537         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8538         Remove.
8539
8540 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8541
8542         PR binutils/21446
8543         * aarch64-tdep.c (aarch64_analyze_prologue,
8544         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8545         Indicate not interested in errors.
8546
8547 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8548
8549         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8550         Supply the MIPS_ZERO_REGNUM register.
8551
8552 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8553
8554         * mips-tdep.c (mask_address_var): Make variable static.
8555
8556 2018-05-14  Tom Tromey  <tom@tromey.com>
8557
8558         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8559
8560 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8561
8562         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8563         FXSAVE_ADDR for the mxcsr register.
8564
8565 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8566
8567         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8568
8569 2018-05-11  Pedro Alves  <palves@redhat.com>
8570
8571         * corelow.c (core_target) <core_target>: No longer inline.
8572         Initialize m_core_gdbarch, m_core_vec and build the section table
8573         here.
8574         <~core_target>: New.
8575         <core_gdbarch, get_core_register_section>: New methods.
8576         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8577         factored out from ...
8578         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8579         (core_ops): Delete.
8580         (sniff_core_bfd): Add gdbarch parameter.
8581         (core_close): Delete, merged into ...
8582         (core_target::close): ... here.  Delete self.
8583         (core_close_cleanup): Delete.
8584         (core_target_open): Allocate a core_target on the heap.  Use a
8585         unique_ptr instead of a cleanup.  Bits moved into the core_target
8586         ctor.  Adjust to use core_target methods instead of globals.
8587         (get_core_register_section): Rename to ...
8588         (core_target::get_core_register_section): ... this and adjust.
8589         (struct get_core_registers_cb_data): New.
8590         (get_core_registers_cb): Use it.  Use bool.
8591         (core_target::fetch_registers, core_target::files_info)
8592         (core_target::xfer_partial, core_target::read_description)
8593         (core_target::pid_to, core_target::thread_name): Adjust to
8594         reference class fields instead of globals.
8595         * target.h (struct target_ops_deleter, target_ops_up): New.
8596
8597 2018-05-11  Pedro Alves  <palves@redhat.com>
8598
8599         * corefile.c (core_file_command): Move to corelow.c.
8600         * corelow.c (the_core_target): Delete.
8601         (core_file_command): Moved from corefile.c.  Check exec_bfd
8602         instead of the_core_target.  Use target_detach instead of calling
8603         into the_core_target directly.
8604         (maybe_say_no_core_file_now): New.
8605         (core_target::detach): Use it.
8606         (_initialize_corelow): Remove references to the_core_target.
8607         * gdbcore.h (the_core_target): Delete.
8608
8609 2018-05-11  Tom Tromey  <tromey@redhat.com>
8610             Pedro Alves  <palves@redhat.com>
8611
8612         * corefile.c (core_bfd): Remove.
8613         * gdbcore.h (core_bfd): Now a macro.
8614         * progspace.h (struct program_space) <cbfd>: New field.
8615
8616 2018-05-11  Tom Tromey  <tom@tromey.com>
8617
8618         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8619         gdb::def_vector.
8620
8621 2018-05-10  Tom Tromey  <tom@tromey.com>
8622
8623         * configure: Rebuild.
8624         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8625
8626 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8627
8628         PR server/23158:
8629         * regformats/regdat.sh: Adjust script, following the addition
8630         of the new expedite_regs parameter to init_target_desc.
8631
8632 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8633     
8634         PR gdb/23127
8635         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8636         set_gdbarch_significant_addr_bit.
8637         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8638         set_gdbarch_significant_addr_bit.
8639         * utils.c (address_significant): Update to sign extend addr.
8640
8641 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8642
8643         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8644         (xtensa_linux_init_abi): Limit tdep->num_regs by
8645         tdep->num_nopriv_regs.
8646         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8647         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8648         not initialized.
8649
8650 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8651
8652         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8653
8654 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8655
8656         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8657         (I387_MXCSR_INIT_VAL): New constant.
8658         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8659         buffer if it was supplied by the inferior.
8660         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8661         (i387_xsave_get_clear_bv): New function.
8662         (i387_supply_xsave): Only read x87 control registers from the
8663         xsave buffer if the feature is enabled, and the state will have
8664         been written, otherwise, provide a suitable default.
8665         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8666         including x87 control registers.  Update control registers if they
8667         have changed from the default value, and mark features as enabled
8668         as required.
8669         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8670
8671 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8672
8673         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8674
8675 2018-05-07  Tom Tromey  <tom@tromey.com>
8676
8677         * configure: Rebuild.
8678         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8679
8680 2018-05-07  Tom Tromey  <tom@tromey.com>
8681
8682         PR tdep/20362:
8683         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8684         bit.  Use correct value for VDIV.
8685
8686 2018-05-04  Tom Tromey  <tom@tromey.com>
8687
8688         * configure: Rebuild.
8689         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8690
8691 2018-05-04  Tom Tromey  <tom@tromey.com>
8692
8693         * linux-record.c (record_linux_system_call) <case
8694         RECORD_SYS_RECVFROM>: Add "break".
8695
8696 2018-05-04  Tom Tromey  <tom@tromey.com>
8697
8698         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8699         Add missing "break".
8700         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8701         Add missing "break".
8702
8703 2018-05-04  Tom Tromey  <tom@tromey.com>
8704
8705         * rs6000-tdep.c (ppc_process_record_op4)
8706         (ppc_process_record_op63): Add fall-through comment.
8707
8708 2018-05-04  Tom Tromey  <tom@tromey.com>
8709
8710         * i386-tdep.c (i386_process_record): Add fall-through comment.
8711
8712 2018-05-04  Tom Tromey  <tom@tromey.com>
8713
8714         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8715         comment.
8716
8717 2018-05-04  Tom Tromey  <tom@tromey.com>
8718
8719         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8720         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8721         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8722         comment.
8723         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8724         comment.
8725         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8726         comment.
8727
8728 2018-05-04  Tom Tromey  <tom@tromey.com>
8729
8730         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8731
8732 2018-05-04  Tom Tromey  <tom@tromey.com>
8733
8734         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8735         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8736         * symfile.c (section_is_mapped): Fix fall-through comment.
8737         * stabsread.c (define_symbol, read_member_functions): Fix
8738         fall-through comment.
8739         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8740         comment.
8741         * remote.c (remote_wait_as): Fix fall-through comment.
8742         * p-exp.y (yylex): Fix fall-through comment.
8743         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8744         comment.
8745         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8746         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8747         * jv-exp.y (yylex): Fix fall-through comment.
8748         * go-exp.y (lex_one_token): Fix fall-through comment.
8749         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8750         fall-through comment.
8751         * f-exp.y (yylex): Fix fall-through comment.
8752         * dwarf2read.c (process_die): Fix fall-through comments.
8753         * dbxread.c (process_one_symbol): Fix fall-through comment.
8754         * d-exp.y (lex_one_token): Fix fall-through comment.
8755         * cp-name-parser.y (yylex): Fix fall-through comment.
8756         * coffread.c (coff_symtab_read): Fix fall-through comment.
8757         * c-exp.y (lex_one_token): Fix fall-through comment.
8758         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8759         comment.
8760         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8761         comment.
8762
8763 2018-05-04  Tom Tromey  <tom@tromey.com>
8764
8765         PR python/22730:
8766         * NEWS: Mention gdb.execute change.
8767         * gdbcmd.h (execute_control_command): Don't declare.
8768         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8769         execute_control_commands, execute_control_commands_to_string.
8770         * cli/cli-script.h (execute_control_commands)
8771         (execute_control_commands_to_string): Declare.
8772         (execute_control_command): Add from_tty parameter.
8773         * cli/cli-script.c (execute_control_commands)
8774         (execute_control_commands_to_string): New functions.
8775         (execute_user_command): Use execute_control_commands.
8776         (execute_control_command_1): Add "from_tty" parameter.  Update.
8777         (execute_control_command): Likewise.
8778
8779 2018-05-04  Tom Tromey  <tom@tromey.com>
8780
8781         PR python/22731:
8782         * NEWS: Mention that breakpoint commands are writable.
8783         * python/py-breakpoint.c (bppy_set_commands): New function.
8784         (breakpoint_object_getset) <"commands">: Use it.
8785
8786 2018-05-04  Tom Tromey  <tom@tromey.com>
8787
8788         * tracepoint.c (actions_command): Update.
8789         * mi/mi-cmd-break.c (mi_command_line_array)
8790         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8791         (mi_read_next_line): Remove.
8792         (mi_cmd_break_commands): Update.
8793         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8794         function_view.
8795         * cli/cli-script.c (get_command_line): Update.
8796         (process_next_line): Use function_view.  Constify.
8797         (recurse_read_control_structure, read_command_lines)
8798         (read_command_lines_1): Change argument types to function_view.
8799         (do_define_command, document_command): Update.
8800         * breakpoint.h (check_tracepoint_command): Don't declare.
8801         * breakpoint.c (check_tracepoint_command): Remove.
8802         (commands_command_1, create_tracepoint_from_upload): Update.
8803
8804 2018-05-04  Tom Tromey  <tom@tromey.com>
8805
8806         PR gdb/11750:
8807         * cli/cli-script.h (enum command_control_type) <define_control>:
8808         New constant.
8809         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8810         (build_command_line, execute_control_command_1)
8811         (process_next_line): Likewise.
8812         (do_define_command): New function, extracted from define_command.
8813         (define_command): Use it.
8814
8815 2018-05-04  Tom Tromey  <tom@tromey.com>
8816
8817         * tracepoint.c (actions_command): Update.
8818         * cli/cli-script.h (read_command_lines): Update.
8819         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8820         (MAX_TMPBUF): Remove define.
8821         (define_command): Use string_printf.
8822         (document_command): Likewise.
8823         * breakpoint.c (commands_command_1): Update.
8824
8825 2018-05-04  Tom Tromey  <tom@tromey.com>
8826
8827         * top.c (execute_command): Update.
8828         * cli/cli-script.h (print_command_lines): Now varargs.
8829         * cli/cli-script.c (print_command_lines): Now varargs.
8830         (execute_control_command_1) <case while_control, case if_control>:
8831         Update.
8832
8833 2018-05-04  Tom Tromey  <tom@tromey.com>
8834
8835         * tracepoint.c (all_tracepoint_actions): Rename from
8836         all_tracepoint_actions_and_cleanup.  Change return type.
8837         (actions_command, encode_actions_1, encode_actions)
8838         (trace_dump_actions, tdump_command): Update.
8839         * remote.c (remote_download_command_source): Update.
8840         * python/python.c (gdbpy_eval_from_control_command)
8841         (python_command, python_interactive_command): Update.
8842         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8843         * guile/guile.c (guile_command)
8844         (gdbscm_eval_from_control_command, guile_command): Update.
8845         * compile/compile.c (compile_code_command)
8846         (compile_print_command, compile_to_object): Update.
8847         * cli/cli-script.h (struct command_lines_deleter): New.
8848         (counted_command_line): New typedef.
8849         (struct command_line): Add constructor, destructor.
8850         <body_list>: Remove.
8851         <body_list_0, body_list_1>: New members.
8852         (command_line_up): Remove typedef.
8853         (read_command_lines, read_command_lines_1, get_command_line):
8854         Update.
8855         (copy_command_lines): Don't declare.
8856         * cli/cli-script.c (build_command_line): Use "new".
8857         (get_command_line): Return counted_command_line.
8858         (print_command_lines, execute_user_command)
8859         (execute_control_command_1, while_command, if_command): Update.
8860         (realloc_body_list): Remove.
8861         (process_next_line, recurse_read_control_structure): Update.
8862         (read_command_lines, read_command_lines_1): Return counted_command_line.
8863         (free_command_lines): Use "delete".
8864         (copy_command_lines): Remove.
8865         (define_command, document_command, show_user_1): Update.
8866         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8867         a counted_command_line.
8868         * breakpoint.h (counted_command_line): Remove typedef.
8869         (breakpoint_set_commands): Update.
8870         * breakpoint.c (check_no_tracepoint_commands)
8871         (validate_commands_for_breakpoint): Update.
8872         (breakpoint_set_commands): Change commands to be a
8873         counted_command_line.
8874         (commands_command_1, update_dprintf_command_list)
8875         (create_tracepoint_from_upload): Update.
8876
8877 2018-05-04  Tom Tromey  <tom@tromey.com>
8878
8879         * cli/cli-decode.h (cmd_list_element): New constructor.
8880         (~cmd_list_element): New destructor.
8881         (struct cmd_list_element): Add initializers.
8882         * cli/cli-decode.c (do_add_cmd): Use "new".
8883         (delete_cmd): Use "delete".
8884
8885 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8886             Pedro Alves <palves@redhat.com>
8887
8888         PR breakpoints/19806 and support for PR external/20207.
8889         * NEWS: Mention Aarch64 watchpoint improvements.
8890         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8891         watchpoints and PR external/20207 watchpoints.
8892         * nat/aarch64-linux-hw-point.c
8893         (kernel_supports_any_contiguous_range): New.
8894         (aarch64_watchpoint_offset): New.
8895         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8896         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8897         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8898         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8899         next_addr_orig_p.  Support PR external/20207 watchpoints.
8900         (aarch64_downgrade_regs): New.
8901         (aarch64_dr_state_insert_one_point): New parameters offset and
8902         addr_orig.
8903         (aarch64_dr_state_remove_one_point): Likewise.
8904         (aarch64_handle_breakpoint): Update caller.
8905         (aarch64_handle_aligned_watchpoint): Likewise.
8906         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8907         aligned_offset.
8908         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8909         aarch64_downgrade_regs.
8910         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8911         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8912         (DR_CONTROL_MASK): ... this.
8913         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8914         (unsigned int aarch64_watchpoint_offset): New prototype.
8915         (aarch64_linux_set_debug_regs): Remove const from state.
8916         * utils.c (align_up, align_down): Move to ...
8917         * common/common-utils.c (align_up, align_down): ... here.
8918         * utils.h (align_up, align_down): Move to ...
8919         * common/common-utils.h (align_up, align_down): ... here.
8920
8921 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8922
8923         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8924         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8925         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8926         Re-implement to match the ABI as summarized in GCC's
8927         gcc/config/sparc/sparc.c.  All callers updated.
8928         (sparc32_store_arguments): Remove assertion.
8929
8930 2018-05-04  Tom Tromey  <tom@tromey.com>
8931
8932         * printcmd.c: Don't include tui.h.
8933         (decode_format): Use skip_spaces.
8934
8935 2018-05-04  Tom Tromey  <tom@tromey.com>
8936
8937         PR gdb/22619:
8938         * printcmd.c (last_count): New global.
8939         (x_command): Use saved count when repeating.
8940
8941 2018-05-04  Tom Tromey  <tom@tromey.com>
8942
8943         * nto-procfs.c (do_closedir_cleanup): Remove.
8944         (procfs_pidlist): Use gdb_dir_up.
8945         * procfs.c (do_closedir_cleanup): Remove.
8946         (proc_update_threads): Use gdb_dir_up.
8947         * common/filestuff.h (struct gdb_dir_deleter): New.
8948         (gdb_dir_up): New typedef.
8949
8950 2018-05-04  Tom Tromey  <tom@tromey.com>
8951
8952         * ada-lang.c (print_mention_exception): Use std::string.
8953
8954 2018-05-04  Tom Tromey  <tom@tromey.com>
8955
8956         * ada-lang.c (create_excep_cond_exprs): Update.
8957         (ada_exception_catchpoint_cond_string): Use std::string.
8958
8959 2018-05-04  Tom Tromey  <tom@tromey.com>
8960
8961         * ada-lang.c (xget_renaming_scope): Return std::string.
8962         (old_renaming_is_invisible): Update.
8963
8964 2018-05-04  Tom Tromey  <tom@tromey.com>
8965
8966         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8967         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8968
8969 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8970
8971         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8972
8973 2018-05-04  Tom Tromey  <tom@tromey.com>
8974
8975         * remote.c (remote_query_supported_append): Change type.
8976         (remote_check_symbols): Update.
8977
8978 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8979
8980         PR gdb/11420
8981         * configure.ac: Prepend libpython.
8982         * python/python-config.py: Likewise.
8983         * configure: Regenerate.
8984
8985 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8986
8987         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8988
8989 2018-05-03  Pedro Alves  <palves@redhat.com>
8990
8991         * s390-linux-nat.c
8992         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8993         override.  Write 'true' instead of '1'.
8994         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8995         declaration.
8996
8997 2018-05-02  Pedro Alves  <palves@redhat.com>
8998
8999         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9000         add_inf_child_target.
9001         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9002         add_inf_child_target.
9003         * aix-thread.c (aix_thread_target_info): New.
9004         (aix_thread_target) <shortname, longname, doc>: Delete.
9005         <info>: New.
9006         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9007         add_inf_child_target.
9008         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9009         add_inf_child_target.
9010         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9011         add_inf_child_target.
9012         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9013         add_inf_child_target.
9014         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9015         add_inf_child_target.
9016         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9017         add_inf_child_target.
9018         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9019         add_inf_child_target.
9020         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9021         add_inf_child_target.
9022         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9023         add_inf_child_target.
9024         * bfd-target.c (target_bfd_target_info): New.
9025         (target_bfd) <shortname, longname, doc>: Delete.
9026         <info>: New.
9027         * bsd-kvm.c (bsd_kvm_target_info): New.
9028         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9029         <info>: New.
9030         (bsd_kvm_target::open): Rename to ...
9031         (bsd_kvm_target_open): ... this.  Adjust.
9032         * bsd-uthread.c (bsd_uthread_target_info): New.
9033         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9034         <info>: New.
9035         * corefile.c (core_file_command): Adjust.
9036         * corelow.c (core_target_info): New.
9037         (core_target) <shortname, longname, doc>: Delete.
9038         <info>: New.
9039         (core_target::open): Rename to ...
9040         (core_target_open): ... this.  Adjust.
9041         * ctf.c (ctf_target_info): New.
9042         (ctf_target) <shortname, longname, doc>: Delete.
9043         <info>: New.
9044         (ctf_target::open): Rename to ...
9045         (ctf_target_open): ... this.
9046         (_initialize_ctf): Adjust.
9047         * exec.c (exec_target_info): New.
9048         (exec_target) <shortname, longname, doc>: Delete.
9049         <info>: New.
9050         (exec_target::open): Rename to ...
9051         (exec_target_open): ... this.
9052         * gdbcore.h (core_target_open): Declare.
9053         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9054         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9055         add_inf_child_target.
9056         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9057         add_inf_child_target.
9058         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9059         add_inf_child_target.
9060         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9061         add_inf_child_target.
9062         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9063         add_inf_child_target.
9064         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9065         add_inf_child_target.
9066         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9067         add_inf_child_target.
9068         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9069         add_inf_child_target.
9070         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9071         add_inf_child_target.
9072         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9073         add_inf_child_target.
9074         * inf-child.c (inf_child_target_info): New.
9075         (inf_child_target::info): New.
9076         (inf_child_open_target): Remove 'target' parameter.  Use
9077         get_native_target instead.
9078         (inf_child_target::open): Delete.
9079         (add_inf_child_target): New.
9080         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9081         Delete.
9082         <info>: New.
9083         (add_inf_child_target): Declare.
9084         (inf_child_open_target): Declare.
9085         * linux-thread-db.c (thread_db_target_info): New.
9086         (thread_db_target) <shortname, longname, doc>: Delete.
9087         <info>: New.
9088         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9089         add_inf_child_target.
9090         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9091         add_inf_child_target.
9092         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9093         add_inf_child_target.
9094         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9095         add_inf_child_target.
9096         * make-target-delegates (print_class): Adjust.
9097         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9098         add_inf_child_target.
9099         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9100         add_inf_child_target.
9101         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9102         add_inf_child_target.
9103         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9104         add_inf_child_target.
9105         * nto-procfs.c (nto_native_target_info): New.
9106         (nto_procfs_target_native) <shortname, longname, doc>:
9107         Delete.
9108         <info>: New.
9109         (nto_procfs_target_info): New.
9110         (nto_procfs_target_procfs) <shortname, longname, doc>:
9111         Delete.
9112         <info>: New.
9113         (init_procfs_targets): Adjust.
9114         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9115         add_inf_child_target.
9116         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9117         add_inf_child_target.
9118         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9119         add_inf_child_target.
9120         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9121         add_inf_child_target.
9122         * ravenscar-thread.c (ravenscar_target_info): New.
9123         (ravenscar_thread_target) <shortname, longname, doc>:
9124         Delete.
9125         <info>: New.
9126         * record-btrace.c (record_btrace_target_info):
9127         (record_btrace_target) <shortname, longname, doc>: Delete.
9128         <info>: New.
9129         (record_btrace_target::open): Rename to ...
9130         (record_btrace_target_open): ... this.  Adjust.
9131         * record-full.c (record_longname, record_doc): New.
9132         (record_full_base_target) <shortname, longname, doc>: Delete.
9133         <info>: New.
9134         (record_full_target_info): New.
9135         (record_full_target): <shortname>: Delete.
9136         <info>: New.
9137         (record_full_core_open_1, record_full_open_1): Update comments.
9138         (record_full_base_target::open): Rename to ...
9139         (record_full_open): ... this.
9140         (cmd_record_full_restore): Update.
9141         (_initialize_record_full): Update.
9142         * remote-sim.c (remote_sim_target_info): New.
9143         (gdbsim_target) <shortname, longname, doc>: Delete.
9144         <info>: New.
9145         (gdbsim_target::open): Rename to ...
9146         (gdbsim_target_open): ... this.
9147         (_initialize_remote_sim): Adjust.
9148         * remote.c (remote_doc): New.
9149         (remote_target_info): New.
9150         (remote_target) <shortname, longname, doc>: Delete.
9151         <info>: New.
9152         (extended_remote_target_info): New.
9153         (extended_remote_target) <shortname, longname, doc>: Delete.
9154         <info>: New.
9155         (remote_target::open_1): Make static.  Adjust.
9156         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9157         * s390-linux-nat.c (_initialize_s390_nat): Use
9158         add_inf_child_target.
9159         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9160         add_inf_child_target.
9161         * sol-thread.c (thread_db_target_info): New.
9162         (sol_thread_target) <shortname, longname, doc>: Delete.
9163         <info>: New.
9164         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9165         add_inf_child_target.
9166         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9167         add_inf_child_target.
9168         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9169         add_inf_child_target.
9170         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9171         add_inf_child_target.
9172         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9173         add_inf_child_target.
9174         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9175         add_inf_child_target.
9176         * spu-linux-nat.c (_initialize_spu_nat): Use
9177         add_inf_child_target.
9178         * spu-multiarch.c (spu_multiarch_target_info): New.
9179         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9180         <info>: New.
9181         * target-delegates.c: Regenerate.
9182         * target.c: Include <unordered_map>.
9183         (target_ops_p): Delete.
9184         (DEF_VEC_P(target_ops_p)): Delete.
9185         (target_factories): New.
9186         (test_target_info): New.
9187         (test_target_ops::info): New.
9188         (open_target): Adjust to use target_factories.
9189         (add_target_with_completer): Rename to ...
9190         (add_target): ... this.  Change prototype.  Register target_info
9191         and open callback in target_factories.  Register target_info in
9192         command context instead of target_ops.
9193         (add_target): Delete old implementation.
9194         (add_deprecated_target_alias): Change prototype.  Adjust.
9195         (the_native_target): New.
9196         (set_native_target, get_native_target): New.
9197         (find_default_run_target): Use the_native_target.
9198         (find_attach_target, find_run_target): Simplify.
9199         (target_ops::open): Delete.
9200         (dummy_target_info): New.
9201         (dummy_target::shortname, dummy_target::longname)
9202         (dummy_target::doc): Delete.
9203         (dummy_target::info): New.
9204         (debug_target::shortname, debug_target::longname)
9205         (debug_target::doc): Delete.
9206         (debug_target::info): New.
9207         * target.h (struct target_info): New.
9208         (target_ops::~target_ops): Add comment.
9209         (target_ops::info): New.
9210         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9211         longer virtual.  Implement in terms of target_info.
9212         (set_native_target, get_native_target): Declare.
9213         (target_open_ftype): New.
9214         (add_target, add_target_with_completer)
9215         (add_deprecated_target_alias): Change prototype.
9216         (test_target) <shortname, longname, doc>: Delete.
9217         <info>: New.
9218         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9219         add_inf_child_target.
9220         * tracefile-tfile.c (tfile_target_info): New.
9221         (tfile_target) <shortname, longname, doc>: Delete.
9222         <info>: New.
9223         (tfile_target::open): Rename to ...
9224         (tfile_target_open): ... this.
9225         (_initialize_tracefile_tfile): Adjust.
9226         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9227         add_inf_child_target.
9228         * windows-nat.c (_initialize_windows_nat): Use
9229         add_inf_child_target.
9230         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9231         add_inf_child_target.
9232
9233 2018-05-02  Pedro Alves  <palves@redhat.com>
9234
9235         * linux-nat.h (linux_nat_target) <low_new_thread,
9236         low_delete_thread, low_new_fork, low_forget_process,
9237         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9238         New virtual methods.
9239         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9240         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9241         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9242         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9243         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9244         Delete.
9245         * linux-fork.c (delete_fork): Adjust to call low method.
9246         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9247         (linux_nat_new_fork, linux_nat_forget_process_hook)
9248         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9249         (linux_nat_status_is_event):
9250         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9251         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9252         to call low method.
9253         (sigtrap_is_event): Rename to ...
9254         (linux_nat_target::low_status_is_event): ... this.
9255         (linux_nat_set_status_is_event): Delete.
9256         (save_stop_reason, linux_nat_wait_1)
9257         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9258         low methods.
9259         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9260         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9261         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9262         (linux_nat_set_prepare_to_resume): Delete.
9263         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9264         low virtual methods.
9265         * amd64-linux-nat.c: Likewise.
9266         * arm-linux-nat.c: Likewise.
9267         * i386-linux-nat.c: Likewise.
9268         * ia64-linux-nat.c: Likewise.
9269         * mips-linux-nat.c: Likewise.
9270         * ppc-linux-nat.c: Likewise.
9271         * s390-linux-nat.c: Likewise.
9272         * sparc64-linux-nat.c: Likewise.
9273         * x86-linux-nat.c: Likewise.
9274         * x86-linux-nat.h: Include "nat/x86-linux.h".
9275         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9276         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9277         Override methods.
9278
9279 2018-05-02  Pedro Alves  <palves@redhat.com>
9280
9281         * target.h (target_ops)
9282         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9283         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9284         stopped_by_watchpoint, have_continuable_watchpoint,
9285         stopped_data_address, watchpoint_addr_within_range,
9286         can_accel_watchpoint_condition, can_run, thread_alive,
9287         has_all_memory, has_memory, has_stack, has_registers,
9288         has_execution, can_async_p, is_async_p, supports_non_stop,
9289         always_non_stop_p, can_execute_reverse, supports_multi_process,
9290         supports_enable_disable_tracepoint,
9291         supports_disable_randomization, supports_string_tracing,
9292         supports_evaluation_of_breakpoint_conditions,
9293         can_run_breakpoint_commands, filesystem_is_local,
9294         can_download_tracepoint, get_trace_state_variable_value,
9295         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9296         record_is_replaying, record_will_replay,
9297         augmented_libraries_svr4_read>: Adjust to return bool.
9298         * aarch64-linux-nat.c: All implementations adjusted.
9299         * aix-thread.c: All implementations adjusted.
9300         * arm-linux-nat.c: All implementations adjusted.
9301         * breakpoint.c: All implementations adjusted.
9302         * bsd-kvm.c: All implementations adjusted.
9303         * bsd-uthread.c: All implementations adjusted.
9304         * corelow.c: All implementations adjusted.
9305         * ctf.c: All implementations adjusted.
9306         * darwin-nat.c: All implementations adjusted.
9307         * darwin-nat.h: All implementations adjusted.
9308         * exec.c: All implementations adjusted.
9309         * fbsd-nat.c: All implementations adjusted.
9310         * fbsd-nat.h: All implementations adjusted.
9311         * gnu-nat.c: All implementations adjusted.
9312         * gnu-nat.h: All implementations adjusted.
9313         * go32-nat.c: All implementations adjusted.
9314         * ia64-linux-nat.c: All implementations adjusted.
9315         * inf-child.c: All implementations adjusted.
9316         * inf-child.h: All implementations adjusted.
9317         * inf-ptrace.c: All implementations adjusted.
9318         * inf-ptrace.h: All implementations adjusted.
9319         * linux-nat.c: All implementations adjusted.
9320         * linux-nat.h: All implementations adjusted.
9321         * mips-linux-nat.c: All implementations adjusted.
9322         * nto-procfs.c: All implementations adjusted.
9323         * ppc-linux-nat.c: All implementations adjusted.
9324         * procfs.c: All implementations adjusted.
9325         * ravenscar-thread.c: All implementations adjusted.
9326         * record-btrace.c: All implementations adjusted.
9327         * record-full.c: All implementations adjusted.
9328         * remote-sim.c: All implementations adjusted.
9329         * remote.c: All implementations adjusted.
9330         * s390-linux-nat.c: All implementations adjusted.
9331         * sol-thread.c: All implementations adjusted.
9332         * spu-multiarch.c: All implementations adjusted.
9333         * target-delegates.c: All implementations adjusted.
9334         * target.c: All implementations adjusted.
9335         * target.h: All implementations adjusted.
9336         * tracefile-tfile.c: All implementations adjusted.
9337         * tracefile.c: All implementations adjusted.
9338         * tracefile.h: All implementations adjusted.
9339         * windows-nat.c: All implementations adjusted.
9340         * x86-linux-nat.h: All implementations adjusted.
9341         * x86-nat.h: All implementations adjusted.
9342
9343 2018-05-02  Pedro Alves  <palves@redhat.com>
9344
9345         * make-target-delegates (scan_target_h): Don't trim lines here.
9346         Replace sequences of tabs and/or whitespace with a single
9347         whitespace.
9348         (top level, parsing methods): Trim each line before processing it
9349         here.
9350
9351 2018-05-02  Pedro Alves  <palves@redhat.com>
9352             John Baldwin  <jhb@freebsd.org>
9353
9354         * target.h (enum strata) <debug_stratum>: New.
9355         (struct target_ops) <all delegation methods>: Replace by C++
9356         virtual methods, and drop "to_" prefix.  All references updated
9357         throughout.
9358         <to_shortname, to_longname, to_doc, to_data,
9359         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9360         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9361         virtual methods.  All references updated throughout.
9362         <can_attach, supports_terminal_ours, can_create_inferior,
9363         get_thread_control_capabilities, attach_no_wait>: New
9364         virtual methods.
9365         <insert_breakpoint, remove_breakpoint>: Now
9366         TARGET_DEFAULT_NORETURN methods.
9367         <info_proc>: Now returns bool.
9368         <to_magic>: Delete.
9369         (OPS_MAGIC): Delete.
9370         (current_target): Delete.  All references replaced by references
9371         to ...
9372         (target_stack): ... this.  New.
9373         (target_shortname, target_longname): Adjust.
9374         (target_can_run): Now a function declaration.
9375         (default_child_has_all_memory, default_child_has_memory)
9376         (default_child_has_stack, default_child_has_registers)
9377         (default_child_has_execution): Remove target_ops parameter.
9378         (complete_target_initialization): Delete.
9379         (memory_breakpoint_target): New template class.
9380         (test_target_ops): Refactor as a C++ class with virtual methods.
9381         * make-target-delegates (NAME_PART): Tighten.
9382         (POINTER_PART, CP_SYMBOL): New.
9383         (SIMPLE_RETURN_PART): Reimplement.
9384         (VEC_RETURN_PART): Expect less.
9385         (RETURN_PART, VIRTUAL_PART): New.
9386         (METHOD): Adjust to C++ virtual methods.
9387         (scan_target_h): Remove reference to C99.
9388         (dname): Output "target_ops::" prefix.
9389         (write_function_header): Adjust to output a C++ class method.
9390         (write_declaration): New.
9391         (write_delegator): Adjust to output a C++ class method.
9392         (tdname): Output "dummy_target::" prefix.
9393         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9394         method.
9395         (tdefault_names, debug_names): Delete.
9396         (return_types, tdefaults, styles, argtypes_array): New.
9397         (top level): All methods are delegators.
9398         (print_class): New.
9399         (top level): Print dummy_target and debug_target classes.
9400         * target-delegates.c: Regenerate.
9401         * target-debug.h (target_debug_print_enum_info_proc_what)
9402         (target_debug_print_thread_control_capabilities)
9403         (target_debug_print_thread_info_p): New.
9404         * target.c (dummy_target): Delete.
9405         (the_dummy_target, the_debug_target): New.
9406         (target_stack): Now extern.
9407         (set_targetdebug): Push/unpush debug target.
9408         (default_child_has_all_memory, default_child_has_memory)
9409         (default_child_has_stack, default_child_has_registers)
9410         (default_child_has_execution): Remove target_ops parameter.
9411         (complete_target_initialization): Delete.
9412         (add_target_with_completer): No longer call
9413         complete_target_initialization.
9414         (target_supports_terminal_ours): Use regular delegation.
9415         (update_current_target): Delete.
9416         (push_target): No longer check magic number.  Don't call
9417         update_current_target.
9418         (unpush_target): Don't call update_current_target.
9419         (target_is_pushed): No longer check magic number.
9420         (target_require_runnable): Skip for all stratums over
9421         process_stratum.
9422         (target_ops::info_proc): New.
9423         (target_info_proc): Use find_target_at and
9424         find_default_run_target.
9425         (target_supports_disable_randomization): Use regular delegation.
9426         (target_get_osdata): Use find_target_at.
9427         (target_ops::open, target_ops::close, target_ops::can_attach)
9428         (target_ops::attach, target_ops::can_create_inferior)
9429         (target_ops::create_inferior, target_ops::can_run)
9430         (target_can_run): New.
9431         (default_fileio_target): Use regular delegation.
9432         (target_ops::fileio_open, target_ops::fileio_pwrite)
9433         (target_ops::fileio_pread, target_ops::fileio_fstat)
9434         (target_ops::fileio_close, target_ops::fileio_unlink)
9435         (target_ops::fileio_readlink): New.
9436         (target_fileio_open_1, target_fileio_unlink)
9437         (target_fileio_readlink): Always call the target method.  Handle
9438         FILEIO_ENOSYS.
9439         (return_zero, return_zero_has_execution): Delete.
9440         (init_dummy_target): Delete.
9441         (dummy_target::dummy_target, dummy_target::shortname)
9442         (dummy_target::longname, dummy_target::doc)
9443         (debug_target::debug_target, debug_target::shortname)
9444         (debug_target::longname, debug_target::doc): New.
9445         (target_supports_delete_record): Use regular delegation.
9446         (setup_target_debug): Delete.
9447         (maintenance_print_target_stack): Skip debug_stratum.
9448         (initialize_targets): Instantiate the_dummy_target and
9449         the_debug_target.
9450         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9451         use target_stack.
9452         (target_auxv_search, fprint_target_auxv): Adjust.
9453         (info_auxv_command): Adjust to use target_stack.
9454         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9455         * exceptions.c (print_flush): Handle a NULL target_stack.
9456         * regcache.c (target_ops_no_register): Refactor as class with
9457         virtual methods.
9458
9459         * exec.c (exec_target): New class.
9460         (exec_ops): Now an exec_target.
9461         (exec_open, exec_close_1, exec_get_section_table)
9462         (exec_xfer_partial, exec_files_info, exec_has_memory)
9463         (exec_make_note_section): Refactor as exec_target methods.
9464         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9465         Delete.
9466         (exec_target::find_memory_regions): New.
9467         (_initialize_exec): Don't call init_exec_ops.
9468         * gdbcore.h (exec_file_clear): Delete.
9469
9470         * corefile.c (core_target): Delete.
9471         (core_file_command): Adjust.
9472         * corelow.c (core_target): New class.
9473         (the_core_target): New.
9474         (core_close): Remove target_ops parameter.
9475         (core_close_cleanup): Adjust.
9476         (core_target::close): New.
9477         (core_open, core_detach, get_core_registers, core_files_info)
9478         (core_xfer_partial, core_thread_alive, core_read_description)
9479         (core_pid_to_str, core_thread_name, core_has_memory)
9480         (core_has_stack, core_has_registers, core_info_proc): Rework as
9481         core_target methods.
9482         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9483         (_initialize_corelow): Initialize the_core_target.
9484         * gdbcore.h (core_target): Delete.
9485         (the_core_target): New.
9486
9487         * ctf.c: (ctf_target): New class.
9488         (ctf_ops): Now a ctf_target.
9489         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9490         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9491         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9492         methods.
9493         (init_ctf_ops): Delete.
9494         (_initialize_ctf): Don't call it.
9495         * tracefile-tfile.c (tfile_target): New class.
9496         (tfile_ops): Now a tfile_target.
9497         (tfile_open, tfile_close, tfile_files_info)
9498         (tfile_get_tracepoint_status, tfile_trace_find)
9499         (tfile_fetch_registers, tfile_xfer_partial)
9500         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9501         Refactor as tfile_target methods.
9502         (tfile_xfer_partial_features): Remove target_ops parameter.
9503         (init_tfile_ops): Delete.
9504         (_initialize_tracefile_tfile): Don't call it.
9505         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9506         (tracefile_has_stack, tracefile_has_registers)
9507         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9508         tracefile_target methods.
9509         (init_tracefile_ops): Delete.
9510         (tracefile_target::tracefile_target): New.
9511         * tracefile.h: Include "target.h".
9512         (tracefile_target): New class.
9513         (init_tracefile_ops): Delete.
9514
9515         * spu-multiarch.c (spu_multiarch_target): New class.
9516         (spu_ops): Now a spu_multiarch_target.
9517         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9518         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9519         (spu_search_memory, spu_mourn_inferior): Refactor as
9520         spu_multiarch_target methods.
9521         (init_spu_ops): Delete.
9522         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9523         complete_target_initialization.
9524
9525         * ravenscar-thread.c (ravenscar_thread_target): New class.
9526         (ravenscar_ops): Now a ravenscar_thread_target.
9527         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9528         (ravenscar_thread_alive, ravenscar_pid_to_str)
9529         (ravenscar_fetch_registers, ravenscar_store_registers)
9530         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9531         (ravenscar_stopped_by_hw_breakpoint)
9532         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9533         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9534         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9535         methods.
9536         (init_ravenscar_thread_ops): Delete.
9537         (_initialize_ravenscar): Remove references to
9538         init_ravenscar_thread_ops and complete_target_initialization.
9539
9540         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9541         (bsd_uthread_target): New class.
9542         (bsd_uthread_ops): Now a bsd_uthread_target.
9543         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9544         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9545         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9546         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9547         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9548         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9549         (bsd_uthread_target): Delete function.
9550         (_initialize_bsd_uthread): Remove reference to
9551         complete_target_initialization.
9552
9553         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9554         (target_bfd): ... this new class.
9555         (target_bfd_xfer_partial, target_bfd_get_section_table)
9556         (target_bfd_close): Refactor as target_bfd methods.
9557         (target_bfd::~target_bfd): New.
9558         (target_bfd_reopen): Adjust.
9559         (target_bfd::close): New.
9560
9561         * record-btrace.c (record_btrace_target): New class.
9562         (record_btrace_ops): Now a record_btrace_target.
9563         (record_btrace_open, record_btrace_stop_recording)
9564         (record_btrace_disconnect, record_btrace_close)
9565         (record_btrace_async, record_btrace_info)
9566         (record_btrace_insn_history, record_btrace_insn_history_range)
9567         (record_btrace_insn_history_from, record_btrace_call_history)
9568         (record_btrace_call_history_range)
9569         (record_btrace_call_history_from, record_btrace_record_method)
9570         (record_btrace_is_replaying, record_btrace_will_replay)
9571         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9572         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9573         (record_btrace_store_registers, record_btrace_prepare_to_store)
9574         (record_btrace_to_get_unwinder)
9575         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9576         (record_btrace_commit_resume, record_btrace_wait)
9577         (record_btrace_stop, record_btrace_can_execute_reverse)
9578         (record_btrace_stopped_by_sw_breakpoint)
9579         (record_btrace_supports_stopped_by_sw_breakpoint)
9580         (record_btrace_stopped_by_hw_breakpoint)
9581         (record_btrace_supports_stopped_by_hw_breakpoint)
9582         (record_btrace_update_thread_list, record_btrace_thread_alive)
9583         (record_btrace_goto_begin, record_btrace_goto_end)
9584         (record_btrace_goto, record_btrace_stop_replaying_all)
9585         (record_btrace_execution_direction)
9586         (record_btrace_prepare_to_generate_core)
9587         (record_btrace_done_generating_core): Refactor as
9588         record_btrace_target methods.
9589         (init_record_btrace_ops): Delete.
9590         (_initialize_record_btrace): Remove reference to
9591         init_record_btrace_ops.
9592         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9593         the execution_direction global.
9594         (record_full_base_target, record_full_target)
9595         (record_full_core_target): New classes.
9596         (record_full_ops): Now a record_full_target.
9597         (record_full_core_ops): Now a record_full_core_target.
9598         (record_full_target::detach, record_full_target::disconnect)
9599         (record_full_core_target::disconnect)
9600         (record_full_target::mourn_inferior, record_full_target::kill):
9601         New.
9602         (record_full_open, record_full_close, record_full_async): Refactor
9603         as methods of the record_full_base_target class.
9604         (record_full_resume, record_full_commit_resume): Refactor
9605         as methods of the record_full_target class.
9606         (record_full_wait, record_full_stopped_by_watchpoint)
9607         (record_full_stopped_data_address)
9608         (record_full_stopped_by_sw_breakpoint)
9609         (record_full_supports_stopped_by_sw_breakpoint)
9610         (record_full_stopped_by_hw_breakpoint)
9611         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9612         methods of the record_full_base_target class.
9613         (record_full_store_registers, record_full_xfer_partial)
9614         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9615         Refactor as methods of the record_full_target class.
9616         (record_full_can_execute_reverse, record_full_get_bookmark)
9617         (record_full_goto_bookmark, record_full_execution_direction)
9618         (record_full_record_method, record_full_info, record_full_delete)
9619         (record_full_is_replaying, record_full_will_replay)
9620         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9621         (record_full_stop_replaying): Refactor as methods of the
9622         record_full_base_target class.
9623         (record_full_core_resume, record_full_core_kill)
9624         (record_full_core_fetch_registers)
9625         (record_full_core_prepare_to_store)
9626         (record_full_core_store_registers, record_full_core_xfer_partial)
9627         (record_full_core_insert_breakpoint)
9628         (record_full_core_remove_breakpoint)
9629         (record_full_core_has_execution): Refactor
9630         as methods of the record_full_core_target class.
9631         (record_full_base_target::supports_delete_record): New.
9632         (init_record_full_ops): Delete.
9633         (init_record_full_core_ops): Delete.
9634         (record_full_save): Refactor as method of the
9635         record_full_base_target class.
9636         (_initialize_record_full): Remove references to
9637         init_record_full_ops and init_record_full_core_ops.
9638
9639         * remote.c (remote_target, extended_remote_target): New classes.
9640         (remote_ops): Now a remote_target.
9641         (extended_remote_ops): Now an extended_remote_target.
9642         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9643         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9644         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9645         (remote_pass_signals, remote_set_syscall_catchpoint)
9646         (remote_program_signals, )
9647         (remote_thread_always_alive): Remove target_ops parameter.
9648         (remote_thread_alive, remote_thread_name)
9649         (remote_update_thread_list, remote_threads_extra_info)
9650         (remote_static_tracepoint_marker_at)
9651         (remote_static_tracepoint_markers_by_strid)
9652         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9653         (remote_open): Refactor as methods of remote_target.
9654         (extended_remote_open, extended_remote_detach)
9655         (extended_remote_attach, extended_remote_post_attach):
9656         (extended_remote_supports_disable_randomization)
9657         (extended_remote_create_inferior): : Refactor as method of
9658         extended_remote_target.
9659         (remote_set_permissions, remote_open_1, remote_detach)
9660         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9661         (remote_resume, remote_commit_resume, remote_stop)
9662         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9663         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9664         (remote_prepare_to_store, remote_store_registers)
9665         (remote_flash_erase, remote_flash_done, remote_files_info)
9666         (remote_kill, remote_mourn, remote_insert_breakpoint)
9667         (remote_remove_breakpoint, remote_insert_watchpoint)
9668         (remote_watchpoint_addr_within_range)
9669         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9670         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9671         (remote_supports_stopped_by_sw_breakpoint)
9672         (remote_stopped_by_hw_breakpoint)
9673         (remote_supports_stopped_by_hw_breakpoint)
9674         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9675         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9676         (remote_verify_memory): Refactor as methods of remote_target.
9677         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9678         parameter.
9679         (remote_xfer_partial, remote_get_memory_xfer_limit)
9680         (remote_search_memory, remote_rcmd, remote_memory_map)
9681         (remote_pid_to_str, remote_get_thread_local_address)
9682         (remote_get_tib_address, remote_read_description): Refactor as
9683         methods of remote_target.
9684         (remote_target::fileio_open, remote_target::fileio_pwrite)
9685         (remote_target::fileio_pread, remote_target::fileio_close): New.
9686         (remote_hostio_readlink, remote_hostio_fstat)
9687         (remote_filesystem_is_local, remote_can_execute_reverse)
9688         (remote_supports_non_stop, remote_supports_disable_randomization)
9689         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9690         (remote_supports_enable_disable_tracepoint)
9691         (remote_supports_string_tracing)
9692         (remote_can_run_breakpoint_commands, remote_trace_init)
9693         (remote_download_tracepoint, remote_can_download_tracepoint)
9694         (remote_download_trace_state_variable, remote_enable_tracepoint)
9695         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9696         (remote_trace_start, remote_get_trace_status)
9697         (remote_get_tracepoint_status, remote_trace_stop)
9698         (remote_trace_find, remote_get_trace_state_variable_value)
9699         (remote_save_trace_data, remote_get_raw_trace_data)
9700         (remote_set_disconnected_tracing, remote_core_of_thread)
9701         (remote_set_circular_trace_buffer, remote_traceframe_info)
9702         (remote_get_min_fast_tracepoint_insn_len)
9703         (remote_set_trace_buffer_size, remote_set_trace_notes)
9704         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9705         (remote_disable_btrace, remote_teardown_btrace)
9706         (remote_read_btrace, remote_btrace_conf)
9707         (remote_augmented_libraries_svr4_read, remote_load)
9708         (remote_pid_to_exec_file, remote_can_do_single_step)
9709         (remote_execution_direction, remote_thread_handle_to_thread_info):
9710         Refactor as methods of remote_target.
9711         (init_remote_ops, init_extended_remote_ops): Delete.
9712         (remote_can_async_p, remote_is_async_p, remote_async)
9713         (remote_thread_events, remote_upload_tracepoints)
9714         (remote_upload_trace_state_variables): Refactor as methods of
9715         remote_target.
9716         (_initialize_remote): Remove references to init_remote_ops and
9717         init_extended_remote_ops.
9718
9719         * remote-sim.c (gdbsim_target): New class.
9720         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9721         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9722         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9723         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9724         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9725         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9726         Refactor as methods of gdbsim_target.
9727         (gdbsim_ops): Now a gdbsim_target.
9728         (init_gdbsim_ops): Delete.
9729         (gdbsim_cntrl_c): Adjust.
9730         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9731
9732         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9733         (the_amd64_linux_nat_target): New.
9734         (amd64_linux_fetch_inferior_registers)
9735         (amd64_linux_store_inferior_registers): Refactor as methods of
9736         amd64_linux_nat_target.
9737         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9738         * i386-linux-nat.c: Don't include "linux-nat.h".
9739         (i386_linux_nat_target): New class.
9740         (the_i386_linux_nat_target): New.
9741         (i386_linux_fetch_inferior_registers)
9742         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9743         as methods of i386_linux_nat_target.
9744         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9745         * inf-child.c (inf_child_ops): Delete.
9746         (inf_child_fetch_inferior_registers)
9747         (inf_child_store_inferior_registers): Delete.
9748         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9749         methods of inf_child_target.
9750         (inf_child_target::supports_terminal_ours)
9751         (inf_child_target::terminal_init)
9752         (inf_child_target::terminal_inferior)
9753         (inf_child_target::terminal_ours_for_output)
9754         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9755         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9756         New.
9757         (inf_child_open, inf_child_disconnect, inf_child_close)
9758         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9759         (inf_child_post_startup_inferior, inf_child_can_run)
9760         (inf_child_pid_to_exec_file): Refactor as methods of
9761         inf_child_target.
9762         (inf_child_follow_fork): Delete.
9763         (inf_child_target::can_create_inferior)
9764         (inf_child_target::can_attach): New.
9765         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9766         (inf_child_target::has_stack, inf_child_target::has_registers)
9767         (inf_child_target::has_execution): New.
9768         (inf_child_fileio_open, inf_child_fileio_pwrite)
9769         (inf_child_fileio_pread, inf_child_fileio_fstat)
9770         (inf_child_fileio_close, inf_child_fileio_unlink)
9771         (inf_child_fileio_readlink, inf_child_use_agent)
9772         (inf_child_can_use_agent): Refactor as methods of
9773         inf_child_target.
9774         (return_zero, inf_child_target): Delete.
9775         (inf_child_target::inf_child_target): New.
9776         * inf-child.h: Include "target.h".
9777         (inf_child_target): Delete function prototype.
9778         (inf_child_target): New class.
9779         (inf_child_open_target, inf_child_mourn_inferior)
9780         (inf_child_maybe_unpush_target): Delete.
9781         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9782         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9783         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9784         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9785         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9786         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9787         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9788         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9789         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9790         methods of inf_ptrace_target.
9791         (inf_ptrace_target): Delete function.
9792         * inf-ptrace.h: Include "inf-child.h".
9793         (inf_ptrace_target): Delete function declaration.
9794         (inf_ptrace_target): New class.
9795         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9796         * linux-nat.c (linux_target): New.
9797         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9798         (linux_nat_target::~linux_nat_target): New.
9799         (linux_child_post_attach, linux_child_post_startup_inferior)
9800         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9801         (linux_child_remove_fork_catchpoint)
9802         (linux_child_insert_vfork_catchpoint)
9803         (linux_child_remove_vfork_catchpoint)
9804         (linux_child_insert_exec_catchpoint)
9805         (linux_child_remove_exec_catchpoint)
9806         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9807         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9808         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9809         (linux_nat_stopped_data_address)
9810         (linux_nat_stopped_by_sw_breakpoint)
9811         (linux_nat_supports_stopped_by_sw_breakpoint)
9812         (linux_nat_stopped_by_hw_breakpoint)
9813         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9814         (linux_nat_kill, linux_nat_mourn_inferior)
9815         (linux_nat_xfer_partial, linux_nat_thread_alive)
9816         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9817         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9818         (linux_child_static_tracepoint_markers_by_strid)
9819         (linux_nat_is_async_p, linux_nat_can_async_p)
9820         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9821         (linux_nat_supports_multi_process)
9822         (linux_nat_supports_disable_randomization, linux_nat_async)
9823         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9824         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9825         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9826         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9827         methods of linux_nat_target.
9828         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9829         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9830         parameter.
9831         (check_stopped_by_watchpoint): Adjust.
9832         (linux_xfer_partial): Delete.
9833         (linux_target_install_ops, linux_target, linux_nat_add_target):
9834         Delete.
9835         (linux_nat_target::linux_nat_target): New.
9836         * linux-nat.h: Include "inf-ptrace.h".
9837         (linux_nat_target): New.
9838         (linux_target, linux_target_install_ops, linux_nat_add_target):
9839         Delete function declarations.
9840         (linux_target): Declare global.
9841         * linux-thread-db.c (thread_db_target): New.
9842         (thread_db_target::thread_db_target): New.
9843         (thread_db_ops): Delete.
9844         (the_thread_db_target): New.
9845         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9846         (thread_db_update_thread_list, thread_db_pid_to_str)
9847         (thread_db_extra_thread_info)
9848         (thread_db_thread_handle_to_thread_info)
9849         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9850         (thread_db_resume): Refactor as methods of thread_db_target.
9851         (init_thread_db_ops): Delete.
9852         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9853         * x86-linux-nat.c: Don't include "linux-nat.h".
9854         (super_post_startup_inferior): Delete.
9855         (x86_linux_nat_target::~x86_linux_nat_target): New.
9856         (x86_linux_child_post_startup_inferior)
9857         (x86_linux_read_description, x86_linux_enable_btrace)
9858         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9859         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9860         methods of x86_linux_nat_target.
9861         (x86_linux_create_target): Delete.  Bits folded ...
9862         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9863         pointer.
9864         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9865         (x86_linux_nat_target): New class.
9866         (x86_linux_create_target): Delete.
9867         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9868         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9869         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9870         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9871         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9872         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9873         make extern.
9874         (x86_use_watchpoints): Delete.
9875         * x86-nat.h: Include "breakpoint.h" and "target.h".
9876         (x86_use_watchpoints): Delete.
9877         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9878         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9879         (x86_insert_watchpoint, x86_remove_watchpoint)
9880         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9881         (x86_stopped_by_hw_breakpoint): New declarations.
9882         (x86_nat_target): New template class.
9883
9884         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9885         (the_ppc_linux_nat_target): New.
9886         (ppc_linux_fetch_inferior_registers)
9887         (ppc_linux_can_use_hw_breakpoint)
9888         (ppc_linux_region_ok_for_hw_watchpoint)
9889         (ppc_linux_ranged_break_num_registers)
9890         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9891         (ppc_linux_insert_mask_watchpoint)
9892         (ppc_linux_remove_mask_watchpoint)
9893         (ppc_linux_can_accel_watchpoint_condition)
9894         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9895         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9896         (ppc_linux_watchpoint_addr_within_range)
9897         (ppc_linux_masked_watch_num_registers)
9898         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9899         (ppc_linux_read_description): Refactor as methods of
9900         ppc_linux_nat_target.
9901         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9902
9903         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9904         (procfs_target): New class.
9905         (the_procfs_target): New.
9906         (procfs_target): Delete function.
9907         (procfs_auxv_parse, procfs_attach, procfs_detach)
9908         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9909         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9910         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9911         (procfs_create_inferior, procfs_update_thread_list)
9912         (procfs_thread_alive, procfs_pid_to_str)
9913         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9914         (procfs_stopped_data_address, procfs_insert_watchpoint)
9915         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9916         (proc_find_memory_regions, procfs_info_proc)
9917         (procfs_make_note_section): Refactor as methods of procfs_target.
9918         (_initialize_procfs): Adjust.
9919         * sol-thread.c (sol_thread_target): New class.
9920         (sol_thread_ops): Now a sol_thread_target.
9921         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9922         (sol_thread_fetch_registers, sol_thread_store_registers)
9923         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9924         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9925         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9926         (init_sol_thread_ops): Delete.
9927         (_initialize_sol_thread): Adjust.  Remove references to
9928         init_sol_thread_ops and complete_target_initialization.
9929
9930         * windows-nat.c (windows_nat_target): New class.
9931         (windows_fetch_inferior_registers)
9932         (windows_store_inferior_registers, windows_resume, windows_wait)
9933         (windows_attach, windows_detach, windows_pid_to_exec_file)
9934         (windows_files_info, windows_create_inferior)
9935         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9936         (windows_close, windows_pid_to_str, windows_xfer_partial)
9937         (windows_get_tib_address, windows_get_ada_task_ptid)
9938         (windows_thread_name, windows_thread_alive): Refactor as
9939         windows_nat_target methods.
9940         (do_initial_windows_stuff): Adjust.
9941         (windows_target): Delete function.
9942         (_initialize_windows_nat): Adjust.
9943
9944         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9945         (darwin_mourn_inferior, darwin_kill_inferior)
9946         (darwin_create_inferior, darwin_attach, darwin_detach)
9947         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9948         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9949         (darwin_supports_multi_process): Refactor as darwin_nat_target
9950         methods.
9951         (darwin_resume_to, darwin_files_info): Delete.
9952         (_initialize_darwin_inferior): Rename to ...
9953         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9954         * darwin-nat.h: Include "inf-child.h".
9955         (darwin_nat_target): New class.
9956         (darwin_complete_target): Delete.
9957         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9958         (darwin_target): New.
9959         (i386_darwin_fetch_inferior_registers)
9960         (i386_darwin_store_inferior_registers): Refactor as methods of
9961         darwin_nat_target.
9962         (darwin_complete_target): Delete, with ...
9963         (_initialize_i386_darwin_nat): ... bits factored out here.
9964
9965         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9966         (the_alpha_linux_nat_target): New.
9967         (alpha_linux_register_u_offset): Refactor as
9968         alpha_linux_nat_target method.
9969         (_initialize_alpha_linux_nat): Adjust.
9970         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9971         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9972         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9973         methods of linux_nat_trad_target.
9974         (linux_trad_target): Delete.
9975         * linux-nat-trad.h (linux_trad_target): Delete function.
9976         (linux_nat_trad_target): New class.
9977         * mips-linux-nat.c (mips_linux_nat_target): New class.
9978         (super_fetch_registers, super_store_registers, super_close):
9979         Delete.
9980         (the_mips_linux_nat_target): New.
9981         (mips64_linux_regsets_fetch_registers)
9982         (mips64_linux_regsets_store_registers)
9983         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9984         (mips_linux_register_u_offset, mips_linux_read_description)
9985         (mips_linux_can_use_hw_breakpoint)
9986         (mips_linux_stopped_by_watchpoint)
9987         (mips_linux_stopped_data_address)
9988         (mips_linux_region_ok_for_hw_watchpoint)
9989         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9990         (mips_linux_close): Refactor as methods of mips_linux_nat.
9991         (_initialize_mips_linux_nat): Adjust to C++ification.
9992
9993         * aix-thread.c (aix_thread_target): New class.
9994         (aix_thread_ops): Now an aix_thread_target.
9995         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9996         (aix_thread_fetch_registers, aix_thread_store_registers)
9997         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9998         (aix_thread_thread_alive, aix_thread_pid_to_str)
9999         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10000         Refactor as methods of aix_thread_target.
10001         (init_aix_thread_ops): Delete.
10002         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10003         and complete_target_initialization.
10004         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10005         (rs6000_nat_target): New class.
10006         (the_rs6000_nat_target): New.
10007         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10008         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10009         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10010         (super_create_inferior): Delete.
10011         (_initialize_rs6000_nat): Adjust to C++ification.
10012
10013         * arm-linux-nat.c (arm_linux_nat_target): New class.
10014         (the_arm_linux_nat_target): New.
10015         (arm_linux_fetch_inferior_registers)
10016         (arm_linux_store_inferior_registers, arm_linux_read_description)
10017         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10018         (arm_linux_remove_hw_breakpoint)
10019         (arm_linux_region_ok_for_hw_watchpoint)
10020         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10021         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10022         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10023         arm_linux_nat_target.
10024         (_initialize_arm_linux_nat): Adjust to C++ification.
10025
10026         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10027         (the_aarch64_linux_nat_target): New.
10028         (aarch64_linux_fetch_inferior_registers)
10029         (aarch64_linux_store_inferior_registers)
10030         (aarch64_linux_child_post_startup_inferior)
10031         (aarch64_linux_read_description)
10032         (aarch64_linux_can_use_hw_breakpoint)
10033         (aarch64_linux_insert_hw_breakpoint)
10034         (aarch64_linux_remove_hw_breakpoint)
10035         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10036         (aarch64_linux_region_ok_for_hw_watchpoint)
10037         (aarch64_linux_stopped_data_address)
10038         (aarch64_linux_stopped_by_watchpoint)
10039         (aarch64_linux_watchpoint_addr_within_range)
10040         (aarch64_linux_can_do_single_step): Refactor as methods of
10041         aarch64_linux_nat_target.
10042         (super_post_startup_inferior): Delete.
10043         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10044
10045         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10046         (the_hppa_linux_nat_target): New.
10047         (hppa_linux_fetch_inferior_registers)
10048         (hppa_linux_store_inferior_registers): Refactor as methods of
10049         hppa_linux_nat_target.
10050         (_initialize_hppa_linux_nat): Adjust to C++ification.
10051
10052         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10053         (the_ia64_linux_nat_target): New.
10054         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10055         (ia64_linux_stopped_data_address)
10056         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10057         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10058         ia64_linux_nat_target methods.
10059         (super_xfer_partial): Delete.
10060         (_initialize_ia64_linux_nat): Adjust to C++ification.
10061
10062         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10063         (the_m32r_linux_nat_target): New.
10064         (m32r_linux_fetch_inferior_registers)
10065         (m32r_linux_store_inferior_registers): Refactor as
10066         m32r_linux_nat_target methods.
10067         (_initialize_m32r_linux_nat): Adjust to C++ification.
10068
10069         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10070         (the_m68k_linux_nat_target): New.
10071         (m68k_linux_fetch_inferior_registers)
10072         (m68k_linux_store_inferior_registers): Refactor as
10073         m68k_linux_nat_target methods.
10074         (_initialize_m68k_linux_nat): Adjust to C++ification.
10075
10076         * s390-linux-nat.c (s390_linux_nat_target): New class.
10077         (the_s390_linux_nat_target): New.
10078         (s390_linux_fetch_inferior_registers)
10079         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10080         (s390_insert_watchpoint, s390_remove_watchpoint)
10081         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10082         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10083         (s390_auxv_parse, s390_read_description): Refactor as methods of
10084         s390_linux_nat_target.
10085         (_initialize_s390_nat): Adjust to C++ification.
10086
10087         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10088         (the_sparc_linux_nat_target): New.
10089         (_initialize_sparc_linux_nat): Adjust to C++ification.
10090         * sparc-nat.c (sparc_fetch_inferior_registers)
10091         (sparc_store_inferior_registers): Remove target_ops parameter.
10092         * sparc-nat.h (sparc_fetch_inferior_registers)
10093         (sparc_store_inferior_registers): Remove target_ops parameter.
10094         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10095         (the_sparc64_linux_nat_target): New.
10096         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10097
10098         * spu-linux-nat.c (spu_linux_nat_target): New class.
10099         (the_spu_linux_nat_target): New.
10100         (spu_child_post_startup_inferior, spu_child_post_attach)
10101         (spu_child_wait, spu_fetch_inferior_registers)
10102         (spu_store_inferior_registers, spu_xfer_partial)
10103         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10104         methods.
10105         (_initialize_spu_nat): Adjust to C++ification.
10106
10107         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10108         (the_tilegx_linux_nat_target): New.
10109         (fetch_inferior_registers, store_inferior_registers):
10110         Refactor as methods.
10111         (_initialize_tile_linux_nat): Adjust to C++ification.
10112
10113         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10114         (the_xtensa_linux_nat_target): New.
10115         (xtensa_linux_fetch_inferior_registers)
10116         (xtensa_linux_store_inferior_registers): Refactor as
10117         xtensa_linux_nat_target methods.
10118         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10119
10120         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10121         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10122         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10123         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10124         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10125         (fbsd_stopped_by_sw_breakpoint)
10126         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10127         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10128         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10129         (fbsd_post_startup_inferior, fbsd_post_attach)
10130         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10131         (fbsd_set_syscall_catchpoint)
10132         (super_xfer_partial, super_resume, super_wait)
10133         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10134         (fbsd_handle_debug_trap): Remove target_ops parameter.
10135         (fbsd_nat_add_target): Delete.
10136         * fbsd-nat.h: Include "inf-ptrace.h".
10137         (fbsd_nat_add_target): Delete.
10138         (USE_SIGTRAP_SIGINFO): Define.
10139         (fbsd_nat_target): New class.
10140
10141         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10142         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10143         (amd64bsd_target): Delete.
10144         * amd64-bsd-nat.h: New file.
10145         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10146         "x86-bsd-nat.h".
10147         (amd64_fbsd_nat_target): New class.
10148         (the_amd64_fbsd_nat_target): New.
10149         (amd64fbsd_read_description): Refactor as method of
10150         amd64_fbsd_nat_target.
10151         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10152         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10153         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10154         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10155         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10156         (i386bsd_target): Delete.
10157         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10158         (i386bsd_fetch_inferior_registers)
10159         (i386bsd_store_inferior_registers): Declare.
10160         (i386_bsd_nat_target): New class.
10161         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10162         (the_i386_fbsd_nat_target): New.
10163         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10164         i386_fbsd_nat_target methods.
10165         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10166         (_initialize_i386fbsd_nat): Adjust to C++ification.
10167         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10168         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10169         (_initialize_x86_bsd_nat): Adjust to C++ification.
10170         * x86-bsd-nat.h: Include "x86-nat.h".
10171         (x86bsd_target): Delete declaration.
10172         (x86bsd_nat_target): New class.
10173
10174         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10175         (the_aarch64_fbsd_nat_target): New.
10176         (aarch64_fbsd_fetch_inferior_registers)
10177         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10178         aarch64_fbsd_nat_target.
10179         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10180         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10181         (the_alpha_bsd_nat_target): New.
10182         (alphabsd_fetch_inferior_registers)
10183         (alphabsd_store_inferior_registers): Refactor as
10184         alpha_bsd_nat_target methods.
10185         (_initialize_alphabsd_nat): Refactor as methods of
10186         alpha_bsd_nat_target.
10187         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10188         (the_amd64_nbsd_nat_target): New.
10189         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10190         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10191         (the_amd64_obsd_nat_target): New.
10192         (_initialize_amd64obsd_nat): Adjust to C++ification.
10193         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10194         (the_arm_fbsd_nat_target): New.
10195         (arm_fbsd_fetch_inferior_registers)
10196         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10197         (_initialize_arm_fbsd_nat): Refactor as methods of
10198         arm_fbsd_nat_target.
10199         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10200         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10201         (the_arm_netbsd_nat_target): New.
10202         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10203         arm_netbsd_nat_target.
10204         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10205         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10206         (the_hppa_nbsd_nat_target): New.
10207         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10208         hppa_nbsd_nat_target methods.
10209         (_initialize_hppanbsd_nat): Adjust to C++ification.
10210         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10211         (the_hppa_obsd_nat_target): New.
10212         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10213         methods of hppa_obsd_nat_target.
10214         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10215         add_target.
10216         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10217         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10218         add_target.
10219         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10220         (_initialize_i386obsd_nat): Use add_target.
10221         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10222         (the_m68k_bsd_nat_target): New.
10223         (m68kbsd_fetch_inferior_registers)
10224         (m68kbsd_store_inferior_registers): Refactor as methods of
10225         m68k_bsd_nat_target.
10226         (_initialize_m68kbsd_nat): Adjust to C++ification.
10227         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10228         (the_mips_fbsd_nat_target): New.
10229         (mips_fbsd_fetch_inferior_registers)
10230         (mips_fbsd_store_inferior_registers): Refactor as methods of
10231         mips_fbsd_nat_target.
10232         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10233         add_target.
10234         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10235         (the_mips_nbsd_nat_target): New.
10236         (mipsnbsd_fetch_inferior_registers)
10237         (mipsnbsd_store_inferior_registers): Refactor as methods of
10238         mips_nbsd_nat_target.
10239         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10240         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10241         (the_mips64_obsd_nat_target): New.
10242         (mips64obsd_fetch_inferior_registers)
10243         (mips64obsd_store_inferior_registers): Refactor as methods of
10244         mips64_obsd_nat_target.
10245         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10246         add_target.
10247         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10248         nbsd_nat_target.
10249         * nbsd-nat.h: Include "inf-ptrace.h".
10250         (nbsd_nat_target): New class.
10251         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10252         (obsd_wait): Refactor as methods of obsd_nat_target.
10253         (obsd_add_target): Delete.
10254         * obsd-nat.h: Include "inf-ptrace.h".
10255         (obsd_nat_target): New class.
10256         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10257         (the_ppc_fbsd_nat_target): New.
10258         (ppcfbsd_fetch_inferior_registers)
10259         (ppcfbsd_store_inferior_registers): Refactor as methods of
10260         ppc_fbsd_nat_target.
10261         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10262         add_target.
10263         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10264         (the_ppc_nbsd_nat_target): New.
10265         (ppcnbsd_fetch_inferior_registers)
10266         (ppcnbsd_store_inferior_registers): Refactor as methods of
10267         ppc_nbsd_nat_target.
10268         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10269         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10270         (the_ppc_obsd_nat_target): New.
10271         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10272         methods of ppc_obsd_nat_target.
10273         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10274         add_target.
10275         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10276         (the_sh_nbsd_nat_target): New.
10277         (shnbsd_fetch_inferior_registers)
10278         (shnbsd_store_inferior_registers): Refactor as methods of
10279         sh_nbsd_nat_target.
10280         (_initialize_shnbsd_nat): Adjust to C++ification.
10281         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10282         (inf_ptrace_xfer_partial): Delete.
10283         (sparc_xfer_partial, sparc_target): Delete.
10284         * sparc-nat.h (sparc_fetch_inferior_registers)
10285         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10286         (sparc_target): Delete function declaration.
10287         (sparc_target): New template class.
10288         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10289         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10290         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10291         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10292         add_target.
10293         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10294         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10295         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10296         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10297         add_target.
10298         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10299         (the_vax_bsd_nat_target): New.
10300         (vaxbsd_fetch_inferior_registers)
10301         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10302         methods.
10303         (_initialize_vaxbsd_nat): Adjust to C++ification.
10304
10305         * bsd-kvm.c (bsd_kvm_target): New class.
10306         (bsd_kvm_ops): Now a bsd_kvm_target.
10307         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10308         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10309         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10310         bsd_kvm_target.
10311         (bsd_kvm_return_one): Delete.
10312         (bsd_kvm_add_target): Adjust to C++ification.
10313
10314         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10315         (nto_procfs_target_procfs): New classes.
10316         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10317         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10318         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10319         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10320         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10321         (procfs_remove_hw_breakpoint, procfs_resume)
10322         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10323         (procfs_kill_inferior, procfs_store_registers)
10324         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10325         as methods of nto_procfs_target.
10326         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10327         (nto_native_ops): Delete.
10328         (procfs_open, procfs_native_open): Delete.
10329         (nto_native_ops): Now an nto_procfs_target_native.
10330         (init_procfs_targets): Adjust to C++ification.
10331         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10332         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10333         Refactor as methods of nto_procfs_target.
10334
10335         * go32-nat.c (go32_nat_target): New class.
10336         (the_go32_nat_target): New.
10337         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10338         (go32_store_registers, go32_xfer_partial, go32_files_info)
10339         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10340         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10341         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10342         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10343         (go32_target): Delete.
10344         (_initialize_go32_nat): Adjust to C++ification.
10345
10346         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10347         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10348         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10349         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10350         gnu_nat_target.
10351         (gnu_target): Delete.
10352         * gnu-nat.h (gnu_target): Delete.
10353         (gnu_nat_target): New class.
10354         * i386-gnu-nat.c (gnu_base_target): New.
10355         (i386_gnu_nat_target): New class.
10356         (the_i386_gnu_nat_target): New.
10357         (_initialize_i386gnu_nat): Adjust to C++ification.
10358
10359 2018-05-02  Pedro Alves  <palves@redhat.com>
10360
10361         * bfd-target.c (target_bfd_xclose): Rename to ...
10362         (target_bfd_close): ... this.
10363         (target_bfd_reopen): Adjust.
10364         * target.c (target_close): Remove references to to_xclose.
10365         * target.h (target_ops::to_xclose): Delete.
10366         (target_ops::to_close): Update comments.
10367
10368 2018-05-02  Pedro Alves  <palves@redhat.com>
10369
10370         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10371         "linux-nat.h".
10372         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10373         * inf-ptrace.c (inf_ptrace_register_u_offset)
10374         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10375         (inf_ptrace_store_register, inf_ptrace_store_registers)
10376         (inf_ptrace_trad_target): Move to ...
10377         * linux-nat-trad.c: ... this new file.
10378         * linux-nat-trad.h: New file.
10379         * linux-nat.c (linux_target_install_ops): Make extern.
10380         (linux_trad_target): Delete.
10381         * linux-nat.h (linux_trad_target): Delete declaration.
10382         (linux_target_install_ops): Declare.
10383         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10384         "linux-nat.h".
10385
10386 2018-05-02  Pedro Alves  <palves@redhat.com>
10387
10388         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10389         procfs_target/add_target here.
10390         * procfs.c (procfs_target): Make static.
10391         (_initialize_procfs): Call add_target here.
10392         * procfs.h (struct target_ops): Remove forward declaration.
10393         (procfs_target): Remove declaration.
10394         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10395
10396 2018-05-02  Pedro Alves  <palves@redhat.com>
10397
10398         * procfs.c (procfs_stopped_by_watchpoint)
10399         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10400         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10401         Forward declare.
10402         (procfs_use_watchpoints): Delete, move contents...
10403         (procfs_target): ... here.
10404         * procfs.h (procfs_use_watchpoints): Delete declaration.
10405         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10406         procfs_use_watchpoints.
10407         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10408         procfs_use_watchpoints.
10409
10410 2018-05-02  Tom Tromey  <tom@tromey.com>
10411
10412         PR python/20084:
10413         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10414         and var_zuinteger_unlimited.
10415         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10416         and PARAM_ZUINTEGER_UNLIMITED.
10417         (set_parameter_value): Handle var_zuinteger and
10418         var_zuinteger_unlimited.
10419         (add_setshow_generic): Likewise.
10420         (parmpy_init): Likewise.
10421
10422 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10423
10424         PR rust/23124
10425         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10426         pointer is not null before dereferencing it.
10427
10428 2018-04-30  Tom Tromey  <tom@tromey.com>
10429
10430         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10431         is_mi_like_p.
10432
10433 2018-04-30  Tom Tromey  <tom@tromey.com>
10434
10435         * breakpoint.c (mention): Remove use of is_mi_like_p.
10436         (print_mention_ranged_breakpoint): Likewise.
10437         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10438         of is_mi_like_p.
10439
10440 2018-04-30  Tom Tromey  <tom@tromey.com>
10441
10442         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10443
10444 2018-04-30  Tom Tromey  <tom@tromey.com>
10445
10446         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10447         (info_spu_event_command): Remove some uses of is_mi_like_p.
10448
10449 2018-04-30  Tom Tromey  <tom@tromey.com>
10450
10451         * python/py-framefilter.c (py_print_single_arg)
10452         (enumerate_locals, py_print_args, py_print_frame): Remove some
10453         uses of is_mi_like_p.
10454
10455 2018-04-30  Tom Tromey  <tom@tromey.com>
10456
10457         * ui-out.c: Update.
10458         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10459         * ui-out.h (ui_out::is_mi_like_p): Now const.
10460         (ui_out::do_is_mi_like_p): Now const.
10461         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10462
10463 2018-04-30  Tom Tromey  <tom@tromey.com>
10464
10465         * varobj.c (varobj_set_visualizer): Use new_reference.
10466         * python/python.c (gdbpy_decode_line): Use new_reference.
10467         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10468         new_reference.
10469
10470 2018-04-30  Tom Tromey  <tom@tromey.com>
10471
10472         * varobj.c (install_new_value): Use new_reference.
10473         * value.h (value_incref): Return void.  Swap intro comment with
10474         value_decref.
10475         * value.c (set_value_parent): Use new_reference.
10476         (value_incref): Return void.  Update intro comment.
10477         (release_value): Use new_reference.
10478         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10479
10480 2018-04-30  Tom Tromey  <tom@tromey.com>
10481
10482         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10483         * gdb_bfd.h (new_bfd_ref): Remove.
10484         (gdb_bfd_open): Update comment.
10485         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10486         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10487         (gdb_bfd_fdopenr): Use new_reference.
10488         * exec.c (exec_file_attach): Use new_reference.
10489
10490 2018-04-30  Tom Tromey  <tom@tromey.com>
10491
10492         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10493         method.
10494
10495 2018-04-30  Tom Tromey  <tom@tromey.com>
10496
10497         * jit.c (jit_read_code_entry): Use type_align.
10498         * i386-tdep.c (i386_gdbarch_init): Don't call
10499         set_gdbarch_long_long_align_bit.
10500         * gdbarch.sh: Remove long_long_align_bit.
10501         * gdbarch.c, gdbarch.h: Rebuild.
10502         * arc-tdep.c (arc_type_align): New function.
10503         (arc_gdbarch_init): Use arc_type_align.  Don't call
10504         set_gdbarch_long_long_align_bit.
10505
10506 2018-04-30  Tom Tromey  <tom@tromey.com>
10507
10508         * rust-lang.c (rust_type_alignment): Remove.
10509         (rust_composite_type): Use type_align.
10510
10511 2018-04-30  Tom Tromey  <tom@tromey.com>
10512
10513         * NEWS: Mention Type.align.
10514         * python/py-type.c (typy_get_alignof): New function.
10515         (type_object_getset): Add "alignof".
10516
10517 2018-04-30  Tom Tromey  <tom@tromey.com>
10518
10519         PR exp/17095:
10520         * NEWS: Update.
10521         * std-operator.def (UNOP_ALIGNOF): New operator.
10522         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10523         New.
10524         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10525         * c-lang.c (c_op_print_tab): Add alignof.
10526         * c-exp.y (ALIGNOF): New token.
10527         (exp): Add "ALIGNOF" production.
10528         (ident_tokens): Add _Alignof and alignof.
10529
10530 2018-04-30  Tom Tromey  <tom@tromey.com>
10531
10532         * i386-tdep.c (i386_type_align): New function.
10533         (i386_gdbarch_init): Update.
10534         * gdbarch.sh (type_align): New method.
10535         * gdbarch.c, gdbarch.h: Rebuild.
10536         * arch-utils.h (default_type_align): Declare.
10537         * arch-utils.c (default_type_align): New function.
10538         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10539         (struct type) <align_log2>: New field.
10540         <instance_flags>: Now a bitfield.
10541         (TYPE_RAW_ALIGN): New macro.
10542         (type_align, type_raw_align, set_type_align): Declare.
10543         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10544         functions.
10545         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10546         (get_alignment, maybe_set_alignment): New functions.
10547         (read_structure_type, read_enumeration_type, read_array_type)
10548         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10549         (read_subrange_type, read_base_type): Set type alignment.
10550
10551 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10552
10553         * dwarf2read.c (read_index_from_section): Use bool.
10554
10555 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10556
10557         PR gdb/22950
10558         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10559         with #ifdef.
10560
10561 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10562
10563         PR build/22873
10564         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10565         last step, and do it atomically.
10566
10567 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10568
10569         * compile/compile-c-types.c (convert_int, convert_float):
10570         Update for C FE v1.
10571
10572 2018-04-27  Tom Tromey  <tom@tromey.com>
10573
10574         PR rust/22545:
10575         * rust-lang.c (rust_inclusive_range_type_p): New function.
10576         (rust_range): Handle inclusive ranges.
10577         (rust_compute_range): Likewise.
10578         * rust-exp.y (struct rust_op) <inclusive>: New field.
10579         (DOTDOTEQ): New constant.
10580         (range_expr): Add "..=" productions.
10581         (operator_tokens): Add "..=" token.
10582         (ast_range): Add "inclusive" parameter.
10583         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10584         ranges.
10585         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10586         bounds values.
10587         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10588         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10589         Update comments.
10590         * expprint.c (print_subexp_standard): Handle new bounds values.
10591         (dump_subexp_body_standard): Likewise.
10592
10593 2018-04-27  Tom Tromey  <tom@tromey.com>
10594
10595         * configure: Rebuild.
10596         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10597         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10598         "OVERRIDE".
10599         (class symbol_needs_eval_context): Likewise.
10600         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10601         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10602         "virtual".
10603         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10604         "override".
10605         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10606         * aarch64-tdep.c (instruction_reader::read): Use "override".
10607         (instruction_reader_test::read): Likewise.
10608         * arm-tdep.c (instruction_reader::read): Use "override".
10609         (instruction_reader_thumb::read): Likewise.
10610
10611 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10612
10613         PR remote/9665
10614         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10615         instead of remote_send.
10616         (remote_send): Remove.
10617
10618 2018-04-26  Pedro Alves  <palves@redhat.com>
10619
10620         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10621         find_function_start_sal instead of find_pc_line.
10622
10623 2018-04-26  Pedro Alves  <palves@redhat.com>
10624
10625         * breakpoint.c (set_breakpoint_location_function): Handle
10626         mst_data_gnu_ifunc.
10627         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10628         * elfread.c (elf_symtab_read): Give data symbols with
10629         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10630         (elf_rel_plt_read): Update comment.
10631         * linespec.c (convert_linespec_to_sals): Handle
10632         mst_data_gnu_ifunc.
10633         (minsym_found): Handle mst_data_gnu_ifunc.
10634         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10635         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10636         * parse.c (find_minsym_type_and_address): Handle
10637         mst_data_gnu_ifunc.
10638         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10639         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10640         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10641         comment.
10642         <mst_data_gnu_ifunc>: New enumerator.
10643
10644 2018-04-26  Pedro Alves  <palves@redhat.com>
10645
10646         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10647         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10648         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10649         Handle it.
10650         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10651         (lookup_minimal_symbol_by_pc): Adjust.
10652         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10653         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10654         * minsyms.h (lookup_msym_prefer): New enum.
10655         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10656         parameter by a lookup_msym_prefer parameter.
10657
10658 2018-04-26  Pedro Alves  <palves@redhat.com>
10659
10660         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10661         ends in "@plt" instead of looking at the symbol's section.
10662
10663 2018-04-26  Pedro Alves  <palves@redhat.com>
10664
10665         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10666         all references.
10667         (find_pc_partial_function_gnu_ifunc): Rename to ...
10668         (find_pc_partial_function): ... this, and remove references to
10669         'is_gnu_ifunc_p'.
10670         (find_pc_partial_function): Delete old implementation.
10671         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10672
10673 2018-04-26  Pedro Alves  <palves@redhat.com>
10674
10675         * linespec.c (struct bound_minimal_symbol_search_key): New.
10676         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10677         skip first line if we found a GNU ifunc minimal symbol by name.
10678         (compare_msymbols): Change parameters to work with a destructured
10679         lhs minsym.
10680         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10681         functions.
10682
10683 2018-04-26  Pedro Alves  <palves@redhat.com>
10684
10685         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10686         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10687         address/name.
10688         (add_location_to_breakpoint): Store the minsym and the objfile in
10689         the breakpoint location.
10690         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10691         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10692         Record the minsym in the sal.
10693         * symtab.h (symtab_and_line) <msymbol>: New field.
10694
10695 2018-04-26  Pedro Alves  <palves@redhat.com>
10696
10697         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10698         unless we actually resolved the ifunc.
10699
10700 2018-04-26  Pedro Alves  <palves@redhat.com>
10701
10702         * c-exp.y (variable production): Prefer ifunc minsyms over
10703         regular function symbols.
10704         * symtab.c (find_gnu_ifunc): New function.
10705         * minsyms.h (lookup_msym_prefer): New enum.
10706         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10707         parameter by a lookup_msym_prefer parameter.
10708         * symtab.h (find_gnu_ifunc): New declaration.
10709
10710 2018-04-26  Pedro Alves  <palves@redhat.com>
10711
10712         * blockframe.c (find_gnu_ifunc_target_type): New function.
10713         (find_function_type): New.
10714         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10715         return a value with a memory address.
10716         (eval_call): For calls to GNU ifunc functions, try to find the
10717         type of the target function from the type that the resolver
10718         returns.
10719         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10720         symbols.
10721         * infcall.c (find_function_return_type): Delete.
10722         (find_function_addr): Add 'function_type' parameter.  For calls to
10723         GNU ifunc functions, try to find the type of the target function
10724         from the type that the resolver returns, and return it via
10725         FUNCTION_TYPE.
10726         (call_function_by_hand_dummy): Adjust to use the function type
10727         returned by find_function_addr.
10728         (find_function_addr): Add 'function_type' parameter and move
10729         description here.
10730         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10731         declarations.
10732
10733 2018-04-26  Pedro Alves  <palves@redhat.com>
10734
10735         * c-exp.y (variable production): Skip finding an alias for ifunc
10736         symbols.
10737
10738 2018-04-26  Pedro Alves  <palves@redhat.com>
10739
10740         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10741
10742 2018-04-25  Pedro Alves  <palves@redhat.com>
10743
10744         * infcmd.c (kill_command): Print the pid as string, not the whole
10745         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10746         message.
10747         * remote.c (remote_detach_1): Print the pid as string, not the
10748         whole thread's ptid.
10749
10750 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10751             Sergio Durigan Junior  <sergiodj@redhat.com>
10752             Pedro Alves  <palves@redhat.com>
10753
10754         * infcmd.c (kill_command): Print message when inferior has
10755         been killed.
10756         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10757         '1'.
10758         (add_inferior): Improve message printed when
10759         'print_inferior_events' is on.
10760         (exit_inferior): Remove message printed when
10761         'print_inferior_events' is on.
10762         (detach_inferior): Improve message printed when
10763         'print_inferior_events' is on.
10764         (initialize_inferiors): Use 'add_inferior_silent' to set
10765         'current_inferior_'.
10766         * inferior.h (print_inferior_events): Declare here as
10767         'extern'.
10768         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10769         '[Detaching...]' messages when 'print_inferior_events' is on.
10770         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10771         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10772         'Detaching after fork from child...', replace it by '... from
10773         parent...'.
10774         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10775         prefix/suffix when printing 'Detaching...' messages.  Print
10776         them when 'print_inferior_events' is on.
10777         * remote.c (remote_detach_1): Print message when detaching
10778         from inferior and '!is_fork_parent'.
10779
10780 2018-04-24  Tom Tromey  <tom@tromey.com>
10781
10782         * cli-out.h: Reindent.
10783
10784 2018-04-24  Tom Tromey  <tom@tromey.com>
10785
10786         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10787         (cli_ui_out::do_field_string): Use fputs_filtered.
10788         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10789
10790 2018-04-23  Tom Tromey  <tom@tromey.com>
10791
10792         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10793         gdb::unique_xmalloc_ptr.
10794
10795 2018-04-23  Tom Tromey  <tom@tromey.com>
10796
10797         * configure: Rebuild.
10798
10799 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10800
10801         PR gdb/23095
10802         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10803         prepare_for_testing.  Set normal_bp to r_debug_state if target
10804         is bsd.
10805
10806 2018-04-21  Pedro Alves  <palves@redhat.com>
10807             Rajendra SY  <rajendra.sy@gmail.com>
10808
10809         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10810         * remote.c (extended_remote_attach): In all-stop mode, mark the
10811         thread as executing.
10812
10813 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10814
10815         * thread.c (thread_apply_all_command): Fix comment.
10816         (thread_command): Fix comment.
10817
10818 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10819
10820         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10821         parameter.
10822         * features/aarch64-core.c (create_feature_aarch64_core):
10823         Regenerate.
10824         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10825         Likewise.
10826         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10827         Likewise.
10828         * features/i386/32bit-avx512.c
10829         (create_feature_i386_32bit_avx512): Likewise.
10830         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10831         Likewise.
10832         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10833         Likewise.
10834         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10835         Likewise.
10836         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10837         Likewise.
10838         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10839         Likewise.
10840         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10841         Likewise.
10842         * features/i386/64bit-avx512.c
10843         (create_feature_i386_64bit_avx512): Likewise.
10844         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10845         Likewise.
10846         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10847         Likewise.
10848         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10849         Likewise.
10850         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10851         Likewise.
10852         * features/i386/64bit-segments.c
10853         (create_feature_i386_64bit_segments): Likewise.
10854         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10855         Likewise.
10856         * features/i386/x32-core.c
10857         (create_feature_i386_x32_core): Likewise.
10858         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10859         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10860         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10861         * target-descriptions.c: In generated code, don't pass xml
10862         filename.
10863
10864 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10865
10866         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10867         (print_xml_feature::visit_post): Likewise.
10868         (print_xml_feature::visit): Likewise.
10869         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10870         (print_xml_feature): Add new class.
10871         * regformats/regdat.sh: Null xmltarget on feature targets.
10872         * target-descriptions.c (struct target_desc): Add xmltarget.
10873         (maintenance_check_tdesc_xml_convert): Add unittest function.
10874         (tdesc_get_features_xml): Add function to get xml.
10875         (maintenance_check_xml_descriptions): Test xml generation.
10876         * xml-tdesc.c (string_read_description_xml): Add function.
10877         * xml-tdesc.h (string_read_description_xml): Add declaration.
10878
10879 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10880
10881         * features/Makefile: Add feature marker to targets with new style
10882         target descriptions.
10883         * regformats/aarch64.dat: Regenerate.
10884         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10885         * regformats/i386/amd64-avx-linux.dat: Likewise.
10886         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10887         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10888         * regformats/i386/amd64-linux.dat: Likewise.
10889         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10890         * regformats/i386/amd64.dat: Likewise.
10891         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10892         * regformats/i386/i386-avx-linux.dat: Likewise.
10893         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10894         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10895         * regformats/i386/i386-linux.dat: Likewise.
10896         * regformats/i386/i386-mmx-linux.dat: Likewise.
10897         * regformats/i386/i386-mpx-linux.dat: Likewise.
10898         * regformats/i386/i386.dat: Likewise.
10899         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10900         * regformats/i386/x32-avx-linux.dat: Likewise.
10901         * regformats/i386/x32-linux.dat: Likewise.
10902         * regformats/tic6x-c62x-linux.dat: Likewise.
10903         * regformats/tic6x-c64x-linux.dat: Likewise.
10904         * regformats/tic6x-c64xp-linux.dat: Likewise.
10905         * regformats/regdat.sh: Parse feature marker.
10906
10907 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10908
10909         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10910         (tdesc_osabi_name): Likewise.
10911         * target-descriptions.c (tdesc_architecture_name): Add new
10912         function.
10913         (tdesc_osabi_name): Likewise.
10914
10915 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10916
10917         * common/tdesc.c (tdesc_predefined_type): Move to here.
10918         (tdesc_named_type): Likewise.
10919         (tdesc_create_vector): Likewise.
10920         (tdesc_create_struct): Likewise.
10921         (tdesc_set_struct_size): Likewise.
10922         (tdesc_create_union): Likewise.
10923         (tdesc_create_flags): Likewise.
10924         (tdesc_create_enum): Likewise.
10925         (tdesc_add_field): Likewise.
10926         (tdesc_add_typed_bitfield): Likewise.
10927         (tdesc_add_bitfield): Likewise.
10928         (tdesc_add_flag): Likewise.
10929         (tdesc_add_enum_value): Likewise.
10930         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10931         (struct tdesc_type_vector): Likewise.
10932         (struct tdesc_type_field): Likewise.
10933         (struct tdesc_type_with_fields): Likewise.
10934         (tdesc_create_enum): Add declaration.
10935         (tdesc_add_typed_bitfield): Likewise.
10936         (tdesc_add_enum_value): Likewise.
10937         * target-descriptions.c (tdesc_type_field): Move from here.
10938         (tdesc_type_builtin): Likewise.
10939         (tdesc_type_vector): Likewise.
10940         (tdesc_type_with_fields): Likewise.
10941         (tdesc_predefined_types): Likewise.
10942         (tdesc_named_type): Likewise.
10943         (tdesc_create_vector): Likewise.
10944         (tdesc_create_struct): Likewise.
10945         (tdesc_set_struct_size): Likewise.
10946         (tdesc_create_union): Likewise.
10947         (tdesc_create_flags): Likewise.
10948         (tdesc_create_enum): Likewise.
10949         (tdesc_add_field): Likewise.
10950         (tdesc_add_typed_bitfield): Likewise.
10951         (tdesc_add_bitfield): Likewise.
10952         (tdesc_add_flag): Likewise.
10953         (tdesc_add_enum_value): Likewise.
10954         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10955         (tdesc_add_typed_bitfield): Likewise.
10956         (tdesc_add_enum_value): Likewise.
10957
10958 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10959
10960         * common/tdesc.c (tdesc_feature::accept): Move to here.
10961         (tdesc_feature::operator==): Likewise.
10962         (tdesc_create_reg): Likewise.
10963         * common/tdesc.h (tdesc_type_kind): Likewise.
10964         (struct tdesc_type): Likewise.
10965         (struct tdesc_feature): Likewise.
10966         * regformats/regdat.sh: Create a feature.
10967         * target-descriptions.c (tdesc_type_kind): Move from here.
10968         (tdesc_type): Likewise.
10969         (tdesc_type_up): Likewise.
10970         (tdesc_feature): Likewise.
10971         (tdesc_create_reg): Likewise.
10972
10973 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10974
10975         * Makefile.in: Add arch/tdesc.c
10976         * common/tdesc.c: New file.
10977         * common/tdesc.h (tdesc_element_visitor): Move to here.
10978         (tdesc_element): Likewise.
10979         (tdesc_reg): Likewise.
10980         (tdesc_reg_up): Likewise.
10981         * regformats/regdef.h (reg): Add offset to constructors.
10982         * target-descriptions.c (tdesc_element_visitor): Move from here.
10983         (tdesc_element): Likewise.
10984         (tdesc_reg): Likewise.
10985         (tdesc_reg_up): Likewise.
10986
10987 2018-04-17  Tom Tromey  <tom@tromey.com>
10988
10989         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10990         discriminant field.
10991
10992 2018-04-17  Tom Tromey  <tom@tromey.com>
10993
10994         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10995
10996 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10997
10998         * symtab.c (print_symbol_info): Skip printing filename and line
10999         number when `last' is NULL.
11000         (symtab_symbol_info): Use empty string instead of NULL for first
11001         invocation of print_symbol_info.
11002         (rbreak_command): Pass NULL to `last' parameter of
11003         print_symbol_info.
11004
11005 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11006
11007         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11008         instead of nullptr.
11009
11010 2018-04-16  Pedro Alves  <palves@redhat.com>
11011
11012         * MAINTAINERS (sh): Remove.
11013         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11014         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11015         (ALLDEPFILES): Remove sh64-tdep.c.
11016         * NEWS: Mentions that support for SH-5/SH64 is removed.
11017         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11018         (sh*-*-openbsd*): Ditto.
11019         (sh64-*-elf*): Remove.
11020         (sh*): Remove.
11021         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11022         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11023         * sh-tdep.c: No longer include "sh64-tdep.h".
11024         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11025         * sh64-tdep.c, sh64-tdep.h: Remove files.
11026
11027 2018-04-16  Pedro Alves  <palves@redhat.com>
11028
11029         * MAINTAINERS: Remove m88k.
11030         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11031         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11032         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11033         * NEWS: Mention that support for m88k was removed.
11034         * configure.host (m88*-*-*): Remove support.
11035         * configure.nat (m88k-*-*): Remove support.
11036         * configure.tgt (m88*-*-openbsd*): Remove.
11037         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11038
11039 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11040
11041         * configure.tgt (x86_tobjs): New variable.
11042         (amd64_tobjs, i386_tobjs): Use it.
11043
11044 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11045
11046         * symtab.c (print_symbol_info): Precede the symbol definition by
11047         the line number when available.
11048         * NEWS: Advertise this enhancement.
11049
11050 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11051
11052         * NEWS (New options): announce set/show record btrace cpu.
11053         * btrace.c: Include record-btrace.h.
11054         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11055         the vendor is unknown.
11056         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11057         Maybe overwrite the btrace configuration's cpu.
11058         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11059         (btrace_fetch): Add cpu parameter.  Update callers.
11060         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11061         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11062         errata workarounds if the vendor is unknown.
11063         * python/py-record-btrace.c: Include record-btrace.h.
11064         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11065         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11066         * record-btrace.c (record_btrace_cpu_state_kind): New.
11067         (record_btrace_cpu): New.
11068         (set_record_btrace_cpu_cmdlist): New.
11069         (record_btrace_get_cpu): New.
11070         (require_btrace_thread, record_btrace_info)
11071         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11072         (cmd_set_record_btrace_cpu_none): New.
11073         (cmd_set_record_btrace_cpu_auto): New.
11074         (cmd_set_record_btrace_cpu): New.
11075         (cmd_show_record_btrace_cpu): New.
11076         (_initialize_record_btrace): Initialize set/show record btrace cpu
11077         commands.
11078         * record-btrace.h (record_btrace_get_cpu): New.
11079
11080 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11081
11082         * record.c (set_record_command): Fix typo in message.
11083
11084 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11085
11086         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11087
11088 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11089
11090         * infrun.c (process_event_stop_test): Call
11091         gdbarch_in_indirect_branch_thunk.
11092         * gdbarch.sh (in_indirect_branch_thunk): New.
11093         * gdbarch.c: Regenerated.
11094         * gdbarch.h: Regenerated.
11095         * x86-tdep.h: New.
11096         * x86-tdep.c: New.
11097         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11098         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11099         (ALLDEPFILES): Add x86-tdep.c.
11100         * arch-utils.h (default_in_indirect_branch_thunk): New.
11101         * arch-utils.c (default_in_indirect_branch_thunk): New.
11102         * i386-tdep: Include x86-tdep.h.
11103         (i386_in_indirect_branch_thunk): New.
11104         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11105         function.
11106         * amd64-tdep: Include x86-tdep.h.
11107         (amd64_in_indirect_branch_thunk): New.
11108         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11109
11110 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11111
11112         PR gdb/23053
11113         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11114         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11115         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11116         regression.
11117
11118 2018-04-12  Tom Tromey  <tom@tromey.com>
11119
11120         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11121         (rust_evaluate_subexp): Likewise.
11122
11123 2018-04-12  Pedro Alves  <palves@redhat.com>
11124
11125         * procfs.c (procfs_detach): Make forward declaration's prototype
11126         match definition's protototype.
11127         (proc_get_LDT_entry): Remove stale do_cleanups call.
11128
11129 2018-04-12  Pedro Alves  <palves@redhat.com>
11130
11131         * target.h (target_ops::to_has_exited): Delete.
11132         (target_has_exited): Delete.
11133         * target-delegates.c: Regenerate.
11134
11135 2018-04-11  Pedro Alves  <palves@redhat.com>
11136
11137         * target.c (fileio_fh_t::t): Add comment.
11138         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11139         (target_fileio_close): Handle a NULL target.
11140         (invalidate_fileio_fh): New.
11141         (target_close): Call it.
11142         * remote.c (remote_hostio_send_command): No longer check whether
11143         remote_desc is open.
11144
11145 2018-04-11  Pedro Alves  <palves@redhat.com>
11146
11147         * target.c (fileio_fh_t): Make it a named struct instead of a
11148         typedef.
11149         (fileio_fh_t::is_closed): New method.
11150         (DEF_VEC_O (fileio_fh_t)): Remove.
11151         (fileio_fhandles): Now a std::vector.
11152         (is_closed_fileio_fh): Delete.
11153         (acquire_fileio_fd): Adjust.  Rename parameters.
11154         (release_fileio_fd): Adjust.
11155         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11156         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11157         (target_fileio_close): Adjust.
11158
11159 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11160
11161         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11162         index.
11163
11164 2018-04-10  Pedro Alves  <palves@redhat.com>
11165
11166         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11167         (scoped_finish_thread_state): New class.
11168         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11169         cleanup.
11170         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11171         (fetch_inferior_event, normal_stop): Likewise.
11172         * thread.c (finish_thread_state_cleanup): Delete.
11173
11174 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11175             Pedro Alves  <palves@redhat.com>
11176
11177         * value.c: Include "selftest.h" and "common/array-view.h".
11178         (struct range) <operator ==>: New.
11179         (test_ranges_contain): New.
11180         (check_ranges_vector): New.
11181         (test_insert_into_bit_range_vector): New.
11182         (_initialize_values): Register selftests.
11183         * common/array-view.h (operator==, operator!=): New.
11184
11185 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11186
11187         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11188         an iterator.
11189         * inline-frame.c: Include <algorithm>.
11190         (struct inline_state): Add constructor.
11191         (inline_state_s): Remove.
11192         (DEF_VEC_O(inline_state_s)): Remove.
11193         (inline_states): Change type to std::vector.
11194         (find_inline_frame_state): Adjust to std::vector.
11195         (allocate_inline_frame_state): Remove.
11196         (clear_inline_frame_state): Adjust to std::vector.
11197         (skip_inline_frames): Adjust to std::vector.
11198
11199 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11200
11201         * tracepoint.h (struct trace_state_variable): Add constructor.
11202         <name>: Change type to std::string.
11203         * tracepoint.c (tsv_s): Remove.
11204         (DEF_VEC_O(tsv_s)): Remove.
11205         (tvariables): Change to std::vector.
11206         (create_trace_state_variable): Adjust to std::vector.
11207         (find_trace_state_variable): Likewise.
11208         (find_trace_state_variable_by_number): Likewise.
11209         (delete_trace_state_variable): Likewise.
11210         (trace_variable_command): Adjust to std::string.
11211         (delete_trace_variable_command): Likewise.
11212         (tvariables_info_1): Adjust to std::vector.
11213         (save_trace_state_variables): Likewise.
11214         (start_tracing): Likewise.
11215         (merge_uploaded_trace_state_variables): Adjust to std::vector
11216         and std::string.
11217         * target.h (struct target_ops)
11218         <to_download_trace_state_variable>: Pass reference to
11219         trace_state_variable.
11220         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11221         * target-delegates.c: Re-generate.
11222         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11223         (mi_tsv_deleted): Likewise.
11224         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11225         * remote.c (remote_download_trace_state_variable): Change
11226         pointer to reference and adjust.
11227         * make-target-delegates (parse_argtypes): Handle references.
11228         (write_function_header): Likewise.
11229         (munge_type): Likewise.
11230
11231 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11232
11233         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11234         string_view-selftests.c.
11235         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11236         testsuite.
11237         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11238         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11239         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11240         * unittests/basic_string_view/element_access/char/1.cc:
11241         Likewise.
11242         * unittests/basic_string_view/element_access/char/empty.cc:
11243         Likewise.
11244         * unittests/basic_string_view/element_access/char/front_back.cc:
11245         Likewise.
11246         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11247         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11248         Likewise.
11249         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11250         Likewise.
11251         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11252         Likewise.
11253         * unittests/basic_string_view/operations/compare/char/1.cc:
11254         Likewise.
11255         * unittests/basic_string_view/operations/compare/char/13650.cc:
11256         Likewise.
11257         * unittests/basic_string_view/operations/copy/char/1.cc:
11258         Likewise.
11259         * unittests/basic_string_view/operations/data/char/1.cc:
11260         Likewise.
11261         * unittests/basic_string_view/operations/find/char/1.cc:
11262         Likewise.
11263         * unittests/basic_string_view/operations/find/char/2.cc:
11264         Likewise.
11265         * unittests/basic_string_view/operations/find/char/3.cc:
11266         Likewise.
11267         * unittests/basic_string_view/operations/find/char/4.cc:
11268         Likewise.
11269         * unittests/basic_string_view/operations/rfind/char/1.cc:
11270         Likewise.
11271         * unittests/basic_string_view/operations/rfind/char/2.cc:
11272         Likewise.
11273         * unittests/basic_string_view/operations/rfind/char/3.cc:
11274         Likewise.
11275         * unittests/basic_string_view/operations/substr/char/1.cc:
11276         Likewise.
11277         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11278         * unittests/string_view-selftests.c: New file.
11279
11280 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11281
11282         * unittests/basic_string_view/capacity/1.cc: New file.
11283         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11284         * unittests/basic_string_view/cons/char/1.cc: New file.
11285         * unittests/basic_string_view/cons/char/2.cc: New file.
11286         * unittests/basic_string_view/cons/char/3.cc: New file.
11287         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11288         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11289         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11290         * unittests/basic_string_view/element_access/char/1.cc: New file.
11291         * unittests/basic_string_view/element_access/char/2.cc: New file.
11292         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11293         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11294         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11295         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11296         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11297         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11298         * unittests/basic_string_view/include.cc: New file.
11299         * unittests/basic_string_view/inserters/char/1.cc: New file.
11300         * unittests/basic_string_view/inserters/char/2.cc: New file.
11301         * unittests/basic_string_view/inserters/char/3.cc: New file.
11302         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11303         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11304         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11305         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11306         * unittests/basic_string_view/literals/types.cc: New file.
11307         * unittests/basic_string_view/literals/values.cc: New file.
11308         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11309         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11310         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11311         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11312         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11313         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11314         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11315         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11316         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11317         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11318         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11319         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11320         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11321         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11322         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11323         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11324         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11325         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11326         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11327         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11328         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11329         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11330         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11331         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11332         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11333         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11334         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11335         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11336         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11337         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11338         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11339         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11340         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11341         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11342         * unittests/basic_string_view/operators/char/2.cc: New file.
11343         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11344         * unittests/basic_string_view/range_access/char/1.cc: New file.
11345         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11346         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11347         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11348         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11349         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11350         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11351         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11352         * unittests/basic_string_view/typedefs.cc: New file.
11353         * unittests/basic_string_view/types/1.cc: New file.
11354
11355 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11356
11357         * common/gdb_string_view.h: Remove libstdc++ implementation
11358         details, adjust to gdb reality.
11359         * common/gdb_string_view.tcc: Likewise.
11360         * cli/cli-script.c (struct string_view): Remove.
11361         (user_args) <m_args>: Change element type to gdb::string_view.
11362         (user_args::insert_args): Adjust.
11363
11364 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11365
11366         * common/gdb_string_view.h: New file.
11367         * common/gdb_string_view.tcc: New file.
11368
11369 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11370
11371         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11372         * configure: Re-generate.
11373
11374 2018-04-09  Pedro Alves  <palves@redhat.com>
11375
11376         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11377         (set_target_gdbarch): Call
11378         gdb::observers::architecture_changed.notify instead of
11379         observer_notify_architecture_changed.
11380
11381 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11382
11383         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11384         (do_restore_current_traceframe_cleanup): Remove.
11385         (restore_current_traceframe_cleanup_dtor): Remove.
11386         (make_cleanup_restore_current_traceframe): Remove.
11387         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11388         New.
11389         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11390         * infrun.c (fetch_inferior_event): Use
11391         scoped_restore_current_traceframe.
11392
11393 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11394
11395         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11396         Remove.
11397         <n_allocated_type_units>: Remove.
11398         <all_type_units>: Change to std::vector.
11399         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11400         to std::vector change.
11401         (dwarf2_per_objfile::get_cutu): Likewise.
11402         (dwarf2_per_objfile::get_tu): Likewise.
11403         (create_signatured_type_table_from_index): Likewise.
11404         (create_signatured_type_table_from_debug_names): Likewise.
11405         (dw2_symtab_iter_next): Likewise.
11406         (dw2_print_stats): Likewise.
11407         (dw2_expand_all_symtabs): Likewise.
11408         (dw2_expand_marked_cus): Likewise.
11409         (dw2_debug_names_iterator::next): Likewise.
11410         (dwarf2_initialize_objfile): Likewise.
11411         (add_signatured_type_cu_to_table): Likewise.
11412         (create_all_type_units): Likewise.
11413         (add_type_unit): Likewise.
11414         (struct tu_abbrev_offset): Add constructor.
11415         (build_type_psymtabs_1): Adjust to std::vector change.
11416         (print_tu_stats): Likewise.
11417         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11418         (write_debug_names): Likewise.
11419
11420 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11421
11422         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11423         Make an std::vector.
11424         <n_comp_units>: Remove.
11425         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11426         to std::vector change.
11427         (dwarf2_per_objfile::get_cutu): Likewise.
11428         (dwarf2_per_objfile::get_cu): Likewise.
11429         (create_cus_from_index): Likewise.
11430         (create_addrmap_from_index): Likewise.
11431         (create_addrmap_from_aranges): Likewise.
11432         (dwarf2_read_index): Likewise.
11433         (dw2_find_last_source_symtab): Likewise.
11434         (dw2_map_symtabs_matching_filename): Likewise.
11435         (dw2_symtab_iter_next): Likewise.
11436         (dw2_print_stats): Likewise.
11437         (dw2_expand_all_symtabs): Likewise.
11438         (dw2_expand_symtabs_with_fullname): Likewise.
11439         (dw2_expand_marked_cus): Likewise.
11440         (dw2_map_symbol_filenames): Likewise.
11441         (create_cus_from_debug_names): Likewise.
11442         (dwarf2_read_debug_names): Likewise.
11443         (dw2_debug_names_iterator::next): Likewise.
11444         (dwarf2_initialize_objfile): Likewise.
11445         (set_partial_user): Likewise.
11446         (dwarf2_build_psymtabs_hard): Likewise.
11447         (read_comp_units_from_section): Remove arguments, adjust to
11448         std::vector change.
11449         (create_all_comp_units): Adjust to std::vector and
11450         read_comp_units_from_section changes.
11451         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11452         change.
11453         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11454         (psyms_seen_size): Likewise.
11455         (write_gdbindex): Likewise.
11456         (write_debug_names): Likewise.
11457
11458 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11459
11460         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11461         with dwarf2_per_objfile.
11462         (create_cus_from_index): Likewise.
11463         (create_signatured_type_table_from_index): Likewise.
11464         (dwarf2_read_index): Likewise.
11465         (dwarf2_initialize_objfile): Likewise.
11466         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11467         per_cu rather than get_dwarf2_per_objfile.
11468
11469 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11470
11471         * dwarf2read.h (struct signatured_type): Forward declare.
11472         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11473         New methods.
11474         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11475         (dw2_get_cutu): ...this.
11476         (dwarf2_per_objfile::get_cu): Rename from...
11477         (dw2_get_cu): ...this.
11478         (dwarf2_per_objfile::get_tu): New.
11479         (create_addrmap_from_index): Adjust.
11480         (create_addrmap_from_aranges): Adjust.
11481         (dw2_find_last_source_symtab): Adjust.
11482         (dw2_map_symtabs_matching_filename): Adjust.
11483         (dw2_symtab_iter_next): Adjust.
11484         (dw2_print_stats): Adjust.
11485         (dw2_expand_all_symtabs): Adjust.
11486         (dw2_expand_symtabs_with_fullname): Adjust.
11487         (dw2_expand_marked_cus): Adjust.
11488         (dw_expand_symtabs_matching_file_matcher): Adjust.
11489         (dw2_map_symbol_filenames): Adjust.
11490         (dw2_debug_names_iterator::next): Adjust.
11491         (dwarf2_initialize_objfile): Adjust.
11492         (set_partial_user): Adjust.
11493         (dwarf2_build_psymtabs_hard): Adjust.
11494
11495 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11496
11497         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11498         Remove unused variables.
11499         (dw2_map_symtabs_matching_filename): Likewise.
11500         (dwarf2_record_block_ranges): Likewise.
11501         (dwarf2_read_addr_index): Likewise.
11502         (follow_die_offset): Likewise.
11503
11504 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11505
11506         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11507         to symbol_file_add_main.
11508
11509 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11510
11511         PR mi/22299
11512         * mi/mi-console.c (do_fputc_async_safe): New.
11513         (mi_console_file::write_async_safe): New.
11514         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11515         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11516         New.
11517         * ui-file.c (ui_file::putstrn): Adjust call to
11518         fputstrn_unfiltered.
11519         * utils.c (printchar): Replace do_fputs and do_fprintf
11520         parameters by do_fputc.
11521         (fputstr_filtered): Adjust call to printchar.
11522         (fputstr_unfiltered): Likewise.
11523         (fputstrn_filtered): Likewise.
11524         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11525         printchar.
11526         * utils.h (do_fputc_ftype): New typedef.
11527         (fputstrn_unfiltered): Add do_fputc parameter.
11528
11529 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11530
11531         * regformats/i386/i386-avx.dat: Remove.
11532
11533 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11534
11535         PR gdb/22979
11536         * amd64-tdep.c (amd64_none_init_abi): New function.
11537         (amd64_x32_none_init_abi): New function.
11538         (_initialize_amd64_tdep): Register handlers for x86-64 and
11539         x64_32 with GDB_OSABI_NONE.
11540         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11541         GDB_OSABI_NONE osabi.
11542
11543 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11544
11545         PR gdb/22980
11546         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11547         GDB_OSABI_NONE.
11548         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11549         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11550
11551 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11552
11553         * common/byte-vector.h (char_vector): New type.
11554         * target.h (target_read_alloc): Return
11555         gdb::optional<byte_vector>.
11556         (target_read_stralloc): Return gdb::optional<char_vector>.
11557         (target_get_osdata): Return gdb::optional<char_vector>.
11558         * target.c (target_read_alloc_1): Templatize.  Replacement
11559         manual memory management with vector.
11560         (target_read_alloc): Change return type, adjust.
11561         (target_read_stralloc): Change return type, adjust.
11562         (target_get_osdata): Change return type, adjust.
11563         * auxv.c (struct auxv_info) <length>: Remove.
11564         <data>: Change type to gdb::optional<byte_vector>.
11565         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11566         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11567         (target_auxv_search): Adjust.
11568         (fprint_target_auxv): Adjust.
11569         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11570         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11571         (linux_make_corefile_notes): Adjust.
11572         * osdata.c (get_osdata): Adjust.
11573         * remote.c (remote_get_threads_with_qxfer): Adjust.
11574         (remote_memory_map): Adjust.
11575         (remote_traceframe_info): Adjust.
11576         (btrace_read_config): Adjust.
11577         (remote_read_btrace): Adjust.
11578         (remote_pid_to_exec_file): Adjust.
11579         * solib-aix.c (solib_aix_get_library_list): Adjust.
11580         * solib-dsbt.c (decode_loadmap): Don't free buf.
11581         (dsbt_get_initial_loadmaps): Adjust.
11582         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11583         * solib-target.c (solib_target_current_sos): Adjust.
11584         * tracepoint.c (sdata_make_value): Adjust.
11585         * xml-support.c (xinclude_start_include): Adjust.
11586         (xml_fetch_content_from_file): Adjust.
11587         * xml-support.h (xml_fetch_another): Change return type.
11588         (xml_fetch_content_from_file): Change return type.
11589         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11590         * xml-tdesc.c (file_read_description_xml): Adjust.
11591         (fetch_available_features_from_target): Change return type.
11592         (target_fetch_description_xml): Adjust.
11593         (target_read_description_xml): Adjust.
11594
11595 2018-04-06  Tom Tromey  <tom@tromey.com>
11596
11597         * value.c (~value): Update.
11598         (struct value) <contents>: Now unique_xmalloc_ptr.
11599         (value_contents_bits_eq, allocate_value_contents)
11600         (value_contents_raw, value_contents_all_raw)
11601         (value_contents_for_printing, value_contents_for_printing_const)
11602         (set_value_enclosing_type): Update.
11603
11604 2018-04-06  Tom Tromey  <tom@tromey.com>
11605
11606         * value.c (range_s): Remove typedef, VEC.
11607         (struct range): Add operator<.
11608         (range_lessthan): Remove.
11609         (ranges_contain): Change type.
11610         (~value): Update.
11611         (struct value) <unavailable, optimized_out>: Now std::vector.
11612         (value_entirely_available)
11613         (value_entirely_covered_by_range_vector)
11614         (value_entirely_unavailable, value_entirely_optimized_out):
11615         Update.
11616         (insert_into_bit_range_vector): Change argument type.
11617         (find_first_range_overlap): Likewise.
11618         (struct ranges_and_idx, value_contents_bits_eq)
11619         (require_not_optimized_out, require_available): Update.
11620         (ranges_copy_adjusted): Change argument types.
11621         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11622
11623 2018-04-06  Tom Tromey  <tom@tromey.com>
11624
11625         * value.c (~value): Update.
11626         (struct value) <parent>: Now a value_ref_ptr.
11627         (value_parent, set_value_parent, value_address, value_copy):
11628         Update.
11629
11630 2018-04-06  Tom Tromey  <tom@tromey.com>
11631
11632         * value.c (struct value): Add constructor, destructor, and member
11633         initializers.
11634         (allocate_value_lazy, value_decref): Update.
11635
11636 2018-04-06  Tom Tromey  <tom@tromey.com>
11637
11638         * value.c (struct value) <released, next>: Remove.
11639         (all_values): Now a std::vector.
11640         (allocate_value_lazy): Update.
11641         (value_next): Remove.
11642         (value_mark, value_free_to_mark, release_value)
11643         (value_release_to_mark): Update.
11644
11645 2018-04-06  Tom Tromey  <tom@tromey.com>
11646
11647         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11648         (free_value_chain): Remove.
11649         * value.c (free_value_chain): Remove.
11650         (value_release_to_mark): Return a std::vector.
11651         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11652         std::vector.
11653         (check_condition): Update.
11654         * eval.c (fetch_subexp_value): Change "val_chain" to a
11655         std::vector.
11656         * breakpoint.c (update_watchpoint): Update.
11657         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11658
11659 2018-04-06  Tom Tromey  <tom@tromey.com>
11660
11661         * value.h (free_all_values): Remove.
11662         * value.c (free_all_values): Remove.
11663
11664 2018-04-06  Tom Tromey  <tom@tromey.com>
11665
11666         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11667         (value_history_chain, value_history_count): Remove.
11668         (value_history): New global.
11669         (record_latest_value, access_value_history, show_values)
11670         (preserve_values): Update.
11671
11672 2018-04-06  Tom Tromey  <tom@tromey.com>
11673
11674         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11675         * varobj.c (varobj_set_display_format, varobj_set_value)
11676         (install_default_visualizer, construct_visualizer)
11677         (install_new_value, ~varobj, varobj_get_value_type)
11678         (my_value_of_variable, varobj_editable_p): Update.
11679         * c-varobj.c (c_describe_child, c_value_of_variable)
11680         (cplus_number_of_children, cplus_describe_child): Update.
11681         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11682         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11683         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11684
11685 2018-04-06  Tom Tromey  <tom@tromey.com>
11686
11687         * printcmd.c (last_examine_address): Change type to
11688         value_ref_ptr.
11689         (do_examine, x_command): Update.
11690
11691 2018-04-06  Tom Tromey  <tom@tromey.com>
11692
11693         * value.c (release_value): Update.
11694         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11695         (struct bpstats) <val>: Now a value_ref_ptr.
11696         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11697         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11698         (~watchpoint, print_it_watchpoint, watch_command_1)
11699         (invalidate_bp_value_on_memory_change): Update.
11700
11701 2018-04-06  Tom Tromey  <tom@tromey.com>
11702
11703         * varobj.c (varobj_clear_saved_item)
11704         (update_dynamic_varobj_children, install_new_value, ~varobj):
11705         Update.
11706         * value.h (value_incref): Move declaration earlier.
11707         (value_decref): Rename from value_free.
11708         (struct value_ref_policy): New.
11709         (value_ref_ptr): New typedef.
11710         (struct value_deleter): Remove.
11711         (gdb_value_up): Remove typedef.
11712         (release_value): Change return type.
11713         (release_value_or_incref): Remove.
11714         * value.c (set_value_parent): Update.
11715         (value_incref): Change return type.
11716         (value_decref): Rename from value_free.
11717         (value_free_to_mark, free_all_values, free_value_chain): Update.
11718         (release_value): Return value_ref_ptr.
11719         (release_value_or_incref): Remove.
11720         (record_latest_value, set_internalvar, clear_internalvar):
11721         Update.
11722         * stack.c (info_frame_command): Don't call value_free.
11723         * python/py-value.c (valpy_dealloc, valpy_new)
11724         (value_to_value_object): Update.
11725         * printcmd.c (do_examine): Update.
11726         * opencl-lang.c (lval_func_free_closure): Update.
11727         * mi/mi-main.c (register_changed_p): Don't call value_free.
11728         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11729         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11730         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11731         value_free.
11732         * guile/scm-value.c (vlscm_free_value_smob)
11733         (vlscm_scm_from_value): Update.
11734         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11735         (frame_unwind_register_unsigned, get_frame_register_bytes)
11736         (put_frame_register_bytes): Don't call value_free.
11737         * findvar.c (address_from_register): Don't call value_free.
11738         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11739         * dwarf2loc.c (entry_data_value_free_closure)
11740         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11741         (dwarf2_evaluate_loc_desc_full): Update.
11742         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11743         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11744         (~watchpoint, watch_command_1)
11745         (invalidate_bp_value_on_memory_change): Update.
11746         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11747
11748 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11749
11750         PR gdb/23022
11751         * warning.m4: Add -Wno-error=deprecated-register.
11752         * configure: Re-generate.
11753
11754 2018-04-05  Tom Tromey  <tom@tromey.com>
11755
11756         * linespec.h: Remove include of "vec.h".
11757
11758 2018-04-05  Tom Tromey  <tom@tromey.com>
11759
11760         * linespec.c (typep): Remove typedef.
11761         (find_methods, find_superclass_methods): Take a std::vector.
11762         (find_method): Use std::vector.
11763
11764 2018-04-05  Tom Tromey  <tom@tromey.com>
11765
11766         * utils.c (compare_strings): Remove.
11767         * utils.h (compare_strings): Remove.
11768         * objc-lang.h (find_imps): Update.
11769         * objc-lang.c (find_methods): Take a std::vector.
11770         (uniquify_strings, find_imps): Likewise.
11771         * linespec.c (find_methods): Take a std::vector.
11772         (decode_objc): Use std::vector.
11773         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11774         a std::vector.
11775         (find_method, find_function_symbols): Use std::vector.
11776
11777 2018-04-05  Tom Tromey  <tom@tromey.com>
11778
11779         * completer.c (completion_tracker::completion_tracker): Remove
11780         cast.
11781         (completion_tracker::discard_completions): Likewise.
11782         * breakpoint.c (ambiguous_names_p): Remove cast.
11783         * ada-lang.c (_initialize_ada_language): Remove cast.
11784         * utils.h (streq): Update.
11785         (streq_hash): Add new declaration.
11786         * utils.c (streq): Return bool.
11787         (streq_hash): New function.
11788
11789 2018-04-05  Tom Tromey  <tom@tromey.com>
11790
11791         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11792         Remove a string copy.
11793
11794 2018-04-05  Tom Tromey  <tom@tromey.com>
11795
11796         * linespec.c (filter_results): Use std::vector.
11797         (decode_line_2, decode_line_full): Update.
11798
11799 2018-04-05  Tom Tromey  <tom@tromey.com>
11800
11801         * linespec.c (canonical_to_fullform): Return std::string.
11802         (filter_results): Update.
11803         (struct decode_line_2_item): Add constructor.
11804         <fullform, displayform>: Now std::string.
11805         (decode_line_2_compare_items): Now a std::sort comparator.
11806         (decode_line_2): Update.
11807
11808 2018-04-05  Tom Tromey  <tom@tromey.com>
11809
11810         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11811         (unexpected_linespec_error): Update.
11812         (linespec_parse_basic, parse_linespec): Update.
11813
11814 2018-04-05  Tom Tromey  <tom@tromey.com>
11815
11816         * linespec.c (linespec_parse_basic): Reindent.
11817
11818 2018-04-05  Tom Tromey  <tom@tromey.com>
11819
11820         * minsyms.h (iterate_over_minimal_symbols): Update.
11821         * minsyms.c (iterate_over_minimal_symbols): Take a
11822         gdb::function_view.
11823         * linespec.c (struct collect_minsyms): Remove.
11824         (compare_msyms): Now a std::sort comparator.
11825         (add_minsym): Add parameters.
11826         (search_minsyms_for_name): Update.  Use std::vector.
11827
11828 2018-04-03  Tom Tromey  <tom@tromey.com>
11829
11830         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11831         gdb::byte_vector.
11832
11833 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11834
11835         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11836
11837 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11838
11839         PR gdb/16959
11840         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11841         printing static type.
11842
11843 2018-04-01  Tom Tromey  <tom@tromey.com>
11844
11845         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11846         (rs6000_xfer_shared_libraries): Update.
11847
11848 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11849
11850         * common/gdb_vecs.h (char_ptr): Remove.
11851         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11852
11853 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11854
11855         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11856         with std::vector.
11857         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11858
11859 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11860
11861         * tracepoint.h (struct uploaded_tp): Initialize fields.
11862         <actions, step_actions, cmd_strings>: Change type to
11863         std::vector<char *>.
11864         * tracepoint.c (get_uploaded_tp): Allocate with new.
11865         (free_uploaded_tps): Free with delete.
11866         (parse_tracepoint_definition): Adjust to std::vector change.
11867         * breakpoint.c (read_uploaded_action): Likewise.
11868         (create_tracepoint_from_upload): Likewise.
11869         * ctf.c (ctf_write_uploaded_tp): Likewise.
11870         (SET_ARRAY_FIELD): Likewise.
11871         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11872
11873 2018-03-30  Tom Tromey  <tom@tromey.com>
11874
11875         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11876         std::unique_ptr.
11877         (svr4_keep_data_in_core): Update.
11878         (svr4_read_so_list): Update.
11879
11880 2018-03-30  Tom Tromey  <tom@tromey.com>
11881
11882         * windows-nat.c (handle_output_debug_string, handle_exception):
11883         Update.
11884         * target.h (target_read_string): Update.
11885         * target.c (target_read_string): Change "string" to
11886         unique_xmalloc_ptr.
11887         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11888         Update.
11889         * solib-frv.c (frv_current_sos): Update.
11890         * solib-dsbt.c (dsbt_current_sos): Update.
11891         * solib-darwin.c (darwin_current_sos): Update.
11892         * linux-thread-db.c (inferior_has_bug): Update.
11893         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11894         Update.  Remove alloca.
11895         * ada-lang.c (ada_main_name): Update.
11896
11897 2018-03-30  Tom Tromey  <tom@tromey.com>
11898
11899         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11900         (struct dwo_file_deleter): New.
11901         (dwo_file_up): New typedef.
11902         (open_and_init_dwo_file): Use dwo_file_up.
11903         (free_dwo_file_cleanup): Remove.
11904
11905 2018-03-30  Tom Tromey  <tom@tromey.com>
11906
11907         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11908         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11909
11910 2018-03-30  Tom Tromey  <tom@tromey.com>
11911
11912         * dwarf2read.c (class free_cached_comp_units): New class.
11913         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11914         (free_cached_comp_units): Remove function.
11915
11916 2018-03-30  Tom Tromey  <tom@tromey.com>
11917
11918         * utils.h (make_cleanup_unpush_target): Remove.
11919         * inf-ptrace.c (struct target_unpusher): New.
11920         (target_unpush_up) New typedef.
11921         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11922         target_unpush_up.
11923         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11924
11925 2018-03-27  Tom Tromey  <tom@tromey.com>
11926
11927         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11928
11929 2018-03-27  Pedro Alves  <palves@redhat.com>
11930             Tom Tromey  <tom@tromey.com>
11931
11932         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11933         destructor.  Now a class.
11934         (gdb_readline_wrapper_cleanup): Remove function.
11935         (gdb_readline_wrapper): Remove cleanups.
11936
11937 2018-03-27  Tom Tromey  <tom@tromey.com>
11938
11939         * typeprint.h (struct type_print_options) <local_typedefs,
11940         global_typedefs>: Remove "struct" keyword.
11941         (class typedef_hash_table): New class.
11942         (recursively_update_typedef_hash, add_template_parameters)
11943         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11944         (find_typedef_in_hash): Don't declare.
11945         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11946         (typedef_hash_table::recursively_update): Rename from
11947         recursively_update_typedef_hash.  Now a member.
11948         (typedef_hash_table::add_template_parameters): Rename from
11949         add_template_parameters.  Now a member.
11950         (typedef_hash_table::typedef_hash_table): Now a constructor;
11951         rename from create_typedef_hash.
11952         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11953         rename from free_typedef_hash.
11954         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11955         (do_free_global_table): Remove.
11956         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11957         from copy_type_recursive.
11958         (create_global_typedef_table): Remove.
11959         (typedef_hash_table::find_global_typedef): Now a member of
11960         typedef_hash_table.
11961         (typedef_hash_table::find_typedef): Rename from
11962         find_typedef_in_hash; now a member.
11963         (whatis_exp): Update.
11964         * extension.h (struct ext_lang_type_printers): Add constructor and
11965         destructor.
11966         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11967         declare.
11968         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11969         Now a constructor; rename from start_ext_lang_type_printers.
11970         (ext_lang_type_printers): Now a destructor; rename from
11971         free_ext_lang_type_printers.
11972         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11973         Update.
11974         (c_type_print_base_struct_union): Update.  Remove cleanups.
11975
11976 2018-03-27  Tom Tromey  <tom@tromey.com>
11977
11978         * dwarf-index-write.c: Include <cmath>.
11979
11980 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11981
11982         * NEWS: Add entry describing new "set|show varsize-limit" command.
11983         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11984         command.
11985         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11986         "set variable".
11987
11988 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11989
11990         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11991         dwarf-index-write.c
11992         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11993         * dwarf-index-common.c: New file.
11994         * dwarf-index-common.h: New file.
11995         * dwarf-index-write.c: New file.
11996         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11997         (struct dwarf2_section_info): Move from here.
11998         (dwarf2_section_info_def): Likewise.
11999         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12000         (offset_type): Likewise.
12001         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12002         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12003         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12004         (byte_swap): Likewise.
12005         (MAYBE_SWAP): Likewise.
12006         (dwarf2_per_cu_ptr): Likewise.
12007         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12008         (struct tu_stats): Likewise.
12009         (struct dwarf2_per_objfile): Likewise.
12010         (struct dwarf2_per_cu_data): Likewise.
12011         (struct signatured_type): Likewise.
12012         (sig_type_ptr): Likewise.
12013         (DEF_VEC_P (sig_type_ptr)): Likewise.
12014         (INDEX4_SUFFIX): Likewise.
12015         (INDEX5_SUFFIX): Likewise.
12016         (DEBUG_STR_SUFFIX): Likewise.
12017         (dwarf2_read_section): Make non-static.
12018         (mapped_index_string_hash): Move from here.
12019         (dwarf5_djb_hash): Likewise.
12020         (file_write): Likewise.
12021         (class data_buf): Likewise.
12022         (struct symtab_index_entry): Likewise.
12023         (struct mapped_symtab): Likewise.
12024         (find_slot): Likewise.
12025         (hash_expand): Likewise.
12026         (add_index_entry): Likewise.
12027         (uniquify_cu_indices): Likewise.
12028         (class c_str_view): Likewise.
12029         (class c_str_view_hasher): Likewise.
12030         (class vector_hasher): Likewise.
12031         (write_hash_table): Likewise.
12032         (psym_index_map): Likewise.
12033         (struct addrmap_index_data): Likewise.
12034         (add_address_entry): Likewise.
12035         (add_address_entry_worker): Likewise.
12036         (write_address_map): Likewise.
12037         (symbol_kind): Likewise.
12038         (write_psymbols): Likewise.
12039         (struct signatured_type_index_data): Likewise.
12040         (write_one_signatured_type): Likewise.
12041         (recursively_count_psymbols): Likewise.
12042         (recursively_write_psymbols): Likewise.
12043         (class debug_names): Likewise.
12044         (check_dwarf64_offsets): Likewise.
12045         (psyms_seen_size): Likewise.
12046         (write_gdbindex): Likewise.
12047         (write_debug_names): Likewise.
12048         (assert_file_size): Likewise.
12049         (write_psymtabs_to_index): Likewise.
12050         (save_gdb_index_command): Likewise.
12051         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12052         command.
12053         * dwarf2read.h: New file.
12054
12055 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12056
12057         PR gdb/22670
12058         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12059         symbol name if the CU's language stores symbol names in linkage
12060         format.
12061         * language.h (struct language_defn)
12062         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12063         all instances of this struct.
12064
12065 2018-03-26  Tom Tromey  <tom@tromey.com>
12066
12067         * stack.c (backtrace_command_1): Remove verbose code.
12068
12069 2018-03-26  Tom Tromey  <tom@tromey.com>
12070
12071         * python/py-framefilter.c (py_print_type): Don't catch
12072         exceptions.  Return void.
12073         (py_print_value): Likewise.
12074         (py_print_single_arg): Likewise.
12075         (enumerate_args): Don't catch exceptions.
12076         (py_print_args): Likewise.
12077         (py_print_frame): Likewise.
12078         (gdbpy_apply_frame_filter): Catch exceptions here.
12079
12080 2018-03-26  Tom Tromey  <tom@tromey.com>
12081
12082         * stack.c (_initialize_stack): Remove trailing newlines from help
12083         text.  Add "Usage" line to "backtrace" help.
12084
12085 2018-03-26  Tom Tromey  <tom@tromey.com>
12086
12087         PR python/16486:
12088         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12089
12090 2018-03-26  Tom Tromey  <tom@tromey.com>
12091
12092         * python/py-framefilter.c (py_print_single_arg): Return
12093         EXT_LANG_BT_ERROR from catch.
12094
12095 2018-03-26  Tom Tromey  <tom@tromey.com>
12096
12097         PR backtrace/15584:
12098         * stack.c (backtrace_command_1): Move some code into no-filters
12099         "if".
12100
12101 2018-03-26  Tom Tromey  <tom@tromey.com>
12102
12103         * python/py-framefilter.c (throw_quit_or_print_exception): New
12104         function.
12105         (gdbpy_apply_frame_filter): Use it.
12106
12107 2018-03-26  Tom Tromey  <tom@tromey.com>
12108
12109         PR cli/17716:
12110         * python/py-framefilter.c (py_print_type, py_print_value)
12111         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12112         RETURN_MASK_ERROR.
12113
12114 2018-03-26  Tom Tromey  <tom@tromey.com>
12115
12116         * python/py-framefilter.c (enumerate_args): Use
12117         gdb::unique_xmalloc_ptr.
12118
12119 2018-03-26  Tom Tromey  <tom@tromey.com>
12120
12121         * python/py-framefilter.c (py_print_frame): Return
12122         EXT_LANG_BT_OK.
12123         (gdbpy_apply_frame_filter): Update comment.
12124         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12125         Remove.
12126         <EXT_LANG_BT_NO_FILTERS>: Change value.
12127
12128 2018-03-26  Tom Tromey  <tom@tromey.com>
12129
12130         PR backtrace/15582:
12131         * stack.c (backtrace_command): Parse "hide" argument.
12132         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12133         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12134         constant.
12135
12136 2018-03-26  Tom Tromey  <tom@tromey.com>
12137
12138         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12139         add "flags".
12140         (backtrace_command): Remove "fulltrace", add "flags".
12141
12142 2018-03-26  Tom Tromey  <tom@tromey.com>
12143
12144         * stack.c (backtrace_command): Rewrite command line parsing.
12145
12146 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12147
12148         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12149
12150 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12151
12152         * filename-seen-cache.h: Add include guard.
12153
12154 2018-03-26  Keith Seitz  <keiths@redhat.com>
12155
12156         * symfile.c (place_section): Remove "struct" from section_addr_info
12157         in comment.
12158         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12159         "struct" keyword from section_addr_info.
12160
12161 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12162
12163         * regformats/regdef.h (reg): Add constructors.
12164
12165 2018-03-25  Pedro Alves  <palves@redhat.com>
12166
12167         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12168         if then/else bodies in var_func_name extraction.
12169
12170 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12171
12172         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12173         lookup_minimal_symbol() to find symbol entry.
12174         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12175
12176 2018-03-23  Keith Seitz  <keiths@redhat.com>
12177
12178         PR c++/22968
12179         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12180         nested type definitions for C++, too.
12181
12182 2018-03-23  Tom Tromey  <tom@tromey.com>
12183
12184         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12185         a typedef.
12186         (macho_register_oso): Remove.
12187         (macho_symtab_read): Take a std::vector.
12188         (oso_el_compare_name): Now a std::sort comparator.
12189         (macho_symfile_read_all_oso): Take a std::vector.
12190         (macho_symfile_read): Use std::vector.  Remove cleanups.
12191
12192 2018-03-22  Tom Tromey  <tom@tromey.com>
12193
12194         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12195         (record_full_goto_bookmark): Use std::string.
12196
12197 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12198
12199         PR tdep/18295
12200         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12201         a single mask.
12202
12203 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12204
12205         * rs6000-tdep.c (store_insn_p): New function.
12206         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12207         and cr_reg to their unshifted values. Use store_insn_p to
12208         match LR saves using either R1 or fdata->alloca_reg. Use
12209         store_insn_p to match CR saves. Set alloca_reg_offset
12210         when alloca_reg and framep are set. Remove lr_reg shift
12211         when assigning to fdata->lr_register.
12212
12213 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12214
12215         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12216         command line args instead of emitting a warning.
12217
12218 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12219
12220         * tracepoint.h (struct static_tracepoint_marker): Initialize
12221         fields, define default constructor, move constructor and move
12222         assignment, disable the rest.
12223         <str_id, extra>: Make std::string.
12224         (release_static_tracepoint_marker): Remove.
12225         (free_current_marker): Remove.
12226         * tracepoint.c (free_current_marker): Remove.
12227         (parse_static_tracepoint_marker_definition): Adjust to
12228         std::string, use new hex2str overload.
12229         (release_static_tracepoint_marker): Remove.
12230         (print_one_static_tracepoint_marker): Get marker by reference
12231         and adjust to std::string.
12232         (info_static_tracepoint_markers_command): Adjust to std::vector
12233         changes
12234         * target.h (static_tracepoint_marker_p): Remove typedef.
12235         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12236         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12237         bool.
12238         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12239         * target-debug.h
12240         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12241         (target_debug_print_std_vector_static_tracepoint_marker): New.
12242         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12243         to...
12244         (target_debug_print_static_tracepoint_marker_p): ... this.
12245         * target-delegates.c: Re-generate.
12246         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12247         Make std::string.
12248         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12249         (decode_static_tracepoint_spec): Adjust to std::vector.
12250         (tracepoint_print_one_detail): Adjust to std::string.
12251         (strace_marker_decode_location): Adjust to std::string.
12252         (update_static_tracepoint): Adjust to std::string, remove call
12253         to release_static_tracepoint_marker.
12254         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12255         Adjust to std::vector.
12256         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12257         (remote_static_tracepoint_markers_by_strid): Adjust to
12258         std::vector.
12259         * common/rsp-low.h (hex2str): New overload with explicit count
12260         of bytes.
12261         * common/rsp-low.c (hex2str): New overload with explicit count
12262         of bytes.
12263         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12264         (_initialize_rsp_low_selftests): Add test_hex2str test.
12265         * unittests/tracepoint-selftests.c
12266         (test_parse_static_tracepoint_marker_definition): Adjust to
12267         std::string.
12268
12269 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12270
12271         * tracepoint.c (parse_static_tracepoint_marker_definition):
12272         Consider case where the definition is followed by more
12273         definitions.
12274         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12275         tracepoint-selftests.c.
12276         * unittests/tracepoint-selftests.c: New.
12277
12278 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12279
12280         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12281         Carvalho.
12282
12283 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12284
12285         * symtab.c (find_pc_sect_line): fixed indentation.
12286
12287 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12288
12289         * symtab.c (find_pc_sect_line): now uses binary search.
12290
12291 2018-03-19  Tom Tromey  <tom@tromey.com>
12292
12293         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12294         "IDENT" production.
12295
12296 2018-03-19  Pedro Alves  <palves@redhat.com>
12297             Tom Tromey  <tom@tromey.com>
12298
12299         * unittests/observable-selftests.c: New file.
12300         * common/observable.h: New file.
12301         * observable.h: New file.
12302         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12303         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12304         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12305         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12306         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12307         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12308         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12309         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12310         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12311         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12312         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12313         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12314         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12315         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12316         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12317         tui/tui-interp.c, valops.c: Update all users.
12318         * tui/tui-hooks.c (tui_bp_created_observer)
12319         (tui_bp_deleted_observer, tui_bp_modified_observer)
12320         (tui_inferior_exit_observer, tui_before_prompt_observer)
12321         (tui_normal_stop_observer, tui_register_changed_observer):
12322         Remove.
12323         (tui_observers_token): New global.
12324         (attach_or_detach, tui_attach_detach_observers): New functions.
12325         (tui_install_hooks, tui_remove_hooks): Use
12326         tui_attach_detach_observers.
12327         * record-btrace.c (record_btrace_thread_observer): Remove.
12328         (record_btrace_thread_observer_token): New global.
12329         * observer.sh: Remove.
12330         * observer.c: Rename to observable.c.
12331         * observable.c (namespace gdb_observers): Define new objects.
12332         (observer_debug): Move into gdb_observers namespace.
12333         (struct observer, struct observer_list, xalloc_observer_list_node)
12334         (xfree_observer_list_node, generic_observer_attach)
12335         (generic_observer_detach, generic_observer_notify): Remove.
12336         (_initialize_observer): Update.
12337         Don't include observer.inc.
12338         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12339         (clean mostlyclean): Likewise.
12340         (observer.h, observer.inc): Remove targets.
12341         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12342         (COMMON_SFILES): Use observable.c, not observer.c.
12343         * .gitignore: Remove observer.h.
12344
12345 2018-03-18  Tom Tromey  <tom@tromey.com>
12346
12347         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12348         gdb::def_vector.
12349         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12350
12351 2018-03-17  Tom Tromey  <tom@tromey.com>
12352
12353         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12354
12355 2018-03-17  Tom Tromey  <tom@tromey.com>
12356
12357         * target.c (class scoped_target_fd): New.
12358         (target_fileio_close_cleanup): Remove.
12359         (target_fileio_read_alloc_1): Use scoped_target_fd.
12360
12361 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12362
12363         * silent-rules.mk: New.
12364         * Makefile.in: Include silent-rules.mk
12365         (srcdir, VPATH, top_srcdir): Move up.
12366         (COMPILE): Add ECHO_CXX.
12367         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12368         (init.c): Add ECHO_INIT_C.
12369         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12370         (version.c): Add ECHO_GEN.
12371         (printcmd.o): Add ECHO_CXX.
12372         (target-float.o): Add ECHO_CXX.
12373         (ada-exp.o): Add ECHO_CXX.
12374         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12375         (insight$(EXEEXT)): Add ECHO_CXXLD.
12376         * gnulib/configure.ac: Add AM_SILENT_RULES.
12377         * gnulib/aclocal.m4: Re-generate.
12378         * gnulib/configure: Re-generate.
12379         * gnulib/import/Makefile.in: Re-generate.
12380
12381 2018-03-16  Tom Tromey  <tom@tromey.com>
12382
12383         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12384         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12385         * utils.c (do_free_section_addr_info)
12386         (make_cleanup_free_section_addr_info): Remove.
12387         * symfile.h (struct other_sections): Add constructor.
12388         (struct section_addr_info): Remove.
12389         (section_addr_info): New typedef.
12390         (struct sym_fns) <sym_offsets>: Change type of parameter.
12391         (build_section_addr_info_from_objfile)
12392         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12393         (default_symfile_offsets, symbol_file_add)
12394         (symbol_file_add_from_bfd)
12395         (build_section_addr_info_from_section_table): Update.
12396         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12397         * symfile.c (alloc_section_addr_info): Remove.
12398         (build_section_addr_info_from_section_table): Change return type.
12399         Update.
12400         (build_section_addr_info_from_bfd)
12401         (build_section_addr_info_from_objfile): Likewise.
12402         (free_section_addr_info): Remove.
12403         (relative_addr_info_to_section_offsets): Change type of "addrs".
12404         (addrs_section_compar): Now a std::sort comparator.
12405         (addrs_section_sort): Change return type.
12406         (addr_info_make_relative): Change type of "addrs".  Update.
12407         (default_symfile_offsets, syms_from_objfile_1)
12408         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12409         (symbol_file_add_separate): Update.
12410         (symbol_file_add): Change type of "addrs".  Update.
12411         (add_symbol_file_command): Update.  Remove cleanups.
12412         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12413         cleanups.
12414         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12415         * solib.c (solib_read_symbols): Update.
12416         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12417         * machoread.c (macho_symfile_offsets): Update.
12418         * jit.c (jit_bfd_try_read_symtab): Update.
12419
12420 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12421
12422         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12423         unittests/utils-selftests.c.
12424         * unittests/utils-selftests.c: New file.
12425
12426 2018-03-14  Tom Tromey  <tom@tromey.com>
12427
12428         PR cli/14977:
12429         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12430         for NULL.
12431
12432 2018-03-14  Tom Tromey  <tom@tromey.com>
12433
12434         PR cli/19918:
12435         * printcmd.c (printf_pointer): Allow "-" in format.
12436
12437 2018-03-14  Tom Tromey  <tom@tromey.com>
12438
12439         * printcmd.c (_initialize_printcmd): Add usage to printf.
12440
12441 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12442
12443         * MAINTAINERS: Update my email address.
12444
12445 2018-03-13  Tom Tromey  <tom@tromey.com>
12446
12447         * machoread.c (macho_check_dsym): Change filenamep to a
12448         std::string*.
12449         (macho_symfile_read): Update.
12450         * symfile.c (load_command): Use std::string.
12451
12452 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12453
12454         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12455         to error message string.
12456         (riscv_register_name): Use xsnprintf instead of sprintf.
12457         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12458         internal_error.
12459         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12460         error.
12461         (riscv_push_dummy_call): Likewise.
12462
12463 2018-03-12  Tom Tromey  <tom@tromey.com>
12464
12465         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12466         Use gdb::byte_vector.
12467         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12468
12469 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12470
12471         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12472         parameter type to readable_regcache.
12473         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12474         the declaration.
12475
12476 2018-03-11  Tom Tromey  <tom@tromey.com>
12477
12478         * dwarf2read.c (struct nextfield): Add initializers.
12479         (struct nextfnfield): Remove.
12480         (struct fnfieldlist): Add initializers.  Remove "length" and
12481         "head", use std::vector.
12482         (struct decl_field_list): Remove.
12483         (struct field_info): Add initializers.
12484         <fields, baseclasses>: Now std::vector.
12485         <nbaseclasses, nfnfields, typedef_field_list_count,
12486         nested_types_list_count>: Remove.
12487         (dwarf2_add_field, dwarf2_add_type_defn)
12488         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12489         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12490         (process_structure_scope): Update.
12491
12492 2018-03-11  Tom Tromey  <tom@tromey.com>
12493
12494         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12495         for use by std::sort.
12496         (build_type_psymtabs_1): Use std::vector.
12497
12498 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12499
12500         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12501         and LIBMPFR in the printed configuration.
12502
12503 2018-03-08  Tom Tromey  <tom@tromey.com>
12504
12505         * source.c (get_filename_and_charpos): Use scoped_fd.
12506         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12507         (procfs_pidlist): Likewise.
12508         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12509         (iterate_over_mappings): Likewise.
12510
12511 2018-03-08  Tom Tromey  <tom@tromey.com>
12512
12513         * infcall.c (struct call_return_meta_info)
12514         <stack_temporaries_enabled>: Remove.
12515         (get_call_return_value, call_function_by_hand_dummy): Update.
12516         * thread.c (disable_thread_stack_temporaries): Remove.
12517         (enable_thread_stack_temporaries): Remove.
12518         (thread_stack_temporaries_enabled_p): Return bool.
12519         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12520         (get_last_thread_stack_temporary): Update.
12521         * eval.c (evaluate_subexp): Update.
12522         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12523         class, not a function.
12524         (value_ptr, value_vec): Remove typedefs.
12525         (class thread_info) <stack_temporaries_enabled>: Now bool.
12526         <stack_temporaries>: Now a std::vector.
12527         (thread_stack_temporaries_enabled_p)
12528         (value_in_thread_stack_temporaries): Return bool.
12529
12530 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12531
12532         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12533         (getpkt_or_notif_sane_1): Likewise.
12534
12535 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12536
12537         * build-id.c (build_id_to_debug_bfd): Use std::string.
12538
12539 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12540
12541         * build-id.c (find_separate_debug_file_by_buildid): Return
12542         std::string.
12543         * build-id.h (find_separate_debug_file_by_buildid): Return
12544         std::string.
12545         * coffread.c (coff_symfile_read): Adjust to std::string.
12546         * elfread.c (elf_symfile_read): Adjust to std::string.
12547         * symfile.c (separate_debug_file_exists): Change parameter to
12548         std::string.
12549         (find_separate_debug_file): Return std::string.
12550         (find_separate_debug_file_by_debuglink): Return std::string.
12551         * symfile.h (find_separate_debug_file_by_debuglink): Return
12552         std::string.
12553
12554 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12555
12556         * common/xml-utils.c (xml_escape_text): Move code to...
12557         (xml_escape_text_append): ... this new function.
12558         * common/xml-utils.h (xml_escape_text_append): New declaration.
12559         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12560         New function.
12561         (_initialize_xml_utils): register test_xml_escape_text_append as
12562         a selftest.
12563
12564 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12565
12566         * defs.h: Remove MAX_REGISTER_SIZE.
12567         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12568         asserts.
12569         * python/py-unwind.c (pyuw_sniffer): Likewise.
12570
12571 2018-03-07  Tom Tromey  <tom@tromey.com>
12572
12573         * linux-tdep.c (linux_info_proc): Update.
12574         * target.h (struct target_ops) <to_fileio_readlink>: Return
12575         optional<string>.
12576         (target_fileio_readlink): Return optional<string>.
12577         * remote.c (remote_hostio_readlink): Return optional<string>.
12578         * inf-child.c (inf_child_fileio_readlink): Return
12579         optional<string>.
12580         * target.c (target_fileio_readlink): Return optional<string>.
12581
12582 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12583
12584         * regcache.c (cooked_read_test): Add riscv to the list of
12585         architectures that have a save_reggroup.
12586
12587 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12588
12589         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12590         value is not a dynamic class object.
12591
12592 2018-03-06  Tom Tromey  <tom@tromey.com>
12593
12594         * rust-exp.y: Formatting fixes.
12595
12596 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12597
12598         * riscv-tdep.c (riscv_register_name): Remove target description
12599         support.
12600         (riscv_gdbarch_init): Remove target description check.
12601
12602 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12603
12604         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12605         comment.
12606         * riscv-tdep.h: Likewise.
12607
12608 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12609
12610         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12611         (riscv_pseudo_register_write): Delete.
12612         (riscv_gdbarch_init): Remove all use of pseudo registers.
12613
12614 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12615
12616         * record-btrace.c (btrace_print_lines): Replace cleanup
12617         parameter with RAII equivalents.
12618         (btrace_insn_history): Replace cleanup with RAII equivalents.
12619         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12620         make_cleanup_ui_out_tuple_begin_end): Remove.
12621         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12622         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12623         make_cleanup_ui_out_list_begin_end): Remove.
12624
12625 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12626
12627         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12628         parameter types to std::vector.  Use bool.
12629         (record_btrace_wait): Replace VEC(tp_t) with
12630         std::vector<thread_info *>.
12631         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12632
12633 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12634
12635         * record-btrace.c (record_btrace_disable_callback): Remove.
12636         (struct scoped_btrace_disable): New.
12637         (record_btrace_open): Use scoped_btrace_disable.
12638
12639 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12640
12641         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12642         reading values from registers.
12643
12644 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12645
12646         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12647         where appropriate.
12648
12649 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12650
12651         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12652         change parameter type.  Use GDB's print functions, and use
12653         core_addr_to_string where appropriate.
12654         (riscv_push_dummy_call): Use core_addr_to_string where
12655         appropriate, update call to riscv_print_arg_location, and reindent
12656         a few lines.
12657         (riscv_return_value): Update call to riscv_print_arg_location.
12658
12659 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12660             Tim Newsome <tim@sifive.com>
12661             Albert Ou <a0u@eecs.berkeley.edu>
12662             Darius Rad <darius@bluespec.com>
12663
12664         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12665         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12666         (ALLDEPFILES): Add riscv-tdep.c
12667         * configure.tgt: Add riscv support.
12668         * riscv-tdep.c: New file.
12669         * riscv-tdep.h: New file.
12670         * NEWS: Mention new target.
12671         * MAINTAINERS: Add entry for riscv.
12672
12673 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12674
12675         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12676         fields within aggregates.
12677
12678 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12679
12680         * record-btrace.c (btrace_print_lines): Change type of flags to
12681         gdb_disassembly_flags.
12682
12683 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12684
12685         * fbsd-nat.c: Include "inf-ptrace.h".
12686         (USE_SIGTRAP_SIGINFO): Conditionally define.
12687         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12688         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12689         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12690         function.
12691         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12692         Likewise.
12693         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12694         Likewise.
12695         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12696         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12697         "supports_stopped_by_hw_breakpoint" target methods.
12698
12699 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12700
12701         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12702         * fbsd-nat.c (debug_fbsd_nat): New variable.
12703         (show_fbsd_nat_debug): New function.
12704         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12705         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12706
12707 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12708
12709         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12710         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12711         prototype.
12712         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12713         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12714         method.
12715
12716 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12717
12718         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12719         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12720
12721 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12722
12723         * charset.c (struct charset_vector): New.
12724         (charsets): Change type to charset_vector.
12725         (find_charset_names): Adjust.
12726         (add_one): Adjust.
12727         (_initialize_charset): Adjust.
12728
12729 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12730
12731         * progspace.h (struct program_space) <deleted_solibs>: Change
12732         type to std::vector<std::string>.
12733         * progspace.c (clear_program_space_solib_cache): Adjust.
12734         * breakpoint.c (print_solib_event): Adjust.
12735         (check_status_catch_solib): Adjust.
12736         * solib.c (update_solib_list): Adjust.
12737         * ui-out.h (class ui_out) <field_string>: New overload.
12738         * ui-out.c (ui_out::field_string): New overload.
12739
12740 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12741
12742         * progspace.h (struct program_space): Add constructor and
12743         destructor, initialize fields.
12744         (add_program_space): Remove.
12745         * progspace.c (add_program_space): Rename to...
12746         (program_space::program_space): ... this.
12747         (release_program_space): Rename to...
12748         (program_space::~program_space): ... this.
12749         (delete_program_space): Use delete to delete program_space.
12750         (initialize_progspace): Use new to allocate program_space.
12751         * inferior.c (add_inferior_with_spaces): Likewise.
12752         (clone_inferior_command): Likewise.
12753         * infrun.c (follow_fork_inferior): Likewise.
12754         (handle_vfork_child_exec_or_exit): Likewise.
12755
12756 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12757
12758         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12759         (delim_string_to_char_ptr_vec): Return std::vector of
12760         gdb::unique_xmalloc_ptr.
12761         (dirnames_to_char_ptr_vec_append): Take std::vector of
12762         gdb::unique_xmalloc_ptr.
12763         (dirnames_to_char_ptr_vec): Return std::vector of
12764         gdb::unique_xmalloc_ptr.
12765         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12766         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12767         (delim_string_to_char_ptr_vec): Return an std::vector of
12768         gdb::unique_xmalloc_ptr, adjust the code.
12769         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12770         gdb::unique_xmalloc_ptr, adjust the code.
12771         (dirnames_to_char_ptr_vec): Return an std::vector of
12772         gdb::unique_xmalloc_ptr, adjust the code.
12773         * auto-load.c (auto_load_safe_path_vec): Change type to
12774         std::vector of gdb::unique_xmalloc_ptr.
12775         (auto_load_expand_dir_vars): Return an std::vector of
12776         gdb::unique_xmalloc_ptr, adjust the code.
12777         (auto_load_safe_path_vec_update): Adjust.
12778         (filename_is_in_auto_load_safe_path_vec): Adjust.
12779         (auto_load_objfile_script_1): Adjust.
12780         * build-id.c (build_id_to_debug_bfd): Adjust.
12781         * linux-thread-db.c (thread_db_load_search): Adjust.
12782         * source.c (add_path): Adjust.
12783         (openp): Adjust.
12784         * symfile.c (find_separate_debug_file): Adjust.
12785         * utils.c (do_free_char_ptr_vec): Remove.
12786         (make_cleanup_free_char_ptr_vec): Remove.
12787
12788 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12789
12790         PR gdb/22907
12791         * common/pathstuff.c: Conditionally include "<windows.h>".
12792
12793 2018-03-01  Georg Sauthoff  <mail@georg.so>
12794
12795         PR gdb/22888
12796         * gcore.in: Quote variables and switch interpreter to bash.
12797
12798 2018-03-01  Tom Tromey  <tom@tromey.com>
12799
12800         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12801         assertion.  Add assertion for discriminant_index.
12802         (quirk_rust_enum): Use correct base type name in univariant case.
12803
12804 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12805
12806         * record.c (get_call_history_modifiers): Return a
12807         record_print_flags.
12808         (cmd_record_call_history): Adjust.
12809         * record-btrace.c (record_btrace_call_history): Adjust.
12810         (record_btrace_call_history_range): Adjust.
12811         (record_btrace_call_history_from): Adjust.
12812         * target-debug.h (target_debug_print_record_print_flags): New.
12813         * target-delegates.c: Re-generate.
12814         * target.c (target_call_history): Change flags type.
12815         (target_call_history_from): Likewise.
12816         (target_call_history_range): Likewise.
12817         * target.h (struct target_ops) <target_call_history>: Likewise.
12818         (target_call_history_from): Likewise.
12819         (target_call_history_range): Likewise.
12820
12821 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12822             Simon Marchi  <simon.marchi@polymtl.ca>
12823
12824         * common/common-utils.c: Include "sys/stat.h".
12825         (is_regular_file): Move here from "source.c"; change return
12826         type to "bool".
12827         * common/common-utils.h (is_regular_file): New prototype.
12828         * common/pathstuff.c (contains_dir_separator): New function.
12829         * common/pathstuff.h (contains_dir_separator): New prototype.
12830         * source.c: Don't include "sys/stat.h".
12831         (is_regular_file): Move to "common/common-utils.c".
12832
12833 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12834
12835         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12836         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12837         * auto-load.c: Include "common/pathstuff.h".
12838         * common/common-def.h (current_directory): Move here.
12839         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12840         function.
12841         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12842         prototype.
12843         * common/pathstuff.c: New file.
12844         * common/pathstuff.h: New file.
12845         * compile/compile.c: Include "common/pathstuff.h".
12846         * defs.h (current_directory): Move to "common/common-defs.h".
12847         * dwarf2read.c: Include "common/pathstuff.h".
12848         * exec.c: Likewise.
12849         * guile/scm-safe-call.c: Likewise.
12850         * linux-thread-db.c: Likewise.
12851         * main.c: Likewise.
12852         * nto-tdep.c: Likewise.
12853         * objfiles.c: Likewise.
12854         * source.c: Likewise.
12855         * symtab.c: Likewise.
12856         * utils.c: Include "common/pathstuff.h".
12857         (gdb_realpath): Move to "common/pathstuff.c".
12858         (gdb_realpath_keepfile): Likewise.
12859         (gdb_abspath): Likewise.
12860         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12861         (gdb_realpath_keepfile): Likewise.
12862         (gdb_abspath): Likewise.
12863
12864 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12865
12866         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12867         wildcard process pid for super_resume for kernels with a
12868         specific bug.
12869
12870 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12871
12872         * compile/compile.c (get_args): Add additional comments
12873         explaining function.
12874
12875 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12876             Tom Tromey  <tom@tromey.com>
12877
12878         * target.h (memory_write_request_s): Remove typedef.  Don't define
12879         VEC.
12880         (target_write_memory_blocks): Change argument to std::vector.
12881         (struct memory_write_request): Add constructor.
12882         * target-memory.c (compare_block_starting_address): Return bool.
12883         Change argument types.
12884         (claim_memory): Change arguments to use std::vector.
12885         (split_regular_and_flash_blocks, blocks_to_erase)
12886         (compute_garbled_blocks): Likewise.
12887         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12888         (target_write_memory_blocks): Change argument to std::vector.
12889         * symfile.c (struct load_section_data): Add constructor and
12890         destructor.  Use std::vector for "requests".
12891         (struct load_progress_data): Add initializers.
12892         (load_section_callback): Update.  Use "new".
12893         (clear_memory_write_data): Remove.
12894         (generic_load): Update.
12895
12896 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12897
12898         * arch/aarch64.h: Use common/tdesc.h.
12899
12900 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12901
12902         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12903         architecture with a 64-bit ABI.
12904
12905 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12906
12907         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12908         ahead of target description loading.
12909
12910 2018-02-26  Tom Tromey  <tom@tromey.com>
12911
12912         * stack.c (backtrace_command_1): Update.
12913         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12914         of "flags".
12915         * python/py-framefilter.c (py_print_frame)
12916         (gdbpy_apply_frame_filter): Change type of "flags".
12917         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12918         of "flags".
12919         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12920         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12921         * extension.h (enum frame_filter_flag): Rename from
12922         frame_filter_flags.
12923         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12924         (apply_ext_lang_frame_filter): Change type of "flags".
12925         * extension.c (apply_ext_lang_frame_filter): Change type of
12926         "flags".
12927         * extension-priv.h (struct extension_language_ops)
12928         <apply_frame_filter>: Change type of "flags".
12929
12930 2018-02-26  Tom Tromey  <tom@tromey.com>
12931
12932         PR python/16497:
12933         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12934         off-by-one in py_end computation.
12935         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12936         PRINT_MORE_FRAMES.
12937         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12938         constant.
12939
12940 2018-02-26  Tom Tromey  <tom@tromey.com>
12941
12942         * dwarf2read.c (struct variant_field): New.
12943         (struct nextfield) <variant>: New field.
12944         (dwarf2_add_field): Handle DW_TAG_variant_part.
12945         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12946         discriminated union.
12947         (read_structure_type): Handle DW_TAG_variant_part.
12948         (handle_struct_member_die): New function, extracted from
12949         process_structure_scope.  Handle DW_TAG_variant.
12950         (process_structure_scope): Handle discriminated unions.  Call
12951         handle_struct_member_die.
12952
12953 2018-02-26  Tom Tromey  <tom@tromey.com>
12954
12955         * rust-lang.h (rust_last_path_segment): Declare.
12956         * rust-lang.c (rust_last_path_segment): Now public.  Change
12957         contract.
12958         (struct disr_info): Remove.
12959         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12960         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12961         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12962         (rust_enum_p, rust_enum_variant): New function.
12963         (rust_underscore_fields): Remove "offset" parameter.
12964         (rust_print_enum): New function.
12965         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12966         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12967         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12968         enums.
12969         (rust_internal_print_type): New function, from rust_print_type.
12970         Remove enum code.
12971         (rust_print_type): Call rust_internal_print_type.
12972         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12973         Update enum handling.
12974         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12975         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12976         (rust_union_quirks): New functions.
12977         (process_full_comp_unit, process_full_type_unit): Call
12978         rust_union_quirks.
12979         (process_structure_scope): Update rust_unions if necessary.
12980
12981 2018-02-26  Tom Tromey  <tom@tromey.com>
12982
12983         * value.h (value_union_variant): Declare.
12984         * valops.c (value_union_variant): New function.
12985         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12986         (struct discriminant_info): New.
12987         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12988         enumerator.
12989         (struct main_type) <flag_discriminated_union>: New field.
12990
12991 2018-02-26  Tom Tromey  <tom@tromey.com>
12992
12993         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12994         unittests/unpack-selftests.c.
12995         * unittests/unpack-selftests.c: New file.
12996         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12997
12998 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12999
13000         * dwarf2read.c (struct partial_die_info) <read>: New method.
13001         (read_partial_die): Remove the declaration.
13002         (load_partial_dies): Update.
13003         (partial_die_info::partial_die_info):
13004         (read_partial_die): Change it to partial_die_info::read.
13005
13006 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13007
13008         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13009         (fixup_partial_die): Remove declaration.
13010         (scan_partial_symbols): Update.
13011         (partial_die_parent_scope): Likewise.
13012         (partial_die_full_name): Likewise.
13013         (fixup_partial_die): Change it to partial_die_info::fixup.
13014
13015 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13016
13017         * dwarf2read.c (read_partial_die): Update the declaration.
13018         (load_partial_dies): Caller update.
13019         (read_partial_die): Remove one argument abbrev_len.
13020
13021 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13022
13023         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13024         assignment operator.
13025         (load_partial_dies): Use ctor and copy ctor.
13026         (read_partial_die): Update.
13027         (dwarf2_cu::find_partial_die): Use ctor.
13028
13029 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13030
13031         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13032         (find_partial_die_in_comp_unit): Change it to
13033         dwarf2_cu::find_partial_die.
13034         (find_partial_die): Update.
13035
13036 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13037
13038         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13039         is NULL.
13040
13041 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13042
13043         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13044
13045 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13046
13047         * arch/amd64.h: Use common/tdesc.h.
13048         * arch/i386.c: Likewise.
13049         * arch/i386.h: Likewise.
13050         * arch/tic6x.c: Likewise.
13051         * arch/tdesc.h: Move file from here...
13052         * common/tdesc.h: ...to here.
13053         * features/aarch64-core.c: Regenerate.
13054         * features/aarch64-fpu.c: Regenerate.
13055         * features/i386/32bit-avx.c: Regenerate.
13056         * features/i386/32bit-avx512.c: Regenerate.
13057         * features/i386/32bit-core.c: Regenerate.
13058         * features/i386/32bit-linux.c: Regenerate.
13059         * features/i386/32bit-mpx.c: Regenerate.
13060         * features/i386/32bit-pkeys.c: Regenerate.
13061         * features/i386/32bit-sse.c: Regenerate.
13062         * features/i386/64bit-avx.c: Regenerate.
13063         * features/i386/64bit-avx512.c: Regenerate.
13064         * features/i386/64bit-core.c: Regenerate.
13065         * features/i386/64bit-linux.c: Regenerate.
13066         * features/i386/64bit-mpx.c: Regenerate.
13067         * features/i386/64bit-pkeys.c: Regenerate.
13068         * features/i386/64bit-segments.c: Regenerate.
13069         * features/i386/64bit-sse.c: Regenerate.
13070         * features/i386/x32-core.c: Regenerate.
13071         * features/tic6x-c6xp.c: Regenerate.
13072         * features/tic6x-core.c: Regenerate.
13073         * features/tic6x-gp.c: Regenerate.
13074         * target-descriptions.c: Use common/tdesc.h.
13075         * target-descriptions.h: Likewise.
13076
13077 2018-02-24  Tom Tromey  <tom@tromey.com>
13078
13079         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13080         (try_thread_db_load_from_dir, thread_db_load_search): Use
13081         std::string.
13082         (info_auto_load_libthread_db_compare): Return bool.  Change
13083         argument types.
13084         (info_auto_load_libthread_db): Use std::vector, std::string.
13085         Remove cleanups.
13086
13087 2018-02-24  Tom Tromey  <tom@tromey.com>
13088
13089         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13090         std::string.
13091         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13092         std::string*.
13093         * gdbarch.c: Rebuild.
13094         * gdbarch.h: Rebuild.
13095         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13096         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13097         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13098         std::string*.
13099
13100 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13101
13102         * gdbtypes.h (sect_offset): Change type to uint64_t.
13103         (sect_offset_str): New function.
13104         * dwarf2read.c (create_addrmap_from_aranges): Use
13105         sect_offset_str.
13106         (error_check_comp_unit_head): Likewise.
13107         (create_debug_type_hash_table): Likewise.
13108         (read_cutu_die_from_dwo): Likewise.
13109         (init_cutu_and_read_dies): Likewise.
13110         (init_cutu_and_read_dies_no_follow): Likewise.
13111         (process_psymtab_comp_unit_reader): Likewise.
13112         (partial_die_parent_scope): Likewise.
13113         (peek_die_abbrev): Likewise.
13114         (process_queue): Likewise.
13115         (dwarf2_physname): Likewise.
13116         (read_namespace_alias): Likewise.
13117         (read_import_statement): Likewise.
13118         (create_dwo_cu_reader): Likewise.
13119         (create_cus_hash_table): Likewise.
13120         (lookup_dwo_cutu): Likewise.
13121         (inherit_abstract_dies): Likewise.
13122         (read_func_scope): Likewise.
13123         (read_call_site_scope): Likewise.
13124         (dwarf2_add_member_fn): Likewise.
13125         (read_common_block): Likewise.
13126         (read_module_type): Likewise.
13127         (read_typedef): Likewise.
13128         (read_subrange_type): Likewise.
13129         (load_partial_dies): Likewise.
13130         (read_partial_die): Likewise.
13131         (find_partial_die): Likewise.
13132         (read_str_index): Likewise.
13133         (dwarf2_string_attr): Likewise.
13134         (build_error_marker_type): Likewise.
13135         (lookup_die_type): Likewise.
13136         (dump_die_shallow): Likewise.
13137         (follow_die_ref): Likewise.
13138         (dwarf2_fetch_die_loc_sect_off): Likewise.
13139         (dwarf2_fetch_constant_bytes): Likewise.
13140         (follow_die_sig): Likewise.
13141         (get_signatured_type): Likewise.
13142         (get_DW_AT_signature_type): Likewise.
13143         (dwarf2_find_containing_comp_unit): Likewise.
13144         (set_die_type): Likewise.
13145
13146 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13147
13148         * arch/aarch64.c: Include "common-defs.h".
13149         * arch/amd64.c: Likewise.
13150         * arch/i386.c: Likewise.
13151
13152 2018-02-21  Tom Tromey  <tom@tromey.com>
13153
13154         * value.h: (extract_field_op): Update.
13155         * eval.c (extract_field_op): Return a const char *.
13156         * expression.h (parse_expression_for_completion): Update.
13157         * completer.c (complete_expression): Update.
13158         (add_struct_fields): Make fieldname const.
13159         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13160         (mark_completion_tag, parse_exp_in_context_1): Update.
13161         (parse_expression_for_completion): Change "name" to
13162         unique_xmalloc_ptr*.
13163
13164 2018-02-21  Tom Tromey  <tom@tromey.com>
13165
13166         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13167
13168 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13169
13170         * avr-tdep.c (avr_read_pc): Change parameter type to
13171         readable_regcache.
13172         * gdbarch.sh (read_pc): Likewise.
13173         * gdbarch.c: Re-generated.
13174         * gdbarch.h: Re-generated.
13175         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13176         readable_regcache.
13177         * ia64-tdep.c (ia64_read_pc): Likewise.
13178         * mips-tdep.c (mips_read_pc): Likewise.
13179         * spu-tdep.c (spu_read_pc): Likewise.
13180
13181 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13182
13183         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13184         * regcache-dump.c: New file.
13185         * regcache.c: Move register_dump to regcache-dump.c.
13186         (maintenance_print_registers): Likewise.
13187         (maintenance_print_raw_registers): Likewise.
13188         (maintenance_print_cooked_registers): Likewise.
13189         (maintenance_print_register_groups): Likewise.
13190         (maintenance_print_remote_registers): Likewise.
13191         (_initialize_regcache): Likewise.
13192         * regcache.h (register_dump): Moved from regcache.c.
13193
13194 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13195
13196         * regcache.c (regcache::regcache): Update.
13197         (regcache::invalidate): Move it to detached_regcache::invalidate.
13198         (get_thread_arch_aspace_regcache): Update.
13199         (regcache::raw_update): Update.
13200         (regcache::cooked_read): Remove some code.
13201         (regcache::cooked_read_value): Likewise.
13202         (regcache::raw_write): Remove assert on m_readonly_p.
13203         (regcache::raw_supply_integer): Move it to
13204         detached_regcache::raw_supply_integer.
13205         (regcache::raw_supply_zeroed): Likewise.
13206         * regcache.h (detached_regcache) <raw_supply_integer>: New
13207         declaration.
13208         <raw_supply_zeroed, invalidate>: Likewise.
13209         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13210         <invalidate>: Likewise.
13211         <m_readonly_p>: Removed.
13212
13213 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13214
13215         * infcmd.c (get_return_value): Let stop_regs point to
13216         get_current_regcache.
13217         * regcache.c (regcache::regcache): Remove.
13218         (register_dump_reg_buffer): New class.
13219         (regcache_print): Adjust.
13220         * regcache.h (regcache): Remove constructors.
13221
13222 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13223
13224         * regcache.c (class register_dump): New class.
13225         (register_dump_regcache, register_dump_none): New class.
13226         (register_dump_remote, register_dump_groups): New class.
13227         (regcache_print): Update.
13228         * regcache.h (regcache_dump_what): Move it to regcache.c.
13229         (regcache) <dump>: Remove.
13230
13231 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13232
13233         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13234          reg_buffer_rw *.
13235         (jit_unwind_reg_set_impl): Call raw_supply.
13236         (jit_frame_sniffer): Use reg_buffer_rw.
13237         * record-full.c (record_full_core_regbuf): Change its type.
13238         (record_full_core_open_1): Use reg_buffer_rw.
13239         (record_full_close): Likewise.
13240         (record_full_core_fetch_registers): Use regcache->raw_supply.
13241         (record_full_core_store_registers): Likewise.
13242         * regcache.c (regcache::get_register_status): Move it to
13243         reg_buffer.
13244         (regcache_raw_set_cached_value): Remove.
13245         (regcache::raw_set_cached_value): Remove.
13246         (regcache::raw_write): Call raw_supply.
13247         (regcache::raw_supply): Move it to reg_buffer_rw.
13248         * regcache.h (regcache_raw_set_cached_value): Remove.
13249         (reg_buffer_rw): New class.
13250
13251 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13252
13253         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13254         readonly_detached_regcache.
13255         (dummy_frame_prev_register): Use regcache->cooked_read.
13256         * frame.c (frame_save_as_regcache): Change return type.
13257         (frame_pop): Update.
13258         * frame.h (frame_save_as_regcache): Update declaration.
13259         * inferior.h (get_infcall_suspend_state_regcache): Update
13260         declaration.
13261         * infrun.c (infcall_suspend_state) <registers>: use
13262         readonly_detached_regcache.
13263         (save_infcall_suspend_state): Don't use regcache_dup.
13264         (get_infcall_suspend_state_regcache): Change return type.
13265         * linux-fork.c (struct fork_info) <savedregs>: Change to
13266         readonly_detached_regcache.
13267         <pc>: New field.
13268         (fork_save_infrun_state): Don't use regcache_dup.
13269         (info_checkpoints_command): Adjust.
13270         * mi/mi-main.c (register_changed_p): Update declaration.
13271         (mi_cmd_data_list_changed_registers): Use
13272         readonly_detached_regcache.
13273         (register_changed_p): Change parameter type to
13274         readonly_detached_regcache.
13275         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13276         readonly_detached_regcache.
13277         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13278         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13279         New.
13280         (regcache::save): Move it to reg_buffer.
13281         (regcache::restore): Change parameter type.
13282         (regcache_dup): Remove.
13283         * regcache.h (reg_buffer) <save>: New method.
13284         (readonly_detached_regcache): New class.
13285         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13286         readonly_detached_regcache.
13287         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13288
13289 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13290
13291         * frame.c (frame_save_as_regcache): Use regcache method save.
13292         (frame_pop): Use regcache method restore.
13293         * infrun.c (restore_infcall_suspend_state): Likewise.
13294         * linux-fork.c (fork_load_infrun_state): Likewise.
13295         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13296         save.
13297         * regcache.c (regcache_save): Remove.
13298         (regcache::restore): More asserts.
13299         (regcache_cpy): Remove.
13300         * regcache.h (regcache_save): Remove the declaration.
13301         (regcache::restore): Move from private to public.
13302         Remove the friend declaration of regcache_cpy.
13303         (regcache_cpy): Remove declaration.
13304
13305 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13306
13307         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13308         parameter type to 'readable_regcache *'.
13309         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13310         * arm-tdep.c (arm_neon_quad_read): Likewise.
13311         (arm_pseudo_read): Likewise.
13312         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13313         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13314         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13315         * gdbarch.c: Re-generated.
13316         * gdbarch.h: Re-generated.
13317         * gdbarch.sh (pseudo_register_read): Change parameter type to
13318         'readable_regcache *'.
13319         (pseudo_register_read_value): Likewise.
13320         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13321         (h8300_pseudo_register_read): Likewise.
13322         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13323         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13324         (i386_pseudo_register_read_into_value): Likewise.
13325         (i386_pseudo_register_read_value): Likewise.
13326         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13327         declaration.
13328         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13329         * m32c-tdep.c (m32c_raw_read): Likewise.
13330         (m32c_read_flg): Likewise.
13331         (m32c_banked_register): Likewise.
13332         (m32c_banked_read): Likewise.
13333         (m32c_sb_read): Likewise.
13334         (m32c_part_read): Likewise.
13335         (m32c_cat_read): Likewise.
13336         (m32c_r3r2r1r0_read): Likewise.
13337         (m32c_pseudo_register_read): Likewise.
13338         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13339         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13340         (mep_pseudo_cr64_read): Likewise.
13341         (mep_pseudo_register_read): Likewise.
13342         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13343         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13344         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13345         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13346         (regcache::cooked_read): Likewise.
13347         (regcache::cooked_read_value): Likewise.
13348         (regcache_cooked_read_signed):
13349         (regcache::cooked_read): Likewise.
13350         * regcache.h (readable_regcache): New class.
13351         (regcache): Inherit readable_regcache.  Move some methods to
13352         readable_regcache.
13353         * rl78-tdep.c (rl78_pseudo_register_read): Change
13354         parameter type to 'readable_regcache *'.
13355         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13356         (e500_pseudo_register_read): Change parameter type to
13357         'readable_regcache *'.
13358         (dfp_pseudo_register_read): Likewise.
13359         (vsx_pseudo_register_read): Likewise.
13360         (efpr_pseudo_register_read): Likewise.
13361         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13362         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13363         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13364         (sh64_pseudo_register_read): Likewise.
13365         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13366         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13367         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13368         (spu_pseudo_register_read): Likewise.
13369         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13370         (xtensa_pseudo_register_read): Likewise.
13371
13372 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13373
13374         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13375         (regcache::arch): Move it to reg_buffer::arch.
13376         (regcache::register_buffer): Likewise.
13377         (regcache::assert_regnum): Likewise.
13378         (regcache::num_raw_registers): Likewise.
13379         * regcache.h (reg_buffer): New class.
13380         (regcache): Inherit reg_buffer.
13381
13382 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13383
13384         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13385         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13386
13387 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13388
13389         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13390
13391 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13392
13393         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13394         (SFILES): Remove common/*.c files.
13395         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13396         * common/common.host: Add common reference.
13397         * configure.ac: Likewise.
13398         * configure: Regenerate.
13399
13400 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13401
13402         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13403         (block_initialize_namespace): Use new.
13404         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13405         (dwarf2_free_objfile): Use delete.
13406         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13407         (copy_type_recursive): Use new.
13408         * gdb_obstack.h (allocate_on_obstack): New.
13409
13410 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13411
13412         PR gdb/22849
13413         * inferior.c (exit_inferior_1): Reset inf->control.
13414
13415 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13416
13417         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13418         declaration.
13419
13420 2018-02-14  Pedro Alves  <palves@redhat.com>
13421
13422         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13423         frame_cleanup_after_sniffer on exception.
13424
13425 2018-02-14  Tom Tromey  <tom@tromey.com>
13426
13427         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13428         const.
13429         (solib_bfd_open): Make pathname const.
13430         * solib.c (solib_bfd_open): Make pathname const.
13431         * solib-spu.c (spu_bfd_fopen): Make name const.
13432         (spu_bfd_open): Make pathname const.
13433         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13434         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13435
13436 2018-02-14  Tom Tromey  <tom@tromey.com>
13437
13438         * symfile.c (symfile_bfd_open): Update.
13439         * source.h (openp, source_full_path_of, find_and_open_source):
13440         Change argument type to unique_xmalloc_ptr.
13441         * source.c (openp): Take a unique_xmalloc_ptr.
13442         (source_full_path_of, find_and_open_source): Likewise.
13443         (open_source_file, symtab_to_fullname): Update.
13444         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13445         unique_xmalloc_ptr.
13446         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13447         (exec_file_find): Update.
13448         * psymtab.c (psymtab_to_fullname): Update.
13449         * nto-tdep.h (nto_find_and_open_solib): Update.
13450         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13451         unique_xmalloc_ptr.
13452         * exec.c (exec_file_attach): Update.
13453         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13454         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13455
13456 2018-02-14  Tom Tromey  <tom@tromey.com>
13457
13458         * solib.c: Include source.h.
13459         * nto-tdep.c: Include source.h.
13460         * mi/mi-cmd-env.c: Include source.h.
13461         * infcmd.c: Include source.h.
13462         * exec.c: Include source.h.
13463         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13464         (add_path, directory_switch, source_path, init_source_path): Move
13465         declarations...
13466         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13467         (add_path, directory_switch, source_path, init_source_path):
13468         ...here.
13469
13470 2018-02-14  Tom Tromey  <tom@tromey.com>
13471
13472         * solist.h (exec_file_find, solib_find): Return
13473         unique_xmalloc_ptr.
13474         (solib_bfd_fopen): Take a const char *.
13475         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13476         (exec_file_find, solib_find): Likewise.
13477         (solib_bfd_fopen): Do not take ownership of "pathname".
13478         (solib_bfd_open): Use unique_xmalloc_ptr.
13479         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13480         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13481         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13482         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13483
13484 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13485
13486         * ada-lang.c (name_match_type_from_name): Remove reference to
13487         ada_name_for_lookup in function's documentation.
13488         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13489
13490 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13491
13492         * defs.h (enum openp_flags): New enum.
13493         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13494         Move to enum openp_flags.
13495         (openp_flags): New enum flags.
13496         (openp): Change parameter type to openp_flags.
13497         * source.c (openp): Change parameter type to openp_flags.
13498         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13499         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13500
13501 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13502
13503         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13504         per-command.
13505
13506 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13507
13508         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13509         into...
13510         (class dwarf2_queue_guard): ...the destructor of this new class.
13511         (dw2_do_instantiate_symtab): Create instance of the new class
13512         dwarf2_queue_guard, remove cleanup.
13513
13514 2018-02-09  Tom Tromey  <tom@tromey.com>
13515
13516         * source.c (find_source_lines): Don't reference past the end of
13517         the vector.
13518
13519 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13520
13521         * remote.c (remote_btrace_maybe_reopen): Change error message.
13522         * btrace.c (btrace_enable): Likewise.
13523         (parse_xml_btrace): Likewise.
13524         (parse_xml_btrace_conf): Likewise.
13525
13526 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13527
13528         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13529         (linux_enable_pt, linux_enable_bts): Call
13530         diagnose_perf_event_open_fail.
13531
13532 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13533
13534         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13535         Remove parameter and change return type.  Update callers.  Move it.
13536         (linux_enable_bts, linux_enable_pt): Improve error message.
13537         (linux_enable_pt): Remove zero buffer size check.
13538         (linux_enable_btrace): Improve error messages.  Remove NULL return
13539         check.
13540
13541 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13542
13543         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13544         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13545         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13546         (linux_supports_pt, linux_supports_btrace): Remove.
13547         (linux_enable_bts): Call cpu_supports_bts.
13548         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13549         * remote.c (remote_supports_btrace): Remove.
13550         (init_remote_ops): Remove remote_supports_btrace.
13551         * target-delegates.c: Regenerated.
13552         * target.c (target_supports_btrace): Remove.
13553         * target.h (target_ops) <to_supports_btrace>: Remove
13554         (target_supports_btrace): Remove.
13555         * x86-linux-nat.c (x86_linux_create_target): Remove
13556         linux_supports_btrace.
13557
13558 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13559
13560         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13561         btrace failed.
13562         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13563         exception and use message in own exception.
13564
13565 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13566
13567         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13568         (perf_event_pt_event_type): Use gdb_file_up.
13569         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13570         scoped_fd, and scoped_mmap.
13571
13572 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13573
13574         * common/scoped_mmap.h: New.
13575         * unittests/scoped_mmap-selftest.c: New.
13576         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13577         unittests/scoped_mmap-selftest.c.
13578
13579 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13580
13581         * common/scoped_fd.h: New.
13582         * unittests/scoped_fd-selftest.c: New.
13583         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13584         unittests/scoped_fd-selftest.c.
13585
13586 2018-02-09  Tom Tromey  <tom@tromey.com>
13587
13588         * auto-load.c (auto_load_section_scripts): Use
13589         gdb::unique_xmalloc_ptr.
13590
13591 2018-02-09  Tom Tromey  <tom@tromey.com>
13592
13593         * auto-load.c (execute_script_contents): Use std::string.
13594
13595 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13596
13597         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13598         Python function, rather than a new command.
13599
13600 2018-02-08  Tom Tromey  <tom@tromey.com>
13601
13602         * solib.c (solib_find_1): Use std::string.
13603         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13604
13605 2018-02-08  Tom Tromey  <tom@tromey.com>
13606
13607         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13608
13609 2018-02-08  Tom Tromey  <tom@tromey.com>
13610
13611         * source.c (find_source_lines): Use gdb::def_vector.
13612
13613 2018-02-08  Tom Tromey  <tom@tromey.com>
13614
13615         * macrocmd.c (struct temporary_macro_definition): New.
13616         (macro_define_command): Use temporary_macro_definition.  Remove
13617         cleanups.
13618         (free_macro_definition_ptr): Remove.
13619
13620 2018-02-08  Tom Tromey  <tom@tromey.com>
13621
13622         * macroexp.c (maybe_expand): Use std::string.
13623
13624 2018-02-08  Tom Tromey  <tom@tromey.com>
13625
13626         * macroexp.c (struct macro_buffer): Add initializers for some
13627         members.
13628         (init_buffer, init_shared_buffer, free_buffer)
13629         (free_buffer_return_text): Remove.
13630         (macro_buffer): New constructors.
13631         (~macro_buffer): New destructor.
13632         (macro_buffer::set_shared): New method.
13633         (macro_buffer::resize_buffer, macro_buffer::appendc)
13634         (macro_buffer::appendmem): Now methods, not free functions.
13635         (set_token, append_tokens_without_splicing, stringify)
13636         (macro_stringify): Update.
13637         (gather_arguments): Change return type.  Remove argc_p argument,
13638         add args_ptr argument.  Use std::vector.
13639         (substitute_args): Remove argc argument.  Accept std::vector.
13640         (expand): Update.  Use std::vector.
13641         (scan, macro_expand, macro_expand_next): Update.
13642
13643 2018-02-08  Tom Tromey  <tom@tromey.com>
13644
13645         * symtab.c (default_collect_symbol_completion_matches_break_on):
13646         Use unique_xmalloc_ptr.
13647         * macroscope.h: (sal_macro_scope, user_macro_scope)
13648         (default_macro_scope): Return unique_xmalloc_ptr.
13649         * macroscope.c (sal_macro_scope, user_macro_scope)
13650         (default_macro_scope): Return unique_xmalloc_ptr.
13651         * macroexp.h (macro_expand, macro_expand_once): Return
13652         unique_xmalloc_ptr.
13653         * macroexp.c (macro_expand, macro_expand_once): Return
13654         unique_xmalloc_ptr.
13655         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13656         (info_macro_command, info_macros_command): Use
13657         unique_xmalloc_ptr.
13658         * compile/compile-c-support.c (write_macro_definitions): Use
13659         unique_xmalloc_ptr.
13660         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13661
13662 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13663
13664         * value.c (value_static_field): Assign field type instead of
13665         containing type when returning an optimized out value.
13666
13667 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13668
13669         * ft32-tdep.c (ft32_read_pc): Remove.
13670         (ft32_write_pc): Remove.
13671         (ft32_gdbarch_init): Update.
13672         * m32r-tdep.c (m32r_read_pc): Remove.
13673         (m32r_gdbarch_init): Update.
13674         * mep-tdep.c (mep_read_pc): Remove.
13675         (mep_gdbarch_init): Update.
13676         * microblaze-tdep.c (microblaze_write_pc): Remove.
13677         (microblaze_gdbarch_init): Update.
13678         * mn10300-tdep.c (mn10300_read_pc): Remove.
13679         (mn10300_write_pc): Remove.
13680         (mn10300_gdbarch_init): Update.
13681         * moxie-tdep.c (moxie_read_pc): Remove.
13682         (moxie_write_pc): Remove.
13683         (moxie_gdbarch_init): Update.
13684
13685 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13686
13687         * expprint.c (print_subexp_standard): Handle
13688         OP_F77_UNDETERMINED_ARGLIST.
13689         (dump_subexp_body_standard): Likewise.
13690
13691 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13692
13693         * target-descriptions.c (tdesc_element_visitor) Add empty
13694         implementations.
13695         (tdesc_type): Move make_gdb_type from here.
13696         (tdesc_type_builtin): Likewise.
13697         (tdesc_type_vector): Likewise.
13698         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13699         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13700         (make_gdb_type_union): Likewise.
13701         (make_gdb_type_flags): Likewise.
13702         (make_gdb_type_enum): Likewise.
13703         (make_gdb_type): New function.
13704         (tdesc_register_type): Use static make_gdb_type.
13705
13706 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13707
13708         * infcmd.c (default_print_one_register_info): Align natural-format
13709         column values consistently one under another.
13710         (pad_to_column): New function.
13711
13712 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13713
13714         * dwarf2read.c (dwarf2_physname): Move commment.
13715
13716 2018-02-01  Leszek Swirski  <leszeks@google.com>
13717
13718         * varobj.c (varobj_formatted_print_options): Allow recursive
13719         pretty printing if pretty printing is enabled.
13720
13721 2018-02-01  Leszek Swirski  <leszeks@google.com>
13722
13723         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13724         names after a structop as a filename.
13725
13726 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13727
13728         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13729         (arm_record_coproc_data_proc): Likewise.
13730
13731 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13732
13733         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13734
13735 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13736
13737         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13738         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13739
13740 2018-01-31  Pedro Alves  <palves@redhat.com>
13741
13742         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13743         * inflow.c (child_terminal_save_inferior): Wrap reference to
13744         tcgetpgrp in HAVE_TERMIOS_H.
13745         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13746         _WIN32.
13747         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13748         always iterate over all inferiors.
13749         (gdbsim_cntrl_c): Adjust.
13750         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13751
13752 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13753
13754         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13755         index type is objfile-owned if the element type is as well.
13756
13757 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13758
13759         GDB 8.1 released.
13760
13761 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13762
13763         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13764         "features/s390x-linux64.c".
13765         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13766         s390_linux32 and s390x_linux64.
13767         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13768         default tdesc.
13769         * s390-tdep.c: Include "features/s390-linux32.c" and
13770         "features/s390x-linux64.c".
13771         (s390_tdesc_valid): Add check for tdesc_has_registers.
13772         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13773         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13774         tdesc_s390x_linux64.
13775         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13776         tdesc_s390x_linux64 to...
13777         * s390-tdep.h: ...here.
13778
13779 2018-01-30  Pedro Alves  <palves@redhat.com>
13780
13781         PR gdb/13211
13782         * config.in, configure: Regenerate.
13783         * configure.ac: Check for getpgid.
13784         * go32-nat.c (go32_pass_ctrlc): New.
13785         (go32_target): Install it.
13786         * inf-child.c (inf_child_target): Install
13787         child_terminal_save_inferior, child_pass_ctrlc and
13788         child_interrupt.
13789         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13790         (inf_ptrace_target): No longer install it.
13791         * infcmd.c (interrupt_target_1): Adjust.
13792         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13793         (child_interrupt): Declare.
13794         (inferior::terminal_state): New.
13795         * inflow.c (struct terminal_info): Update comments.
13796         (inferior_process_group): Delete.
13797         (terminal_is_ours): Delete.
13798         (gdb_tty_state): New.
13799         (child_terminal_init): Adjust.
13800         (is_gdb_terminal, sharing_input_terminal_1)
13801         (sharing_input_terminal): New functions.
13802         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13803         Set the process's actual process group in the foreground if
13804         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13805         mark terminal as the inferior's if not sharing GDB's terminal.
13806         Don't check attach_flag.
13807         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13808         pass down a target_terminal_state.
13809         (child_terminal_save_inferior): New, factored out from ...
13810         (child_terminal_ours_1): ... this.  Handle
13811         target_terminal_state::is_ours_for_output.
13812         (child_interrupt, child_pass_ctrlc): New.
13813         (inflow_inferior_exit): Clear the inferior's terminal_state.
13814         (copy_terminal_info): Copy the inferior's terminal state.
13815         (_initialize_inflow): Remove reference to terminal_is_ours.
13816         * inflow.h (inferior_process_group): Delete.
13817         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13818         * procfs.c (procfs_target): Don't install procfs_interrupt.
13819         (procfs_interrupt): Delete.
13820         * remote.c (remote_serial_quit_handler): Adjust.
13821         (remote_interrupt): Remove ptid parameter.  Adjust.
13822         * target-delegates.c: Regenerate.
13823         * target.c: Include "terminal.h".
13824         (target_terminal::terminal_state): Rename to ...
13825         (target_terminal::m_terminal_state): ... this.
13826         (target_terminal::init): Adjust.
13827         (target_terminal::inferior): Adjust to per-inferior
13828         terminal_state.
13829         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13830         (target_terminal::ours, target_terminal::ours_for_output): Use
13831         target_terminal_is_ours_kind.
13832         (target_interrupt): Remove ptid parameter.  Adjust.
13833         (default_target_pass_ctrlc): Adjust.
13834         * target.h (target_ops::to_terminal_save_inferior): New field.
13835         (target_ops::to_interrupt): Remove ptid_t parameter.
13836         (target_interrupt): Remove ptid_t parameter.  Update comment.
13837         (target_pass_ctrlc): Update comment.
13838         * target/target.h (target_terminal_state): New scoped enum,
13839         factored out of ...
13840         (target_terminal::terminal_state): ... here.
13841         (target_terminal::inferior): Update comments.
13842         (target_terminal::restore_inferior): New.
13843         (target_terminal::is_inferior, target_terminal::is_ours)
13844         (target_terminal::is_ours_for_output): Adjust.
13845         (target_terminal::scoped_restore_terminal_state): Adjust to
13846         rename, and call restore_inferior() instead of inferior().
13847         (target_terminal::scoped_restore_terminal_state::m_state): Change
13848         type.
13849         (target_terminal::terminal_state): Rename to ...
13850         (target_terminal::m_terminal_state): ... this and change type.
13851
13852 2018-01-30  Pedro Alves  <palves@redhat.com>
13853
13854         * linux-nat.c (wait_for_signal): New function.
13855         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13856         directly.
13857         (async_terminal_is_ours)
13858         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13859         (linux_nat_add_target): Don't override
13860         to_terminal_inferior/to_terminal_ours.
13861
13862 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13863
13864         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13865
13866 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13867
13868         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13869         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13870         dwarf2_per_objfile_free here.
13871         (dwarf2_per_objfile_free): Remove.
13872         (_initialize_dwarf2_read): Don't register
13873         dwarf2_per_objfile_free as a registry cleanup.
13874
13875 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13876
13877         Avoid compilation errors in MinGW native builds
13878
13879         The error is triggered by including python-internal.h, and the
13880         error message is:
13881
13882              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13883                       from build-gnulib/import/math.h:27,
13884                       from d:/usr/Python26/include/pyport.h:235,
13885                       from d:/usr/Python26/include/Python.h:58,
13886                       from python/python-internal.h:94,
13887                       from python/py-arch.c:24:
13888              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13889         using ::hypot;
13890                 ^~~~~
13891
13892         This happens because Python headers define 'hypot' to expand t
13893         '_hypot' in the Windows builds.
13894         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13895         'hypoth'.  This avoids a compilation error.
13896
13897 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13898
13899         * MAINTAINERS (Write After Approval): Fix ordering.
13900
13901 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13902
13903         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13904
13905 2018-01-26  Alan Modra  <amodra@gmail.com>
13906
13907         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13908         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13909         Remove nop.  Make const.  Comment.
13910         (powerpc32_plt_stub_so_2): New.
13911         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13912         Correct count.  Update uses.
13913         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13914         Move common code reading PLT entry word.  Correct
13915         powerpc32_plt_stub PLT address calculation.
13916         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13917         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13918         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13919         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13920         (ppc64_standard_linkage8): Likewise.
13921         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13922         Correct insns description.
13923         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13924
13925 2018-01-24  Pedro Alves  <palves@redhat.com>
13926
13927         GCC PR libstdc++/83906
13928         * gdbtypes.c (operator==(const dynamic_prop &,
13929         const dynamic_prop &)): New.
13930         (operator==(const range_bounds &, const range_bounds &)): New.
13931         (check_types_equal): Use them instead of memcmp.
13932         * gdbtypes.h (operator==(const dynamic_prop &,
13933         const dynamic_prop &)): Declare.
13934         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13935         (operator==(const range_bounds &, const range_bounds &)): Declare.
13936         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13937
13938 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13939
13940         * s390-linux-tdep.c (s390_record_address_mask)
13941         (s390_record_calc_disp_common, s390_record_calc_disp)
13942         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13943         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13944         (s390_process_record): Move to s390-tdep.c.
13945         (s390_linux_init_abi_any): Adjust.
13946         * s390-tdep.c (s390_record_address_mask)
13947         (s390_record_calc_disp_common, s390_record_calc_disp)
13948         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13949         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13950         (s390_process_record): Moved from s390-linux-tdep.c
13951         (s390_gdbarch_init): Adjust.
13952
13953 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13954
13955         * s390-linux-nat.c (s390-tdep.h): New include.
13956         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13957         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13958         (ALLDEPFILES): Add s390-tdep.c.
13959         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13960         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13961         * s390-tdep.h: ...this.  New file.
13962         * s390-linux-tdep.c (s390-tdep.h): New include.
13963         (_initialize_s390_tdep): Rename to...
13964         (_initialize_s390_linux_tdep): ...this and adjust.
13965         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13966         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13967         s390-tdep.h.
13968         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13969         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13970         (s390_is_partial_instruction, s390_software_single_step)
13971         (is_non_branch_ril, s390_displaced_step_copy_insn)
13972         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13973         (s390_prologue_data, s390_addr, s390_store, s390_load)
13974         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13975         (s390_register_call_saved, s390_guess_tracepoint_registers)
13976         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13977         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13978         (s390_pseudo_register_name, s390_pseudo_register_type)
13979         (s390_pseudo_register_read, s390_pseudo_register_write)
13980         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13981         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13982         (s390_addr_bits_remove, s390_address_class_type_flags)
13983         (s390_address_class_type_flags_to_name)
13984         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13985         (s390_function_arg_float, s390_function_arg_vector)
13986         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13987         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13988         (s390_frame_align, s390_register_return_value, s390_return_value)
13989         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13990         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13991         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13992         (s390_trad_frame_prev_register, s390_unwind_cache)
13993         (s390_prologue_frame_unwind_cache)
13994         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13995         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13996         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13997         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13998         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13999         (s390_frame_base_address, s390_local_base_address)
14000         (s390_frame_base, s390_gcc_target_options)
14001         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14002         (s390_validate_reg_range, s390_tdesc_valid)
14003         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14004         * s390-tdep.c: ...this.  New file.
14005
14006 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14007
14008         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14009         (s390_process_record, s390_gdbarch_tdep_alloc)
14010         (s390_linux_init_abi_any): Use/set new hook.
14011
14012 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14013
14014         * s390-linux-tdep.c (osabi.h): New include.
14015         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14016         (s390_linux_init_abi_any): New functions.
14017         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14018
14019 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14020
14021         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14022         tdesc_has_registers check
14023
14024 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14025
14026         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14027         (s390_validate_reg_range): New macro.
14028         (s390_gdbarch_init): Adjust.
14029
14030 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14031
14032         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14033         (s390_gdbarch_tdep_alloc): Adjust.
14034         (s390_gdbarch_init): Adjust.
14035
14036 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14037
14038         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14039         <have_tdb>: Change type to bool.
14040         (s390_gdbarch_tdep_alloc): Adjust.
14041         (s390_gdbarch_init): Adjust.
14042
14043 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14044
14045         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14046         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14047         (s390_gdbarch_tdep_alloc): New function.
14048         (s390_gdbarch_init): Allocate tdep at start and use its fields
14049         instead of separate variables.
14050
14051 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14052
14053         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14054         when looking for cached gdbarch and add comment for remaining.
14055
14056 2018-01-22  Pedro Alves  <palves@redhat.com>
14057             Sergio Durigan Junior  <sergiodj@redhat.com>
14058
14059         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14060         case.
14061
14062 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14063
14064         * MAINTAINERS: Update my company e-mail address.
14065
14066 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14067
14068         * regcache.c (cooked_write_test): New function.
14069         (_initialize_regcache): Register the test.
14070
14071 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14072
14073         * ia64-tdep.c (ia64_pseudo_register_read): Call
14074         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14075         * m32c-tdep.c (m32c_cat_read): Likewise.
14076         (m32c_r3r2r1r0_read): Likewise.
14077         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14078         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14079
14080 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14081
14082         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14083         method raw_read instead of regcache_raw_read.
14084         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14085         * arm-tdep.c (arm_neon_quad_read): Likewise.
14086         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14087         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14088         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14089         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14090         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14091         (i386_pseudo_register_read_into_value): Likewise.
14092         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14093         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14094         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14095         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14096         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14097         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14098         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14099         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14100         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14101
14102 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14103
14104         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14105         * configure.tgt: Remove target mt.
14106         * mt-tdep.c: Remove.
14107         * regcache.c (cooked_read_test): Remove the check for mt.
14108
14109 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14110
14111         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14112         instead of gdbarch_pseudo_register_read_value.
14113
14114 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14115
14116         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14117         language is Ada.
14118
14119 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14120
14121         * linespec.c (create_sals_line_offset): Remove code that preserved
14122         the symtab_and_line's line number.
14123
14124 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14125
14126         * varobj.c (varobj_create): Don't set valid_block when creating a
14127         floating varobj.
14128
14129 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14130
14131         * varobj.c (varobj_create): Remove out of date comment.
14132
14133 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14134
14135         PR mi/20395
14136         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14137         updating innermost block.
14138         * parse.c (innermost_block_tracker::update): Take extra type
14139         parameter, and check types match before updating innermost block.
14140         (write_dollar_variable): Update innermost block for registers.
14141         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14142         (innermost_block_tracker::innermost_block_tracker): Initialise
14143         m_types member.
14144         (innermost_block_tracker::reset): Take type parameter.
14145         (innermost_block_tracker::update): Take type parameter, and pass
14146         type through as needed.
14147         (innermost_block_tracker::m_types): New member.
14148         * varobj.c (varobj_create): Pass type when reseting innermost
14149         block.
14150
14151 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14152
14153         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14154         * ada-lang.c (resolve_subexp): Likewise.
14155         * breakpoint.c (set_breakpoint_condition) Likewise.
14156         (watch_command_1) Likewise.
14157         * c-exp.y (variable): Likewise.
14158         * d-exp.y (PrimaryExpression): Likewise.
14159         * f-exp.y (variable): Likewise.
14160         * go-exp.y (variable): Likewise.
14161         * m2-exp.y (variable): Likewise.
14162         * objfiles.c (objfile::~objfile): Likewise.
14163         * p-exp.y (variable): Likewise.
14164         * parse.c (innermost_block): Change type.
14165         * parser-defs.h (class innermost_block_tracker): New.
14166         (innermost_block): Change to innermost_block_tracker.
14167         * printcmd.c (display_command): Switch to innermost_block API.
14168         (do_one_display): Likewise.
14169         * rust-exp.y (do_one_display): Likewise.
14170         * symfile.c (clear_symtab_users): Likewise.
14171         * varobj.c (varobj_create): Switch to innermost_block API, replace
14172         use of innermost_block with block stored on varobj object.
14173
14174 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14175
14176         * expression.h (innermost_block): Remove declaration.
14177         * varobj.c: Add 'parser-defs.h' include.
14178
14179 2018-01-19  Tom Tromey  <tom@tromey.com>
14180
14181         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14182         symbols in the static and global blocks.
14183
14184 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14185
14186         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14187         gdb_ptrace.h, and move including gdb_wait.h ...
14188         * nat/linux-ptrace.h: ... to here.
14189
14190 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14191
14192         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14193         inf_ptrace_detach_success.
14194         (inf_ptrace_detach_success): Add inferior parameter, use it
14195         instead of inferior_ptid, pass it to detach_inferior.
14196         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14197         parameter.
14198         * inferior.c (detach_inferior): Add overload that takes an
14199         inferior object.
14200         * inferior.h (detach_inferior): Likewise.
14201         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14202         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14203         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14204
14205 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14206
14207         * target.h (struct target_ops) <to_detach>: Add inferior
14208         parameter.
14209         (target_detach): Likewise.
14210         * target.c (dispose_inferior): Pass inferior down.
14211         (target_detach): Pass inferior down.  Assert that it is equal to
14212         the current inferior.
14213         * aix-thread.c (aix_thread_detach): Pass inferior down.
14214         * corefile.c (core_file_command): Pass current_inferior() down.
14215         * corelow.c (core_detach): Add inferior parameter.
14216         * darwin-nat.c (darwin_detach): Likewise.
14217         * gnu-nat.c (gnu_detach): Likewise.
14218         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14219         * infcmd.c (detach_command): Pass current_inferior() down to
14220         target_detach.
14221         * infrun.c (follow_fork_inferior): Pass parent_inf to
14222         target_detach.
14223         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14224         target_detach.
14225         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14226         * linux-thread-db.c (thread_db_detach): Likewise.
14227         * nto-procfs.c (procfs_detach): Likewise.
14228         * procfs.c (procfs_detach): Likewise.
14229         * record.c (record_detach): Likewise.
14230         * record.h (struct inferior): Forward-declare.
14231         (record_detach): Add inferior parameter.
14232         * remote-sim.c (gdbsim_detach): Likewise.
14233         * remote.c (remote_detach_1): Likewise.
14234         (remote_detach): Likewise.
14235         (extended_remote_detach): Likewise.
14236         * sol-thread.c (sol_thread_detach): Likewise.
14237         * target-debug.h (target_debug_print_inferior_p): New macro.
14238         * target-delegates.c: Re-generate.
14239         * top.c (kill_or_detach): Pass inferior down to target_detach.
14240         * windows-nat.c (windows_detach): Add inferior parameter.
14241
14242 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14243
14244         * target.h (struct target_ops) <to_detach>: Remove args
14245         parameter.
14246         (target_detach): Likewise.
14247         * target.c (dispose_inferior): Adjust.
14248         (target_detach): Remove args parameter, adjust.
14249         * aix-thread.c (aix_thread_detach): Adjust.
14250         * corefile.c (core_file_command): Adjust.
14251         * corelow.c (core_detach): Adjust.
14252         * darwin-nat.c (darwin_detach): Adjust.
14253         * gnu-nat.c (gnu_detach): Adjust.
14254         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14255         * infcmd.c (detach_command): Adjust
14256         * infrun.c (follow_fork_inferior): Adjust.
14257         (handle_vfork_child_exec_or_exit): Adjust.
14258         * linux-fork.c (linux_fork_detach): Remove args parameter.
14259         * linux-fork.h (linux_fork_detach): Likewise.
14260         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14261         * linux-thread-db.c (thread_db_detach): Likewise.
14262         * nto-procfs.c (procfs_detach): Likewise.
14263         * procfs.c (procfs_detach): Likewise.
14264         (do_detach): Remove signo parameter.
14265         * record.c (record_detach): Remove args parameter.
14266         * record.h (record_detach): Likewise.
14267         * remote-sim.c (gdbsim_detach): Likewise.
14268         * remote.c (remote_detach_1): Likewise.
14269         (remote_detach): Likewise.
14270         (extended_remote_detach): Likewise.
14271         * sol-thread.c (sol_thread_detach): Likewise.
14272         * target-delegates.c: Re-generate.
14273         * top.c (struct qt_args) <args>: Remove field.
14274         (kill_or_detach): Don't pass args.
14275         (quit_force): Don't set args.
14276         * windows-nat.c (windows_detach): Remove args parameter.
14277
14278 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14279
14280         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14281         (arm_linux_init_abi): Install it.
14282
14283 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14284
14285         * osabi.c (gdb_osabi_names): Extend the regexp for
14286         arm-linux-gnueabihf.
14287
14288 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14289
14290         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14291         m_abbrevs.
14292         (abbrev_table::add_abbrev): Update.
14293         (abbrev_table::lookup_abbrev): Update.
14294
14295 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14296
14297         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14298
14299 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14300
14301         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14302         to "std::string".
14303
14304 2018-01-17  Tom Tromey  <tom@tromey.com>
14305
14306         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14307
14308 2018-01-17  Tom Tromey  <tom@tromey.com>
14309
14310         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14311         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14312         (create_array_type_with_stride): Update.
14313         * dwarf2read.c (set_die_type): Update.
14314
14315 2018-01-17  Tom Tromey  <tom@tromey.com>
14316
14317         * dwarf2read.c (delayed_method_info): Remove typedef.
14318         (dwarf2_cu::method_info): Now a std::vector.
14319         (add_to_method_list): Update.
14320         (free_delayed_list): Remove.
14321         (compute_delayed_physnames): Update.
14322         (process_full_comp_unit, process_full_type_unit): Clear the method
14323         list.  Remove cleanups.
14324         (psymtab_include_file_name): Add name_holder parameter.  Use
14325         unique_xmalloc_ptr.
14326         (dwarf_decode_lines): Update.
14327
14328 2018-01-17  Tom Tromey  <tom@tromey.com>
14329             Simon Marchi  <simon.marchi@ericsson.com>
14330
14331         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14332         (dwarf2_per_objfile::free_cached_comp_units)
14333         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14334         (init_cutu_and_read_dies_no_follow): Update.
14335         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14336         (dwarf2_cu::~dwarf2_cu): New.
14337         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14338         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14339
14340 2018-01-17  Tom Tromey  <tom@tromey.com>
14341             Simon Marchi  <simon.marchi@ericsson.com>
14342
14343         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14344         (struct die_reader_specs) <abbrev_table>: New member.
14345         (struct abbrev_table): Add constructor.
14346         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14347         <abbrev_obstack>: Now an auto_obstack.
14348         (abbrev_table_up): New typedef.
14349         (init_cu_die_reader): Add abbrev_table parameter.
14350         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14351         Add result_dwo_abbrev_table.
14352         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14353         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14354         Update.
14355         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14356         parameter.
14357         (skip_children): Update.
14358         (abbrev_table::alloc_abbrev): Rename from
14359         abbrev_table_alloc_abbrev.
14360         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14361         (abbrev_table::lookup_abbrev): Rename from
14362         abbrev_table_lookup_abbrev.
14363         (abbrev_table_read_table): Return abbrev_table_up.
14364         (abbrev_table_free, abbrev_table_free_cleanup)
14365         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14366         (load_partial_dies): Update.
14367
14368 2018-01-17  Tom Tromey  <tom@tromey.com>
14369
14370         * dwarf2read.c (dwarf2_compute_name): Update comment.
14371         (read_func_scope, read_variable): Update.
14372         (new_symbol): Remove.
14373         (new_symbol_full): Rename to new_symbol.
14374
14375 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14376
14377         PR gdb/16577
14378         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14379         a warning instead of throwing an error, set section size to 0 and return
14380         NULL.
14381         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14382
14383 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14384
14385         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14386         std::string.
14387         (linux_ptrace_attach_fail_reason_string): Likewise.
14388         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14389         Likewise.
14390         (linux_ptrace_attach_fail_reason_string): Likewise.
14391         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14392
14393 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14394
14395         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14396
14397 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14398
14399         PR gdb/21559
14400         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14401         checking for fs_base/gs_base fields in struct user_regs_struct.
14402         * configure: Regenerate.
14403
14404 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14405
14406         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14407         function.
14408         (aarch64_linux_init_abi): Install it to gdbarch hook
14409         gcc_target_options.
14410
14411 2018-01-15  Pedro Alves  <palves@redhat.com>
14412
14413         * common/signals-state-save-restore.c
14414         (save_original_signals_state): Fix typos.
14415
14416 2017-01-12  Tom Tromey  <tom@tromey.com>
14417             Sergio Durigan Junior  <sergiodj@redhat.com>
14418
14419         * Makefile.in (install-only): Install gdb-add-index.
14420
14421 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14422
14423         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14424
14425 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14426
14427         * infrun.c (keep_going_pass_signal): Clear step-over info when
14428         insert_breakpoints fails.
14429
14430 2018-01-11  Pedro Alves  <palves@redhat.com>
14431
14432         PR gdb/22583
14433         * infrun.c (resume): Rename to ...
14434         (resume_1): ... this.
14435         (resume): Reimplement as wrapper around resume_1.
14436
14437 2018-01-11  Pedro Alves  <palves@redhat.com>
14438
14439         PR remote/22597
14440         * remote.c (remote_parse_stop_reply): Default to the last-set
14441         general thread instead of to 'magic_null_ptid'.
14442
14443 2018-01-10  Pedro Alves  <palves@redhat.com>
14444
14445         * language.h (language_get_symbol_name_matcher): Rename ...
14446         (get_symbol_name_matcher): ... this.
14447         * language.c (language_get_symbol_name_matcher): Ditto.
14448         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14449         callers adjusted.
14450
14451 2018-01-10  Pedro Alves  <palves@redhat.com>
14452
14453         PR gdb/22670
14454         * dwarf2read.c
14455         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14456         Adjust to use language_get_symbol_name_matcher instead of
14457         language_defn::la_get_symbol_name_matcher.
14458         * language.c (language_get_symbol_name_matcher): If in Ada mode
14459         and the lookup name is a verbatim match, return Ada's matcher.
14460         * language.h (language_get_symbol_name_matcher): Adjust comment.
14461         (ada_lookup_name_info::verbatim_p):: New method.
14462
14463 2018-01-10  Pedro Alves  <palves@redhat.com>
14464
14465         PR gdb/22670
14466         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14467         minsym's language is language_auto or language_cplus, pass down
14468         language_ada instead.
14469         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14470
14471 2018-01-10  Pedro Alves  <palves@redhat.com>
14472
14473         PR gdb/22670
14474         * minsyms.c (linkage_name_str): New function.
14475         (iterate_over_minimal_symbols): Use it.
14476
14477 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14478
14479         * NEWS: Document that 'info proc' now works on FreeBSD.
14480
14481 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14482
14483         * configure.ac: Check for kinfo_getfile in libutil.
14484         * configure: Regenerate.
14485         * config.in: Regenerate.
14486         * fbsd-nat.c: Include "fbsd-tdep.h".
14487         (fbsd_fetch_cmdline): New.
14488         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14489         rather than calling error.
14490         (fbsd_info_proc): New.
14491         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14492         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14493         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14494
14495 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14496
14497         * fbsd-nat.c (struct free_deleter): Remove.
14498         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14499
14500 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14501
14502         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14503         NULL for an empty pathname.
14504
14505 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14506
14507         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14508         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14509         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14510         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14511         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14512         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14513         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14514         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14515         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14516         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14517         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14518         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14519         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14520         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14521         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14522
14523 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14524
14525         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14526         (gnu_xfer_auxv): New function.
14527         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14528         TARGET_OBJECT_AUXV.
14529
14530 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14531             Simon Marchi  <simon.marchi@ericsson.com>
14532
14533         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14534         common/selftest.c.
14535         (COMMON_OBS): Remove selftest.o.
14536         * configure.ac: Append selftest-arch.c and common/selftest.c to
14537         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14538         * configure: Re-generated.
14539         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14540         GDB_SELF_TEST.
14541         (maintenance_info_selftests): Likewise.
14542
14543 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14544
14545         * ada-valprint.c (val_print_packed_array_elements): Use
14546         proper number of elements when printing an array indexed
14547         by an enumeration type.
14548
14549 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14550
14551         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14552         (dw2_get_file_names_reader): Adjust.
14553         (lookup_dwo_signatured_type): Adjust.
14554         (lookup_dwp_signatured_type): Adjust.
14555         (lookup_signatured_type): Adjust.
14556         (create_type_unit_group): Adjust.
14557         (get_type_unit_group): Adjust.
14558         (process_psymtab_comp_unit_reader): Adjust.
14559         (build_type_psymtabs_reader): Adjust.
14560         (scan_partial_symbols): Adjust.
14561         (add_partial_symbol): Adjust.
14562         (add_partial_subprogram): Adjust.
14563         (peek_die_abbrev): Adjust.
14564         (fixup_go_packaging): Adjust.
14565         (process_imported_unit_die): Adjust.
14566         (dwarf2_compute_name): Adjust.
14567         (dwarf2_physname): Adjust.
14568         (read_import_statement): Adjust.
14569         (handle_DW_AT_stmt_list): Adjust.
14570         (read_file_scope): Adjust.
14571         (read_func_scope): Adjust.
14572         (read_lexical_block_scope): Adjust.
14573         (read_call_site_scope): Adjust.
14574         (read_variable): Adjust.
14575         (dwarf2_rnglists_process): Adjust.
14576         (dwarf2_ranges_process): Adjust.
14577         (dwarf2_ranges_read): Adjust.
14578         (dwarf2_get_pc_bounds): Adjust.
14579         (dwarf2_record_block_ranges): Adjust.
14580         (dwarf2_add_field): Adjust.
14581         (dwarf2_add_member_fn): Adjust.
14582         (read_structure_type): Adjust.
14583         (process_structure_scope): Adjust.
14584         (read_enumeration_type): Adjust.
14585         (read_array_type): Adjust.
14586         (mark_common_block_symbol_computed): Adjust.
14587         (read_common_block): Adjust.
14588         (read_namespace_type): Adjust.
14589         (read_namespace): Adjust.
14590         (read_module_type): Adjust.
14591         (read_tag_pointer_type): Adjust.
14592         (read_tag_ptr_to_member_type): Adjust.
14593         (read_tag_string_type): Adjust.
14594         (read_subroutine_type): Adjust.
14595         (read_typedef): Adjust.
14596         (read_base_type): Adjust.
14597         (attr_to_dynamic_prop): Adjust.
14598         (read_subrange_type): Adjust.
14599         (read_unspecified_type): Adjust.
14600         (dwarf2_read_abbrevs): Adjust.
14601         (load_partial_dies): Adjust.
14602         (read_partial_die): Adjust.
14603         (find_partial_die): Adjust.
14604         (guess_partial_die_structure_name): Adjust.
14605         (fixup_partial_die): Adjust.
14606         (read_attribute_value): Adjust.
14607         (read_addr_index): Adjust.
14608         (read_addr_index_from_leb128): Adjust.
14609         (read_str_index): Adjust.
14610         (dwarf2_string_attr): Adjust.
14611         (get_debug_line_section): Adjust.
14612         (dwarf_decode_line_header): Adjust.
14613         (lnp_state_machine::check_line_address): Adjust.
14614         (dwarf_decode_lines_1): Adjust.
14615         (dwarf_decode_lines): Adjust.
14616         (dwarf2_start_symtab): Adjust.
14617         (var_decode_location): Adjust.
14618         (new_symbol_full): Adjust.
14619         (dwarf2_const_value_data): Adjust.
14620         (dwarf2_const_value_attr): Adjust.
14621         (dwarf2_const_value): Adjust.
14622         (die_type): Adjust.
14623         (die_containing_type): Adjust.
14624         (build_error_marker_type): Adjust.
14625         (lookup_die_type): Adjust.
14626         (guess_full_die_structure_name): Adjust.
14627         (anonymous_struct_prefix): Adjust.
14628         (determine_prefix): Adjust.
14629         (dwarf2_name): Adjust.
14630         (follow_die_ref_or_sig): Adjust.
14631         (follow_die_offset): Adjust.
14632         (follow_die_ref): Adjust.
14633         (follow_die_sig_1): Adjust.
14634         (follow_die_sig): Adjust.
14635         (get_signatured_type): Adjust.
14636         (get_DW_AT_signature_type): Adjust.
14637         (decode_locdesc): Adjust.
14638         (dwarf_decode_macros): Adjust.
14639         (cu_debug_loc_section): Adjust.
14640         (fill_in_loclist_baton): Adjust.
14641         (dwarf2_symbol_mark_computed): Adjust.
14642         (init_one_comp_unit): Don't assign
14643         dwarf2_cu::dwarf2_per_objfile.
14644         (set_die_type): Adjust.
14645
14646 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14647
14648         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14649         <dwarf2_per_objfile>: New field.
14650         (dwarf2_per_objfile): Remove global.
14651         (get_dwarf2_per_objfile): New function.
14652         (set_dwarf2_per_objfile): New function.
14653         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14654         dwarf2_per_objfile.
14655         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14656         (read_abbrev_offset): Likewise.
14657         (read_indirect_string): Likewise.
14658         (read_indirect_line_string): Likewise.
14659         (read_indirect_string_at_offset): Likewise.
14660         (read_indirect_string_from_dwz): Likewise.
14661         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14662         dwarf2_per_objfile.
14663         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14664         (create_all_comp_units): Change objfile parameter to
14665         dwarf2_per_objfile.
14666         (create_all_type_units): Likewise.
14667         (process_queue): Add dwarf2_per_objfile parameter.
14668         (read_and_check_comp_unit_head): Likewise.
14669         (lookup_dwo_unit_in_dwp): Likewise.
14670         (get_dwp_file): Likewise.
14671         (process_cu_includes): Likewise.
14672         (struct free_dwo_file_cleanup_data): New struct.
14673         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14674         set_dwarf2_per_objfile.
14675         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14676         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14677         context, adjust calls.
14678         (dw2_instantiate_symtab): Likewise.
14679         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14680         (dw2_get_cu): Likewise.
14681         (create_cu_from_index_list): Change objfile parameter to
14682         dwarf2_per_objfile.
14683         (create_cus_from_index_list): Get dwarf2_per_objfile from
14684         context, adjust calls.
14685         (create_cus_from_index): Likewise.
14686         (create_signatured_type_table_from_index): Change objfile
14687         parameter to dwarf2_per_objfile.
14688         (create_signatured_type_table_from_debug_names): Change objfile
14689         parameter to dwarf2_per_objfile.
14690         (create_addrmap_from_index): Likewise.
14691         (create_addrmap_from_aranges): Likewise.
14692         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14693         (dw2_setup): Remove.
14694         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14695         context.
14696         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14697         get_dwarf2_per_objfile.
14698         (dw2_forget_cached_source_info): Likewise.
14699         (dw2_map_symtabs_matching_filename): Likewise.
14700         (struct dw2_symtab_iterator) <index>: Remove.
14701         <dwarf2_per_objfile>: New field.
14702         (dw2_symtab_iter_init): Replace index parameter with
14703         dwarf2_per_objfile.
14704         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14705         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14706         (dw2_print_stats): Likewise.
14707         (dw2_dump): Likewise.
14708         (dw2_expand_symtabs_for_function): Likewise.
14709         (dw2_expand_all_symtabs): Likewise.
14710         (dw2_expand_symtabs_with_fullname): Likewise.
14711         (dw2_expand_marked_cus): Replace index and objfile parameters
14712         with dwarf2_per_objfile.
14713         (dw_expand_symtabs_matching_file_matcher): Add
14714         dwarf2_per_objfile parameter and adjust calls.
14715         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14716         adjust calls.
14717         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14718         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14719         adjust calls.
14720         (create_cus_from_debug_names_list): Replace objfile parameter
14721         with dwarf2_per_objfile and adjust calls.
14722         (create_cus_from_debug_names): Likewise.
14723         (dwarf2_read_debug_names): Likewise.
14724         (mapped_debug_names::namei_to_name): Adjust call.
14725         (dw2_debug_names_iterator::next): Likewise.
14726         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14727         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14728         (dw2_debug_names_dump): Likewise.
14729         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14730         (dw2_debug_names_expand_symtabs_matching): Likewise.
14731         (dwarf2_initialize_objfile): Likewise.
14732         (dwarf2_build_psymtabs): Likewise.
14733         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14734         this_cu.
14735         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14736         (read_and_check_comp_unit_head): Likewise.
14737         (read_abbrev_offset): Likewise.
14738         (create_debug_type_hash_table): Likewise.
14739         (create_debug_types_hash_table): Likewise.
14740         (create_all_type_units): Replace objfile parameter with
14741         dwarf2_per_objfile.
14742         (add_type_unit): Add dwarf2_per_objfile parameter.
14743         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14744         with dwarf2_per_objfile.
14745         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14746         (lookup_dwp_signatured_type): Likewise.
14747         (lookup_signatured_type): Likewise.
14748         (read_cutu_die_from_dwo): Likewise.
14749         (init_tu_and_read_dwo_dies): Likewise.
14750         (init_cutu_and_read_dies): Likewise.
14751         (init_cutu_and_read_dies_no_follow): Likewise.
14752         (allocate_type_unit_groups_table): Add objfile parameter.
14753         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14754         (get_type_unit_group): Likewise.
14755         (process_psymtab_comp_unit): Update call.
14756         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14757         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14758         (print_tu_stats): Likewise.
14759         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14760         in void* parameter.
14761         (build_type_psymtabs): Change objfile parameter to
14762         dwarf2_per_objfile.
14763         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14764         passed in void* parameter.
14765         (process_skeletonless_type_units): Change objfile parameter to
14766         dwarf2_per_objfile.
14767         (set_partial_user): Likewise.
14768         (dwarf2_build_psymtabs_hard): Likewise.
14769         (read_comp_units_from_section): Likewise.
14770         (create_all_comp_units): Likewise.
14771         (scan_partial_symbols): Update calls.
14772         (add_partial_symbol): Likewise.
14773         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14774         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14775         (process_queue): Add dwarf2_per_objfile parameter.
14776         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14777         (compute_compunit_symtab_includes): Likewise.
14778         (process_cu_includes): Add dwarf2_per_objfile parameter.
14779         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14780         (process_full_type_unit): Likewise.
14781         (process_imported_unit_die): Update call.
14782         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14783         (read_file_scope): Likewise.
14784         (allocate_dwo_file_hash_table): Add objfile parameter.
14785         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14786         (create_cus_hash_table): Likewise.
14787         (create_dwp_hash_table): Likewise.
14788         (create_dwo_unit_in_dwp_v1): Likewise.
14789         (create_dwp_v2_section): Likewise.
14790         (create_dwo_unit_in_dwp_v2): Likewise.
14791         (lookup_dwo_unit_in_dwp): Likewise.
14792         (try_open_dwop_file): Likewise.
14793         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14794         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14795         cleanup to include a reference to dwarf2_per_objfile.
14796         (open_dwp_file): Add dwarf2_per_objfile parameter.
14797         (open_and_init_dwp_file): Likewise.
14798         (get_dwp_file): Likewise.
14799         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14800         (queue_and_load_all_dwo_tus): Update call.
14801         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14802         data.
14803         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14804         (dwarf2_ranges_process): Likewise.
14805         (dwarf2_get_pc_bounds): Likewise.
14806         (mark_common_block_symbol_computed): Likewise.
14807         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14808         (dwarf2_read_abbrevs): Update call.
14809         (read_partial_die): Use dwarf2_per_objfile from cu.
14810         (find_partial_die): Likewise.
14811         (fixup_partial_die): Likewise.
14812         (read_attribute_value): Likewise.
14813         (read_indirect_string_at_offset_from): Add objfile parameter.
14814         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14815         parameter.
14816         (read_indirect_string_from_dwz): Add objfile parameter.
14817         (read_indirect_string): Add objfile parameter.
14818         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14819         (read_addr_index): Use dwarf2_per_objfile from cu.
14820         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14821         call dw2_setup.
14822         (read_str_index): Use dwarf2_per_objfile from cu.
14823         (get_debug_line_section): Likewise.
14824         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14825         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14826         (new_symbol_full): Use dwarf2_per_objfile from cu.
14827         (build_error_marker_type): Likewise.
14828         (lookup_die_type): Likewise.
14829         (determine_prefix): Likewise.
14830         (follow_die_offset): Likewise.
14831         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14832         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14833         (dwarf2_fetch_die_type_sect_off): Likewise.
14834         (dwarf2_get_die_type): Likewise.
14835         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14836         (get_signatured_type): Likewise.
14837         (get_DW_AT_signature_type): Likewise.
14838         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14839         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14840         (cu_debug_loc_section): Likewise.
14841         (fill_in_loclist_baton): Likewise.
14842         (dwarf2_symbol_mark_computed): Likewise.
14843         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14844         dwarf2_per_objfile.
14845         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14846         parameter.
14847         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14848         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14849         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14850         (set_die_type): Use dwarf2_free_objfile from cu.
14851         (get_die_type_at_offset): Likewise.
14852         (dwarf2_per_objfile_free): Don't assign global variable.
14853         (debug_names) <constructor>: Add dwarf2_per_objfile
14854         parameter, update m_debugstrlookup construction.
14855         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14856         parameter.
14857         <m_dwarf2_per_objfile>: New field.
14858         <lookup>: Use m_dwarf2_per_objfile.
14859         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14860         (psyms_seen_size): Likewise.
14861         (write_gdbindex): Replace objfile parameter with
14862         dwarf2_per_objfile.
14863         (write_debug_names): Likewise.
14864         (write_psymtabs_to_index): Likewise.
14865         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14866         calls.
14867
14868 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14869
14870         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14871         <dwarf2_per_objfile>: New field.
14872         (struct dwarf2_per_cu_data) <objfile>: Remove.
14873         <dwarf2_per_objfile>: New field.
14874         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14875         of objfile.
14876         (create_signatured_type_table_from_index): Likewise.
14877         (create_debug_type_hash_table): Likewise.
14878         (fill_in_sig_entry_from_dwo_entry): Likewise.
14879         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14880         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14881         objfile.
14882         (create_partial_symtab): Access objfile through
14883         dwarf2_per_objfile.
14884         (process_psymtab_comp_unit_reader): Likewise.
14885         (read_comp_units_from_section): Likewise.
14886         (scan_partial_symbols): Likewise.
14887         (add_partial_symbol): Likewise.
14888         (add_partial_subprogram): Likewise.
14889         (peek_die_abbrev): Likewise.
14890         (fixup_go_packaging): Likewise.
14891         (process_full_comp_unit): Likewise.
14892         (process_full_type_unit): Likewise.
14893         (process_imported_unit_die): Likewise.
14894         (dwarf2_compute_name): Likewise.
14895         (dwarf2_physname): Likewise.
14896         (read_import_statement): Likewise.
14897         (create_cus_hash_table): Assign dwarf2_physname instead of
14898         objfile.
14899         (read_func_scope): Access objfile through dwarf2_per_objfile.
14900         (read_lexical_block_scope): Likewise.
14901         (read_call_site_scope): Likewise.
14902         (read_variable): Likewise.
14903         (dwarf2_rnglists_process): Likewise.
14904         (dwarf2_ranges_process): Likewise.
14905         (dwarf2_ranges_read): Likewise.
14906         (dwarf2_record_block_ranges): Likewise.
14907         (dwarf2_add_field): Likewise.
14908         (dwarf2_add_member_fn): Likewise.
14909         (read_structure_type): Likewise.
14910         (process_structure_scope): Likewise.
14911         (read_enumeration_type): Likewise.
14912         (read_array_type): Likewise.
14913         (read_common_block): Likewise.
14914         (read_namespace_type): Likewise.
14915         (read_namespace): Likewise.
14916         (read_module_type): Likewise.
14917         (read_tag_pointer_type): Likewise.
14918         (read_tag_ptr_to_member_type): Likewise.
14919         (read_tag_string_type): Likewise.
14920         (read_subroutine_type): Likewise.
14921         (read_typedef): Likewise.
14922         (read_base_type): Likewise.
14923         (attr_to_dynamic_prop): Likewise.
14924         (read_subrange_type): Likewise.
14925         (read_unspecified_type): Likewise.
14926         (load_partial_dies): Likewise.
14927         (read_partial_die): Likewise.
14928         (find_partial_die): Likewise.
14929         (guess_partial_die_structure_name): Likewise.
14930         (fixup_partial_die): Likewise.
14931         (read_attribute_value): Likewise.
14932         (read_addr_index_from_leb128): Likewise.
14933         (dwarf2_read_addr_index): Likewise.
14934         (dwarf2_string_attr): Likewise.
14935         (lnp_state_machine::check_line_address): Likewise.
14936         (dwarf_decode_lines_1): Likewise.
14937         (dwarf_decode_lines): Likewise.
14938         (dwarf2_start_symtab): Likewise.
14939         (var_decode_location): Likewise.
14940         (new_symbol_full): Likewise.
14941         (dwarf2_const_value_data): Likewise.
14942         (dwarf2_const_value_attr): Likewise.
14943         (dwarf2_const_value): Likewise.
14944         (die_type): Likewise.
14945         (die_containing_type): Likewise.
14946         (lookup_die_type): Likewise.
14947         (guess_full_die_structure_name): Likewise.
14948         (anonymous_struct_prefix): Likewise.
14949         (dwarf2_name): Likewise.
14950         (follow_die_ref_or_sig): Likewise.
14951         (follow_die_offset): Likewise.
14952         (follow_die_ref): Likewise.
14953         (dwarf2_fetch_die_loc_sect_off): Likewise.
14954         (dwarf2_fetch_constant_bytes): Likewise.
14955         (dwarf2_fetch_die_type_sect_off): Likewise.
14956         (dwarf2_get_die_type): Likewise.
14957         (follow_die_sig): Likewise.
14958         (decode_locdesc): Likewise.
14959         (dwarf2_per_cu_objfile): Likewise.
14960         (dwarf2_per_cu_text_offset): Likewise.
14961         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14962         objfile.
14963         (set_die_type): Access objfile through
14964         dwarf2_per_objfile.
14965
14966 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14967
14968         * valprint.c (converted_character_d): Remove typedef.
14969         (DEF_VEC_O (converted_character_d)): Remove.
14970         (count_next_character): Use std::vector.
14971         (print_converted_chars_to_obstack): Likewise.
14972         (generic_printstr): Likewise.
14973
14974 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14975
14976         * xml-support.h (struct gdb_xml_value): Add constructor.
14977         <value>: Change type to unique_xmalloc_ptr.
14978         (gdb_xml_value_s): Remove typedef.
14979         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14980         (gdb_xml_element_start_handler): Change parameter type to
14981         std::vector.
14982         (xml_find_attribute): Likewise.
14983         * xml-support.c (xml_find_attribute): Change parameter type to
14984         std::vector and adjust.
14985         (gdb_xml_values_cleanup): Remove.
14986         (gdb_xml_parser::start_element): Adjust to std::vector.
14987         (xinclude_start_include): Change paraeter type to std::vector
14988         and adjust.
14989         * btrace.c (check_xml_btrace_version): Likewise.
14990         (parse_xml_btrace_block): Likewise.
14991         (parse_xml_btrace_pt_config_cpu): Likewise.
14992         (parse_xml_btrace_pt): Likewise.
14993         (parse_xml_btrace_conf_bts): Likewise.
14994         (parse_xml_btrace_conf_pt): Likewise.
14995         * memory-map.c (memory_map_start_memory): Likewise.
14996         (memory_map_start_property): Likewise.
14997         * osdata.c (osdata_start_osdata): Likewise.
14998         (osdata_start_item): Likewise.
14999         (osdata_start_column): Likewise.
15000         * remote.c (start_thread): Likewise.
15001         * solib-aix.c (library_list_start_library): Likewise.
15002         (library_list_start_list): Likewise.
15003         * solib-svr4.c (library_list_start_library): Likewise.
15004         (svr4_library_list_start_list): Likewise.
15005         * solib-target.c (library_list_start_segment): Likewise.
15006         (library_list_start_section): Likewise.
15007         (library_list_start_library): Likewise.
15008         (library_list_start_list): Likewise.
15009         * tracepoint.c (traceframe_info_start_memory): Likewise.
15010         (traceframe_info_start_tvar): Likewise.
15011         * xml-syscall.c (syscall_start_syscall): Likewise.
15012         * xml-tdesc.c (tdesc_start_target): Likewise.
15013         (tdesc_start_feature): Likewise.
15014         (tdesc_start_reg): Likewise.
15015         (tdesc_start_union): Likewise.
15016         (tdesc_start_struct): Likewise.
15017         (tdesc_start_flags): Likewise.
15018         (tdesc_start_enum): Likewise.
15019         (tdesc_start_field): Likewise.
15020         (tdesc_start_enum_value): Likewise.
15021         (tdesc_start_vector): Likewise.
15022
15023 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15024
15025         * extension.h (struct xmethod_worker) <clone>: Remove.
15026         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15027         Remove.
15028         (python_xmethod_worker::clone): Remove.
15029         * valops.c (find_overload_match): Use std::move instead of
15030         clone.
15031
15032 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15033
15034         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15035         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15036         <free_xmethod_worker_data>: Remove.
15037         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15038         <get_xmethod_arg_types>: Remove.
15039         <get_xmethod_result_type>: Remove.
15040         <invoke_xmethod>: Remove.
15041         * extension.c (new_xmethod_worker): Remove.
15042         (clone_xmethod_worker): Remove.
15043         (get_matching_xmethod_workers): Return void, pass std::vector by
15044         pointer.
15045         (get_xmethod_arg_types): Rename to...
15046         (xmethod_worker::get_arg_types): ... this, and adjust.
15047         (get_xmethod_result_type): Rename to...
15048         (xmethod_worker::get_result_type): ... this, and adjust.
15049         (invoke_xmethod): Remove.
15050         (free_xmethod_worker): Remove.
15051         (free_xmethod_worker_vec): Remove.
15052         * extension.h (enum ext_lang_rc): Move here from
15053         extension-priv.h.
15054         (struct xmethod_worker): Add constructor and destructor.
15055         <data>: Remove.
15056         <value>: Remove.
15057         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15058         virtual pure methods.
15059         <get_arg_types, get_result_type>: New methods.
15060         (xmethod_worker_ptr): Remove typedef.
15061         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15062         (xmethod_worker_vec): Remove typedef.
15063         (xmethod_worker_up): New typedef.
15064         (invoke_xmethod): Remove.
15065         (clone_xmethod_worker): Remove.
15066         (free_xmethod_worker): Remove.
15067         (free_xmethod_worker_vec): Remove.
15068         (get_xmethod_arg_types): Remove.
15069         (get_xmethod_result_type): Remove.
15070         * valops.c (find_method_list): Use std::vector, don't use
15071         intermediate vector.
15072         (value_find_oload_method_list): Use std::vector.
15073         (find_overload_match): Use std::vector.
15074         (find_oload_champ): Use std::vector.
15075         * value.c (value_free): Use operator delete.
15076         (value_of_xmethod): Rename to...
15077         (value_from_xmethod): ... this.  Don't assign
15078         xmethod_worker::value, take rvalue-reference.
15079         (result_type_of_xmethod): Adjust.
15080         (call_xmethod): Adjust.
15081         * value.h: Include extension.h.
15082         (struct xmethod_worker): Don't forward-declare.
15083         (value_of_xmethod): Rename to...
15084         (value_from_xmethod): ... this, take rvalue-reference.
15085         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15086         (struct python_xmethod_worker): ... this, add constructor and
15087         destructor.
15088         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15089         (gdbpy_free_xmethod_worker_data): Rename to...
15090         (python_xmethod_worker::~python_xmethod_worker): ... this and
15091         adjust.
15092         (gdbpy_clone_xmethod_worker_data): Rename to...
15093         (python_xmethod_worker::clone): ... this and adjust.
15094         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15095         temporary vector.
15096         (gdbpy_get_xmethod_arg_types): Rename to...
15097         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15098         (gdbpy_get_xmethod_result_type): Rename to...
15099         (python_xmethod_worker::do_get_result_type): ... this and
15100         adjust.
15101         (gdbpy_invoke_xmethod): Rename to...
15102         (python_xmethod_worker::invoke): ... this and adjust.
15103         (new_python_xmethod_worker): Rename to...
15104         (python_xmethod_worker::python_xmethod_worker): ... this and
15105         adjust.
15106         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15107         Remove.
15108         (gdbpy_free_xmethod_worker_data): Remove.
15109         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15110         (gdbpy_get_xmethod_arg_types): Remove.
15111         (gdbpy_get_xmethod_result_type): Remove.
15112         (gdbpy_invoke_xmethod): Remove.
15113         * python/python.c (python_extension_ops): Remove obsolete
15114         callbacks.
15115
15116 2018-01-05  Pedro Alves  <palves@redhat.com>
15117
15118         PR gdb/18653
15119         * common/signals-state-save-restore.c
15120         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15121         find a custom handler preinstalled, instead of internal erroring.
15122         But only warn if !quiet.
15123         * common/signals-state-save-restore.h
15124         (save_original_signals_state): New parameter 'quiet'.
15125         * main.c (captured_main_1): Move save_original_signals_state call
15126         after option handling, and pass QUIET.
15127
15128 2018-01-05  Pedro Alves  <palves@redhat.com>
15129
15130         * spu-tdep.c (spu_catch_start): Pass
15131         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15132
15133 2018-01-05  Pedro Alves  <palves@redhat.com>
15134
15135         PR gdb/22670
15136         * ada-lang.c (literal_symbol_name_matcher): New function.
15137         (ada_get_symbol_name_matcher): Use it for
15138         symbol_name_match_type::SEARCH_NAME.
15139         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15140         it down instead of assuming symbol_name_match_type::FULL.
15141         * block.h (block_lookup_symbol): New parameter 'match_type'.
15142         * c-valprint.c (print_unpacked_pointer): Use
15143         lookup_symbol_search_name instead of lookup_symbol.
15144         * compile/compile-object-load.c (get_out_value_type): Pass down
15145         symbol_name_match_type::SEARCH_NAME.
15146         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15147         symbol_name_match_type::FULL.
15148         * cp-support.c (cp_get_symbol_name_matcher): Handle
15149         symbol_name_match_type::SEARCH_NAME.
15150         * infrun.c (insert_exception_resume_breakpoint): Use
15151         lookup_symbol_search_name.
15152         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15153         * psymtab.c (maintenance_check_psymtabs): Use
15154         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15155         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15156         SYMBOL_SEARCH_NAME.
15157         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15158         if symbol_name_match_type::SEARCH_NAME.
15159         (lookup_symbol_in_language): Pass down
15160         symbol_name_match_type::FULL.
15161         (lookup_symbol_search_name): New.
15162         (lookup_language_this): Pass down
15163         symbol_name_match_type::SEARCH_NAME.
15164         (lookup_symbol_aux, lookup_local_symbol): New parameter
15165         'match_type'.  Pass it down.
15166         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15167         (lookup_symbol_search_name): New declaration.
15168         (lookup_symbol_in_block): New 'match_type' parameter.
15169
15170 2018-01-05  Pedro Alves  <palves@redhat.com>
15171
15172         PR gdb/22670
15173         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15174         ada_lookup_symbol.
15175         (ada_lookup_symbol): Reimplement in terms of
15176         ada_lookup_symbol_list, bits factored out from
15177         ada_lookup_encoded_symbol.
15178
15179 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15180
15181         * ada-exp.y (write_object_renaming): When subscripting an array
15182         using a symbol as the index, pass the block in call to
15183         ada_lookup_encoded_symbol when looking that symbol up.
15184
15185 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15186
15187         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15188         TYPE_INDEX_TYPE.
15189
15190 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15191
15192         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15193         the case where VALUE_LVAL (val0) is not lval_memory.
15194
15195 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15196
15197         * ada-valprint.c (print_optional_low_bound): Handle
15198         character-indexed array printing like boolean-indexed array
15199         printing.
15200
15201 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15202
15203         * NEWS: Create a new section for the next release branch.
15204         Rename the section of the current branch, now that it has
15205         been cut.
15206
15207 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15208
15209         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15210         * version.in: Bump version to 8.1.50.DATE-git.
15211
15212 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15213
15214         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15215         Add field.
15216         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15217         Add field.
15218         (default_exception_support_info) <catch_handlers_sym>: Add field.
15219         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15220         (ada_exception_name_addr_1): Add "catch handlers" handling.
15221         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15222         Update all callers.
15223         (create_excep_cond_exprs) <ex>: Add parameter.
15224         (re_set_exception): Update create_excep_cond_exprs call.
15225         (print_it_exception, print_one_exception, print_mention_exception)
15226         (print_recreate_exception): Add "catch handler" handling.
15227         (allocate_location_catch_handlers, re_set_catch_handlers)
15228         (check_status_catch_handlers, print_it_catch_handlers)
15229         (print_one_catch_handlers, print_mention_catch_handlers)
15230         (print_recreate_catch_handlers): New function.
15231         (catch_handlers_breakpoint_ops): New variable.
15232         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15233         Add parameter.  Add "catch handler" handling.
15234         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15235         Add "catch handler" handling.
15236         (ada_exception_catchpoint_cond_string): Add "catch handler"
15237         handling.
15238         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15239         call.
15240         (catch_ada_handlers_command): New function.
15241         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15242         operations structure.
15243         (_initialize_ada_language): Add "catch handlers" command entry.
15244         * NEWS: Document "catch handlers" feature.
15245
15246 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15247
15248         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15249         account when creating the array type of the slice.
15250         (ada_value_slice): Likewise.
15251
15252 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15253
15254         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15255         New enum value.
15256         (create_array_type_with_stride): Add byte_stride_prop parameter.
15257         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15258         New parameter.  Update all callers in this file.
15259         (array_type_has_dynamic_stride): New function.
15260         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15261         of arrays with dynamic byte strides.
15262         * dwarf2read.c (read_array_type): Add support for dynamic
15263         DW_AT_byte_stride attributes.
15264
15265 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15266
15267         * dwarf2read.c (read_unspecified_type): Treat
15268         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15269
15270 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15271
15272         Update copyright year range in all GDB files.
15273
15274 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15275
15276         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15277         and gdb/testsuite/gdb.base/step-line.c.
15278
15279 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15280
15281         * copyright.py (main): Dump the contents of
15282         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15283         even if BY_HAND is empty.
15284
15285 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15286
15287         * top.c (print_gdb_version): Update Copyright year in version
15288         message.
15289
15290 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15291
15292         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15293
15294 For older changes see ChangeLog-2017.
15295 \f
15296 Local Variables:
15297 mode: change-log
15298 left-margin: 8
15299 fill-column: 74
15300 version-control: never
15301 coding: utf-8
15302 End: