New cli-utils.h/.c function extract_info_print_args
[external/binutils.git] / gdb / ChangeLog
1 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2
3         * cli-utils.c (extract_arg_maybe_quoted): New function.
4         (extract_info_print_args): New function.
5         (info_print_args_help): New function.
6         (report_unrecognized_option_error): New function.
7         * cli-utils.h (extract_arg_maybe_quoted): New function.
8         (extract_info_print_args): New function.
9         (info_print_args_help): New function.
10         (report_unrecognized_option_error): New function.
11
12 2018-10-26  Tom Tromey  <tom@tromey.com>
13
14         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
15         (compute_compunit_symtab_includes): Update.
16         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
17         (compunit_symtab_ptr): Likewise.
18
19 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
20
21         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
22         default_print_auxv_entry for specific tag values.
23
24 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
25
26         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
27
28 2018-10-26  Jim Wilson  <jimw@sifive.com>
29
30         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
31         (riscv_linux_sigframe_init): Declare.
32         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
33         (riscv_linux_sigframe): New.
34         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
35         (riscv_linux_sigframe_init): Define.
36         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
37
38         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
39         (riscv_isa_flen): Likewise.  Drop static.
40         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
41         (riscv_isa_flen): Likewise.  Declare.
42
43 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
44             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
45
46         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
47         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
48         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
49         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
50         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
51         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
52         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
53         Define.
54         (struct ppc_linux_features) <htm>: New field.
55         (ppc_linux_no_features): Add initializer for htm field.
56         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
57         new tdescs.
58         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
59         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
60         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
61         Define if not already defined.
62         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
63         and rs6000/powerpc-isa207-htm-vsx64l.
64         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
65         rs6000/powerpc-isa207-htm-vsx64l.xml.
66         * features/rs6000/power-htm-spr.xml: New file.
67         * features/rs6000/power-htm-core.xml: New file.
68         * features/rs6000/power64-htm-core.xml: New file.
69         * features/rs6000/power-htm-fpu.xml: New file.
70         * features/rs6000/power-htm-altivec.xml: New file.
71         * features/rs6000/power-htm-vsx.xml: New file.
72         * features/rs6000/power-htm-ppr.xml: New file.
73         * features/rs6000/power-htm-dscr.xml: New file.
74         * features/rs6000/power-htm-tar.xml: New file.
75         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
76         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
77         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
78         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
79         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
80         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
81         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
82         fetch_regset with HTM regsets.
83         (store_register, store_ppc_registers): Call store_regset with HTM
84         regsets.
85         (ppc_linux_nat_target::read_description): Set htm field in the
86         features struct if needed.
87         * ppc-linux-tdep.c: Include
88         features/rs6000/powerpc-isa207-htm-vsx32l.c and
89         features/rs6000/powerpc-isa207-htm-vsx64l.c.
90         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
91         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
92         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
93         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
94         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
95         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
96         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
97         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
98         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
99         (ppc32_linux_ctarregset): New globals.
100         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
101         (ppc_linux_collect_core_cpgrregset): New function.
102         (ppc_linux_iterate_over_regset_sections): Call back with the htm
103         regsets.
104         (ppc_linux_core_read_description): Check if the tm spr section is
105         present and set htm in the features struct.
106         (_initialize_ppc_linux_tdep): Call
107         initialize_tdesc_powerpc_isa207_htm_vsx32l and
108         initialize_tdesc_powerpc_isa207_htm_vsx64l.
109         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
110         Declare.
111         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
112         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
113         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
114         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
115         New fields.
116         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
117         Likewise.
118         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
119         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
120         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
121         New enum fields.
122         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
123         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
124         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
125         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
126         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
127         <PPC_CTAR_REGNUM>: Likewise.
128         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
129         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
130         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
131         (IS_CEFP_PSEUDOREG): Define.
132         (rs6000_register_name): Hide the upper halves of checkpointed VSX
133         registers.  Return names for the checkpointed DFP, VSX, and EFP
134         pseudo registers.
135         (rs6000_pseudo_register_type): Remove initial assert and raise an
136         internal error in the else clause instead.  Return types for the
137         checkpointed DFP, VSX, and EFP pseudo registers.
138         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
139         checkpointed DFP pseudo registers.
140         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
141         checkpointed VSX pseudo registers.
142         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
143         from efpr_pseudo_register_read and
144         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
145         registers.
146         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
147         Handle checkpointed DFP, VSX, and EFP registers.
148         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
149         (efp_ax_pseudo_register_collect): New functions.
150         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
151         register logic to new functions.  Handle checkpointed DFP, VSX,
152         and EFP pseudo registers.
153         (rs6000_gdbarch_init): Look for and validate the htm features.
154         Include checkpointed DFP, VSX and EFP pseudo-registers.
155         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
156         HTM registers.
157
158 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
159
160         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
161         without altivec or fpu.
162
163 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
164             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
165
166         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
167         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
168         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
169         Define if not already defined.
170         * features/rs6000/power-ebb.xml: New file.
171         * features/rs6000/power-linux-pmu.xml: New file.
172         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
173         features.
174         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
175         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
176         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
177         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
178         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
179         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
180         fetch_regset with ebb and pmu regsets.
181         (store_register, store_ppc_registers): Call store_regset with ebb
182         and pmu regsets.
183         (ppc_linux_nat_target::read_description): Set isa207 field in the
184         features struct if ebb and pmu are avaiable.
185         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
186         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
187         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
188         and pmu regsets.
189         (ppc_linux_core_read_description): Check if the pmu section is
190         present and set isa207 in the features struct.
191         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
192         (ppc32_linux_pmuregset): Declare.
193         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
194         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
195         <ppc_sier_regnum>: New field.
196         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
197         New enum values.
198         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
199         values.
200         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
201         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
202         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
203         ebb and pmu features.
204
205 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
206             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
207
208         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
209         (tdesc_powerpc_isa207_vsx64l): Declare.
210         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
211         (struct ppc_linux_features) <isa207>: New field.
212         (ppc_linux_no_features): Add initializer for isa207 field.
213         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
214         new tdescs.
215         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
216         (NT_PPC_TAR): Define if not already defined.
217         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
218         rs6000/powerpc-isa207-vsx64l.
219         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
220         rs6000/powerpc-isa207-vsx64l.xml.
221         * features/rs6000/power-tar.xml: New file.
222         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
223         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
224         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
225         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
226         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
227         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
228         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
229         fetch_regset with the TAR regset.
230         (store_register, store_ppc_registers): Call store_regset with the
231         TAR regset.
232         (ppc_linux_nat_target::read_description): Set isa207 field in the
233         features struct if needed.
234         * ppc-linux-tdep.c: Include
235         features/rs6000/powerpc-isa207-vsx32l.c and
236         features/rs6000/powerpc-isa207-vsx64l.c.
237         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
238         (ppc_linux_iterate_over_regset_sections): Call back with the tar
239         regset.
240         (ppc_linux_core_read_description): Check if the tar section is
241         present and set isa207 in the features struct.
242         (_initialize_ppc_linux_tdep): Call
243         initialize_tdesc_powerpc_isa207_vsx32l and
244         initialize_tdesc_powerpc_isa207_vsx64l.
245         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
246         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
247         (enum) <PPC_TAR_REGNUM>: New enum value.
248         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
249         feature.
250         (ppc_process_record_op31): Record changes to TAR.
251
252 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
253             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
254
255         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
256         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
257         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
258         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
259         (struct ppc_linux_features) <ppr_dscr>: New field.
260         (ppc_linux_no_features): Add initializer for ppr_dscr field.
261         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
262         new tdescs.
263         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
264         Define if not already defined.
265         * features/Makefile (WHICH): Add
266         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
267         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
268         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
269         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
270         * features/rs6000/power-dscr.xml: New file.
271         * features/rs6000/power-ppr.xml: New file.
272         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
273         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
274         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
275         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
276         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
277         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
278         * ppc-linux-nat.c: Include <sys/uio.h>.
279         (fetch_regset, store_regset, check_regset): New functions.
280         (fetch_register, fetch_ppc_registers): Call fetch_regset with
281         DSCR and PPR regsets.
282         (store_register, store_ppc_registers): Call store_regset with
283         DSCR and PPR regsets.
284         (ppc_linux_get_hwcap2): New function.
285         (ppc_linux_nat_target::read_description): Call
286         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
287         features struct if needed.
288         * ppc-linux-tdep.c: Include
289         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
290         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
291         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
292         (ppc32_linux_dscrregset): New globals.
293         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
294         and dscr regsets.
295         (ppc_linux_core_read_description): Check if the ppr and dscr
296         sections are present and set ppr_dscr in the features struct.
297         (_initialize_ppc_linux_tdep): Call
298         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
299         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
300         * ppc-linux-tdep.h (ppc32_linux_pprregset)
301         (ppc32_linux_dscrregset): Declare.
302         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
303         <ppc_dscr_regnum>: New field.
304         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
305         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
306         and dscr features.
307         (ppc_process_record_op31): Record changes to PPR and DSCR.
308
309 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
310
311         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
312         second initializer line for the have_* variables.  Initialize
313         have_fpu to 0 instead of 1.
314
315 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
316
317         * arch/ppc-linux-common.c (ppc_linux_match_description):
318         Parenthesize tdesc assignements and indent them properly.
319
320 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
321
322         * ppc-linux-nat.c (fetch_register): Change if statement to else
323         if.
324         (store_register): Likewise.
325
326 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
327
328         * rs6000-tdep.c: Remove reggroups.h include.
329         (rs6000_pseudo_register_reggroup_p): Remove.
330         (rs6000_gdbarch_init): Remove call to
331         set_tdesc_pseudo_register_reggroup_p.
332
333 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
334
335         * reggroups.c (default_register_reggroup_p): Return true for
336         decfloat registers and float_reggroup.
337
338 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
339
340         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
341         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
342         ppc_linux_collect_vrregset by regcache_collect_regset.
343
344 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
345
346         * linux-tdep.c (linux_collect_regset_section_cb): Use
347         std::vector<gdb_byte> instead of char * and malloc for buf.
348         Remove xfree.
349
350 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
351
352         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
353         symtab_start instead of always using language_unknown.
354
355 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
356
357         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
358         READ_P parameter, catch and ignore register access errors from
359         either the old or new MISA location.
360         (riscv_has_feature): Update call to riscv_read_misa_reg.
361
362 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
363
364         * python/py-function.c (convert_values_to_python): Return
365         gdbpy_ref<>.  Add header comment.
366         (fnpy_call): Adjust.
367
368 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
369
370         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
371         (cmdpy_completer_handle_brkchars): Adjust.
372         (cmdpy_completer): Adjust.
373
374 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
375
376         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
377         Pass correct regnum to raw_supply_zeroed.
378
379 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
380
381         * regcache.c (cooked_read_test): Add CSKY to the list of
382         architectures with a save_reggroup
383
384 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
385
386         PR gdb/23368
387         * infrun.c (follow_exec): In the follow_exec_mode_new case,
388         transfer terminal state from old new new inferior.
389         * terminal.h (swap_terminal_info): New function.
390         * inflow.c (swap_terminal_info): New function.
391
392 2018-10-23  Tom Tromey  <tom@tromey.com>
393
394         * record-btrace.c (get_thread_current_frame_id): Rename from
395         get_thread_current_frame.  Return a frame_id.
396         (record_btrace_start_replaying): Update.
397
398 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
399
400         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
401         for CSRs.
402
403 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
404
405         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
406         have_nonsteppable_watchpoint attribute to 1.
407
408 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
409
410         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
411         register names.
412         (struct register_alias): Rename to...
413         (struct riscv_register_alias): ...this, and update comment.
414         (riscv_register_aliases): Update type, and alias names.  Remove
415         CSR names from this list.
416         (riscv_register_name): Use riscv_gdb_reg_names for int and float
417         register names.  Add an extra assertion.
418         (riscv_is_regnum_a_named_csr): New function.
419         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
420
421 2018-10-22  Jim Wilson  <jimw@sifive.com>
422
423         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
424         FP reg smaller than FP reg size, and fill with -1 instead of 0.
425
426         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
427         (riscv_register_type): Use them.
428         (riscv_print_one_register_info): Handle union of floats same as float.
429         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
430         riscv_fpreg_q_type fields.
431
432 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
433
434         * gdbarch.sh (gdbarch_num_cooked_regs): New.
435         * gdbarch.h: Re-generate.
436         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
437         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
438         * eval.c (evaluate_subexp_standard): Likewise.
439         * findvar.c (value_of_register): Likewise.
440         (value_of_register_lazy): Likewise.
441         (address_from_register): Likewise.
442         * frame.c (get_frame_register_bytes): Likewise.
443         * gdbarch-selftests.c (register_to_value_test): Likewise.
444         * h8300-tdep.c (h8300_register_type): Likewise.
445         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
446         (i386_svr4_reg_to_regnum): Likewise.
447         * infcmd.c (default_print_registers_info): Likewise.
448         (registers_info): Likewise.
449         (print_vector_info): Likewise.
450         (default_print_float_info): Likewise.
451         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
452         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
453         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
454         (mi_cmd_data_list_changed_registers): Likewise.
455         (mi_cmd_data_list_register_values): Likewise.
456         (mi_cmd_data_write_register_values): Likewise.
457         (mi_cmd_trace_frame_collected): Likewise.
458         * mips-tdep.c (print_gp_register_row): Likewise.
459         (mips_print_registers_info): Likewise.
460         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
461         * regcache.c (init_regcache_descr): Likewise.
462         (register_size): Likewise.
463         (register_dump::dump): Likewise.
464         (cooked_read_test): Likewise.
465         (cooked_write_test): Likewise.
466         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
467         (rs6000_gdbarch_init): Likewise.
468         * stabsread.c (stab_reg_to_regnum): Likewise.
469         * stack.c (info_frame_command): Likewise.
470         * target-descriptions.c (tdesc_register_name): Likewise.
471         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
472         * tui/tui-regs.c (tui_show_register_group): Likewise.
473         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
474         (user_reg_map_regnum_to_name): Likewise.
475         (value_of_user_reg): Likewise.
476         (maintenance_print_user_registers): Likewise.
477         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
478         (xtensa_register_name): Likewise.
479         (xtensa_register_type): Likewise.
480         (xtensa_reg_to_regnum): Likewise.
481         (xtensa_pseudo_register_read): Likewise.
482         (xtensa_pseudo_register_write): Likewise.
483
484 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
485
486         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
487         correctly-sized buffer with raw_read.
488         (amd64_pseudo_register_write): Use correctly-sized buffer for
489         raw_read/raw_write.
490
491 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
492
493         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
494         in add_prefix_cmd of set print type.
495
496 2018-10-19  Tom Tromey  <tom@tromey.com>
497
498         PR tui/18388:
499         * NEWS: Mention tabset deprecation.
500         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
501         (update_tab_width): New function.
502         (tui_set_tab_width, tui_show_tab_width): New functions.
503         (tui_set_tab_width_command): Use update_tab_width.
504         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
505         Add new "set tui tab-width" command.
506         * tui/tui-source.c (tui_set_source_content): Update.
507         * tui/tui-disasm.c (tui_set_disassem_content): Update.
508         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
509         Don't declare.
510         (tui_tab_width): Declare.
511         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
512         (tui_set_default_tab_len): Remove.
513
514 2018-10-19  Tom Tromey  <tom@tromey.com>
515
516         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
517         (key_is_backspace, tui_getc): Don't declare.
518         * tui/tui-io.c (key_is_start_sequence): Now static.
519         (key_is_end_sequence, key_is_backspace): Remove.
520         (tui_getc): Now static.
521
522 2018-10-19  Tom Tromey  <tom@tromey.com>
523
524         * symfile.c (reread_symbols): Clear "static_links".
525
526 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
527
528         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
529         define.
530         (aarch64_linux_sigframe_init): Extra boundary checks.
531
532 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
533
534         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
535         the possibly non-existent tdesc type 'vec128', but the type of raw
536         register v16 instead.
537
538 2018-10-19  Gary Benson <gbenson@redhat.com>
539
540         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
541
542 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
543
544         PR cli/23785
545         * cli/cli-dump.c (restore_binary_file): Check if "file" is
546         NULL.
547
548 2018-10-17  Paul Koning  <paul_koning@dell.com>
549
550         * charset.c (convert_between_encodings): Fix unsigned overflow.
551
552 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
553
554         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
555         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
556         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
557         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
558         New functions.
559         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
560         and fbsd_info_proc_mappings_header.
561         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
562         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
563         New.
564
565 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
566
567         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
568         Solaris Maintainer.
569
570 2018-10-15  Tom Tromey  <tom@tromey.com>
571
572         * tui/tui.c (strcat_to_buf): Remove casts.
573         * tui/tui-winsource.c (tui_show_source_line)
574         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
575         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
576         * tui/tui-windata.c (tui_first_data_item_displayed)
577         (tui_delete_data_content_windows, tui_erase_data_content)
578         (tui_display_all_data, tui_display_data_from)
579         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
580         * tui/tui-win.c (tui_set_win_height)
581         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
582         casts.
583         * tui/tui-win.c (tui_resize_all): Remove casts.
584         (tui_scroll_backward_command, tui_set_focus)
585         (tui_set_tab_width_command): Likewise.
586         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
587         * tui/tui-regs.c (tui_show_register_group): Remove cast.
588         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
589         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
590         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
591         Remove casts.
592
593 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
594
595         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
596         AArch64/ARM maintainer.
597
598 2018-10-11  Gary Benson <gbenson@redhat.com>
599
600         * interps.h (interp::m_name): Make private and mutable.
601         * interps.c (interp::~interp): Free m_name.
602
603 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
604             Simon Marchi <simark@simark.ca>
605
606         * README (`configure' options): Add documentation for new
607         "--enable-unit-tests" option.
608         * acinclude.m4: Include "selftest.m4".
609         * configure: Regenerate.
610         * configure.ac: Use "GDB_AC_SELFTEST".
611         * maint.c (maintenance_selftest): Update message informing
612         that selftests have been disabled.
613         (maintenance_info_selftests): Likewise.
614         * selftest.m4: New file.
615
616 2018-10-10  Gary Benson <gbenson@redhat.com>
617
618         * remote.c (remote_target::remote_send_printf): Add
619         missing va_end found by Coverity.
620
621 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
622
623         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
624
625 2018-10-09  Tom Tromey  <tom@tromey.com>
626
627         * configure: Rebuild.
628         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
629         * NEWS: Update --enable-ubsan documentation.
630
631 2018-10-09  Gary Benson <gbenson@redhat.com>
632
633         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
634         found by Coverity.
635
636 2018-10-08  Tom Tromey  <tom@tromey.com>
637
638         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
639         variable.
640         (riscv_fbsd_init_abi): Likewise.
641
642 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
643         * valops.c (value_struct_elt_for_reference): Rename local variable
644         to work around the shadowing a previous local warning.
645
646 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
647
648         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
649         * NEWS: Mention new FreeBSD/riscv native configuration.
650         * configure.host: Add riscv*-*-freebsd*.
651         * configure.nat: Likewise.
652         * riscv-fbsd-nat.c: New file.
653
654 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
655
656         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
657         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
658         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
659         * NEWS: Mention new FreeBSD/riscv target.
660         * configure.tgt: Add riscv*-*-freebsd*.
661         * riscv-fbsd-tdep.c: New file.
662         * riscv-fbsd-tdep.h: New file.
663
664 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
665
666         * regcache.h (struct regcache_map_entry): Note that this type can
667         be used with traditional frame caches.
668         * trad-frame.c (trad_frame_set_reg_regmap): New.
669         * trad-frame.h (trad_frame_set_reg_regmap): New.
670
671 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
672
673         PR c++/16841
674         * valops.c (get_virtual_base_offset): New function.
675         (value_struct_elt_for_reference): Use it to get virtual base offset
676         and add it in calculating class member address.
677
678 2018-10-08   John Darrington <john@darrington.wattle.id.au>
679
680     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
681       (check_producer): Check if the producer is codewarrior.
682       (producer_is_codewarrior): New function.
683       (lnp_state_machine::record_line): Ignore is_stmt flag for records
684        produced by codewarrior.
685       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
686
687 2018-10-06  Tom Tromey  <tom@tromey.com>
688
689         PR python/19399:
690         * python/py-inferior.c: Add "architecture" entry.
691         (infpy_architecture): New function.
692
693 2018-10-06  Tom Tromey  <tom@tromey.com>
694
695         PR python/21765:
696         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
697         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
698         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
699         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
700
701 2018-10-06  Tom Tromey  <tom@tromey.com>
702
703         PR build/17077:
704         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
705         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
706         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
707         #include.
708
709 2018-10-06  Tom Tromey  <tom@tromey.com>
710
711         * python/py-breakpoint.c (bppy_get_location): Handle a
712         bp_breakpoint without a location.
713
714 2018-10-06  Tom Tromey  <tom@tromey.com>
715
716         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
717         (_RegEx): Reformat help text.
718         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
719         (AnyCallerIs, AnyCallerMatches): Reformat help text.
720         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
721         text.
722         * python/lib/gdb/command/xmethods.py (InfoXMethod)
723         (EnableXMethod, DisableXMethod): Remove help indentation.
724         Capitalize meta-syntactic variables.
725         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
726         (EnableUnwinder, DisableUnwinder): Remove help indentation.
727         Capitalize meta-syntactic variables.
728         * python/lib/gdb/command/explore.py (ExploreCommand)
729         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
730         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
731         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
732         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
733         Remove help indentation.
734         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
735         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
736         (DisableFrameFilter, SetFrameFilterPriority)
737         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
738
739 2018-10-06  Tom Tromey  <tom@tromey.com>
740
741         PR tui/28819:
742         * tui/tui-io.c (gdb_wgetch): New function.
743         (tui_mld_getc, tui_getc): Use it.
744
745 2018-10-05  Tom Tromey  <tom@tromey.com>
746
747         * sol-thread.c (sol_thread_target::wait): Rename inner
748         "save_ptid".
749
750 2018-10-04  Tom Tromey  <tom@tromey.com>
751
752         * configure: Rebuild.
753         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
754
755 2018-10-04  Tom Tromey  <tom@tromey.com>
756
757         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
758         declaration of "block".
759
760 2018-10-04  Tom Tromey  <tom@tromey.com>
761
762         * common/filestuff.c (fdwalk): Remove inner declaration of
763         "result".
764
765 2018-10-04  Tom Tromey  <tom@tromey.com>
766
767         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
768         "structs_addr" and hoist declaration.
769
770 2018-10-04  Tom Tromey  <tom@tromey.com>
771
772         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
773         variable "size".
774
775 2018-10-04  Tom Tromey  <tom@tromey.com>
776
777         * mdebugread.c (parse_partial_symbols): Use std::string.
778
779 2018-10-04  Tom Tromey  <tom@tromey.com>
780
781         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
782         * p-valprint.c (pascal_val_print): Split inner "i" variable.
783         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
784         header.
785         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
786         more inner scope.
787         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
788         * varobj.c (varobj_update): Rename inner "newobj",
789         "type_changed".
790         * valprint.c (generic_emit_char): Rename inner "buf".
791         * valops.c (find_overload_match): Rename inner "temp".
792         (value_struct_elt_for_reference): Declare "v" in more inner
793         scope.
794         * v850-tdep.c (v850_push_dummy_call): Rename "len".
795         * unittests/array-view-selftests.c (run_tests): Rename inner
796         "vec".
797         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
798         header.
799         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
800         "tsv" in more inner scope.
801         (print_one_static_tracepoint_marker): Rename inner
802         "tuple_emitter".
803         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
804         (tic6x_push_dummy_call): Don't redeclare "addr".
805         * target-float.c: Declare "dto" lower.
806         * symtab.c (lookup_local_symbol): Rename inner "sym".
807         (find_pc_sect_line): Rename inner "pc".
808         * stack.c (print_frame): Don't redeclare "gdbarch".
809         (return_command): Rename inner "gdbarch".
810         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
811         "sp".
812         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
813         header.
814         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
815         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
816         scope.
817         * remote.c (remote_target::update_thread_list): Don't redeclare
818         "tp".
819         (remote_target::process_initial_stop_replies): Rename inner
820         "thread".
821         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
822         (remote_target::wait_as): Don't redeclare "stop_reply".
823         (remote_target::get_thread_local_address): Rename inner
824         "result".
825         (remote_target::get_tib_address): Likewise.
826
827         * regcache.c (cooked_read_test): Rename "regnum".
828         * record-btrace.c (cmd_record_btrace_start): Rename inner
829         "exception".
830         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
831         loop header.
832         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
833         header.
834         (ppu2spu_sniffer): Rename inner "buf".
835         * parse.c (operator_check_standard): Rename inner "type",
836         "objfile".
837         * p-valprint.c (pascal_val_print): Introduce new scope for
838         "low_bound", "high_bound".
839         * p-exp.y (yylex): Declare "i" in loop header.
840         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
841         Lower declaration of "s".
842         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
843         header.
844         (nios2_push_dummy_call): Rename "len".
845         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
846         "buf".
847         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
848         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
849         (linux_xfer_osdata_modules): Likewise.
850         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
851         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
852         (mips_o64_push_dummy_call): Likewise.
853         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
854         "op".
855         * mi/mi-main.c (list_available_thread_groups): Rename inner
856         "tuple_emitter".
857         (mi_cmd_data_read_memory): Rename inner "opts".
858         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
859         "tuple_emitter".
860         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
861         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
862         more inner scope.
863         (parse_partial_symbols): Rename inner "pst", "p", "name"
864         * main.c (captured_main_1): Rename inner "i"s.
865         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
866         "oso2".
867         * linux-tdep.c (linux_info_proc): Rename inner "filename".
868         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
869         * infrun.c (handle_no_resumed): Don't redeclare "thread".
870         (handle_signal_stop): Rename inner "gdbarch".
871         (handle_command): Declare "signum" in loop header.
872         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
873         "status".
874         (examine_prologue): Rename inner "sol" and "sof".
875         (ia64_extract_return_value): Rename inner "val".  Declare another
876         "val" in a more inner scope.
877         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
878         inner scope.
879         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
880         "except".
881         * findvar.c (default_read_var_value): Don't redeclare "addr".
882         * f-exp.y (yylex): Declare "i" in loop header.
883         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
884         Rename inner "type", "expect_type".
885         (evaluate_subexp_for_sizeof): Rename inner "pc".
886         * elfread.c (elf_symfile_read): Rename inner "abfd".
887         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
888         "bytes_read".
889         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
890         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
891         (dwarf_decode_line_header): Rename inner "lh".
892         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
893         "offset".  Declare "i" in loop header.
894         (disassemble_dwarf_expression): Rename inner "addr_size".
895         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
896         inner "result".
897         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
898         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
899         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
900         "inner_list_emitter".
901         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
902         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
903         declaration in a block.
904         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
905         * cp-valprint.c (cp_print_value_fields): Don't redeclare
906         "obstack_final_size".
907         * cp-support.c (inspect_type): Declare "i" in loop header.
908         * compile/compile.c (compile_instance::insert_symbol_error):
909         Rename inner "e".
910         * common/agent.c (agent_run_command): Remove inner "ret"
911         declaration.
912         * coffread.c (coff_symfile_read): Rename inner "name".
913         (coff_symfile_read): Rename inner "abfd".
914         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
915         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
916         "high".
917         * c-exp.y (lex_one_token): Move "len" declaration lower.
918         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
919         "gdbarch".
920         (create_exception_master_breakpoint): Likewise.  Don't redeclare
921         "b".
922         (watch_command_1): Declare "mark" later.
923         (clear_command): Don't shadow "a" or "b".
924         (delete_command): Rename inner "b".
925         (delete_trace_command): Likewise.
926         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
927         "op".
928         (arm_gdbarch_init): Remove inner "e_flags".
929         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
930         "offset" in inner blocks.
931
932 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
933
934         * dwarf-index-write.c (file_write): Don't write if the vector is
935         empty.
936
937 2018-10-05  Tom de Vries  <tdevries@suse.de>
938
939         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
940         PyArg_ParseTuple call.
941
942 2018-10-05  Tom de Vries  <tdevries@suse.de>
943
944         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
945         PyArg_ParseTuple call.
946
947 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
948
949         * psymtab.c (recursively_search_psymtabs): Reformat parameters
950         to avoid exceeding 80 characters per line limit.
951
952 2018-10-04  Tom Tromey  <tom@tromey.com>
953
954         * symfile.c (syms_from_objfile_1, finish_new_objfile)
955         (reread_symbols): Update.
956         * complaints.h (clear_complaints): Remove argument.
957         * complaints.c (enum complaint_series): Remove.
958         (series): Remove global.
959         (complaint_internal): Update.
960         (clear_complaints): Remove argument.
961
962 2018-10-04  Tom Tromey  <tom@tromey.com>
963
964         * symfile.c (symbol_file_add_with_addrs): Do not print "no
965         debugging symbols" message if there is a separate debug objfile.
966
967 2018-10-04  Tom Tromey  <tom@tromey.com>
968
969         PR cli/19551:
970         * symfile.c (symbol_file_add_with_addrs): Update output.
971         * psymtab.c (require_partial_symbols): Update output.
972
973 2018-10-04  Tom Tromey  <tom@tromey.com>
974
975         PR cli/22234:
976         * complaints.c: Emit \n.
977
978 2018-10-04  Tom Tromey  <tom@tromey.com>
979
980         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
981         (separate_debug_file_exists, find_separate_debug_file)
982         (add_symbol_file_command, reread_symbols, allocate_symtab)
983         (allocate_compunit_symtab): Use filtered printing, not
984         unfiltered.
985         * psymtab.c (require_partial_symbols, dump_psymtab)
986         (allocate_psymtab): Use filtered printing, not unfiltered.
987
988 2018-10-04  Tom Tromey  <tom@tromey.com>
989
990         * complaints.c (complaint_internal): Correctly check complaint
991         count.
992
993 2018-10-04  Tom Tromey  <tom@tromey.com>
994
995         * complaints.h (struct complaints): Remove declaration.
996         * complaints.c (clear_complaints): Remove an unused variable.
997
998 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
999
1000         * MAINTAINERS (Write After Approval): Add self.
1001
1002 2018-10-03  Tom Tromey  <tom@tromey.com>
1003
1004         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1005         "buffer_contents".
1006         * coffread.c (coff_symtab_read): Initialize "newobj".
1007
1008 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1009
1010         * dwarf2read.c (read_func_scope): Remove struct keyword in
1011         range-based for.
1012
1013 2018-10-03  Tom Tromey  <tom@tromey.com>
1014
1015         * README: Mention --enable-ubsan.
1016         * NEWS: Mention --enable-ubsan.
1017         * acinclude.m4: Include sanitize.m4.
1018         * configure: Rebuild.
1019         * configure.ac: Call AM_GDB_UBSAN.
1020         * sanitize.m4: New file.
1021
1022 2018-10-03  Tom Tromey  <tom@tromey.com>
1023
1024         * expression.h (enum exp_opcode): Use uint8_t as base type.
1025         * expprint.c (op_name): Handle invalid opcodes.
1026
1027 2018-10-03  Tom Tromey  <tom@tromey.com>
1028
1029         * parse.c (prefixify_expression): Add assert.
1030         (parse_exp_in_context_1): Throw exception if the expression is
1031         empty.
1032
1033 2018-10-03  Tom Tromey  <tom@tromey.com>
1034
1035         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1036
1037 2018-10-03  Tom Tromey  <tom@tromey.com>
1038
1039         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1040
1041 2018-10-03  Tom Tromey  <tom@tromey.com>
1042
1043         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1044         unsigned.
1045
1046 2018-10-03  Tom Tromey  <tom@tromey.com>
1047
1048         * findvar.c (extract_integer): Do work in an unsigned type.
1049
1050 2018-10-03  Tom Tromey  <tom@tromey.com>
1051
1052         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1053         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1054         base type.
1055         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1056         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1057         type.
1058         * c-lang.h (enum c_string_type_values): Use unsigned as base
1059         type.
1060         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1061
1062 2018-10-03  Tom Tromey  <tom@tromey.com>
1063
1064         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1065         <~dwarf2_frame_state_reg_info>: Update.
1066         <dwarf2_frame_state_reg_info>: Update.
1067         <alloc_regs>: Add assertion.  Update.
1068         <reg>: Now a std::vector.
1069         <num_regs>: Remove.
1070         <swap>: Update.
1071         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1072         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1073
1074 2018-10-03  Tom Tromey  <tom@tromey.com>
1075
1076         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1077
1078 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1079
1080         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1081
1082 2018-10-02  Tom Tromey  <tom@tromey.com>
1083
1084         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1085
1086 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1087
1088         * NEWS: Mention changed commands.
1089         * ser-uds.c: New file.
1090         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1091         * configure: Regenerate.
1092         * Makefile.in: Add new file.
1093         * serial.c (serial_open): Check if filename is a socket
1094           and lookup the appropriate interface accordingly.
1095
1096 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1097
1098         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1099         define.
1100         (AARCH64_EXTRA_MAGIC): Likewise.
1101         (AARCH64_FPSIMD_MAGIC): Likewise.
1102         (AARCH64_SVE_MAGIC): Likewise.
1103         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1104         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1105         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1106         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1107         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1108         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1109         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1110         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1111         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1112         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1113         (read_aarch64_ctx): Add function.
1114         (aarch64_linux_sigframe_init): Detect FP registers.
1115
1116 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1117
1118         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1119         (AARCH64_D0_REGNUM): Likewise.
1120         (AARCH64_S0_REGNUM): Likewise.
1121         (AARCH64_H0_REGNUM): Likewise.
1122         (AARCH64_B0_REGNUM): Likewise.
1123         (AARCH64_SVE_V0_REGNUM): Likewise.
1124         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1125         (AARCH64_D0_REGNUM): Likewise.
1126         (AARCH64_S0_REGNUM): Likewise.
1127         (AARCH64_H0_REGNUM): Likewise.
1128         (AARCH64_B0_REGNUM): Likewise.
1129         (AARCH64_SVE_V0_REGNUM): Likewise.
1130
1131 2018-10-01  Gary Benson <gbenson@redhat.com>
1132
1133         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1134         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1135         prfpregset_t instead of gdb_prfpregset_t.
1136         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1137         * configure, config.in: Rebuild.
1138
1139 2018-10-01  Gary Benson <gbenson@redhat.com>
1140
1141         * common/gdb_proc_service.h: New file, factored out from...
1142         * gdb_proc_service.h: Moved common code to the above file.
1143         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1144
1145 2018-10-01  Gary Benson <gbenson@redhat.com>
1146
1147         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1148         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1149
1150 2018-10-01  Gary Benson <gbenson@redhat.com>
1151
1152         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1153         (AC_CHECK_HEADERS): Check for linux/elf.h.
1154         * configure, config.in: Rebuild.
1155         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1156         doesn't define elf_fpregset_t.
1157
1158 2018-10-01  Gary Benson <gbenson@redhat.com>
1159
1160         * gdb_proc_service.h: Whitespace change.
1161
1162 2018-10-01  Tom Tromey  <tom@tromey.com>
1163
1164         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1165         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1166         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1167
1168 2018-10-01  Tom Tromey  <tom@tromey.com>
1169
1170         * README: Minor change.
1171
1172 2018-09-30  Pedro Alves  <palves@redhat.com>
1173
1174         * darwin-nat-info.c (darwin_debug_regions_recurse)
1175         (info_mach_exceptions_command): Remove unused local variables.
1176         * darwin-nat.c (darwin_decode_notify_message)
1177         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1178         (darwin_stop_inferior, darwin_setup_exceptions)
1179         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1180         (darwin_nat_target::attach, darwin_nat_target::detach)
1181         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1182         local variables.
1183         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1184         variables.
1185
1186 2018-09-29  Tom Tromey  <tom@tromey.com>
1187
1188         * README: Remove some leftover text.
1189
1190 2018-09-29  Tom Tromey  <tom@tromey.com>
1191
1192         * PROBLEMS: Rewrite.
1193         * README: Update.
1194
1195 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1196
1197         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1198         case with explicit breakpoint kind.
1199         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1200         'additional_info' and related logic.
1201         (riscv_debug_breakpoints): New variable.
1202         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1203         instruction to determine the breakpoint kind.
1204         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1205         flag.  Update description of 'set/show riscv
1206         use-compressed-breakpoints' flag.
1207
1208 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1209
1210         (NEWS): Mention changes to frame related commands.
1211         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1212         (add_prefix_cmd_suppress_notification): New function.
1213         (add_com_suppress_notification): Call
1214         add_cmd_suppress_notification.
1215         * command.h (add_cmd_suppress_notification): Declare.
1216         (add_prefix_cmd_suppress_notification): Declare.
1217         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1218         (parse_frame_specification): Moved from stack.c, with
1219         simplification to handle a single argument.
1220         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1221         switch to the selected frame.  Add a header comment.
1222         * stack.c: Remove 'safe-ctype.h' include.
1223         (find_frame_for_function): Add declaration.
1224         (find_frame_for_address): New function.
1225         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1226         (frame_selection_by_function_completer): New function.
1227         (info_frame_command): Rename to...
1228         (info_frame_command_core): ...this, and update parameter types.
1229         (select_frame_command): Rename to...
1230         (select_frame_command_core): ...this, and update parameter types.
1231         (frame_command): Rename to...
1232         (frame_command_core): ...this, and update parameter types.
1233         (class frame_command_helper): New class to wrap implementations of
1234         frame related sub-commands.
1235         (frame_apply_cmd_list): New static global.
1236         (frame_cmd_list): Make static.
1237         (select_frame_cmd_list): New global for sub-commands.
1238         (info_frame_cmd_list): New global for sub-commands.
1239         (_initialize_stack): Register sub-commands for 'frame',
1240         'select-frame', and 'info frame'.  Update 'frame apply' commands
1241         to use frame_apply_cmd_list.  Move function local static
1242         frame_apply_list to file static frame_apply_cmd_list for
1243         consistency.
1244         * stack.h (select_frame_command): Delete declarationn.
1245         (select_frame_for_mi): Declare new function.
1246
1247 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1248
1249         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1250         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1251         and NOP.
1252
1253 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1254
1255         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1256
1257 2018-09-26  Tom Tromey  <tom@tromey.com>
1258
1259         * valops.c (auto_abandon): Remove dead code.
1260
1261 2018-09-26  Tom Tromey  <tom@tromey.com>
1262
1263         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1264
1265 2018-09-24  Tom Tromey  <tom@tromey.com>
1266
1267         * common/pathstuff.c (get_standard_cache_dir): Make
1268         "xdg_cache_home" and "home" const.
1269         * top.c (init_history): Make "tmpenv" const.
1270         * main.c (get_init_files): Make "homedir" const.
1271
1272 2018-09-23  Tom Tromey  <tom@tromey.com>
1273
1274         PR python/18852:
1275         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1276
1277 2018-09-23  Tom Tromey  <tom@tromey.com>
1278
1279         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1280         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1281         * python/python-internal.h (gdbpy_handle_exception): Declare.
1282         * python/py-utils.c (gdbpy_handle_exception): New function.
1283
1284 2018-09-23  Tom Tromey  <tom@tromey.com>
1285
1286         PR python/17284:
1287         * python/py-type.c (typy_template_argument): Check for negative
1288         argument number.
1289
1290 2018-09-23  Tom Tromey  <tom@tromey.com>
1291
1292         PR python/14062:
1293         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1294
1295 2018-09-23  Tom Tromey  <tom@tromey.com>
1296
1297         PR python/18170:
1298         * python/py-value.c (valpy_int): Allow conversion from pointer
1299         type.
1300
1301 2018-09-23  Tom Tromey  <tom@tromey.com>
1302
1303         PR python/20126:
1304         * python/py-value.c (valpy_int): Respect type sign.
1305
1306 2018-09-23  Tom Tromey  <tom@tromey.com>
1307
1308         PR python/18352;
1309         * python/py-value.c (valpy_float): Allow conversions from int or
1310         char.
1311         (valpy_int, valpy_long): Allow conversions from float.
1312
1313 2018-09-23  Tom Tromey  <tom@tromey.com>
1314
1315         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1316         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1317
1318 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1319
1320         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1321         __sighndlr.
1322         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1323
1324 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1325
1326         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1327         target_terminal::ours().
1328
1329 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1330
1331         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1332         of vl to ULONGEST.
1333
1334 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1335
1336         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1337         redundant condition.
1338
1339 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1340
1341         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1342
1343         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1344         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1345         * sol-thread.c (ps_pdmodel): Don't guard definition.
1346
1347         * procfs.c: Fix formatting.
1348
1349         * procfs.c (sysset_t_alloc): Remove.
1350         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1351         (procfs_debug_inferior): Likewise.
1352         (procfs_set_exec_trap): Likewise.
1353         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1354         (proc_set_traced_sysexit): Likewise.
1355
1356         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1357         (dead_procinfo): Likewise.
1358         (proc_warn): Likewise.
1359         (proc_error): Likewise.
1360         (proc_get_LDT_entry): Likewise.
1361         (do_attach): Likewise.
1362         (procfs_target::pid_to_str): Likewise.
1363         (iterate_over_mappings): Likewise.
1364
1365         * procfs.c (create_procinfo): Fix ARI warning.
1366         (proc_get_status): Likewise.
1367         (proc_stop_process): Likewise.
1368         (proc_run_process): Likewise.
1369         (proc_kill): Likewise.
1370         (proc_get_LDT_entry): Likewise.
1371         (procfs_find_LDT_entry): Likewise.
1372         (proc_update_threads): Likewise.
1373         (proc_iterate_over_threads): Likewise.
1374         (do_attach): Likewise.
1375         (procfs_xfer_memory): Likewise.
1376         (invalidate_cache): Likewise.
1377         (procfs_target::resume): Likewise.
1378         (procfs_init_inferior): Likewise.
1379         (procfs_set_exec_trap): Likewise.
1380         (procfs_target::thread_alive): Likewise.
1381         (procfs_target::pid_to_exec_file): Likewise.
1382         (iterate_over_mappings): Likewise.
1383         (procfs_target::make_corefile_notes): Likewise.
1384         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1385
1386         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1387         (procfs_find_LDT_entry): Likewise.
1388         * sol-thread.c (ps_lgetLDT): Likewise.
1389
1390 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1391
1392         PR tdep/17903
1393         * procfs.c (procfs_target): Declare pid_to_exec_file.
1394         (procfs_target::pid_to_exec_file): New.
1395
1396 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1397
1398         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1399         renaming.
1400         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1401         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1402
1403 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1404
1405         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1406         (supply_fpregset, fill_fpregset): Move ...
1407         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1408         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1409         Remove references to ioctl-based procfs.
1410         Include <sys/reg.h>.
1411         Remove PR_MODEL_NATIVE guards.
1412         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1413         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1414
1415 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1416
1417         PR gdb/20981:
1418         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1419         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1420         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1421
1422 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1423
1424         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1425         (fbsd_print_sockaddr_in6): Likewise.
1426
1427 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1428             Chris January  <chris.january@arm.com>
1429
1430         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1431         (evaluate_subexp_standard): Return a dummy type when
1432         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1433         OP_F77_UNDETERMINED_ARGLIST case.
1434         * expression.h (enum noside): Update comment.
1435
1436 2018-09-19  George Vasick <george.vasick@oracle.com>
1437
1438         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1439
1440 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1441             April Chin <april.chin@oracle.com>
1442             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1443
1444         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1445         uint_t lwpid_t.
1446         (create_procinfo): Print pids in /proc without leading zeros.
1447
1448 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1449
1450         * nios2-tdep.c (nios2_gcc_target_options): New.
1451         (nios2_gdb_arch_init): Install new hook.
1452
1453 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1454
1455         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1456         New file.
1457         * update-gnulib.sh: Apply patch.
1458         * configure: Re-generate.
1459
1460 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1461
1462         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1463         description.  Make "info proc" command descriptions more
1464         consistent.
1465
1466 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1467
1468         * NEWS: Mention 'info proc files' command.
1469
1470 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1471
1472         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1473         descriptors for IP_FILES and IP_ALL.
1474
1475 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1476
1477         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1478         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1479         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1480         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1481         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1482         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1483         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1484         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1485         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1486         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1487         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1488         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1489         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1490         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1491         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1492         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1493         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1494         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1495         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1496         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1497         (struct fbsd_sockaddr_un): New types.
1498         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1499         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1500         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1501         (fbsd_core_info_proc_files): New functions.
1502         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1503         IP_ALL.
1504         * fbsd-tdep.h (fbsd_info_proc_files_header)
1505         (fbsd_info_proc_files_entry): New.
1506
1507 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1508
1509         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1510         * infcmd.c (info_proc_cmd_files): New function.
1511         (_initialize_infcmd): Register 'info proc files' command.
1512
1513 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1514
1515         * gnulib/aclocal-m4-deps.mk: Re-generate.
1516         * gnulib/aclocal.m4: Re-generate.
1517         * gnulib/config.in: Re-generate.
1518         * gnulib/configure: Re-generate.
1519         * gnulib/import/Makefile.am: Re-generate.
1520         * gnulib/import/Makefile.in: Re-generate.
1521         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1522         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1523         * gnulib/import/arpa_inet.in.h: New file.
1524         * gnulib/import/inet_ntop.c: New file.
1525         * gnulib/import/m4/arpa_inet_h.m4: New file.
1526         * gnulib/import/m4/inet_ntop.m4: New file.
1527         * gnulib/import/m4/netinet_in_h.m4: New file.
1528         * gnulib/import/m4/socklen.m4: New file.
1529         * gnulib/import/m4/sockpfaf.m4: New file.
1530         * gnulib/import/m4/stdalign.m4: New file.
1531         * gnulib/import/m4/sys_uio_h.m4: New file.
1532         * gnulib/import/netinet_in.in.h: New file.
1533         * gnulib/import/stdalign.in.h: New file.
1534         * gnulib/import/sys_socket.c: New file.
1535         * gnulib/import/sys_socket.in.h: New file.
1536         * gnulib/import/sys_uio.in.h: New file.
1537         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1538         module.
1539
1540 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1541
1542         * gnulib/aclocal-m4-deps.mk: New file.
1543         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1544         deterministically.
1545
1546 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1547
1548         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1549         KVE_PATH.
1550
1551 2018-09-18  Tom Tromey  <tom@tromey.com>
1552
1553         * compile/compile-object-load.c (struct
1554         link_hash_table_cleanup_data): Add constructor and destructor.
1555         Use DISABLE_COPY_AND_ASSIGN.
1556         (~link_hash_table_cleanup_data): Rename from
1557         link_hash_table_free.  Now a destructor.
1558         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1559
1560 2018-09-18  Tom Tromey  <tom@tromey.com>
1561
1562         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1563         * compile/compile-object-load.c (struct munmap_list): Move to
1564         header file.
1565         (munmap_list::add): Rename from munmap_list_add; rewrite.
1566         (munmap_list::~munmap_list): Rename from munmap_list_free.
1567         (munmap_listp_free_cleanup): Remove.
1568         (compile_object_load): Update.
1569         * compile/compile-object-load.h (struct munmap_list): Move from
1570         compile-object-load.c.  Rewrite.
1571
1572 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1573
1574         * aarch64-tdep.c (pass_in_v): Use register size.
1575         (aarch64_extract_return_value): Likewise.
1576         (aarch64_store_return_value): Likewise.
1577
1578 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1579
1580         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1581         rlim_t.
1582
1583 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1584
1585         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1586         Fix short help line.
1587
1588 2018-09-17  Tom Tromey  <tom@tromey.com>
1589
1590         PR python/20445:
1591         * configure: Rebuild.
1592         * configure.ac: Conditionally use -DNDEBUG for Python.
1593
1594 2018-09-17  Tom Tromey  <tom@tromey.com>
1595
1596         * configure: Rebuild.
1597         * configure.ac: Use gmp as a library dependency when checking for
1598         mpfr.
1599
1600 2018-09-17  Pedro Alves  <palves@redhat.com>
1601
1602         * python/py-inferior.c (find_inferior_object): Delete.
1603
1604 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1605
1606         * compile/compile-cplus-types.c
1607         (compile_cplus_instance::enter_scope): Don't use new_scope after
1608         std::move.
1609
1610 2018-09-17  Tom Tromey  <tom@tromey.com>
1611
1612         * common/pathstuff.c (get_standard_cache_dir): Use
1613         ~/Library/Caches on macOS.
1614         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1615
1616 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1617
1618         PR python/23669
1619         * breakpoint.c (commands_cmd_element): New.
1620         (_initialize_breakpoint): Assign commands_cmd_element.
1621         * breakpoint.h (commands_cmd_element): New.
1622         * cli/cli-script.c (while_cmd_element, if_command,
1623         define_cmd_element): New.
1624         (command_name_equals): Remove.
1625         (process_next_line): Compare commands by pointer, not by name.
1626         (_initialize_cli_script): Assign the various cmd_list_element
1627         variables.
1628         * compile/compile.c (compile_cmd_element): New.
1629         (_initialize_compile): Assign compile_cmd_element.
1630         * compile/compile.h (compile_cmd_element): New.
1631         * guile/guile.c (guile_cmd_element): New.
1632         (install_gdb_commands): Assign guile_cmd_element.
1633         * guile/guile.h (guile_cmd_element): New.
1634         * python/python.c (python_cmd_element): New.
1635         (_initialize_python): Assign python_cmd_element.
1636         * python/python.h (python_cmd_element): New.
1637         * tracepoint.c (while_stepping_cmd_element): New.
1638         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1639         * tracepoint.h (while_stepping_cmd_element): New.
1640
1641 2018-09-17  Tom Tromey  <tom@tromey.com>
1642
1643         * infrun.c (save_infcall_suspend_state): Return
1644         infcall_suspend_state_up.
1645         (save_infcall_control_state): Return infcall_control_state_up.
1646         * inferior.h (save_infcall_suspend_state)
1647         (save_infcall_control_state): Declare later.  Return unique
1648         pointers.
1649
1650 2018-09-17  Tom Tromey  <tom@tromey.com>
1651
1652         * infrun.c (struct stop_context): Declare constructor,
1653         destructor, "changed" method.
1654         (stop_context::stop_context): Rename from save_stop_context.
1655         (stop_context::~stop_context): Rename from
1656         release_stop_context_cleanup.
1657         (normal_stop): Update.
1658         (stop_context::changed): Rename from stop_context_changed.  Return
1659         bool.
1660
1661 2018-09-17  Tom Tromey  <tom@tromey.com>
1662
1663         * inferior.h (struct infcall_suspend_state_deleter): New.
1664         (infcall_suspend_state_up): New typedef.
1665         (struct infcall_control_state_deleter): New.
1666         (infcall_control_state_up): New typedef.
1667         (make_cleanup_restore_infcall_suspend_state)
1668         (make_cleanup_restore_infcall_control_state): Don't declare.
1669         * infcall.c (call_function_by_hand_dummy): Update.
1670         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1671         (make_cleanup_restore_infcall_suspend_state): Remove.
1672         (do_restore_infcall_control_state_cleanup)
1673         (make_cleanup_restore_infcall_control_state): Remove.
1674
1675 2018-09-17  Tom Tromey  <tom@tromey.com>
1676
1677         * gdbthread.h (struct thread_control_state): Add initializer.
1678         (class thread_info) <control>: Remove initializer.
1679         * inferior.h (struct inferior_control_state): Add initializer.
1680         (class inferior) <control>: Remove initializer.
1681         (exit_inferior_1): Update.
1682         * infrun.c (struct infcall_control_state): Add constructors.
1683         (save_infcall_control_state): Use new.
1684         (restore_infcall_control_state, discard_infcall_control_state):
1685         Use delete.
1686
1687 2018-09-17  Tom Tromey  <tom@tromey.com>
1688
1689         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1690         unique_ptr.
1691         <siginfo_data>: Now a unique_xmalloc_ptr.
1692         (save_infcall_suspend_state, restore_infcall_suspend_state)
1693         (discard_infcall_suspend_state)
1694         (get_infcall_suspend_state_regcache): Update.
1695
1696 2018-09-17  Tom Tromey  <tom@tromey.com>
1697
1698         * gdbthread.h (struct thread_suspend_state): Add initializers.
1699         (class thread_info) <suspend>: Remove initializer.
1700         * infrun.c (struct infcall_suspend_state): Add initializers.
1701         (save_infcall_suspend_state): Use new.
1702         (discard_infcall_suspend_state): Use delete.
1703
1704 2018-09-16  Tom Tromey  <tom@tromey.com>
1705
1706         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1707         Remove.
1708         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1709         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1710         (py_varobj_iter_new): Likewise.
1711         (py_varobj_get_iterator): Use gdbpy_ref.
1712
1713 2018-09-16  Tom Tromey  <tom@tromey.com>
1714
1715         * python/py-threadevent.c (py_get_event_thread): Simplify.
1716         * python/py-inferior.c (infpy_thread_from_thread_handle):
1717         Return immediately after calling thread_to_thread_object.  Use
1718         Py_RETURN_NONE.
1719         (thread_to_thread_object): Set the exception on a NULL return.
1720
1721 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1722
1723         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1724
1725 2018-09-16  Tom Tromey  <tom@tromey.com>
1726
1727         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1728         Remove.
1729
1730 2018-09-16  Tom Tromey  <tom@tromey.com>
1731
1732         * python/python-internal.h (thread_to_thread_object): Change
1733         return type.
1734         * python/py-inferior.c (thread_to_thread_object): Return a new
1735         reference.
1736         (infpy_thread_from_thread_handle): Update.
1737         * python/py-infthread.c (gdbpy_selected_thread): Update.
1738         * python/py-stopevent.c (create_stop_event_object): Update.
1739         * python/py-threadevent.c (py_get_event_thread): Return a new
1740         reference.
1741         (py_get_event_thread): Update.
1742         * python/py-event.h (py_get_event_thread): Change return type.
1743         * python/py-continueevent.c (create_continue_event_object):
1744         Update.
1745
1746 2018-09-16  Tom Tromey  <tom@tromey.com>
1747
1748         * python/py-progspace.c (pspy_get_objfiles): Update.
1749         * python/python-internal.h (objfile_to_objfile_object): Change
1750         return type.
1751         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1752         Update.
1753         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1754         Update.
1755         * python/python.c (gdbpy_get_current_objfile): Update.
1756         (gdbpy_objfiles): Update.
1757         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1758         Update.
1759         (objfile_to_objfile_object): Return a new reference.
1760         * python/py-symtab.c (stpy_get_objfile): Update.
1761         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1762         Update.
1763
1764 2018-09-16  Tom Tromey  <tom@tromey.com>
1765
1766         * python/py-inferior.c (infpy_get_progspace): Update.
1767         * python/python-internal.h (pspace_to_pspace_object): Change
1768         return type.
1769         * python/py-newobjfileevent.c
1770         (create_clear_objfiles_event_object): Update.
1771         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1772         Update.
1773         * python/python.c (gdbpy_get_current_progspace): Update.
1774         (gdbpy_progspaces): Update.
1775         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1776         reference.
1777         * python/py-objfile.c (objfpy_get_progspace): Update.
1778         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1779         Update.
1780
1781 2018-09-16  Tom Tromey  <tom@tromey.com>
1782
1783         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1784         (solib_name, block_for_pc, find_pc_line): New functions.
1785         (execute_unwinders): Update.
1786         * python/py-block.c (gdbpy_block_for_pc): Remove.
1787         * python/py-inferior.c (infpy_get_progspace): New function.
1788         (inferior_object_getset) <progspace>: Add.
1789         * python/py-progspace.c (pspy_objfiles): Rewrite.
1790         (pspy_solib_name, pspy_block_for_pc)
1791         (pspy_find_pc_line, pspy_is_valid): New functions.
1792         (progspace_object_methods): Add entries for solib_name,
1793         block_for_pc, find_pc_line, is_valid.
1794         * python/python-internal.h (gdbpy_block_for_pc)
1795         (build_objfiles_list): Don't declare.
1796         * python/python.c: Don't include solib.h.
1797         (gdbpy_solib_name, gdbpy_find_pc_line)
1798         (gdbpy_get_current_progspace, build_objfiles_list)
1799         (gdbpy_objfiles): Remove.
1800         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1801         solib_name, find_pc_line>: Remove entries.
1802
1803 2018-09-16  Tom Tromey  <tom@tromey.com>
1804
1805         * top.c (new_ui_command): Use GNU style for metasyntactic
1806         variables.
1807         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1808         variables.
1809         * maint.c (maintenance_translate_address): Remove "<>" around
1810         text.
1811         * interps.c (interpreter_exec_cmd): Use GNU style for
1812         metasyntactic variables.
1813         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1814         metasyntactic variables.
1815         * tracepoint.c (tfind_range_command): Use GNU style for
1816         metasyntactic variables.
1817         (tfind_outside_command): Likewise.
1818         (_initialize_tracepoint): Likewise.
1819         * remote.c (extended_remote_target::create_inferior): Use GNU
1820         style for metasyntactic variables.
1821         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1822         metasyntactic variables.
1823         (adi_assign_command): Likewise.
1824
1825 2018-09-16  Tom Tromey  <tom@tromey.com>
1826
1827         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1828         metasyntactic variables.  Print message if no disassembler options
1829         are available.
1830
1831 2018-09-15  Tom Tromey  <tom@tromey.com>
1832
1833         * infcmd.c (get_inferior_args): Return const char *.
1834         * inferior.h (get_inferior_args): Return type now const.
1835         * linux-tdep.c (linux_fill_prpsinfo): Update.
1836         * procfs.c (procfs_target::make_corefile_notes): Update.
1837
1838 2018-09-07  Tom Tromey  <tom@tromey.com>
1839
1840         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1841         inside the TRY.
1842
1843 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1844
1845         * nios2-tdep.c (nios2_type_align): New.
1846         (nios2_gdb_arch_init): Install type_align hook.
1847
1848 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1849
1850         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1851         type that is neither object file owned, nor gdbarch owned.
1852         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1853         gdbarch is non-NULL.
1854         (alloc_type_instance): Allocate non-objfile owned types on the
1855         gdbarch obstack.
1856         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1857         using TYPE_ALLOC to ensure memory is allocated on the correct
1858         obstack.
1859         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1860         obstack, or the gdbarch obstack.
1861         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1862
1863 2018-09-14  Tom Tromey  <tom@tromey.com>
1864
1865         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1866         block.
1867
1868 2018-09-14  Tom Tromey  <tom@tromey.com>
1869
1870         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1871
1872 2018-09-13  Tom Tromey  <tom@tromey.com>
1873
1874         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1875         static.
1876
1877 2018-09-13  Tom Tromey  <tom@tromey.com>
1878
1879         * exec.c (try_open_exec_file): Use std::string.
1880
1881 2018-09-13  Tom Tromey  <tom@tromey.com>
1882
1883         * utils.h (gdb_bfd_errmsg): Return std::string.
1884         * exec.c (exec_file_attach): Update.
1885         * compile/compile-object-load.c (compile_object_load): Update.
1886         * utils.c (gdb_bfd_errmsg): Return std::string.
1887
1888 2018-09-13  Tom Tromey  <tom@tromey.com>
1889
1890         * procfs.c (struct procinfo_deleter): New.
1891         (procinfo_up): New typedef.
1892         (do_destroy_procinfo_cleanup): Remove.
1893         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1894
1895 2018-09-13  Tom Tromey  <tom@tromey.com>
1896
1897         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1898
1899 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1900 2018-09-13  Tom Tromey  <tom@tromey.com>
1901
1902         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1903         (pspy_get_objfiles): New function.
1904         (progspace_object_methods): New.
1905         (pspace_object_type): Add tp_methods callback.
1906         * python/python-internal.h (build_objfiles_list): New
1907         declaration.
1908         * python/python.c (build_objfiles_list): New function.
1909         (gdbpy_objfiles): Implement using build_objfiles_list.
1910         * NEWS: Mention the Progspace.objfiles method.
1911
1912 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1913
1914         * python/py-inferior.c (infpy_get_progspace): New function.
1915         (inferior_object_getset): Add progspace property.
1916         * NEWS: Mention the new property.
1917
1918 2018-09-13  Tom Tromey  <tom@tromey.com>
1919
1920         PR rust/23650:
1921         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1922
1923 2018-09-13  Tom Tromey  <tom@tromey.com>
1924
1925         PR rust/23626:
1926         * rust-lang.c (rust_enum_variant): Now static.
1927         (rust_empty_enum_p): New function.
1928         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1929         Handle empty enum.
1930
1931 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1932
1933         * python/py-inferior.c (infpy_repr): New.
1934         (inferior_object_type): Register infpy_repr.
1935         * python/py-objfile.c (objfpy_repr): New.
1936         (objfile_object_type): Register objfpy_repr.
1937
1938 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1939
1940         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1941
1942 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1943
1944         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1945         typo.
1946
1947 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1948
1949         * common/common-utils.c: Don't include '<sys/stat.h>'.
1950         (is_regular_file): Move to...
1951         * common/filestuff.c (is_regular_file): ... here.
1952         * common/common-utils.h (is_regular_file): Move to...
1953         * common/filestuff.h (is_regular_file): ... here.
1954
1955 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1956
1957         * skip.c (debug_skip): New variable.
1958         (skiplist_entry::do_skip_file_p): Add debug output.
1959         (skiplist_entry::do_skip_gfile_p): Likewise.
1960         (skiplist_entry::skip_function_p): Likewise.
1961         (_initialize_step_skip): Create debug command.
1962         * NEWS: Mention set/show debug skip.
1963
1964 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1965
1966         * darwin-nat.c (should_disable_startup_with_shell):
1967         New function.
1968         (darwin_nat_target::create_inferior): Add call.
1969
1970 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1971
1972         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1973         inf_port, msg_state>: Initialize.
1974         (struct darwin_thread_info) <signaled, single_step>: Change
1975         type and initialize.
1976         (struct darwin_thread_info) <event>: Initialize.
1977
1978 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1979
1980         PR gdb/23555
1981         PR gdb/23558
1982         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1983         guesses.
1984
1985 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1986
1987         Revert:
1988         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1989
1990         PR gdb/23555
1991         PR gdb/23558
1992         * gnulib/aclocal.m4: Regenerate.
1993         * gnulib/config.in: Regenerate.
1994         * gnulib/configure: Regenerate.
1995         * gnulib/import/Makefile.am: Update.
1996         * gnulib/import/Makefile.in: Update.
1997         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1998         * gnulib/import/_Noreturn.h: ... this.
1999         * gnulib/import/alloca.in.h: Update.
2000         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2001         * gnulib/import/arg-nonnull.h: ... this.
2002         * gnulib/import/assure.h: Update.
2003         * gnulib/import/at-func.c: Update.
2004         * gnulib/import/basename-lgpl.c: Update.
2005         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2006         * gnulib/import/c++defs.h: ... this.
2007         * gnulib/import/canonicalize-lgpl.c: Update.
2008         * gnulib/import/cdefs.h: Update.
2009         * gnulib/import/chdir-long.c: Update.
2010         * gnulib/import/chdir-long.h: Update.
2011         * gnulib/import/cloexec.c: Update.
2012         * gnulib/import/cloexec.h: Update.
2013         * gnulib/import/close.c: Update.
2014         * gnulib/import/closedir.c: Update.
2015         * gnulib/import/config.charset: Update.
2016         * gnulib/import/dirent-private.h: Update.
2017         * gnulib/import/dirent.in.h: Update.
2018         * gnulib/import/dirfd.c: Update.
2019         * gnulib/import/dirname-lgpl.c: Update.
2020         * gnulib/import/dirname.h: Update.
2021         * gnulib/import/dosname.h: Update.
2022         * gnulib/import/dup-safer-flag.c: Update.
2023         * gnulib/import/dup-safer.c: Update.
2024         * gnulib/import/dup.c: Update.
2025         * gnulib/import/dup2.c: Update.
2026         * gnulib/import/errno.in.h: Update.
2027         * gnulib/import/error.c: Update.
2028         * gnulib/import/error.h: Update.
2029         * gnulib/import/exitfail.c: Update.
2030         * gnulib/import/exitfail.h: Update.
2031         * gnulib/import/extra/update-copyright: Update.
2032         * gnulib/import/fchdir.c: Update.
2033         * gnulib/import/fcntl.c: Update.
2034         * gnulib/import/fcntl.in.h: Update.
2035         * gnulib/import/fd-hook.c: Update.
2036         * gnulib/import/fd-hook.h: Update.
2037         * gnulib/import/fd-safer-flag.c: Update.
2038         * gnulib/import/fd-safer.c: Update.
2039         * gnulib/import/fdopendir.c: Update.
2040         * gnulib/import/filename.h: Update.
2041         * gnulib/import/filenamecat-lgpl.c: Update.
2042         * gnulib/import/filenamecat.h: Update.
2043         * gnulib/import/flexmember.h: Update.
2044         * gnulib/import/float+.h: Update.
2045         * gnulib/import/float.c: Update.
2046         * gnulib/import/float.in.h: Update.
2047         * gnulib/import/fnmatch.c: Update.
2048         * gnulib/import/fnmatch.in.h: Update.
2049         * gnulib/import/fnmatch_loop.c: Update.
2050         * gnulib/import/fpucw.h: Update.
2051         * gnulib/import/frexp.c: Update.
2052         * gnulib/import/frexpl.c: Update.
2053         * gnulib/import/fstat.c: Update.
2054         * gnulib/import/fstatat.c: Update.
2055         * gnulib/import/getcwd-lgpl.c: Update.
2056         * gnulib/import/getcwd.c: Update.
2057         * gnulib/import/getdtablesize.c: Update.
2058         * gnulib/import/getlogin_r.c: Update.
2059         * gnulib/import/getprogname.c: Update.
2060         * gnulib/import/getprogname.h: Update.
2061         * gnulib/import/gettext.h: Update.
2062         * gnulib/import/gettimeofday.c: Update.
2063         * gnulib/import/glob-libc.h: Update.
2064         * gnulib/import/glob.c: Update.
2065         * gnulib/import/glob.in.h: Update.
2066         * gnulib/import/glob_internal.h: Update.
2067         * gnulib/import/glob_pattern_p.c: Update.
2068         * gnulib/import/globfree.c: Update.
2069         * gnulib/import/hard-locale.c: Update.
2070         * gnulib/import/hard-locale.h: Update.
2071         * gnulib/import/intprops.h: Update.
2072         * gnulib/import/inttypes.in.h: Update.
2073         * gnulib/import/isnan.c: Update.
2074         * gnulib/import/isnand-nolibm.h: Update.
2075         * gnulib/import/isnand.c: Update.
2076         * gnulib/import/isnanl-nolibm.h: Update.
2077         * gnulib/import/isnanl.c: Update.
2078         * gnulib/import/itold.c: Update.
2079         * gnulib/import/libc-config.h: Update.
2080         * gnulib/import/limits.in.h: Update.
2081         * gnulib/import/localcharset.c: Update.
2082         * gnulib/import/localcharset.h: Update.
2083         * gnulib/import/localtime-buffer.c: Update.
2084         * gnulib/import/localtime-buffer.h: Update.
2085         * gnulib/import/lstat.c: Update.
2086         * gnulib/import/m4/00gnulib.m4: Update.
2087         * gnulib/import/m4/__inline.m4: Update.
2088         * gnulib/import/m4/absolute-header.m4: Update.
2089         * gnulib/import/m4/alloca.m4: Update.
2090         * gnulib/import/m4/builtin-expect.m4: Update.
2091         * gnulib/import/m4/canonicalize.m4: Update.
2092         * gnulib/import/m4/chdir-long.m4: Update.
2093         * gnulib/import/m4/close.m4: Update.
2094         * gnulib/import/m4/closedir.m4: Update.
2095         * gnulib/import/m4/configmake.m4: Update.
2096         * gnulib/import/m4/d-ino.m4: Update.
2097         * gnulib/import/m4/d-type.m4: Update.
2098         * gnulib/import/m4/dirent_h.m4: Update.
2099         * gnulib/import/m4/dirfd.m4: Update.
2100         * gnulib/import/m4/dirname.m4: Update.
2101         * gnulib/import/m4/double-slash-root.m4: Update.
2102         * gnulib/import/m4/dup.m4: Update.
2103         * gnulib/import/m4/dup2.m4: Update.
2104         * gnulib/import/m4/eealloc.m4: Update.
2105         * gnulib/import/m4/environ.m4: Update.
2106         * gnulib/import/m4/errno_h.m4: Update.
2107         * gnulib/import/m4/error.m4: Update.
2108         * gnulib/import/m4/exponentd.m4: Update.
2109         * gnulib/import/m4/exponentl.m4: Update.
2110         * gnulib/import/m4/extensions.m4: Update.
2111         * gnulib/import/m4/extern-inline.m4: Update.
2112         * gnulib/import/m4/fchdir.m4: Update.
2113         * gnulib/import/m4/fcntl-o.m4: Update.
2114         * gnulib/import/m4/fcntl.m4: Update.
2115         * gnulib/import/m4/fcntl_h.m4: Update.
2116         * gnulib/import/m4/fdopendir.m4: Update.
2117         * gnulib/import/m4/filenamecat.m4: Update.
2118         * gnulib/import/m4/flexmember.m4: Update.
2119         * gnulib/import/m4/float_h.m4: Update.
2120         * gnulib/import/m4/fnmatch.m4: Update.
2121         * gnulib/import/m4/fnmatch_h.m4: Update.
2122         * gnulib/import/m4/fpieee.m4: Update.
2123         * gnulib/import/m4/frexp.m4: Update.
2124         * gnulib/import/m4/frexpl.m4: Update.
2125         * gnulib/import/m4/fstat.m4: Update.
2126         * gnulib/import/m4/fstatat.m4: Update.
2127         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2128         * gnulib/import/m4/getcwd-path-max.m4: Update.
2129         * gnulib/import/m4/getcwd.m4: Update.
2130         * gnulib/import/m4/getdtablesize.m4: Update.
2131         * gnulib/import/m4/getlogin.m4: Update.
2132         * gnulib/import/m4/getlogin_r.m4: Update.
2133         * gnulib/import/m4/getpagesize.m4: Update.
2134         * gnulib/import/m4/getprogname.m4: Update.
2135         * gnulib/import/m4/gettimeofday.m4: Update.
2136         * gnulib/import/m4/glibc21.m4: Update.
2137         * gnulib/import/m4/glob.m4: Update.
2138         * gnulib/import/m4/glob_h.m4: Update.
2139         * gnulib/import/m4/gnulib-cache.m4: Update.
2140         * gnulib/import/m4/gnulib-common.m4: Update.
2141         * gnulib/import/m4/gnulib-comp.m4: Update.
2142         * gnulib/import/m4/gnulib-tool.m4: Update.
2143         * gnulib/import/m4/hard-locale.m4: Update.
2144         * gnulib/import/m4/include_next.m4: Update.
2145         * gnulib/import/m4/inttypes-pri.m4: Update.
2146         * gnulib/import/m4/inttypes.m4: Update.
2147         * gnulib/import/m4/isnand.m4: Update.
2148         * gnulib/import/m4/isnanl.m4: Update.
2149         * gnulib/import/m4/largefile.m4: Update.
2150         * gnulib/import/m4/limits-h.m4: Update.
2151         * gnulib/import/m4/localcharset.m4: Update.
2152         * gnulib/import/m4/locale-fr.m4: Update.
2153         * gnulib/import/m4/locale-ja.m4: Update.
2154         * gnulib/import/m4/locale-zh.m4: Update.
2155         * gnulib/import/m4/localtime-buffer.m4: Update.
2156         * gnulib/import/m4/longlong.m4: Update.
2157         * gnulib/import/m4/lstat.m4: Update.
2158         * gnulib/import/m4/malloc.m4: Update.
2159         * gnulib/import/m4/malloca.m4: Update.
2160         * gnulib/import/m4/math_h.m4: Update.
2161         * gnulib/import/m4/mbrtowc.m4: Update.
2162         * gnulib/import/m4/mbsinit.m4: Update.
2163         * gnulib/import/m4/mbsrtowcs.m4: Update.
2164         * gnulib/import/m4/mbstate_t.m4: Update.
2165         * gnulib/import/m4/memchr.m4: Update.
2166         * gnulib/import/m4/memmem.m4: Update.
2167         * gnulib/import/m4/mempcpy.m4: Update.
2168         * gnulib/import/m4/memrchr.m4: Update.
2169         * gnulib/import/m4/mkdir.m4: Update.
2170         * gnulib/import/m4/mkstemp.m4: Update.
2171         * gnulib/import/m4/mmap-anon.m4: Update.
2172         * gnulib/import/m4/mode_t.m4: Update.
2173         * gnulib/import/m4/msvc-inval.m4: Update.
2174         * gnulib/import/m4/msvc-nothrow.m4: Update.
2175         * gnulib/import/m4/multiarch.m4: Update.
2176         * gnulib/import/m4/nocrash.m4: Update.
2177         * gnulib/import/m4/off_t.m4: Update.
2178         * gnulib/import/m4/onceonly.m4: Update.
2179         * gnulib/import/m4/open-cloexec.m4: Update.
2180         * gnulib/import/m4/open.m4: Update.
2181         * gnulib/import/m4/openat.m4: Update.
2182         * gnulib/import/m4/opendir.m4: Update.
2183         * gnulib/import/m4/pathmax.m4: Update.
2184         * gnulib/import/m4/rawmemchr.m4: Update.
2185         * gnulib/import/m4/readdir.m4: Update.
2186         * gnulib/import/m4/readlink.m4: Update.
2187         * gnulib/import/m4/realloc.m4: Update.
2188         * gnulib/import/m4/rename.m4: Update.
2189         * gnulib/import/m4/rewinddir.m4: Update.
2190         * gnulib/import/m4/rmdir.m4: Update.
2191         * gnulib/import/m4/save-cwd.m4: Update.
2192         * gnulib/import/m4/secure_getenv.m4: Update.
2193         * gnulib/import/m4/setenv.m4: Update.
2194         * gnulib/import/m4/signal_h.m4: Update.
2195         * gnulib/import/m4/ssize_t.m4: Update.
2196         * gnulib/import/m4/stat-time.m4: Update.
2197         * gnulib/import/m4/stat.m4: Update.
2198         * gnulib/import/m4/std-gnu11.m4: Update.
2199         * gnulib/import/m4/stdbool.m4: Update.
2200         * gnulib/import/m4/stddef_h.m4: Update.
2201         * gnulib/import/m4/stdint.m4: Update.
2202         * gnulib/import/m4/stdio_h.m4: Update.
2203         * gnulib/import/m4/stdlib_h.m4: Update.
2204         * gnulib/import/m4/strchrnul.m4: Update.
2205         * gnulib/import/m4/strdup.m4: Update.
2206         * gnulib/import/m4/strerror.m4: Update.
2207         * gnulib/import/m4/string_h.m4: Update.
2208         * gnulib/import/m4/strstr.m4: Update.
2209         * gnulib/import/m4/strtok_r.m4: Update.
2210         * gnulib/import/m4/sys_socket_h.m4: Update.
2211         * gnulib/import/m4/sys_stat_h.m4: Update.
2212         * gnulib/import/m4/sys_time_h.m4: Update.
2213         * gnulib/import/m4/sys_types_h.m4: Update.
2214         * gnulib/import/m4/tempname.m4: Update.
2215         * gnulib/import/m4/time_h.m4: Update.
2216         * gnulib/import/m4/unistd-safer.m4: Update.
2217         * gnulib/import/m4/unistd_h.m4: Update.
2218         * gnulib/import/m4/warn-on-use.m4: Update.
2219         * gnulib/import/m4/wchar_h.m4: Update.
2220         * gnulib/import/m4/wchar_t.m4: Update.
2221         * gnulib/import/m4/wctype_h.m4: Update.
2222         * gnulib/import/m4/wint_t.m4: Update.
2223         * gnulib/import/malloc.c: Update.
2224         * gnulib/import/malloc/scratch_buffer.h: Update.
2225         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2226         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2227         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2228         * gnulib/import/malloca.c: Update.
2229         * gnulib/import/malloca.h: Update.
2230         * gnulib/import/malloca.valgrind: Update.
2231         * gnulib/import/math.in.h: Update.
2232         * gnulib/import/mbrtowc.c: Update.
2233         * gnulib/import/mbsinit.c: Update.
2234         * gnulib/import/mbsrtowcs-impl.h: Update.
2235         * gnulib/import/mbsrtowcs-state.c: Update.
2236         * gnulib/import/mbsrtowcs.c: Update.
2237         * gnulib/import/memchr.c: Update.
2238         * gnulib/import/memmem.c: Update.
2239         * gnulib/import/mempcpy.c: Update.
2240         * gnulib/import/memrchr.c: Update.
2241         * gnulib/import/mkdir.c: Update.
2242         * gnulib/import/mkstemp.c: Update.
2243         * gnulib/import/msvc-inval.c: Update.
2244         * gnulib/import/msvc-inval.h: Update.
2245         * gnulib/import/msvc-nothrow.c: Update.
2246         * gnulib/import/msvc-nothrow.h: Update.
2247         * gnulib/import/open.c: Update.
2248         * gnulib/import/openat-die.c: Update.
2249         * gnulib/import/openat-priv.h: Update.
2250         * gnulib/import/openat-proc.c: Update.
2251         * gnulib/import/openat.c: Update.
2252         * gnulib/import/openat.h: Update.
2253         * gnulib/import/opendir.c: Update.
2254         * gnulib/import/pathmax.h: Update.
2255         * gnulib/import/pipe-safer.c: Update.
2256         * gnulib/import/rawmemchr.c: Update.
2257         * gnulib/import/readdir.c: Update.
2258         * gnulib/import/readlink.c: Update.
2259         * gnulib/import/realloc.c: Update.
2260         * gnulib/import/ref-add.sin: Update.
2261         * gnulib/import/ref-del.sin: Update.
2262         * gnulib/import/rename.c: Update.
2263         * gnulib/import/rewinddir.c: Update.
2264         * gnulib/import/rmdir.c: Update.
2265         * gnulib/import/same-inode.h: Update.
2266         * gnulib/import/save-cwd.c: Update.
2267         * gnulib/import/save-cwd.h: Update.
2268         * gnulib/import/scratch_buffer.h: Update.
2269         * gnulib/import/secure_getenv.c: Update.
2270         * gnulib/import/setenv.c: Update.
2271         * gnulib/import/signal.in.h: Update.
2272         * gnulib/import/stat-time.c: Update.
2273         * gnulib/import/stat-time.h: Update.
2274         * gnulib/import/stat-w32.c: Update.
2275         * gnulib/import/stat-w32.h: Update.
2276         * gnulib/import/stat.c: Update.
2277         * gnulib/import/stdbool.in.h: Update.
2278         * gnulib/import/stddef.in.h: Update.
2279         * gnulib/import/stdint.in.h: Update.
2280         * gnulib/import/stdio.in.h: Update.
2281         * gnulib/import/stdlib.in.h: Update.
2282         * gnulib/import/str-two-way.h: Update.
2283         * gnulib/import/strchrnul.c: Update.
2284         * gnulib/import/strdup.c: Update.
2285         * gnulib/import/streq.h: Update.
2286         * gnulib/import/strerror-override.c: Update.
2287         * gnulib/import/strerror-override.h: Update.
2288         * gnulib/import/strerror.c: Update.
2289         * gnulib/import/string.in.h: Update.
2290         * gnulib/import/stripslash.c: Update.
2291         * gnulib/import/strnlen1.c: Update.
2292         * gnulib/import/strnlen1.h: Update.
2293         * gnulib/import/strstr.c: Update.
2294         * gnulib/import/strtok_r.c: Update.
2295         * gnulib/import/sys_stat.in.h: Update.
2296         * gnulib/import/sys_time.in.h: Update.
2297         * gnulib/import/sys_types.in.h: Update.
2298         * gnulib/import/tempname.c: Update.
2299         * gnulib/import/tempname.h: Update.
2300         * gnulib/import/time.in.h: Update.
2301         * gnulib/import/unistd--.h: Update.
2302         * gnulib/import/unistd-safer.h: Update.
2303         * gnulib/import/unistd.in.h: Update.
2304         * gnulib/import/unsetenv.c: Update.
2305         * gnulib/import/verify.h: Update.
2306         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2307         * gnulib/import/wchar.in.h: Update.
2308         * gnulib/import/wctype.in.h: Update.
2309         * gnulib/import/xalloc-oversized.h: Update.
2310         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2311         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2312
2313 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2314
2315         * record-btrace.c (get_thread_current_frame): Remove
2316         old_inferior_ptid.
2317
2318 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2319
2320         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2321         with check_tag to 1 if and only if the type is tagged and the
2322         component being searched cannot been found in the current
2323         view. Otherwise, always call ada_to_fixed_type with
2324         check_tag to 0.
2325
2326 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2327
2328         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2329         declaration.
2330         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2331         * ada-varobj.c (ada_varobj_get_number_of_children,
2332         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2333
2334 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2335
2336         * ada-valprint.c (ada_value_print): Use type instead of
2337         enclosing type.
2338
2339 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2340
2341         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2342         an array of access to unconstrained array.
2343
2344 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2345
2346         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2347         (ada_check_typedef): Use it.
2348
2349 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2350
2351         * ada-varobj.c (ada_varobj_describe_struct_child)
2352         (ada_varobj_describe_child): Handle union case like struct one.
2353
2354 2018-09-10  Tom Tromey  <tom@tromey.com>
2355
2356         PR python/18380:
2357         * python/python.c (_initialize_python): Make example in "python"
2358         help work in Python 3.
2359
2360 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2361
2362         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2363         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2364         $(EXEEXT) to the script, as it is not a program.
2365
2366 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2367
2368         * python/py-prettyprint.c (pretty_print_one_value): Return
2369         gdbpy_ref<>.
2370         (print_string_repr): Adjust.
2371         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2372         * python/python-internal.h (apply_varobj_pretty_printer): Return
2373         gdbpy_ref<>.
2374         * varobj.c (varobj_value_get_print_value): Adjust.
2375
2376 2018-09-08  Tom Tromey  <tom@tromey.com>
2377
2378         PR python/16047:
2379         * python/py-prettyprint.c (pretty_print_one_value): Check for
2380         to_string method.
2381
2382 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2383
2384         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2385         replace_operator_with_call.
2386
2387 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2388
2389         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2390
2391 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2392
2393         * ada-typeprint.c (print_range): Print the bounds using TYPE
2394         rather than its TYPE_TARGET_TYPE.
2395
2396 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2397
2398         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2399         call to ada_to_fixed_value_create.
2400
2401 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2402
2403         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2404
2405 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2406
2407         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2408         by calls to error.
2409
2410 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2411
2412         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2413         Move update of loop variable "fi".
2414
2415 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2416
2417         * ada-lang.c (value_assign_to_component): In the case of
2418         big-endian targets, extract the bits of the given VAL
2419         using an src_offset of zero if container is not a scalar.
2420
2421 2018-09-06  Simon Ser  <contact@emersion.fr>
2422
2423         PR gdb/23105
2424         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2425         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2426         * fbsd-tdep.c (fbsd_make_note_desc): New.
2427         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2428         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2429         * target.h (enum target_object) Add FreeBSD-specific
2430         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2431
2432 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2433
2434         * compile/compile-c.h (generate_c_for_variable_locations):
2435         Change reference to pointer.
2436         * compile/compile-c-support.c (compile_program) <compute>:
2437         Likewise.
2438         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2439         (generate_c_for_for_one_variable): Likewise
2440         (generate_c_for_variable_locations): Likewise
2441         * compile/compile-c-types.c (compile_c_instance::convert_type):
2442         Likewise
2443         * compile/compile-cplus-symbols.c (convert_one_symbol):
2444         std::move the scope passed to enter_scope.
2445         * compile/compile-cplus-types.c
2446         (compile_cplus_instance::enter_scope): Make parameter
2447         rvalue-reference.
2448         (compile_cplus_instance::new_scope): Change reference to
2449         pointer.
2450         (compile_cplus_instance::convert_type): Likewise
2451         (compile_cplus_convert_typedef): std::move the scope passed to
2452         enter_scope.
2453         (compile_cplus_convert_struct_or_union): Likewise.
2454         (compile_cplus_convert_enum): Likewise.
2455         (compile_cplus_convert_namespace): Likewise.
2456         * compile/compile-cplus.h (compile_cplus_instance)
2457         <enter_scope>: Make parameter rvalue-reference.
2458         * compile/compile-internal.h (compile_instance)
2459         <get_cached_type>: Likewise
2460         * compile/compile-loc2c.c (push): Likewise
2461         (pushf): Likewise
2462         (unary): Likewise
2463         (binary): Likewise
2464         (print_label): Likewise
2465         (pushf_register_address): Likewise
2466         (pushf_register): Likewise
2467         (do_compile_dwarf_expr_to_c): Likewise
2468         (compile_dwarf_expr_to_c): Likewise
2469         (compile_dwarf_bounds_to_c): Likewise
2470         * compile/compile.c (compile_instance::get_cached_type):
2471         Likewise
2472         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2473         (compile_dwarf_bounds_to_c): Likewise
2474         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2475         (dwarf2_compile_property_to_c): Likewise
2476         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2477         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2478         Likewise
2479
2480 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2481
2482         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2483         * tui/tui-data.c (init_content_element): Don't initialize it.
2484
2485 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2486
2487         * tui/tui-data.h (struct tui_win_info)
2488         <detail::opaque>: Remove.
2489         * tui/tui-data.c (init_win_info): Remove assignment.
2490
2491 2018-09-05  Tom Tromey  <tom@tromey.com>
2492
2493         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2494         -Wformat-nonliteral.
2495         * target-float.c (host_float_ops<T>::to_string)
2496         (host_float_ops<T>::from_string): Use
2497         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2498         * configure: Rebuild.
2499
2500 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2501
2502         * printcmd.c (printf_c_string): Use
2503         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2504         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2505
2506 2018-09-05  Tom Tromey  <tom@tromey.com>
2507
2508         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2509
2510 2018-09-05  Tom de Vries  <tdevries@suse.de>
2511
2512         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2513         with resolve_abstract_p == true.
2514         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2515         defaulting to false. Propagate resolve_abstract_p to
2516         dwarf2_fetch_die_loc_sect_off.
2517         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2518         parameter, defaulting to false.
2519         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2520         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2521         parameter.
2522         * dwarf2read.h (struct die_info): Forward-declare.
2523         (die_info_ptr): New typedef.
2524         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2525
2526 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2527
2528         GDB 8.2 released.
2529
2530 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2531             Pedro Alves  <palves@redhat.com>
2532
2533         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2534         "aclocal-m4-deps.mk".  Include file here.
2535         $(srcdir)/aclocal.m4: Add "configure.ac".
2536         * gnulib/aclocal-m4-deps.mk: New file.
2537         * gnulib/update-gnulib.sh: Automatically update
2538         "aclocal-m4-deps.mk".
2539
2540 2018-09-04  Tom Tromey  <tom@tromey.com>
2541
2542         * configure: Rebuild.
2543         * configure.ac: Remove multi-ice code.
2544
2545 2018-09-04  Tom Tromey  <tom@tromey.com>
2546
2547         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2548         (ada-exp.o): Update.
2549
2550 2018-09-04  Tom Tromey  <tom@tromey.com>
2551
2552         * Makefile.in (printcmd.o, target-float.o): Remove.
2553         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2554
2555 2018-09-04  Tom Tromey  <tom@tromey.com>
2556
2557         * gnulib/Makefile.in: Remove obsolete comment.
2558         * Makefile.in: Remove obsolete comment.
2559
2560 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2561
2562         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2563         line with '+'.
2564
2565 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2566
2567         * riscv-tdep.c: Add 'prologue-value.h' include.
2568         (struct riscv_unwind_cache): New struct.
2569         (riscv_debug_unwinder): New global.
2570         (riscv_scan_prologue): Update arguments, capture register details
2571         from prologue scan.
2572         (riscv_skip_prologue): Reformat arguments line, move end of
2573         prologue calculation into riscv_scan_prologue.
2574         (riscv_frame_cache): Update return type, create
2575         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2576         details.
2577         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2578         (riscv_frame_prev_register): Use the trad_frame within the
2579         riscv_unwind_cache.
2580         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2581         flag.
2582
2583 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2584
2585         * trad-frame.h (trad_frame_set_realreg): Declare.
2586         (trad_frame_set_addr): Declare.
2587         * trad-frame.c (trad_frame_set_realreg): Define new function.
2588         (trad_frame_set_addr): Define new function.
2589         (trad_frame_set_reg_realreg): Use new function.
2590         (trad_frame_set_reg_addr): Use new function.
2591
2592 2018-09-01  Keith Seitz  <keiths@redhat.com>
2593
2594         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2595         pulongest instead of "%lld".
2596         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2597         ATTRIBUTE_UNUSED.
2598
2599 2018-08-31  Tom Tromey  <tom@tromey.com>
2600
2601         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2602         variant part type.
2603
2604 2018-08-31  Pedro Alves  <palves@redhat.com>
2605
2606         * gdbarch.h: Regenerate.
2607
2608 2018-08-31  Pedro Alves  <palves@redhat.com>
2609
2610         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2611         * target.h (Hardware watchpoint interfaces): Describe
2612         continuable/steppable/non-steppable watchpoints.
2613         * gdbarch.h, gdbarch.c: Regenerate.
2614
2615 2018-08-31  Pedro Alves  <palves@redhat.com>
2616
2617         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2618         Delete.
2619         * s390-linux-nat.c
2620         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2621         * target.h (target_ops::have_continuable_watchpoint): Delete.
2622         (target_have_continuable_watchpoint): Delete.
2623         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2624         * target-delegates.c: Regenerate.
2625
2626 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2627
2628         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2629         the files present in "gnulib/import/m4/".
2630
2631 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2632
2633         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2634         c.sw, c.swsp, and c.sdsp.
2635
2636 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2637
2638         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2639         (riscv_read_misa_reg): Don't cache value read into inferior data.
2640         (riscv_new_inferior_data): Delete.
2641         (riscv_inferior_data_cleanup): Delete.
2642         (riscv_inferior_data): Delete.
2643         (riscv_invalidate_inferior_data): Delete.
2644         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2645
2646 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2647
2648         * compile/compile-cplus-types.c
2649         (compile_cplus_instance::leave_scope): Take the address of scope
2650         object.
2651         (compile_cplus_instance::convert_qualified_base): Compare quals
2652         to 0.
2653
2654 2018-08-30  Keith Seitz  <keiths@redhat.com>
2655
2656         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2657         Use "%s" and host_address_to_string instead of "%p" in printf.
2658
2659 2018-08-29  Keith Seitz  <keiths@redhat.com>
2660
2661         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2662         and compile-cplus-types.c.
2663         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2664         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2665         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2666         Declare.
2667         * compile/compile-c-support.c: Include compile-cplus.h.
2668         (load_libcompile): Templatize.
2669         (get_compile_context): "New" function.
2670         (c_get_compile_context): Use get_compile_context.
2671         (cplus_get_compile_context): New function.
2672         (cplus_push_user_expression, cplus_pop_user_expression)
2673         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2674         (cplus_compute_program): Define new structs/functions.
2675         * compile/compile-cplus-symmbols.c: New file.
2676         * compile/compile-cplus-types.c: New file.
2677         * compile/compile-cplus.h: New file.
2678         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2679         Declare.
2680         * compile/compile-object-load.c (get_out_value_type): Use
2681         strncmp_iw when comparing symbol names.
2682         (compile_object_load): Add mst_bss and mst_data.
2683         * compile/compile.c (_initialize_compile): Remove
2684         -Wno-implicit-function-declaration from `compile_args'.
2685         * compile/gcc-cp-plugin.h: New file.
2686         * NEWS: Mention C++ compile support and new debug options.
2687
2688 2018-08-29  Keith Seitz  <keiths@redhat.com>
2689
2690         * linespec.c (collect_info::add_symbol): Make virtual.
2691         (struct symbol_searcher_collect_info): New struct.
2692         (symbol_searcher::find_all_symbols): New method.
2693         * symtab.h (class symbol_searcher): New class.
2694
2695 2018-08-29  Keith Seitz  <keiths@redhat.com>
2696
2697         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2698         Change to vector of block_symbol.  Update all users.
2699         (struct collect_info) <symbols>: Likewise.
2700         (collect_info::add_symbol): Take block_symbol as argument.
2701         Update all callers.
2702         (decode_compound_collector) <m_symbols>: Change type to vector
2703         of block_symbol.  Update all users.
2704         (decode_compound_collector::operator ()): Change parameter type
2705         to block_symbol.
2706         (find_method, find_function_symbols, find_linespec_symbols)
2707         (find_label_symbols_in_block, find_label_symbols): Change symbol
2708         vectors to block_symbol vectors.
2709         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2710         block_symbol.
2711
2712 2018-08-29  Keith Seitz  <keiths@redhat.com>
2713
2714         * linespec.c (symbolp): Remove typedef and VEC definitions.
2715         (bound_minimal_symbol_d): Likewise.
2716
2717 2018-08-29  Keith Seitz  <keiths@redhat.com>
2718
2719         * linespec.c (decode_compound_collector::decode_compound_collector):
2720         Remove initialization for `m_symtabs'.
2721         (decode_compound_collector::release_symbols): Change return type
2722         to std::vector.  Update all callers.
2723         (class decode_compound_collector) <m_symbols>: Change type to
2724         std::vector.
2725         (lookup_prefix_sym): Change return type to std::vector.  Update all
2726         callers.
2727         (compare_symbols): Remove.
2728         (std_compare_symbols): Rename to `compare_symbols'.
2729         (find_method): Change `sym_classes' parameter to std::vector.
2730         Update all callers.  Use std::sort to sort sym_classes.
2731         (find_linespec_symbols): Remove cleanup.
2732
2733 2018-08-29  Keith Seitz  <keiths@redhat.com>
2734
2735         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2736         std::vector.  Update all users.
2737         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2738         (struct collect_info) <minimal_symbols>: Likewise.
2739         (compare_msymbols): Return bool.  Change parameters to const
2740         bound_minimal_symbol references.
2741         (find_method, find_function_symbols, find_linespec_symbols): Change
2742         `minsyms' parameter to std::vector.  Update all callers.
2743
2744 2018-08-29  Keith Seitz  <keiths@redhat.com>
2745
2746         * linespec.c (struct linespec) <label_symbols>: Change type to
2747         std::vector.  Update all users.
2748         (find_label_symbols_in_block): Change `result' parameter to
2749         std::vector.  Update all callers.
2750         (find_label_symbols): Return std::vector.  Update all callers.
2751
2752 2018-08-29  Keith Seitz  <keiths@redhat.com>
2753
2754         * linespec.c (struct linespec) <function_symbols>: Change type to
2755         std::vector.  Update all users.
2756         (struct collect_info) <function_symbols>: Likewise.
2757         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2758         (std_compare_symbols): New function.
2759         (find_method, find_function_symbols, find_linespec_symbols)
2760         (find_label_symbols_in_block): Change `symbols' parameter to
2761         std::vector.  Update all callers.
2762         (find_label_symbols): Likewise for `function_symbols' and
2763         `label_funcs_ret'.
2764
2765 2018-08-29  Keith Seitz  <keiths@redhat.com>
2766
2767         * linespec.c (symtab_vector_up): Define.
2768         (struct linespec) <file_symtabs>: Change type to std::vector *.
2769         Update all uses.
2770         (struct collect_info) <file_symtabs>: Likewise.
2771         (collect_symtabs_from_filename): Return symtab_vector_up.
2772         Update all callers.
2773         (decode_objc): Remove cleanup.
2774         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2775         (symtab_collector::release_symtabs): Return symtab_vector_up.
2776         Update all callers.
2777         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2778         Update all users.
2779         (collect_symtabs_from_filename, symtabs_from_filename): Return
2780         symtab_vector_up.  Update all callers.
2781
2782 2018-08-29  Tom Tromey  <tom@tromey.com>
2783
2784         * csky-tdep.c (csky_analyze_prologue): Use
2785         core_addr_to_string_nz.
2786
2787 2018-08-29  Tom Tromey  <tom@tromey.com>
2788
2789         * windows-nat.c (struct xlate_exception) <them>: Change type to
2790         DWORD.
2791         (xlate): Fix formatting.  Remove last entry.
2792         (struct xlate_exception, xlate): Comment out.
2793         (windows_nat_target::resume): Use ranged for.
2794
2795 2018-08-29  Jim Wilson  <jimw@sifive.com>
2796
2797         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2798         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2799         of NT_PRFPREG.
2800         (riscv_linux_nat_target::store_registers): Likewise.
2801
2802 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2803
2804         PR gdb/23555
2805         PR gdb/23558
2806         * gnulib/aclocal.m4: Regenerate.
2807         * gnulib/config.in: Regenerate.
2808         * gnulib/configure: Regenerate.
2809         * gnulib/import/Makefile.am: Update.
2810         * gnulib/import/Makefile.in: Update.
2811         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2812         * gnulib/import/_Noreturn.h: ... this.
2813         * gnulib/import/alloca.in.h: Update.
2814         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2815         * gnulib/import/arg-nonnull.h: ... this.
2816         * gnulib/import/assure.h: Update.
2817         * gnulib/import/at-func.c: Update.
2818         * gnulib/import/basename-lgpl.c: Update.
2819         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2820         * gnulib/import/c++defs.h: ... this.
2821         * gnulib/import/canonicalize-lgpl.c: Update.
2822         * gnulib/import/cdefs.h: Update.
2823         * gnulib/import/chdir-long.c: Update.
2824         * gnulib/import/chdir-long.h: Update.
2825         * gnulib/import/cloexec.c: Update.
2826         * gnulib/import/cloexec.h: Update.
2827         * gnulib/import/close.c: Update.
2828         * gnulib/import/closedir.c: Update.
2829         * gnulib/import/config.charset: Update.
2830         * gnulib/import/dirent-private.h: Update.
2831         * gnulib/import/dirent.in.h: Update.
2832         * gnulib/import/dirfd.c: Update.
2833         * gnulib/import/dirname-lgpl.c: Update.
2834         * gnulib/import/dirname.h: Update.
2835         * gnulib/import/dosname.h: Update.
2836         * gnulib/import/dup-safer-flag.c: Update.
2837         * gnulib/import/dup-safer.c: Update.
2838         * gnulib/import/dup.c: Update.
2839         * gnulib/import/dup2.c: Update.
2840         * gnulib/import/errno.in.h: Update.
2841         * gnulib/import/error.c: Update.
2842         * gnulib/import/error.h: Update.
2843         * gnulib/import/exitfail.c: Update.
2844         * gnulib/import/exitfail.h: Update.
2845         * gnulib/import/extra/update-copyright: Update.
2846         * gnulib/import/fchdir.c: Update.
2847         * gnulib/import/fcntl.c: Update.
2848         * gnulib/import/fcntl.in.h: Update.
2849         * gnulib/import/fd-hook.c: Update.
2850         * gnulib/import/fd-hook.h: Update.
2851         * gnulib/import/fd-safer-flag.c: Update.
2852         * gnulib/import/fd-safer.c: Update.
2853         * gnulib/import/fdopendir.c: Update.
2854         * gnulib/import/filename.h: Update.
2855         * gnulib/import/filenamecat-lgpl.c: Update.
2856         * gnulib/import/filenamecat.h: Update.
2857         * gnulib/import/flexmember.h: Update.
2858         * gnulib/import/float+.h: Update.
2859         * gnulib/import/float.c: Update.
2860         * gnulib/import/float.in.h: Update.
2861         * gnulib/import/fnmatch.c: Update.
2862         * gnulib/import/fnmatch.in.h: Update.
2863         * gnulib/import/fnmatch_loop.c: Update.
2864         * gnulib/import/fpucw.h: Update.
2865         * gnulib/import/frexp.c: Update.
2866         * gnulib/import/frexpl.c: Update.
2867         * gnulib/import/fstat.c: Update.
2868         * gnulib/import/fstatat.c: Update.
2869         * gnulib/import/getcwd-lgpl.c: Update.
2870         * gnulib/import/getcwd.c: Update.
2871         * gnulib/import/getdtablesize.c: Update.
2872         * gnulib/import/getlogin_r.c: Update.
2873         * gnulib/import/getprogname.c: Update.
2874         * gnulib/import/getprogname.h: Update.
2875         * gnulib/import/gettext.h: Update.
2876         * gnulib/import/gettimeofday.c: Update.
2877         * gnulib/import/glob-libc.h: Update.
2878         * gnulib/import/glob.c: Update.
2879         * gnulib/import/glob.in.h: Update.
2880         * gnulib/import/glob_internal.h: Update.
2881         * gnulib/import/glob_pattern_p.c: Update.
2882         * gnulib/import/globfree.c: Update.
2883         * gnulib/import/hard-locale.c: Update.
2884         * gnulib/import/hard-locale.h: Update.
2885         * gnulib/import/intprops.h: Update.
2886         * gnulib/import/inttypes.in.h: Update.
2887         * gnulib/import/isnan.c: Update.
2888         * gnulib/import/isnand-nolibm.h: Update.
2889         * gnulib/import/isnand.c: Update.
2890         * gnulib/import/isnanl-nolibm.h: Update.
2891         * gnulib/import/isnanl.c: Update.
2892         * gnulib/import/itold.c: Update.
2893         * gnulib/import/libc-config.h: Update.
2894         * gnulib/import/limits.in.h: Update.
2895         * gnulib/import/localcharset.c: Update.
2896         * gnulib/import/localcharset.h: Update.
2897         * gnulib/import/localtime-buffer.c: Update.
2898         * gnulib/import/localtime-buffer.h: Update.
2899         * gnulib/import/lstat.c: Update.
2900         * gnulib/import/m4/00gnulib.m4: Update.
2901         * gnulib/import/m4/__inline.m4: Update.
2902         * gnulib/import/m4/absolute-header.m4: Update.
2903         * gnulib/import/m4/alloca.m4: Update.
2904         * gnulib/import/m4/builtin-expect.m4: Update.
2905         * gnulib/import/m4/canonicalize.m4: Update.
2906         * gnulib/import/m4/chdir-long.m4: Update.
2907         * gnulib/import/m4/close.m4: Update.
2908         * gnulib/import/m4/closedir.m4: Update.
2909         * gnulib/import/m4/configmake.m4: Update.
2910         * gnulib/import/m4/d-ino.m4: Update.
2911         * gnulib/import/m4/d-type.m4: Update.
2912         * gnulib/import/m4/dirent_h.m4: Update.
2913         * gnulib/import/m4/dirfd.m4: Update.
2914         * gnulib/import/m4/dirname.m4: Update.
2915         * gnulib/import/m4/double-slash-root.m4: Update.
2916         * gnulib/import/m4/dup.m4: Update.
2917         * gnulib/import/m4/dup2.m4: Update.
2918         * gnulib/import/m4/eealloc.m4: Update.
2919         * gnulib/import/m4/environ.m4: Update.
2920         * gnulib/import/m4/errno_h.m4: Update.
2921         * gnulib/import/m4/error.m4: Update.
2922         * gnulib/import/m4/exponentd.m4: Update.
2923         * gnulib/import/m4/exponentl.m4: Update.
2924         * gnulib/import/m4/extensions.m4: Update.
2925         * gnulib/import/m4/extern-inline.m4: Update.
2926         * gnulib/import/m4/fchdir.m4: Update.
2927         * gnulib/import/m4/fcntl-o.m4: Update.
2928         * gnulib/import/m4/fcntl.m4: Update.
2929         * gnulib/import/m4/fcntl_h.m4: Update.
2930         * gnulib/import/m4/fdopendir.m4: Update.
2931         * gnulib/import/m4/filenamecat.m4: Update.
2932         * gnulib/import/m4/flexmember.m4: Update.
2933         * gnulib/import/m4/float_h.m4: Update.
2934         * gnulib/import/m4/fnmatch.m4: Update.
2935         * gnulib/import/m4/fnmatch_h.m4: Update.
2936         * gnulib/import/m4/fpieee.m4: Update.
2937         * gnulib/import/m4/frexp.m4: Update.
2938         * gnulib/import/m4/frexpl.m4: Update.
2939         * gnulib/import/m4/fstat.m4: Update.
2940         * gnulib/import/m4/fstatat.m4: Update.
2941         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2942         * gnulib/import/m4/getcwd-path-max.m4: Update.
2943         * gnulib/import/m4/getcwd.m4: Update.
2944         * gnulib/import/m4/getdtablesize.m4: Update.
2945         * gnulib/import/m4/getlogin.m4: Update.
2946         * gnulib/import/m4/getlogin_r.m4: Update.
2947         * gnulib/import/m4/getpagesize.m4: Update.
2948         * gnulib/import/m4/getprogname.m4: Update.
2949         * gnulib/import/m4/gettimeofday.m4: Update.
2950         * gnulib/import/m4/glibc21.m4: Update.
2951         * gnulib/import/m4/glob.m4: Update.
2952         * gnulib/import/m4/glob_h.m4: Update.
2953         * gnulib/import/m4/gnulib-cache.m4: Update.
2954         * gnulib/import/m4/gnulib-common.m4: Update.
2955         * gnulib/import/m4/gnulib-comp.m4: Update.
2956         * gnulib/import/m4/gnulib-tool.m4: Update.
2957         * gnulib/import/m4/hard-locale.m4: Update.
2958         * gnulib/import/m4/include_next.m4: Update.
2959         * gnulib/import/m4/inttypes-pri.m4: Update.
2960         * gnulib/import/m4/inttypes.m4: Update.
2961         * gnulib/import/m4/isnand.m4: Update.
2962         * gnulib/import/m4/isnanl.m4: Update.
2963         * gnulib/import/m4/largefile.m4: Update.
2964         * gnulib/import/m4/limits-h.m4: Update.
2965         * gnulib/import/m4/localcharset.m4: Update.
2966         * gnulib/import/m4/locale-fr.m4: Update.
2967         * gnulib/import/m4/locale-ja.m4: Update.
2968         * gnulib/import/m4/locale-zh.m4: Update.
2969         * gnulib/import/m4/localtime-buffer.m4: Update.
2970         * gnulib/import/m4/longlong.m4: Update.
2971         * gnulib/import/m4/lstat.m4: Update.
2972         * gnulib/import/m4/malloc.m4: Update.
2973         * gnulib/import/m4/malloca.m4: Update.
2974         * gnulib/import/m4/math_h.m4: Update.
2975         * gnulib/import/m4/mbrtowc.m4: Update.
2976         * gnulib/import/m4/mbsinit.m4: Update.
2977         * gnulib/import/m4/mbsrtowcs.m4: Update.
2978         * gnulib/import/m4/mbstate_t.m4: Update.
2979         * gnulib/import/m4/memchr.m4: Update.
2980         * gnulib/import/m4/memmem.m4: Update.
2981         * gnulib/import/m4/mempcpy.m4: Update.
2982         * gnulib/import/m4/memrchr.m4: Update.
2983         * gnulib/import/m4/mkdir.m4: Update.
2984         * gnulib/import/m4/mkstemp.m4: Update.
2985         * gnulib/import/m4/mmap-anon.m4: Update.
2986         * gnulib/import/m4/mode_t.m4: Update.
2987         * gnulib/import/m4/msvc-inval.m4: Update.
2988         * gnulib/import/m4/msvc-nothrow.m4: Update.
2989         * gnulib/import/m4/multiarch.m4: Update.
2990         * gnulib/import/m4/nocrash.m4: Update.
2991         * gnulib/import/m4/off_t.m4: Update.
2992         * gnulib/import/m4/onceonly.m4: Update.
2993         * gnulib/import/m4/open-cloexec.m4: Update.
2994         * gnulib/import/m4/open.m4: Update.
2995         * gnulib/import/m4/openat.m4: Update.
2996         * gnulib/import/m4/opendir.m4: Update.
2997         * gnulib/import/m4/pathmax.m4: Update.
2998         * gnulib/import/m4/rawmemchr.m4: Update.
2999         * gnulib/import/m4/readdir.m4: Update.
3000         * gnulib/import/m4/readlink.m4: Update.
3001         * gnulib/import/m4/realloc.m4: Update.
3002         * gnulib/import/m4/rename.m4: Update.
3003         * gnulib/import/m4/rewinddir.m4: Update.
3004         * gnulib/import/m4/rmdir.m4: Update.
3005         * gnulib/import/m4/save-cwd.m4: Update.
3006         * gnulib/import/m4/secure_getenv.m4: Update.
3007         * gnulib/import/m4/setenv.m4: Update.
3008         * gnulib/import/m4/signal_h.m4: Update.
3009         * gnulib/import/m4/ssize_t.m4: Update.
3010         * gnulib/import/m4/stat-time.m4: Update.
3011         * gnulib/import/m4/stat.m4: Update.
3012         * gnulib/import/m4/std-gnu11.m4: Update.
3013         * gnulib/import/m4/stdbool.m4: Update.
3014         * gnulib/import/m4/stddef_h.m4: Update.
3015         * gnulib/import/m4/stdint.m4: Update.
3016         * gnulib/import/m4/stdio_h.m4: Update.
3017         * gnulib/import/m4/stdlib_h.m4: Update.
3018         * gnulib/import/m4/strchrnul.m4: Update.
3019         * gnulib/import/m4/strdup.m4: Update.
3020         * gnulib/import/m4/strerror.m4: Update.
3021         * gnulib/import/m4/string_h.m4: Update.
3022         * gnulib/import/m4/strstr.m4: Update.
3023         * gnulib/import/m4/strtok_r.m4: Update.
3024         * gnulib/import/m4/sys_socket_h.m4: Update.
3025         * gnulib/import/m4/sys_stat_h.m4: Update.
3026         * gnulib/import/m4/sys_time_h.m4: Update.
3027         * gnulib/import/m4/sys_types_h.m4: Update.
3028         * gnulib/import/m4/tempname.m4: Update.
3029         * gnulib/import/m4/time_h.m4: Update.
3030         * gnulib/import/m4/unistd-safer.m4: Update.
3031         * gnulib/import/m4/unistd_h.m4: Update.
3032         * gnulib/import/m4/warn-on-use.m4: Update.
3033         * gnulib/import/m4/wchar_h.m4: Update.
3034         * gnulib/import/m4/wchar_t.m4: Update.
3035         * gnulib/import/m4/wctype_h.m4: Update.
3036         * gnulib/import/m4/wint_t.m4: Update.
3037         * gnulib/import/malloc.c: Update.
3038         * gnulib/import/malloc/scratch_buffer.h: Update.
3039         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3040         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3041         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3042         * gnulib/import/malloca.c: Update.
3043         * gnulib/import/malloca.h: Update.
3044         * gnulib/import/malloca.valgrind: Update.
3045         * gnulib/import/math.in.h: Update.
3046         * gnulib/import/mbrtowc.c: Update.
3047         * gnulib/import/mbsinit.c: Update.
3048         * gnulib/import/mbsrtowcs-impl.h: Update.
3049         * gnulib/import/mbsrtowcs-state.c: Update.
3050         * gnulib/import/mbsrtowcs.c: Update.
3051         * gnulib/import/memchr.c: Update.
3052         * gnulib/import/memmem.c: Update.
3053         * gnulib/import/mempcpy.c: Update.
3054         * gnulib/import/memrchr.c: Update.
3055         * gnulib/import/mkdir.c: Update.
3056         * gnulib/import/mkstemp.c: Update.
3057         * gnulib/import/msvc-inval.c: Update.
3058         * gnulib/import/msvc-inval.h: Update.
3059         * gnulib/import/msvc-nothrow.c: Update.
3060         * gnulib/import/msvc-nothrow.h: Update.
3061         * gnulib/import/open.c: Update.
3062         * gnulib/import/openat-die.c: Update.
3063         * gnulib/import/openat-priv.h: Update.
3064         * gnulib/import/openat-proc.c: Update.
3065         * gnulib/import/openat.c: Update.
3066         * gnulib/import/openat.h: Update.
3067         * gnulib/import/opendir.c: Update.
3068         * gnulib/import/pathmax.h: Update.
3069         * gnulib/import/pipe-safer.c: Update.
3070         * gnulib/import/rawmemchr.c: Update.
3071         * gnulib/import/readdir.c: Update.
3072         * gnulib/import/readlink.c: Update.
3073         * gnulib/import/realloc.c: Update.
3074         * gnulib/import/ref-add.sin: Update.
3075         * gnulib/import/ref-del.sin: Update.
3076         * gnulib/import/rename.c: Update.
3077         * gnulib/import/rewinddir.c: Update.
3078         * gnulib/import/rmdir.c: Update.
3079         * gnulib/import/same-inode.h: Update.
3080         * gnulib/import/save-cwd.c: Update.
3081         * gnulib/import/save-cwd.h: Update.
3082         * gnulib/import/scratch_buffer.h: Update.
3083         * gnulib/import/secure_getenv.c: Update.
3084         * gnulib/import/setenv.c: Update.
3085         * gnulib/import/signal.in.h: Update.
3086         * gnulib/import/stat-time.c: Update.
3087         * gnulib/import/stat-time.h: Update.
3088         * gnulib/import/stat-w32.c: Update.
3089         * gnulib/import/stat-w32.h: Update.
3090         * gnulib/import/stat.c: Update.
3091         * gnulib/import/stdbool.in.h: Update.
3092         * gnulib/import/stddef.in.h: Update.
3093         * gnulib/import/stdint.in.h: Update.
3094         * gnulib/import/stdio.in.h: Update.
3095         * gnulib/import/stdlib.in.h: Update.
3096         * gnulib/import/str-two-way.h: Update.
3097         * gnulib/import/strchrnul.c: Update.
3098         * gnulib/import/strdup.c: Update.
3099         * gnulib/import/streq.h: Update.
3100         * gnulib/import/strerror-override.c: Update.
3101         * gnulib/import/strerror-override.h: Update.
3102         * gnulib/import/strerror.c: Update.
3103         * gnulib/import/string.in.h: Update.
3104         * gnulib/import/stripslash.c: Update.
3105         * gnulib/import/strnlen1.c: Update.
3106         * gnulib/import/strnlen1.h: Update.
3107         * gnulib/import/strstr.c: Update.
3108         * gnulib/import/strtok_r.c: Update.
3109         * gnulib/import/sys_stat.in.h: Update.
3110         * gnulib/import/sys_time.in.h: Update.
3111         * gnulib/import/sys_types.in.h: Update.
3112         * gnulib/import/tempname.c: Update.
3113         * gnulib/import/tempname.h: Update.
3114         * gnulib/import/time.in.h: Update.
3115         * gnulib/import/unistd--.h: Update.
3116         * gnulib/import/unistd-safer.h: Update.
3117         * gnulib/import/unistd.in.h: Update.
3118         * gnulib/import/unsetenv.c: Update.
3119         * gnulib/import/verify.h: Update.
3120         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3121         * gnulib/import/wchar.in.h: Update.
3122         * gnulib/import/wctype.in.h: Update.
3123         * gnulib/import/xalloc-oversized.h: Update.
3124         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3125         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3126
3127 2018-08-16  Gary Benson <gbenson@redhat.com>
3128
3129         PR gdb/13000:
3130         * gdb/main.c (captured_main_1): Exit with nonzero status
3131         in batch mode if the last command to be executed failed.
3132         * NEWS: Mention the above.
3133
3134 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3135
3136         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3137         end of warning message.
3138
3139 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3140
3141         PR gdb/22943:
3142         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3143         (aarch64_extract_return_value): Use
3144         aapcs_is_vfp_call_or_return_candidate.
3145         (aarch64_return_in_memory): Likewise.
3146         (aarch64_store_return_value): Likewise.
3147
3148 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3149
3150         * aarch64-tdep.c
3151         (aapcs_is_vfp_call_or_return_candidate): Make static
3152         (pass_in_v_or_stack): Remove function.
3153         (pass_in_v_vfp_candidate): New function.
3154         (aarch64_push_dummy_call): Check for float register candidates.
3155
3156 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3157
3158         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3159         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3160         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3161
3162 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3163
3164         PR build/23399
3165         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3166         (struct ipa_sym_addresses): Rename to...
3167         (struct ipa_sym_addresses_common): ... this.
3168         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3169
3170 2018-08-28  Tom Tromey  <tom@tromey.com>
3171
3172         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3173         (token_fifo): Now a std::vector.
3174         (yylex, c_parse): Update.
3175         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3176         (token_fifo): Now a std::vector.
3177         (yylex, d_parse): Update.
3178         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3179         (token_fifo): Now a std::vector.
3180         (yylex, go_parse): Update.
3181
3182 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3183
3184         * parser-defs.h (struct type_stack) <elements>: Change type to
3185         std::vector<union type_stack_elt>.
3186         <depth, size>: Remove.
3187         * parse.c (parse_exp_in_context_1): Adjust.
3188         (type_stack_reserve): Remove.
3189         (check_type_stack_depth): Remove.
3190         (insert_into_type_stack): Adjust to std::vector.
3191         (insert_type): Likewise.
3192         (push_type): Likewise.
3193         (push_type_int): Likewise.
3194         (insert_type_address_space): Likewise.
3195         (pop_type): Likewise.
3196         (pop_type_int): Likewise.
3197         (pop_typelist): Likewise.
3198         (pop_type_stack): Likewise.
3199         (append_type_stack): Likewise.
3200         (push_type_stack): Likewise.
3201         (get_type_stack): Likewise.
3202         (type_stack_cleanup): Likewise.
3203         (push_typelist): Likewise.
3204         (follow_types): Likewise.
3205         (_initialize_parse): Likewise.
3206
3207 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3208
3209         * NEWS: Mention csky target.
3210
3211 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3212             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3213             Don Breazeal  <donb@codesourcery.com>
3214
3215         * csky-linux-tdep.c: New file.
3216         * csky-tdep.c: Likewise.
3217         * csky-tdep.h: Likewise.
3218         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3219         csky-tdep.o.
3220         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3221         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3222         * configure.tgt: Add csky support.
3223
3224 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3225
3226         * python/py-framefilter.c (py_print_frame): Print frame architecture
3227         when printing on an MI output.
3228
3229 2018-08-27  Tom Tromey  <tom@tromey.com>
3230
3231         PR build/23087:
3232         * configure: Rebuild.
3233         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3234
3235 2018-08-27  Tom Tromey  <tom@tromey.com>
3236
3237         * aarch64-linux-tdep.c
3238         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3239         casts to int.
3240
3241 2018-08-27  Tom Tromey  <tom@tromey.com>
3242
3243         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3244         unsigned.
3245         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3246         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3247         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3248         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3249         unsigned.
3250
3251 2018-08-27  Tom Tromey  <tom@tromey.com>
3252
3253         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3254         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3255
3256 2018-08-27  Tom Tromey  <tom@tromey.com>
3257
3258         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3259         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3260         ULONGEST_MAX.
3261         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3262         ULONGEST_MAX.
3263         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3264         ULONGEST_MAX.
3265         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3266         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3267         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3268         ULONGEST_MAX.
3269         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3270         (ppc64_linux_sigaction_tramp_frame)
3271         (ppc32_linux_sighandler_tramp_frame)
3272         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3273         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3274         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3275         * mn10300-linux-tdep.c (am33_linux_sigframe)
3276         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3277         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3278         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3279         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3280         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3281         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3282         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3283         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3284         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3285         * microblaze-linux-tdep.c
3286         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3287         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3288         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3289         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3290         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3291         * common/common-types.h (ULONGEST_MAX): New define.
3292         (CORE_ADDR_MAX): Fix formatting.
3293         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3294         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3295         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3296         (arm_linux_rt_sigreturn_tramp_frame)
3297         (arm_eabi_linux_sigreturn_tramp_frame)
3298         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3299         (thumb2_eabi_linux_sigreturn_tramp_frame)
3300         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3301         (arm_linux_restart_syscall_tramp_frame)
3302         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3303         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3304         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3305         ULONGEST_MAX.
3306         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3307
3308 2018-08-27  Tom Tromey  <tom@tromey.com>
3309
3310         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3311         CORE_ADDR_MAX.
3312         * mips-tdep.c (mips_deal_with_atomic_sequence)
3313         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3314         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3315         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3316         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3317         CORE_ADDR_MAX.
3318         * aarch64-tdep.c (aarch64_software_single_step): Use
3319         CORE_ADDR_MAX.
3320
3321 2018-08-27  Tom Tromey  <tom@tromey.com>
3322
3323         * linespec.c (complete_linespec_component): Add cast to "char".
3324         * completer.c (completion_tracker::build_completion_result): Add
3325         cast to "char".
3326
3327 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3328
3329         * solist.h (struct solist, struct target_so_ops): Fix
3330         indentation.
3331
3332 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3333
3334         * ada-tasks.c (ada_task_info_s): Remove typedef.
3335         (DEF_VEC_O(ada_task_info_s)): Remove.
3336         (struct ada_tasks_inferior_data): Initialize fields.
3337         <task_list>: Make an std::vector.
3338         (get_ada_tasks_inferior_data): Allocate with new.
3339         (ada_get_task_number): Adjust.
3340         (get_task_number_from_id): Likewise.
3341         (valid_task_id): Likewise.
3342         (ada_get_task_info_from_ptid): Likewise.
3343         (iterate_over_live_ada_tasks): Likewise.
3344         (add_ada_task): Likewise.
3345         (read_known_tasks): Likewise.
3346         (ada_build_task_list): Likewise.
3347         (print_ada_task_info): Likewise.
3348         (info_task): Likewise.
3349         (task_command_1): Likewise.
3350
3351 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3352
3353         * ada-lang.c (add_angle_brackets): Return std::string.
3354
3355 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3356
3357         * python/py-threadevent.c (py_get_event_thread): Initialize
3358         pythread.
3359
3360 2018-08-24  Pedro Alves  <palves@redhat.com>
3361
3362         * python/py-bpevent.c (create_breakpoint_event_object): Use
3363         copy-initialization.
3364         * python/py-continueevent.c (emit_continue_event): Use
3365         copy-initialization.
3366         * python/py-exitedevent.c (create_exited_event_object): Return a
3367         gdbpy_ref<>.
3368         (emit_exited_event): Use copy-initialization.
3369         * python/py-inferior.c (python_new_inferior)
3370         (python_inferior_deleted, add_thread_object): Use
3371         copy-initialization.
3372         * python/py-infevents.c (create_inferior_call_event_object)
3373         (create_register_changed_event_object)
3374         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3375         (emit_inferior_call_event, emit_memory_changed_event)
3376         (emit_register_changed_event): Use copy-initialization.
3377         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3378         Return a gdbpy_ref<>.
3379         (emit_new_objfile_event): Use copy-initialization.
3380         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3381         (emit_clear_objfiles_event): Use copy-initialization.
3382         * python/py-signalevent.c (create_signal_event_object): Use
3383         copy-initialization.
3384         * python/py-threadevent.c (create_thread_event_object): Use
3385         copy-initialization.
3386
3387 2018-08-24  Pedro Alves  <palves@redhat.com>
3388             Simon Marchi  <simon.marchi@ericsson.com>
3389
3390         PR gdb/23379
3391         * python/py-continueevent.c: Include "gdbthread.h".
3392         (create_continue_event_object): Add intro comment.  Add 'ptid'
3393         parameter.  Use it to find thread to pass to
3394         create_thread_event_object.
3395         (emit_continue_event): Pass PTID down to
3396         create_continue_event_object.
3397         * python/py-event.h (py_get_event_thread): Declare.
3398         (create_thread_event_object): Remove default from 'thread'
3399         parameter.
3400         * python/py-stopevent.c (create_stop_event_object): Use
3401         py_get_event_thread.
3402         * python/py-threadevent.c (get_event_thread): Rename to ...
3403         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3404         and use it to find the thread.
3405         (create_thread_event_object): Assert that THREAD isn't null.
3406         Don't find the event thread here.
3407
3408 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3409
3410         * block.h (blockrange, blockranges): New struct declarations.
3411         (struct block): Add new field named `ranges'.
3412         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3413         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3414         macros for accessing ranges in struct block.
3415         (make_blockranges): New declaration.
3416         block.c (make_blockranges): New function.
3417         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3418         for block.
3419         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3420         * blockframe.c (cache_pc_function_block): New static global.
3421         (clear_pc_function_cache): Clear cache_pc_function_block.
3422         (find_pc_partial_function): Move comment to symtab.h.  Add
3423         support for non-contiguous blocks.
3424         * cli/cli-cmds.c (block.h): Include.
3425         (print_disassembly): Handle printing of non-contiguous blocks.
3426         (disassemble_current_function): Likewise.
3427         (disassemble_command): Likewise.
3428
3429         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3430         BLOCK_START.
3431         * blockframe.c (get_pc_function_start): Likewise.
3432         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3433         (gcc_symbol_address): Likewise.
3434         * compile/compile-object-run.c (compile_object_run): Likewise.
3435         * compile/compile.c (get_expr_block_and_pc): Likewise.
3436         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3437         (func_addr_to_tail_call_list): Likewise.
3438         * findvar.c (default_read_var_value): Likewise.
3439         * inline-frame.c (inline_frame_this_id): Likewise.
3440         (skip-inline_frames): Likewise.
3441         * infcmd.c (until_next_command): Likewise.
3442         * linespec.c (convert_linespec_to_sals): Likewise.
3443         * parse.c (parse_exp_in_context_1): Likewise.
3444         * printcmd.c (build_address_symbolic): likewise.
3445         (info_address_command): Likewise.
3446         symtab.c (find_function_start_sal): Likewise.
3447         (skip_prologue_sal): Likewise.
3448         (find_function_alias_target): Likewise.
3449         (find_gnu_ifunc): Likewise.
3450         * stack.c (find_frame_funname): Likewise.
3451         * symtab.c (fixup_symbol_section): Likewise.
3452         (find_function_start_sal): Likewise.
3453         (skip_prologue_sal): Likewsie.
3454         (find_function_alias_target): Likewise.
3455         (find_gnu_ifunc): Likewise.
3456         * tracepoint.c (info_scope_command): Likewise.
3457         * value.c (value_fn_field): Likewise.
3458
3459         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3460         in place of find_pc_partial_function.
3461         * blockframe.c (find_function_entry_range_from_pc): New function.
3462         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3463         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3464         for each range in a block.
3465
3466
3467 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3468
3469         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3470         incrementation.
3471
3472 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3473
3474         * solib-svr4.c (read_program_headers_from_bfd): Return
3475         gdb::optional<gdb::byte_vector>.
3476         (svr4_exec_displacement): Adjust.
3477
3478 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3479
3480         * solib-svr4.c (read_program_header): Return
3481         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3482         (find_program_interpreter): Return
3483         gdb::optional<gdb::byte_vector>.
3484         (scan_dyntag_auxv): Adjust.
3485         (enable_break): Adjust.
3486         (svr4_exec_displacement): Adjust.
3487
3488 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3489
3490         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3491         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3492
3493 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3494
3495         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3496         string_vprintf.
3497         * guile/scm-utils.c (gdbscm_printf): Likewise.
3498         * serial.c (serial_printf): Likewise.
3499         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3500
3501 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3502
3503         * stack.c (print_frame): Print frame architecture when printing on
3504         an MI output.
3505         * NEWS: Mention new "arch" attribute in frame output.
3506
3507 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3508
3509         * arch/aarch64.h (aarch64_regnum): Update comment.
3510
3511 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3512
3513         * NEWS: Add SVE to 8.2 section.
3514
3515 2018-08-21  Pedro Alves  <palves@redhat.com>
3516
3517         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3518         out from gdbscm_parse_function_args.
3519         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3520         gdbscm_parse_function_args_1.
3521
3522 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3523
3524         PR gdb/17816
3525         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3526         operator.
3527
3528 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3529
3530         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3531
3532 2018-08-19  Michael Spang  <spang@google.com>
3533
3534         PR gdb/11786
3535         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3536         for PT_TLS segments.
3537
3538 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3539
3540         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3541         dwarf_variable_value.
3542         * dwarf2-frame.c (class dwarf_expr_executor):
3543         Add override for dwarf_variable_value.
3544         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3545         (class symbol_needs_eval_context): Likewise.
3546         (indirect_synthetic_pointer): Add forward declaration.
3547         (sect_variable_value): New function.
3548         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3549         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3550         for DW_OP_GNU_variable_value.
3551
3552 2018-08-16  Tom Tromey  <tom@tromey.com>
3553
3554         * top.c (read_command_file): Update.
3555         (command_line_input): Remove "repeat" argument.
3556         * ada-lang.c (get_selections): Update.
3557         * linespec.c (decode_line_2): Update.
3558         * defs.h (command_line_input): Remove argument.
3559         * cli/cli-script.c (read_next_line): Update.
3560         * python/py-gdb-readline.c: Update.
3561
3562 2018-08-17  Tom Tromey  <tom@tromey.com>
3563
3564         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3565         command_line_input.
3566
3567 2018-08-15  Tom Tromey  <tom@tromey.com>
3568
3569         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3570
3571 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3572
3573         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3574         If used, use find_pc_partial_function to find address range
3575         to disassemble.
3576         * mi/mi-main.c (mi_cmd_list_features): Report
3577         "data-disassemble-a-option" feature.
3578         * NEWS: Mention new -data-disassemble option -a.
3579
3580 2018-08-13  Tom Tromey  <tom@tromey.com>
3581
3582         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3583
3584 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3585
3586         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3587         (aarch64_linux_collect_sve_regset): Likewise.
3588         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3589         * regcache.h (regcache_map_entry_size): New function.
3590
3591 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3592
3593         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3594         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3595         (SVE_HEADER_VL_LENGTH): Likewise.
3596         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3597         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3598         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3599         (SVE_HEADER_SIZE_OFFSET): Likewise.
3600         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3601         (SVE_HEADER_VL_OFFSET): Likewise.
3602         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3603         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3604         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3605         (SVE_HEADER_SIZE): Likewise.
3606         (aarch64_linux_core_read_vq): Add function.
3607         (aarch64_linux_core_read_description): Check for SVE section.
3608
3609 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3610
3611         * aarch64-fbsd-tdep.c
3612         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3613         collect_size.
3614         * aarch64-linux-tdep.c
3615         (aarch64_linux_iterate_over_regset_sections): Likewise.
3616         * alpha-linux-tdep.c
3617         (alpha_linux_iterate_over_regset_sections):
3618         * alpha-nbsd-tdep.c
3619         (alphanbsd_iterate_over_regset_sections): Likewise.
3620         * amd64-fbsd-tdep.c
3621         (amd64fbsd_iterate_over_regset_sections): Likewise.
3622         * amd64-linux-tdep.c
3623         (amd64_linux_iterate_over_regset_sections): Likewise.
3624         * arm-bsd-tdep.c
3625         (armbsd_iterate_over_regset_sections): Likewise.
3626         * arm-fbsd-tdep.c
3627         (arm_fbsd_iterate_over_regset_sections): Likewise.
3628         * arm-linux-tdep.c
3629         (arm_linux_iterate_over_regset_sections): Likewise.
3630         * corelow.c (get_core_registers_cb): Likewise.
3631         (core_target::fetch_registers): Likewise.
3632         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3633         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3634         * gdbarch.h (void): Regenerate.
3635         * gdbarch.sh: Add supply_size and collect_size.
3636         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3637         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3638         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3639         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3640         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3641         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3642         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3643         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3644         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3645         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3646         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3647         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3648         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3649         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3650         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3651         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3652         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3653         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3654         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3655         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3656         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3657         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3658         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3659         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3660         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3661         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3662         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3663         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3664         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3665         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3666
3667 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3668
3669         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3670         with string_printf.
3671
3672 2018-08-10  Keith Seitz  <keiths@redhat.com>
3673
3674         * compile/compile-c-support.c (add_code_header, add_code_footer):
3675         Move into policy class.
3676         (c_push_user_expression, pop_user_expression_nop)
3677         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3678         (compile_program): New host class.
3679         (c_compile_program): New typedef.
3680         (c_compute_porgram): Use c_compile_program.
3681
3682 2018-08-10  Keith Seitz  <keiths@redhat.com>
3683
3684         * compile/compile-internal.h (compile_instance::~compile_instance):
3685         Remove calls to htab_delete.
3686         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3687         * compile.c (compile_instance::compile_instance): Initialize
3688         htab unique pointers.
3689         (compile_instance::get_cached_type, compile_instance::insert_type)
3690         (compile_instance::error_symbol_once): Update for unique_ptr.
3691
3692 2018-08-10  Keith Seitz  <keiths@redhat.com>
3693
3694         * compile/compile-c-symbols.c (struct symbol_error)
3695         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3696         (compile_instance::insert_symbol_error)
3697         (compile_instance::error_symbol_once): Move to ...
3698         * compile/compile.c: ... here.
3699
3700 2018-08-10  Keith Seitz  <keiths@redhat.com>
3701
3702         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3703         instead of `new_compile_instance'.
3704         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3705         Update description.
3706         If the symbol error map is not initialized, create it.
3707         (generate_c_for_for_one_symbol): Do not check/initialize
3708         the symbol error map.
3709         * compile/compile-c-types.c (compile_c_instance): Make a class.
3710         Update all callers.
3711         (compile_instance::compile_instance): Initialize the type cache.
3712         (get_cached_type): New function.
3713         (insert_type): Update description.
3714         (compile_c_instance::m_default_cflags): Define.
3715         (convert_type): Update description.  Use get_cached_type.
3716         (delete_instance): Moved to destructor.
3717         (new_compile_instance): Moved to constructor.
3718         * compile/compile-c.h (compile_c_instance): Make class inheriting
3719         from compile_instance.
3720         <base>: Remove field.
3721         <type_map, symbol_err_map>: Move to base class.
3722         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3723         * compile/compile-internal.h (compile_instance): Make class.
3724         <type_map_t, symbol_err_map_t>: Define.
3725         <fe>: Rename to `m_gcc_fe'.
3726         <scope, block, gcc_target_options>: Add `m_' prefix.
3727         <m_type_map, m_symbol_err_map>: New fields, moved from
3728         compile_c_instance.
3729         <destroy>: Remove.
3730         (convert_type, new_compile_instance): Remove.
3731         * compile/compile.c (cleanup_compile_instance): Remove.
3732         (compile_to_object): Use unique_ptr to eliminate cleanups.
3733         (compile_instance::set_print_callback, compile_instance::version)
3734         (compile_instance::set_verbose)
3735         (compile_instance::set_driver_filename)
3736         (compile_instance::set_triplet_regexp)
3737         (compile_instance::set_arguments)
3738         (compile_instance::set_source_file)
3739         (compile_instance::compile): Define.
3740
3741 2018-08-10  Keith Seitz  <keiths@redhat.com>
3742
3743         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3744         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3745         gcc-c-fe.def to define C plugin.
3746         (delete_instance): Delete `c_plugin'.
3747         (new_compile_instance): Initialize `c_plugin'.
3748         * compile/compile-c.h: Include gcc_c_plugin.h.
3749         (struct compile_c_instance) <c_plugin>: New member.
3750         * gcc-c-plugin.h: New file.
3751         Update all callers with API change.
3752
3753 2018-08-10  Keith Seitz  <keiths@redhat.com>
3754
3755         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3756         (HFILES_NO_SRCDIR): ... to here.
3757         Add compile-internal.h and compile-c.h.
3758         * compile/compile-c-support.c: Include compile-c.h.
3759         * compile/compile-c-symbols.c: Include compile-c.h.
3760         (generate_c_for_variable_locations): Update comment.
3761         * compile/compile-c-types.c: Include compile-c.h.
3762         * compile/compile-c.h: New file -- moved C language declarations
3763         from other files here.
3764         * compile/compile-internal.h: Do not include hashtab.h or
3765         common/enum-flags.h.
3766         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3767         (gcc_convert_symbol, gcc_symbol_address)
3768         (generate_c_for_variable_locations, c_get_mode_for_size)
3769         (c_get_range_decl_name): Definitions moved to compile-c.h.
3770         * compile/compile-loc2c.c: Include compile-c.h.
3771
3772 2018-08-10  Keith Seitz  <keiths@redhat.com>
3773
3774         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3775         (c_symbol_substitution_name): ... this.
3776         Update all callers.
3777
3778 2018-08-10  Keith Seitz  <keiths@redhat.com>
3779
3780         * compile/compile-c-support.c (c_compute_program): Use
3781         unique_xmalloc_ptr to eliminate cleanup.
3782         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3783         Return a unique_xmalloc_ptr and eliminate cleanup.
3784         * compile/compile-internal.h (generate_c_for_variable_locations):
3785         Return unique_xmalloc_ptr and update description.
3786
3787 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3788
3789         * corelow.c (core_target::get_core_register_section): Rename
3790         min_size to section_min_size.
3791
3792 2018-08-09  Jim Wilson  <jimw@sifive.com>
3793
3794         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3795         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3796         * NEWS: Mention new GNU/Linux RISC-V target.
3797         * configure.host: Add riscv*-*-linux*.
3798         * configure.nat: Add riscv*.
3799         * configure.tgt: Add riscv*-*-linux*.
3800         * riscv-linux-nat.c: New file.
3801         * riscv-linux-tdep.c: New file.
3802
3803 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3804
3805         * infrun.c (resume): Make static, add forward declaration.
3806         (proceed): Update header comment.
3807         * infrun.h (resume): Delete declaration.
3808
3809 2018-08-09  Tom Tromey  <tom@tromey.com>
3810
3811         * riscv-tdep.h: Minor formatting fixes.
3812
3813 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3814
3815         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3816         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3817         (test_mkdir_recursive): Likewise.
3818         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3819
3820 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3821
3822         * valarith.c (value_subscripted_rvalue): If an array is not in
3823         memory, and we don't know the upper bound, then we can't know that
3824         the requested element exists or not.
3825
3826 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3827
3828         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3829         (target_options_to_string): Add comment.
3830
3831 2018-08-08  Tom Tromey  <tom@tromey.com>
3832
3833         * unittests/scoped_mmap-selftests.c: Check result of "write".
3834
3835 2018-08-08  Jim Wilson  <jimw@sifive.com>
3836
3837         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3838         (decode_register_index_short): New.
3839         (decode_j_type_insn, decode_cj_type_insn): New.
3840         (decode_b_type_insn, decode_cb_type_insn): New.
3841         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3842         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3843         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3844         is_c_sw_insn instead of is_sw_insn.
3845         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3846         (riscv_software_single_step): New.
3847         * riscv-tdep.h (riscv_software_single_step): Declare.
3848
3849         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3850         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3851
3852 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3853
3854         PR gdb/18050:
3855         * target.c (dispose_inferior): Don't dispose of inferiors that are
3856         already killed.
3857
3858 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3859
3860         * remote.c (remote_target::download_tracepoint): Change char* to
3861         const char*.
3862
3863 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3864
3865         * target.h (target_options_to_string): Return an std::string.
3866         * target.c (str_comma_list_concat_elem): Return void, use
3867         std::string.
3868         (do_option): Likewise.
3869         (target_options_to_string): Return an std::string.
3870         * linux-nat.c (linux_nat_target::wait): Adjust.
3871         * target-debug.h (target_debug_print_options): Adjust.
3872
3873 2018-08-07  Tom Tromey  <tom@tromey.com>
3874
3875         * Makefile.in (CPPFLAGS): New variable.
3876         (INTERNAL_CPPFLAGS): Use it.
3877
3878 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3879
3880         * NEWS: Mention the index cache.
3881
3882 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3883
3884         * common/pathstuff.h (get_standard_cache_dir): New.
3885         * common/pathstuff.c (get_standard_cache_dir): New.
3886         * build-id.h (build_id_to_string): New.
3887         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3888         DEBUG_STR_SUFFIX): Move to here.
3889         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3890         DEBUG_STR_SUFFIX): Move from there.
3891         (write_psymtabs_to_index): Make non-static, add basename
3892         parameter.  Write to temporary files, rename when done.
3893         (save_gdb_index_command): Adjust call to
3894         write_psymtabs_to_index.
3895         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3896         field.
3897         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3898         (get_gdb_index_contents_from_cache): New.
3899         (get_gdb_index_contents_from_cache_dwz): New.
3900         (dwarf2_initialize_objfile): Read index from cache.
3901         (dwarf2_build_psymtabs): Save to index.
3902         * dwarf-index-cache.h: New file.
3903         * dwarf-index-cache.c: New file.
3904         * dwarf-index-write.h: New file.
3905
3906 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3907
3908         * gnulib/aclocal.m4: Re-generate.
3909         * gnulib/config.in: Re-generate.
3910         * gnulib/configure: Re-generate.
3911         * gnulib/import/Makefile.am: Re-generate.
3912         * gnulib/import/Makefile.in: Re-generate.
3913         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3914         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3915         * gnulib/import/m4/mkdir.m4: New file.
3916         * gnulib/import/mkdir.c: New file.
3917         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3918         module.
3919
3920 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3921
3922         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3923         * common/scoped_mmap.c: New file.
3924         * common/scoped_mmap.h (destroy): New method.
3925         (~scoped_mmap, reset): Use destroy.
3926         (scoped_mmap): New move constructor.
3927         (mmap_file): New declaration.
3928         * unittests/scoped_mmap-selftests.c (test_normal,
3929         test_invalid_filename, run_tests): New functions.
3930         (_initialize_scoped_mmap_selftests): Register selftest.
3931
3932 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3933
3934         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3935         (read_gdb_index_from_buffer): ... this.  Remove section
3936         parameter, add buffer parameter.
3937         (get_gdb_index_contents_ftype,
3938         get_gdb_index_contents_dwz_ftype): New typedefs.
3939         (dwarf2_read_gdb_index): Add callback parameters to get the
3940         index contents.
3941         (get_gdb_index_contents_from_section): New.
3942         (dwarf2_initialize_objfile): Update call to
3943         dwarf2_read_gdb_index.
3944
3945 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3946
3947         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3948         (gdb_open_cloexec): Likewise.
3949         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3950         (commandline_from_pid): Likewise.
3951         (linux_xfer_osdata_threads): Likewise.
3952         (linux_xfer_osdata_fds): Likewise.
3953         * ada-lang.c (is_package_name): Likewise.
3954         * auxv.c (procfs_xfer_auxv): Likewise.
3955         * breakpoint.c (print_one_breakpoint_location): Use
3956         uiout::field_fmt.
3957         (print_one_catch_solib): Use string_printf.
3958         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3959         (add_pe_forwarded_sym): Likewise.
3960         * dwarf2read.c (create_type_unit_group): Likewise.
3961         (build_error_marker_type): Likewise.
3962         * infcall.c (get_function_name): Likewise.
3963         * valprint.c (print_converted_chars_to_obstack): Likewise.
3964         * xtensa-tdep.c (xtensa_register_type): Likewise.
3965
3966 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3967
3968         * remote.c (remote_target::download_tracepoint): Fix format
3969         string errors.
3970
3971 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3972
3973         * tracefile.c: Include common/byte-vector.h.
3974         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3975         with trace_regblock_size if needed.  Update uses of buf.
3976
3977 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3978
3979         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3980         std::vector<unsigned char>.
3981         * tracepoint.c (collection_list::collection_list): Remove
3982         m_regs_mask initializer from initializer list.  Resize
3983         m_regs_mask using the largest remote register number.
3984         (collection_list::add_remote_register): Remove size check on
3985         m_regs_mask.  Use at to access element.
3986         (collection_list::stringify): Change type of temp_buf to
3987         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3988         stringify the register mask.  Use pack_hex_byte for the register
3989         mask.
3990
3991 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3992
3993         * tracepoint.h (class collection_list) <add_register>: Remove.
3994         <add_remote_register, add_ax_registers, add_local_register>:
3995         Declare.
3996         <add_memrange>: Add scope parameter.
3997         * tracepoint.c (encode_actions_1): Likewise.
3998         (collection_list::add_register): Rename to ...
3999         (collection_list::add_remote_register): ... this.  Update
4000         comment.
4001         (collection_list::add_ax_registers, add_local_register): New
4002         methods.
4003         (collection_list::add_memrange): Add scope parameter.  Call
4004         add_local_register instead of add_register.
4005         (finalize_tracepoint_aexpr): New function.
4006         (collection_list::collect_symbol): Update calls to add_memrange.
4007         Call add_local_register instead of add_register.  Call
4008         add_ax_registers.  Call finalize_tracepoint_aexpr.
4009         (encode_actions_1): Get remote regnos for $reg action.  Call
4010         add_remote_register, add_ax_registers, and add_local_register.
4011         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4012         (validate_actionline): Call finalize_tracepoint_aexpr.
4013
4014 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4015
4016         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4017         Replace array buf with gdb::char_vector buf, of size
4018         get_remote_packet_size ().  Replace references to buf and
4019         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4020         and xsnprintf with snprintf.  Raise errors if the buffer is too
4021         small.
4022
4023 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4024
4025         * remote.c (remote_target::download_tracepoint): Fix the has_more
4026         predicate in the QTDP action list iteration.
4027
4028 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4029
4030         * remote.c (remote_target::download_tracepoint): Fix indentation
4031         in for block.
4032
4033 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4034
4035         * proc-api.c (_initialize_proc_api): Remove c, unused.
4036         * procfs.c (procfs_init_inferior): Remove signals, unused.
4037         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4038         unused.
4039
4040 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4041             Andrew Burgess  <andrew.burgess@embecosm.com>
4042
4043         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4044         'W_STOPCODE (0)' as this could be ambiguous.
4045
4046 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4047
4048         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4049         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4050         "ai_socktype").
4051
4052 2018-08-02  Tom Tromey  <tom@tromey.com>
4053
4054         PR symtab/16842.
4055         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4056         symbols.
4057         (process_structure_scope): Likewise.
4058
4059 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4060
4061         PR gdb/22629:
4062         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4063         kill inferior.
4064
4065 2018-08-02  Tom Tromey  <tom@tromey.com>
4066
4067         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4068         (darwin_suspend_inferior, darwin_resume_inferior)
4069         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4070         (darwin_check_new_threads): Check result of get_darwin_inferior.
4071
4072 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4073
4074         GDB 8.1.1 released.
4075
4076 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4077
4078         * varobj.c (varobj_get_path_expr_parent): Report an error if
4079         parent is a dynamic varobj.
4080
4081 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4082
4083         * gnulib/aclocal.m4: Re-generate.
4084         * gnulib/config.in: Re-generate.
4085         * gnulib/configure: Re-generate.
4086         * gnulib/import/Makefile.in: Re-generate.
4087         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4088         * gnulib/import/m4/onceonly.m4: Re-generate.
4089
4090 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4091
4092         * target-descriptions.c (struct xml_test_tdesc): New.
4093         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4094         (record_xml_tdesc): Update.
4095         (maintenance_check_xml_descriptions): Update.
4096         * target-descriptions.h (record_xml_tdesc): Update comment.
4097
4098 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4099
4100         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4101         checking array bounds are defined.
4102
4103 2018-07-30  Tom Tromey  <tom@tromey.com>
4104
4105         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4106         irreflexivity violation.
4107
4108 2018-07-30  Tom Tromey  <tom@tromey.com>
4109
4110         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4111         * value.c (unpack_long): Remove lint code.
4112         * valops.c (value_ind): Remove lint code.
4113         * valarith.c (value_x_binop, value_x_unop, value_equal)
4114         (value_pos): Remove lint code.
4115
4116 2018-07-28  Tom de Vries  <tdevries@suse.de>
4117
4118         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4119         with undefined upper bound as <optimized out>.
4120
4121 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4122
4123         * gcore.in: Rename variable "name" to "prefix".  Expand
4124         "usage" text.
4125
4126 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4127
4128         * windows-nat.c (windows_nat_target::create_inferior): Update to
4129         call close() in global namespace.
4130
4131 2018-07-26  Tom Tromey  <tom@tromey.com>
4132
4133         * dwarf-index-write.c (add_address_entry): Don't add objfile
4134         offsets.
4135         * dbxread.c (find_stab_function): Rename from
4136         find_stab_function_addr.  Return a bound_minimal_symbol.
4137         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4138         Don't add objfile offsets.
4139         (end_psymtab): Use raw_text_low, raw_text_high,
4140         MSYMBOL_VALUE_RAW_ADDRESS.
4141         (read_ofile_symtab): Update.
4142         (process_one_symbol): Update.
4143         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4144         offsets.
4145         (dw2_relocate): Remove.
4146         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4147         searching addrmap.
4148         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4149         Update.
4150         (process_psymtab_comp_unit_reader, add_partial_symbol)
4151         (add_partial_subprogram, dwarf2_ranges_read): Update.
4152         (load_partial_dies): Update.
4153         (add_address_entry): Don't add objfile offsets.
4154         (dwarf2_build_include_psymtabs): Update.
4155         (create_addrmap_from_aranges): Don't add objfile offsets.
4156         (dw2_find_pc_sect_compunit_symtab): Update.
4157         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4158         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4159         Update.
4160         (parse_partial_symbols): Don't add objfile offsets.  Use
4161         raw_text_low, raw_text_high.  Update.
4162         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4163         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4164         or call 'relocate' quick function.  Clear psymbol_map.
4165         * psympriv.h (struct partial_symbol) <address>: Add section
4166         offset.
4167         <set_unrelocated_address>: Rename from set_address.
4168         <raw_text_low, raw_text_high>: New methods.
4169         <text_low, text_high>: Add objfile parameter.
4170         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4171         set_unrelocated_address.
4172         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4173         (find_pc_psymbol): Update.
4174         (fixup_psymbol_section, relocate_psymtabs): Remove.
4175         (dump_psymtab, psym_functions): Update.
4176         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4177         parameter.
4178         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4179         (start_psymtab_common): Update.
4180         * symfile-debug.c (debug_qf_relocate): Remove.
4181         (debug_sym_quick_functions): Update.
4182         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4183         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4184         Update.
4185
4186 2018-07-26  Tom Tromey  <tromey@redhat.com>
4187
4188         * dbxread.c (end_psymtab): Use text_high_valid and
4189         text_low_valid.
4190         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4191         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4192         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4193         Update comment.
4194         <text_low_valid, text_high_valid>: New fields.
4195         <set_text_low, set_text_high>: Update.
4196         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4197
4198 2018-07-26  Tom Tromey  <tom@tromey.com>
4199
4200         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4201         Update.
4202         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4203         textlow and texthigh fields.
4204         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4205         Update.
4206         * mdebugread.c (parse_lines, parse_partial_symbols)
4207         (psymtab_to_symtab_1): Update.
4208         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4209         Rename fields.  Update comment.  Now private.
4210         <text_low, text_high, set_text_low, set_text_high>: New methods.
4211         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4212         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4213         (start_psymtab_common, maintenance_info_psymtabs)
4214         (maintenance_check_psymtabs): Update.
4215         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4216         texthigh fields.
4217         (scan_xcoff_symtab): Update.
4218
4219 2018-07-26  Tom Tromey  <tromey@redhat.com>
4220
4221         * psympriv.h (struct partial_symbol) <unrelocated_address,
4222         address, set_address>: New methods.
4223         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4224         (fixup_psymbol_section, relocate_psymtabs): Update.
4225         (print_partial_symbols): Add 'objfile' parameter.  Update.
4226         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4227         Update.
4228
4229 2018-07-26  Tom Tromey  <tom@tromey.com>
4230
4231         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4232         (debug_names::write_psymbols): Update.
4233         * psympriv.h (struct partial_symbol): Derive from
4234         general_symbol_info.
4235         <obj_section>: New method.
4236         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4237         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4238         (find_pc_sect_psymbol, fixup_psymbol_section)
4239         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4240         (print_partial_symbols, recursively_search_psymtabs)
4241         (compare_psymbols, psymbol_hash, psymbol_compare)
4242         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4243         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4244
4245 2018-07-26  Tom Tromey  <tromey@redhat.com>
4246
4247         * dbxread.c (end_psymtab): Remove dead code.
4248
4249 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4250
4251         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4252         DWARF unwinders are disabled.
4253         * dwarf2-frame.c: Add dwarf2read.h include.
4254         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4255         disabled.
4256         (dwarf2_frame_unwinders_enabled_p): Define.
4257         (show_dwarf_unwinders_enabled_p): New function.
4258         (_initialize_dwarf2_frame): Register switch to control DWARF
4259         unwinder use.
4260         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4261         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4262         (show_dwarf_cmdlist): Remove static keyword.
4263         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4264         (show_dwarf_cmdlist): Declare.
4265         * NEWS: Document new feature.
4266
4267 2018-07-26  Tom de Vries  <tdevries@suse.de>
4268
4269         PR breakpoints/23366
4270         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4271
4272 2018-07-26  Tom de Vries  <tdevries@suse.de>
4273
4274         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4275         DW_AT_count can't be translated to a dynamic prop.
4276
4277 2018-07-25  Tom de Vries  <tdevries@suse.de>
4278
4279         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4280         try/catch.
4281
4282 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4283
4284         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4285
4286 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4287
4288         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4289
4290 2018-07-24  Keith Seitz  <keiths@redhat.comt
4291
4292         PR symtab/23010
4293         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4294         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4295         instead of add_symbol_to_list.
4296         (read_file_scope): Call prepare_one_comp_unit before reading
4297         any other DIEs.
4298
4299 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4300
4301         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4302
4303 2018-07-24  Tom Tromey  <tom@tromey.com>
4304
4305         * utils.c (malloc, realloc, free): Don't declare.
4306         * configure, config.in: Rebuild.
4307         * configure.ac: Don't check for declarations of free, malloc, or
4308         realloc.
4309
4310 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4311
4312         * aarch64-linux-nat.c
4313         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4314         variable.
4315         * arm-linux-nat.c (fetch_regs): Likewise.
4316         (store_regs): Likewise.
4317         (fetch_vfp_regs): Likewise.
4318         (store_vfp_regs): Likewise.
4319         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4320         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4321         (arm_linux_nat_target::insert_watchpoint): Likewise.
4322         (arm_linux_nat_target::remove_watchpoint): Likewise.
4323         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4324         Likewise.
4325         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4326         Likewise.
4327         * ppc-linux-nat.c (fetch_register): Likewise.
4328         (fetch_all_gp_regs): Likewise.
4329         (fetch_ppc_registers): Likewise.
4330         (store_all_gp_regs): Likewise.
4331         (store_ppc_registers): Likewise.
4332         (hwdebug_insert_point): Likewise.
4333         (can_use_watchpoint_cond_accel): Likewise.
4334         * remote-sim.c (gdb_os_write_stdout): Likewise.
4335
4336 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4337             Tom Tromey  <tom@tromey.com>
4338
4339         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4340         test for it.
4341         * configure: Rebuild.
4342
4343 2018-07-22  Tom Tromey  <tom@tromey.com>
4344
4345         * regformats/regdat.sh: Define xmltarget_${name} inside
4346         #ifndef IN_PROCESS_AGENT.
4347
4348 2018-07-22  Tom Tromey  <tom@tromey.com>
4349
4350         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4351
4352 2018-07-22  Tom Tromey  <tom@tromey.com>
4353
4354         * symfile.c (reread_symbols): Notify iter, not objfile.
4355
4356 2018-07-22  Tom Tromey  <tom@tromey.com>
4357
4358         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4359         Use arch_ops.
4360         (ravenscar_thread_target::prepare_to_store): Likewise.
4361
4362 2018-07-22  Tom Tromey  <tom@tromey.com>
4363
4364         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4365         unused variable.  Call value_fetch_lazy when needed.
4366         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4367         Remove unused variable.  Call value_fetch_lazy when needed.
4368
4369 2018-07-22  Tom Tromey  <tom@tromey.com>
4370
4371         * m32c-tdep.c (mark_dma): Return void.
4372         (make_regs): Remove unused declarations.
4373
4374 2018-07-22  Tom Tromey  <tom@tromey.com>
4375
4376         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4377         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4378         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4379         bkscm_get_valid_block_smob_arg_unsafe for effect.
4380
4381 2018-07-22  Tom Tromey  <tom@tromey.com>
4382
4383         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4384         value_type.
4385
4386 2018-07-22  Tom Tromey  <tom@tromey.com>
4387
4388         * windows-nat.c (saved_context): Conditionally define.
4389         * remote.c (remote_target::remote_btrace_maybe_reopen):
4390         Conditionally declare "warned".
4391         * inflow.c (sigquit_ours): Conditionally define.
4392         (new_tty): Move "tty" declaration inside #if.
4393         * guile/guile.c (guile_datadir): Conditionally define.
4394         * charset.c (set_be_le_names): Move some declarations inside #if.
4395         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4396         #if.
4397         (parse_xml_btrace_conf): Likewise.
4398
4399 2018-07-22  Tom Tromey  <tom@tromey.com>
4400
4401         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4402
4403 2018-07-22  Tom Tromey  <tom@tromey.com>
4404
4405         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4406         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4407         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4408         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4409         * stack.c (frame_apply_level_command): Remove unused variable.
4410         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4411         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4412         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4413         unused variable.
4414         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4415         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4416         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4417         variable.
4418         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4419         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4420         variable.
4421         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4422         Remove unused variable.
4423         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4424         variable.
4425         * common/tdesc.c (print_xml_feature::visit): Remove unused
4426         variable.
4427         * compile/compile-object-load.c (store_regs): Remove unused
4428         variables.
4429         * complaints.c (clear_complaints): Remove unused variable.
4430         * corelow.c (core_target_open): Remove unused variable.
4431         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4432         variable.
4433         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4434         variable.
4435         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4436         variable.
4437         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4438         variable.
4439         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4440         variable.
4441         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4442         variable.
4443         * ia64-tdep.c (examine_prologue): Remove unused variable.
4444         * infcall.c (run_inferior_call): Remove unused variable.
4445         * inferior.c (exit_inferior): Remove unused variable.
4446         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4447         * linespec.c (decode_line_2): Remove unused variable.
4448         * linux-nat.c (super_close): Remove.
4449         * linux-tdep.c (linux_info_proc): Remove unused variable.
4450         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4451         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4452         Remove unused variable.
4453         * parse.c (find_minsym_type_and_address): Remove unused variable.
4454         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4455         variable.
4456         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4457         variable.
4458         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4459         variables.
4460         * record-btrace.c (record_btrace_target::store_registers): Remove
4461         unused variable.
4462         (cmd_show_record_btrace_cpu): Remove unused variable.
4463         * riscv-tdep.c (riscv_register_reggroup_p)
4464         (riscv_push_dummy_call, riscv_return_value): Remove unused
4465         variable.
4466         * rust-exp.y (literal): Remove unused variable.
4467         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4468         unused variable.
4469         <STRUCTOP_ANONYMOUS>: Likewise.
4470         * s390-linux-tdep.c (s390_linux_init_abi_31)
4471         (s390_linux_init_abi_64): Remove unused variable.
4472         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4473         (file_select_thread, net_windows_open, _initialize_ser_windows):
4474         Remove unused variables.
4475         * symtab.c (find_pc_sect_line): Remove unused variable.
4476         * target-memory.c (compute_garbled_blocks): Remove unused
4477         variable.
4478         (target_write_memory_blocks): Remove unused variable.
4479         * target.c (target_stack::unpush): Remove unused variables.
4480         * tracepoint.c (start_tracing, all_tracepoint_actions)
4481         (merge_uploaded_trace_state_variables)
4482         (print_one_static_tracepoint_marker): Remove unused variable.
4483         * unittests/basic_string_view/element_access/char/1.cc (test01):
4484         Remove unused variable.
4485         * windows-nat.c (windows_continue, windows_add_all_dlls)
4486         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4487         Remove unused variables.
4488
4489 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4490
4491         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4492         attr_profile in HAVE_ELF.
4493         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4494         HAVE_ELF.
4495
4496 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4497
4498         * frame.c (frame_register_unwind): Change parameter name.
4499         (frame_unwind_register): Likewise.
4500         (frame_unwind_register_value): Likewise.
4501         (frame_unwind_register_signed): Likewise.
4502         (frame_unwind_register_unsigned): Likewise.
4503         * frame.h (frame_register_unwind): Likewise.
4504         (frame_unwind_register): Likewise.
4505         (frame_unwind_register_value): Likewise.
4506         (frame_unwind_register_signed): Likewise.
4507         (frame_unwind_register_unsigned): Likewise.
4508         (frame_unwind_arch): Likewise.
4509
4510 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4511
4512         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4513         ISA maintenance.
4514
4515 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4516
4517         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4518         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4519         hand.
4520
4521 2018-07-20  Keith Seitz  <keiths@redhat.com>
4522
4523         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4524         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4525         m_compunit_symtab, m_language>: Add "m_" prefix.
4526         Update all uses.
4527         * buildsym.c: Update all uses.
4528
4529 2018-07-20  Tom Tromey  <tom@tromey.com>
4530
4531         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4532         * buildsym.h (record_line_ftype): Remove typedef.
4533
4534 2018-07-20  Tom Tromey  <tom@tromey.com>
4535
4536         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4537         (end_expandable_symtab): Likewise.
4538         (end_symtab_get_static_block): Likewise.
4539         (end_symtab_from_static_block): Likewise.
4540         * buildsym-legacy.c (augment_type_symtab): Remove.
4541         (end_expandable_symtab): Remove.
4542         (end_symtab_get_static_block): Remove.
4543         (end_symtab_from_static_block): Remove.
4544
4545 2018-07-20  Tom Tromey  <tom@tromey.com>
4546
4547         * dwarf2read.c: Include buildsym.h.
4548         (struct dwarf2_cu) <builder>: New method.
4549         (fixup_go_packaging): Update.
4550         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4551         use scoped_free_pendings.
4552         (using_directives): Add "cu" parameter, remove "language".
4553         (read_import_statement, setup_type_unit_groups, )
4554         (read_func_scope, read_lexical_block_scope)
4555         (dwarf2_record_block_ranges, read_namespace): Update.
4556         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4557         (lnp_state_machine::handle_end_sequence): Update.
4558         (class lnp_state_machine) <m_cu>: New member.
4559         <m_record_line_callback>: Remove.
4560         <m_currently_recording_lines>: New member.
4561         (lnp_state_machine::handle_set_file): Update.
4562         (noop_record_line): Remove.
4563         (dwarf_record_line_p): Add cu parameter.
4564         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4565         (lnp_state_machine::record_line)
4566         (lnp_state_machine::lnp_state_machine)
4567         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4568         (dwarf_decode_lines): Update.
4569         (dwarf2_start_subfile): Add cu parameter.
4570         (dwarf2_start_symtab, new_symbol): Update.
4571         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4572         Remove dwarf2_per_objfile parameter.
4573         (dwarf_decode_macros): Update.
4574
4575 2018-07-20  Tom Tromey  <tom@tromey.com>
4576
4577         * stabsread.c (define_symbol): Update.
4578         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4579         * dwarf2read.c (new_symbol): Update.
4580         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4581         * cp-namespace.c: Include buildsym.h.
4582         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4583         * buildsym-legacy.c (get_buildsym_compunit): New function.
4584
4585 2018-07-20  Tom Tromey  <tom@tromey.com>
4586
4587         * xcoffread.c: Include buildsym-legacy.h.
4588         * windows-nat.c: Include buildsym-legacy.h.
4589         * stabsread.c: Include buildsym-legacy.h.
4590         * mdebugread.c: Include buildsym-legacy.h.
4591         * buildsym-legacy.h: New file.
4592         * buildsym-legacy.c: New file, from buildsym.c.
4593         * go32-nat.c: Include buildsym-legacy.h.
4594         * dwarf2read.c: Include buildsym-legacy.h.
4595         * dbxread.c: Include buildsym-legacy.h.
4596         * cp-namespace.c: Include buildsym-legacy.h.
4597         * coffread.c: Include buildsym-legacy.h.
4598         * buildsym.h: Move some contents to buildsym-legacy.h.
4599         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4600         buildsym-legacy.c.
4601         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4602
4603 2018-07-20  Tom Tromey  <tom@tromey.com>
4604
4605         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4606         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4607         (buildsym_compunit::buildsym_compunit)
4608         (buildsym_compunit::~buildsym_compunit)
4609         (buildsym_compunit::get_macro_table): Define.
4610
4611 2018-07-20  Tom Tromey  <tom@tromey.com>
4612
4613         * buildsym.c (reset_symtab_globals): Remove.
4614         (buildsym_compunit::end_symtab_from_static_block): Update.
4615         (buildsym_compunit::augment_type_symtab): Update.
4616         (end_symtab_from_static_block): Call free_buildsym_compunit.
4617         (augment_type_symtab, end_symtab, end_expandable_symtab):
4618         Likewise.
4619
4620 2018-07-20  Tom Tromey  <tom@tromey.com>
4621
4622         * arch-utils.c: Do not include buildsym.h.
4623         * mipsread.c: Do not include buildsym.h.
4624         * machoread.c: Do not include buildsym.h.
4625         * elfread.c: Do not include buildsym.h.
4626
4627 2018-07-20  Tom Tromey  <tom@tromey.com>
4628
4629         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4630         initialization.
4631         (buildsym_compunit): Add new constructor.
4632         (struct buildsym_compunit) <get_last_source_file, finish_block,
4633         record_block_range, start_subfile, patch_subfile_names,
4634         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4635         set_last_source_start_addr, get_last_source_start_addr,
4636         get_local_using_directives, set_local_using_directives,
4637         get_global_using_directives, outermost_context_p,
4638         get_current_context_stack, get_context_stack_depth,
4639         get_current_subfile, get_local_symbols, get_file_symbols,
4640         get_global_symbols, record_debugformat, record_producer,
4641         push_context, pop_context, end_symtab_get_static_block,
4642         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4643         New public methods.
4644         <record_pending_block, finish_block_internal, make_blockvector,
4645         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4646         private methods.
4647         Update all users.
4648
4649 2018-05-22  Tom Tromey  <tom@tromey.com>
4650
4651         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4652         parameter.
4653         (finish_block_internal): Update.
4654
4655 2018-07-20  Tom Tromey  <tom@tromey.com>
4656
4657         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4658         parameter.
4659         (finish_block_internal): Update.
4660
4661 2018-07-20  Tom Tromey  <tom@tromey.com>
4662
4663         * buildsym.h (EXTERN): Don't define or undef.
4664         * buildsym.c (EXTERN): Don't define.
4665
4666 2018-07-20  Tom Tromey  <tom@tromey.com>
4667
4668         * buildsym.c: Remove TODO comment.
4669
4670 2018-07-20  Tom Tromey  <tom@tromey.com>
4671
4672         * coffread.c (coff_symtab_read): Update.
4673         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4674         (xcoff_new_init): Update.
4675         * mipsread.c (mipscoff_new_init): Update.
4676         * mdebugread.c (mdebug_build_psymtabs): Update.
4677         * elfread.c (elf_new_init): Update.
4678         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4679         Update.
4680         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4681         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4682         (stabsect_build_psymtabs): Update.
4683         * buildsym.h (buildsym_init): Don't declare.
4684         * buildsym.c: Update comment.
4685         (prepare_for_building): Remove.
4686         (start_symtab, restart_symtab): Update.
4687         (reset_symtab_globals): Update comment.
4688         (buildsym_init): Remove.
4689
4690 2018-07-20  Tom Tromey  <tom@tromey.com>
4691
4692         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4693         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4694         (read_enum_type, common_block_start, common_block_end)
4695         (cleanup_undefined_types_1, finish_global_stabs): Update.
4696         * mdebugread.c (psymtab_to_symtab_1): Update.
4697         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4698         (read_lexical_block_scope, new_symbol): Update.
4699         * dbxread.c (process_one_symbol): Update.
4700         * coffread.c (coff_symtab_read, process_coff_symbol)
4701         (coff_read_enum_type): Update.
4702         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4703         declare.
4704         (get_local_symbols, get_file_symbols, get_global_symbols): New
4705         functions.
4706         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4707         m_global_symbols.
4708         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4709         (~scoped_free_pendings): Update.
4710         (finish_block, prepare_for_building, reset_symtab_globals)
4711         (end_symtab_get_static_block, end_symtab_with_blockvector)
4712         (augment_type_symtab, push_context): Update.
4713         (get_local_symbols, get_file_symbols, get_global_symbols): New
4714         functions.
4715         (buildsym_init): Update.
4716
4717 2018-07-20  Tom Tromey  <tom@tromey.com>
4718
4719         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4720         (process_full_type_unit): Likewise.
4721         (dwarf2_start_symtab): Set list_in_scope.
4722
4723 2018-07-20  Tom Tromey  <tom@tromey.com>
4724
4725         * dwarf2read.c (process_psymtab_comp_unit_reader)
4726         (build_type_psymtabs_reader): Do not set list_in_scope.
4727
4728 2018-07-20  Tom Tromey  <tom@tromey.com>
4729
4730         * buildsym.c (free_pendings): Remove.
4731         (add_symbol_to_list, scoped_free_pendings)
4732         (finish_block_internal, buildsym_init): Update.
4733
4734 2018-07-20  Tom Tromey  <tom@tromey.com>
4735
4736         * xcoffread.c (read_xcoff_symtab): Update.
4737         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4738         Update.
4739         * dbxread.c (process_one_symbol): Update.
4740         * coffread.c (coff_symtab_read): Update.
4741         * buildsym.h (finish_block): Update.
4742         * buildsym.c (finish_block): Remove "listhead" argument.
4743         (end_symtab_get_static_block): Update.
4744
4745 2018-07-20  Tom Tromey  <tom@tromey.com>
4746
4747         * buildsym.h (class scoped_free_pendings): Remove constructor.
4748         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4749         method.
4750         <m_pending_block_obstack, m_pending_blocks>: New members.
4751         (pending_block_obstack, pending_blocks): Remove.
4752         (scoped_free_pendings::scoped_free_pendings): Default.
4753         (~scoped_free_pendings): Update.
4754         (free_pending_blocks): Remove.
4755         (finish_block_internal, record_pending_block, make_blockvector)
4756         (end_symtab_get_static_block, augment_type_symtab, push_context)
4757         (buildsym_init): Update.
4758
4759 2018-07-20  Tom Tromey  <tom@tromey.com>
4760
4761         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4762         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4763         members.
4764         (pending_addrmap, pending_addrmap_obstack)
4765         (pending_addrmap_interesting): Remove.
4766         (scoped_free_pendings, record_block_range, make_blockvector)
4767         (prepare_for_building, reset_symtab_globals, buildsym_init):
4768         Update.
4769
4770 2018-07-20  Tom Tromey  <tom@tromey.com>
4771
4772         * xcoffread.c (process_linenos): Update.
4773         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4774         * mdebugread.c (psymtab_to_symtab_1): Update.
4775         * dwarf2read.c (setup_type_unit_groups)
4776         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4777         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4778         * dbxread.c (process_one_symbol): Update.
4779         * coffread.c (coff_symtab_read, enter_linenos)
4780         (process_coff_symbol): Update.
4781         * buildsym.h (current_subfile): Don't declare.
4782         (get_current_subfile): Declare.
4783         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4784         member.
4785         (start_subfile, free_buildsym_compunit, push_subfile)
4786         (prepare_for_building, start_symtab): Update.
4787         (get_current_subfile): New function.
4788
4789 2018-07-20  Tom Tromey  <tom@tromey.com>
4790
4791         * coffread.c (coff_symtab_read): Update.
4792         * xcoffread.c (read_xcoff_symtab): Update.
4793         * dwarf2read.c (new_symbol): Update.
4794         (read_func_scope, read_lexical_block_scope): Update.
4795         * dbxread.c (process_one_symbol): Update.
4796         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4797         (outermost_context_p): Remove macro.
4798         (outermost_context_p, get_current_context_stack)
4799         (get_context_stack_depth): Declare.
4800         (pop_context): Return struct context_stack.
4801         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4802         member.
4803         (context_stack_size): Remove.
4804         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4805         (prepare_for_building, end_symtab_get_static_block)
4806         (augment_type_symtab, push_context): Update.
4807         (pop_context): Return struct context_stack.
4808         (outermost_context_p, get_current_context_stack)
4809         (get_context_stack_depth): New functions.
4810         (buildsym_init): Update.
4811
4812 2018-07-20  Tom Tromey  <tom@tromey.com>
4813
4814         * rust-exp.y: Now a pure parser.  Update all rules.
4815         (%union): Move earlier.
4816         (current_parser, work_obstack): Remove globals.
4817         (rust_parser, ~rust_parser): Update.
4818         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4819         lex_character, lex_number, lex_string, lex_identifier,
4820         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4821         convert_name, convert_params_to_expression,
4822         convert_ast_to_expression, ast_basic_type, ast_operation,
4823         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4824         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4825         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4826         ast_array_type, ast_slice_type, ast_reference_type,
4827         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4828         (rust_parse): Update.
4829         (rustyyerror, rustyylex): Add parser parameter.
4830         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4831         (rust_lex_stringish_test, rust_lex_test_sequence)
4832         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4833         (rust_lex_test_push_back, rust_lex_tests): Update.
4834
4835 2018-07-19  Pedro Alves  <palves@redhat.com>
4836
4837         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4838         gdb::unique_xmalloc_ptr.
4839         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4840         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4841         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4842         copy-initialization.
4843         * guile/scm-pretty-print.c (ppscm_print_children): Use
4844         gdb::unique_xmalloc_ptr instead of cleanups.
4845         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4846         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4847         gdb::unique_xmalloc_ptr.
4848         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4849         Adjust to use gdb::unique_xmalloc_ptr.
4850         * guile/scm-utils.c (extract_arg): Adjust.
4851         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4852         gdb::unique_xmalloc_ptr instead of a cleanup.
4853
4854 2018-07-19  Tom Tromey  <tom@tromey.com>
4855
4856         * utils.c (do_value_free_to_mark)
4857         (make_cleanup_value_free_to_mark): Remove.
4858         * utils.h (make_cleanup_value_free_to_mark): Remove.
4859
4860 2018-07-19  Pedro Alves  <palves@redhat.com>
4861
4862         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4863         forwarding reference.
4864
4865 2018-07-18  Pedro Alves  <palves@redhat.com>
4866
4867         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4868         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4869         cleanup.
4870
4871 2018-07-18  Pedro Alves  <palves@redhat.com>
4872
4873         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4874         exceptions.
4875         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4876         (gdbscm_wrap): New.
4877         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4878         directly instead of a cleanup.
4879         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4880         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4881         (vlscm_binop_gdbthrow): New, factored out from ...
4882         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4883         (vlscm_rich_compare): Use gdbscm_wrap.
4884         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4885         instead of a cleanup.
4886         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4887         cleanup.
4888         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4889         Use xfree directly instead of a cleanup.
4890         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4891         Adjust to use gdbscm_wrap and scoped_value_mark.
4892         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4893         (gdbscm_value_address, gdbscm_value_dereference)
4894         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4895         scoped_value_mark.
4896         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4897         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4898         scoped_value_mark.
4899         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4900         gdbscm_wrap and scoped_value_mark.
4901         (gdbscm_value_to_string): Use xfree directly instead of a
4902         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4903         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4904         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4905         scoped_value_mark.
4906         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4907         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4908         scoped_value_mark.
4909         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4910         gdbscm_wrap.
4911
4912 2018-07-18  Tom de Vries  <tdevries@suse.de>
4913
4914         * findvar.c (default_read_var_value): Also resolve dynamic type for
4915         LOC_OPTIMIZED_OUT vars.
4916
4917 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4918
4919         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4920         decoding.
4921
4922 2018-07-17  Tom Tromey  <tom@tromey.com>
4923
4924         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4925         (compute_enum_list, pascm_set_param_value_x)
4926         (gdbscm_parameter_value): Update.
4927         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4928         (gdbscm_scm_to_host_string): Update.
4929         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4930         Update.
4931         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4932         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4933         * guile/scm-string.c (gdbscm_scm_to_string): Return
4934         unique_xmalloc_ptr.
4935         (gdbscm_scm_to_host_string): Likewise.
4936
4937 2018-07-17  Tom Tromey  <tom@tromey.com>
4938
4939         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4940         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4941         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4942         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4943         unique_xmalloc_ptr.
4944
4945 2018-07-17  Tom Tromey  <tom@tromey.com>
4946
4947         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4948         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4949         Update.
4950         * guile/scm-cmd.c (cmdscm_function): Update.
4951         * guile/scm-pretty-print.c
4952         (ppscm_print_exception_unless_memory_error): Update.
4953         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4954         Return unique_xmalloc_ptr.
4955
4956 2018-07-17  Tom Tromey  <tom@tromey.com>
4957
4958         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4959         Use string_printf.
4960
4961 2018-07-17  Jim Wilson  <jimw@sifive.com>
4962
4963         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4964         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4965         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4966         unecessary braces after EF_RISCV_RVC test.  Delete call to
4967         set_gdbarch_decr_pc_after_break.
4968
4969         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4970         RISCV_LAST_FP_REGNUM + 1.
4971         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4972
4973 2018-07-17  Tom Tromey  <tom@tromey.com>
4974
4975         * configure.ac: Remove --disable-gdbcli.
4976         * configure: Rebuild.
4977         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4978         (SUBDIR_CLI_CFLAGS): Remove.
4979         (SFILES): Use SUBDIR_CLI_SRCS.
4980         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4981
4982 2018-07-17  Tom Tromey  <tom@tromey.com>
4983
4984         PR gdb/18624:
4985         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4986
4987 2018-07-16  Jim Wilson  <jimw@sifive.com>
4988
4989         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4990
4991 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4992
4993         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4994         variable.
4995         (libunwind_frame_sniffer): Likewise.
4996         (libunwind_frame_prev_register): Likewise.
4997         (libunwind_sigtramp_frame_sniffer): Likewise.
4998         * ia64-tdep.c (ia64_access_reg): Likewise.
4999         (ia64_access_rse_reg): Likewise.
5000         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5001         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5002
5003 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5004
5005         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5006
5007 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5008
5009         * remote-sim.c (gdbsim_target::close,
5010         gdbsim_target::mourn_inferior): Remove unused variables.
5011
5012 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5013
5014         * ia64-tdep.c (ktab_buf): New global.
5015         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5016         (get_kernel_table): Adjust.
5017
5018 2018-07-16  Tom Tromey  <tom@tromey.com>
5019
5020         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5021         * dwarf2read.c (using_directives, new_symbol): Use
5022         outermost_context_p.
5023         * dbxread.c (process_one_symbol): Use outermost_context_p.
5024         * coffread.c (coff_symtab_read): Use outermost_context_p.
5025
5026 2018-07-16  Tom Tromey  <tom@tromey.com>
5027
5028         * dwarf2read.c (using_directives, read_func_scope)
5029         (read_lexical_block_scope): Update.
5030         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5031         * buildsym.h (local_using_directives, global_using_directives):
5032         Don't declare.
5033         (get_local_using_directives, set_local_using_directives)
5034         (get_global_using_directives): Declare.
5035         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5036         m_global_using_directives>: New members.
5037         (finish_block_internal, prepare_for_building)
5038         (reset_symtab_globals, end_symtab_get_static_block)
5039         (push_context): Update.
5040         (get_local_using_directives, set_local_using_directives)
5041         (get_global_using_directives): New functions.
5042         (buildsym_init): Update.
5043
5044 2018-07-16  Tom Tromey  <tom@tromey.com>
5045
5046         * xcoffread.c (xcoff_initial_scan): Don't call
5047         free_pending_blocks.
5048         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5049         * buildsym.h (class scoped_free_pendings): Add constructor.
5050         (free_pending_blocks): Don't declare.
5051         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5052         (free_pending_blocks): Now static.
5053
5054 2018-07-16  Tom Tromey  <tom@tromey.com>
5055
5056         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5057         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5058         member.
5059         (struct subfile_stack): Remove.
5060         (subfile_stack): Remove.
5061         (push_subfile, pop_subfile, buildsym_init): Update.
5062
5063 2018-07-16  Tom Tromey  <tom@tromey.com>
5064
5065         * buildsym.c (push_subfile): Use gdb_assert.
5066         (pop_subfile): Use gdb_assert.
5067
5068 2018-07-16  Tom Tromey  <tom@tromey.com>
5069
5070         * buildsym.h (merge_symbol_lists): Remove.
5071         * buildsym.c (merge_symbol_lists): Remove.
5072
5073 2018-07-16  Tom Tromey  <tom@tromey.com>
5074
5075         * stabsread.c (scan_file_globals): Update comment.
5076         * stabsread.h (scan_file_globals): Move from buildsym.h.
5077         * buildsym.h (scan_file_globals): Move to stabsread.h.
5078
5079 2018-07-16  Tom Tromey  <tom@tromey.com>
5080
5081         * xcoffread.c (xcoff_new_init): Update.
5082         * mipsread.c (mipscoff_new_init): Update.
5083         * mdebugread.c (mdebug_build_psymtabs): Update.
5084         * elfread.c (elf_new_init): Update.
5085         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5086         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5087         * buildsym.h (buildsym_new_init): Don't declare.
5088         * buildsym.c (buildsym_new_init): Remove.
5089
5090 2018-07-16  Tom Tromey  <tom@tromey.com>
5091
5092         * stabsread.h (within_function): Move from buildsym.h.
5093         * stabsread.c (start_stabs): Clear within_function.
5094         * coffread.c (coff_start_symtab): Clear within_function.
5095         * buildsym.h (within_function): Move to stabsread.h.
5096         * buildsym.c (prepare_for_building): Update.
5097
5098 2018-07-16  Tom Tromey  <tom@tromey.com>
5099
5100         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5101         * dwarf2read.c (dwarf2_start_symtab): Don't set
5102         processing_gcc_compilation.
5103         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5104
5105 2018-07-16  Tom Tromey  <tom@tromey.com>
5106
5107         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5108         (next_symbol_text_func): Move from buildsym.h.
5109         * stabsread.c (hashname): Move from buildsym.c.
5110         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5111         (next_symbol_text_func, hashname): Move to stabsread.h.
5112         * buildsym.c: Don't include bcache.h
5113         (hashname): Move to stasbread.c.
5114
5115 2018-07-16  Tom Tromey  <tom@tromey.com>
5116
5117         * buildsym.h (context_stack_size): Don't declare.
5118         * buildsym.c (context_stack_size): New global.
5119
5120 2018-07-16  Tom Tromey  <tom@tromey.com>
5121
5122         * dbxread.c (processing_acc_compilation): New global.
5123         * buildsym.h (processing_acc_compilation): Don't declare.
5124
5125 2018-07-16  Tom Tromey  <tom@tromey.com>
5126
5127         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5128         * dbxread.c (read_ofile_symtab): Update.
5129         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5130         * buildsym.h (last_source_start_addr): Remove.
5131         (set_last_source_start_addr, get_last_source_start_addr):
5132         Declare.
5133         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5134         parameter.
5135         (struct buildsym_compunit) <m_last_source_start_addr>: New
5136         member.
5137         (prepare_for_building): Remove start_addr parameter.
5138         (start_symtab, restart_symtab, end_symtab_get_static_block)
5139         (end_symtab_with_blockvector): Update.
5140         (set_last_source_start_addr, get_last_source_start_addr): New
5141         functions.
5142
5143 2018-07-16  Tom Tromey  <tom@tromey.com>
5144
5145         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5146         member.
5147         (have_line_numbers): Remove.
5148         (record_line, prepare_for_building, end_symtab_get_static_block)
5149         (augment_type_symtab): Update.
5150
5151 2018-07-16  Tom Tromey  <tom@tromey.com>
5152
5153         * buildsym.c (~buildsym_compunit): Free the macro table.
5154         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5155         methods.
5156         <m_pending_macros>: New member.
5157         (pending_macros): Remove.
5158         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5159         (reset_symtab_globals, end_symtab_get_static_block)
5160         (end_symtab_with_blockvector, augment_type_symtab)
5161         (buildsym_init): Update.
5162
5163 2018-07-16  Tom Tromey  <tom@tromey.com>
5164
5165         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5166         parameter.
5167         (buildsym_compunit::set_last_source_file): New method.
5168         <m_last_source_file>: New member.
5169         (prepare_for_building): Remove "name" parameter.
5170         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5171         (last_source_file): Remove.
5172         (set_last_source_file, get_last_source_file): Update.
5173
5174 2018-07-16  Tom Tromey  <tom@tromey.com>
5175
5176         * buildsym.c (prepare_for_building): Add assert.
5177
5178 2018-07-16  Tom Tromey  <tom@tromey.com>
5179
5180         * buildsym.c (~buildsym_compunit): Update.
5181         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5182         (start_subfile, patch_subfile_names)
5183         (end_symtab_with_blockvector): Update.
5184
5185 2018-07-16  Tom Tromey  <tom@tromey.com>
5186
5187         * buildsym.c (struct buildsym_compunit): Add constructor,
5188         destructor, initializers.
5189         (start_buildsym_compunit): Remove.
5190         (free_buildsym_compunit): Use "delete".
5191         (start_symtab, restart_symtab): Use "new".
5192
5193 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5194
5195         * symfile.c (set_objfile_default_section_offset): Remove struct
5196         keyword.
5197
5198 2018-07-14  Stafford Horne  <shorne@gmail.com>
5199
5200         * (Responsible Maintainers): Add myself as or1k maintainer.
5201
5202 2018-07-13  Tom Tromey  <tom@tromey.com>
5203
5204         * symfile.c (set_objfile_default_section_offset): Use extra braces
5205         around initializer.
5206
5207 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5208
5209         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5210         non-branching basr.
5211
5212 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5213
5214         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5215         unittests/cli-utils-selftests.c
5216         * unittests/cli-utils-selftests.c: New file.
5217
5218 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5219
5220         * NEWS: Mention new commands. Mention change to 'thread apply'.
5221
5222 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5223
5224         * thread.c (thr_try_catch_cmd): New function.
5225         (thread_apply_all_command): Handle qcs flags.
5226         (thread_apply_command): Handle qcs flags.
5227         (taas_command): New function.
5228         (tfaas_command): New function.
5229         (_initialize_thread): Update to setup the new commands 'taas
5230         and 'tfaas'. Change doc string for 'thread apply'.
5231
5232 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5233
5234         * stack.c: (trailing_outermost_frame): New function, mostly
5235         extracted from backtrace_command_1.
5236         (leading_innermost_frame): New function.
5237         (backtrace_command_1): Update to call trailing_outermost_frame.
5238         (frame_apply_command_count): New function.
5239         (frame_apply_level_command): New function.
5240         (frame_apply_all_command): New function.
5241         (frame_apply_command): New function.
5242         (faas_command): New function.
5243         (frame_cmd_list): New variable.
5244         (_initialize_stack): Update to setup the new commands 'frame apply'
5245         and 'faas'.
5246
5247 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5248
5249         * cli-utils.c (number_or_range_parser::get_number): Only handle
5250         numbers or convenience var as numbers.
5251         (parse_flags): New function.
5252         (parse_flags_qcs): New function.
5253         (number_or_range_parser::finished): Ensure parsing end is detected
5254         before end of string.
5255         * cli-utils.h (parse_flags): New function.
5256         (parse_flags_qcs): New function.
5257         (number_or_range_parser): Remove m_finished bool.
5258         (number_or_range_parser::skip_range): Set m_in_range to false.
5259
5260 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5261
5262         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5263         on Windows.
5264
5265 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5266             Jan Kratochvil  <jan.kratochvil@redhat.com>
5267             Paul Fertser  <fercerpav@gmail.com>
5268             Tsutomu Seki  <sekiriki@gmail.com>
5269             Pedro Alves  <palves@redhat.com>
5270
5271         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5272         'unittests/parse-connection-spec-selftests.c'.
5273         (COMMON_SFILES): Add 'common/netstuff.c'.
5274         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5275         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5276         * common/netstuff.c: New file.
5277         * common/netstuff.h: New file.
5278         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5279         (wait_for_connect): Update comment.  New parameter
5280         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5281         Use 'sock' directly instead of 'scb->fd'.
5282         (try_connect): New function, with code from 'net_open'.
5283         (net_open): Rewrite main loop to deal with multiple
5284         sockets/addresses.  Handle IPv6-style hostnames; implement
5285         support for IPv6 connections.
5286         * unittests/parse-connection-spec-selftests.c: New file.
5287
5288 2018-07-11  Pedro Alves  <palves@redhat.com>
5289
5290         PR gdb/23377
5291         * remote.c (remote_target::remote_detach_pid): Call
5292         set_current_process.
5293
5294 2018-07-11  Pedro Alves  <palves@redhat.com>
5295
5296         * h8300-tdep.c (h8300_gdbarch_init): Remove
5297         set_gdbarch_ecoff_reg_to_regnum calls.
5298
5299 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5300
5301         PR c++/23373
5302         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5303         offsets/sizes for static members of a class/struct.
5304
5305 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5306
5307         * target-descriptions.c (tdesc_register_bitsize): Rename.
5308         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5309         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5310         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5311
5312 2018-07-10  Tom Tromey  <tom@tromey.com>
5313
5314         * breakpoint.c (moribund_locations): Now static and a
5315         std::vector.
5316         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5317         (build_bpstat_chain, update_global_location_list)
5318         (breakpoint_retire_moribund): Update.
5319         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5320         VEC.
5321
5322 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5323
5324         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5325         (riscv_register_reggroup_p): Use new function, remove unneeded
5326         parenthesis.
5327         (riscv_push_dummy_call): Extend assert to compare against xlen or
5328         flen based on register type.
5329
5330 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5331
5332         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5333
5334 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5335
5336         * remote.c (show_hardware_watchpoint_limit): New function.
5337         (show_hardware_watchpoint_length_limit): New function.
5338         (show_hardware_breakpoint_limit): New function.
5339         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5340         where appropriate, update help text.
5341
5342 2018-07-09  Tom Tromey  <tom@tromey.com>
5343
5344         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5345         (CLIBS): Don't mention NAT_CLIBS.
5346
5347 2018-07-09  Tom Tromey  <tom@tromey.com>
5348
5349         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5350         (LIBGDB_OBS, clean mostlyclean): Update.
5351         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5352
5353 2018-07-09  Tom Tromey  <tom@tromey.com>
5354
5355         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5356         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5357         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5358
5359 2018-07-09  Tom Tromey  <tom@tromey.com>
5360
5361         * Makefile.in (ALLDEPFILES): Remove exec.c.
5362         (COMMON_OBS): Remove exec.o.
5363         (COMMON_SFILES): Add exec.c.
5364
5365 2018-07-09  Tom Tromey  <tom@tromey.com>
5366
5367         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5368
5369 2018-07-09  Tom Tromey  <tom@tromey.com>
5370
5371         * Makefile.in (clean mostlyclean): Remove stamp-version.
5372         (version.c): Depend on stamp-version.
5373         (stamp-version): New rule, from version.c rule.
5374
5375 2018-07-09  Tom Tromey  <tom@tromey.com>
5376
5377         * Makefile.in (init.c): Depend on stamp-init.
5378         (stamp-init): New rule, from init.c rule.
5379         (clean mostlyclean): Remove stamp-init.
5380
5381 2018-07-09  Tom Tromey  <tom@tromey.com>
5382
5383         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5384         SUBDIR_GCC_COMPILE_SRCS.
5385
5386 2018-07-09  Tom Tromey  <tom@tromey.com>
5387
5388         * Makefile.in (init.c): Remove some unused sed rules.
5389
5390 2018-07-09  Tom Tromey  <tom@tromey.com>
5391
5392         * Makefile.in (TSOBS): Remove.
5393         (INIT_FILES): Update.
5394         (LIBGDB_OBS): Update.
5395         (COMMON_SFILES): Add inflow.c.
5396         (SFILES): Remove inflow.c.
5397
5398 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5399
5400         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5401
5402 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5403
5404         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5405         get_saveloc_name, is_signal_frame_name, step_name,
5406         init_remote_name, create_addr_space_name,
5407         destroy_addr_space_name, search_unwind_table_name,
5408         find_dyn_list_name): Constify.
5409
5410 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5411
5412         * darwin-nat.c (darwin_pthread_kill): New function.
5413         (darwin_resume_thread): Use darwin_pthread_kill.
5414
5415 2018-07-05  Tom de Vries  <tdevries@suse.de>
5416
5417         * macroexp.c (macro_buffer) <operator=>: New member function.
5418
5419 2018-07-04  Tom Tromey  <tom@tromey.com>
5420
5421         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5422
5423 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5424
5425         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5426         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5427         * maint.c: Likewise.
5428         * top.c: Likewise.
5429
5430 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5431
5432         * NEWS: Create a new section for the next release branch.
5433         Rename the section of the current branch, now that it has
5434         been cut.
5435
5436 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5437
5438         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5439         * version.in: Bump version to 8.2.50.DATE-git.
5440
5441 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5442             Pedro Alves  <palves@redhat.com>
5443
5444         * linux-nat.c (linux_init_ptrace): Rename to ...
5445         (linux_init_ptrace_procfs): ... this.  Call
5446         linux_proc_init_warnings.
5447         (linux_nat_target::post_attach)
5448         (linux_nat_target::post_startup_inferior): Adjust.
5449         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5450         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5451
5452 2018-07-04  Tom de Vries  <tdevries@suse.de>
5453
5454         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5455         check ...
5456         (read_comp_unit_head): ... here.
5457
5458 2018-07-03  Tom Tromey  <tom@tromey.com>
5459
5460         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5461         (stop_tracing, tstatus_command)
5462         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5463         (print_one_static_tracepoint_marker): Update.
5464         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5465         std::vector.
5466         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5467         VEC.
5468         (all_tracepoints, static_tracepoints_here): Return std::vector.
5469
5470 2018-07-03  Tom Tromey  <tom@tromey.com>
5471
5472         * common/ptid.c (ptid_equal): Remove.
5473         * common/ptid.h (ptid_equal): Don't declare.
5474         * ada-tasks.c: Update.
5475         * breakpoint.c: Update.
5476         * common/agent.c: Update.
5477         * corelow.c: Update.
5478         * darwin-nat-info.c: Update.
5479         * darwin-nat.c: Update.
5480         * dcache.c: Update.
5481         * dtrace-probe.c: Update.
5482         * dummy-frame.c: Update.
5483         * fbsd-nat.c: Update.
5484         * frame.c: Update.
5485         * gdbthread.h: Update.
5486         * gnu-nat.c: Update.
5487         * go32-nat.c: Update.
5488         * inf-loop.c: Update.
5489         * inf-ptrace.c: Update.
5490         * infcall.c: Update.
5491         * infcmd.c: Update.
5492         * inflow.c: Update.
5493         * infrun.c: Update.
5494         * linux-fork.c: Update.
5495         * linux-nat.c: Update.
5496         * linux-thread-db.c: Update.
5497         * mi/mi-cmd-var.c: Update.
5498         * mi/mi-interp.c: Update.
5499         * mi/mi-main.c: Update.
5500         * nto-procfs.c: Update.
5501         * ppc-linux-tdep.c: Update.
5502         * procfs.c: Update.
5503         * python/py-inferior.c: Update.
5504         * python/py-record-btrace.c: Update.
5505         * python/py-record.c: Update.
5506         * ravenscar-thread.c: Update.
5507         * regcache.c: Update.
5508         * remote-sim.c: Update.
5509         * remote.c: Update.
5510         * sol-thread.c: Update.
5511         * solib.c: Update.
5512         * target.c: Update.
5513         * tui/tui-stack.c: Update.
5514         * varobj.c: Update.
5515         * windows-nat.c: Update.
5516         * windows-tdep.c: Update.
5517
5518 2018-07-03  Tom Tromey  <tom@tromey.com>
5519
5520         * common/ptid.c (ptid_match): Remove.
5521         * common/ptid.h (ptid_match): Don't declare.
5522         * fbsd-nat.c: Update.
5523         * infcmd.c: Update.
5524         * infrun.c: Update.
5525         * linux-nat.c: Update.
5526         * record-btrace.c: Update.
5527         * regcache.c: Update.
5528         * remote.c: Update.
5529
5530 2018-07-03  Tom Tromey  <tom@tromey.com>
5531
5532         * common/ptid.c (ptid_tid_p): Remove.
5533         * common/ptid.h (ptid_tid_p): Don't declare.
5534         * sol-thread.c: Update.
5535
5536 2018-07-03  Tom Tromey  <tom@tromey.com>
5537
5538         * common/ptid.c (ptid_lwp_p): Remove.
5539         * common/ptid.h (ptid_lwp_p): Don't declare.
5540         * fbsd-nat.c: Update.
5541         * linux-nat.c: Update.
5542         * nat/linux-procfs.c: Update.
5543         * nat/x86-linux-dregs.c: Update.
5544         * sol-thread.c: Update.
5545
5546 2018-07-03  Tom Tromey  <tom@tromey.com>
5547
5548         * common/ptid.c (ptid_is_pid): Remove.
5549         * common/ptid.h (ptid_is_pid): Don't declare.
5550         * infrun.c: Update.
5551         * linux-nat.c: Update.
5552         * mi/mi-interp.c: Update.
5553         * remote.c: Update.
5554         * thread.c: Update.
5555
5556 2018-07-03  Tom Tromey  <tom@tromey.com>
5557
5558         * common/ptid.c (ptid_get_tid): Remove.
5559         * common/ptid.h (ptid_get_tid): Don't declare.
5560         * ada-tasks.c: Update.
5561         * aix-thread.c: Update.
5562         * bsd-uthread.c: Update.
5563         * darwin-nat.c: Update.
5564         * fbsd-nat.c: Update.
5565         * i386-darwin-nat.c: Update.
5566         * infrun.c: Update.
5567         * linux-tdep.c: Update.
5568         * nto-procfs.c: Update.
5569         * ppc-ravenscar-thread.c: Update.
5570         * python/py-infthread.c: Update.
5571         * ravenscar-thread.c: Update.
5572         * sol-thread.c: Update.
5573         * sparc-ravenscar-thread.c: Update.
5574         * windows-nat.c: Update.
5575
5576 2018-07-03  Tom Tromey  <tom@tromey.com>
5577
5578         * common/ptid.c (ptid_get_lwp): Remove.
5579         * common/ptid.h (ptid_get_lwp): Don't declare.
5580         * aarch64-linux-nat.c: Update.
5581         * ada-tasks.c: Update.
5582         * aix-thread.c: Update.
5583         * amd64-linux-nat.c: Update.
5584         * arm-linux-nat.c: Update.
5585         * corelow.c: Update.
5586         * fbsd-nat.c: Update.
5587         * fbsd-tdep.c: Update.
5588         * gnu-nat.c: Update.
5589         * i386-cygwin-tdep.c: Update.
5590         * i386-gnu-nat.c: Update.
5591         * i386-linux-nat.c: Update.
5592         * ia64-linux-nat.c: Update.
5593         * inf-ptrace.c: Update.
5594         * infrun.c: Update.
5595         * linux-fork.c: Update.
5596         * linux-nat.c: Update.
5597         * linux-tdep.c: Update.
5598         * linux-thread-db.c: Update.
5599         * mips-linux-nat.c: Update.
5600         * nat/aarch64-linux-hw-point.c: Update.
5601         * nat/aarch64-linux.c: Update.
5602         * nat/linux-btrace.c: Update.
5603         * nat/linux-osdata.c: Update.
5604         * nat/linux-procfs.c: Update.
5605         * nat/x86-linux-dregs.c: Update.
5606         * obsd-nat.c: Update.
5607         * ppc-fbsd-nat.c: Update.
5608         * ppc-linux-nat.c: Update.
5609         * procfs.c: Update.
5610         * python/py-infthread.c: Update.
5611         * ravenscar-thread.c: Update.
5612         * remote.c: Update.
5613         * s390-linux-nat.c: Update.
5614         * sol-thread.c: Update.
5615         * sol2-tdep.c: Update.
5616         * spu-linux-nat.c: Update.
5617         * x86-linux-nat.c: Update.
5618         * xtensa-linux-nat.c: Update.
5619
5620 2018-07-03  Tom Tromey  <tom@tromey.com>
5621
5622         * common/ptid.c (ptid_get_pid): Remove.
5623         * common/ptid.h (ptid_get_pid): Don't declare.
5624         * aarch64-linux-nat.c: Update.
5625         * ada-lang.c: Update.
5626         * aix-thread.c: Update.
5627         * alpha-bsd-nat.c: Update.
5628         * amd64-fbsd-nat.c: Update.
5629         * amd64-linux-nat.c: Update.
5630         * arm-linux-nat.c: Update.
5631         * arm-nbsd-nat.c: Update.
5632         * auxv.c: Update.
5633         * break-catch-syscall.c: Update.
5634         * breakpoint.c: Update.
5635         * bsd-uthread.c: Update.
5636         * corelow.c: Update.
5637         * ctf.c: Update.
5638         * darwin-nat.c: Update.
5639         * fbsd-nat.c: Update.
5640         * fbsd-tdep.c: Update.
5641         * gcore.c: Update.
5642         * gnu-nat.c: Update.
5643         * hppa-nbsd-nat.c: Update.
5644         * hppa-obsd-nat.c: Update.
5645         * i386-fbsd-nat.c: Update.
5646         * ia64-linux-nat.c: Update.
5647         * inf-ptrace.c: Update.
5648         * infcmd.c: Update.
5649         * inferior.c: Update.
5650         * inferior.h: Update.
5651         * inflow.c: Update.
5652         * infrun.c: Update.
5653         * linux-fork.c: Update.
5654         * linux-nat.c: Update.
5655         * linux-tdep.c: Update.
5656         * linux-thread-db.c: Update.
5657         * m68k-bsd-nat.c: Update.
5658         * mi/mi-interp.c: Update.
5659         * mi/mi-main.c: Update.
5660         * mips-linux-nat.c: Update.
5661         * mips-nbsd-nat.c: Update.
5662         * mips64-obsd-nat.c: Update.
5663         * nat/aarch64-linux-hw-point.c: Update.
5664         * nat/aarch64-linux.c: Update.
5665         * nat/linux-btrace.c: Update.
5666         * nat/linux-osdata.c: Update.
5667         * nat/linux-procfs.c: Update.
5668         * nat/x86-linux-dregs.c: Update.
5669         * nto-procfs.c: Update.
5670         * obsd-nat.c: Update.
5671         * ppc-linux-nat.c: Update.
5672         * ppc-nbsd-nat.c: Update.
5673         * ppc-obsd-nat.c: Update.
5674         * proc-service.c: Update.
5675         * procfs.c: Update.
5676         * python/py-inferior.c: Update.
5677         * python/py-infthread.c: Update.
5678         * ravenscar-thread.c: Update.
5679         * record.c: Update.
5680         * remote-sim.c: Update.
5681         * remote.c: Update.
5682         * rs6000-nat.c: Update.
5683         * s390-linux-nat.c: Update.
5684         * sh-nbsd-nat.c: Update.
5685         * sol-thread.c: Update.
5686         * sparc-nat.c: Update.
5687         * sparc64-tdep.c: Update.
5688         * spu-linux-nat.c: Update.
5689         * spu-tdep.c: Update.
5690         * target-debug.h: Update.
5691         * target.c: Update.
5692         * thread.c: Update.
5693         * tid-parse.c: Update.
5694         * tracefile-tfile.c: Update.
5695         * vax-bsd-nat.c: Update.
5696         * windows-nat.c: Update.
5697         * x86-linux-nat.c: Update.
5698         * x86-nat.c: Update.
5699
5700 2018-07-03  Tom Tromey  <tom@tromey.com>
5701
5702         * common/ptid.c (pid_to_ptid): Remove.
5703         * common/ptid.h (pid_to_ptid): Don't declare.
5704         * aix-thread.c: Update.
5705         * arm-linux-nat.c: Update.
5706         * common/ptid.c: Update.
5707         * common/ptid.h: Update.
5708         * corelow.c: Update.
5709         * ctf.c: Update.
5710         * darwin-nat.c: Update.
5711         * fbsd-nat.c: Update.
5712         * fork-child.c: Update.
5713         * gnu-nat.c: Update.
5714         * go32-nat.c: Update.
5715         * inf-ptrace.c: Update.
5716         * infcmd.c: Update.
5717         * inferior.c: Update.
5718         * infrun.c: Update.
5719         * linux-fork.c: Update.
5720         * linux-nat.c: Update.
5721         * nat/aarch64-linux-hw-point.c: Update.
5722         * nat/fork-inferior.c: Update.
5723         * nat/x86-linux-dregs.c: Update.
5724         * nto-procfs.c: Update.
5725         * obsd-nat.c: Update.
5726         * procfs.c: Update.
5727         * progspace.c: Update.
5728         * remote.c: Update.
5729         * rs6000-nat.c: Update.
5730         * s390-linux-nat.c: Update.
5731         * sol-thread.c: Update.
5732         * spu-linux-nat.c: Update.
5733         * target.c: Update.
5734         * top.c: Update.
5735         * tracefile-tfile.c: Update.
5736         * windows-nat.c: Update.
5737
5738 2018-07-03  Tom Tromey  <tom@tromey.com>
5739
5740         * common/ptid.h (ptid_build): Don't declare.
5741         * common/ptid.c (ptid_build): Remove.
5742         * aix-thread.c: Update.
5743         * bsd-kvm.c: Update.
5744         * bsd-uthread.c: Update.
5745         * common/agent.c: Update.
5746         * common/ptid.c: Update.
5747         * common/ptid.h: Update.
5748         * corelow.c: Update.
5749         * darwin-nat.c: Update.
5750         * fbsd-nat.c: Update.
5751         * gnu-nat.c: Update.
5752         * linux-fork.c: Update.
5753         * linux-nat.c: Update.
5754         * linux-thread-db.c: Update.
5755         * nat/linux-osdata.c: Update.
5756         * nat/linux-procfs.c: Update.
5757         * nto-procfs.c: Update.
5758         * obsd-nat.c: Update.
5759         * proc-service.c: Update.
5760         * procfs.c: Update.
5761         * ravenscar-thread.c: Update.
5762         * remote-sim.c: Update.
5763         * remote.c: Update.
5764         * sol-thread.c: Update.
5765         * target.c: Update.
5766         * windows-nat.c: Update.
5767
5768 2018-07-03  Tom Tromey  <tom@tromey.com>
5769
5770         * infrun.c (follow_exec): Use exit_inferior_silent.
5771         * inferior.c (exit_inferior_num_silent): Remove.
5772         * inferior.h (exit_inferior_num_silent): Don't declare.
5773
5774 2018-07-03  Tom Tromey  <tom@tromey.com>
5775
5776         PR cli/23340:
5777         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5778         inferior_ptid on error.
5779
5780 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5781             Simon Marchi  <simon.marchi@polymtl.ca>
5782
5783         PR tdep/8282
5784         * disasm.h (gdb_disassembler): Add
5785         `m_disassembler_options_holder'. member
5786         * disasm.c (get_all_disassembler_options): New function.
5787         (gdb_disassembler::gdb_disassembler): Use it.
5788         (gdb_buffered_insn_length_init_dis): Likewise.
5789         (gdb_buffered_insn_length): Adjust accordingly.
5790         (set_disassembler_options): Handle options with arguments.
5791         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5792         line if showing options with descriptions.
5793         (disassembler_options_completer): Adapt to using the
5794         `disasm_options_and_args_t' structure.
5795         * mips-tdep.c (mips_disassembler_options): New variable.
5796         (mips_disassembler_options_o32): Likewise.
5797         (mips_disassembler_options_n32): Likewise.
5798         (mips_disassembler_options_n64): Likewise.
5799         (gdb_print_insn_mips): Don't set `disassembler_options'.
5800         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5801         functions.
5802         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5803         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5804         `gdbarch_disassembler_options_implicit' and
5805         `gdbarch_valid_disassembler_options'.
5806         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5807         `disasm_options_and_args_t' structure.
5808         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5809         method.
5810         (valid_disassembler_options): Switch from `disasm_options_t' to
5811         the `disasm_options_and_args_t' structure.
5812         * NEWS: Document `set disassembler-options' support for the MIPS
5813         target.
5814         * gdbarch.h: Regenerate.
5815         * gdbarch.c: Regenerate.
5816
5817 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5818
5819         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5820
5821 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5822
5823         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5824         parameter in call to amd64_target_description.
5825         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5826         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5827         (amd64fbsd_init_abi): Likewise.
5828         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5829         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5830         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5831         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5832
5833 2018-06-29  Pedro Alves  <palves@redhat.com>
5834
5835         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5836         "segments" parameter.
5837         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5838         (_initialize_amd64_tdep): Update call to
5839         amd64_create_target_description.
5840         (amd64_target_description): Add "segments" parameter.  Adjust
5841         the implementation to use it.
5842         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5843         call to amd64_create_target_description.
5844         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5845         * gdb/arch/amd64.h (amd64_create_target_description): Add
5846         "segments" register.
5847         * gdb/arch/amd64.c (amd64_create_target_description): Add
5848         "segments" parameter.  Call create_feature_i386_64bit_segments
5849         only if SEGMENTS is true.
5850         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5851         call to amd64_create_target_description.
5852
5853 2018-06-29  Pedro Alves  <palves@redhat.com>
5854
5855         * thread.c (thread_target_id_str): New, factored out from ...
5856         (print_thread_info_1): ... here.  Use it to compute the max
5857         "Target Id" column width.
5858
5859 2018-06-29  Pedro Alves  <palves@redhat.com>
5860
5861         * remote.c (remote_target::extra_thread_info): Delete
5862         'display_buf' and 'n' locals.  from the cache, regardless of
5863         packet mechanims is in use.  Use cache for qThreadExtra and qP
5864         methods too.
5865
5866 2018-06-29  Pedro Alves  <palves@redhat.com>
5867
5868         * blockframe.c (find_pc_sect_containing_function): New function.
5869         * breakpoint.c (print_breakpoint_location): Don't call
5870         find_pc_sect_function.
5871         * linespec.c (create_sals_line_offset): Record the location's
5872         symbol in the sal.
5873         * linespec.c (convert_address_location_to_sals): Fill in sal's
5874         symbol with find_pc_sect_containing_function.
5875         * symtab.c (find_function_start_sal): Rename to ...
5876         (find_function_start_sal_1): ... this.
5877         (find_function_start_sal): Reimplement as wrapper around
5878         find_function_start_sal_1, and use
5879         find_pc_sect_containing_function to fill in the sal's symbol.
5880         (find_function_start_sal(symbol*, bool)): Adjust.
5881         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5882         comments.
5883         (find_pc_sect_containing_function): Declare.
5884
5885 2018-06-29  Pedro Alves  <palves@redhat.com>
5886
5887         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5888         true if the the location has no symbol.
5889
5890 2018-06-28  Tom Tromey  <tom@tromey.com>
5891
5892         * NEWS: Mention --enable-codesign.
5893         * silent-rules.mk (ECHO_SIGN): New variable.
5894         * configure.ac: Add --enable-codesign.
5895         * configure: Rebuild.
5896         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5897         (gdb$(EXEEXT)): Optionally invoke codesign.
5898
5899 2018-06-28  Pedro Alves  <palves@redhat.com>
5900
5901         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5902         comments.
5903         (switch_to_thread_no_regs): Adjust comment.
5904         * infcmd.c (stop_pc): Delete.
5905         (post_create_inferior, info_program_command): Replace references
5906         to stop_pc with references to thread_info->suspend.stop_pc.
5907         * inferior.h (stop_pc): Delete declaration.
5908         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5909         (handle_inferior_event_1, handle_signal_stop)
5910         (process_event_stop_test, keep_going_stepped_thread)
5911         (handle_step_into_function, handle_step_into_function_backward)
5912         (print_stop_location): Replace references to stop_pc with
5913         references to thread_info->suspend.stop_pc.
5914         (struct infcall_suspend_state) <stop_pc>: Delete field.
5915         (save_infcall_suspend_state, restore_infcall_suspend_state):
5916         Remove references to inf_stat->stop_pc.
5917         * linux-fork.c (fork_load_infrun_state): Likewise.
5918         * record-btrace.c (record_btrace_set_replay): Likewise.
5919         * record-full.c (record_full_goto_entry): Likewise.
5920         * remote.c (print_one_stopped_thread): Likewise.
5921         * target.c (target_resume): Extend comment.
5922         * thread.c (set_executing_thread): New.
5923         (set_executing): Use it.
5924         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5925         Remove references to stop_pc.
5926
5927 2018-06-28  Pedro Alves  <palves@redhat.com>
5928
5929         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5930         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5931
5932 2018-06-28  Tom Tromey  <tom@tromey.com>
5933
5934         * coffread.c (coff_symfile_finish): Update.
5935         * xcoffread.c (xcoff_symfile_finish): Update.
5936         * elfread.c (elf_symfile_finish): Update.
5937         * symfile.h (dwarf2_free_objfile): Don't declare.
5938         * dwarf2read.c (_initialize_dwarf2_read): Use
5939         register_objfile_data_with_cleanup.
5940         (dwarf2_free_objfile): Now static.  Change signature.
5941
5942 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5943
5944         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5945         option "-o" to add-symbol-file-load to add an offset to each
5946         section's load address.
5947         * symfile.c (set_objfile_default_section_offset): New function.
5948
5949 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5950
5951         * symfile.c (add_symbol_file_command): Make sure that sections
5952         with the same name are sorted in the same order.
5953
5954 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5955
5956         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5957         require the second argument.  If omitted, load sections at the
5958         addresses specified in the file.
5959
5960 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5961
5962         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5963         (_initialize_symfile): Add option "-o" to symbol-file to add an
5964         offset to each section of the symbol file.
5965
5966 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5967
5968         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5969
5970 2018-06-27  Tom Tromey  <tom@tromey.com>
5971
5972         * stack.c (_initialize_stack): Update "func" help text.
5973
5974 2018-06-27  Tom Tromey  <tom@tromey.com>
5975
5976         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5977         std::vector.
5978         (unwind_infopy_str, pyuw_create_unwind_info)
5979         (unwind_infopy_add_saved_register, pyuw_sniffer)
5980         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5981         Update.
5982         (struct saved_reg): Add constructor.
5983         <value>: Now a gdbpy_ref<>.
5984
5985 2018-06-27  Tom Tromey  <tom@tromey.com>
5986
5987         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5988
5989 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5990
5991         * gdb-gdb.py.in: Format using autopep8.
5992
5993 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5994
5995         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5996         (type_lookup_function): Recognize CORE_ADDR values.
5997
5998 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5999
6000         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6001         print tag_name.
6002
6003 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6004
6005         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6006         <__lt__>: Add.
6007
6008 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6009
6010         * gdb-gdb.py: Move to...
6011         * gdb-gdb.py.in: ... here.
6012         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6013         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6014         dependencies.
6015         (distclean): Remove gdb-gdb.py when cleaning.
6016         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6017         * configure: Re-generate.
6018
6019 2018-06-27  Pedro Alves  <palves@redhat.com>
6020
6021         * proc-service.c (get_ps_regcache): New.
6022         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6023         (ps_lsetfpregs): Use it.
6024
6025 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6026
6027         PR gdb/21695
6028         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6029         (dwarf_decode_lines_1): Adjust.
6030
6031 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6032
6033         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6034         override.
6035         <info_proc>: Likewise.
6036
6037 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6038
6039         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6040         to windows_fetch_one_register, and only handle the case of
6041         fetching one register.  Move the code that reloads the context
6042         and iterates over all registers if R is negative to...
6043         (windows_nat_target::fetch_registers): ... here.
6044         (do_windows_store_inferior_registers): Rename to
6045         windows_store_one_register, and only handle the case of storing
6046         one register.  Move the code that handles the case where r is
6047         negative to...
6048         (windows_nat_target::store_registers) ... here.
6049
6050 2018-06-26  Tom Tromey  <tom@tromey.com>
6051
6052         PR rust/22574:
6053         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6054         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6055         Update.
6056         (rust_internal_print_type): Add podata parameter.
6057         (rust_print_type): Update.
6058
6059 2018-06-26  Tom Tromey  <tom@tromey.com>
6060
6061         * typeprint.h (struct print_offset_data) <update, finish,
6062         maybe_print_hole>: New methods.
6063         <indentation>: New constant.
6064         * typeprint.c (print_offset_data::indentation): Define.
6065         (print_offset_data::maybe_print_hole, print_offset_data::update)
6066         (print_offset_data::finish): Move from c-typeprint.c and rename.
6067         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6068         (print_spaces_filtered_with_print_options): Update.
6069         (c_print_type_union_field_offset, maybe_print_hole)
6070         (c_print_type_struct_field_offset): Move to typeprint.c and
6071         rename.
6072         (c_type_print_base_struct_union): Update.
6073
6074 2018-06-25  Pedro Alves  <palves@redhat.com>
6075
6076         * gdbthread.h (thread_info_ref, delete_thread)
6077         (delete_thread_silent, first_thread_of_inferior)
6078         (any_thread_of_inferior, switch_to_thread)
6079         (enable_thread_stack_temporaries)
6080         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6081         (get_last_thread_stack_temporary)
6082         (value_in_thread_stack_temporaries, can_access_registers_thread):
6083         Spell out "struct thread_info" instead of just "thread_info".
6084         * inferior.h (notice_new_inferior): Likewise.
6085
6086 2018-06-25  Pedro Alves  <palves@redhat.com>
6087
6088         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6089         pass thread_info pointer to delete_thread.
6090         (windows_nat_target::detach): Pass inferior pointer to
6091         detach_inferior.
6092         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6093         delete_thread.
6094         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6095         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6096         and pass a thread_info pointer to delete_thread.
6097         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6098         pass thread_info pointer to delete_thread.
6099         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6100         delete_thread_silent call.
6101         * procfs.c (procfs_target::detach): Pass inferior pointer to
6102         detach_inferior.
6103         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6104         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6105         delete_thread_silent call.
6106         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6107         pass thread_info pointer to delete_thread.
6108         (windows_nat_target::detach): Pass inferior pointer to
6109         delete_inferior.
6110
6111 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6112
6113         * regcache.c (readable_regcache::read_part): Fix asserts.
6114         (reg_buffer::raw_collect_part): New function.
6115         (regcache::write_part): Fix asserts.
6116         (reg_buffer::raw_supply_part): New function.
6117         (regcache::transfer_regset_register): New helper function.
6118         (regcache::transfer_regset): Call new functions.
6119         (regcache_supply_regset): Use gdb_byte*.
6120         (regcache::supply_regset): Likewise.
6121         (regcache_collect_regset): Likewise.
6122         (regcache::collect_regset): Likewise.
6123         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6124         (reg_buffer::raw_supply_part): Likewise.
6125         (regcache::transfer_regset_register): Likewise.
6126         (regcache::transfer_regset): Use gdb_byte*.
6127
6128 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6129
6130         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6131
6132 2018-06-21  Pedro Alves  <palves@redhat.com>
6133
6134         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6135         instead of a ptid_t.  All callers adjusted.
6136         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6137         adjusted.
6138         (print_ada_task_info, display_current_task_id, task_command_1):
6139         Adjust.
6140         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6141         inferior_thread.
6142         (breakpoint_kind): Adjust.
6143         (remove_breakpoints_pid): Rename to ...
6144         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6145         pointer.  All callers adjusted.
6146         (bpstat_clear_actions): Use inferior_thread.
6147         (get_bpstat_thread): New.
6148         (bpstat_do_actions): Use it.
6149         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6150         to take a thread_info pointer.  All callers adjusted.
6151         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6152         (breakpoint_re_set_thread): Use inferior_thread.
6153         * breakpoint.h (struct inferior): Forward declare.
6154         (bpstat_stop_status): Update.
6155         (remove_breakpoints_pid): Delete.
6156         (remove_breakpoints_inf): New.
6157         * bsd-uthread.c (bsd_uthread_target::wait)
6158         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6159         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6160         (maint_btrace_packet_history_cmd)
6161         (maint_btrace_clear_packet_history_cmd): Adjust.
6162         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6163         inferior_thread.
6164         * cli/cli-interp.c: Include "inferior.h".
6165         * common/refcounted-object.h (struct
6166         refcounted_object_ref_policy): New.
6167         * compile/compile-object-load.c: Include gdbthread.h.
6168         (store_regs): Use inferior_thread.
6169         * corelow.c (core_target::close): Use current_inferior.
6170         (core_target_open): Adjust to use first_thread_of_inferior and use
6171         the current inferior.
6172         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6173         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6174         <thread>: ... this new field.  All references adjusted.
6175         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6176         Take a thread_info pointer instead of a ptid_t.
6177         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6178         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6179         thread_info pointer instead of a ptid_t.
6180         * elfread.c: Include "inferior.h".
6181         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6182         Use inferior_thread.
6183         * eval.c (evaluate_subexp): Likewise.
6184         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6185         inferior_thread.
6186         * gdb_proc_service.h (struct thread_info): Forward declare.
6187         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6188         <thread>: ... this new field.  All references adjusted.
6189         * gdbarch.h, gdbarch.c: Regenerate.
6190         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6191         'thread' parameter.  All implementations and callers adjusted.
6192         * gdbthread.h (thread_info) <set_running>: New method.
6193         (delete_thread, delete_thread_silent): Take a thread_info pointer
6194         instead of a ptid.
6195         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6196         (first_thread_of_process): Delete, replaced by ...
6197         (first_thread_of_inferior): ... this new function.  All callers
6198         adjusted.
6199         (any_live_thread_of_process): Delete, replaced by ...
6200         (any_live_thread_of_inferior): ... this new function.  All callers
6201         adjusted.
6202         (switch_to_thread, switch_to_no_thread): Declare.
6203         (is_executing): Delete.
6204         (enable_thread_stack_temporaries): Update comment.
6205         <enable_thread_stack_temporaries>: Take a thread_info pointer
6206         instead of a ptid_t.  Incref the thread.
6207         <~enable_thread_stack_temporaries>: Decref the thread.
6208         <m_ptid>: Delete
6209         <m_thr>: New.
6210         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6211         (get_last_thread_stack_temporary)
6212         (value_in_thread_stack_temporaries, can_access_registers_thread):
6213         Take a thread_info pointer instead of a ptid_t.  All callers
6214         adjusted.
6215         * infcall.c (get_call_return_value): Use inferior_thread.
6216         (run_inferior_call): Work with thread pointers instead of ptid_t.
6217         (call_function_by_hand_dummy): Work with thread pointers instead
6218         of ptid_t.  Use thread_info_ref.
6219         * infcmd.c (proceed_thread_callback): Access thread's state
6220         directly.
6221         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6222         access thread's state directly.
6223         (continue_command): Use inferior_thread.
6224         (info_program_command): Use find_thread_ptid and access thread
6225         state directly.
6226         (proceed_after_attach_callback): Use thread state directly.
6227         (notice_new_inferior): Take a thread_info pointer instead of a
6228         ptid_t.  All callers adjusted.
6229         (exit_inferior): Take an inferior pointer instead of a pid.  All
6230         callers adjusted.
6231         (exit_inferior_silent): New.
6232         (detach_inferior): Delete.
6233         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6234         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6235         (detach_inferior_command, kill_inferior_command): Use
6236         find_inferior_id instead of valid_gdb_inferior_id and
6237         gdb_inferior_id_to_pid.
6238         (inferior_command): Use inferior and thread pointers.
6239         * inferior.h (struct thread_info): Forward declare.
6240         (notice_new_inferior): Take a thread_info pointer instead of a
6241         ptid_t.  All callers adjusted.
6242         (detach_inferior): Delete declaration.
6243         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6244         instead of a pid.  All callers adjusted.
6245         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6246         (valid_gdb_inferior_id): Delete.
6247         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6248         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6249         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6250         ...
6251         <inf>: ... this new field.
6252         <step_ptid>: Delete, replaced by ...
6253         <step_thread>: ... this new field.
6254         (get_displaced_stepping_state): Take an inferior pointer instead
6255         of a pid.  All callers adjusted.
6256         (displaced_step_in_progress_any_inferior): Adjust.
6257         (displaced_step_in_progress_thread): Take a thread pointer instead
6258         of a ptid_t.  All callers adjusted.
6259         (displaced_step_in_progress, add_displaced_stepping_state): Take
6260         an inferior pointer instead of a pid.  All callers adjusted.
6261         (get_displaced_step_closure_by_addr): Adjust.
6262         (remove_displaced_stepping_state): Take an inferior pointer
6263         instead of a pid.  All callers adjusted.
6264         (displaced_step_prepare_throw, displaced_step_prepare)
6265         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6266         All callers adjusted.
6267         (start_step_over): Adjust.
6268         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6269         displaced step queue.
6270         (do_target_resume): Adjust.
6271         (fetch_inferior_event): Use inferior_thread.
6272         (context_switch, get_inferior_stop_soon): Take an
6273         execution_control_state pointer instead of a ptid_t.  All callers
6274         adjusted.
6275         (switch_to_thread_cleanup): Delete.
6276         (stop_all_threads): Use scoped_restore_current_thread.
6277         * inline-frame.c: Include "gdbthread.h".
6278         (inline_state) <inline_state>: Take a thread pointer instead of a
6279         ptid_t.  All callers adjusted.
6280         <ptid>: Delete, replaced by ...
6281         <thread>: ... this new field.
6282         (find_inline_frame_state): Take a thread pointer instead of a
6283         ptid_t.  All callers adjusted.
6284         (skip_inline_frames, step_into_inline_frame)
6285         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6286         pointer instead of a ptid_t.  All callers adjusted.
6287         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6288         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6289         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6290         pointers directly.
6291         * linux-nat.c (get_detach_signal): Likewise.
6292         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6293         (thread_db_notice_clone): Adjust.
6294         (thread_db_find_new_threads_silently)
6295         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6296         a thread pointer instead of a ptid_t.  All callers adjusted.
6297         * mi/mi-cmd-var.c: Include "inferior.h".
6298         (mi_cmd_var_update_iter): Update to use thread pointers.
6299         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6300         inferior directly.
6301         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6302         out to ...
6303         (mi_output_running): ... this new function.
6304         (mi_on_resume_1): Adjust to use it.
6305         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6306         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6307         directly.
6308         (interrupt_thread_callback): : Adjust to use thread and inferior
6309         pointers.
6310         * proc-service.c: Include "gdbthread.h".
6311         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6312         * progspace-and-thread.c: Include "inferior.h".
6313         * progspace.c: Include "inferior.h".
6314         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6315         hold a reference to an inferior_object.
6316         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6317         inferior_thread.
6318         * python/py-inferior.c (struct inferior_object): Give the type a
6319         tag name instead of a typedef.
6320         (python_on_normal_stop): No need to check if the current thread is
6321         listed.
6322         (inferior_to_inferior_object): Change return type to
6323         inferior_object.  All callers adjusted.
6324         (find_thread_object): Delete, bits factored out to ...
6325         (thread_to_thread_object): ... this new function.
6326         * python/py-infthread.c (create_thread_object): Use
6327         inferior_to_inferior_object.
6328         (thpy_is_stopped): Use thread pointer directly.
6329         (gdbpy_selected_thread): Use inferior_thread.
6330         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6331         field, replaced with ...
6332         <thread>: ... this new field.  All users adjusted.
6333         (btpy_insn_or_gap_new): Drop const.
6334         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6335         callers adjusted.
6336         * python/py-record.c: Include "gdbthread.h".
6337         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6338         a ptid_t.  All callers adjusted.
6339         (gdbpy_current_recording): Use inferior_thread.
6340         * python/py-record.h (recpy_record_object) <ptid>: Delete
6341         field, replaced with ...
6342         <thread>: ... this new field.  All users adjusted.
6343         (recpy_element_object) <ptid>: Delete
6344         field, replaced with ...
6345         <thread>: ... this new field.  All users adjusted.
6346         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6347         a ptid_t.  All callers adjusted.
6348         * python/py-threadevent.c: Include "gdbthread.h".
6349         (get_event_thread): Use thread_to_thread_object.
6350         * python/python-internal.h (struct inferior_object): Forward
6351         declare.
6352         (find_thread_object, find_inferior_object): Delete declarations.
6353         (thread_to_thread_object, inferior_to_inferior_object): New
6354         declarations.
6355         * record-btrace.c: Include "inferior.h".
6356         (require_btrace_thread): Use inferior_thread.
6357         (record_btrace_frame_sniffer)
6358         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6359         (get_thread_current_frame): Use scoped_restore_current_thread and
6360         switch_to_thread.
6361         (get_thread_current_frame): Use thread pointer directly.
6362         (record_btrace_replay_at_breakpoint): Use thread's inferior
6363         pointer directly.
6364         * record-full.c: Include "inferior.h".
6365         * regcache.c: Include "gdbthread.h".
6366         (get_thread_arch_regcache): Use the inferior's address space
6367         directly.
6368         (get_thread_regcache, registers_changed_thread): New.
6369         * regcache.h (get_thread_regcache(thread_info *thread)): New
6370         overload.
6371         (registers_changed_thread): New.
6372         (remote_target) <remote_detach_1>: Swap order of parameters.
6373         (remote_add_thread): <remote_add_thread>: Return the new thread.
6374         (get_remote_thread_info(ptid_t)): New overload.
6375         (remote_target::remote_notice_new_inferior): Use thread pointers
6376         directly.
6377         (remote_target::process_initial_stop_replies): Use
6378         thread_info::set_running.
6379         (remote_target::remote_detach_1, remote_target::detach)
6380         (extended_remote_target::detach): Adjust.
6381         * stack.c (frame_show_address): Use inferior_thread.
6382         * target-debug.h (target_debug_print_thread_info_pp): New.
6383         * target-delegates.c: Regenerate.
6384         * target.c (default_thread_address_space): Delete.
6385         (memory_xfer_partial_1): Use current_inferior.
6386         (target_detach): Use current_inferior.
6387         (target_thread_address_space): Delete.
6388         (generic_mourn_inferior): Use current_inferior.
6389         * target.h (struct target_ops) <thread_address_space>: Delete.
6390         (target_thread_address_space): Delete.
6391         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6392         pointers directly.
6393         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6394         thread pointer instead of a ptid_t.  Adjust all callers.
6395         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6396         (first_thread_of_process): Delete, replaced by ...
6397         (first_thread_of_inferior): ... this new function.  All callers
6398         adjusted.
6399         (any_thread_of_process): Rename to ...
6400         (any_thread_of_inferior): ... this, and take an inferior pointer.
6401         (any_live_thread_of_process): Rename to ...
6402         (any_live_thread_of_inferior): ... this, and take an inferior
6403         pointer.
6404         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6405         (value_in_thread_stack_temporaries)
6406         (get_last_thread_stack_temporary): Take a thread pointer instead
6407         of a ptid_t.  Adjust all callers.
6408         (thread_info::set_running): New.
6409         (validate_registers_access): Use inferior_thread.
6410         (can_access_registers_ptid): Rename to ...
6411         (can_access_registers_thread): ... this, and take a thread
6412         pointer.
6413         (print_thread_info_1): Adjust to compare thread pointers instead
6414         of ptids.
6415         (switch_to_no_thread, switch_to_thread): Make extern.
6416         (scoped_restore_current_thread::~scoped_restore_current_thread):
6417         Use m_thread pointer directly.
6418         (scoped_restore_current_thread::scoped_restore_current_thread):
6419         Use inferior_thread.
6420         (thread_command): Use thread pointer directly.
6421         (thread_num_make_value_helper): Use inferior_thread.
6422         * top.c (execute_command): Use inferior_thread.
6423         * tui/tui-interp.c: Include "inferior.h".
6424         * varobj.c (varobj_create): Use inferior_thread.
6425         (value_of_root_1): Use find_thread_global_id instead of
6426         global_thread_id_to_ptid.
6427
6428 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6429
6430         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6431         possible.
6432         (regcache::write_part): Likewise.
6433         (readable_regcache::cooked_read_part): Update comment.
6434         (readable_regcache::cooked_write_part): Likewise.
6435         * regcache.h: (readable_regcache::read_part): Likewise.
6436         (regcache::write_part): Likewise.
6437
6438 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6439             Dirk Schubert  <dirk.schubert@arm.com>
6440
6441         * aarch64-linux-nat.c (post_attach): New.
6442         (aarch64_linux_nat_target::post_attach): Override post_attach to
6443         record the number of hardware debug registers.
6444
6445 2018-06-20  Tom Tromey  <tom@tromey.com>
6446
6447         * python/py-param.c (add_setshow_generic): Make parameters const.
6448         (parmpy_init): Update.
6449
6450 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6451
6452         * regcache.h (regcache_cooked_read_ftype): Rename to...
6453         (register_read_ftype): ...this, change type to function_view.
6454         (class reg_buffer) <save>: Remove src parameter.
6455         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6456         parameter non-const in first overload.  Remove src parameter in
6457         second overload.
6458         * regcache.c (do_cooked_read): Remove.
6459         (readonly_detached_regcache::readonly_detached_regcache): Make
6460         parameter non-const, adjust call to other constructor.
6461         (reg_buffer::save): Remove src parameter.
6462         * frame.c (do_frame_register_read): Remove.
6463         (frame_save_as_regcache): Use lambda function.
6464         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6465         parameter to ppu2spu_data *.
6466         (ppu2spu_sniffer): Use lambda function.
6467
6468 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6469
6470         * record-full.c (record_full_target::insert_breakpoint): Remove
6471         "struct" keyword, add const.
6472
6473 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6474
6475         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6476         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6477         * configure.ac: Remove AC_PREREQ, add missing quoting.
6478         * gnulib/configure.ac: Modernize usage of
6479         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6480         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6481         (AUTOMAKE_VERSION): Bump to 1.15.1.
6482         * configure: Re-generate.
6483         * config.in: Re-generate.
6484         * aclocal.m4: Re-generate.
6485         * gnulib/aclocal.m4: Re-generate.
6486         * gnulib/config.in: Re-generate.
6487         * gnulib/configure: Re-generate.
6488         * gnulib/import/Makefile.in: Re-generate.
6489
6490 2018-06-19  Pedro Alves  <palves@redhat.com>
6491
6492         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6493         (lookup_minimal_symbol_by_pc_section): ... here with
6494         gdb_assert_not_reached added.
6495
6496 2018-06-19  Pedro Alves  <palves@redhat.com>
6497
6498         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6499         parameter with a block parameter.  Compare location's block symbol
6500         with the frame's block instead of addresses.
6501         (skip_inline_frames): Pass the current block instead of the
6502         frame's address.  Break out as soon as we determine the frame
6503         should not be skipped.
6504
6505 2018-06-18  Tom Tromey  <tom@tromey.com>
6506
6507         * solib-aix.c (solib_aix_get_section_offsets): Return
6508         unique_xmalloc_ptr.
6509         (solib_aix_solib_create_inferior_hook): Update.
6510
6511 2018-06-18  Tom Tromey  <tom@tromey.com>
6512
6513         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6514
6515 2018-06-18  Tom Tromey  <tom@tromey.com>
6516
6517         * solib-frv.c (frv_relocate_main_executable): Use
6518         unique_xmalloc_ptr.
6519         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6520         unique_xmalloc_ptr.
6521
6522 2018-06-18  Tom Tromey  <tom@tromey.com>
6523
6524         * objfiles.h (inhibit_section_map_updates): Update.
6525         (resume_section_map_updates, resume_section_map_updates_cleanup):
6526         Remove.
6527         * solib-svr4.c (svr4_handle_solib_event): Update.
6528         * objfiles.c (inhibit_section_map_updates): Return
6529         scoped_restore_tmpl<int>.
6530         (resume_section_map_updates, resume_section_map_updates_cleanup):
6531         Remove.
6532
6533 2018-06-18  Tom Tromey  <tom@tromey.com>
6534
6535         * valprint.h (read_string): Update.
6536         * valprint.c (read_string): Change type of "buffer".
6537         (val_print_string): Update.
6538         * python/py-value.c (valpy_string): Update.
6539         * language.h (struct language_defn) <la_get_string>: Change
6540         type of "buffer".
6541         (default_get_string, c_get_string): Update.
6542         * language.c (default_get_string): Change type of "buffer".
6543         * guile/scm-value.c (gdbscm_value_to_string): Update.
6544         * c-lang.c (c_get_string): Change type of "buffer".
6545
6546 2018-06-18  Tom Tromey  <tom@tromey.com>
6547
6548         * ser-mingw.c (struct pipe_state_destroyer): New.
6549         (pipe_state_up): New typedef.
6550         (cleanup_pipe_state): Remove.
6551         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6552
6553 2018-06-18  Tom Tromey  <tom@tromey.com>
6554
6555         * rust-lang.h (rust_yyerror): Don't declare.
6556         * rust-lang.c (rust_language_defn): Update.
6557         * rust-exp.y (yyerror): Now static.
6558         * parse.c (parse_exp_in_context_1): Update.
6559         * p-lang.h (p_yyerror): Don't declare.
6560         * p-lang.c (p_language_defn): Update.
6561         * p-exp.y (yyerror): Now static.
6562         * opencl-lang.c (opencl_language_defn): Update.
6563         * objc-lang.c (objc_language_defn): Update.
6564         * m2-lang.h (m2_yyerror): Don't declare.
6565         * m2-lang.c (m2_language_defn): Update.
6566         * m2-exp.y (yyerror): Now static.
6567         * language.h (struct language_defn) <la_error>: Remove.
6568         * language.c (unk_lang_error): Remove.
6569         (unknown_language_defn, auto_language_defn): Remove.
6570         * go-lang.h (go_yyerror): Don't declare.
6571         * go-lang.c (go_language_defn): Update.
6572         * go-exp.y (yyerror): Now static.
6573         * f-lang.h (f_yyerror): Don't declare.
6574         * f-lang.c (f_language_defn): Update.
6575         * f-exp.y (yyerror): Now static.
6576         * d-lang.h (d_yyerror): Don't declare.
6577         * d-lang.c (d_language_defn): Update.
6578         * d-exp.y (yyerror): Now static.
6579         * c-lang.h (c_yyerror): Don't declare.
6580         * c-lang.c (c_language_defn, cplus_language_defn)
6581         (asm_language_defn, minimal_language_defn): Update.
6582         * c-exp.y (yyerror): Now static.
6583         * ada-lang.h (ada_yyerror): Don't declare.
6584         * ada-lang.c (ada_language_defn): Update.
6585         * ada-exp.y (yyerror): Now static.
6586
6587 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6588
6589         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6590         (store_sveregs_to_thread): Likewise.
6591         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6592         (aarch64_linux_store_inferior_registers): Likewise.
6593         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6594         function.
6595         (aarch64_sve_regs_copy_to_regcache): Likewise.
6596         (aarch64_sve_regs_copy_from_regcache): Likewise.
6597         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6598         declaration.
6599         (aarch64_sve_regs_copy_to_regcache): Likewise.
6600         (aarch64_sve_regs_copy_from_regcache): Likewise.
6601         (sve_context): Structure from Linux headers.
6602         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6603         (SVE_SIG_ZREG_SIZE): Likewise.
6604         (SVE_SIG_PREG_SIZE): Likewise.
6605         (SVE_SIG_FFR_SIZE): Likewise.
6606         (SVE_SIG_REGS_OFFSET): Likewise.
6607         (SVE_SIG_ZREGS_OFFSET): Likewise.
6608         (SVE_SIG_ZREG_OFFSET): Likewise.
6609         (SVE_SIG_ZREGS_SIZE): Likewise.
6610         (SVE_SIG_PREGS_OFFSET): Likewise.
6611         (SVE_SIG_PREG_OFFSET): Likewise.
6612         (SVE_SIG_PREGS_SIZE): Likewise.
6613         (SVE_SIG_FFR_OFFSET): Likewise.
6614         (SVE_SIG_REGS_SIZE): Likewise.
6615         (SVE_SIG_CONTEXT_SIZE): Likewise.
6616         (SVE_PT_REGS_MASK): Likewise.
6617         (SVE_PT_REGS_FPSIMD): Likewise.
6618         (SVE_PT_REGS_SVE): Likewise.
6619         (SVE_PT_VL_INHERIT): Likewise.
6620         (SVE_PT_VL_ONEXEC): Likewise.
6621         (SVE_PT_REGS_OFFSET): Likewise.
6622         (SVE_PT_FPSIMD_OFFSET): Likewise.
6623         (SVE_PT_FPSIMD_SIZE): Likewise.
6624         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6625         (SVE_PT_SVE_PREG_SIZE): Likewise.
6626         (SVE_PT_SVE_FFR_SIZE): Likewise.
6627         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6628         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6629         (__SVE_SIG_TO_PT): Likewise.
6630         (SVE_PT_SVE_OFFSET): Likewise.
6631         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6632         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6633         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6634         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6635         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6636         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6637         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6638         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6639         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6640         (SVE_PT_SVE_SIZE): Likewise.
6641         (SVE_PT_SIZE): Likewise.
6642         (HAS_SVE_STATE): New define.
6643
6644 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6645
6646         * nat/aarch64-sve-linux-sigcontext.h: New file.
6647         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6648         new files.
6649         (SVE_VQ_MIN): Likewise.
6650         (SVE_VQ_MAX): Likewise.
6651         (SVE_VL_MIN): Likewise.
6652         (SVE_VL_MAX): Likewise.
6653         (SVE_NUM_ZREGS): Likewise.
6654         (SVE_NUM_PREGS): Likewise.
6655         (sve_vl_valid): Likewise.
6656         (struct user_sve_header): Likewise.
6657
6658 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6659             Richard Bunt <Richard.Bunt@arm.com>
6660
6661         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6662         was requested by GDB.
6663
6664 2018-06-15  Tom de Vries  <tdevries@suse.de>
6665
6666         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6667
6668 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6669
6670         * gnulib/update-gnulib.sh: Print expected versions of
6671         autoconf/aclocal.
6672
6673 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6674
6675         * arch-utils.c (default_type_align): Use type_length_units.
6676         * gdbtypes.c (type_align): Use type_length_units.
6677
6678 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6679
6680         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6681         of 'define' command.
6682
6683 2018-06-14  Tom de Vries  <tdevries@suse.de>
6684
6685         PR cli/22573
6686         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6687         get_no_prettyformat_print_options.
6688
6689 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6690
6691         * sparc-nat.h: Include target.h.
6692         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6693         <fetch_registers>: Remove this argument in function call.
6694         <store_registers>: Remove this argument in function call, remove
6695         extra semicolon.
6696         <low_forget_process>: Call sparc64_forget_process instead of
6697         sparc_forget_process.
6698
6699 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6700
6701         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6702         (procfs_target::make_corefile_notes): Adjust to new
6703         target_read_alloc return type.
6704
6705 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6706             Stephen Roberts  <stephen.roberts@arm.com>
6707
6708         PR gdb/22882
6709         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6710         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6711         Move should_notify_stop local into more inner scope.
6712
6713 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6714             Stephen Roberts  <stephen.roberts@arm.com>
6715
6716         PR gdb/22882
6717         * infrun.c (resume_1): Add call to mark_async_event_handler.
6718
6719 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6720
6721         * infrun.c (do_target_wait): Change old version of $pc printed.
6722
6723 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6724
6725         * dwarf2read.c (read_index_from_section): Rename to...
6726         (read_gdb_index_from_section): ... this, update all callers.
6727         (dwarf2_read_index): Rename to...
6728         (dwarf2_read_gdb_index): ... this, update all callers.
6729
6730 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6731
6732         * gdb/hppa-linux-nat.c
6733         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6734         hppa_linux_nat_target::fetch_registers.
6735
6736 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6737
6738         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6739         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6740         (AARCH64_DWARF_SVE_FFR): Likewise.
6741         (AARCH64_DWARF_SVE_P0): Likewise.
6742         (AARCH64_DWARF_SVE_Z0): Likewise.
6743
6744 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6745
6746         * common/common-regcache.h (raw_compare): New function.
6747         * regcache.c (regcache::raw_compare): Likewise.
6748         * regcache.h (regcache::raw_compare): New declaration.
6749
6750 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6751
6752         * common/common-regcache.h (reg_buffer_common): New structure.
6753         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6754         (reg_buffer::raw_supply): Likewise.
6755         (reg_buffer::raw_supply_integer): Likewise.
6756         (reg_buffer::raw_supply_zeroed): Likewise.
6757         (reg_buffer::raw_collect): Likewise.
6758         (reg_buffer::raw_collect_integer): Likewise.
6759         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6760         (reg_buffer::raw_supply): Likewise.
6761         (reg_buffer::raw_supply_integer): Likewise.
6762         (reg_buffer::raw_supply_zeroed): Likewise.
6763         (reg_buffer::raw_collect): Likewise.
6764         (reg_buffer::raw_collect_integer): Likewise.
6765
6766 2018-06-10  Tom Tromey  <tom@tromey.com>
6767
6768         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6769         (class remote_state) <stop_reply_queue>: Now std::vector.
6770         (remote_state::~remote_state)
6771         (remote_target::stop_reply_queue_length): Update.
6772         (struct queue_iter_param, remove_child_of_pending_fork)
6773         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6774         (check_pending_event_prevents_wildcard_vcont_callback)
6775         (remove_stop_reply_for_inferior)
6776         (remove_stop_reply_of_remote_state)
6777         (remote_notif_remove_once_on_match)
6778         (stop_reply_match_ptid_and_ws)
6779         (remote_kill_child_of_pending_fork): Remove.
6780         (remote_target::remove_new_fork_children)
6781         (remote_target::check_pending_events_prevent_wildcard_vcont)
6782         (remote_target::discard_pending_stop_replies)
6783         (remote_target::discard_pending_stop_replies_in_queue)
6784         (remote_target::remote_notif_remove_queued_reply)
6785         (remote_target::queued_stop_reply)
6786         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6787         (remote_target::wait, remote_target::kill_new_fork_children)
6788         (remote_target::async): Update.
6789
6790 2018-06-10  Tom Tromey  <tom@tromey.com>
6791
6792         * record-full.c (record_full_arch_list_cleanups): Remove.
6793         (record_full_message): Use try/catch.
6794         (record_full_wait_cleanups): Remove.
6795         (record_full_wait_1): Use try/catch.
6796         (record_full_restore): Likewise.
6797
6798 2018-06-10  Tom Tromey  <tom@tromey.com>
6799
6800         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6801         declare VEC.  Add constructor.
6802         <in_target_beneath>: Now bool.
6803         (record_full_breakpoints): Now a std::vector, static.
6804         (record_full_sync_record_breakpoints)
6805         (record_full_init_record_breakpoints)
6806         (record_full_target::insert_breakpoint)
6807         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6808
6809 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6810
6811         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6812         * serial.c (serial_interface_lookup): Remove struct keyword.
6813
6814 2018-06-10  Tom Tromey  <tom@tromey.com>
6815
6816         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6817         method.
6818         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6819         a method.
6820         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6821         method.
6822         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6823         "beneath" as a method.
6824         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6825         Use "beneath" as a method.
6826
6827 2018-06-10  Tom Tromey  <tom@tromey.com>
6828
6829         * tracefile.c (struct trace_file_writer_deleter): New.
6830         <operator()>: Rename from trace_file_writer_xfree.
6831         (trace_file_writer_up): New typedef.
6832         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6833
6834 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6835
6836         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6837         <m_registers, m_register_status>: Change type to
6838         std::unique_ptr.
6839         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6840         XCNEWVEC.
6841
6842 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6843
6844         * common/common-regcache.h (enum register_status): Add
6845         underlying type "signed char".
6846         * regcache.h (reg_buffer) <m_register_status>: Change type to
6847         register_status *.
6848         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6849         register_status instead of signed char.
6850         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6851         (reg_buffer::get_register_status): Remove cast.
6852         (readable_regcache::raw_read): Remove cast.
6853         (readable_regcache::cooked_read): Remove cast.
6854
6855 2018-06-09  Tom Tromey  <tom@tromey.com>
6856
6857         * source.c (reverse_search_command, forward_search_command): Use
6858         scoped_fd.
6859
6860 2018-06-09  Tom Tromey  <tom@tromey.com>
6861
6862         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6863         (serial_ops_list): Now static, std::vector.
6864         (serial_interface_lookup, serial_add_interface): Update.
6865
6866 2018-06-09  Tom Tromey  <tom@tromey.com>
6867
6868         * dwarf2read.c (process_cu_includes): Update.
6869         (process_full_comp_unit): Update.
6870         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6871         std::vector.
6872
6873 2018-06-08  Paul Koning  <paul_koning@dell.com>
6874
6875         PR gdb/23252
6876
6877         * python/python.c (do_start_initialization):
6878         Avoid call to internal Python API.
6879         (init__gdb_module): New function.
6880
6881 2018-06-08  Gary Benson <gbenson@redhat.com>
6882
6883         * linux-thread-db.c (valprint.h): New include.
6884         (struct check_thread_db_info): New structure.
6885         (check_thread_db_on_load, tdb_testinfo): New static globals.
6886         (check_thread_db, check_thread_db_callback): New functions.
6887         (try_thread_db_load_1): Run integrity checks if requested.
6888         (maintenance_check_libthread_db): New function.
6889         (_initialize_thread_db): Register "maint check libthread-db"
6890         and "maint set/show check-libthread-db".
6891         * NEWS: Mention the above new commands.
6892
6893 2018-06-08  Tom Tromey  <tom@tromey.com>
6894
6895         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6896         now a method.
6897
6898 2018-06-08  Tom Tromey  <tom@tromey.com>
6899
6900         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6901
6902 2018-06-08  Tom Tromey  <tom@tromey.com>
6903
6904         * common/btrace-common.h (struct btrace_data): Add constructor,
6905         destructor, move assignment operator.
6906         <empty, clear, fini>: New methods.
6907         <format>: Initialize.
6908         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6909         (btrace_data_empty): Don't declare.
6910         * common/btrace-common.c (btrace_data_init): Remove.
6911         (btrace_data::fini): Rename from btrace_data_fini.
6912         (btrace_data::empty): Rename from btrace_data_empty.
6913         (btrace_data::clear): Rename from btrace_data_clear.  Return
6914         bool.
6915         * btrace.h (make_cleanup_btrace_data): Don't declare.
6916         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6917         (parse_xml_btrace): Update.
6918         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6919         (maint_btrace_clear_packet_history_cmd): Update.
6920
6921 2018-06-07  Pedro Alves  <palves@redhat.com>
6922
6923         * target.h (target_ops) <beneath>: Now a method.  All references
6924         updated.
6925         (class target_stack): New.
6926         * target.c (g_target_stack): New.
6927         (g_current_top_target): Delete.
6928         (current_top_target): Get the top target out of g_target_stack.
6929         (target_stack::push, target_stack::unpush): New.
6930         (push_target, unpush_target): Reimplement.
6931         (target_is_pushed): Reimplement in terms of g_target_stack.
6932         (target_ops::beneath, target_stack::find_beneath): New.
6933
6934 2018-06-07  Pedro Alves  <palves@redhat.com>
6935
6936         * target.h (find_target_beneath): Delete declaration.
6937         * target.c (find_target_beneath): Delete definition.
6938         * aix-thread.c: All callers of find_target_beneath adjusted to
6939         call target_ops::beneath instead.
6940         * bsd-uthread.c: Likewise.
6941         * linux-thread-db.c: Likewise.
6942         * ravenscar-thread.c: Likewise.
6943         * sol-thread.c: Likewise.
6944         * spu-multiarch.c: Likewise.
6945
6946 2018-06-07  Pedro Alves  <palves@redhat.com>
6947
6948         * target.h (target_ops) <beneath>: Now a method.  All references
6949         updated.
6950         (target_ops) <m_beneath>: New.
6951         * target.c (target_ops::beneath): New.
6952         * corelow.c: Adjust all references to target_ops::beneath.
6953         * linux-thread-db.c: Likewise.
6954         * make-target-delegates: Likewise.
6955         * record-btrace.c: Likewise.
6956         * record-full.c: Likewise.
6957         * remote.c: Likewise.
6958         * target.c: Likewise.
6959         * target-delegates.c: Regenerate.
6960
6961 2018-06-07  Pedro Alves  <palves@redhat.com>
6962
6963         * target.h (target_stack): Delete.
6964         (current_top_target): Declare function.
6965         * target.c (target_stack): Delete.
6966         (g_current_top_target): New.
6967         (current_top_target): New function.
6968         * auxv.c: Use current_top_target instead of target_stack
6969         throughout.
6970         * avr-tdep.c: Likewise.
6971         * breakpoint.c: Likewise.
6972         * corefile.c: Likewise.
6973         * elfread.c: Likewise.
6974         * eval.c: Likewise.
6975         * exceptions.c: Likewise.
6976         * frame.c: Likewise.
6977         * gdbarch-selftests.c: Likewise.
6978         * gnu-v3-abi.c: Likewise.
6979         * ia64-tdep.c: Likewise.
6980         * ia64-vms-tdep.c: Likewise.
6981         * infcall.c: Likewise.
6982         * infcmd.c: Likewise.
6983         * infrun.c: Likewise.
6984         * linespec.c: Likewise.
6985         * linux-tdep.c: Likewise.
6986         * minsyms.c: Likewise.
6987         * ppc-linux-nat.c: Likewise.
6988         * ppc-linux-tdep.c: Likewise.
6989         * procfs.c: Likewise.
6990         * regcache.c: Likewise.
6991         * remote.c: Likewise.
6992         * rs6000-tdep.c: Likewise.
6993         * s390-linux-nat.c: Likewise.
6994         * s390-tdep.c: Likewise.
6995         * solib-aix.c: Likewise.
6996         * solib-darwin.c: Likewise.
6997         * solib-dsbt.c: Likewise.
6998         * solib-spu.c: Likewise.
6999         * solib-svr4.c: Likewise.
7000         * solib-target.c: Likewise.
7001         * sparc-tdep.c: Likewise.
7002         * sparc64-tdep.c: Likewise.
7003         * spu-tdep.c: Likewise.
7004         * symfile.c: Likewise.
7005         * symtab.c: Likewise.
7006         * target-descriptions.c: Likewise.
7007         * target-memory.c: Likewise.
7008         * target.c: Likewise.
7009         * target.h: Likewise.
7010         * tracefile-tfile.c: Likewise.
7011         * tracepoint.c: Likewise.
7012         * valops.c: Likewise.
7013         * valprint.c: Likewise.
7014         * value.c: Likewise.
7015         * windows-tdep.c: Likewise.
7016         * mi/mi-main.c: Likewise.
7017
7018 2018-06-07  Tom Tromey  <tom@tromey.com>
7019
7020         * valprint.h (build_address_symbolic): Declare.
7021         * printcmd.c (print_address_symbolic): Update.
7022         (build_address_symbolic): Change "name" and "filename" to
7023         std::string.
7024         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7025         Update.
7026         * defs.h (build_address_symbolic): Remove declaration.
7027
7028 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7029
7030         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7031         (aarch64_vnv_type): Add function.
7032         (aarch64_pseudo_register_name): Add V regs for SVE.
7033         (aarch64_pseudo_register_type): Likewise.
7034         (aarch64_pseudo_register_reggroup_p): Likewise.
7035         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7036         (aarch64_pseudo_read_value): Add V regs for SVE.
7037         (aarch64_pseudo_write_2): Use V0 offset for SVE
7038         (aarch64_pseudo_write): Add V regs for SVE.
7039         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7040
7041 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7042
7043         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7044         (sve_vl_from_vq): Likewise.
7045
7046 2018-06-05  Tom Tromey  <tom@tromey.com>
7047
7048         * cli/cli-cmds.c (show_version): Update.
7049         * top.c (print_gdb_version): Add "interactive" parameter.
7050         Update.
7051         * main.c (captured_main_1): Update.
7052         * top.h (print_gdb_version): Add "interactive" parameter and a
7053         comment.
7054
7055 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7056
7057         * common/enum-flags.h: Add trailing semicolon to example in
7058         comment.
7059
7060 2018-06-05  Tom Tromey  <tom@tromey.com>
7061
7062         PR cli/12326:
7063         * NEWS: Add entry about pager.
7064         * utils.c (pagination_disabled_for_command): New global.
7065         (prompt_for_continue): Allow "c" response to prompt.
7066         (reinitialize_more_filter): Clear
7067         pagination_disabled_for_command.
7068         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7069
7070 2018-06-04  Tom Tromey  <tom@tromey.com>
7071
7072         * ada-lang.h (ada_lookup_symbol_list): Update.
7073         * ada-lang.c (resolve_subexp): Update.
7074         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7075         parameter.
7076         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7077         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7078         results parameter to std::vector.
7079         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7080         Update.
7081         * ada-exp.y (block_lookup): Update.
7082         (select_possible_type_sym): Change type of syms.  Remove nsyms
7083         parameter.
7084         (write_var_or_type, write_name_assoc): Update.
7085
7086 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7087
7088         * windows-nat.c (windows_nat_target::xfer_partial): Return
7089         TARGET_XFER_E_IO if we need to delegate to the target beneath
7090         but BENEATH is NULL.
7091
7092 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7093
7094         * Makefile.in (config.status): Add configure.nat as a
7095         dependency.
7096
7097 2018-06-04  Tom Tromey  <tom@tromey.com>
7098
7099         * cp-name-parser.y (cpname_state): Add method declarations.
7100         (HANDLE_QUAL): Update.
7101         (cpname_state::d_grab, cpname_state::fill_comp)
7102         (cpname_state::make_operator, cpname_state::make_dtor)
7103         (cpname_state::make_builtin_type, cpname_state::make_name)
7104         (cpname_state::d_qualify, cpname_state::d_int_type)
7105         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7106         (%union): Move earlier.
7107
7108 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7109
7110         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7111
7112 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7113
7114         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7115         (aarch64_pseudo_write_1): Likewise.
7116         (aarch64_pseudo_read_value): Use helper.
7117         (aarch64_pseudo_write): Likewise.
7118
7119 2018-06-04  Pedro Alves  <palves@redhat.com>
7120
7121         * darwin-nat.c (darwin_ops): Delete.
7122         (darwin_attach_pid): Use get_native_target.
7123
7124 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7125
7126         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7127         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7128
7129 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7130
7131         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7132         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7133         (aarch64_gdbarch_init): Check for SVE.
7134         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7135
7136 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7137
7138         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7139         * aarch64-tdep.h (aarch64_read_description): Likewise.
7140         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7141         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7142         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7143         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7144         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7145
7146 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7147
7148         * value.c (value_fetch_lazy_bitfield): New.
7149         (value_fetch_lazy_memory): New.
7150         (value_fetch_lazy_register): New.
7151         (value_fetch_lazy): Factor out to smaller functions.
7152
7153 2018-06-01  Tom Tromey  <tom@tromey.com>
7154
7155         * cp-name-parser.y (backslashable, represented): Now const.
7156
7157 2018-06-01  Tom Tromey  <tom@tromey.com>
7158
7159         * cp-name-parser.y: Include parser-defs.h.
7160         (parser_fprintf): Remove declaration.
7161
7162 2018-06-01  Tom Tromey  <tom@tromey.com>
7163
7164         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7165         %parse-param.
7166         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7167         (global_result): Remove globals.
7168         (struct cpname_state): New.
7169         (yyparse): Don't declare.
7170         (yylex, yyerror): Move declarations after %union.
7171         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7172         (make_name): Add state parameter.
7173         Update all callers.
7174         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7175         parameter.
7176         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7177         Update.
7178         (yylex): Add lvalp, state parameters.
7179         (yyerror): Add state parameter.
7180         (cp_demangled_name_to_comp): Update.
7181
7182 2018-06-01  Tom Tromey  <tom@tromey.com>
7183
7184         * cp-name-parser.y (parser_fprintf): Declare.
7185         (GDB_YY_REMAP_PREFIX): Define.
7186         Include yy-remap.h.  Don't redefine yy* identifiers.
7187
7188 2018-06-01  Tom Tromey  <tom@tromey.com>
7189
7190         * python/py-type.c (typy_legacy_template_argument): Update.
7191         * cp-support.h (cp_demangled_name_to_comp): Update.
7192         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7193         parameter to be a "std::string *".
7194         (main): Update.
7195
7196 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7197
7198         * ada-lex.l: Include "diagnostics.h" instead of
7199         "common/diagnostics.h".
7200         * unittests/environ-selftests.c: Likewise.
7201         * common/diagnostics.h: Moved to ../include.
7202
7203 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7204
7205         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7206         to language_mode_manual while calling breakpoint_re_set_one.
7207
7208 2018-06-01  Tom Tromey  <tom@tromey.com>
7209
7210         * valops.c (value_cast_structs, destructor_name_p): Update.
7211         * symtab.c (gdb_mangle_name): Update.
7212         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7213         Update.
7214         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7215         (pascal_object_print_value_fields, pascal_object_print_value):
7216         Update.
7217         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7218         * linespec.c (find_methods): Update.
7219         * gdbtypes.h (type_name_no_tag): Remove.
7220         (type_name_or_error): Rename from type_name_no_tag_or_error.
7221         * gdbtypes.c (type_name_no_tag): Remove.
7222         (type_name_or_error): Rename from type_name_no_tag_or_error.
7223         (lookup_struct_elt_type, check_typedef): Update.
7224         * expprint.c (print_subexp_standard): Update.
7225         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7226         * d-namespace.c (d_lookup_nested_symbol): Update.
7227         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7228         (cp_print_class_member): Update.
7229         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7230         * completer.c (add_struct_fields): Update.
7231         * c-typeprint.c (cp_type_print_derivation_info)
7232         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7233         Update.
7234         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7235         (ada_prefer_type, ada_is_exception_sym): Update.
7236
7237 2018-06-01  Tom Tromey  <tom@tromey.com>
7238
7239         * valops.c (enum_constant_from_type, value_namespace_elt)
7240         (value_maybe_namespace_elt): Update.
7241         * valarith.c (find_size_for_pointer_math): Update.
7242         * target-descriptions.c (make_gdb_type): Update.
7243         * symmisc.c (print_symbol): Update.
7244         * stabsread.c (define_symbol, read_type)
7245         (complain_about_struct_wipeout, add_undefined_type)
7246         (cleanup_undefined_types_1): Update.
7247         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7248         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7249         (rust_internal_print_type, rust_composite_type)
7250         (rust_evaluate_funcall, rust_evaluate_subexp)
7251         (rust_inclusive_range_type_p): Update.
7252         * python/py-type.c (typy_get_tag): Update.
7253         * p-typeprint.c (pascal_type_print_base): Update.
7254         * mdebugread.c (parse_symbol, parse_type): Update.
7255         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7256         Update.
7257         * guile/scm-type.c (gdbscm_type_tag): Update.
7258         * go-lang.c (sixg_string_p): Update.
7259         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7260         Update.
7261         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7262         (TYPE_TAG_NAME): Remove.
7263         * gdbtypes.c (type_name_no_tag): Simplify.
7264         (check_typedef, check_types_equal, recursive_dump_type)
7265         (copy_type_recursive, arch_composite_type): Update.
7266         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7267         in summary mode when needed.
7268         * eval.c (evaluate_funcall): Update.
7269         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7270         (process_structure_scope, read_enumeration_type)
7271         (read_namespace_type, read_module_type, determine_prefix): Update.
7272         * cp-support.c (inspect_type): Update.
7273         * coffread.c (process_coff_symbol, decode_base_type): Update.
7274         * c-varobj.c (c_is_path_expr_parent): Update.
7275         * c-typeprint.c (c_type_print_base_struct_union): Update.
7276         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7277         summary when using C language.
7278         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7279         (gen_maybe_namespace_elt): Update.
7280         * ada-lang.c (ada_type_name): Simplify.
7281         (empty_record, ada_template_to_fixed_record_type_1)
7282         (template_to_static_fixed_type)
7283         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7284
7285 2018-06-01  Tom Tromey  <tom@tromey.com>
7286
7287         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7288         c_print_type.
7289         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7290         (c_print_type): Update.
7291         (c_print_type): New overload.
7292         (c_type_print_varspec_prefix, c_type_print_args)
7293         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7294         (c_type_print_base_struct_union, c_type_print_base_1)
7295         (cp_type_print_method_args): Add "language" parameter.
7296         (c_type_print_base): Update.
7297         * c-lang.h (c_print_type): Add new overload.
7298
7299 2018-06-01  Tom Tromey  <tom@tromey.com>
7300
7301         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7302         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7303
7304 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7305
7306         * aarch64-tdep.c (aarch64_sve_register_names): New const
7307         var.
7308         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7309         (AARCH64_SVE_Z_REGS_NUM): New define.
7310         (AARCH64_SVE_P_REGS_NUM): Likewise.
7311         (AARCH64_SVE_NUM_REGS): Likewise.
7312
7313 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7314
7315         * nat/linux-ptrace.h [__alpha__]
7316         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7317         definitions.
7318
7319 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7320
7321         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7322         the endianness selected.
7323         * NEWS: Document `set endian auto' mode operation update.
7324
7325 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7326
7327         * Makefile.in: Add new header.
7328         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7329         (sve_vl_from_vg): Likewise.
7330         (sve_vq_from_vl): Likewise.
7331         (sve_vl_from_vq): Likewise.
7332         (sve_vq_from_vg): Likewise.
7333         (sve_vg_from_vq): Likewise.
7334         * configure.nat: Add new c file.
7335         * nat/aarch64-sve-linux-ptrace.c: New file.
7336         * nat/aarch64-sve-linux-ptrace.h: New file.
7337
7338 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7339
7340         * aarch64-linux-nat.c (aarch64_linux_read_description):
7341         Add parmeter zero.
7342         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7343         Likewise.
7344         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7345         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7346         (aarch64_gdbarch_init): Add parmeter zero.
7347         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7348         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7349         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7350         parmeter.
7351         * doc/gdb.texinfo: Describe SVE feature
7352         * features/aarch64-sve.c: New file.
7353
7354 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7355
7356         PR gdb/23210
7357         * gdbarch.sh (significant_addr_bit): Default to zero when
7358         not set by target architecture.
7359         * gdbarch.c: Re-generated.
7360         * utils.c (address_significant): Update.
7361
7362 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7363
7364         * stack.c (func_command): Remove trailing newline in call to error.
7365
7366 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7367
7368         * regcache.h (regcache_raw_collect): Remove, update callers to
7369         use regcache::raw_collect.
7370         * regcache.c (regcache_raw_collect): Remove.
7371
7372 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7373
7374         * regcache.h (regcache_raw_supply): Remove, update callers to
7375         use detached_regcache::raw_supply.
7376         * regcache.c (regcache_raw_supply): Remove.
7377
7378 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7379
7380         * regcache.h (regcache_cooked_write_part): Remove, update
7381         callers to use regcache::cooked_write_part.
7382         * regcache.c (regcache_cooked_write_part): Remove.
7383
7384 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7385
7386         * regcache.h (regcache_cooked_read_part): Remove, update callers
7387         to use readable_regcache::cooked_read_part.
7388         * regcache.c (regcache_cooked_read_part): Remove.
7389
7390 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7391
7392         * regcache.h (regcache_cooked_read_value): Remove, update
7393         callers to use readable_regcache::cooked_read_value.
7394         * regcache.c (regcache_cooked_read_value): Remove.
7395
7396 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7397
7398         * regcache.h (regcache_cooked_write): Remove, update callers to
7399         use regcache::cooked_write.
7400         * regcache.c (regcache_cooked_write): Remove.
7401
7402 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7403
7404         * regcache.h (regcache_invalidate): Remove, update callers to
7405         use detached_regcache::invalidate instead.
7406         * regcache.c (regcache_invalidate): Remove.
7407
7408 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7409
7410         * regcache.h (regcache_raw_write_part): Remove, update callers
7411         to use regcache::raw_write_part instead.
7412         * regcache.c (regcache_raw_write_part): Remove.
7413
7414 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7415
7416         * regcache.h (regcache_raw_read_part): Remove, update callers to
7417         use readable_regcache::raw_read_part instead.
7418         * regcache.c (regcache_raw_read_part): Remove.
7419
7420 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7421
7422         * regcache.h (regcache_cooked_read): Remove, update callers to
7423         use readable_regcache::cooked_read instead.
7424         * regcache.c (regcache_cooked_read): Remove.
7425
7426 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7427
7428         * regcache.h (regcache_raw_write): Remove, update callers to use
7429         regcache::raw_write instead.
7430         * regcache.c (regcache_raw_write): Remove.
7431
7432 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7433
7434         * regcache.h (regcache_raw_read): Remove, update callers to use
7435         readable_regcache::raw_read instead.
7436         * regcache.c (regcache_raw_read): Remove.
7437
7438 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7439
7440         * regcache.h (regcache_raw_update): Remove, update callers to
7441         use readable_regcache::raw_update instead.
7442         * regcache.c (regcache_raw_update): Remove.
7443
7444 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7445
7446         * regcache.h (regcache_register_status): Remove, update callers
7447         to use reg_buffer::get_register_status directly instead.
7448         * regcache.c (regcache_register_status): Remove.
7449
7450 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7451
7452         * regcache.h (regcache_get_ptid): Remove, update all callers to
7453         call regcache::ptid instead.
7454         * regcache.c (regcache_get_ptid): Remove.
7455
7456 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7457
7458         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7459
7460 2018-05-30  Pedro Alves  <palves@redhat.com>
7461
7462         * common/common-exceptions.h (exception_rethrow): Use
7463         ATTRIBUTE_NORETURN.
7464
7465 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7466
7467         * breakpoint.c (print_solib_event, check_status_catch_solib):
7468         Remove struct keyword in range-based for loops.
7469         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7470         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7471         Likewise.
7472         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7473         Likewise.
7474         * symfile.c (addr_info_make_relative): Likewise.
7475         * thread.c (value_in_thread_stack_temporaries): Likewise.
7476
7477 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7478
7479         PR gdb/16841
7480         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7481         aggregate type to get its real type before accessing it.
7482
7483 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7484
7485         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7486         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7487         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7488         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7489         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7490         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7491         * printcmd.c (info_address_command): Likewise.
7492
7493 2018-05-29  Tom Tromey  <tom@tromey.com>
7494
7495         * windows-nat.c (handle_exception): Update fall-through comment.
7496
7497 2018-05-29  Tom Tromey  <tom@tromey.com>
7498
7499         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7500         (struct program_space) <added_solibs>: Now a std::vector.
7501         * breakpoint.c (print_solib_event): Update.
7502         (check_status_catch_solib): Update.
7503         * progspace.c (clear_program_space_solib_cache): Update.
7504         * solib.c (update_solib_list): Update.
7505
7506 2018-05-29  Tom Tromey  <tom@tromey.com>
7507
7508         * python/py-type.c (typy_richcompare): Update.
7509         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7510         * gdbtypes.h (types_deeply_equal): Return bool.
7511         (types_equal): Likewise.
7512         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7513         declare VEC.
7514         (check_types_equal): Change worklist to std::vector.  Return
7515         bool.
7516         (struct type_equality_entry): Add constructor.
7517         (compare_maybe_null_strings): Return bool.
7518         (check_types_worklist): Return bool.  Change worklist to
7519         std::vector.
7520         (types_deeply_equal): Use std::vector.
7521         (types_equal): Return bool.
7522         (compare_maybe_null_strings): Simplify.
7523
7524 2018-05-29  Tom Tromey  <tom@tromey.com>
7525
7526         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7527
7528 2018-05-29  Tom Tromey  <tom@tromey.com>
7529
7530         * objc-lang.h: Don't include cp-support.h.
7531         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7532         declare VEC.
7533
7534 2018-05-27  Tom Tromey  <tom@tromey.com>
7535
7536         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7537
7538 2018-05-25  Tom Tromey  <tom@tromey.com>
7539
7540         * value.c (value::location): Initialize.
7541
7542 2018-05-25  Tom Tromey  <tom@tromey.com>
7543
7544         * dbxread.c (init_bincl_list): Remove.
7545         (bincl_list): Now a std::vector.
7546         (bincls_allocated, next_bincl): Remove.
7547         (free_bincl_list, do_free_bincl_list_cleanup)
7548         (make_cleanup_free_bincl_list): Remove.
7549         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7550         unique_xmalloc_ptr.
7551         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7552         (struct header_file_location): Add constructor.
7553         (add_bincl_to_list): Remove.
7554
7555 2018-05-25  Tom Tromey  <tom@tromey.com>
7556
7557         * tui/tui.c (tui_enable): Update.
7558         * mi/mi-interp.c (mi_interp::init): Update.
7559         * interps.h (class interp) <name>: New method.
7560         <m_name>: Rename from name.
7561         (~scoped_restore_interp): Update.
7562         * interps.c (interp::interp): Update.
7563         (interp_add, interp_set, interp_lookup_existing)
7564         (current_interp_named_p): Update.
7565
7566 2018-05-25  Tom Tromey  <tom@tromey.com>
7567
7568         * interps.c (interp_name): Remove.
7569         * mi/mi-interp.c (mi_interp::init): Update.
7570         * interps.h (interp_name): Remove.
7571         (~scoped_restore_interp): Update.
7572         * tui/tui.c (tui_enable): Update.
7573
7574 2018-05-25  Tom Tromey  <tom@tromey.com>
7575
7576         * utils.c (fputs_maybe_filtered): Update.
7577         * linespec.c (decode_line_full): Update.
7578         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7579         (mi_print_breakpoint_for_event, mi_solib_loaded)
7580         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7581         (mi_user_selected_context_changed): Update.
7582         * mi/mi-main.c (mi_execute_command): Update.
7583         * cli/cli-script.c (execute_control_command): Update.
7584         * python/python.c (execute_gdb_command): Update.
7585         * solib.c (info_sharedlibrary_command): Update.
7586         * interps.c (interp_ui_out): Remove.
7587         * interps.h (interp_ui_out): Remove.
7588
7589 2018-05-25  Tom Tromey  <tom@tromey.com>
7590
7591         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7592         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7593         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7594
7595 2018-05-25  Tom Tromey  <tom@tromey.com>
7596
7597         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7598         * interps.c (interp_exec): Use scoped_restore.
7599
7600 2018-05-25  Tom Tromey  <tom@tromey.com>
7601
7602         * remote.c (remote_target::remote_file_get): Use
7603         gdb::byte_vector.
7604         (remote_target::remote_file_put): Likewise.
7605
7606 2018-05-25  Tom Tromey  <tom@tromey.com>
7607
7608         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7609         a std::string.
7610         (get_pe_section_index, add_pe_exported_sym): Update.
7611         (read_pe_exported_syms): Use gdb::def_vector.
7612
7613 2018-05-25  Tom Tromey  <tom@tromey.com>
7614
7615         * frame.c (remove_prev_frame): Remove.
7616         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7617
7618 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7619
7620         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7621         Remove prototypes.
7622         * mips-linux-nat.c (supply_fpregset): Always call
7623         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7624         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7625         `mips_fill_fpregset'.
7626         * mips-linux-tdep.c (mips_supply_fpregset)
7627         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7628         (mips_fill_fpregset_wrapper): Remove functions.
7629         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7630         (mips_linux_fpregset): Remove variable.
7631         (mips_linux_iterate_over_regset_sections): Use
7632         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7633         (mips_linux_o32_sigframe_init): Remove comment.
7634
7635 2018-05-25  Pedro Alves  <palves@redhat.com>
7636
7637         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7638         (struct readahead_cache, struct packet_reg, struct
7639         remote_arch_state, class remote_state): Move higher up in the
7640         file.
7641         (remote_target::m_remote_state): Now an object instead of a pointer.
7642         (remote_target::get_remote_state): Adjust.
7643
7644 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7645
7646         * stack.c (select_and_print_frame): Delete.
7647         (struct function_bounds): Move struct within function.
7648         (func_command): Most content moved into new function
7649         find_frame_for_function, use new function, print result, add
7650         function comment.
7651         (find_frame_for_function): New function, now returns a result.
7652
7653 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7654
7655         * stack.c (iterate_over_block_arg_vars): Fix comment.
7656         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7657
7658 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7659
7660         PR gdb/23203
7661         * frame.c
7662         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7663         Define.
7664         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7665         Define.
7666         * frame.h (class scoped_restore_selected_frame): New class.
7667         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7668         of any exception, use scoped_restore_selected_frame to restore the
7669         frame instead.
7670
7671 2018-05-24  Pedro Alves  <palves@redhat.com>
7672
7673         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7674         override.
7675
7676 2018-05-23  Tom Tromey  <tom@tromey.com>
7677
7678         * complaints.c (struct complaints): Remove.
7679         (symfile_complaint_book): Remove.
7680         (series): New global.
7681         (complaint_internal): Update.
7682         (clear_complaints): Update.
7683
7684 2018-05-23  Tom Tromey  <tom@tromey.com>
7685
7686         * complaints.c (counters): New global.
7687         (struct complain): Remove.
7688         (struct complaints) <root>: Remove.
7689         (complaint_sentinel): Remove.
7690         (symfile_complaint_book): Update.
7691         (find_complaint) Remove.
7692         (complaint_internal, clear_complaints): Update.
7693
7694 2018-05-23  Tom Tromey  <tom@tromey.com>
7695
7696         * complaints.c (struct complain) <file, line>: Remove.
7697         (find_complaint): Remove file, line parameters.
7698         (complaint_internal): Update.
7699
7700 2018-05-23  Tom Tromey  <tom@tromey.com>
7701
7702         * complaints.c (vcomplaint): Remove.
7703         (complaint_internal) Merge in contents of vcomplaint.
7704
7705 2018-05-23  Tom Tromey  <tom@tromey.com>
7706
7707         * complaints.c (struct complaints) <explanation>: Remove.
7708         (symfile_explanations): Remove.
7709         (symfile_complaint_book): Update.
7710         (vcomplaint): Update.
7711         (struct explanation): Remove.
7712
7713 2018-05-23  Tom Tromey  <tom@tromey.com>
7714
7715         * complaints.c (symfile_complaints): Remove.
7716         (complaint_internal): Remove "complaints" parameter.
7717         (clear_complaints, vcomplaint): Remove "c" parameter.
7718         (get_complaints): Remove.
7719         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7720         (dwarf2_debug_line_missing_file_complaint)
7721         (dwarf2_debug_line_missing_end_sequence_complaint)
7722         (dwarf2_complex_location_expr_complaint)
7723         (dwarf2_const_value_length_mismatch_complaint)
7724         (dwarf2_section_buffer_overflow_complaint)
7725         (dwarf2_macro_malformed_definition_complaint)
7726         (dwarf2_invalid_attrib_class_complaint)
7727         (create_addrmap_from_index, dw2_symtab_iter_next)
7728         (dw2_expand_marked_cus)
7729         (dw2_debug_names_iterator::find_vec_in_debug_names)
7730         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7731         (create_debug_type_hash_table, init_cutu_and_read_dies)
7732         (partial_die_parent_scope, add_partial_enumeration)
7733         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7734         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7735         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7736         (create_cus_hash_table, create_dwp_hash_table)
7737         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7738         (dwarf2_rnglists_process, dwarf2_ranges_process)
7739         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7740         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7741         (handle_struct_member_die, process_structure_scope)
7742         (read_array_type, read_common_block, read_module_type)
7743         (read_tag_pointer_type, read_typedef, read_base_type)
7744         (read_subrange_type, load_partial_dies, partial_die_info::read)
7745         (partial_die_info::read, partial_die_info::read)
7746         (partial_die_info::read, read_checked_initial_length_and_offset)
7747         (dwarf2_string_attr, read_formatted_entries)
7748         (dwarf_decode_line_header)
7749         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7750         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7751         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7752         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7753         (get_signatured_type, get_DW_AT_signature_type)
7754         (decode_locdesc, file_file_name, consume_improper_spaces)
7755         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7756         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7757         (dwarf2_symbol_mark_computed, set_die_type)
7758         (read_attribute_value): Update.
7759         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7760         Update.
7761         * dbxread.c (unknown_symtype_complaint)
7762         (lbrac_mismatch_complaint, repeated_header_complaint)
7763         (set_namestring, function_outside_compilation_unit_complaint)
7764         (read_dbx_symtab, process_one_symbol): Update.
7765         * gdbtypes.c (stub_noname_complaint): Update.
7766         * windows-nat.c (handle_unload_dll): Update.
7767         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7768         (decode_base_type): Update.
7769         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7770         (eb_complaint, record_include_begin, record_include_end)
7771         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7772         (process_xcoff_symbol, read_symbol)
7773         (function_outside_compilation_unit_complaint)
7774         (scan_xcoff_symtab): Update.
7775         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7776         * buildsym.c (finish_block_internal, make_blockvector)
7777         (end_symtab_get_static_block, augment_type_symtab): Update.
7778         * dtrace-probe.c (dtrace_process_dof)
7779         (dtrace_static_probe_ops::get_probes): Update.
7780         * complaints.h (struct complaint): Don't declare.
7781         (symfile_complaints): Remove.
7782         (complaint_internal): Remove "complaints" parameter.
7783         (complaint): Likewise.
7784         (clear_complaints): Likewise.
7785         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7786         (reread_symbols): Update.
7787         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7788         (dwarf2_frame_cache, decode_frame_entry): Update.
7789         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7790         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7791         (info_selectors_command): Update.
7792         * macrotab.c (macro_include, check_for_redefinition)
7793         (macro_undef): Update.
7794         * objfiles.c (filter_overlapping_sections): Update.
7795         * stabsread.c (invalid_cpp_abbrev_complaint)
7796         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7797         (define_symbol, error_type, read_type, rs6000_builtin_type)
7798         (stabs_method_name_from_physname, read_member_functions)
7799         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7800         (attach_fields_to_type, complain_about_struct_wipeout)
7801         (read_range_type, read_args, common_block_start)
7802         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7803         Update.
7804         * mdebugread.c (index_complaint, unknown_ext_complaint)
7805         (basic_type_complaint, bad_tag_guess_complaint)
7806         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7807         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7808         (parse_procedure, parse_lines)
7809         (function_outside_compilation_unit_complaint)
7810         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7811         (bad_tag_guess_complaint, reg_value_complaint): Update.
7812         * cp-support.c (demangled_name_complaint): Update.
7813         * macroscope.c (sal_macro_scope): Update.
7814         * dwarf-index-write.c (class debug_names): Update.
7815
7816 2018-05-23  Tom Tromey  <tom@tromey.com>
7817
7818         * complaints.c (clear_complaints): Remove "noisy" parameter.
7819         * complaints.h (clear_complaints): Update.
7820         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7821         (reread_symbols): Update.
7822
7823 2018-05-23  Tom Tromey  <tom@tromey.com>
7824
7825         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7826         SUBSEQUENT_MESSAGE.
7827         (vcomplaint, clear_complaints): Update.
7828         (symfile_explanations): Remove some messages.
7829
7830 2018-05-23  Tom Tromey  <tom@tromey.com>
7831
7832         * complaints.c (internal_complaint): Remove.
7833         * complaints.h (internal_complaint): Remove.
7834
7835 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7836
7837         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7838
7839 2018-05-22  Pedro Alves  <palves@redhat.com>
7840
7841         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7842         (remote_fileio_badfd, remote_fileio_return_errno)
7843         (remote_fileio_return_success, remote_fileio_func_open)
7844         (remote_fileio_func_open, remote_fileio_func_close)
7845         (remote_fileio_func_read, remote_fileio_func_write)
7846         (remote_fileio_func_lseek, remote_fileio_func_rename)
7847         (remote_fileio_func_unlink, remote_fileio_func_stat)
7848         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7849         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7850         remote_target parameter.
7851         (remote_fio_func_map) <func>: Add remote_target parameter.
7852         (do_remote_fileio_request, remote_fileio_request):
7853         * remote-fileio.h (remote_fileio_request):
7854         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7855         remote_target parameter.
7856         (remote_notif_process, handle_notification): Adjust to pass down
7857         the remote.
7858         (remote_notif_state_allocate): Add remote_target parameter.  Save
7859         it.
7860         * remote-notif.h (struct remote_target): Forward declare.
7861         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7862         remote_target parameter.
7863         (struct remote_notif_state) <remote>: New field.
7864         (remote_notif_ack, remote_notif_parse): Add remote_target
7865         parameter.
7866         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7867         remote_target parameter.
7868         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7869         (threads_listing_context, rmt_thread_action, protocol_feature)
7870         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7871         (packet_result, struct threads_listing_context, remote_state):
7872         Move definitions and declarations higher up.
7873         (remote_target) <~remote_target>: Declare.
7874         (remote_download_command_source, remote_file_put, remote_file_get)
7875         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7876         (remote_hostio_pread_vFile, remote_hostio_send_command)
7877         (remote_hostio_set_filesystem, remote_hostio_open)
7878         (remote_hostio_close, remote_hostio_unlink, remote_state)
7879         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7880         (get_memory_write_packet_size, get_memory_read_packet_size)
7881         (append_pending_thread_resumptions, remote_detach_1)
7882         (append_resumption, remote_resume_with_vcont)
7883         (add_current_inferior_and_thread, wait_ns, wait_as)
7884         (process_stop_reply, remote_notice_new_inferior)
7885         (process_initial_stop_replies, remote_add_thread)
7886         (btrace_sync_conf, remote_btrace_maybe_reopen)
7887         (remove_new_fork_children, kill_new_fork_children)
7888         (discard_pending_stop_replies, stop_reply_queue_length)
7889         (check_pending_events_prevent_wildcard_vcont)
7890         (discard_pending_stop_replies_in_queue, stop_reply)
7891         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7892         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7893         (remote_interrupt_as, remote_interrupt_ns)
7894         (remote_get_noisy_reply, remote_query_attached)
7895         (remote_add_inferior, remote_current_thread, get_current_thread)
7896         (set_thread, set_general_thread, set_continue_thread)
7897         (set_general_process, write_ptid)
7898         (remote_unpack_thread_info_response, remote_get_threadinfo)
7899         (parse_threadlist_response, remote_get_threadlist)
7900         (remote_threadlist_iterator, remote_get_threads_with_ql)
7901         (remote_get_threads_with_qxfer)
7902         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7903         (get_offsets, remote_check_symbols, remote_supported_packet)
7904         (remote_query_supported, remote_packet_size)
7905         (remote_serial_quit_handler, remote_detach_pid)
7906         (remote_vcont_probe, remote_resume_with_hc)
7907         (send_interrupt_sequence, interrupt_query)
7908         (remote_notif_get_pending_events, fetch_register_using_p)
7909         (send_g_packet, process_g_packet, fetch_registers_using_g)
7910         (store_register_using_P, store_registers_using_G)
7911         (set_remote_traceframe, check_binary_download)
7912         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7913         (remote_xfer_live_readonly_partial, remote_read_bytes)
7914         (remote_send_printf, remote_flash_write, readchar)
7915         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7916         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7917         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7918         (extended_remote_disable_randomization, extended_remote_run)
7919         (send_environment_packet, extended_remote_environment_support)
7920         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7921         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7922         (packet_command): Now methods of ...
7923         (remote_target): ... this class.
7924         (m_remote_state) <remote_target>: New field.
7925         (struct remote_state) <stop_reply_queue,
7926         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7927         fields.
7928         (remote_state::remote_state): Allocate stop_reply_queue.
7929         (remote_state): Delete global.
7930         (get_remote_state_raw): Delete.
7931         (remote_target::get_remote_state): Allocate m_remote_state on
7932         demand.
7933         (get_current_remote_target): New.
7934         (remote_ops, extended_remote_ops): Delete.
7935         (wait_forever_enabled_p, remote_async_inferior_event_token):
7936         Delete, moved to struct remote_state.
7937         (remote_target::close): Delete self.  Destruction bits split to
7938         ...
7939         (remote_target::~remote_target): ... this.
7940         (show_memory_packet_size): Adjust to use
7941         get_current_remote_target.
7942         (struct protocol_feature) <func>: Add remote_target parameter.
7943         All callers adjusted.
7944         (curr_quit_handler_target): New.
7945         (remote_serial_quit_handler): Reimplement.
7946         (remote_target::open_1): Adjust to use get_current_remote_target.
7947         Heap-allocate remote_target/extended_remote_target instances.
7948         (vcont_builder::vcont_builder): Add remote_target parameter, and
7949         save it in m_remote.  All callers adjusted.
7950         (vcont_builder::m_remote): New field.
7951         (vcont_builder::restart, vcont_builder::flush)
7952         (vcont_builder::push_action): Use it.
7953         (remote_target::commit_resume): Use it.
7954         (struct queue_iter_param) <remote>: New field.
7955         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7956         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7957         (check_pending_event_prevents_wildcard_vcont_callback)
7958         (remote_target::check_pending_events_prevent_wildcard_vcont)
7959         (remote_target::discard_pending_stop_replies)
7960         (remote_target::discard_pending_stop_replies_in_queue)
7961         (remote_target::remote_notif_remove_queued_reply): Fill in
7962         'remote' field.
7963         (remote_notif_get_pending_events): New.
7964         (remote_target::readchar, remote_target::remote_serial_write):
7965         Save/restore curr_quit_handler_target.
7966         (putpkt): New.
7967         (kill_new_fork_children): Fill in 'remote' field.
7968         (packet_command): Use get_current_remote_target, defer to
7969         remote_target method of same name.
7970         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7971         parameter, and save it in m_remote.  All callers adjusted.
7972         (scoped_remote_fd::release): Use m_remote.
7973         (scoped_remote_fd::m_remote): New field.
7974         (remote_file_put, remote_file_get, remote_file_delete): Use
7975         get_current_remote_target, defer to remote_target method of same
7976         name.
7977         (remote_btrace_reset): Add remote_state paremeter.  Update all
7978         callers.
7979         (remote_async_inferior_event_handler). Pass down 'data'.
7980         (remote_new_objfile): Use get_current_remote_target.
7981         (remote_target::vcont_r_supported): New.
7982         (set_range_stepping): Use get_current_remote_target and
7983         remote_target::vcont_r_supported.
7984         (_initialize_remote): Don't allocate 'remote_state' and
7985         'stop_reply_queue' globals.
7986         * remote.h (struct remote_target): Forward declare.
7987         (getpkt, putpkt, remote_notif_get_pending_events): Add
7988         'remote_target' parameter.
7989
7990 2018-05-22  Pedro Alves  <palves@redhat.com>
7991
7992         * remote.c (vcont_builder): Now a class.  Make all data members
7993         private.
7994         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7995         Declare methods.
7996         (vcont_builder_restart): Rename to ...
7997         (vcont_builder::restart): ... this.
7998         (vcont_builder_flush): Rename to ...
7999         (vcont_builder::flush): ... this.
8000         (vcont_builder_push_action): Rename to ...
8001         (vcont_builder::push_action): ... this.
8002         (remote_target::commit_resume): Adjust.
8003
8004 2018-05-22  Pedro Alves  <palves@redhat.com>
8005
8006         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8007         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8008         (get_fixed_memory_packet_size): New.
8009         (get_memory_packet_size): Use it.
8010         (set_memory_packet_size): Don't override the config size with
8011         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8012         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8013         Don't refer to get_memory_packet_size if not connected to a remote
8014         target.  Show "(default)" if configured size is 0.
8015
8016 2018-05-22  Pedro Alves  <palves@redhat.com>
8017
8018         * remote.c (remote_target::mourn_inferior): Move
8019         discard_pending_stop_replies call here from ...
8020         (_initialize_remote): ... here.
8021
8022 2018-05-22  Pedro Alves  <palves@redhat.com>
8023
8024         * remote.c (compare_section_command): Remove set_general_process
8025         call.
8026
8027 2018-05-22  Pedro Alves  <palves@redhat.com>
8028
8029         * remote.c (struct packet_reg, struct remote_arch_state):
8030         Move higher up in the file.
8031         (remote_state) <m_arch_states>: Store remote_arch_state values
8032         instead of remote_arch_state pointers.
8033         (remote_state::get_remote_arch_state): Adjust.
8034
8035 2018-05-22  Pedro Alves  <palves@redhat.com>
8036
8037         * remote.c: Include <unordered_map>.
8038         (remote_state): Now a class.
8039         (remote_state) <get_remote_arch_state>: Declare method.
8040         <get_remote_arch_state>: New field.
8041         (remote_arch_state) <remote_arch_state>: Declare ctor.
8042         <regs>: Now a unique_ptr.
8043         (remote_gdbarch_data_handle): Delete.
8044         (get_remote_arch_state): Delete.
8045         (remote_state::get_remote_arch_state): New.
8046         (get_remote_state): Adjust to call remote_state's
8047         get_remote_arch_state method.
8048         (init_remote_state): Delete, bits factored out to ...
8049         (remote_arch_state::remote_arch_state): ... this new method.
8050         (get_remote_packet_size, get_memory_packet_size)
8051         (process_g_packet, remote_target::fetch_registers)
8052         (remote_target::prepare_to_store, store_registers_using_G)
8053         (remote_target::store_registers, remote_target::get_trace_status):
8054         Adjust to call remote_state's method.
8055         (_initialize_remote): Remove reference to
8056         remote_gdbarch_data_handle.
8057
8058 2018-05-22  Pedro Alves  <palves@redhat.com>
8059
8060         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8061         pread>: New method declarations.
8062         (remote_target::open_1): Adjust.
8063         (readahead_cache_invalidate): Rename to ...
8064         (readahead_cache::invalidate): ... this, and adjust to be a class
8065         method.
8066         (readahead_cache_invalidate_fd): Rename to ...
8067         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8068         class method.
8069         (remote_hostio_pwrite): Adjust.
8070         (remote_hostio_pread_from_cache): Rename to ...
8071         (readahead_cache::pread): ... this, and adjust to be a class
8072         method.
8073         (remote_hostio_close): Adjust.
8074
8075 2018-05-22  Pedro Alves  <palves@redhat.com>
8076
8077         * remote.c (remote_hostio_close_cleanup): Delete.
8078         (class scoped_remote_fd): New.
8079         (remote_file_put, remote_file_get): Use it.
8080
8081 2018-05-22  Pedro Alves  <palves@redhat.com>
8082
8083         (struct vCont_action_support): Use bool and initialize all fields.
8084         (struct readahead_cache): Initialize all fields.
8085         (remote_state): Use bool and initialize all fields.
8086         (remote_state::remote_state, remote_state::~remote_state): New.
8087         (new_remote_state): Delete.
8088         (_initialize_remote): Use new to allocate remote_state.
8089
8090 2018-05-22  Pedro Alves  <palves@redhat.com>
8091             張俊芝  <zjz@zjz.name>
8092
8093         PR gdb/22973
8094         * c-exp.y: Include "c-support.h".
8095         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8096         of tolower.  Use c_ident_is_alpha to scan names.
8097         * c-lang.c: Include "c-support.h".
8098         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8099         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8100         * c-support.h: New file, with bits factored out from ...
8101         * cp-name-parser.y: ... this file.
8102         Include "c-support.h".
8103         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8104         c-support.h and renamed.
8105         (symbol_end, yylex): Adjust.
8106
8107 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8108
8109         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8110         parameter type to CORE_ADDR.
8111         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8112         parameter type in declaration to CORE_ADDR.
8113         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8114         target_auxv_search to get AT_HWCAP and use the result to get the
8115         target description.
8116         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8117         to CORE_ADDR. Remove the cast of the return value to unsigned
8118         long. Fix error predicate of target_auxv_search.
8119         (ppc_linux_nat_target::read_description): Change the type of the
8120         hwcap variable to CORE_ADDR.
8121
8122 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8123
8124         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8125         if the size of fpscr is larger than 32 bits.
8126
8127 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8128
8129         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8130         (ppc32_linux_vsxregmap): New global.
8131         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8132         regcache_supply_regset, and regcache_collect_regset.
8133         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8134         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8135         (fetch_vsx_register, store_vsx_register): Remove.
8136         (fetch_vsx_registers): Add regno parameter. Get regset using
8137         ppc_linux_vsxregset. Use regset to supply registers.
8138         (store_vsx_registers): Add regno parameter. Get regset using
8139         ppc_linux_vsxregset. Use regset to collect registers.
8140         (fetch_register): Call fetch_vsx_registers instead of
8141         fetch_vsx_register.
8142         (store_register): Call store_vsx_registers instead of
8143         store_vsx_register.
8144         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8145         new regno parameter.
8146         (store_ppc_registers): Call store_vsx_registers with -1 for the
8147         new regno parameter.
8148         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8149         (ppc_collect_vsxregset): Remove.
8150
8151 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8152
8153         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8154         offset fields.
8155         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8156         for vector register offset fields.
8157         (ppc64_fbsd_reg_offsets): Likewise.
8158         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8159         to vector register offset fields.
8160         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8161         to vector register offset fields.
8162         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8163         vector register offset fields.
8164         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8165         initializers for vector register offset fields.
8166         (rs6000_aix64_reg_offsets): Likewise.
8167         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8168         (ppc_supply_vrregset): Remove.
8169         (ppc_collect_vrregset): Remove.
8170         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8171         (ppc_linux_vrregset) : New function.
8172         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8173         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8174         (ppc32_linux_vrregset): Remove.
8175         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8176         and use result instead of ppc32_linux_vrregset.
8177         (ppc32_linux_reg_offsets): Remove initializers for vector register
8178         offset fields.
8179         (ppc64_linux_reg_offsets): Likewise.
8180         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8181         * ppc-linux-nat.c: Include regset.h.
8182         (gdb_vrregset_t): Adjust comment to account for little-endian
8183         mode.
8184         (supply_vrregset, fill_vrregset): Remove.
8185         (fetch_altivec_register, store_altivec_register): Remove.
8186         (fetch_altivec_registers): Add regno parameter. Get regset using
8187         ppc_linux_vrregset. Use regset to supply registers.
8188         (store_altivec_registers): Add regno parameter. Get regset using
8189         ppc_linux_vrregset. Use regset to collect registers.
8190         (fetch_register): Call fetch_altivec_registers instead of
8191         fetch_altivec_register.
8192         (store_register): Call store_altivec_registers instead of
8193         store_altivec_register.
8194         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8195         the new regno parameter.
8196         (store_ppc_registers): Call store_altivec_registers with -1 for
8197         the new regno parameter.
8198
8199 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8200
8201         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8202         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8203         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8204         (gdb_vrregset_t): Change array type size to
8205         PPC_LINUX_SIZEOF_VRREGSET.
8206         (gdb_vsxregset_t): Change array type size to
8207         PPC_LINUX_SIZEOF_VSXREGSET.
8208         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8209         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8210         PPC_LINUX_SIZEOF_VSXREGSET.
8211
8212 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8213
8214         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8215         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8216         nat/ppc-linux.c.
8217         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8218         ppc_linux_target_wordsize with tid.
8219         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8220         wordsize with tid.
8221         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8222         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8223         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8224         tid parameter. Remove static specifier.
8225         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8226         (ppc_linux_target_wordsize): New declaration.
8227
8228 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8229
8230         * arch/ppc-linux-common.c: New file.
8231         * arch/ppc-linux-common.h: New file.
8232         * arch/ppc-linux-tdesc.h: New file.
8233         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8234         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8235         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8236         arch/ppc-linux-tdesc.h.
8237         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8238         arch/ppc-linux-tdesc.h.
8239         (ppc_linux_nat_target::read_description): Remove target
8240         description matching code. Fill a ppc_linux_features struct and
8241         call ppc_linux_match_description with it. Move comment about ISA
8242         2.05 to ppc-linux-common.c.
8243         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8244         arch/ppc-linux-tdesc.h.
8245         (ppc_linux_core_read_description): Remove target description
8246         matching code. Fill a ppc_linux_features struct and call
8247         ppc_linux_match_description with it.
8248         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8249         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8250         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8251         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8252         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8253         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8254         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8255         (tdesc_powerpc_e500l): Remove.
8256
8257 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8258
8259         * ada-lang.c (catch_assert_command): Pass empty string instead
8260         of NULL for excep_string argument.
8261
8262 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8263
8264         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8265         the width of the requested register exceeds the width of the
8266         `ptrace' data type.
8267
8268 2018-05-21  Tom Tromey  <tom@tromey.com>
8269
8270         * printcmd.c (output_command): Remove.
8271         (output_command_const): Rename to output_command.
8272         * valprint.h (output_command): Rename from output_command_const.
8273         * tracepoint.c (trace_dump_actions): Call output_command.
8274
8275 2018-05-21  Tom Tromey  <tom@tromey.com>
8276
8277         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8278         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8279         * ada-lang.h (create_ada_exception_catchpoint): Update.
8280         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8281         std::string.
8282         (create_excep_cond_exprs, ~ada_catchpoint)
8283         (should_stop_exception, print_one_exception)
8284         (print_mention_exception, print_recreate_exception): Update.
8285         (ada_get_next_arg): Remove.
8286         (catch_ada_exception_command_split): Use std::string.  Change type
8287         of "excep_string", "cond_string".
8288         (catch_ada_exception_command): Update.
8289         (create_ada_exception_catchpoint): Change type of excep_string.
8290         (ada_exception_sal): Remove excep_string parameter.
8291         (~ada_catchpoint): Remove.
8292
8293 2018-05-21  Tom Tromey  <tom@tromey.com>
8294
8295         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8296         cleanup.
8297
8298 2018-05-21  Tom Tromey  <tom@tromey.com>
8299
8300         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8301         Return unique_xmalloc_ptr.
8302         (print_it_exception): Update.
8303
8304 2018-05-21  Tom Tromey  <tom@tromey.com>
8305
8306         * tracepoint.c (trace_dump_actions): Use std::string.
8307
8308 2018-05-21  Tom Tromey  <tom@tromey.com>
8309
8310         * symfile.c (reread_symbols): Use std::string for original_name.
8311
8312 2018-05-21  Tom Tromey  <tom@tromey.com>
8313
8314         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8315         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8316         constructor.
8317
8318 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8319
8320         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8321         instance to...
8322         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8323         * objfiles.c (get_objfile_bfd_data): Allocate
8324         objfile_per_bfd_storage with obstack_new when allocating on
8325         obstack.
8326
8327 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8328
8329         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8330         OBSTACK_ZALLOC.
8331         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8332         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8333         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8334         (add_pending): Likewise.
8335         (parse_symbol): Likewise.
8336         (parse_partial_symbols): Likewise.
8337         (psymtab_to_symtab_1): Likewise.
8338         (new_psymtab): Likewise.
8339         (elfmdebug_build_psymtabs): Likewise.
8340         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8341         * objfiles.c (get_objfile_bfd_data): Likewise.
8342         (objfile_register_static_link): Likewise.
8343         * psymtab.c (allocate_psymtab): Likewise.
8344         * stabsread.c (read_member_functions): Likewise.
8345         * xcoffread.c (xcoff_end_psymtab): Likewise.
8346
8347 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8348
8349         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8350         compiler supports std::is_trivially_constructible.
8351         * common/poison.h: Include obstack.h.
8352         (IsMallocable): Define to is_trivially_constructible if the
8353         compiler supports it, define to true_type otherwise.
8354         (xobnew): New.
8355         (XOBNEW): Redefine.
8356         (xobnewvec): New.
8357         (XOBNEWVEC): Redefine.
8358         * gdb_obstack.h (obstack_zalloc): New.
8359         (OBSTACK_ZALLOC): Redefine.
8360         (obstack_calloc): New.
8361         (OBSTACK_CALLOC): Redefine.
8362         (obstack_new): New.
8363         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8364         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8365         gdbarch.c.
8366         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8367         obstack_calloc/obstack_zalloc.
8368         (gdbarch_obstack_zalloc): Remove.
8369         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8370
8371 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8372
8373         * stack.c (backtrace_command_1): Remove useless variable int i.
8374
8375 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8376
8377         * stack.c (print_frame_info): Fix comment.
8378
8379 2018-05-18  Tom Tromey  <tom@tromey.com>
8380
8381         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8382         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8383         (~dwarf2_per_objfile): Update
8384         (dwarf2_get_dwz_file): Use new.
8385         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8386         unique_ptr.
8387
8388 2018-05-18  Tom Tromey  <tom@tromey.com>
8389
8390         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8391         unique_ptr.
8392         * dwarf2read.c (struct dwp_file): Add constructor and
8393         initializers.
8394         (open_and_init_dwp_file): Return a unique_ptr.
8395         (dwarf2_per_objfile, create_dwp_hash_table)
8396         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8397         (lookup_dwo_unit_in_dwp): Update.
8398         (open_and_init_dwp_file, get_dwp_file): Update.
8399
8400 2018-05-18  Tom Tromey  <tom@tromey.com>
8401
8402         * dwarf2read.c (dwarf2_per_objfile): Update.
8403         (struct mapped_index): Add initializers.
8404         (dwarf2_read_index): Use new.
8405         (dw2_symtab_iter_init): Update.
8406         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8407         unique_ptr.
8408
8409 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8410
8411         * dwarf2read.c (mapped_index) <total_size>: Remove.
8412
8413 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8414
8415         * unittests/format_pieces-selftests.c (test_format_specifier):
8416         Add ARI comments.
8417
8418 2018-05-18  Tom Tromey  <tom@tromey.com>
8419
8420         * c-typeprint.c (maybe_print_hole): New function.
8421         (c_print_type_struct_field_offset): Update.
8422         (c_type_print_base_struct_union): Call maybe_print_hole.
8423
8424 2018-05-17  Keith Seitz  <keiths@redhat.com>
8425
8426         * breakpoint.c (build_bpstat_chain): New function, moved from
8427         bpstat_stop_status.
8428         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8429         If no stop chain is passed, call build_bpstat_chain to build it.
8430         * breakpoint.h (build_bpstat_chain): Declare.
8431         (bpstat_stop_status): Move documentation here from breakpoint.c.
8432         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8433         build the stop chain and pass it to skip_inline_frames.
8434         Pass this stop chain to bpstat_stop_status.
8435         * inline-frame.c: Include breakpoint.h.
8436         (stopped_by_user_bp_inline_frame): New function.
8437         (skip_inline_frames): Add parameter `stop_chain'.
8438         Move documention to inline-frame.h.
8439         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8440         whether the frame should be elided.
8441         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8442         Add moved documentation and update for new parameter.
8443
8444 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8445
8446         PR cli/14975
8447         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8448         unittests/format_pieces-selftests.c.
8449         * common/format.h (format_piece) <operator==>: New.
8450         (format_pieces) <operator[]>: Remove.
8451         * common/format.c (format_pieces::format_pieces): Handle \e.
8452         * unittests/format_pieces-selftests.c: New.
8453
8454 2018-05-17  Tom Tromey  <tom@tromey.com>
8455
8456         PR symtab/23010:
8457         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8458         (dw2_instantiate_symtab): Add skip_partial parameter.
8459         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8460         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8461         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8462         (dw2_expand_symtabs_matching_one)
8463         (dw2_find_pc_sect_compunit_symtab)
8464         (dw2_debug_names_lookup_symbol)
8465         (dw2_debug_names_expand_symtabs_for_function): Update.
8466         (init_cutu_and_read_dies): Add skip_partial parameter.
8467         (process_psymtab_comp_unit, build_type_psymtabs_1)
8468         (process_skeletonless_type_unit, load_partial_comp_unit)
8469         (psymtab_to_symtab_1): Update.
8470         (load_full_comp_unit): Add skip_partial parameter.
8471         (process_imported_unit_die, dwarf2_read_addr_index)
8472         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8473         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8474         (read_signatured_type): Update.
8475
8476 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8477
8478         * value.c (release_value): Remove unused variable.
8479         (record_latest_value): Likewise.
8480         (access_value_history): Likewise.
8481         (preserve_values): Likewise.
8482
8483 2018-05-17  Tom Tromey  <tom@tromey.com>
8484
8485         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8486         Initialize.
8487
8488 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8489
8490         PR gdb/22286
8491         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8492         Also handle registers whose width is not a multiple of
8493         PTRACE_TYPE_RET.
8494         (linux_nat_trad_target::store_register): Likewise.
8495
8496 2018-05-16  Tom Tromey  <tom@tromey.com>
8497
8498         * gdbcore.h (core_bfd): Redefine.
8499         * corelow.c (core_target::close): Update.
8500         (core_target_open): Update.
8501         * progspace.h (struct program_space) <cbfd>: Now a
8502         gdb_bfd_ref_ptr.
8503
8504 2018-05-16  Tom Tromey  <tom@tromey.com>
8505
8506         PR cli/19551:
8507         * symfile-add-flags.h (enum symfile_add_flags)
8508         <SYMFILE_NOT_FILENAME>: New constant.
8509         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8510         objfile name from BFD.
8511         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8512         * minidebug.c (find_separate_debug_file_in_section): Put
8513         ".gnu_debugdata" into BFD's file name.
8514
8515 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8516
8517         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8518         Remove.
8519
8520 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8521
8522         PR binutils/21446
8523         * aarch64-tdep.c (aarch64_analyze_prologue,
8524         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8525         Indicate not interested in errors.
8526
8527 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8528
8529         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8530         Supply the MIPS_ZERO_REGNUM register.
8531
8532 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8533
8534         * mips-tdep.c (mask_address_var): Make variable static.
8535
8536 2018-05-14  Tom Tromey  <tom@tromey.com>
8537
8538         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8539
8540 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8541
8542         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8543         FXSAVE_ADDR for the mxcsr register.
8544
8545 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8546
8547         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8548
8549 2018-05-11  Pedro Alves  <palves@redhat.com>
8550
8551         * corelow.c (core_target) <core_target>: No longer inline.
8552         Initialize m_core_gdbarch, m_core_vec and build the section table
8553         here.
8554         <~core_target>: New.
8555         <core_gdbarch, get_core_register_section>: New methods.
8556         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8557         factored out from ...
8558         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8559         (core_ops): Delete.
8560         (sniff_core_bfd): Add gdbarch parameter.
8561         (core_close): Delete, merged into ...
8562         (core_target::close): ... here.  Delete self.
8563         (core_close_cleanup): Delete.
8564         (core_target_open): Allocate a core_target on the heap.  Use a
8565         unique_ptr instead of a cleanup.  Bits moved into the core_target
8566         ctor.  Adjust to use core_target methods instead of globals.
8567         (get_core_register_section): Rename to ...
8568         (core_target::get_core_register_section): ... this and adjust.
8569         (struct get_core_registers_cb_data): New.
8570         (get_core_registers_cb): Use it.  Use bool.
8571         (core_target::fetch_registers, core_target::files_info)
8572         (core_target::xfer_partial, core_target::read_description)
8573         (core_target::pid_to, core_target::thread_name): Adjust to
8574         reference class fields instead of globals.
8575         * target.h (struct target_ops_deleter, target_ops_up): New.
8576
8577 2018-05-11  Pedro Alves  <palves@redhat.com>
8578
8579         * corefile.c (core_file_command): Move to corelow.c.
8580         * corelow.c (the_core_target): Delete.
8581         (core_file_command): Moved from corefile.c.  Check exec_bfd
8582         instead of the_core_target.  Use target_detach instead of calling
8583         into the_core_target directly.
8584         (maybe_say_no_core_file_now): New.
8585         (core_target::detach): Use it.
8586         (_initialize_corelow): Remove references to the_core_target.
8587         * gdbcore.h (the_core_target): Delete.
8588
8589 2018-05-11  Tom Tromey  <tromey@redhat.com>
8590             Pedro Alves  <palves@redhat.com>
8591
8592         * corefile.c (core_bfd): Remove.
8593         * gdbcore.h (core_bfd): Now a macro.
8594         * progspace.h (struct program_space) <cbfd>: New field.
8595
8596 2018-05-11  Tom Tromey  <tom@tromey.com>
8597
8598         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8599         gdb::def_vector.
8600
8601 2018-05-10  Tom Tromey  <tom@tromey.com>
8602
8603         * configure: Rebuild.
8604         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8605
8606 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8607
8608         PR server/23158:
8609         * regformats/regdat.sh: Adjust script, following the addition
8610         of the new expedite_regs parameter to init_target_desc.
8611
8612 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8613     
8614         PR gdb/23127
8615         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8616         set_gdbarch_significant_addr_bit.
8617         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8618         set_gdbarch_significant_addr_bit.
8619         * utils.c (address_significant): Update to sign extend addr.
8620
8621 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8622
8623         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8624         (xtensa_linux_init_abi): Limit tdep->num_regs by
8625         tdep->num_nopriv_regs.
8626         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8627         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8628         not initialized.
8629
8630 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8631
8632         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8633
8634 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8635
8636         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8637         (I387_MXCSR_INIT_VAL): New constant.
8638         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8639         buffer if it was supplied by the inferior.
8640         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8641         (i387_xsave_get_clear_bv): New function.
8642         (i387_supply_xsave): Only read x87 control registers from the
8643         xsave buffer if the feature is enabled, and the state will have
8644         been written, otherwise, provide a suitable default.
8645         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8646         including x87 control registers.  Update control registers if they
8647         have changed from the default value, and mark features as enabled
8648         as required.
8649         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8650
8651 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8652
8653         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8654
8655 2018-05-07  Tom Tromey  <tom@tromey.com>
8656
8657         * configure: Rebuild.
8658         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8659
8660 2018-05-07  Tom Tromey  <tom@tromey.com>
8661
8662         PR tdep/20362:
8663         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8664         bit.  Use correct value for VDIV.
8665
8666 2018-05-04  Tom Tromey  <tom@tromey.com>
8667
8668         * configure: Rebuild.
8669         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8670
8671 2018-05-04  Tom Tromey  <tom@tromey.com>
8672
8673         * linux-record.c (record_linux_system_call) <case
8674         RECORD_SYS_RECVFROM>: Add "break".
8675
8676 2018-05-04  Tom Tromey  <tom@tromey.com>
8677
8678         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8679         Add missing "break".
8680         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8681         Add missing "break".
8682
8683 2018-05-04  Tom Tromey  <tom@tromey.com>
8684
8685         * rs6000-tdep.c (ppc_process_record_op4)
8686         (ppc_process_record_op63): Add fall-through comment.
8687
8688 2018-05-04  Tom Tromey  <tom@tromey.com>
8689
8690         * i386-tdep.c (i386_process_record): Add fall-through comment.
8691
8692 2018-05-04  Tom Tromey  <tom@tromey.com>
8693
8694         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8695         comment.
8696
8697 2018-05-04  Tom Tromey  <tom@tromey.com>
8698
8699         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8700         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8701         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8702         comment.
8703         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8704         comment.
8705         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8706         comment.
8707
8708 2018-05-04  Tom Tromey  <tom@tromey.com>
8709
8710         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8711
8712 2018-05-04  Tom Tromey  <tom@tromey.com>
8713
8714         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8715         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8716         * symfile.c (section_is_mapped): Fix fall-through comment.
8717         * stabsread.c (define_symbol, read_member_functions): Fix
8718         fall-through comment.
8719         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8720         comment.
8721         * remote.c (remote_wait_as): Fix fall-through comment.
8722         * p-exp.y (yylex): Fix fall-through comment.
8723         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8724         comment.
8725         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8726         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8727         * jv-exp.y (yylex): Fix fall-through comment.
8728         * go-exp.y (lex_one_token): Fix fall-through comment.
8729         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8730         fall-through comment.
8731         * f-exp.y (yylex): Fix fall-through comment.
8732         * dwarf2read.c (process_die): Fix fall-through comments.
8733         * dbxread.c (process_one_symbol): Fix fall-through comment.
8734         * d-exp.y (lex_one_token): Fix fall-through comment.
8735         * cp-name-parser.y (yylex): Fix fall-through comment.
8736         * coffread.c (coff_symtab_read): Fix fall-through comment.
8737         * c-exp.y (lex_one_token): Fix fall-through comment.
8738         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8739         comment.
8740         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8741         comment.
8742
8743 2018-05-04  Tom Tromey  <tom@tromey.com>
8744
8745         PR python/22730:
8746         * NEWS: Mention gdb.execute change.
8747         * gdbcmd.h (execute_control_command): Don't declare.
8748         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8749         execute_control_commands, execute_control_commands_to_string.
8750         * cli/cli-script.h (execute_control_commands)
8751         (execute_control_commands_to_string): Declare.
8752         (execute_control_command): Add from_tty parameter.
8753         * cli/cli-script.c (execute_control_commands)
8754         (execute_control_commands_to_string): New functions.
8755         (execute_user_command): Use execute_control_commands.
8756         (execute_control_command_1): Add "from_tty" parameter.  Update.
8757         (execute_control_command): Likewise.
8758
8759 2018-05-04  Tom Tromey  <tom@tromey.com>
8760
8761         PR python/22731:
8762         * NEWS: Mention that breakpoint commands are writable.
8763         * python/py-breakpoint.c (bppy_set_commands): New function.
8764         (breakpoint_object_getset) <"commands">: Use it.
8765
8766 2018-05-04  Tom Tromey  <tom@tromey.com>
8767
8768         * tracepoint.c (actions_command): Update.
8769         * mi/mi-cmd-break.c (mi_command_line_array)
8770         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8771         (mi_read_next_line): Remove.
8772         (mi_cmd_break_commands): Update.
8773         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8774         function_view.
8775         * cli/cli-script.c (get_command_line): Update.
8776         (process_next_line): Use function_view.  Constify.
8777         (recurse_read_control_structure, read_command_lines)
8778         (read_command_lines_1): Change argument types to function_view.
8779         (do_define_command, document_command): Update.
8780         * breakpoint.h (check_tracepoint_command): Don't declare.
8781         * breakpoint.c (check_tracepoint_command): Remove.
8782         (commands_command_1, create_tracepoint_from_upload): Update.
8783
8784 2018-05-04  Tom Tromey  <tom@tromey.com>
8785
8786         PR gdb/11750:
8787         * cli/cli-script.h (enum command_control_type) <define_control>:
8788         New constant.
8789         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8790         (build_command_line, execute_control_command_1)
8791         (process_next_line): Likewise.
8792         (do_define_command): New function, extracted from define_command.
8793         (define_command): Use it.
8794
8795 2018-05-04  Tom Tromey  <tom@tromey.com>
8796
8797         * tracepoint.c (actions_command): Update.
8798         * cli/cli-script.h (read_command_lines): Update.
8799         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8800         (MAX_TMPBUF): Remove define.
8801         (define_command): Use string_printf.
8802         (document_command): Likewise.
8803         * breakpoint.c (commands_command_1): Update.
8804
8805 2018-05-04  Tom Tromey  <tom@tromey.com>
8806
8807         * top.c (execute_command): Update.
8808         * cli/cli-script.h (print_command_lines): Now varargs.
8809         * cli/cli-script.c (print_command_lines): Now varargs.
8810         (execute_control_command_1) <case while_control, case if_control>:
8811         Update.
8812
8813 2018-05-04  Tom Tromey  <tom@tromey.com>
8814
8815         * tracepoint.c (all_tracepoint_actions): Rename from
8816         all_tracepoint_actions_and_cleanup.  Change return type.
8817         (actions_command, encode_actions_1, encode_actions)
8818         (trace_dump_actions, tdump_command): Update.
8819         * remote.c (remote_download_command_source): Update.
8820         * python/python.c (gdbpy_eval_from_control_command)
8821         (python_command, python_interactive_command): Update.
8822         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8823         * guile/guile.c (guile_command)
8824         (gdbscm_eval_from_control_command, guile_command): Update.
8825         * compile/compile.c (compile_code_command)
8826         (compile_print_command, compile_to_object): Update.
8827         * cli/cli-script.h (struct command_lines_deleter): New.
8828         (counted_command_line): New typedef.
8829         (struct command_line): Add constructor, destructor.
8830         <body_list>: Remove.
8831         <body_list_0, body_list_1>: New members.
8832         (command_line_up): Remove typedef.
8833         (read_command_lines, read_command_lines_1, get_command_line):
8834         Update.
8835         (copy_command_lines): Don't declare.
8836         * cli/cli-script.c (build_command_line): Use "new".
8837         (get_command_line): Return counted_command_line.
8838         (print_command_lines, execute_user_command)
8839         (execute_control_command_1, while_command, if_command): Update.
8840         (realloc_body_list): Remove.
8841         (process_next_line, recurse_read_control_structure): Update.
8842         (read_command_lines, read_command_lines_1): Return counted_command_line.
8843         (free_command_lines): Use "delete".
8844         (copy_command_lines): Remove.
8845         (define_command, document_command, show_user_1): Update.
8846         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8847         a counted_command_line.
8848         * breakpoint.h (counted_command_line): Remove typedef.
8849         (breakpoint_set_commands): Update.
8850         * breakpoint.c (check_no_tracepoint_commands)
8851         (validate_commands_for_breakpoint): Update.
8852         (breakpoint_set_commands): Change commands to be a
8853         counted_command_line.
8854         (commands_command_1, update_dprintf_command_list)
8855         (create_tracepoint_from_upload): Update.
8856
8857 2018-05-04  Tom Tromey  <tom@tromey.com>
8858
8859         * cli/cli-decode.h (cmd_list_element): New constructor.
8860         (~cmd_list_element): New destructor.
8861         (struct cmd_list_element): Add initializers.
8862         * cli/cli-decode.c (do_add_cmd): Use "new".
8863         (delete_cmd): Use "delete".
8864
8865 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8866             Pedro Alves <palves@redhat.com>
8867
8868         PR breakpoints/19806 and support for PR external/20207.
8869         * NEWS: Mention Aarch64 watchpoint improvements.
8870         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8871         watchpoints and PR external/20207 watchpoints.
8872         * nat/aarch64-linux-hw-point.c
8873         (kernel_supports_any_contiguous_range): New.
8874         (aarch64_watchpoint_offset): New.
8875         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8876         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8877         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8878         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8879         next_addr_orig_p.  Support PR external/20207 watchpoints.
8880         (aarch64_downgrade_regs): New.
8881         (aarch64_dr_state_insert_one_point): New parameters offset and
8882         addr_orig.
8883         (aarch64_dr_state_remove_one_point): Likewise.
8884         (aarch64_handle_breakpoint): Update caller.
8885         (aarch64_handle_aligned_watchpoint): Likewise.
8886         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8887         aligned_offset.
8888         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8889         aarch64_downgrade_regs.
8890         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8891         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8892         (DR_CONTROL_MASK): ... this.
8893         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8894         (unsigned int aarch64_watchpoint_offset): New prototype.
8895         (aarch64_linux_set_debug_regs): Remove const from state.
8896         * utils.c (align_up, align_down): Move to ...
8897         * common/common-utils.c (align_up, align_down): ... here.
8898         * utils.h (align_up, align_down): Move to ...
8899         * common/common-utils.h (align_up, align_down): ... here.
8900
8901 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8902
8903         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8904         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8905         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8906         Re-implement to match the ABI as summarized in GCC's
8907         gcc/config/sparc/sparc.c.  All callers updated.
8908         (sparc32_store_arguments): Remove assertion.
8909
8910 2018-05-04  Tom Tromey  <tom@tromey.com>
8911
8912         * printcmd.c: Don't include tui.h.
8913         (decode_format): Use skip_spaces.
8914
8915 2018-05-04  Tom Tromey  <tom@tromey.com>
8916
8917         PR gdb/22619:
8918         * printcmd.c (last_count): New global.
8919         (x_command): Use saved count when repeating.
8920
8921 2018-05-04  Tom Tromey  <tom@tromey.com>
8922
8923         * nto-procfs.c (do_closedir_cleanup): Remove.
8924         (procfs_pidlist): Use gdb_dir_up.
8925         * procfs.c (do_closedir_cleanup): Remove.
8926         (proc_update_threads): Use gdb_dir_up.
8927         * common/filestuff.h (struct gdb_dir_deleter): New.
8928         (gdb_dir_up): New typedef.
8929
8930 2018-05-04  Tom Tromey  <tom@tromey.com>
8931
8932         * ada-lang.c (print_mention_exception): Use std::string.
8933
8934 2018-05-04  Tom Tromey  <tom@tromey.com>
8935
8936         * ada-lang.c (create_excep_cond_exprs): Update.
8937         (ada_exception_catchpoint_cond_string): Use std::string.
8938
8939 2018-05-04  Tom Tromey  <tom@tromey.com>
8940
8941         * ada-lang.c (xget_renaming_scope): Return std::string.
8942         (old_renaming_is_invisible): Update.
8943
8944 2018-05-04  Tom Tromey  <tom@tromey.com>
8945
8946         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8947         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8948
8949 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8950
8951         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8952
8953 2018-05-04  Tom Tromey  <tom@tromey.com>
8954
8955         * remote.c (remote_query_supported_append): Change type.
8956         (remote_check_symbols): Update.
8957
8958 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8959
8960         PR gdb/11420
8961         * configure.ac: Prepend libpython.
8962         * python/python-config.py: Likewise.
8963         * configure: Regenerate.
8964
8965 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8966
8967         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8968
8969 2018-05-03  Pedro Alves  <palves@redhat.com>
8970
8971         * s390-linux-nat.c
8972         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8973         override.  Write 'true' instead of '1'.
8974         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8975         declaration.
8976
8977 2018-05-02  Pedro Alves  <palves@redhat.com>
8978
8979         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8980         add_inf_child_target.
8981         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8982         add_inf_child_target.
8983         * aix-thread.c (aix_thread_target_info): New.
8984         (aix_thread_target) <shortname, longname, doc>: Delete.
8985         <info>: New.
8986         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8987         add_inf_child_target.
8988         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8989         add_inf_child_target.
8990         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8991         add_inf_child_target.
8992         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8993         add_inf_child_target.
8994         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8995         add_inf_child_target.
8996         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8997         add_inf_child_target.
8998         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8999         add_inf_child_target.
9000         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9001         add_inf_child_target.
9002         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9003         add_inf_child_target.
9004         * bfd-target.c (target_bfd_target_info): New.
9005         (target_bfd) <shortname, longname, doc>: Delete.
9006         <info>: New.
9007         * bsd-kvm.c (bsd_kvm_target_info): New.
9008         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9009         <info>: New.
9010         (bsd_kvm_target::open): Rename to ...
9011         (bsd_kvm_target_open): ... this.  Adjust.
9012         * bsd-uthread.c (bsd_uthread_target_info): New.
9013         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9014         <info>: New.
9015         * corefile.c (core_file_command): Adjust.
9016         * corelow.c (core_target_info): New.
9017         (core_target) <shortname, longname, doc>: Delete.
9018         <info>: New.
9019         (core_target::open): Rename to ...
9020         (core_target_open): ... this.  Adjust.
9021         * ctf.c (ctf_target_info): New.
9022         (ctf_target) <shortname, longname, doc>: Delete.
9023         <info>: New.
9024         (ctf_target::open): Rename to ...
9025         (ctf_target_open): ... this.
9026         (_initialize_ctf): Adjust.
9027         * exec.c (exec_target_info): New.
9028         (exec_target) <shortname, longname, doc>: Delete.
9029         <info>: New.
9030         (exec_target::open): Rename to ...
9031         (exec_target_open): ... this.
9032         * gdbcore.h (core_target_open): Declare.
9033         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9034         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9035         add_inf_child_target.
9036         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9037         add_inf_child_target.
9038         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9039         add_inf_child_target.
9040         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9041         add_inf_child_target.
9042         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9043         add_inf_child_target.
9044         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9045         add_inf_child_target.
9046         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9047         add_inf_child_target.
9048         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9049         add_inf_child_target.
9050         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9051         add_inf_child_target.
9052         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9053         add_inf_child_target.
9054         * inf-child.c (inf_child_target_info): New.
9055         (inf_child_target::info): New.
9056         (inf_child_open_target): Remove 'target' parameter.  Use
9057         get_native_target instead.
9058         (inf_child_target::open): Delete.
9059         (add_inf_child_target): New.
9060         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9061         Delete.
9062         <info>: New.
9063         (add_inf_child_target): Declare.
9064         (inf_child_open_target): Declare.
9065         * linux-thread-db.c (thread_db_target_info): New.
9066         (thread_db_target) <shortname, longname, doc>: Delete.
9067         <info>: New.
9068         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9069         add_inf_child_target.
9070         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9071         add_inf_child_target.
9072         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9073         add_inf_child_target.
9074         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9075         add_inf_child_target.
9076         * make-target-delegates (print_class): Adjust.
9077         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9078         add_inf_child_target.
9079         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9080         add_inf_child_target.
9081         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9082         add_inf_child_target.
9083         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9084         add_inf_child_target.
9085         * nto-procfs.c (nto_native_target_info): New.
9086         (nto_procfs_target_native) <shortname, longname, doc>:
9087         Delete.
9088         <info>: New.
9089         (nto_procfs_target_info): New.
9090         (nto_procfs_target_procfs) <shortname, longname, doc>:
9091         Delete.
9092         <info>: New.
9093         (init_procfs_targets): Adjust.
9094         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9095         add_inf_child_target.
9096         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9097         add_inf_child_target.
9098         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9099         add_inf_child_target.
9100         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9101         add_inf_child_target.
9102         * ravenscar-thread.c (ravenscar_target_info): New.
9103         (ravenscar_thread_target) <shortname, longname, doc>:
9104         Delete.
9105         <info>: New.
9106         * record-btrace.c (record_btrace_target_info):
9107         (record_btrace_target) <shortname, longname, doc>: Delete.
9108         <info>: New.
9109         (record_btrace_target::open): Rename to ...
9110         (record_btrace_target_open): ... this.  Adjust.
9111         * record-full.c (record_longname, record_doc): New.
9112         (record_full_base_target) <shortname, longname, doc>: Delete.
9113         <info>: New.
9114         (record_full_target_info): New.
9115         (record_full_target): <shortname>: Delete.
9116         <info>: New.
9117         (record_full_core_open_1, record_full_open_1): Update comments.
9118         (record_full_base_target::open): Rename to ...
9119         (record_full_open): ... this.
9120         (cmd_record_full_restore): Update.
9121         (_initialize_record_full): Update.
9122         * remote-sim.c (remote_sim_target_info): New.
9123         (gdbsim_target) <shortname, longname, doc>: Delete.
9124         <info>: New.
9125         (gdbsim_target::open): Rename to ...
9126         (gdbsim_target_open): ... this.
9127         (_initialize_remote_sim): Adjust.
9128         * remote.c (remote_doc): New.
9129         (remote_target_info): New.
9130         (remote_target) <shortname, longname, doc>: Delete.
9131         <info>: New.
9132         (extended_remote_target_info): New.
9133         (extended_remote_target) <shortname, longname, doc>: Delete.
9134         <info>: New.
9135         (remote_target::open_1): Make static.  Adjust.
9136         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9137         * s390-linux-nat.c (_initialize_s390_nat): Use
9138         add_inf_child_target.
9139         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9140         add_inf_child_target.
9141         * sol-thread.c (thread_db_target_info): New.
9142         (sol_thread_target) <shortname, longname, doc>: Delete.
9143         <info>: New.
9144         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9145         add_inf_child_target.
9146         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9147         add_inf_child_target.
9148         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9149         add_inf_child_target.
9150         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9151         add_inf_child_target.
9152         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9153         add_inf_child_target.
9154         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9155         add_inf_child_target.
9156         * spu-linux-nat.c (_initialize_spu_nat): Use
9157         add_inf_child_target.
9158         * spu-multiarch.c (spu_multiarch_target_info): New.
9159         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9160         <info>: New.
9161         * target-delegates.c: Regenerate.
9162         * target.c: Include <unordered_map>.
9163         (target_ops_p): Delete.
9164         (DEF_VEC_P(target_ops_p)): Delete.
9165         (target_factories): New.
9166         (test_target_info): New.
9167         (test_target_ops::info): New.
9168         (open_target): Adjust to use target_factories.
9169         (add_target_with_completer): Rename to ...
9170         (add_target): ... this.  Change prototype.  Register target_info
9171         and open callback in target_factories.  Register target_info in
9172         command context instead of target_ops.
9173         (add_target): Delete old implementation.
9174         (add_deprecated_target_alias): Change prototype.  Adjust.
9175         (the_native_target): New.
9176         (set_native_target, get_native_target): New.
9177         (find_default_run_target): Use the_native_target.
9178         (find_attach_target, find_run_target): Simplify.
9179         (target_ops::open): Delete.
9180         (dummy_target_info): New.
9181         (dummy_target::shortname, dummy_target::longname)
9182         (dummy_target::doc): Delete.
9183         (dummy_target::info): New.
9184         (debug_target::shortname, debug_target::longname)
9185         (debug_target::doc): Delete.
9186         (debug_target::info): New.
9187         * target.h (struct target_info): New.
9188         (target_ops::~target_ops): Add comment.
9189         (target_ops::info): New.
9190         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9191         longer virtual.  Implement in terms of target_info.
9192         (set_native_target, get_native_target): Declare.
9193         (target_open_ftype): New.
9194         (add_target, add_target_with_completer)
9195         (add_deprecated_target_alias): Change prototype.
9196         (test_target) <shortname, longname, doc>: Delete.
9197         <info>: New.
9198         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9199         add_inf_child_target.
9200         * tracefile-tfile.c (tfile_target_info): New.
9201         (tfile_target) <shortname, longname, doc>: Delete.
9202         <info>: New.
9203         (tfile_target::open): Rename to ...
9204         (tfile_target_open): ... this.
9205         (_initialize_tracefile_tfile): Adjust.
9206         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9207         add_inf_child_target.
9208         * windows-nat.c (_initialize_windows_nat): Use
9209         add_inf_child_target.
9210         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9211         add_inf_child_target.
9212
9213 2018-05-02  Pedro Alves  <palves@redhat.com>
9214
9215         * linux-nat.h (linux_nat_target) <low_new_thread,
9216         low_delete_thread, low_new_fork, low_forget_process,
9217         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9218         New virtual methods.
9219         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9220         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9221         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9222         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9223         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9224         Delete.
9225         * linux-fork.c (delete_fork): Adjust to call low method.
9226         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9227         (linux_nat_new_fork, linux_nat_forget_process_hook)
9228         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9229         (linux_nat_status_is_event):
9230         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9231         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9232         to call low method.
9233         (sigtrap_is_event): Rename to ...
9234         (linux_nat_target::low_status_is_event): ... this.
9235         (linux_nat_set_status_is_event): Delete.
9236         (save_stop_reason, linux_nat_wait_1)
9237         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9238         low methods.
9239         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9240         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9241         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9242         (linux_nat_set_prepare_to_resume): Delete.
9243         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9244         low virtual methods.
9245         * amd64-linux-nat.c: Likewise.
9246         * arm-linux-nat.c: Likewise.
9247         * i386-linux-nat.c: Likewise.
9248         * ia64-linux-nat.c: Likewise.
9249         * mips-linux-nat.c: Likewise.
9250         * ppc-linux-nat.c: Likewise.
9251         * s390-linux-nat.c: Likewise.
9252         * sparc64-linux-nat.c: Likewise.
9253         * x86-linux-nat.c: Likewise.
9254         * x86-linux-nat.h: Include "nat/x86-linux.h".
9255         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9256         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9257         Override methods.
9258
9259 2018-05-02  Pedro Alves  <palves@redhat.com>
9260
9261         * target.h (target_ops)
9262         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9263         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9264         stopped_by_watchpoint, have_continuable_watchpoint,
9265         stopped_data_address, watchpoint_addr_within_range,
9266         can_accel_watchpoint_condition, can_run, thread_alive,
9267         has_all_memory, has_memory, has_stack, has_registers,
9268         has_execution, can_async_p, is_async_p, supports_non_stop,
9269         always_non_stop_p, can_execute_reverse, supports_multi_process,
9270         supports_enable_disable_tracepoint,
9271         supports_disable_randomization, supports_string_tracing,
9272         supports_evaluation_of_breakpoint_conditions,
9273         can_run_breakpoint_commands, filesystem_is_local,
9274         can_download_tracepoint, get_trace_state_variable_value,
9275         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9276         record_is_replaying, record_will_replay,
9277         augmented_libraries_svr4_read>: Adjust to return bool.
9278         * aarch64-linux-nat.c: All implementations adjusted.
9279         * aix-thread.c: All implementations adjusted.
9280         * arm-linux-nat.c: All implementations adjusted.
9281         * breakpoint.c: All implementations adjusted.
9282         * bsd-kvm.c: All implementations adjusted.
9283         * bsd-uthread.c: All implementations adjusted.
9284         * corelow.c: All implementations adjusted.
9285         * ctf.c: All implementations adjusted.
9286         * darwin-nat.c: All implementations adjusted.
9287         * darwin-nat.h: All implementations adjusted.
9288         * exec.c: All implementations adjusted.
9289         * fbsd-nat.c: All implementations adjusted.
9290         * fbsd-nat.h: All implementations adjusted.
9291         * gnu-nat.c: All implementations adjusted.
9292         * gnu-nat.h: All implementations adjusted.
9293         * go32-nat.c: All implementations adjusted.
9294         * ia64-linux-nat.c: All implementations adjusted.
9295         * inf-child.c: All implementations adjusted.
9296         * inf-child.h: All implementations adjusted.
9297         * inf-ptrace.c: All implementations adjusted.
9298         * inf-ptrace.h: All implementations adjusted.
9299         * linux-nat.c: All implementations adjusted.
9300         * linux-nat.h: All implementations adjusted.
9301         * mips-linux-nat.c: All implementations adjusted.
9302         * nto-procfs.c: All implementations adjusted.
9303         * ppc-linux-nat.c: All implementations adjusted.
9304         * procfs.c: All implementations adjusted.
9305         * ravenscar-thread.c: All implementations adjusted.
9306         * record-btrace.c: All implementations adjusted.
9307         * record-full.c: All implementations adjusted.
9308         * remote-sim.c: All implementations adjusted.
9309         * remote.c: All implementations adjusted.
9310         * s390-linux-nat.c: All implementations adjusted.
9311         * sol-thread.c: All implementations adjusted.
9312         * spu-multiarch.c: All implementations adjusted.
9313         * target-delegates.c: All implementations adjusted.
9314         * target.c: All implementations adjusted.
9315         * target.h: All implementations adjusted.
9316         * tracefile-tfile.c: All implementations adjusted.
9317         * tracefile.c: All implementations adjusted.
9318         * tracefile.h: All implementations adjusted.
9319         * windows-nat.c: All implementations adjusted.
9320         * x86-linux-nat.h: All implementations adjusted.
9321         * x86-nat.h: All implementations adjusted.
9322
9323 2018-05-02  Pedro Alves  <palves@redhat.com>
9324
9325         * make-target-delegates (scan_target_h): Don't trim lines here.
9326         Replace sequences of tabs and/or whitespace with a single
9327         whitespace.
9328         (top level, parsing methods): Trim each line before processing it
9329         here.
9330
9331 2018-05-02  Pedro Alves  <palves@redhat.com>
9332             John Baldwin  <jhb@freebsd.org>
9333
9334         * target.h (enum strata) <debug_stratum>: New.
9335         (struct target_ops) <all delegation methods>: Replace by C++
9336         virtual methods, and drop "to_" prefix.  All references updated
9337         throughout.
9338         <to_shortname, to_longname, to_doc, to_data,
9339         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9340         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9341         virtual methods.  All references updated throughout.
9342         <can_attach, supports_terminal_ours, can_create_inferior,
9343         get_thread_control_capabilities, attach_no_wait>: New
9344         virtual methods.
9345         <insert_breakpoint, remove_breakpoint>: Now
9346         TARGET_DEFAULT_NORETURN methods.
9347         <info_proc>: Now returns bool.
9348         <to_magic>: Delete.
9349         (OPS_MAGIC): Delete.
9350         (current_target): Delete.  All references replaced by references
9351         to ...
9352         (target_stack): ... this.  New.
9353         (target_shortname, target_longname): Adjust.
9354         (target_can_run): Now a function declaration.
9355         (default_child_has_all_memory, default_child_has_memory)
9356         (default_child_has_stack, default_child_has_registers)
9357         (default_child_has_execution): Remove target_ops parameter.
9358         (complete_target_initialization): Delete.
9359         (memory_breakpoint_target): New template class.
9360         (test_target_ops): Refactor as a C++ class with virtual methods.
9361         * make-target-delegates (NAME_PART): Tighten.
9362         (POINTER_PART, CP_SYMBOL): New.
9363         (SIMPLE_RETURN_PART): Reimplement.
9364         (VEC_RETURN_PART): Expect less.
9365         (RETURN_PART, VIRTUAL_PART): New.
9366         (METHOD): Adjust to C++ virtual methods.
9367         (scan_target_h): Remove reference to C99.
9368         (dname): Output "target_ops::" prefix.
9369         (write_function_header): Adjust to output a C++ class method.
9370         (write_declaration): New.
9371         (write_delegator): Adjust to output a C++ class method.
9372         (tdname): Output "dummy_target::" prefix.
9373         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9374         method.
9375         (tdefault_names, debug_names): Delete.
9376         (return_types, tdefaults, styles, argtypes_array): New.
9377         (top level): All methods are delegators.
9378         (print_class): New.
9379         (top level): Print dummy_target and debug_target classes.
9380         * target-delegates.c: Regenerate.
9381         * target-debug.h (target_debug_print_enum_info_proc_what)
9382         (target_debug_print_thread_control_capabilities)
9383         (target_debug_print_thread_info_p): New.
9384         * target.c (dummy_target): Delete.
9385         (the_dummy_target, the_debug_target): New.
9386         (target_stack): Now extern.
9387         (set_targetdebug): Push/unpush debug target.
9388         (default_child_has_all_memory, default_child_has_memory)
9389         (default_child_has_stack, default_child_has_registers)
9390         (default_child_has_execution): Remove target_ops parameter.
9391         (complete_target_initialization): Delete.
9392         (add_target_with_completer): No longer call
9393         complete_target_initialization.
9394         (target_supports_terminal_ours): Use regular delegation.
9395         (update_current_target): Delete.
9396         (push_target): No longer check magic number.  Don't call
9397         update_current_target.
9398         (unpush_target): Don't call update_current_target.
9399         (target_is_pushed): No longer check magic number.
9400         (target_require_runnable): Skip for all stratums over
9401         process_stratum.
9402         (target_ops::info_proc): New.
9403         (target_info_proc): Use find_target_at and
9404         find_default_run_target.
9405         (target_supports_disable_randomization): Use regular delegation.
9406         (target_get_osdata): Use find_target_at.
9407         (target_ops::open, target_ops::close, target_ops::can_attach)
9408         (target_ops::attach, target_ops::can_create_inferior)
9409         (target_ops::create_inferior, target_ops::can_run)
9410         (target_can_run): New.
9411         (default_fileio_target): Use regular delegation.
9412         (target_ops::fileio_open, target_ops::fileio_pwrite)
9413         (target_ops::fileio_pread, target_ops::fileio_fstat)
9414         (target_ops::fileio_close, target_ops::fileio_unlink)
9415         (target_ops::fileio_readlink): New.
9416         (target_fileio_open_1, target_fileio_unlink)
9417         (target_fileio_readlink): Always call the target method.  Handle
9418         FILEIO_ENOSYS.
9419         (return_zero, return_zero_has_execution): Delete.
9420         (init_dummy_target): Delete.
9421         (dummy_target::dummy_target, dummy_target::shortname)
9422         (dummy_target::longname, dummy_target::doc)
9423         (debug_target::debug_target, debug_target::shortname)
9424         (debug_target::longname, debug_target::doc): New.
9425         (target_supports_delete_record): Use regular delegation.
9426         (setup_target_debug): Delete.
9427         (maintenance_print_target_stack): Skip debug_stratum.
9428         (initialize_targets): Instantiate the_dummy_target and
9429         the_debug_target.
9430         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9431         use target_stack.
9432         (target_auxv_search, fprint_target_auxv): Adjust.
9433         (info_auxv_command): Adjust to use target_stack.
9434         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9435         * exceptions.c (print_flush): Handle a NULL target_stack.
9436         * regcache.c (target_ops_no_register): Refactor as class with
9437         virtual methods.
9438
9439         * exec.c (exec_target): New class.
9440         (exec_ops): Now an exec_target.
9441         (exec_open, exec_close_1, exec_get_section_table)
9442         (exec_xfer_partial, exec_files_info, exec_has_memory)
9443         (exec_make_note_section): Refactor as exec_target methods.
9444         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9445         Delete.
9446         (exec_target::find_memory_regions): New.
9447         (_initialize_exec): Don't call init_exec_ops.
9448         * gdbcore.h (exec_file_clear): Delete.
9449
9450         * corefile.c (core_target): Delete.
9451         (core_file_command): Adjust.
9452         * corelow.c (core_target): New class.
9453         (the_core_target): New.
9454         (core_close): Remove target_ops parameter.
9455         (core_close_cleanup): Adjust.
9456         (core_target::close): New.
9457         (core_open, core_detach, get_core_registers, core_files_info)
9458         (core_xfer_partial, core_thread_alive, core_read_description)
9459         (core_pid_to_str, core_thread_name, core_has_memory)
9460         (core_has_stack, core_has_registers, core_info_proc): Rework as
9461         core_target methods.
9462         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9463         (_initialize_corelow): Initialize the_core_target.
9464         * gdbcore.h (core_target): Delete.
9465         (the_core_target): New.
9466
9467         * ctf.c: (ctf_target): New class.
9468         (ctf_ops): Now a ctf_target.
9469         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9470         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9471         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9472         methods.
9473         (init_ctf_ops): Delete.
9474         (_initialize_ctf): Don't call it.
9475         * tracefile-tfile.c (tfile_target): New class.
9476         (tfile_ops): Now a tfile_target.
9477         (tfile_open, tfile_close, tfile_files_info)
9478         (tfile_get_tracepoint_status, tfile_trace_find)
9479         (tfile_fetch_registers, tfile_xfer_partial)
9480         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9481         Refactor as tfile_target methods.
9482         (tfile_xfer_partial_features): Remove target_ops parameter.
9483         (init_tfile_ops): Delete.
9484         (_initialize_tracefile_tfile): Don't call it.
9485         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9486         (tracefile_has_stack, tracefile_has_registers)
9487         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9488         tracefile_target methods.
9489         (init_tracefile_ops): Delete.
9490         (tracefile_target::tracefile_target): New.
9491         * tracefile.h: Include "target.h".
9492         (tracefile_target): New class.
9493         (init_tracefile_ops): Delete.
9494
9495         * spu-multiarch.c (spu_multiarch_target): New class.
9496         (spu_ops): Now a spu_multiarch_target.
9497         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9498         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9499         (spu_search_memory, spu_mourn_inferior): Refactor as
9500         spu_multiarch_target methods.
9501         (init_spu_ops): Delete.
9502         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9503         complete_target_initialization.
9504
9505         * ravenscar-thread.c (ravenscar_thread_target): New class.
9506         (ravenscar_ops): Now a ravenscar_thread_target.
9507         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9508         (ravenscar_thread_alive, ravenscar_pid_to_str)
9509         (ravenscar_fetch_registers, ravenscar_store_registers)
9510         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9511         (ravenscar_stopped_by_hw_breakpoint)
9512         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9513         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9514         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9515         methods.
9516         (init_ravenscar_thread_ops): Delete.
9517         (_initialize_ravenscar): Remove references to
9518         init_ravenscar_thread_ops and complete_target_initialization.
9519
9520         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9521         (bsd_uthread_target): New class.
9522         (bsd_uthread_ops): Now a bsd_uthread_target.
9523         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9524         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9525         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9526         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9527         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9528         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9529         (bsd_uthread_target): Delete function.
9530         (_initialize_bsd_uthread): Remove reference to
9531         complete_target_initialization.
9532
9533         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9534         (target_bfd): ... this new class.
9535         (target_bfd_xfer_partial, target_bfd_get_section_table)
9536         (target_bfd_close): Refactor as target_bfd methods.
9537         (target_bfd::~target_bfd): New.
9538         (target_bfd_reopen): Adjust.
9539         (target_bfd::close): New.
9540
9541         * record-btrace.c (record_btrace_target): New class.
9542         (record_btrace_ops): Now a record_btrace_target.
9543         (record_btrace_open, record_btrace_stop_recording)
9544         (record_btrace_disconnect, record_btrace_close)
9545         (record_btrace_async, record_btrace_info)
9546         (record_btrace_insn_history, record_btrace_insn_history_range)
9547         (record_btrace_insn_history_from, record_btrace_call_history)
9548         (record_btrace_call_history_range)
9549         (record_btrace_call_history_from, record_btrace_record_method)
9550         (record_btrace_is_replaying, record_btrace_will_replay)
9551         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9552         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9553         (record_btrace_store_registers, record_btrace_prepare_to_store)
9554         (record_btrace_to_get_unwinder)
9555         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9556         (record_btrace_commit_resume, record_btrace_wait)
9557         (record_btrace_stop, record_btrace_can_execute_reverse)
9558         (record_btrace_stopped_by_sw_breakpoint)
9559         (record_btrace_supports_stopped_by_sw_breakpoint)
9560         (record_btrace_stopped_by_hw_breakpoint)
9561         (record_btrace_supports_stopped_by_hw_breakpoint)
9562         (record_btrace_update_thread_list, record_btrace_thread_alive)
9563         (record_btrace_goto_begin, record_btrace_goto_end)
9564         (record_btrace_goto, record_btrace_stop_replaying_all)
9565         (record_btrace_execution_direction)
9566         (record_btrace_prepare_to_generate_core)
9567         (record_btrace_done_generating_core): Refactor as
9568         record_btrace_target methods.
9569         (init_record_btrace_ops): Delete.
9570         (_initialize_record_btrace): Remove reference to
9571         init_record_btrace_ops.
9572         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9573         the execution_direction global.
9574         (record_full_base_target, record_full_target)
9575         (record_full_core_target): New classes.
9576         (record_full_ops): Now a record_full_target.
9577         (record_full_core_ops): Now a record_full_core_target.
9578         (record_full_target::detach, record_full_target::disconnect)
9579         (record_full_core_target::disconnect)
9580         (record_full_target::mourn_inferior, record_full_target::kill):
9581         New.
9582         (record_full_open, record_full_close, record_full_async): Refactor
9583         as methods of the record_full_base_target class.
9584         (record_full_resume, record_full_commit_resume): Refactor
9585         as methods of the record_full_target class.
9586         (record_full_wait, record_full_stopped_by_watchpoint)
9587         (record_full_stopped_data_address)
9588         (record_full_stopped_by_sw_breakpoint)
9589         (record_full_supports_stopped_by_sw_breakpoint)
9590         (record_full_stopped_by_hw_breakpoint)
9591         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9592         methods of the record_full_base_target class.
9593         (record_full_store_registers, record_full_xfer_partial)
9594         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9595         Refactor as methods of the record_full_target class.
9596         (record_full_can_execute_reverse, record_full_get_bookmark)
9597         (record_full_goto_bookmark, record_full_execution_direction)
9598         (record_full_record_method, record_full_info, record_full_delete)
9599         (record_full_is_replaying, record_full_will_replay)
9600         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9601         (record_full_stop_replaying): Refactor as methods of the
9602         record_full_base_target class.
9603         (record_full_core_resume, record_full_core_kill)
9604         (record_full_core_fetch_registers)
9605         (record_full_core_prepare_to_store)
9606         (record_full_core_store_registers, record_full_core_xfer_partial)
9607         (record_full_core_insert_breakpoint)
9608         (record_full_core_remove_breakpoint)
9609         (record_full_core_has_execution): Refactor
9610         as methods of the record_full_core_target class.
9611         (record_full_base_target::supports_delete_record): New.
9612         (init_record_full_ops): Delete.
9613         (init_record_full_core_ops): Delete.
9614         (record_full_save): Refactor as method of the
9615         record_full_base_target class.
9616         (_initialize_record_full): Remove references to
9617         init_record_full_ops and init_record_full_core_ops.
9618
9619         * remote.c (remote_target, extended_remote_target): New classes.
9620         (remote_ops): Now a remote_target.
9621         (extended_remote_ops): Now an extended_remote_target.
9622         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9623         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9624         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9625         (remote_pass_signals, remote_set_syscall_catchpoint)
9626         (remote_program_signals, )
9627         (remote_thread_always_alive): Remove target_ops parameter.
9628         (remote_thread_alive, remote_thread_name)
9629         (remote_update_thread_list, remote_threads_extra_info)
9630         (remote_static_tracepoint_marker_at)
9631         (remote_static_tracepoint_markers_by_strid)
9632         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9633         (remote_open): Refactor as methods of remote_target.
9634         (extended_remote_open, extended_remote_detach)
9635         (extended_remote_attach, extended_remote_post_attach):
9636         (extended_remote_supports_disable_randomization)
9637         (extended_remote_create_inferior): : Refactor as method of
9638         extended_remote_target.
9639         (remote_set_permissions, remote_open_1, remote_detach)
9640         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9641         (remote_resume, remote_commit_resume, remote_stop)
9642         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9643         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9644         (remote_prepare_to_store, remote_store_registers)
9645         (remote_flash_erase, remote_flash_done, remote_files_info)
9646         (remote_kill, remote_mourn, remote_insert_breakpoint)
9647         (remote_remove_breakpoint, remote_insert_watchpoint)
9648         (remote_watchpoint_addr_within_range)
9649         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9650         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9651         (remote_supports_stopped_by_sw_breakpoint)
9652         (remote_stopped_by_hw_breakpoint)
9653         (remote_supports_stopped_by_hw_breakpoint)
9654         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9655         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9656         (remote_verify_memory): Refactor as methods of remote_target.
9657         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9658         parameter.
9659         (remote_xfer_partial, remote_get_memory_xfer_limit)
9660         (remote_search_memory, remote_rcmd, remote_memory_map)
9661         (remote_pid_to_str, remote_get_thread_local_address)
9662         (remote_get_tib_address, remote_read_description): Refactor as
9663         methods of remote_target.
9664         (remote_target::fileio_open, remote_target::fileio_pwrite)
9665         (remote_target::fileio_pread, remote_target::fileio_close): New.
9666         (remote_hostio_readlink, remote_hostio_fstat)
9667         (remote_filesystem_is_local, remote_can_execute_reverse)
9668         (remote_supports_non_stop, remote_supports_disable_randomization)
9669         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9670         (remote_supports_enable_disable_tracepoint)
9671         (remote_supports_string_tracing)
9672         (remote_can_run_breakpoint_commands, remote_trace_init)
9673         (remote_download_tracepoint, remote_can_download_tracepoint)
9674         (remote_download_trace_state_variable, remote_enable_tracepoint)
9675         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9676         (remote_trace_start, remote_get_trace_status)
9677         (remote_get_tracepoint_status, remote_trace_stop)
9678         (remote_trace_find, remote_get_trace_state_variable_value)
9679         (remote_save_trace_data, remote_get_raw_trace_data)
9680         (remote_set_disconnected_tracing, remote_core_of_thread)
9681         (remote_set_circular_trace_buffer, remote_traceframe_info)
9682         (remote_get_min_fast_tracepoint_insn_len)
9683         (remote_set_trace_buffer_size, remote_set_trace_notes)
9684         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9685         (remote_disable_btrace, remote_teardown_btrace)
9686         (remote_read_btrace, remote_btrace_conf)
9687         (remote_augmented_libraries_svr4_read, remote_load)
9688         (remote_pid_to_exec_file, remote_can_do_single_step)
9689         (remote_execution_direction, remote_thread_handle_to_thread_info):
9690         Refactor as methods of remote_target.
9691         (init_remote_ops, init_extended_remote_ops): Delete.
9692         (remote_can_async_p, remote_is_async_p, remote_async)
9693         (remote_thread_events, remote_upload_tracepoints)
9694         (remote_upload_trace_state_variables): Refactor as methods of
9695         remote_target.
9696         (_initialize_remote): Remove references to init_remote_ops and
9697         init_extended_remote_ops.
9698
9699         * remote-sim.c (gdbsim_target): New class.
9700         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9701         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9702         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9703         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9704         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9705         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9706         Refactor as methods of gdbsim_target.
9707         (gdbsim_ops): Now a gdbsim_target.
9708         (init_gdbsim_ops): Delete.
9709         (gdbsim_cntrl_c): Adjust.
9710         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9711
9712         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9713         (the_amd64_linux_nat_target): New.
9714         (amd64_linux_fetch_inferior_registers)
9715         (amd64_linux_store_inferior_registers): Refactor as methods of
9716         amd64_linux_nat_target.
9717         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9718         * i386-linux-nat.c: Don't include "linux-nat.h".
9719         (i386_linux_nat_target): New class.
9720         (the_i386_linux_nat_target): New.
9721         (i386_linux_fetch_inferior_registers)
9722         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9723         as methods of i386_linux_nat_target.
9724         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9725         * inf-child.c (inf_child_ops): Delete.
9726         (inf_child_fetch_inferior_registers)
9727         (inf_child_store_inferior_registers): Delete.
9728         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9729         methods of inf_child_target.
9730         (inf_child_target::supports_terminal_ours)
9731         (inf_child_target::terminal_init)
9732         (inf_child_target::terminal_inferior)
9733         (inf_child_target::terminal_ours_for_output)
9734         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9735         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9736         New.
9737         (inf_child_open, inf_child_disconnect, inf_child_close)
9738         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9739         (inf_child_post_startup_inferior, inf_child_can_run)
9740         (inf_child_pid_to_exec_file): Refactor as methods of
9741         inf_child_target.
9742         (inf_child_follow_fork): Delete.
9743         (inf_child_target::can_create_inferior)
9744         (inf_child_target::can_attach): New.
9745         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9746         (inf_child_target::has_stack, inf_child_target::has_registers)
9747         (inf_child_target::has_execution): New.
9748         (inf_child_fileio_open, inf_child_fileio_pwrite)
9749         (inf_child_fileio_pread, inf_child_fileio_fstat)
9750         (inf_child_fileio_close, inf_child_fileio_unlink)
9751         (inf_child_fileio_readlink, inf_child_use_agent)
9752         (inf_child_can_use_agent): Refactor as methods of
9753         inf_child_target.
9754         (return_zero, inf_child_target): Delete.
9755         (inf_child_target::inf_child_target): New.
9756         * inf-child.h: Include "target.h".
9757         (inf_child_target): Delete function prototype.
9758         (inf_child_target): New class.
9759         (inf_child_open_target, inf_child_mourn_inferior)
9760         (inf_child_maybe_unpush_target): Delete.
9761         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9762         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9763         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9764         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9765         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9766         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9767         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9768         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9769         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9770         methods of inf_ptrace_target.
9771         (inf_ptrace_target): Delete function.
9772         * inf-ptrace.h: Include "inf-child.h".
9773         (inf_ptrace_target): Delete function declaration.
9774         (inf_ptrace_target): New class.
9775         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9776         * linux-nat.c (linux_target): New.
9777         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9778         (linux_nat_target::~linux_nat_target): New.
9779         (linux_child_post_attach, linux_child_post_startup_inferior)
9780         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9781         (linux_child_remove_fork_catchpoint)
9782         (linux_child_insert_vfork_catchpoint)
9783         (linux_child_remove_vfork_catchpoint)
9784         (linux_child_insert_exec_catchpoint)
9785         (linux_child_remove_exec_catchpoint)
9786         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9787         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9788         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9789         (linux_nat_stopped_data_address)
9790         (linux_nat_stopped_by_sw_breakpoint)
9791         (linux_nat_supports_stopped_by_sw_breakpoint)
9792         (linux_nat_stopped_by_hw_breakpoint)
9793         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9794         (linux_nat_kill, linux_nat_mourn_inferior)
9795         (linux_nat_xfer_partial, linux_nat_thread_alive)
9796         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9797         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9798         (linux_child_static_tracepoint_markers_by_strid)
9799         (linux_nat_is_async_p, linux_nat_can_async_p)
9800         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9801         (linux_nat_supports_multi_process)
9802         (linux_nat_supports_disable_randomization, linux_nat_async)
9803         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9804         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9805         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9806         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9807         methods of linux_nat_target.
9808         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9809         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9810         parameter.
9811         (check_stopped_by_watchpoint): Adjust.
9812         (linux_xfer_partial): Delete.
9813         (linux_target_install_ops, linux_target, linux_nat_add_target):
9814         Delete.
9815         (linux_nat_target::linux_nat_target): New.
9816         * linux-nat.h: Include "inf-ptrace.h".
9817         (linux_nat_target): New.
9818         (linux_target, linux_target_install_ops, linux_nat_add_target):
9819         Delete function declarations.
9820         (linux_target): Declare global.
9821         * linux-thread-db.c (thread_db_target): New.
9822         (thread_db_target::thread_db_target): New.
9823         (thread_db_ops): Delete.
9824         (the_thread_db_target): New.
9825         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9826         (thread_db_update_thread_list, thread_db_pid_to_str)
9827         (thread_db_extra_thread_info)
9828         (thread_db_thread_handle_to_thread_info)
9829         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9830         (thread_db_resume): Refactor as methods of thread_db_target.
9831         (init_thread_db_ops): Delete.
9832         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9833         * x86-linux-nat.c: Don't include "linux-nat.h".
9834         (super_post_startup_inferior): Delete.
9835         (x86_linux_nat_target::~x86_linux_nat_target): New.
9836         (x86_linux_child_post_startup_inferior)
9837         (x86_linux_read_description, x86_linux_enable_btrace)
9838         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9839         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9840         methods of x86_linux_nat_target.
9841         (x86_linux_create_target): Delete.  Bits folded ...
9842         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9843         pointer.
9844         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9845         (x86_linux_nat_target): New class.
9846         (x86_linux_create_target): Delete.
9847         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9848         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9849         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9850         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9851         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9852         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9853         make extern.
9854         (x86_use_watchpoints): Delete.
9855         * x86-nat.h: Include "breakpoint.h" and "target.h".
9856         (x86_use_watchpoints): Delete.
9857         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9858         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9859         (x86_insert_watchpoint, x86_remove_watchpoint)
9860         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9861         (x86_stopped_by_hw_breakpoint): New declarations.
9862         (x86_nat_target): New template class.
9863
9864         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9865         (the_ppc_linux_nat_target): New.
9866         (ppc_linux_fetch_inferior_registers)
9867         (ppc_linux_can_use_hw_breakpoint)
9868         (ppc_linux_region_ok_for_hw_watchpoint)
9869         (ppc_linux_ranged_break_num_registers)
9870         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9871         (ppc_linux_insert_mask_watchpoint)
9872         (ppc_linux_remove_mask_watchpoint)
9873         (ppc_linux_can_accel_watchpoint_condition)
9874         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9875         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9876         (ppc_linux_watchpoint_addr_within_range)
9877         (ppc_linux_masked_watch_num_registers)
9878         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9879         (ppc_linux_read_description): Refactor as methods of
9880         ppc_linux_nat_target.
9881         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9882
9883         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9884         (procfs_target): New class.
9885         (the_procfs_target): New.
9886         (procfs_target): Delete function.
9887         (procfs_auxv_parse, procfs_attach, procfs_detach)
9888         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9889         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9890         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9891         (procfs_create_inferior, procfs_update_thread_list)
9892         (procfs_thread_alive, procfs_pid_to_str)
9893         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9894         (procfs_stopped_data_address, procfs_insert_watchpoint)
9895         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9896         (proc_find_memory_regions, procfs_info_proc)
9897         (procfs_make_note_section): Refactor as methods of procfs_target.
9898         (_initialize_procfs): Adjust.
9899         * sol-thread.c (sol_thread_target): New class.
9900         (sol_thread_ops): Now a sol_thread_target.
9901         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9902         (sol_thread_fetch_registers, sol_thread_store_registers)
9903         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9904         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9905         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9906         (init_sol_thread_ops): Delete.
9907         (_initialize_sol_thread): Adjust.  Remove references to
9908         init_sol_thread_ops and complete_target_initialization.
9909
9910         * windows-nat.c (windows_nat_target): New class.
9911         (windows_fetch_inferior_registers)
9912         (windows_store_inferior_registers, windows_resume, windows_wait)
9913         (windows_attach, windows_detach, windows_pid_to_exec_file)
9914         (windows_files_info, windows_create_inferior)
9915         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9916         (windows_close, windows_pid_to_str, windows_xfer_partial)
9917         (windows_get_tib_address, windows_get_ada_task_ptid)
9918         (windows_thread_name, windows_thread_alive): Refactor as
9919         windows_nat_target methods.
9920         (do_initial_windows_stuff): Adjust.
9921         (windows_target): Delete function.
9922         (_initialize_windows_nat): Adjust.
9923
9924         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9925         (darwin_mourn_inferior, darwin_kill_inferior)
9926         (darwin_create_inferior, darwin_attach, darwin_detach)
9927         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9928         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9929         (darwin_supports_multi_process): Refactor as darwin_nat_target
9930         methods.
9931         (darwin_resume_to, darwin_files_info): Delete.
9932         (_initialize_darwin_inferior): Rename to ...
9933         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9934         * darwin-nat.h: Include "inf-child.h".
9935         (darwin_nat_target): New class.
9936         (darwin_complete_target): Delete.
9937         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9938         (darwin_target): New.
9939         (i386_darwin_fetch_inferior_registers)
9940         (i386_darwin_store_inferior_registers): Refactor as methods of
9941         darwin_nat_target.
9942         (darwin_complete_target): Delete, with ...
9943         (_initialize_i386_darwin_nat): ... bits factored out here.
9944
9945         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9946         (the_alpha_linux_nat_target): New.
9947         (alpha_linux_register_u_offset): Refactor as
9948         alpha_linux_nat_target method.
9949         (_initialize_alpha_linux_nat): Adjust.
9950         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9951         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9952         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9953         methods of linux_nat_trad_target.
9954         (linux_trad_target): Delete.
9955         * linux-nat-trad.h (linux_trad_target): Delete function.
9956         (linux_nat_trad_target): New class.
9957         * mips-linux-nat.c (mips_linux_nat_target): New class.
9958         (super_fetch_registers, super_store_registers, super_close):
9959         Delete.
9960         (the_mips_linux_nat_target): New.
9961         (mips64_linux_regsets_fetch_registers)
9962         (mips64_linux_regsets_store_registers)
9963         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9964         (mips_linux_register_u_offset, mips_linux_read_description)
9965         (mips_linux_can_use_hw_breakpoint)
9966         (mips_linux_stopped_by_watchpoint)
9967         (mips_linux_stopped_data_address)
9968         (mips_linux_region_ok_for_hw_watchpoint)
9969         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9970         (mips_linux_close): Refactor as methods of mips_linux_nat.
9971         (_initialize_mips_linux_nat): Adjust to C++ification.
9972
9973         * aix-thread.c (aix_thread_target): New class.
9974         (aix_thread_ops): Now an aix_thread_target.
9975         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9976         (aix_thread_fetch_registers, aix_thread_store_registers)
9977         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9978         (aix_thread_thread_alive, aix_thread_pid_to_str)
9979         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9980         Refactor as methods of aix_thread_target.
9981         (init_aix_thread_ops): Delete.
9982         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9983         and complete_target_initialization.
9984         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9985         (rs6000_nat_target): New class.
9986         (the_rs6000_nat_target): New.
9987         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9988         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9989         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9990         (super_create_inferior): Delete.
9991         (_initialize_rs6000_nat): Adjust to C++ification.
9992
9993         * arm-linux-nat.c (arm_linux_nat_target): New class.
9994         (the_arm_linux_nat_target): New.
9995         (arm_linux_fetch_inferior_registers)
9996         (arm_linux_store_inferior_registers, arm_linux_read_description)
9997         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9998         (arm_linux_remove_hw_breakpoint)
9999         (arm_linux_region_ok_for_hw_watchpoint)
10000         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10001         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10002         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10003         arm_linux_nat_target.
10004         (_initialize_arm_linux_nat): Adjust to C++ification.
10005
10006         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10007         (the_aarch64_linux_nat_target): New.
10008         (aarch64_linux_fetch_inferior_registers)
10009         (aarch64_linux_store_inferior_registers)
10010         (aarch64_linux_child_post_startup_inferior)
10011         (aarch64_linux_read_description)
10012         (aarch64_linux_can_use_hw_breakpoint)
10013         (aarch64_linux_insert_hw_breakpoint)
10014         (aarch64_linux_remove_hw_breakpoint)
10015         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10016         (aarch64_linux_region_ok_for_hw_watchpoint)
10017         (aarch64_linux_stopped_data_address)
10018         (aarch64_linux_stopped_by_watchpoint)
10019         (aarch64_linux_watchpoint_addr_within_range)
10020         (aarch64_linux_can_do_single_step): Refactor as methods of
10021         aarch64_linux_nat_target.
10022         (super_post_startup_inferior): Delete.
10023         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10024
10025         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10026         (the_hppa_linux_nat_target): New.
10027         (hppa_linux_fetch_inferior_registers)
10028         (hppa_linux_store_inferior_registers): Refactor as methods of
10029         hppa_linux_nat_target.
10030         (_initialize_hppa_linux_nat): Adjust to C++ification.
10031
10032         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10033         (the_ia64_linux_nat_target): New.
10034         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10035         (ia64_linux_stopped_data_address)
10036         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10037         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10038         ia64_linux_nat_target methods.
10039         (super_xfer_partial): Delete.
10040         (_initialize_ia64_linux_nat): Adjust to C++ification.
10041
10042         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10043         (the_m32r_linux_nat_target): New.
10044         (m32r_linux_fetch_inferior_registers)
10045         (m32r_linux_store_inferior_registers): Refactor as
10046         m32r_linux_nat_target methods.
10047         (_initialize_m32r_linux_nat): Adjust to C++ification.
10048
10049         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10050         (the_m68k_linux_nat_target): New.
10051         (m68k_linux_fetch_inferior_registers)
10052         (m68k_linux_store_inferior_registers): Refactor as
10053         m68k_linux_nat_target methods.
10054         (_initialize_m68k_linux_nat): Adjust to C++ification.
10055
10056         * s390-linux-nat.c (s390_linux_nat_target): New class.
10057         (the_s390_linux_nat_target): New.
10058         (s390_linux_fetch_inferior_registers)
10059         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10060         (s390_insert_watchpoint, s390_remove_watchpoint)
10061         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10062         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10063         (s390_auxv_parse, s390_read_description): Refactor as methods of
10064         s390_linux_nat_target.
10065         (_initialize_s390_nat): Adjust to C++ification.
10066
10067         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10068         (the_sparc_linux_nat_target): New.
10069         (_initialize_sparc_linux_nat): Adjust to C++ification.
10070         * sparc-nat.c (sparc_fetch_inferior_registers)
10071         (sparc_store_inferior_registers): Remove target_ops parameter.
10072         * sparc-nat.h (sparc_fetch_inferior_registers)
10073         (sparc_store_inferior_registers): Remove target_ops parameter.
10074         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10075         (the_sparc64_linux_nat_target): New.
10076         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10077
10078         * spu-linux-nat.c (spu_linux_nat_target): New class.
10079         (the_spu_linux_nat_target): New.
10080         (spu_child_post_startup_inferior, spu_child_post_attach)
10081         (spu_child_wait, spu_fetch_inferior_registers)
10082         (spu_store_inferior_registers, spu_xfer_partial)
10083         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10084         methods.
10085         (_initialize_spu_nat): Adjust to C++ification.
10086
10087         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10088         (the_tilegx_linux_nat_target): New.
10089         (fetch_inferior_registers, store_inferior_registers):
10090         Refactor as methods.
10091         (_initialize_tile_linux_nat): Adjust to C++ification.
10092
10093         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10094         (the_xtensa_linux_nat_target): New.
10095         (xtensa_linux_fetch_inferior_registers)
10096         (xtensa_linux_store_inferior_registers): Refactor as
10097         xtensa_linux_nat_target methods.
10098         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10099
10100         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10101         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10102         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10103         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10104         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10105         (fbsd_stopped_by_sw_breakpoint)
10106         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10107         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10108         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10109         (fbsd_post_startup_inferior, fbsd_post_attach)
10110         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10111         (fbsd_set_syscall_catchpoint)
10112         (super_xfer_partial, super_resume, super_wait)
10113         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10114         (fbsd_handle_debug_trap): Remove target_ops parameter.
10115         (fbsd_nat_add_target): Delete.
10116         * fbsd-nat.h: Include "inf-ptrace.h".
10117         (fbsd_nat_add_target): Delete.
10118         (USE_SIGTRAP_SIGINFO): Define.
10119         (fbsd_nat_target): New class.
10120
10121         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10122         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10123         (amd64bsd_target): Delete.
10124         * amd64-bsd-nat.h: New file.
10125         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10126         "x86-bsd-nat.h".
10127         (amd64_fbsd_nat_target): New class.
10128         (the_amd64_fbsd_nat_target): New.
10129         (amd64fbsd_read_description): Refactor as method of
10130         amd64_fbsd_nat_target.
10131         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10132         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10133         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10134         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10135         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10136         (i386bsd_target): Delete.
10137         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10138         (i386bsd_fetch_inferior_registers)
10139         (i386bsd_store_inferior_registers): Declare.
10140         (i386_bsd_nat_target): New class.
10141         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10142         (the_i386_fbsd_nat_target): New.
10143         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10144         i386_fbsd_nat_target methods.
10145         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10146         (_initialize_i386fbsd_nat): Adjust to C++ification.
10147         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10148         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10149         (_initialize_x86_bsd_nat): Adjust to C++ification.
10150         * x86-bsd-nat.h: Include "x86-nat.h".
10151         (x86bsd_target): Delete declaration.
10152         (x86bsd_nat_target): New class.
10153
10154         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10155         (the_aarch64_fbsd_nat_target): New.
10156         (aarch64_fbsd_fetch_inferior_registers)
10157         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10158         aarch64_fbsd_nat_target.
10159         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10160         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10161         (the_alpha_bsd_nat_target): New.
10162         (alphabsd_fetch_inferior_registers)
10163         (alphabsd_store_inferior_registers): Refactor as
10164         alpha_bsd_nat_target methods.
10165         (_initialize_alphabsd_nat): Refactor as methods of
10166         alpha_bsd_nat_target.
10167         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10168         (the_amd64_nbsd_nat_target): New.
10169         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10170         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10171         (the_amd64_obsd_nat_target): New.
10172         (_initialize_amd64obsd_nat): Adjust to C++ification.
10173         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10174         (the_arm_fbsd_nat_target): New.
10175         (arm_fbsd_fetch_inferior_registers)
10176         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10177         (_initialize_arm_fbsd_nat): Refactor as methods of
10178         arm_fbsd_nat_target.
10179         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10180         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10181         (the_arm_netbsd_nat_target): New.
10182         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10183         arm_netbsd_nat_target.
10184         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10185         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10186         (the_hppa_nbsd_nat_target): New.
10187         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10188         hppa_nbsd_nat_target methods.
10189         (_initialize_hppanbsd_nat): Adjust to C++ification.
10190         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10191         (the_hppa_obsd_nat_target): New.
10192         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10193         methods of hppa_obsd_nat_target.
10194         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10195         add_target.
10196         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10197         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10198         add_target.
10199         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10200         (_initialize_i386obsd_nat): Use add_target.
10201         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10202         (the_m68k_bsd_nat_target): New.
10203         (m68kbsd_fetch_inferior_registers)
10204         (m68kbsd_store_inferior_registers): Refactor as methods of
10205         m68k_bsd_nat_target.
10206         (_initialize_m68kbsd_nat): Adjust to C++ification.
10207         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10208         (the_mips_fbsd_nat_target): New.
10209         (mips_fbsd_fetch_inferior_registers)
10210         (mips_fbsd_store_inferior_registers): Refactor as methods of
10211         mips_fbsd_nat_target.
10212         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10213         add_target.
10214         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10215         (the_mips_nbsd_nat_target): New.
10216         (mipsnbsd_fetch_inferior_registers)
10217         (mipsnbsd_store_inferior_registers): Refactor as methods of
10218         mips_nbsd_nat_target.
10219         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10220         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10221         (the_mips64_obsd_nat_target): New.
10222         (mips64obsd_fetch_inferior_registers)
10223         (mips64obsd_store_inferior_registers): Refactor as methods of
10224         mips64_obsd_nat_target.
10225         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10226         add_target.
10227         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10228         nbsd_nat_target.
10229         * nbsd-nat.h: Include "inf-ptrace.h".
10230         (nbsd_nat_target): New class.
10231         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10232         (obsd_wait): Refactor as methods of obsd_nat_target.
10233         (obsd_add_target): Delete.
10234         * obsd-nat.h: Include "inf-ptrace.h".
10235         (obsd_nat_target): New class.
10236         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10237         (the_ppc_fbsd_nat_target): New.
10238         (ppcfbsd_fetch_inferior_registers)
10239         (ppcfbsd_store_inferior_registers): Refactor as methods of
10240         ppc_fbsd_nat_target.
10241         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10242         add_target.
10243         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10244         (the_ppc_nbsd_nat_target): New.
10245         (ppcnbsd_fetch_inferior_registers)
10246         (ppcnbsd_store_inferior_registers): Refactor as methods of
10247         ppc_nbsd_nat_target.
10248         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10249         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10250         (the_ppc_obsd_nat_target): New.
10251         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10252         methods of ppc_obsd_nat_target.
10253         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10254         add_target.
10255         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10256         (the_sh_nbsd_nat_target): New.
10257         (shnbsd_fetch_inferior_registers)
10258         (shnbsd_store_inferior_registers): Refactor as methods of
10259         sh_nbsd_nat_target.
10260         (_initialize_shnbsd_nat): Adjust to C++ification.
10261         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10262         (inf_ptrace_xfer_partial): Delete.
10263         (sparc_xfer_partial, sparc_target): Delete.
10264         * sparc-nat.h (sparc_fetch_inferior_registers)
10265         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10266         (sparc_target): Delete function declaration.
10267         (sparc_target): New template class.
10268         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10269         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10270         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10271         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10272         add_target.
10273         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10274         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10275         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10276         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10277         add_target.
10278         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10279         (the_vax_bsd_nat_target): New.
10280         (vaxbsd_fetch_inferior_registers)
10281         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10282         methods.
10283         (_initialize_vaxbsd_nat): Adjust to C++ification.
10284
10285         * bsd-kvm.c (bsd_kvm_target): New class.
10286         (bsd_kvm_ops): Now a bsd_kvm_target.
10287         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10288         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10289         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10290         bsd_kvm_target.
10291         (bsd_kvm_return_one): Delete.
10292         (bsd_kvm_add_target): Adjust to C++ification.
10293
10294         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10295         (nto_procfs_target_procfs): New classes.
10296         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10297         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10298         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10299         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10300         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10301         (procfs_remove_hw_breakpoint, procfs_resume)
10302         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10303         (procfs_kill_inferior, procfs_store_registers)
10304         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10305         as methods of nto_procfs_target.
10306         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10307         (nto_native_ops): Delete.
10308         (procfs_open, procfs_native_open): Delete.
10309         (nto_native_ops): Now an nto_procfs_target_native.
10310         (init_procfs_targets): Adjust to C++ification.
10311         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10312         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10313         Refactor as methods of nto_procfs_target.
10314
10315         * go32-nat.c (go32_nat_target): New class.
10316         (the_go32_nat_target): New.
10317         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10318         (go32_store_registers, go32_xfer_partial, go32_files_info)
10319         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10320         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10321         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10322         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10323         (go32_target): Delete.
10324         (_initialize_go32_nat): Adjust to C++ification.
10325
10326         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10327         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10328         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10329         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10330         gnu_nat_target.
10331         (gnu_target): Delete.
10332         * gnu-nat.h (gnu_target): Delete.
10333         (gnu_nat_target): New class.
10334         * i386-gnu-nat.c (gnu_base_target): New.
10335         (i386_gnu_nat_target): New class.
10336         (the_i386_gnu_nat_target): New.
10337         (_initialize_i386gnu_nat): Adjust to C++ification.
10338
10339 2018-05-02  Pedro Alves  <palves@redhat.com>
10340
10341         * bfd-target.c (target_bfd_xclose): Rename to ...
10342         (target_bfd_close): ... this.
10343         (target_bfd_reopen): Adjust.
10344         * target.c (target_close): Remove references to to_xclose.
10345         * target.h (target_ops::to_xclose): Delete.
10346         (target_ops::to_close): Update comments.
10347
10348 2018-05-02  Pedro Alves  <palves@redhat.com>
10349
10350         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10351         "linux-nat.h".
10352         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10353         * inf-ptrace.c (inf_ptrace_register_u_offset)
10354         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10355         (inf_ptrace_store_register, inf_ptrace_store_registers)
10356         (inf_ptrace_trad_target): Move to ...
10357         * linux-nat-trad.c: ... this new file.
10358         * linux-nat-trad.h: New file.
10359         * linux-nat.c (linux_target_install_ops): Make extern.
10360         (linux_trad_target): Delete.
10361         * linux-nat.h (linux_trad_target): Delete declaration.
10362         (linux_target_install_ops): Declare.
10363         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10364         "linux-nat.h".
10365
10366 2018-05-02  Pedro Alves  <palves@redhat.com>
10367
10368         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10369         procfs_target/add_target here.
10370         * procfs.c (procfs_target): Make static.
10371         (_initialize_procfs): Call add_target here.
10372         * procfs.h (struct target_ops): Remove forward declaration.
10373         (procfs_target): Remove declaration.
10374         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10375
10376 2018-05-02  Pedro Alves  <palves@redhat.com>
10377
10378         * procfs.c (procfs_stopped_by_watchpoint)
10379         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10380         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10381         Forward declare.
10382         (procfs_use_watchpoints): Delete, move contents...
10383         (procfs_target): ... here.
10384         * procfs.h (procfs_use_watchpoints): Delete declaration.
10385         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10386         procfs_use_watchpoints.
10387         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10388         procfs_use_watchpoints.
10389
10390 2018-05-02  Tom Tromey  <tom@tromey.com>
10391
10392         PR python/20084:
10393         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10394         and var_zuinteger_unlimited.
10395         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10396         and PARAM_ZUINTEGER_UNLIMITED.
10397         (set_parameter_value): Handle var_zuinteger and
10398         var_zuinteger_unlimited.
10399         (add_setshow_generic): Likewise.
10400         (parmpy_init): Likewise.
10401
10402 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10403
10404         PR rust/23124
10405         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10406         pointer is not null before dereferencing it.
10407
10408 2018-04-30  Tom Tromey  <tom@tromey.com>
10409
10410         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10411         is_mi_like_p.
10412
10413 2018-04-30  Tom Tromey  <tom@tromey.com>
10414
10415         * breakpoint.c (mention): Remove use of is_mi_like_p.
10416         (print_mention_ranged_breakpoint): Likewise.
10417         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10418         of is_mi_like_p.
10419
10420 2018-04-30  Tom Tromey  <tom@tromey.com>
10421
10422         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10423
10424 2018-04-30  Tom Tromey  <tom@tromey.com>
10425
10426         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10427         (info_spu_event_command): Remove some uses of is_mi_like_p.
10428
10429 2018-04-30  Tom Tromey  <tom@tromey.com>
10430
10431         * python/py-framefilter.c (py_print_single_arg)
10432         (enumerate_locals, py_print_args, py_print_frame): Remove some
10433         uses of is_mi_like_p.
10434
10435 2018-04-30  Tom Tromey  <tom@tromey.com>
10436
10437         * ui-out.c: Update.
10438         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10439         * ui-out.h (ui_out::is_mi_like_p): Now const.
10440         (ui_out::do_is_mi_like_p): Now const.
10441         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10442
10443 2018-04-30  Tom Tromey  <tom@tromey.com>
10444
10445         * varobj.c (varobj_set_visualizer): Use new_reference.
10446         * python/python.c (gdbpy_decode_line): Use new_reference.
10447         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10448         new_reference.
10449
10450 2018-04-30  Tom Tromey  <tom@tromey.com>
10451
10452         * varobj.c (install_new_value): Use new_reference.
10453         * value.h (value_incref): Return void.  Swap intro comment with
10454         value_decref.
10455         * value.c (set_value_parent): Use new_reference.
10456         (value_incref): Return void.  Update intro comment.
10457         (release_value): Use new_reference.
10458         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10459
10460 2018-04-30  Tom Tromey  <tom@tromey.com>
10461
10462         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10463         * gdb_bfd.h (new_bfd_ref): Remove.
10464         (gdb_bfd_open): Update comment.
10465         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10466         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10467         (gdb_bfd_fdopenr): Use new_reference.
10468         * exec.c (exec_file_attach): Use new_reference.
10469
10470 2018-04-30  Tom Tromey  <tom@tromey.com>
10471
10472         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10473         method.
10474
10475 2018-04-30  Tom Tromey  <tom@tromey.com>
10476
10477         * jit.c (jit_read_code_entry): Use type_align.
10478         * i386-tdep.c (i386_gdbarch_init): Don't call
10479         set_gdbarch_long_long_align_bit.
10480         * gdbarch.sh: Remove long_long_align_bit.
10481         * gdbarch.c, gdbarch.h: Rebuild.
10482         * arc-tdep.c (arc_type_align): New function.
10483         (arc_gdbarch_init): Use arc_type_align.  Don't call
10484         set_gdbarch_long_long_align_bit.
10485
10486 2018-04-30  Tom Tromey  <tom@tromey.com>
10487
10488         * rust-lang.c (rust_type_alignment): Remove.
10489         (rust_composite_type): Use type_align.
10490
10491 2018-04-30  Tom Tromey  <tom@tromey.com>
10492
10493         * NEWS: Mention Type.align.
10494         * python/py-type.c (typy_get_alignof): New function.
10495         (type_object_getset): Add "alignof".
10496
10497 2018-04-30  Tom Tromey  <tom@tromey.com>
10498
10499         PR exp/17095:
10500         * NEWS: Update.
10501         * std-operator.def (UNOP_ALIGNOF): New operator.
10502         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10503         New.
10504         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10505         * c-lang.c (c_op_print_tab): Add alignof.
10506         * c-exp.y (ALIGNOF): New token.
10507         (exp): Add "ALIGNOF" production.
10508         (ident_tokens): Add _Alignof and alignof.
10509
10510 2018-04-30  Tom Tromey  <tom@tromey.com>
10511
10512         * i386-tdep.c (i386_type_align): New function.
10513         (i386_gdbarch_init): Update.
10514         * gdbarch.sh (type_align): New method.
10515         * gdbarch.c, gdbarch.h: Rebuild.
10516         * arch-utils.h (default_type_align): Declare.
10517         * arch-utils.c (default_type_align): New function.
10518         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10519         (struct type) <align_log2>: New field.
10520         <instance_flags>: Now a bitfield.
10521         (TYPE_RAW_ALIGN): New macro.
10522         (type_align, type_raw_align, set_type_align): Declare.
10523         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10524         functions.
10525         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10526         (get_alignment, maybe_set_alignment): New functions.
10527         (read_structure_type, read_enumeration_type, read_array_type)
10528         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10529         (read_subrange_type, read_base_type): Set type alignment.
10530
10531 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10532
10533         * dwarf2read.c (read_index_from_section): Use bool.
10534
10535 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10536
10537         PR gdb/22950
10538         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10539         with #ifdef.
10540
10541 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10542
10543         PR build/22873
10544         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10545         last step, and do it atomically.
10546
10547 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10548
10549         * compile/compile-c-types.c (convert_int, convert_float):
10550         Update for C FE v1.
10551
10552 2018-04-27  Tom Tromey  <tom@tromey.com>
10553
10554         PR rust/22545:
10555         * rust-lang.c (rust_inclusive_range_type_p): New function.
10556         (rust_range): Handle inclusive ranges.
10557         (rust_compute_range): Likewise.
10558         * rust-exp.y (struct rust_op) <inclusive>: New field.
10559         (DOTDOTEQ): New constant.
10560         (range_expr): Add "..=" productions.
10561         (operator_tokens): Add "..=" token.
10562         (ast_range): Add "inclusive" parameter.
10563         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10564         ranges.
10565         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10566         bounds values.
10567         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10568         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10569         Update comments.
10570         * expprint.c (print_subexp_standard): Handle new bounds values.
10571         (dump_subexp_body_standard): Likewise.
10572
10573 2018-04-27  Tom Tromey  <tom@tromey.com>
10574
10575         * configure: Rebuild.
10576         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10577         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10578         "OVERRIDE".
10579         (class symbol_needs_eval_context): Likewise.
10580         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10581         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10582         "virtual".
10583         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10584         "override".
10585         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10586         * aarch64-tdep.c (instruction_reader::read): Use "override".
10587         (instruction_reader_test::read): Likewise.
10588         * arm-tdep.c (instruction_reader::read): Use "override".
10589         (instruction_reader_thumb::read): Likewise.
10590
10591 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10592
10593         PR remote/9665
10594         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10595         instead of remote_send.
10596         (remote_send): Remove.
10597
10598 2018-04-26  Pedro Alves  <palves@redhat.com>
10599
10600         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10601         find_function_start_sal instead of find_pc_line.
10602
10603 2018-04-26  Pedro Alves  <palves@redhat.com>
10604
10605         * breakpoint.c (set_breakpoint_location_function): Handle
10606         mst_data_gnu_ifunc.
10607         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10608         * elfread.c (elf_symtab_read): Give data symbols with
10609         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10610         (elf_rel_plt_read): Update comment.
10611         * linespec.c (convert_linespec_to_sals): Handle
10612         mst_data_gnu_ifunc.
10613         (minsym_found): Handle mst_data_gnu_ifunc.
10614         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10615         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10616         * parse.c (find_minsym_type_and_address): Handle
10617         mst_data_gnu_ifunc.
10618         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10619         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10620         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10621         comment.
10622         <mst_data_gnu_ifunc>: New enumerator.
10623
10624 2018-04-26  Pedro Alves  <palves@redhat.com>
10625
10626         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10627         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10628         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10629         Handle it.
10630         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10631         (lookup_minimal_symbol_by_pc): Adjust.
10632         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10633         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10634         * minsyms.h (lookup_msym_prefer): New enum.
10635         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10636         parameter by a lookup_msym_prefer parameter.
10637
10638 2018-04-26  Pedro Alves  <palves@redhat.com>
10639
10640         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10641         ends in "@plt" instead of looking at the symbol's section.
10642
10643 2018-04-26  Pedro Alves  <palves@redhat.com>
10644
10645         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10646         all references.
10647         (find_pc_partial_function_gnu_ifunc): Rename to ...
10648         (find_pc_partial_function): ... this, and remove references to
10649         'is_gnu_ifunc_p'.
10650         (find_pc_partial_function): Delete old implementation.
10651         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10652
10653 2018-04-26  Pedro Alves  <palves@redhat.com>
10654
10655         * linespec.c (struct bound_minimal_symbol_search_key): New.
10656         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10657         skip first line if we found a GNU ifunc minimal symbol by name.
10658         (compare_msymbols): Change parameters to work with a destructured
10659         lhs minsym.
10660         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10661         functions.
10662
10663 2018-04-26  Pedro Alves  <palves@redhat.com>
10664
10665         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10666         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10667         address/name.
10668         (add_location_to_breakpoint): Store the minsym and the objfile in
10669         the breakpoint location.
10670         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10671         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10672         Record the minsym in the sal.
10673         * symtab.h (symtab_and_line) <msymbol>: New field.
10674
10675 2018-04-26  Pedro Alves  <palves@redhat.com>
10676
10677         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10678         unless we actually resolved the ifunc.
10679
10680 2018-04-26  Pedro Alves  <palves@redhat.com>
10681
10682         * c-exp.y (variable production): Prefer ifunc minsyms over
10683         regular function symbols.
10684         * symtab.c (find_gnu_ifunc): New function.
10685         * minsyms.h (lookup_msym_prefer): New enum.
10686         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10687         parameter by a lookup_msym_prefer parameter.
10688         * symtab.h (find_gnu_ifunc): New declaration.
10689
10690 2018-04-26  Pedro Alves  <palves@redhat.com>
10691
10692         * blockframe.c (find_gnu_ifunc_target_type): New function.
10693         (find_function_type): New.
10694         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10695         return a value with a memory address.
10696         (eval_call): For calls to GNU ifunc functions, try to find the
10697         type of the target function from the type that the resolver
10698         returns.
10699         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10700         symbols.
10701         * infcall.c (find_function_return_type): Delete.
10702         (find_function_addr): Add 'function_type' parameter.  For calls to
10703         GNU ifunc functions, try to find the type of the target function
10704         from the type that the resolver returns, and return it via
10705         FUNCTION_TYPE.
10706         (call_function_by_hand_dummy): Adjust to use the function type
10707         returned by find_function_addr.
10708         (find_function_addr): Add 'function_type' parameter and move
10709         description here.
10710         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10711         declarations.
10712
10713 2018-04-26  Pedro Alves  <palves@redhat.com>
10714
10715         * c-exp.y (variable production): Skip finding an alias for ifunc
10716         symbols.
10717
10718 2018-04-26  Pedro Alves  <palves@redhat.com>
10719
10720         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10721
10722 2018-04-25  Pedro Alves  <palves@redhat.com>
10723
10724         * infcmd.c (kill_command): Print the pid as string, not the whole
10725         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10726         message.
10727         * remote.c (remote_detach_1): Print the pid as string, not the
10728         whole thread's ptid.
10729
10730 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10731             Sergio Durigan Junior  <sergiodj@redhat.com>
10732             Pedro Alves  <palves@redhat.com>
10733
10734         * infcmd.c (kill_command): Print message when inferior has
10735         been killed.
10736         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10737         '1'.
10738         (add_inferior): Improve message printed when
10739         'print_inferior_events' is on.
10740         (exit_inferior): Remove message printed when
10741         'print_inferior_events' is on.
10742         (detach_inferior): Improve message printed when
10743         'print_inferior_events' is on.
10744         (initialize_inferiors): Use 'add_inferior_silent' to set
10745         'current_inferior_'.
10746         * inferior.h (print_inferior_events): Declare here as
10747         'extern'.
10748         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10749         '[Detaching...]' messages when 'print_inferior_events' is on.
10750         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10751         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10752         'Detaching after fork from child...', replace it by '... from
10753         parent...'.
10754         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10755         prefix/suffix when printing 'Detaching...' messages.  Print
10756         them when 'print_inferior_events' is on.
10757         * remote.c (remote_detach_1): Print message when detaching
10758         from inferior and '!is_fork_parent'.
10759
10760 2018-04-24  Tom Tromey  <tom@tromey.com>
10761
10762         * cli-out.h: Reindent.
10763
10764 2018-04-24  Tom Tromey  <tom@tromey.com>
10765
10766         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10767         (cli_ui_out::do_field_string): Use fputs_filtered.
10768         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10769
10770 2018-04-23  Tom Tromey  <tom@tromey.com>
10771
10772         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10773         gdb::unique_xmalloc_ptr.
10774
10775 2018-04-23  Tom Tromey  <tom@tromey.com>
10776
10777         * configure: Rebuild.
10778
10779 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10780
10781         PR gdb/23095
10782         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10783         prepare_for_testing.  Set normal_bp to r_debug_state if target
10784         is bsd.
10785
10786 2018-04-21  Pedro Alves  <palves@redhat.com>
10787             Rajendra SY  <rajendra.sy@gmail.com>
10788
10789         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10790         * remote.c (extended_remote_attach): In all-stop mode, mark the
10791         thread as executing.
10792
10793 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10794
10795         * thread.c (thread_apply_all_command): Fix comment.
10796         (thread_command): Fix comment.
10797
10798 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10799
10800         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10801         parameter.
10802         * features/aarch64-core.c (create_feature_aarch64_core):
10803         Regenerate.
10804         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10805         Likewise.
10806         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10807         Likewise.
10808         * features/i386/32bit-avx512.c
10809         (create_feature_i386_32bit_avx512): Likewise.
10810         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10811         Likewise.
10812         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10813         Likewise.
10814         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10815         Likewise.
10816         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10817         Likewise.
10818         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10819         Likewise.
10820         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10821         Likewise.
10822         * features/i386/64bit-avx512.c
10823         (create_feature_i386_64bit_avx512): Likewise.
10824         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10825         Likewise.
10826         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10827         Likewise.
10828         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10829         Likewise.
10830         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10831         Likewise.
10832         * features/i386/64bit-segments.c
10833         (create_feature_i386_64bit_segments): Likewise.
10834         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10835         Likewise.
10836         * features/i386/x32-core.c
10837         (create_feature_i386_x32_core): Likewise.
10838         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10839         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10840         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10841         * target-descriptions.c: In generated code, don't pass xml
10842         filename.
10843
10844 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10845
10846         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10847         (print_xml_feature::visit_post): Likewise.
10848         (print_xml_feature::visit): Likewise.
10849         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10850         (print_xml_feature): Add new class.
10851         * regformats/regdat.sh: Null xmltarget on feature targets.
10852         * target-descriptions.c (struct target_desc): Add xmltarget.
10853         (maintenance_check_tdesc_xml_convert): Add unittest function.
10854         (tdesc_get_features_xml): Add function to get xml.
10855         (maintenance_check_xml_descriptions): Test xml generation.
10856         * xml-tdesc.c (string_read_description_xml): Add function.
10857         * xml-tdesc.h (string_read_description_xml): Add declaration.
10858
10859 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10860
10861         * features/Makefile: Add feature marker to targets with new style
10862         target descriptions.
10863         * regformats/aarch64.dat: Regenerate.
10864         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10865         * regformats/i386/amd64-avx-linux.dat: Likewise.
10866         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10867         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10868         * regformats/i386/amd64-linux.dat: Likewise.
10869         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10870         * regformats/i386/amd64.dat: Likewise.
10871         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10872         * regformats/i386/i386-avx-linux.dat: Likewise.
10873         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10874         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10875         * regformats/i386/i386-linux.dat: Likewise.
10876         * regformats/i386/i386-mmx-linux.dat: Likewise.
10877         * regformats/i386/i386-mpx-linux.dat: Likewise.
10878         * regformats/i386/i386.dat: Likewise.
10879         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10880         * regformats/i386/x32-avx-linux.dat: Likewise.
10881         * regformats/i386/x32-linux.dat: Likewise.
10882         * regformats/tic6x-c62x-linux.dat: Likewise.
10883         * regformats/tic6x-c64x-linux.dat: Likewise.
10884         * regformats/tic6x-c64xp-linux.dat: Likewise.
10885         * regformats/regdat.sh: Parse feature marker.
10886
10887 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10888
10889         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10890         (tdesc_osabi_name): Likewise.
10891         * target-descriptions.c (tdesc_architecture_name): Add new
10892         function.
10893         (tdesc_osabi_name): Likewise.
10894
10895 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10896
10897         * common/tdesc.c (tdesc_predefined_type): Move to here.
10898         (tdesc_named_type): Likewise.
10899         (tdesc_create_vector): Likewise.
10900         (tdesc_create_struct): Likewise.
10901         (tdesc_set_struct_size): Likewise.
10902         (tdesc_create_union): Likewise.
10903         (tdesc_create_flags): Likewise.
10904         (tdesc_create_enum): Likewise.
10905         (tdesc_add_field): Likewise.
10906         (tdesc_add_typed_bitfield): Likewise.
10907         (tdesc_add_bitfield): Likewise.
10908         (tdesc_add_flag): Likewise.
10909         (tdesc_add_enum_value): Likewise.
10910         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10911         (struct tdesc_type_vector): Likewise.
10912         (struct tdesc_type_field): Likewise.
10913         (struct tdesc_type_with_fields): Likewise.
10914         (tdesc_create_enum): Add declaration.
10915         (tdesc_add_typed_bitfield): Likewise.
10916         (tdesc_add_enum_value): Likewise.
10917         * target-descriptions.c (tdesc_type_field): Move from here.
10918         (tdesc_type_builtin): Likewise.
10919         (tdesc_type_vector): Likewise.
10920         (tdesc_type_with_fields): Likewise.
10921         (tdesc_predefined_types): Likewise.
10922         (tdesc_named_type): Likewise.
10923         (tdesc_create_vector): Likewise.
10924         (tdesc_create_struct): Likewise.
10925         (tdesc_set_struct_size): Likewise.
10926         (tdesc_create_union): Likewise.
10927         (tdesc_create_flags): Likewise.
10928         (tdesc_create_enum): Likewise.
10929         (tdesc_add_field): Likewise.
10930         (tdesc_add_typed_bitfield): Likewise.
10931         (tdesc_add_bitfield): Likewise.
10932         (tdesc_add_flag): Likewise.
10933         (tdesc_add_enum_value): Likewise.
10934         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10935         (tdesc_add_typed_bitfield): Likewise.
10936         (tdesc_add_enum_value): Likewise.
10937
10938 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10939
10940         * common/tdesc.c (tdesc_feature::accept): Move to here.
10941         (tdesc_feature::operator==): Likewise.
10942         (tdesc_create_reg): Likewise.
10943         * common/tdesc.h (tdesc_type_kind): Likewise.
10944         (struct tdesc_type): Likewise.
10945         (struct tdesc_feature): Likewise.
10946         * regformats/regdat.sh: Create a feature.
10947         * target-descriptions.c (tdesc_type_kind): Move from here.
10948         (tdesc_type): Likewise.
10949         (tdesc_type_up): Likewise.
10950         (tdesc_feature): Likewise.
10951         (tdesc_create_reg): Likewise.
10952
10953 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10954
10955         * Makefile.in: Add arch/tdesc.c
10956         * common/tdesc.c: New file.
10957         * common/tdesc.h (tdesc_element_visitor): Move to here.
10958         (tdesc_element): Likewise.
10959         (tdesc_reg): Likewise.
10960         (tdesc_reg_up): Likewise.
10961         * regformats/regdef.h (reg): Add offset to constructors.
10962         * target-descriptions.c (tdesc_element_visitor): Move from here.
10963         (tdesc_element): Likewise.
10964         (tdesc_reg): Likewise.
10965         (tdesc_reg_up): Likewise.
10966
10967 2018-04-17  Tom Tromey  <tom@tromey.com>
10968
10969         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10970         discriminant field.
10971
10972 2018-04-17  Tom Tromey  <tom@tromey.com>
10973
10974         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10975
10976 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10977
10978         * symtab.c (print_symbol_info): Skip printing filename and line
10979         number when `last' is NULL.
10980         (symtab_symbol_info): Use empty string instead of NULL for first
10981         invocation of print_symbol_info.
10982         (rbreak_command): Pass NULL to `last' parameter of
10983         print_symbol_info.
10984
10985 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10986
10987         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10988         instead of nullptr.
10989
10990 2018-04-16  Pedro Alves  <palves@redhat.com>
10991
10992         * MAINTAINERS (sh): Remove.
10993         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10994         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10995         (ALLDEPFILES): Remove sh64-tdep.c.
10996         * NEWS: Mentions that support for SH-5/SH64 is removed.
10997         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10998         (sh*-*-openbsd*): Ditto.
10999         (sh64-*-elf*): Remove.
11000         (sh*): Remove.
11001         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11002         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11003         * sh-tdep.c: No longer include "sh64-tdep.h".
11004         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11005         * sh64-tdep.c, sh64-tdep.h: Remove files.
11006
11007 2018-04-16  Pedro Alves  <palves@redhat.com>
11008
11009         * MAINTAINERS: Remove m88k.
11010         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11011         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11012         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11013         * NEWS: Mention that support for m88k was removed.
11014         * configure.host (m88*-*-*): Remove support.
11015         * configure.nat (m88k-*-*): Remove support.
11016         * configure.tgt (m88*-*-openbsd*): Remove.
11017         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11018
11019 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11020
11021         * configure.tgt (x86_tobjs): New variable.
11022         (amd64_tobjs, i386_tobjs): Use it.
11023
11024 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11025
11026         * symtab.c (print_symbol_info): Precede the symbol definition by
11027         the line number when available.
11028         * NEWS: Advertise this enhancement.
11029
11030 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11031
11032         * NEWS (New options): announce set/show record btrace cpu.
11033         * btrace.c: Include record-btrace.h.
11034         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11035         the vendor is unknown.
11036         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11037         Maybe overwrite the btrace configuration's cpu.
11038         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11039         (btrace_fetch): Add cpu parameter.  Update callers.
11040         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11041         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11042         errata workarounds if the vendor is unknown.
11043         * python/py-record-btrace.c: Include record-btrace.h.
11044         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11045         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11046         * record-btrace.c (record_btrace_cpu_state_kind): New.
11047         (record_btrace_cpu): New.
11048         (set_record_btrace_cpu_cmdlist): New.
11049         (record_btrace_get_cpu): New.
11050         (require_btrace_thread, record_btrace_info)
11051         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11052         (cmd_set_record_btrace_cpu_none): New.
11053         (cmd_set_record_btrace_cpu_auto): New.
11054         (cmd_set_record_btrace_cpu): New.
11055         (cmd_show_record_btrace_cpu): New.
11056         (_initialize_record_btrace): Initialize set/show record btrace cpu
11057         commands.
11058         * record-btrace.h (record_btrace_get_cpu): New.
11059
11060 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11061
11062         * record.c (set_record_command): Fix typo in message.
11063
11064 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11065
11066         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11067
11068 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11069
11070         * infrun.c (process_event_stop_test): Call
11071         gdbarch_in_indirect_branch_thunk.
11072         * gdbarch.sh (in_indirect_branch_thunk): New.
11073         * gdbarch.c: Regenerated.
11074         * gdbarch.h: Regenerated.
11075         * x86-tdep.h: New.
11076         * x86-tdep.c: New.
11077         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11078         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11079         (ALLDEPFILES): Add x86-tdep.c.
11080         * arch-utils.h (default_in_indirect_branch_thunk): New.
11081         * arch-utils.c (default_in_indirect_branch_thunk): New.
11082         * i386-tdep: Include x86-tdep.h.
11083         (i386_in_indirect_branch_thunk): New.
11084         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11085         function.
11086         * amd64-tdep: Include x86-tdep.h.
11087         (amd64_in_indirect_branch_thunk): New.
11088         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11089
11090 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11091
11092         PR gdb/23053
11093         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11094         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11095         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11096         regression.
11097
11098 2018-04-12  Tom Tromey  <tom@tromey.com>
11099
11100         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11101         (rust_evaluate_subexp): Likewise.
11102
11103 2018-04-12  Pedro Alves  <palves@redhat.com>
11104
11105         * procfs.c (procfs_detach): Make forward declaration's prototype
11106         match definition's protototype.
11107         (proc_get_LDT_entry): Remove stale do_cleanups call.
11108
11109 2018-04-12  Pedro Alves  <palves@redhat.com>
11110
11111         * target.h (target_ops::to_has_exited): Delete.
11112         (target_has_exited): Delete.
11113         * target-delegates.c: Regenerate.
11114
11115 2018-04-11  Pedro Alves  <palves@redhat.com>
11116
11117         * target.c (fileio_fh_t::t): Add comment.
11118         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11119         (target_fileio_close): Handle a NULL target.
11120         (invalidate_fileio_fh): New.
11121         (target_close): Call it.
11122         * remote.c (remote_hostio_send_command): No longer check whether
11123         remote_desc is open.
11124
11125 2018-04-11  Pedro Alves  <palves@redhat.com>
11126
11127         * target.c (fileio_fh_t): Make it a named struct instead of a
11128         typedef.
11129         (fileio_fh_t::is_closed): New method.
11130         (DEF_VEC_O (fileio_fh_t)): Remove.
11131         (fileio_fhandles): Now a std::vector.
11132         (is_closed_fileio_fh): Delete.
11133         (acquire_fileio_fd): Adjust.  Rename parameters.
11134         (release_fileio_fd): Adjust.
11135         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11136         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11137         (target_fileio_close): Adjust.
11138
11139 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11140
11141         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11142         index.
11143
11144 2018-04-10  Pedro Alves  <palves@redhat.com>
11145
11146         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11147         (scoped_finish_thread_state): New class.
11148         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11149         cleanup.
11150         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11151         (fetch_inferior_event, normal_stop): Likewise.
11152         * thread.c (finish_thread_state_cleanup): Delete.
11153
11154 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11155             Pedro Alves  <palves@redhat.com>
11156
11157         * value.c: Include "selftest.h" and "common/array-view.h".
11158         (struct range) <operator ==>: New.
11159         (test_ranges_contain): New.
11160         (check_ranges_vector): New.
11161         (test_insert_into_bit_range_vector): New.
11162         (_initialize_values): Register selftests.
11163         * common/array-view.h (operator==, operator!=): New.
11164
11165 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11166
11167         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11168         an iterator.
11169         * inline-frame.c: Include <algorithm>.
11170         (struct inline_state): Add constructor.
11171         (inline_state_s): Remove.
11172         (DEF_VEC_O(inline_state_s)): Remove.
11173         (inline_states): Change type to std::vector.
11174         (find_inline_frame_state): Adjust to std::vector.
11175         (allocate_inline_frame_state): Remove.
11176         (clear_inline_frame_state): Adjust to std::vector.
11177         (skip_inline_frames): Adjust to std::vector.
11178
11179 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11180
11181         * tracepoint.h (struct trace_state_variable): Add constructor.
11182         <name>: Change type to std::string.
11183         * tracepoint.c (tsv_s): Remove.
11184         (DEF_VEC_O(tsv_s)): Remove.
11185         (tvariables): Change to std::vector.
11186         (create_trace_state_variable): Adjust to std::vector.
11187         (find_trace_state_variable): Likewise.
11188         (find_trace_state_variable_by_number): Likewise.
11189         (delete_trace_state_variable): Likewise.
11190         (trace_variable_command): Adjust to std::string.
11191         (delete_trace_variable_command): Likewise.
11192         (tvariables_info_1): Adjust to std::vector.
11193         (save_trace_state_variables): Likewise.
11194         (start_tracing): Likewise.
11195         (merge_uploaded_trace_state_variables): Adjust to std::vector
11196         and std::string.
11197         * target.h (struct target_ops)
11198         <to_download_trace_state_variable>: Pass reference to
11199         trace_state_variable.
11200         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11201         * target-delegates.c: Re-generate.
11202         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11203         (mi_tsv_deleted): Likewise.
11204         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11205         * remote.c (remote_download_trace_state_variable): Change
11206         pointer to reference and adjust.
11207         * make-target-delegates (parse_argtypes): Handle references.
11208         (write_function_header): Likewise.
11209         (munge_type): Likewise.
11210
11211 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11212
11213         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11214         string_view-selftests.c.
11215         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11216         testsuite.
11217         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11218         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11219         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11220         * unittests/basic_string_view/element_access/char/1.cc:
11221         Likewise.
11222         * unittests/basic_string_view/element_access/char/empty.cc:
11223         Likewise.
11224         * unittests/basic_string_view/element_access/char/front_back.cc:
11225         Likewise.
11226         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11227         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11228         Likewise.
11229         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11230         Likewise.
11231         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11232         Likewise.
11233         * unittests/basic_string_view/operations/compare/char/1.cc:
11234         Likewise.
11235         * unittests/basic_string_view/operations/compare/char/13650.cc:
11236         Likewise.
11237         * unittests/basic_string_view/operations/copy/char/1.cc:
11238         Likewise.
11239         * unittests/basic_string_view/operations/data/char/1.cc:
11240         Likewise.
11241         * unittests/basic_string_view/operations/find/char/1.cc:
11242         Likewise.
11243         * unittests/basic_string_view/operations/find/char/2.cc:
11244         Likewise.
11245         * unittests/basic_string_view/operations/find/char/3.cc:
11246         Likewise.
11247         * unittests/basic_string_view/operations/find/char/4.cc:
11248         Likewise.
11249         * unittests/basic_string_view/operations/rfind/char/1.cc:
11250         Likewise.
11251         * unittests/basic_string_view/operations/rfind/char/2.cc:
11252         Likewise.
11253         * unittests/basic_string_view/operations/rfind/char/3.cc:
11254         Likewise.
11255         * unittests/basic_string_view/operations/substr/char/1.cc:
11256         Likewise.
11257         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11258         * unittests/string_view-selftests.c: New file.
11259
11260 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11261
11262         * unittests/basic_string_view/capacity/1.cc: New file.
11263         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11264         * unittests/basic_string_view/cons/char/1.cc: New file.
11265         * unittests/basic_string_view/cons/char/2.cc: New file.
11266         * unittests/basic_string_view/cons/char/3.cc: New file.
11267         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11268         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11269         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11270         * unittests/basic_string_view/element_access/char/1.cc: New file.
11271         * unittests/basic_string_view/element_access/char/2.cc: New file.
11272         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11273         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11274         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11275         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11276         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11277         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11278         * unittests/basic_string_view/include.cc: New file.
11279         * unittests/basic_string_view/inserters/char/1.cc: New file.
11280         * unittests/basic_string_view/inserters/char/2.cc: New file.
11281         * unittests/basic_string_view/inserters/char/3.cc: New file.
11282         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11283         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11284         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11285         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11286         * unittests/basic_string_view/literals/types.cc: New file.
11287         * unittests/basic_string_view/literals/values.cc: New file.
11288         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11289         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11290         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11291         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11292         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11293         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11294         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11295         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11296         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11297         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11298         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11299         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11300         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11301         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11302         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11303         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11304         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11305         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11306         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11307         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11308         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11309         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11310         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11311         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11312         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11313         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11314         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11315         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11316         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11317         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11318         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11319         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11320         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11321         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11322         * unittests/basic_string_view/operators/char/2.cc: New file.
11323         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11324         * unittests/basic_string_view/range_access/char/1.cc: New file.
11325         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11326         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11327         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11328         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11329         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11330         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11331         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11332         * unittests/basic_string_view/typedefs.cc: New file.
11333         * unittests/basic_string_view/types/1.cc: New file.
11334
11335 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11336
11337         * common/gdb_string_view.h: Remove libstdc++ implementation
11338         details, adjust to gdb reality.
11339         * common/gdb_string_view.tcc: Likewise.
11340         * cli/cli-script.c (struct string_view): Remove.
11341         (user_args) <m_args>: Change element type to gdb::string_view.
11342         (user_args::insert_args): Adjust.
11343
11344 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11345
11346         * common/gdb_string_view.h: New file.
11347         * common/gdb_string_view.tcc: New file.
11348
11349 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11350
11351         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11352         * configure: Re-generate.
11353
11354 2018-04-09  Pedro Alves  <palves@redhat.com>
11355
11356         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11357         (set_target_gdbarch): Call
11358         gdb::observers::architecture_changed.notify instead of
11359         observer_notify_architecture_changed.
11360
11361 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11362
11363         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11364         (do_restore_current_traceframe_cleanup): Remove.
11365         (restore_current_traceframe_cleanup_dtor): Remove.
11366         (make_cleanup_restore_current_traceframe): Remove.
11367         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11368         New.
11369         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11370         * infrun.c (fetch_inferior_event): Use
11371         scoped_restore_current_traceframe.
11372
11373 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11374
11375         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11376         Remove.
11377         <n_allocated_type_units>: Remove.
11378         <all_type_units>: Change to std::vector.
11379         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11380         to std::vector change.
11381         (dwarf2_per_objfile::get_cutu): Likewise.
11382         (dwarf2_per_objfile::get_tu): Likewise.
11383         (create_signatured_type_table_from_index): Likewise.
11384         (create_signatured_type_table_from_debug_names): Likewise.
11385         (dw2_symtab_iter_next): Likewise.
11386         (dw2_print_stats): Likewise.
11387         (dw2_expand_all_symtabs): Likewise.
11388         (dw2_expand_marked_cus): Likewise.
11389         (dw2_debug_names_iterator::next): Likewise.
11390         (dwarf2_initialize_objfile): Likewise.
11391         (add_signatured_type_cu_to_table): Likewise.
11392         (create_all_type_units): Likewise.
11393         (add_type_unit): Likewise.
11394         (struct tu_abbrev_offset): Add constructor.
11395         (build_type_psymtabs_1): Adjust to std::vector change.
11396         (print_tu_stats): Likewise.
11397         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11398         (write_debug_names): Likewise.
11399
11400 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11401
11402         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11403         Make an std::vector.
11404         <n_comp_units>: Remove.
11405         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11406         to std::vector change.
11407         (dwarf2_per_objfile::get_cutu): Likewise.
11408         (dwarf2_per_objfile::get_cu): Likewise.
11409         (create_cus_from_index): Likewise.
11410         (create_addrmap_from_index): Likewise.
11411         (create_addrmap_from_aranges): Likewise.
11412         (dwarf2_read_index): Likewise.
11413         (dw2_find_last_source_symtab): Likewise.
11414         (dw2_map_symtabs_matching_filename): Likewise.
11415         (dw2_symtab_iter_next): Likewise.
11416         (dw2_print_stats): Likewise.
11417         (dw2_expand_all_symtabs): Likewise.
11418         (dw2_expand_symtabs_with_fullname): Likewise.
11419         (dw2_expand_marked_cus): Likewise.
11420         (dw2_map_symbol_filenames): Likewise.
11421         (create_cus_from_debug_names): Likewise.
11422         (dwarf2_read_debug_names): Likewise.
11423         (dw2_debug_names_iterator::next): Likewise.
11424         (dwarf2_initialize_objfile): Likewise.
11425         (set_partial_user): Likewise.
11426         (dwarf2_build_psymtabs_hard): Likewise.
11427         (read_comp_units_from_section): Remove arguments, adjust to
11428         std::vector change.
11429         (create_all_comp_units): Adjust to std::vector and
11430         read_comp_units_from_section changes.
11431         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11432         change.
11433         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11434         (psyms_seen_size): Likewise.
11435         (write_gdbindex): Likewise.
11436         (write_debug_names): Likewise.
11437
11438 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11439
11440         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11441         with dwarf2_per_objfile.
11442         (create_cus_from_index): Likewise.
11443         (create_signatured_type_table_from_index): Likewise.
11444         (dwarf2_read_index): Likewise.
11445         (dwarf2_initialize_objfile): Likewise.
11446         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11447         per_cu rather than get_dwarf2_per_objfile.
11448
11449 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11450
11451         * dwarf2read.h (struct signatured_type): Forward declare.
11452         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11453         New methods.
11454         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11455         (dw2_get_cutu): ...this.
11456         (dwarf2_per_objfile::get_cu): Rename from...
11457         (dw2_get_cu): ...this.
11458         (dwarf2_per_objfile::get_tu): New.
11459         (create_addrmap_from_index): Adjust.
11460         (create_addrmap_from_aranges): Adjust.
11461         (dw2_find_last_source_symtab): Adjust.
11462         (dw2_map_symtabs_matching_filename): Adjust.
11463         (dw2_symtab_iter_next): Adjust.
11464         (dw2_print_stats): Adjust.
11465         (dw2_expand_all_symtabs): Adjust.
11466         (dw2_expand_symtabs_with_fullname): Adjust.
11467         (dw2_expand_marked_cus): Adjust.
11468         (dw_expand_symtabs_matching_file_matcher): Adjust.
11469         (dw2_map_symbol_filenames): Adjust.
11470         (dw2_debug_names_iterator::next): Adjust.
11471         (dwarf2_initialize_objfile): Adjust.
11472         (set_partial_user): Adjust.
11473         (dwarf2_build_psymtabs_hard): Adjust.
11474
11475 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11476
11477         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11478         Remove unused variables.
11479         (dw2_map_symtabs_matching_filename): Likewise.
11480         (dwarf2_record_block_ranges): Likewise.
11481         (dwarf2_read_addr_index): Likewise.
11482         (follow_die_offset): Likewise.
11483
11484 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11485
11486         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11487         to symbol_file_add_main.
11488
11489 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11490
11491         PR mi/22299
11492         * mi/mi-console.c (do_fputc_async_safe): New.
11493         (mi_console_file::write_async_safe): New.
11494         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11495         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11496         New.
11497         * ui-file.c (ui_file::putstrn): Adjust call to
11498         fputstrn_unfiltered.
11499         * utils.c (printchar): Replace do_fputs and do_fprintf
11500         parameters by do_fputc.
11501         (fputstr_filtered): Adjust call to printchar.
11502         (fputstr_unfiltered): Likewise.
11503         (fputstrn_filtered): Likewise.
11504         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11505         printchar.
11506         * utils.h (do_fputc_ftype): New typedef.
11507         (fputstrn_unfiltered): Add do_fputc parameter.
11508
11509 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11510
11511         * regformats/i386/i386-avx.dat: Remove.
11512
11513 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11514
11515         PR gdb/22979
11516         * amd64-tdep.c (amd64_none_init_abi): New function.
11517         (amd64_x32_none_init_abi): New function.
11518         (_initialize_amd64_tdep): Register handlers for x86-64 and
11519         x64_32 with GDB_OSABI_NONE.
11520         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11521         GDB_OSABI_NONE osabi.
11522
11523 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11524
11525         PR gdb/22980
11526         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11527         GDB_OSABI_NONE.
11528         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11529         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11530
11531 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11532
11533         * common/byte-vector.h (char_vector): New type.
11534         * target.h (target_read_alloc): Return
11535         gdb::optional<byte_vector>.
11536         (target_read_stralloc): Return gdb::optional<char_vector>.
11537         (target_get_osdata): Return gdb::optional<char_vector>.
11538         * target.c (target_read_alloc_1): Templatize.  Replacement
11539         manual memory management with vector.
11540         (target_read_alloc): Change return type, adjust.
11541         (target_read_stralloc): Change return type, adjust.
11542         (target_get_osdata): Change return type, adjust.
11543         * auxv.c (struct auxv_info) <length>: Remove.
11544         <data>: Change type to gdb::optional<byte_vector>.
11545         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11546         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11547         (target_auxv_search): Adjust.
11548         (fprint_target_auxv): Adjust.
11549         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11550         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11551         (linux_make_corefile_notes): Adjust.
11552         * osdata.c (get_osdata): Adjust.
11553         * remote.c (remote_get_threads_with_qxfer): Adjust.
11554         (remote_memory_map): Adjust.
11555         (remote_traceframe_info): Adjust.
11556         (btrace_read_config): Adjust.
11557         (remote_read_btrace): Adjust.
11558         (remote_pid_to_exec_file): Adjust.
11559         * solib-aix.c (solib_aix_get_library_list): Adjust.
11560         * solib-dsbt.c (decode_loadmap): Don't free buf.
11561         (dsbt_get_initial_loadmaps): Adjust.
11562         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11563         * solib-target.c (solib_target_current_sos): Adjust.
11564         * tracepoint.c (sdata_make_value): Adjust.
11565         * xml-support.c (xinclude_start_include): Adjust.
11566         (xml_fetch_content_from_file): Adjust.
11567         * xml-support.h (xml_fetch_another): Change return type.
11568         (xml_fetch_content_from_file): Change return type.
11569         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11570         * xml-tdesc.c (file_read_description_xml): Adjust.
11571         (fetch_available_features_from_target): Change return type.
11572         (target_fetch_description_xml): Adjust.
11573         (target_read_description_xml): Adjust.
11574
11575 2018-04-06  Tom Tromey  <tom@tromey.com>
11576
11577         * value.c (~value): Update.
11578         (struct value) <contents>: Now unique_xmalloc_ptr.
11579         (value_contents_bits_eq, allocate_value_contents)
11580         (value_contents_raw, value_contents_all_raw)
11581         (value_contents_for_printing, value_contents_for_printing_const)
11582         (set_value_enclosing_type): Update.
11583
11584 2018-04-06  Tom Tromey  <tom@tromey.com>
11585
11586         * value.c (range_s): Remove typedef, VEC.
11587         (struct range): Add operator<.
11588         (range_lessthan): Remove.
11589         (ranges_contain): Change type.
11590         (~value): Update.
11591         (struct value) <unavailable, optimized_out>: Now std::vector.
11592         (value_entirely_available)
11593         (value_entirely_covered_by_range_vector)
11594         (value_entirely_unavailable, value_entirely_optimized_out):
11595         Update.
11596         (insert_into_bit_range_vector): Change argument type.
11597         (find_first_range_overlap): Likewise.
11598         (struct ranges_and_idx, value_contents_bits_eq)
11599         (require_not_optimized_out, require_available): Update.
11600         (ranges_copy_adjusted): Change argument types.
11601         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11602
11603 2018-04-06  Tom Tromey  <tom@tromey.com>
11604
11605         * value.c (~value): Update.
11606         (struct value) <parent>: Now a value_ref_ptr.
11607         (value_parent, set_value_parent, value_address, value_copy):
11608         Update.
11609
11610 2018-04-06  Tom Tromey  <tom@tromey.com>
11611
11612         * value.c (struct value): Add constructor, destructor, and member
11613         initializers.
11614         (allocate_value_lazy, value_decref): Update.
11615
11616 2018-04-06  Tom Tromey  <tom@tromey.com>
11617
11618         * value.c (struct value) <released, next>: Remove.
11619         (all_values): Now a std::vector.
11620         (allocate_value_lazy): Update.
11621         (value_next): Remove.
11622         (value_mark, value_free_to_mark, release_value)
11623         (value_release_to_mark): Update.
11624
11625 2018-04-06  Tom Tromey  <tom@tromey.com>
11626
11627         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11628         (free_value_chain): Remove.
11629         * value.c (free_value_chain): Remove.
11630         (value_release_to_mark): Return a std::vector.
11631         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11632         std::vector.
11633         (check_condition): Update.
11634         * eval.c (fetch_subexp_value): Change "val_chain" to a
11635         std::vector.
11636         * breakpoint.c (update_watchpoint): Update.
11637         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11638
11639 2018-04-06  Tom Tromey  <tom@tromey.com>
11640
11641         * value.h (free_all_values): Remove.
11642         * value.c (free_all_values): Remove.
11643
11644 2018-04-06  Tom Tromey  <tom@tromey.com>
11645
11646         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11647         (value_history_chain, value_history_count): Remove.
11648         (value_history): New global.
11649         (record_latest_value, access_value_history, show_values)
11650         (preserve_values): Update.
11651
11652 2018-04-06  Tom Tromey  <tom@tromey.com>
11653
11654         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11655         * varobj.c (varobj_set_display_format, varobj_set_value)
11656         (install_default_visualizer, construct_visualizer)
11657         (install_new_value, ~varobj, varobj_get_value_type)
11658         (my_value_of_variable, varobj_editable_p): Update.
11659         * c-varobj.c (c_describe_child, c_value_of_variable)
11660         (cplus_number_of_children, cplus_describe_child): Update.
11661         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11662         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11663         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11664
11665 2018-04-06  Tom Tromey  <tom@tromey.com>
11666
11667         * printcmd.c (last_examine_address): Change type to
11668         value_ref_ptr.
11669         (do_examine, x_command): Update.
11670
11671 2018-04-06  Tom Tromey  <tom@tromey.com>
11672
11673         * value.c (release_value): Update.
11674         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11675         (struct bpstats) <val>: Now a value_ref_ptr.
11676         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11677         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11678         (~watchpoint, print_it_watchpoint, watch_command_1)
11679         (invalidate_bp_value_on_memory_change): Update.
11680
11681 2018-04-06  Tom Tromey  <tom@tromey.com>
11682
11683         * varobj.c (varobj_clear_saved_item)
11684         (update_dynamic_varobj_children, install_new_value, ~varobj):
11685         Update.
11686         * value.h (value_incref): Move declaration earlier.
11687         (value_decref): Rename from value_free.
11688         (struct value_ref_policy): New.
11689         (value_ref_ptr): New typedef.
11690         (struct value_deleter): Remove.
11691         (gdb_value_up): Remove typedef.
11692         (release_value): Change return type.
11693         (release_value_or_incref): Remove.
11694         * value.c (set_value_parent): Update.
11695         (value_incref): Change return type.
11696         (value_decref): Rename from value_free.
11697         (value_free_to_mark, free_all_values, free_value_chain): Update.
11698         (release_value): Return value_ref_ptr.
11699         (release_value_or_incref): Remove.
11700         (record_latest_value, set_internalvar, clear_internalvar):
11701         Update.
11702         * stack.c (info_frame_command): Don't call value_free.
11703         * python/py-value.c (valpy_dealloc, valpy_new)
11704         (value_to_value_object): Update.
11705         * printcmd.c (do_examine): Update.
11706         * opencl-lang.c (lval_func_free_closure): Update.
11707         * mi/mi-main.c (register_changed_p): Don't call value_free.
11708         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11709         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11710         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11711         value_free.
11712         * guile/scm-value.c (vlscm_free_value_smob)
11713         (vlscm_scm_from_value): Update.
11714         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11715         (frame_unwind_register_unsigned, get_frame_register_bytes)
11716         (put_frame_register_bytes): Don't call value_free.
11717         * findvar.c (address_from_register): Don't call value_free.
11718         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11719         * dwarf2loc.c (entry_data_value_free_closure)
11720         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11721         (dwarf2_evaluate_loc_desc_full): Update.
11722         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11723         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11724         (~watchpoint, watch_command_1)
11725         (invalidate_bp_value_on_memory_change): Update.
11726         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11727
11728 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11729
11730         PR gdb/23022
11731         * warning.m4: Add -Wno-error=deprecated-register.
11732         * configure: Re-generate.
11733
11734 2018-04-05  Tom Tromey  <tom@tromey.com>
11735
11736         * linespec.h: Remove include of "vec.h".
11737
11738 2018-04-05  Tom Tromey  <tom@tromey.com>
11739
11740         * linespec.c (typep): Remove typedef.
11741         (find_methods, find_superclass_methods): Take a std::vector.
11742         (find_method): Use std::vector.
11743
11744 2018-04-05  Tom Tromey  <tom@tromey.com>
11745
11746         * utils.c (compare_strings): Remove.
11747         * utils.h (compare_strings): Remove.
11748         * objc-lang.h (find_imps): Update.
11749         * objc-lang.c (find_methods): Take a std::vector.
11750         (uniquify_strings, find_imps): Likewise.
11751         * linespec.c (find_methods): Take a std::vector.
11752         (decode_objc): Use std::vector.
11753         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11754         a std::vector.
11755         (find_method, find_function_symbols): Use std::vector.
11756
11757 2018-04-05  Tom Tromey  <tom@tromey.com>
11758
11759         * completer.c (completion_tracker::completion_tracker): Remove
11760         cast.
11761         (completion_tracker::discard_completions): Likewise.
11762         * breakpoint.c (ambiguous_names_p): Remove cast.
11763         * ada-lang.c (_initialize_ada_language): Remove cast.
11764         * utils.h (streq): Update.
11765         (streq_hash): Add new declaration.
11766         * utils.c (streq): Return bool.
11767         (streq_hash): New function.
11768
11769 2018-04-05  Tom Tromey  <tom@tromey.com>
11770
11771         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11772         Remove a string copy.
11773
11774 2018-04-05  Tom Tromey  <tom@tromey.com>
11775
11776         * linespec.c (filter_results): Use std::vector.
11777         (decode_line_2, decode_line_full): Update.
11778
11779 2018-04-05  Tom Tromey  <tom@tromey.com>
11780
11781         * linespec.c (canonical_to_fullform): Return std::string.
11782         (filter_results): Update.
11783         (struct decode_line_2_item): Add constructor.
11784         <fullform, displayform>: Now std::string.
11785         (decode_line_2_compare_items): Now a std::sort comparator.
11786         (decode_line_2): Update.
11787
11788 2018-04-05  Tom Tromey  <tom@tromey.com>
11789
11790         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11791         (unexpected_linespec_error): Update.
11792         (linespec_parse_basic, parse_linespec): Update.
11793
11794 2018-04-05  Tom Tromey  <tom@tromey.com>
11795
11796         * linespec.c (linespec_parse_basic): Reindent.
11797
11798 2018-04-05  Tom Tromey  <tom@tromey.com>
11799
11800         * minsyms.h (iterate_over_minimal_symbols): Update.
11801         * minsyms.c (iterate_over_minimal_symbols): Take a
11802         gdb::function_view.
11803         * linespec.c (struct collect_minsyms): Remove.
11804         (compare_msyms): Now a std::sort comparator.
11805         (add_minsym): Add parameters.
11806         (search_minsyms_for_name): Update.  Use std::vector.
11807
11808 2018-04-03  Tom Tromey  <tom@tromey.com>
11809
11810         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11811         gdb::byte_vector.
11812
11813 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11814
11815         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11816
11817 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11818
11819         PR gdb/16959
11820         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11821         printing static type.
11822
11823 2018-04-01  Tom Tromey  <tom@tromey.com>
11824
11825         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11826         (rs6000_xfer_shared_libraries): Update.
11827
11828 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11829
11830         * common/gdb_vecs.h (char_ptr): Remove.
11831         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11832
11833 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11834
11835         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11836         with std::vector.
11837         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11838
11839 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11840
11841         * tracepoint.h (struct uploaded_tp): Initialize fields.
11842         <actions, step_actions, cmd_strings>: Change type to
11843         std::vector<char *>.
11844         * tracepoint.c (get_uploaded_tp): Allocate with new.
11845         (free_uploaded_tps): Free with delete.
11846         (parse_tracepoint_definition): Adjust to std::vector change.
11847         * breakpoint.c (read_uploaded_action): Likewise.
11848         (create_tracepoint_from_upload): Likewise.
11849         * ctf.c (ctf_write_uploaded_tp): Likewise.
11850         (SET_ARRAY_FIELD): Likewise.
11851         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11852
11853 2018-03-30  Tom Tromey  <tom@tromey.com>
11854
11855         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11856         std::unique_ptr.
11857         (svr4_keep_data_in_core): Update.
11858         (svr4_read_so_list): Update.
11859
11860 2018-03-30  Tom Tromey  <tom@tromey.com>
11861
11862         * windows-nat.c (handle_output_debug_string, handle_exception):
11863         Update.
11864         * target.h (target_read_string): Update.
11865         * target.c (target_read_string): Change "string" to
11866         unique_xmalloc_ptr.
11867         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11868         Update.
11869         * solib-frv.c (frv_current_sos): Update.
11870         * solib-dsbt.c (dsbt_current_sos): Update.
11871         * solib-darwin.c (darwin_current_sos): Update.
11872         * linux-thread-db.c (inferior_has_bug): Update.
11873         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11874         Update.  Remove alloca.
11875         * ada-lang.c (ada_main_name): Update.
11876
11877 2018-03-30  Tom Tromey  <tom@tromey.com>
11878
11879         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11880         (struct dwo_file_deleter): New.
11881         (dwo_file_up): New typedef.
11882         (open_and_init_dwo_file): Use dwo_file_up.
11883         (free_dwo_file_cleanup): Remove.
11884
11885 2018-03-30  Tom Tromey  <tom@tromey.com>
11886
11887         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11888         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11889
11890 2018-03-30  Tom Tromey  <tom@tromey.com>
11891
11892         * dwarf2read.c (class free_cached_comp_units): New class.
11893         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11894         (free_cached_comp_units): Remove function.
11895
11896 2018-03-30  Tom Tromey  <tom@tromey.com>
11897
11898         * utils.h (make_cleanup_unpush_target): Remove.
11899         * inf-ptrace.c (struct target_unpusher): New.
11900         (target_unpush_up) New typedef.
11901         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11902         target_unpush_up.
11903         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11904
11905 2018-03-27  Tom Tromey  <tom@tromey.com>
11906
11907         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11908
11909 2018-03-27  Pedro Alves  <palves@redhat.com>
11910             Tom Tromey  <tom@tromey.com>
11911
11912         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11913         destructor.  Now a class.
11914         (gdb_readline_wrapper_cleanup): Remove function.
11915         (gdb_readline_wrapper): Remove cleanups.
11916
11917 2018-03-27  Tom Tromey  <tom@tromey.com>
11918
11919         * typeprint.h (struct type_print_options) <local_typedefs,
11920         global_typedefs>: Remove "struct" keyword.
11921         (class typedef_hash_table): New class.
11922         (recursively_update_typedef_hash, add_template_parameters)
11923         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11924         (find_typedef_in_hash): Don't declare.
11925         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11926         (typedef_hash_table::recursively_update): Rename from
11927         recursively_update_typedef_hash.  Now a member.
11928         (typedef_hash_table::add_template_parameters): Rename from
11929         add_template_parameters.  Now a member.
11930         (typedef_hash_table::typedef_hash_table): Now a constructor;
11931         rename from create_typedef_hash.
11932         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11933         rename from free_typedef_hash.
11934         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11935         (do_free_global_table): Remove.
11936         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11937         from copy_type_recursive.
11938         (create_global_typedef_table): Remove.
11939         (typedef_hash_table::find_global_typedef): Now a member of
11940         typedef_hash_table.
11941         (typedef_hash_table::find_typedef): Rename from
11942         find_typedef_in_hash; now a member.
11943         (whatis_exp): Update.
11944         * extension.h (struct ext_lang_type_printers): Add constructor and
11945         destructor.
11946         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11947         declare.
11948         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11949         Now a constructor; rename from start_ext_lang_type_printers.
11950         (ext_lang_type_printers): Now a destructor; rename from
11951         free_ext_lang_type_printers.
11952         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11953         Update.
11954         (c_type_print_base_struct_union): Update.  Remove cleanups.
11955
11956 2018-03-27  Tom Tromey  <tom@tromey.com>
11957
11958         * dwarf-index-write.c: Include <cmath>.
11959
11960 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11961
11962         * NEWS: Add entry describing new "set|show varsize-limit" command.
11963         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11964         command.
11965         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11966         "set variable".
11967
11968 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11969
11970         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11971         dwarf-index-write.c
11972         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11973         * dwarf-index-common.c: New file.
11974         * dwarf-index-common.h: New file.
11975         * dwarf-index-write.c: New file.
11976         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11977         (struct dwarf2_section_info): Move from here.
11978         (dwarf2_section_info_def): Likewise.
11979         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11980         (offset_type): Likewise.
11981         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11982         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11983         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11984         (byte_swap): Likewise.
11985         (MAYBE_SWAP): Likewise.
11986         (dwarf2_per_cu_ptr): Likewise.
11987         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11988         (struct tu_stats): Likewise.
11989         (struct dwarf2_per_objfile): Likewise.
11990         (struct dwarf2_per_cu_data): Likewise.
11991         (struct signatured_type): Likewise.
11992         (sig_type_ptr): Likewise.
11993         (DEF_VEC_P (sig_type_ptr)): Likewise.
11994         (INDEX4_SUFFIX): Likewise.
11995         (INDEX5_SUFFIX): Likewise.
11996         (DEBUG_STR_SUFFIX): Likewise.
11997         (dwarf2_read_section): Make non-static.
11998         (mapped_index_string_hash): Move from here.
11999         (dwarf5_djb_hash): Likewise.
12000         (file_write): Likewise.
12001         (class data_buf): Likewise.
12002         (struct symtab_index_entry): Likewise.
12003         (struct mapped_symtab): Likewise.
12004         (find_slot): Likewise.
12005         (hash_expand): Likewise.
12006         (add_index_entry): Likewise.
12007         (uniquify_cu_indices): Likewise.
12008         (class c_str_view): Likewise.
12009         (class c_str_view_hasher): Likewise.
12010         (class vector_hasher): Likewise.
12011         (write_hash_table): Likewise.
12012         (psym_index_map): Likewise.
12013         (struct addrmap_index_data): Likewise.
12014         (add_address_entry): Likewise.
12015         (add_address_entry_worker): Likewise.
12016         (write_address_map): Likewise.
12017         (symbol_kind): Likewise.
12018         (write_psymbols): Likewise.
12019         (struct signatured_type_index_data): Likewise.
12020         (write_one_signatured_type): Likewise.
12021         (recursively_count_psymbols): Likewise.
12022         (recursively_write_psymbols): Likewise.
12023         (class debug_names): Likewise.
12024         (check_dwarf64_offsets): Likewise.
12025         (psyms_seen_size): Likewise.
12026         (write_gdbindex): Likewise.
12027         (write_debug_names): Likewise.
12028         (assert_file_size): Likewise.
12029         (write_psymtabs_to_index): Likewise.
12030         (save_gdb_index_command): Likewise.
12031         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12032         command.
12033         * dwarf2read.h: New file.
12034
12035 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12036
12037         PR gdb/22670
12038         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12039         symbol name if the CU's language stores symbol names in linkage
12040         format.
12041         * language.h (struct language_defn)
12042         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12043         all instances of this struct.
12044
12045 2018-03-26  Tom Tromey  <tom@tromey.com>
12046
12047         * stack.c (backtrace_command_1): Remove verbose code.
12048
12049 2018-03-26  Tom Tromey  <tom@tromey.com>
12050
12051         * python/py-framefilter.c (py_print_type): Don't catch
12052         exceptions.  Return void.
12053         (py_print_value): Likewise.
12054         (py_print_single_arg): Likewise.
12055         (enumerate_args): Don't catch exceptions.
12056         (py_print_args): Likewise.
12057         (py_print_frame): Likewise.
12058         (gdbpy_apply_frame_filter): Catch exceptions here.
12059
12060 2018-03-26  Tom Tromey  <tom@tromey.com>
12061
12062         * stack.c (_initialize_stack): Remove trailing newlines from help
12063         text.  Add "Usage" line to "backtrace" help.
12064
12065 2018-03-26  Tom Tromey  <tom@tromey.com>
12066
12067         PR python/16486:
12068         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12069
12070 2018-03-26  Tom Tromey  <tom@tromey.com>
12071
12072         * python/py-framefilter.c (py_print_single_arg): Return
12073         EXT_LANG_BT_ERROR from catch.
12074
12075 2018-03-26  Tom Tromey  <tom@tromey.com>
12076
12077         PR backtrace/15584:
12078         * stack.c (backtrace_command_1): Move some code into no-filters
12079         "if".
12080
12081 2018-03-26  Tom Tromey  <tom@tromey.com>
12082
12083         * python/py-framefilter.c (throw_quit_or_print_exception): New
12084         function.
12085         (gdbpy_apply_frame_filter): Use it.
12086
12087 2018-03-26  Tom Tromey  <tom@tromey.com>
12088
12089         PR cli/17716:
12090         * python/py-framefilter.c (py_print_type, py_print_value)
12091         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12092         RETURN_MASK_ERROR.
12093
12094 2018-03-26  Tom Tromey  <tom@tromey.com>
12095
12096         * python/py-framefilter.c (enumerate_args): Use
12097         gdb::unique_xmalloc_ptr.
12098
12099 2018-03-26  Tom Tromey  <tom@tromey.com>
12100
12101         * python/py-framefilter.c (py_print_frame): Return
12102         EXT_LANG_BT_OK.
12103         (gdbpy_apply_frame_filter): Update comment.
12104         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12105         Remove.
12106         <EXT_LANG_BT_NO_FILTERS>: Change value.
12107
12108 2018-03-26  Tom Tromey  <tom@tromey.com>
12109
12110         PR backtrace/15582:
12111         * stack.c (backtrace_command): Parse "hide" argument.
12112         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12113         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12114         constant.
12115
12116 2018-03-26  Tom Tromey  <tom@tromey.com>
12117
12118         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12119         add "flags".
12120         (backtrace_command): Remove "fulltrace", add "flags".
12121
12122 2018-03-26  Tom Tromey  <tom@tromey.com>
12123
12124         * stack.c (backtrace_command): Rewrite command line parsing.
12125
12126 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12127
12128         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12129
12130 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12131
12132         * filename-seen-cache.h: Add include guard.
12133
12134 2018-03-26  Keith Seitz  <keiths@redhat.com>
12135
12136         * symfile.c (place_section): Remove "struct" from section_addr_info
12137         in comment.
12138         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12139         "struct" keyword from section_addr_info.
12140
12141 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12142
12143         * regformats/regdef.h (reg): Add constructors.
12144
12145 2018-03-25  Pedro Alves  <palves@redhat.com>
12146
12147         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12148         if then/else bodies in var_func_name extraction.
12149
12150 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12151
12152         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12153         lookup_minimal_symbol() to find symbol entry.
12154         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12155
12156 2018-03-23  Keith Seitz  <keiths@redhat.com>
12157
12158         PR c++/22968
12159         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12160         nested type definitions for C++, too.
12161
12162 2018-03-23  Tom Tromey  <tom@tromey.com>
12163
12164         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12165         a typedef.
12166         (macho_register_oso): Remove.
12167         (macho_symtab_read): Take a std::vector.
12168         (oso_el_compare_name): Now a std::sort comparator.
12169         (macho_symfile_read_all_oso): Take a std::vector.
12170         (macho_symfile_read): Use std::vector.  Remove cleanups.
12171
12172 2018-03-22  Tom Tromey  <tom@tromey.com>
12173
12174         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12175         (record_full_goto_bookmark): Use std::string.
12176
12177 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12178
12179         PR tdep/18295
12180         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12181         a single mask.
12182
12183 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12184
12185         * rs6000-tdep.c (store_insn_p): New function.
12186         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12187         and cr_reg to their unshifted values. Use store_insn_p to
12188         match LR saves using either R1 or fdata->alloca_reg. Use
12189         store_insn_p to match CR saves. Set alloca_reg_offset
12190         when alloca_reg and framep are set. Remove lr_reg shift
12191         when assigning to fdata->lr_register.
12192
12193 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12194
12195         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12196         command line args instead of emitting a warning.
12197
12198 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12199
12200         * tracepoint.h (struct static_tracepoint_marker): Initialize
12201         fields, define default constructor, move constructor and move
12202         assignment, disable the rest.
12203         <str_id, extra>: Make std::string.
12204         (release_static_tracepoint_marker): Remove.
12205         (free_current_marker): Remove.
12206         * tracepoint.c (free_current_marker): Remove.
12207         (parse_static_tracepoint_marker_definition): Adjust to
12208         std::string, use new hex2str overload.
12209         (release_static_tracepoint_marker): Remove.
12210         (print_one_static_tracepoint_marker): Get marker by reference
12211         and adjust to std::string.
12212         (info_static_tracepoint_markers_command): Adjust to std::vector
12213         changes
12214         * target.h (static_tracepoint_marker_p): Remove typedef.
12215         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12216         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12217         bool.
12218         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12219         * target-debug.h
12220         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12221         (target_debug_print_std_vector_static_tracepoint_marker): New.
12222         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12223         to...
12224         (target_debug_print_static_tracepoint_marker_p): ... this.
12225         * target-delegates.c: Re-generate.
12226         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12227         Make std::string.
12228         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12229         (decode_static_tracepoint_spec): Adjust to std::vector.
12230         (tracepoint_print_one_detail): Adjust to std::string.
12231         (strace_marker_decode_location): Adjust to std::string.
12232         (update_static_tracepoint): Adjust to std::string, remove call
12233         to release_static_tracepoint_marker.
12234         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12235         Adjust to std::vector.
12236         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12237         (remote_static_tracepoint_markers_by_strid): Adjust to
12238         std::vector.
12239         * common/rsp-low.h (hex2str): New overload with explicit count
12240         of bytes.
12241         * common/rsp-low.c (hex2str): New overload with explicit count
12242         of bytes.
12243         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12244         (_initialize_rsp_low_selftests): Add test_hex2str test.
12245         * unittests/tracepoint-selftests.c
12246         (test_parse_static_tracepoint_marker_definition): Adjust to
12247         std::string.
12248
12249 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12250
12251         * tracepoint.c (parse_static_tracepoint_marker_definition):
12252         Consider case where the definition is followed by more
12253         definitions.
12254         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12255         tracepoint-selftests.c.
12256         * unittests/tracepoint-selftests.c: New.
12257
12258 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12259
12260         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12261         Carvalho.
12262
12263 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12264
12265         * symtab.c (find_pc_sect_line): fixed indentation.
12266
12267 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12268
12269         * symtab.c (find_pc_sect_line): now uses binary search.
12270
12271 2018-03-19  Tom Tromey  <tom@tromey.com>
12272
12273         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12274         "IDENT" production.
12275
12276 2018-03-19  Pedro Alves  <palves@redhat.com>
12277             Tom Tromey  <tom@tromey.com>
12278
12279         * unittests/observable-selftests.c: New file.
12280         * common/observable.h: New file.
12281         * observable.h: New file.
12282         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12283         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12284         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12285         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12286         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12287         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12288         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12289         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12290         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12291         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12292         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12293         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12294         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12295         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12296         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12297         tui/tui-interp.c, valops.c: Update all users.
12298         * tui/tui-hooks.c (tui_bp_created_observer)
12299         (tui_bp_deleted_observer, tui_bp_modified_observer)
12300         (tui_inferior_exit_observer, tui_before_prompt_observer)
12301         (tui_normal_stop_observer, tui_register_changed_observer):
12302         Remove.
12303         (tui_observers_token): New global.
12304         (attach_or_detach, tui_attach_detach_observers): New functions.
12305         (tui_install_hooks, tui_remove_hooks): Use
12306         tui_attach_detach_observers.
12307         * record-btrace.c (record_btrace_thread_observer): Remove.
12308         (record_btrace_thread_observer_token): New global.
12309         * observer.sh: Remove.
12310         * observer.c: Rename to observable.c.
12311         * observable.c (namespace gdb_observers): Define new objects.
12312         (observer_debug): Move into gdb_observers namespace.
12313         (struct observer, struct observer_list, xalloc_observer_list_node)
12314         (xfree_observer_list_node, generic_observer_attach)
12315         (generic_observer_detach, generic_observer_notify): Remove.
12316         (_initialize_observer): Update.
12317         Don't include observer.inc.
12318         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12319         (clean mostlyclean): Likewise.
12320         (observer.h, observer.inc): Remove targets.
12321         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12322         (COMMON_SFILES): Use observable.c, not observer.c.
12323         * .gitignore: Remove observer.h.
12324
12325 2018-03-18  Tom Tromey  <tom@tromey.com>
12326
12327         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12328         gdb::def_vector.
12329         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12330
12331 2018-03-17  Tom Tromey  <tom@tromey.com>
12332
12333         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12334
12335 2018-03-17  Tom Tromey  <tom@tromey.com>
12336
12337         * target.c (class scoped_target_fd): New.
12338         (target_fileio_close_cleanup): Remove.
12339         (target_fileio_read_alloc_1): Use scoped_target_fd.
12340
12341 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12342
12343         * silent-rules.mk: New.
12344         * Makefile.in: Include silent-rules.mk
12345         (srcdir, VPATH, top_srcdir): Move up.
12346         (COMPILE): Add ECHO_CXX.
12347         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12348         (init.c): Add ECHO_INIT_C.
12349         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12350         (version.c): Add ECHO_GEN.
12351         (printcmd.o): Add ECHO_CXX.
12352         (target-float.o): Add ECHO_CXX.
12353         (ada-exp.o): Add ECHO_CXX.
12354         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12355         (insight$(EXEEXT)): Add ECHO_CXXLD.
12356         * gnulib/configure.ac: Add AM_SILENT_RULES.
12357         * gnulib/aclocal.m4: Re-generate.
12358         * gnulib/configure: Re-generate.
12359         * gnulib/import/Makefile.in: Re-generate.
12360
12361 2018-03-16  Tom Tromey  <tom@tromey.com>
12362
12363         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12364         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12365         * utils.c (do_free_section_addr_info)
12366         (make_cleanup_free_section_addr_info): Remove.
12367         * symfile.h (struct other_sections): Add constructor.
12368         (struct section_addr_info): Remove.
12369         (section_addr_info): New typedef.
12370         (struct sym_fns) <sym_offsets>: Change type of parameter.
12371         (build_section_addr_info_from_objfile)
12372         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12373         (default_symfile_offsets, symbol_file_add)
12374         (symbol_file_add_from_bfd)
12375         (build_section_addr_info_from_section_table): Update.
12376         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12377         * symfile.c (alloc_section_addr_info): Remove.
12378         (build_section_addr_info_from_section_table): Change return type.
12379         Update.
12380         (build_section_addr_info_from_bfd)
12381         (build_section_addr_info_from_objfile): Likewise.
12382         (free_section_addr_info): Remove.
12383         (relative_addr_info_to_section_offsets): Change type of "addrs".
12384         (addrs_section_compar): Now a std::sort comparator.
12385         (addrs_section_sort): Change return type.
12386         (addr_info_make_relative): Change type of "addrs".  Update.
12387         (default_symfile_offsets, syms_from_objfile_1)
12388         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12389         (symbol_file_add_separate): Update.
12390         (symbol_file_add): Change type of "addrs".  Update.
12391         (add_symbol_file_command): Update.  Remove cleanups.
12392         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12393         cleanups.
12394         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12395         * solib.c (solib_read_symbols): Update.
12396         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12397         * machoread.c (macho_symfile_offsets): Update.
12398         * jit.c (jit_bfd_try_read_symtab): Update.
12399
12400 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12401
12402         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12403         unittests/utils-selftests.c.
12404         * unittests/utils-selftests.c: New file.
12405
12406 2018-03-14  Tom Tromey  <tom@tromey.com>
12407
12408         PR cli/14977:
12409         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12410         for NULL.
12411
12412 2018-03-14  Tom Tromey  <tom@tromey.com>
12413
12414         PR cli/19918:
12415         * printcmd.c (printf_pointer): Allow "-" in format.
12416
12417 2018-03-14  Tom Tromey  <tom@tromey.com>
12418
12419         * printcmd.c (_initialize_printcmd): Add usage to printf.
12420
12421 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12422
12423         * MAINTAINERS: Update my email address.
12424
12425 2018-03-13  Tom Tromey  <tom@tromey.com>
12426
12427         * machoread.c (macho_check_dsym): Change filenamep to a
12428         std::string*.
12429         (macho_symfile_read): Update.
12430         * symfile.c (load_command): Use std::string.
12431
12432 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12433
12434         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12435         to error message string.
12436         (riscv_register_name): Use xsnprintf instead of sprintf.
12437         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12438         internal_error.
12439         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12440         error.
12441         (riscv_push_dummy_call): Likewise.
12442
12443 2018-03-12  Tom Tromey  <tom@tromey.com>
12444
12445         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12446         Use gdb::byte_vector.
12447         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12448
12449 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12450
12451         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12452         parameter type to readable_regcache.
12453         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12454         the declaration.
12455
12456 2018-03-11  Tom Tromey  <tom@tromey.com>
12457
12458         * dwarf2read.c (struct nextfield): Add initializers.
12459         (struct nextfnfield): Remove.
12460         (struct fnfieldlist): Add initializers.  Remove "length" and
12461         "head", use std::vector.
12462         (struct decl_field_list): Remove.
12463         (struct field_info): Add initializers.
12464         <fields, baseclasses>: Now std::vector.
12465         <nbaseclasses, nfnfields, typedef_field_list_count,
12466         nested_types_list_count>: Remove.
12467         (dwarf2_add_field, dwarf2_add_type_defn)
12468         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12469         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12470         (process_structure_scope): Update.
12471
12472 2018-03-11  Tom Tromey  <tom@tromey.com>
12473
12474         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12475         for use by std::sort.
12476         (build_type_psymtabs_1): Use std::vector.
12477
12478 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12479
12480         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12481         and LIBMPFR in the printed configuration.
12482
12483 2018-03-08  Tom Tromey  <tom@tromey.com>
12484
12485         * source.c (get_filename_and_charpos): Use scoped_fd.
12486         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12487         (procfs_pidlist): Likewise.
12488         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12489         (iterate_over_mappings): Likewise.
12490
12491 2018-03-08  Tom Tromey  <tom@tromey.com>
12492
12493         * infcall.c (struct call_return_meta_info)
12494         <stack_temporaries_enabled>: Remove.
12495         (get_call_return_value, call_function_by_hand_dummy): Update.
12496         * thread.c (disable_thread_stack_temporaries): Remove.
12497         (enable_thread_stack_temporaries): Remove.
12498         (thread_stack_temporaries_enabled_p): Return bool.
12499         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12500         (get_last_thread_stack_temporary): Update.
12501         * eval.c (evaluate_subexp): Update.
12502         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12503         class, not a function.
12504         (value_ptr, value_vec): Remove typedefs.
12505         (class thread_info) <stack_temporaries_enabled>: Now bool.
12506         <stack_temporaries>: Now a std::vector.
12507         (thread_stack_temporaries_enabled_p)
12508         (value_in_thread_stack_temporaries): Return bool.
12509
12510 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12511
12512         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12513         (getpkt_or_notif_sane_1): Likewise.
12514
12515 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12516
12517         * build-id.c (build_id_to_debug_bfd): Use std::string.
12518
12519 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12520
12521         * build-id.c (find_separate_debug_file_by_buildid): Return
12522         std::string.
12523         * build-id.h (find_separate_debug_file_by_buildid): Return
12524         std::string.
12525         * coffread.c (coff_symfile_read): Adjust to std::string.
12526         * elfread.c (elf_symfile_read): Adjust to std::string.
12527         * symfile.c (separate_debug_file_exists): Change parameter to
12528         std::string.
12529         (find_separate_debug_file): Return std::string.
12530         (find_separate_debug_file_by_debuglink): Return std::string.
12531         * symfile.h (find_separate_debug_file_by_debuglink): Return
12532         std::string.
12533
12534 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12535
12536         * common/xml-utils.c (xml_escape_text): Move code to...
12537         (xml_escape_text_append): ... this new function.
12538         * common/xml-utils.h (xml_escape_text_append): New declaration.
12539         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12540         New function.
12541         (_initialize_xml_utils): register test_xml_escape_text_append as
12542         a selftest.
12543
12544 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12545
12546         * defs.h: Remove MAX_REGISTER_SIZE.
12547         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12548         asserts.
12549         * python/py-unwind.c (pyuw_sniffer): Likewise.
12550
12551 2018-03-07  Tom Tromey  <tom@tromey.com>
12552
12553         * linux-tdep.c (linux_info_proc): Update.
12554         * target.h (struct target_ops) <to_fileio_readlink>: Return
12555         optional<string>.
12556         (target_fileio_readlink): Return optional<string>.
12557         * remote.c (remote_hostio_readlink): Return optional<string>.
12558         * inf-child.c (inf_child_fileio_readlink): Return
12559         optional<string>.
12560         * target.c (target_fileio_readlink): Return optional<string>.
12561
12562 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12563
12564         * regcache.c (cooked_read_test): Add riscv to the list of
12565         architectures that have a save_reggroup.
12566
12567 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12568
12569         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12570         value is not a dynamic class object.
12571
12572 2018-03-06  Tom Tromey  <tom@tromey.com>
12573
12574         * rust-exp.y: Formatting fixes.
12575
12576 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12577
12578         * riscv-tdep.c (riscv_register_name): Remove target description
12579         support.
12580         (riscv_gdbarch_init): Remove target description check.
12581
12582 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12583
12584         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12585         comment.
12586         * riscv-tdep.h: Likewise.
12587
12588 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12589
12590         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12591         (riscv_pseudo_register_write): Delete.
12592         (riscv_gdbarch_init): Remove all use of pseudo registers.
12593
12594 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12595
12596         * record-btrace.c (btrace_print_lines): Replace cleanup
12597         parameter with RAII equivalents.
12598         (btrace_insn_history): Replace cleanup with RAII equivalents.
12599         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12600         make_cleanup_ui_out_tuple_begin_end): Remove.
12601         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12602         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12603         make_cleanup_ui_out_list_begin_end): Remove.
12604
12605 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12606
12607         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12608         parameter types to std::vector.  Use bool.
12609         (record_btrace_wait): Replace VEC(tp_t) with
12610         std::vector<thread_info *>.
12611         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12612
12613 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12614
12615         * record-btrace.c (record_btrace_disable_callback): Remove.
12616         (struct scoped_btrace_disable): New.
12617         (record_btrace_open): Use scoped_btrace_disable.
12618
12619 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12620
12621         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12622         reading values from registers.
12623
12624 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12625
12626         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12627         where appropriate.
12628
12629 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12630
12631         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12632         change parameter type.  Use GDB's print functions, and use
12633         core_addr_to_string where appropriate.
12634         (riscv_push_dummy_call): Use core_addr_to_string where
12635         appropriate, update call to riscv_print_arg_location, and reindent
12636         a few lines.
12637         (riscv_return_value): Update call to riscv_print_arg_location.
12638
12639 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12640             Tim Newsome <tim@sifive.com>
12641             Albert Ou <a0u@eecs.berkeley.edu>
12642             Darius Rad <darius@bluespec.com>
12643
12644         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12645         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12646         (ALLDEPFILES): Add riscv-tdep.c
12647         * configure.tgt: Add riscv support.
12648         * riscv-tdep.c: New file.
12649         * riscv-tdep.h: New file.
12650         * NEWS: Mention new target.
12651         * MAINTAINERS: Add entry for riscv.
12652
12653 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12654
12655         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12656         fields within aggregates.
12657
12658 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12659
12660         * record-btrace.c (btrace_print_lines): Change type of flags to
12661         gdb_disassembly_flags.
12662
12663 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12664
12665         * fbsd-nat.c: Include "inf-ptrace.h".
12666         (USE_SIGTRAP_SIGINFO): Conditionally define.
12667         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12668         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12669         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12670         function.
12671         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12672         Likewise.
12673         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12674         Likewise.
12675         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12676         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12677         "supports_stopped_by_hw_breakpoint" target methods.
12678
12679 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12680
12681         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12682         * fbsd-nat.c (debug_fbsd_nat): New variable.
12683         (show_fbsd_nat_debug): New function.
12684         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12685         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12686
12687 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12688
12689         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12690         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12691         prototype.
12692         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12693         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12694         method.
12695
12696 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12697
12698         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12699         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12700
12701 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12702
12703         * charset.c (struct charset_vector): New.
12704         (charsets): Change type to charset_vector.
12705         (find_charset_names): Adjust.
12706         (add_one): Adjust.
12707         (_initialize_charset): Adjust.
12708
12709 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12710
12711         * progspace.h (struct program_space) <deleted_solibs>: Change
12712         type to std::vector<std::string>.
12713         * progspace.c (clear_program_space_solib_cache): Adjust.
12714         * breakpoint.c (print_solib_event): Adjust.
12715         (check_status_catch_solib): Adjust.
12716         * solib.c (update_solib_list): Adjust.
12717         * ui-out.h (class ui_out) <field_string>: New overload.
12718         * ui-out.c (ui_out::field_string): New overload.
12719
12720 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12721
12722         * progspace.h (struct program_space): Add constructor and
12723         destructor, initialize fields.
12724         (add_program_space): Remove.
12725         * progspace.c (add_program_space): Rename to...
12726         (program_space::program_space): ... this.
12727         (release_program_space): Rename to...
12728         (program_space::~program_space): ... this.
12729         (delete_program_space): Use delete to delete program_space.
12730         (initialize_progspace): Use new to allocate program_space.
12731         * inferior.c (add_inferior_with_spaces): Likewise.
12732         (clone_inferior_command): Likewise.
12733         * infrun.c (follow_fork_inferior): Likewise.
12734         (handle_vfork_child_exec_or_exit): Likewise.
12735
12736 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12737
12738         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12739         (delim_string_to_char_ptr_vec): Return std::vector of
12740         gdb::unique_xmalloc_ptr.
12741         (dirnames_to_char_ptr_vec_append): Take std::vector of
12742         gdb::unique_xmalloc_ptr.
12743         (dirnames_to_char_ptr_vec): Return std::vector of
12744         gdb::unique_xmalloc_ptr.
12745         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12746         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12747         (delim_string_to_char_ptr_vec): Return an std::vector of
12748         gdb::unique_xmalloc_ptr, adjust the code.
12749         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12750         gdb::unique_xmalloc_ptr, adjust the code.
12751         (dirnames_to_char_ptr_vec): Return an std::vector of
12752         gdb::unique_xmalloc_ptr, adjust the code.
12753         * auto-load.c (auto_load_safe_path_vec): Change type to
12754         std::vector of gdb::unique_xmalloc_ptr.
12755         (auto_load_expand_dir_vars): Return an std::vector of
12756         gdb::unique_xmalloc_ptr, adjust the code.
12757         (auto_load_safe_path_vec_update): Adjust.
12758         (filename_is_in_auto_load_safe_path_vec): Adjust.
12759         (auto_load_objfile_script_1): Adjust.
12760         * build-id.c (build_id_to_debug_bfd): Adjust.
12761         * linux-thread-db.c (thread_db_load_search): Adjust.
12762         * source.c (add_path): Adjust.
12763         (openp): Adjust.
12764         * symfile.c (find_separate_debug_file): Adjust.
12765         * utils.c (do_free_char_ptr_vec): Remove.
12766         (make_cleanup_free_char_ptr_vec): Remove.
12767
12768 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12769
12770         PR gdb/22907
12771         * common/pathstuff.c: Conditionally include "<windows.h>".
12772
12773 2018-03-01  Georg Sauthoff  <mail@georg.so>
12774
12775         PR gdb/22888
12776         * gcore.in: Quote variables and switch interpreter to bash.
12777
12778 2018-03-01  Tom Tromey  <tom@tromey.com>
12779
12780         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12781         assertion.  Add assertion for discriminant_index.
12782         (quirk_rust_enum): Use correct base type name in univariant case.
12783
12784 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12785
12786         * record.c (get_call_history_modifiers): Return a
12787         record_print_flags.
12788         (cmd_record_call_history): Adjust.
12789         * record-btrace.c (record_btrace_call_history): Adjust.
12790         (record_btrace_call_history_range): Adjust.
12791         (record_btrace_call_history_from): Adjust.
12792         * target-debug.h (target_debug_print_record_print_flags): New.
12793         * target-delegates.c: Re-generate.
12794         * target.c (target_call_history): Change flags type.
12795         (target_call_history_from): Likewise.
12796         (target_call_history_range): Likewise.
12797         * target.h (struct target_ops) <target_call_history>: Likewise.
12798         (target_call_history_from): Likewise.
12799         (target_call_history_range): Likewise.
12800
12801 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12802             Simon Marchi  <simon.marchi@polymtl.ca>
12803
12804         * common/common-utils.c: Include "sys/stat.h".
12805         (is_regular_file): Move here from "source.c"; change return
12806         type to "bool".
12807         * common/common-utils.h (is_regular_file): New prototype.
12808         * common/pathstuff.c (contains_dir_separator): New function.
12809         * common/pathstuff.h (contains_dir_separator): New prototype.
12810         * source.c: Don't include "sys/stat.h".
12811         (is_regular_file): Move to "common/common-utils.c".
12812
12813 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12814
12815         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12816         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12817         * auto-load.c: Include "common/pathstuff.h".
12818         * common/common-def.h (current_directory): Move here.
12819         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12820         function.
12821         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12822         prototype.
12823         * common/pathstuff.c: New file.
12824         * common/pathstuff.h: New file.
12825         * compile/compile.c: Include "common/pathstuff.h".
12826         * defs.h (current_directory): Move to "common/common-defs.h".
12827         * dwarf2read.c: Include "common/pathstuff.h".
12828         * exec.c: Likewise.
12829         * guile/scm-safe-call.c: Likewise.
12830         * linux-thread-db.c: Likewise.
12831         * main.c: Likewise.
12832         * nto-tdep.c: Likewise.
12833         * objfiles.c: Likewise.
12834         * source.c: Likewise.
12835         * symtab.c: Likewise.
12836         * utils.c: Include "common/pathstuff.h".
12837         (gdb_realpath): Move to "common/pathstuff.c".
12838         (gdb_realpath_keepfile): Likewise.
12839         (gdb_abspath): Likewise.
12840         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12841         (gdb_realpath_keepfile): Likewise.
12842         (gdb_abspath): Likewise.
12843
12844 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12845
12846         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12847         wildcard process pid for super_resume for kernels with a
12848         specific bug.
12849
12850 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12851
12852         * compile/compile.c (get_args): Add additional comments
12853         explaining function.
12854
12855 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12856             Tom Tromey  <tom@tromey.com>
12857
12858         * target.h (memory_write_request_s): Remove typedef.  Don't define
12859         VEC.
12860         (target_write_memory_blocks): Change argument to std::vector.
12861         (struct memory_write_request): Add constructor.
12862         * target-memory.c (compare_block_starting_address): Return bool.
12863         Change argument types.
12864         (claim_memory): Change arguments to use std::vector.
12865         (split_regular_and_flash_blocks, blocks_to_erase)
12866         (compute_garbled_blocks): Likewise.
12867         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12868         (target_write_memory_blocks): Change argument to std::vector.
12869         * symfile.c (struct load_section_data): Add constructor and
12870         destructor.  Use std::vector for "requests".
12871         (struct load_progress_data): Add initializers.
12872         (load_section_callback): Update.  Use "new".
12873         (clear_memory_write_data): Remove.
12874         (generic_load): Update.
12875
12876 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12877
12878         * arch/aarch64.h: Use common/tdesc.h.
12879
12880 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12881
12882         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12883         architecture with a 64-bit ABI.
12884
12885 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12886
12887         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12888         ahead of target description loading.
12889
12890 2018-02-26  Tom Tromey  <tom@tromey.com>
12891
12892         * stack.c (backtrace_command_1): Update.
12893         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12894         of "flags".
12895         * python/py-framefilter.c (py_print_frame)
12896         (gdbpy_apply_frame_filter): Change type of "flags".
12897         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12898         of "flags".
12899         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12900         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12901         * extension.h (enum frame_filter_flag): Rename from
12902         frame_filter_flags.
12903         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12904         (apply_ext_lang_frame_filter): Change type of "flags".
12905         * extension.c (apply_ext_lang_frame_filter): Change type of
12906         "flags".
12907         * extension-priv.h (struct extension_language_ops)
12908         <apply_frame_filter>: Change type of "flags".
12909
12910 2018-02-26  Tom Tromey  <tom@tromey.com>
12911
12912         PR python/16497:
12913         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12914         off-by-one in py_end computation.
12915         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12916         PRINT_MORE_FRAMES.
12917         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12918         constant.
12919
12920 2018-02-26  Tom Tromey  <tom@tromey.com>
12921
12922         * dwarf2read.c (struct variant_field): New.
12923         (struct nextfield) <variant>: New field.
12924         (dwarf2_add_field): Handle DW_TAG_variant_part.
12925         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12926         discriminated union.
12927         (read_structure_type): Handle DW_TAG_variant_part.
12928         (handle_struct_member_die): New function, extracted from
12929         process_structure_scope.  Handle DW_TAG_variant.
12930         (process_structure_scope): Handle discriminated unions.  Call
12931         handle_struct_member_die.
12932
12933 2018-02-26  Tom Tromey  <tom@tromey.com>
12934
12935         * rust-lang.h (rust_last_path_segment): Declare.
12936         * rust-lang.c (rust_last_path_segment): Now public.  Change
12937         contract.
12938         (struct disr_info): Remove.
12939         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12940         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12941         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12942         (rust_enum_p, rust_enum_variant): New function.
12943         (rust_underscore_fields): Remove "offset" parameter.
12944         (rust_print_enum): New function.
12945         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12946         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12947         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12948         enums.
12949         (rust_internal_print_type): New function, from rust_print_type.
12950         Remove enum code.
12951         (rust_print_type): Call rust_internal_print_type.
12952         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12953         Update enum handling.
12954         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12955         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12956         (rust_union_quirks): New functions.
12957         (process_full_comp_unit, process_full_type_unit): Call
12958         rust_union_quirks.
12959         (process_structure_scope): Update rust_unions if necessary.
12960
12961 2018-02-26  Tom Tromey  <tom@tromey.com>
12962
12963         * value.h (value_union_variant): Declare.
12964         * valops.c (value_union_variant): New function.
12965         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12966         (struct discriminant_info): New.
12967         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12968         enumerator.
12969         (struct main_type) <flag_discriminated_union>: New field.
12970
12971 2018-02-26  Tom Tromey  <tom@tromey.com>
12972
12973         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12974         unittests/unpack-selftests.c.
12975         * unittests/unpack-selftests.c: New file.
12976         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12977
12978 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12979
12980         * dwarf2read.c (struct partial_die_info) <read>: New method.
12981         (read_partial_die): Remove the declaration.
12982         (load_partial_dies): Update.
12983         (partial_die_info::partial_die_info):
12984         (read_partial_die): Change it to partial_die_info::read.
12985
12986 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12987
12988         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12989         (fixup_partial_die): Remove declaration.
12990         (scan_partial_symbols): Update.
12991         (partial_die_parent_scope): Likewise.
12992         (partial_die_full_name): Likewise.
12993         (fixup_partial_die): Change it to partial_die_info::fixup.
12994
12995 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12996
12997         * dwarf2read.c (read_partial_die): Update the declaration.
12998         (load_partial_dies): Caller update.
12999         (read_partial_die): Remove one argument abbrev_len.
13000
13001 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13002
13003         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13004         assignment operator.
13005         (load_partial_dies): Use ctor and copy ctor.
13006         (read_partial_die): Update.
13007         (dwarf2_cu::find_partial_die): Use ctor.
13008
13009 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13010
13011         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13012         (find_partial_die_in_comp_unit): Change it to
13013         dwarf2_cu::find_partial_die.
13014         (find_partial_die): Update.
13015
13016 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13017
13018         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13019         is NULL.
13020
13021 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13022
13023         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13024
13025 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13026
13027         * arch/amd64.h: Use common/tdesc.h.
13028         * arch/i386.c: Likewise.
13029         * arch/i386.h: Likewise.
13030         * arch/tic6x.c: Likewise.
13031         * arch/tdesc.h: Move file from here...
13032         * common/tdesc.h: ...to here.
13033         * features/aarch64-core.c: Regenerate.
13034         * features/aarch64-fpu.c: Regenerate.
13035         * features/i386/32bit-avx.c: Regenerate.
13036         * features/i386/32bit-avx512.c: Regenerate.
13037         * features/i386/32bit-core.c: Regenerate.
13038         * features/i386/32bit-linux.c: Regenerate.
13039         * features/i386/32bit-mpx.c: Regenerate.
13040         * features/i386/32bit-pkeys.c: Regenerate.
13041         * features/i386/32bit-sse.c: Regenerate.
13042         * features/i386/64bit-avx.c: Regenerate.
13043         * features/i386/64bit-avx512.c: Regenerate.
13044         * features/i386/64bit-core.c: Regenerate.
13045         * features/i386/64bit-linux.c: Regenerate.
13046         * features/i386/64bit-mpx.c: Regenerate.
13047         * features/i386/64bit-pkeys.c: Regenerate.
13048         * features/i386/64bit-segments.c: Regenerate.
13049         * features/i386/64bit-sse.c: Regenerate.
13050         * features/i386/x32-core.c: Regenerate.
13051         * features/tic6x-c6xp.c: Regenerate.
13052         * features/tic6x-core.c: Regenerate.
13053         * features/tic6x-gp.c: Regenerate.
13054         * target-descriptions.c: Use common/tdesc.h.
13055         * target-descriptions.h: Likewise.
13056
13057 2018-02-24  Tom Tromey  <tom@tromey.com>
13058
13059         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13060         (try_thread_db_load_from_dir, thread_db_load_search): Use
13061         std::string.
13062         (info_auto_load_libthread_db_compare): Return bool.  Change
13063         argument types.
13064         (info_auto_load_libthread_db): Use std::vector, std::string.
13065         Remove cleanups.
13066
13067 2018-02-24  Tom Tromey  <tom@tromey.com>
13068
13069         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13070         std::string.
13071         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13072         std::string*.
13073         * gdbarch.c: Rebuild.
13074         * gdbarch.h: Rebuild.
13075         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13076         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13077         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13078         std::string*.
13079
13080 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13081
13082         * gdbtypes.h (sect_offset): Change type to uint64_t.
13083         (sect_offset_str): New function.
13084         * dwarf2read.c (create_addrmap_from_aranges): Use
13085         sect_offset_str.
13086         (error_check_comp_unit_head): Likewise.
13087         (create_debug_type_hash_table): Likewise.
13088         (read_cutu_die_from_dwo): Likewise.
13089         (init_cutu_and_read_dies): Likewise.
13090         (init_cutu_and_read_dies_no_follow): Likewise.
13091         (process_psymtab_comp_unit_reader): Likewise.
13092         (partial_die_parent_scope): Likewise.
13093         (peek_die_abbrev): Likewise.
13094         (process_queue): Likewise.
13095         (dwarf2_physname): Likewise.
13096         (read_namespace_alias): Likewise.
13097         (read_import_statement): Likewise.
13098         (create_dwo_cu_reader): Likewise.
13099         (create_cus_hash_table): Likewise.
13100         (lookup_dwo_cutu): Likewise.
13101         (inherit_abstract_dies): Likewise.
13102         (read_func_scope): Likewise.
13103         (read_call_site_scope): Likewise.
13104         (dwarf2_add_member_fn): Likewise.
13105         (read_common_block): Likewise.
13106         (read_module_type): Likewise.
13107         (read_typedef): Likewise.
13108         (read_subrange_type): Likewise.
13109         (load_partial_dies): Likewise.
13110         (read_partial_die): Likewise.
13111         (find_partial_die): Likewise.
13112         (read_str_index): Likewise.
13113         (dwarf2_string_attr): Likewise.
13114         (build_error_marker_type): Likewise.
13115         (lookup_die_type): Likewise.
13116         (dump_die_shallow): Likewise.
13117         (follow_die_ref): Likewise.
13118         (dwarf2_fetch_die_loc_sect_off): Likewise.
13119         (dwarf2_fetch_constant_bytes): Likewise.
13120         (follow_die_sig): Likewise.
13121         (get_signatured_type): Likewise.
13122         (get_DW_AT_signature_type): Likewise.
13123         (dwarf2_find_containing_comp_unit): Likewise.
13124         (set_die_type): Likewise.
13125
13126 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13127
13128         * arch/aarch64.c: Include "common-defs.h".
13129         * arch/amd64.c: Likewise.
13130         * arch/i386.c: Likewise.
13131
13132 2018-02-21  Tom Tromey  <tom@tromey.com>
13133
13134         * value.h: (extract_field_op): Update.
13135         * eval.c (extract_field_op): Return a const char *.
13136         * expression.h (parse_expression_for_completion): Update.
13137         * completer.c (complete_expression): Update.
13138         (add_struct_fields): Make fieldname const.
13139         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13140         (mark_completion_tag, parse_exp_in_context_1): Update.
13141         (parse_expression_for_completion): Change "name" to
13142         unique_xmalloc_ptr*.
13143
13144 2018-02-21  Tom Tromey  <tom@tromey.com>
13145
13146         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13147
13148 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13149
13150         * avr-tdep.c (avr_read_pc): Change parameter type to
13151         readable_regcache.
13152         * gdbarch.sh (read_pc): Likewise.
13153         * gdbarch.c: Re-generated.
13154         * gdbarch.h: Re-generated.
13155         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13156         readable_regcache.
13157         * ia64-tdep.c (ia64_read_pc): Likewise.
13158         * mips-tdep.c (mips_read_pc): Likewise.
13159         * spu-tdep.c (spu_read_pc): Likewise.
13160
13161 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13162
13163         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13164         * regcache-dump.c: New file.
13165         * regcache.c: Move register_dump to regcache-dump.c.
13166         (maintenance_print_registers): Likewise.
13167         (maintenance_print_raw_registers): Likewise.
13168         (maintenance_print_cooked_registers): Likewise.
13169         (maintenance_print_register_groups): Likewise.
13170         (maintenance_print_remote_registers): Likewise.
13171         (_initialize_regcache): Likewise.
13172         * regcache.h (register_dump): Moved from regcache.c.
13173
13174 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13175
13176         * regcache.c (regcache::regcache): Update.
13177         (regcache::invalidate): Move it to detached_regcache::invalidate.
13178         (get_thread_arch_aspace_regcache): Update.
13179         (regcache::raw_update): Update.
13180         (regcache::cooked_read): Remove some code.
13181         (regcache::cooked_read_value): Likewise.
13182         (regcache::raw_write): Remove assert on m_readonly_p.
13183         (regcache::raw_supply_integer): Move it to
13184         detached_regcache::raw_supply_integer.
13185         (regcache::raw_supply_zeroed): Likewise.
13186         * regcache.h (detached_regcache) <raw_supply_integer>: New
13187         declaration.
13188         <raw_supply_zeroed, invalidate>: Likewise.
13189         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13190         <invalidate>: Likewise.
13191         <m_readonly_p>: Removed.
13192
13193 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13194
13195         * infcmd.c (get_return_value): Let stop_regs point to
13196         get_current_regcache.
13197         * regcache.c (regcache::regcache): Remove.
13198         (register_dump_reg_buffer): New class.
13199         (regcache_print): Adjust.
13200         * regcache.h (regcache): Remove constructors.
13201
13202 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13203
13204         * regcache.c (class register_dump): New class.
13205         (register_dump_regcache, register_dump_none): New class.
13206         (register_dump_remote, register_dump_groups): New class.
13207         (regcache_print): Update.
13208         * regcache.h (regcache_dump_what): Move it to regcache.c.
13209         (regcache) <dump>: Remove.
13210
13211 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13212
13213         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13214          reg_buffer_rw *.
13215         (jit_unwind_reg_set_impl): Call raw_supply.
13216         (jit_frame_sniffer): Use reg_buffer_rw.
13217         * record-full.c (record_full_core_regbuf): Change its type.
13218         (record_full_core_open_1): Use reg_buffer_rw.
13219         (record_full_close): Likewise.
13220         (record_full_core_fetch_registers): Use regcache->raw_supply.
13221         (record_full_core_store_registers): Likewise.
13222         * regcache.c (regcache::get_register_status): Move it to
13223         reg_buffer.
13224         (regcache_raw_set_cached_value): Remove.
13225         (regcache::raw_set_cached_value): Remove.
13226         (regcache::raw_write): Call raw_supply.
13227         (regcache::raw_supply): Move it to reg_buffer_rw.
13228         * regcache.h (regcache_raw_set_cached_value): Remove.
13229         (reg_buffer_rw): New class.
13230
13231 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13232
13233         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13234         readonly_detached_regcache.
13235         (dummy_frame_prev_register): Use regcache->cooked_read.
13236         * frame.c (frame_save_as_regcache): Change return type.
13237         (frame_pop): Update.
13238         * frame.h (frame_save_as_regcache): Update declaration.
13239         * inferior.h (get_infcall_suspend_state_regcache): Update
13240         declaration.
13241         * infrun.c (infcall_suspend_state) <registers>: use
13242         readonly_detached_regcache.
13243         (save_infcall_suspend_state): Don't use regcache_dup.
13244         (get_infcall_suspend_state_regcache): Change return type.
13245         * linux-fork.c (struct fork_info) <savedregs>: Change to
13246         readonly_detached_regcache.
13247         <pc>: New field.
13248         (fork_save_infrun_state): Don't use regcache_dup.
13249         (info_checkpoints_command): Adjust.
13250         * mi/mi-main.c (register_changed_p): Update declaration.
13251         (mi_cmd_data_list_changed_registers): Use
13252         readonly_detached_regcache.
13253         (register_changed_p): Change parameter type to
13254         readonly_detached_regcache.
13255         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13256         readonly_detached_regcache.
13257         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13258         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13259         New.
13260         (regcache::save): Move it to reg_buffer.
13261         (regcache::restore): Change parameter type.
13262         (regcache_dup): Remove.
13263         * regcache.h (reg_buffer) <save>: New method.
13264         (readonly_detached_regcache): New class.
13265         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13266         readonly_detached_regcache.
13267         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13268
13269 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13270
13271         * frame.c (frame_save_as_regcache): Use regcache method save.
13272         (frame_pop): Use regcache method restore.
13273         * infrun.c (restore_infcall_suspend_state): Likewise.
13274         * linux-fork.c (fork_load_infrun_state): Likewise.
13275         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13276         save.
13277         * regcache.c (regcache_save): Remove.
13278         (regcache::restore): More asserts.
13279         (regcache_cpy): Remove.
13280         * regcache.h (regcache_save): Remove the declaration.
13281         (regcache::restore): Move from private to public.
13282         Remove the friend declaration of regcache_cpy.
13283         (regcache_cpy): Remove declaration.
13284
13285 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13286
13287         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13288         parameter type to 'readable_regcache *'.
13289         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13290         * arm-tdep.c (arm_neon_quad_read): Likewise.
13291         (arm_pseudo_read): Likewise.
13292         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13293         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13294         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13295         * gdbarch.c: Re-generated.
13296         * gdbarch.h: Re-generated.
13297         * gdbarch.sh (pseudo_register_read): Change parameter type to
13298         'readable_regcache *'.
13299         (pseudo_register_read_value): Likewise.
13300         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13301         (h8300_pseudo_register_read): Likewise.
13302         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13303         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13304         (i386_pseudo_register_read_into_value): Likewise.
13305         (i386_pseudo_register_read_value): Likewise.
13306         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13307         declaration.
13308         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13309         * m32c-tdep.c (m32c_raw_read): Likewise.
13310         (m32c_read_flg): Likewise.
13311         (m32c_banked_register): Likewise.
13312         (m32c_banked_read): Likewise.
13313         (m32c_sb_read): Likewise.
13314         (m32c_part_read): Likewise.
13315         (m32c_cat_read): Likewise.
13316         (m32c_r3r2r1r0_read): Likewise.
13317         (m32c_pseudo_register_read): Likewise.
13318         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13319         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13320         (mep_pseudo_cr64_read): Likewise.
13321         (mep_pseudo_register_read): Likewise.
13322         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13323         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13324         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13325         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13326         (regcache::cooked_read): Likewise.
13327         (regcache::cooked_read_value): Likewise.
13328         (regcache_cooked_read_signed):
13329         (regcache::cooked_read): Likewise.
13330         * regcache.h (readable_regcache): New class.
13331         (regcache): Inherit readable_regcache.  Move some methods to
13332         readable_regcache.
13333         * rl78-tdep.c (rl78_pseudo_register_read): Change
13334         parameter type to 'readable_regcache *'.
13335         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13336         (e500_pseudo_register_read): Change parameter type to
13337         'readable_regcache *'.
13338         (dfp_pseudo_register_read): Likewise.
13339         (vsx_pseudo_register_read): Likewise.
13340         (efpr_pseudo_register_read): Likewise.
13341         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13342         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13343         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13344         (sh64_pseudo_register_read): Likewise.
13345         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13346         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13347         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13348         (spu_pseudo_register_read): Likewise.
13349         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13350         (xtensa_pseudo_register_read): Likewise.
13351
13352 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13353
13354         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13355         (regcache::arch): Move it to reg_buffer::arch.
13356         (regcache::register_buffer): Likewise.
13357         (regcache::assert_regnum): Likewise.
13358         (regcache::num_raw_registers): Likewise.
13359         * regcache.h (reg_buffer): New class.
13360         (regcache): Inherit reg_buffer.
13361
13362 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13363
13364         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13365         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13366
13367 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13368
13369         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13370
13371 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13372
13373         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13374         (SFILES): Remove common/*.c files.
13375         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13376         * common/common.host: Add common reference.
13377         * configure.ac: Likewise.
13378         * configure: Regenerate.
13379
13380 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13381
13382         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13383         (block_initialize_namespace): Use new.
13384         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13385         (dwarf2_free_objfile): Use delete.
13386         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13387         (copy_type_recursive): Use new.
13388         * gdb_obstack.h (allocate_on_obstack): New.
13389
13390 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13391
13392         PR gdb/22849
13393         * inferior.c (exit_inferior_1): Reset inf->control.
13394
13395 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13396
13397         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13398         declaration.
13399
13400 2018-02-14  Pedro Alves  <palves@redhat.com>
13401
13402         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13403         frame_cleanup_after_sniffer on exception.
13404
13405 2018-02-14  Tom Tromey  <tom@tromey.com>
13406
13407         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13408         const.
13409         (solib_bfd_open): Make pathname const.
13410         * solib.c (solib_bfd_open): Make pathname const.
13411         * solib-spu.c (spu_bfd_fopen): Make name const.
13412         (spu_bfd_open): Make pathname const.
13413         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13414         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13415
13416 2018-02-14  Tom Tromey  <tom@tromey.com>
13417
13418         * symfile.c (symfile_bfd_open): Update.
13419         * source.h (openp, source_full_path_of, find_and_open_source):
13420         Change argument type to unique_xmalloc_ptr.
13421         * source.c (openp): Take a unique_xmalloc_ptr.
13422         (source_full_path_of, find_and_open_source): Likewise.
13423         (open_source_file, symtab_to_fullname): Update.
13424         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13425         unique_xmalloc_ptr.
13426         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13427         (exec_file_find): Update.
13428         * psymtab.c (psymtab_to_fullname): Update.
13429         * nto-tdep.h (nto_find_and_open_solib): Update.
13430         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13431         unique_xmalloc_ptr.
13432         * exec.c (exec_file_attach): Update.
13433         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13434         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13435
13436 2018-02-14  Tom Tromey  <tom@tromey.com>
13437
13438         * solib.c: Include source.h.
13439         * nto-tdep.c: Include source.h.
13440         * mi/mi-cmd-env.c: Include source.h.
13441         * infcmd.c: Include source.h.
13442         * exec.c: Include source.h.
13443         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13444         (add_path, directory_switch, source_path, init_source_path): Move
13445         declarations...
13446         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13447         (add_path, directory_switch, source_path, init_source_path):
13448         ...here.
13449
13450 2018-02-14  Tom Tromey  <tom@tromey.com>
13451
13452         * solist.h (exec_file_find, solib_find): Return
13453         unique_xmalloc_ptr.
13454         (solib_bfd_fopen): Take a const char *.
13455         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13456         (exec_file_find, solib_find): Likewise.
13457         (solib_bfd_fopen): Do not take ownership of "pathname".
13458         (solib_bfd_open): Use unique_xmalloc_ptr.
13459         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13460         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13461         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13462         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13463
13464 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13465
13466         * ada-lang.c (name_match_type_from_name): Remove reference to
13467         ada_name_for_lookup in function's documentation.
13468         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13469
13470 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13471
13472         * defs.h (enum openp_flags): New enum.
13473         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13474         Move to enum openp_flags.
13475         (openp_flags): New enum flags.
13476         (openp): Change parameter type to openp_flags.
13477         * source.c (openp): Change parameter type to openp_flags.
13478         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13479         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13480
13481 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13482
13483         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13484         per-command.
13485
13486 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13487
13488         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13489         into...
13490         (class dwarf2_queue_guard): ...the destructor of this new class.
13491         (dw2_do_instantiate_symtab): Create instance of the new class
13492         dwarf2_queue_guard, remove cleanup.
13493
13494 2018-02-09  Tom Tromey  <tom@tromey.com>
13495
13496         * source.c (find_source_lines): Don't reference past the end of
13497         the vector.
13498
13499 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13500
13501         * remote.c (remote_btrace_maybe_reopen): Change error message.
13502         * btrace.c (btrace_enable): Likewise.
13503         (parse_xml_btrace): Likewise.
13504         (parse_xml_btrace_conf): Likewise.
13505
13506 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13507
13508         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13509         (linux_enable_pt, linux_enable_bts): Call
13510         diagnose_perf_event_open_fail.
13511
13512 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13513
13514         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13515         Remove parameter and change return type.  Update callers.  Move it.
13516         (linux_enable_bts, linux_enable_pt): Improve error message.
13517         (linux_enable_pt): Remove zero buffer size check.
13518         (linux_enable_btrace): Improve error messages.  Remove NULL return
13519         check.
13520
13521 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13522
13523         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13524         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13525         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13526         (linux_supports_pt, linux_supports_btrace): Remove.
13527         (linux_enable_bts): Call cpu_supports_bts.
13528         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13529         * remote.c (remote_supports_btrace): Remove.
13530         (init_remote_ops): Remove remote_supports_btrace.
13531         * target-delegates.c: Regenerated.
13532         * target.c (target_supports_btrace): Remove.
13533         * target.h (target_ops) <to_supports_btrace>: Remove
13534         (target_supports_btrace): Remove.
13535         * x86-linux-nat.c (x86_linux_create_target): Remove
13536         linux_supports_btrace.
13537
13538 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13539
13540         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13541         btrace failed.
13542         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13543         exception and use message in own exception.
13544
13545 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13546
13547         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13548         (perf_event_pt_event_type): Use gdb_file_up.
13549         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13550         scoped_fd, and scoped_mmap.
13551
13552 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13553
13554         * common/scoped_mmap.h: New.
13555         * unittests/scoped_mmap-selftest.c: New.
13556         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13557         unittests/scoped_mmap-selftest.c.
13558
13559 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13560
13561         * common/scoped_fd.h: New.
13562         * unittests/scoped_fd-selftest.c: New.
13563         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13564         unittests/scoped_fd-selftest.c.
13565
13566 2018-02-09  Tom Tromey  <tom@tromey.com>
13567
13568         * auto-load.c (auto_load_section_scripts): Use
13569         gdb::unique_xmalloc_ptr.
13570
13571 2018-02-09  Tom Tromey  <tom@tromey.com>
13572
13573         * auto-load.c (execute_script_contents): Use std::string.
13574
13575 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13576
13577         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13578         Python function, rather than a new command.
13579
13580 2018-02-08  Tom Tromey  <tom@tromey.com>
13581
13582         * solib.c (solib_find_1): Use std::string.
13583         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13584
13585 2018-02-08  Tom Tromey  <tom@tromey.com>
13586
13587         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13588
13589 2018-02-08  Tom Tromey  <tom@tromey.com>
13590
13591         * source.c (find_source_lines): Use gdb::def_vector.
13592
13593 2018-02-08  Tom Tromey  <tom@tromey.com>
13594
13595         * macrocmd.c (struct temporary_macro_definition): New.
13596         (macro_define_command): Use temporary_macro_definition.  Remove
13597         cleanups.
13598         (free_macro_definition_ptr): Remove.
13599
13600 2018-02-08  Tom Tromey  <tom@tromey.com>
13601
13602         * macroexp.c (maybe_expand): Use std::string.
13603
13604 2018-02-08  Tom Tromey  <tom@tromey.com>
13605
13606         * macroexp.c (struct macro_buffer): Add initializers for some
13607         members.
13608         (init_buffer, init_shared_buffer, free_buffer)
13609         (free_buffer_return_text): Remove.
13610         (macro_buffer): New constructors.
13611         (~macro_buffer): New destructor.
13612         (macro_buffer::set_shared): New method.
13613         (macro_buffer::resize_buffer, macro_buffer::appendc)
13614         (macro_buffer::appendmem): Now methods, not free functions.
13615         (set_token, append_tokens_without_splicing, stringify)
13616         (macro_stringify): Update.
13617         (gather_arguments): Change return type.  Remove argc_p argument,
13618         add args_ptr argument.  Use std::vector.
13619         (substitute_args): Remove argc argument.  Accept std::vector.
13620         (expand): Update.  Use std::vector.
13621         (scan, macro_expand, macro_expand_next): Update.
13622
13623 2018-02-08  Tom Tromey  <tom@tromey.com>
13624
13625         * symtab.c (default_collect_symbol_completion_matches_break_on):
13626         Use unique_xmalloc_ptr.
13627         * macroscope.h: (sal_macro_scope, user_macro_scope)
13628         (default_macro_scope): Return unique_xmalloc_ptr.
13629         * macroscope.c (sal_macro_scope, user_macro_scope)
13630         (default_macro_scope): Return unique_xmalloc_ptr.
13631         * macroexp.h (macro_expand, macro_expand_once): Return
13632         unique_xmalloc_ptr.
13633         * macroexp.c (macro_expand, macro_expand_once): Return
13634         unique_xmalloc_ptr.
13635         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13636         (info_macro_command, info_macros_command): Use
13637         unique_xmalloc_ptr.
13638         * compile/compile-c-support.c (write_macro_definitions): Use
13639         unique_xmalloc_ptr.
13640         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13641
13642 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13643
13644         * value.c (value_static_field): Assign field type instead of
13645         containing type when returning an optimized out value.
13646
13647 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13648
13649         * ft32-tdep.c (ft32_read_pc): Remove.
13650         (ft32_write_pc): Remove.
13651         (ft32_gdbarch_init): Update.
13652         * m32r-tdep.c (m32r_read_pc): Remove.
13653         (m32r_gdbarch_init): Update.
13654         * mep-tdep.c (mep_read_pc): Remove.
13655         (mep_gdbarch_init): Update.
13656         * microblaze-tdep.c (microblaze_write_pc): Remove.
13657         (microblaze_gdbarch_init): Update.
13658         * mn10300-tdep.c (mn10300_read_pc): Remove.
13659         (mn10300_write_pc): Remove.
13660         (mn10300_gdbarch_init): Update.
13661         * moxie-tdep.c (moxie_read_pc): Remove.
13662         (moxie_write_pc): Remove.
13663         (moxie_gdbarch_init): Update.
13664
13665 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13666
13667         * expprint.c (print_subexp_standard): Handle
13668         OP_F77_UNDETERMINED_ARGLIST.
13669         (dump_subexp_body_standard): Likewise.
13670
13671 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13672
13673         * target-descriptions.c (tdesc_element_visitor) Add empty
13674         implementations.
13675         (tdesc_type): Move make_gdb_type from here.
13676         (tdesc_type_builtin): Likewise.
13677         (tdesc_type_vector): Likewise.
13678         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13679         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13680         (make_gdb_type_union): Likewise.
13681         (make_gdb_type_flags): Likewise.
13682         (make_gdb_type_enum): Likewise.
13683         (make_gdb_type): New function.
13684         (tdesc_register_type): Use static make_gdb_type.
13685
13686 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13687
13688         * infcmd.c (default_print_one_register_info): Align natural-format
13689         column values consistently one under another.
13690         (pad_to_column): New function.
13691
13692 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13693
13694         * dwarf2read.c (dwarf2_physname): Move commment.
13695
13696 2018-02-01  Leszek Swirski  <leszeks@google.com>
13697
13698         * varobj.c (varobj_formatted_print_options): Allow recursive
13699         pretty printing if pretty printing is enabled.
13700
13701 2018-02-01  Leszek Swirski  <leszeks@google.com>
13702
13703         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13704         names after a structop as a filename.
13705
13706 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13707
13708         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13709         (arm_record_coproc_data_proc): Likewise.
13710
13711 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13712
13713         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13714
13715 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13716
13717         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13718         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13719
13720 2018-01-31  Pedro Alves  <palves@redhat.com>
13721
13722         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13723         * inflow.c (child_terminal_save_inferior): Wrap reference to
13724         tcgetpgrp in HAVE_TERMIOS_H.
13725         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13726         _WIN32.
13727         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13728         always iterate over all inferiors.
13729         (gdbsim_cntrl_c): Adjust.
13730         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13731
13732 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13733
13734         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13735         index type is objfile-owned if the element type is as well.
13736
13737 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13738
13739         GDB 8.1 released.
13740
13741 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13742
13743         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13744         "features/s390x-linux64.c".
13745         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13746         s390_linux32 and s390x_linux64.
13747         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13748         default tdesc.
13749         * s390-tdep.c: Include "features/s390-linux32.c" and
13750         "features/s390x-linux64.c".
13751         (s390_tdesc_valid): Add check for tdesc_has_registers.
13752         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13753         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13754         tdesc_s390x_linux64.
13755         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13756         tdesc_s390x_linux64 to...
13757         * s390-tdep.h: ...here.
13758
13759 2018-01-30  Pedro Alves  <palves@redhat.com>
13760
13761         PR gdb/13211
13762         * config.in, configure: Regenerate.
13763         * configure.ac: Check for getpgid.
13764         * go32-nat.c (go32_pass_ctrlc): New.
13765         (go32_target): Install it.
13766         * inf-child.c (inf_child_target): Install
13767         child_terminal_save_inferior, child_pass_ctrlc and
13768         child_interrupt.
13769         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13770         (inf_ptrace_target): No longer install it.
13771         * infcmd.c (interrupt_target_1): Adjust.
13772         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13773         (child_interrupt): Declare.
13774         (inferior::terminal_state): New.
13775         * inflow.c (struct terminal_info): Update comments.
13776         (inferior_process_group): Delete.
13777         (terminal_is_ours): Delete.
13778         (gdb_tty_state): New.
13779         (child_terminal_init): Adjust.
13780         (is_gdb_terminal, sharing_input_terminal_1)
13781         (sharing_input_terminal): New functions.
13782         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13783         Set the process's actual process group in the foreground if
13784         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13785         mark terminal as the inferior's if not sharing GDB's terminal.
13786         Don't check attach_flag.
13787         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13788         pass down a target_terminal_state.
13789         (child_terminal_save_inferior): New, factored out from ...
13790         (child_terminal_ours_1): ... this.  Handle
13791         target_terminal_state::is_ours_for_output.
13792         (child_interrupt, child_pass_ctrlc): New.
13793         (inflow_inferior_exit): Clear the inferior's terminal_state.
13794         (copy_terminal_info): Copy the inferior's terminal state.
13795         (_initialize_inflow): Remove reference to terminal_is_ours.
13796         * inflow.h (inferior_process_group): Delete.
13797         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13798         * procfs.c (procfs_target): Don't install procfs_interrupt.
13799         (procfs_interrupt): Delete.
13800         * remote.c (remote_serial_quit_handler): Adjust.
13801         (remote_interrupt): Remove ptid parameter.  Adjust.
13802         * target-delegates.c: Regenerate.
13803         * target.c: Include "terminal.h".
13804         (target_terminal::terminal_state): Rename to ...
13805         (target_terminal::m_terminal_state): ... this.
13806         (target_terminal::init): Adjust.
13807         (target_terminal::inferior): Adjust to per-inferior
13808         terminal_state.
13809         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13810         (target_terminal::ours, target_terminal::ours_for_output): Use
13811         target_terminal_is_ours_kind.
13812         (target_interrupt): Remove ptid parameter.  Adjust.
13813         (default_target_pass_ctrlc): Adjust.
13814         * target.h (target_ops::to_terminal_save_inferior): New field.
13815         (target_ops::to_interrupt): Remove ptid_t parameter.
13816         (target_interrupt): Remove ptid_t parameter.  Update comment.
13817         (target_pass_ctrlc): Update comment.
13818         * target/target.h (target_terminal_state): New scoped enum,
13819         factored out of ...
13820         (target_terminal::terminal_state): ... here.
13821         (target_terminal::inferior): Update comments.
13822         (target_terminal::restore_inferior): New.
13823         (target_terminal::is_inferior, target_terminal::is_ours)
13824         (target_terminal::is_ours_for_output): Adjust.
13825         (target_terminal::scoped_restore_terminal_state): Adjust to
13826         rename, and call restore_inferior() instead of inferior().
13827         (target_terminal::scoped_restore_terminal_state::m_state): Change
13828         type.
13829         (target_terminal::terminal_state): Rename to ...
13830         (target_terminal::m_terminal_state): ... this and change type.
13831
13832 2018-01-30  Pedro Alves  <palves@redhat.com>
13833
13834         * linux-nat.c (wait_for_signal): New function.
13835         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13836         directly.
13837         (async_terminal_is_ours)
13838         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13839         (linux_nat_add_target): Don't override
13840         to_terminal_inferior/to_terminal_ours.
13841
13842 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13843
13844         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13845
13846 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13847
13848         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13849         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13850         dwarf2_per_objfile_free here.
13851         (dwarf2_per_objfile_free): Remove.
13852         (_initialize_dwarf2_read): Don't register
13853         dwarf2_per_objfile_free as a registry cleanup.
13854
13855 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13856
13857         Avoid compilation errors in MinGW native builds
13858
13859         The error is triggered by including python-internal.h, and the
13860         error message is:
13861
13862              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13863                       from build-gnulib/import/math.h:27,
13864                       from d:/usr/Python26/include/pyport.h:235,
13865                       from d:/usr/Python26/include/Python.h:58,
13866                       from python/python-internal.h:94,
13867                       from python/py-arch.c:24:
13868              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13869         using ::hypot;
13870                 ^~~~~
13871
13872         This happens because Python headers define 'hypot' to expand t
13873         '_hypot' in the Windows builds.
13874         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13875         'hypoth'.  This avoids a compilation error.
13876
13877 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13878
13879         * MAINTAINERS (Write After Approval): Fix ordering.
13880
13881 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13882
13883         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13884
13885 2018-01-26  Alan Modra  <amodra@gmail.com>
13886
13887         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13888         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13889         Remove nop.  Make const.  Comment.
13890         (powerpc32_plt_stub_so_2): New.
13891         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13892         Correct count.  Update uses.
13893         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13894         Move common code reading PLT entry word.  Correct
13895         powerpc32_plt_stub PLT address calculation.
13896         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13897         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13898         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13899         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13900         (ppc64_standard_linkage8): Likewise.
13901         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13902         Correct insns description.
13903         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13904
13905 2018-01-24  Pedro Alves  <palves@redhat.com>
13906
13907         GCC PR libstdc++/83906
13908         * gdbtypes.c (operator==(const dynamic_prop &,
13909         const dynamic_prop &)): New.
13910         (operator==(const range_bounds &, const range_bounds &)): New.
13911         (check_types_equal): Use them instead of memcmp.
13912         * gdbtypes.h (operator==(const dynamic_prop &,
13913         const dynamic_prop &)): Declare.
13914         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13915         (operator==(const range_bounds &, const range_bounds &)): Declare.
13916         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13917
13918 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13919
13920         * s390-linux-tdep.c (s390_record_address_mask)
13921         (s390_record_calc_disp_common, s390_record_calc_disp)
13922         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13923         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13924         (s390_process_record): Move to s390-tdep.c.
13925         (s390_linux_init_abi_any): Adjust.
13926         * s390-tdep.c (s390_record_address_mask)
13927         (s390_record_calc_disp_common, s390_record_calc_disp)
13928         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13929         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13930         (s390_process_record): Moved from s390-linux-tdep.c
13931         (s390_gdbarch_init): Adjust.
13932
13933 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13934
13935         * s390-linux-nat.c (s390-tdep.h): New include.
13936         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13937         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13938         (ALLDEPFILES): Add s390-tdep.c.
13939         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13940         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13941         * s390-tdep.h: ...this.  New file.
13942         * s390-linux-tdep.c (s390-tdep.h): New include.
13943         (_initialize_s390_tdep): Rename to...
13944         (_initialize_s390_linux_tdep): ...this and adjust.
13945         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13946         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13947         s390-tdep.h.
13948         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13949         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13950         (s390_is_partial_instruction, s390_software_single_step)
13951         (is_non_branch_ril, s390_displaced_step_copy_insn)
13952         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13953         (s390_prologue_data, s390_addr, s390_store, s390_load)
13954         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13955         (s390_register_call_saved, s390_guess_tracepoint_registers)
13956         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13957         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13958         (s390_pseudo_register_name, s390_pseudo_register_type)
13959         (s390_pseudo_register_read, s390_pseudo_register_write)
13960         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13961         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13962         (s390_addr_bits_remove, s390_address_class_type_flags)
13963         (s390_address_class_type_flags_to_name)
13964         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13965         (s390_function_arg_float, s390_function_arg_vector)
13966         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13967         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13968         (s390_frame_align, s390_register_return_value, s390_return_value)
13969         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13970         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13971         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13972         (s390_trad_frame_prev_register, s390_unwind_cache)
13973         (s390_prologue_frame_unwind_cache)
13974         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13975         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13976         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13977         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13978         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13979         (s390_frame_base_address, s390_local_base_address)
13980         (s390_frame_base, s390_gcc_target_options)
13981         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13982         (s390_validate_reg_range, s390_tdesc_valid)
13983         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13984         * s390-tdep.c: ...this.  New file.
13985
13986 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13987
13988         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13989         (s390_process_record, s390_gdbarch_tdep_alloc)
13990         (s390_linux_init_abi_any): Use/set new hook.
13991
13992 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13993
13994         * s390-linux-tdep.c (osabi.h): New include.
13995         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13996         (s390_linux_init_abi_any): New functions.
13997         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13998
13999 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14000
14001         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14002         tdesc_has_registers check
14003
14004 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14005
14006         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14007         (s390_validate_reg_range): New macro.
14008         (s390_gdbarch_init): Adjust.
14009
14010 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14011
14012         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14013         (s390_gdbarch_tdep_alloc): Adjust.
14014         (s390_gdbarch_init): Adjust.
14015
14016 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14017
14018         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14019         <have_tdb>: Change type to bool.
14020         (s390_gdbarch_tdep_alloc): Adjust.
14021         (s390_gdbarch_init): Adjust.
14022
14023 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14024
14025         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14026         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14027         (s390_gdbarch_tdep_alloc): New function.
14028         (s390_gdbarch_init): Allocate tdep at start and use its fields
14029         instead of separate variables.
14030
14031 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14032
14033         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14034         when looking for cached gdbarch and add comment for remaining.
14035
14036 2018-01-22  Pedro Alves  <palves@redhat.com>
14037             Sergio Durigan Junior  <sergiodj@redhat.com>
14038
14039         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14040         case.
14041
14042 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14043
14044         * MAINTAINERS: Update my company e-mail address.
14045
14046 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14047
14048         * regcache.c (cooked_write_test): New function.
14049         (_initialize_regcache): Register the test.
14050
14051 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14052
14053         * ia64-tdep.c (ia64_pseudo_register_read): Call
14054         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14055         * m32c-tdep.c (m32c_cat_read): Likewise.
14056         (m32c_r3r2r1r0_read): Likewise.
14057         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14058         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14059
14060 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14061
14062         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14063         method raw_read instead of regcache_raw_read.
14064         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14065         * arm-tdep.c (arm_neon_quad_read): Likewise.
14066         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14067         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14068         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14069         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14070         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14071         (i386_pseudo_register_read_into_value): Likewise.
14072         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14073         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14074         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14075         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14076         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14077         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14078         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14079         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14080         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14081
14082 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14083
14084         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14085         * configure.tgt: Remove target mt.
14086         * mt-tdep.c: Remove.
14087         * regcache.c (cooked_read_test): Remove the check for mt.
14088
14089 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14090
14091         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14092         instead of gdbarch_pseudo_register_read_value.
14093
14094 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14095
14096         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14097         language is Ada.
14098
14099 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14100
14101         * linespec.c (create_sals_line_offset): Remove code that preserved
14102         the symtab_and_line's line number.
14103
14104 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14105
14106         * varobj.c (varobj_create): Don't set valid_block when creating a
14107         floating varobj.
14108
14109 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14110
14111         * varobj.c (varobj_create): Remove out of date comment.
14112
14113 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14114
14115         PR mi/20395
14116         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14117         updating innermost block.
14118         * parse.c (innermost_block_tracker::update): Take extra type
14119         parameter, and check types match before updating innermost block.
14120         (write_dollar_variable): Update innermost block for registers.
14121         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14122         (innermost_block_tracker::innermost_block_tracker): Initialise
14123         m_types member.
14124         (innermost_block_tracker::reset): Take type parameter.
14125         (innermost_block_tracker::update): Take type parameter, and pass
14126         type through as needed.
14127         (innermost_block_tracker::m_types): New member.
14128         * varobj.c (varobj_create): Pass type when reseting innermost
14129         block.
14130
14131 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14132
14133         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14134         * ada-lang.c (resolve_subexp): Likewise.
14135         * breakpoint.c (set_breakpoint_condition) Likewise.
14136         (watch_command_1) Likewise.
14137         * c-exp.y (variable): Likewise.
14138         * d-exp.y (PrimaryExpression): Likewise.
14139         * f-exp.y (variable): Likewise.
14140         * go-exp.y (variable): Likewise.
14141         * m2-exp.y (variable): Likewise.
14142         * objfiles.c (objfile::~objfile): Likewise.
14143         * p-exp.y (variable): Likewise.
14144         * parse.c (innermost_block): Change type.
14145         * parser-defs.h (class innermost_block_tracker): New.
14146         (innermost_block): Change to innermost_block_tracker.
14147         * printcmd.c (display_command): Switch to innermost_block API.
14148         (do_one_display): Likewise.
14149         * rust-exp.y (do_one_display): Likewise.
14150         * symfile.c (clear_symtab_users): Likewise.
14151         * varobj.c (varobj_create): Switch to innermost_block API, replace
14152         use of innermost_block with block stored on varobj object.
14153
14154 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14155
14156         * expression.h (innermost_block): Remove declaration.
14157         * varobj.c: Add 'parser-defs.h' include.
14158
14159 2018-01-19  Tom Tromey  <tom@tromey.com>
14160
14161         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14162         symbols in the static and global blocks.
14163
14164 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14165
14166         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14167         gdb_ptrace.h, and move including gdb_wait.h ...
14168         * nat/linux-ptrace.h: ... to here.
14169
14170 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14171
14172         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14173         inf_ptrace_detach_success.
14174         (inf_ptrace_detach_success): Add inferior parameter, use it
14175         instead of inferior_ptid, pass it to detach_inferior.
14176         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14177         parameter.
14178         * inferior.c (detach_inferior): Add overload that takes an
14179         inferior object.
14180         * inferior.h (detach_inferior): Likewise.
14181         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14182         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14183         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14184
14185 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14186
14187         * target.h (struct target_ops) <to_detach>: Add inferior
14188         parameter.
14189         (target_detach): Likewise.
14190         * target.c (dispose_inferior): Pass inferior down.
14191         (target_detach): Pass inferior down.  Assert that it is equal to
14192         the current inferior.
14193         * aix-thread.c (aix_thread_detach): Pass inferior down.
14194         * corefile.c (core_file_command): Pass current_inferior() down.
14195         * corelow.c (core_detach): Add inferior parameter.
14196         * darwin-nat.c (darwin_detach): Likewise.
14197         * gnu-nat.c (gnu_detach): Likewise.
14198         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14199         * infcmd.c (detach_command): Pass current_inferior() down to
14200         target_detach.
14201         * infrun.c (follow_fork_inferior): Pass parent_inf to
14202         target_detach.
14203         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14204         target_detach.
14205         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14206         * linux-thread-db.c (thread_db_detach): Likewise.
14207         * nto-procfs.c (procfs_detach): Likewise.
14208         * procfs.c (procfs_detach): Likewise.
14209         * record.c (record_detach): Likewise.
14210         * record.h (struct inferior): Forward-declare.
14211         (record_detach): Add inferior parameter.
14212         * remote-sim.c (gdbsim_detach): Likewise.
14213         * remote.c (remote_detach_1): Likewise.
14214         (remote_detach): Likewise.
14215         (extended_remote_detach): Likewise.
14216         * sol-thread.c (sol_thread_detach): Likewise.
14217         * target-debug.h (target_debug_print_inferior_p): New macro.
14218         * target-delegates.c: Re-generate.
14219         * top.c (kill_or_detach): Pass inferior down to target_detach.
14220         * windows-nat.c (windows_detach): Add inferior parameter.
14221
14222 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14223
14224         * target.h (struct target_ops) <to_detach>: Remove args
14225         parameter.
14226         (target_detach): Likewise.
14227         * target.c (dispose_inferior): Adjust.
14228         (target_detach): Remove args parameter, adjust.
14229         * aix-thread.c (aix_thread_detach): Adjust.
14230         * corefile.c (core_file_command): Adjust.
14231         * corelow.c (core_detach): Adjust.
14232         * darwin-nat.c (darwin_detach): Adjust.
14233         * gnu-nat.c (gnu_detach): Adjust.
14234         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14235         * infcmd.c (detach_command): Adjust
14236         * infrun.c (follow_fork_inferior): Adjust.
14237         (handle_vfork_child_exec_or_exit): Adjust.
14238         * linux-fork.c (linux_fork_detach): Remove args parameter.
14239         * linux-fork.h (linux_fork_detach): Likewise.
14240         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14241         * linux-thread-db.c (thread_db_detach): Likewise.
14242         * nto-procfs.c (procfs_detach): Likewise.
14243         * procfs.c (procfs_detach): Likewise.
14244         (do_detach): Remove signo parameter.
14245         * record.c (record_detach): Remove args parameter.
14246         * record.h (record_detach): Likewise.
14247         * remote-sim.c (gdbsim_detach): Likewise.
14248         * remote.c (remote_detach_1): Likewise.
14249         (remote_detach): Likewise.
14250         (extended_remote_detach): Likewise.
14251         * sol-thread.c (sol_thread_detach): Likewise.
14252         * target-delegates.c: Re-generate.
14253         * top.c (struct qt_args) <args>: Remove field.
14254         (kill_or_detach): Don't pass args.
14255         (quit_force): Don't set args.
14256         * windows-nat.c (windows_detach): Remove args parameter.
14257
14258 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14259
14260         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14261         (arm_linux_init_abi): Install it.
14262
14263 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14264
14265         * osabi.c (gdb_osabi_names): Extend the regexp for
14266         arm-linux-gnueabihf.
14267
14268 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14269
14270         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14271         m_abbrevs.
14272         (abbrev_table::add_abbrev): Update.
14273         (abbrev_table::lookup_abbrev): Update.
14274
14275 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14276
14277         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14278
14279 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14280
14281         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14282         to "std::string".
14283
14284 2018-01-17  Tom Tromey  <tom@tromey.com>
14285
14286         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14287
14288 2018-01-17  Tom Tromey  <tom@tromey.com>
14289
14290         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14291         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14292         (create_array_type_with_stride): Update.
14293         * dwarf2read.c (set_die_type): Update.
14294
14295 2018-01-17  Tom Tromey  <tom@tromey.com>
14296
14297         * dwarf2read.c (delayed_method_info): Remove typedef.
14298         (dwarf2_cu::method_info): Now a std::vector.
14299         (add_to_method_list): Update.
14300         (free_delayed_list): Remove.
14301         (compute_delayed_physnames): Update.
14302         (process_full_comp_unit, process_full_type_unit): Clear the method
14303         list.  Remove cleanups.
14304         (psymtab_include_file_name): Add name_holder parameter.  Use
14305         unique_xmalloc_ptr.
14306         (dwarf_decode_lines): Update.
14307
14308 2018-01-17  Tom Tromey  <tom@tromey.com>
14309             Simon Marchi  <simon.marchi@ericsson.com>
14310
14311         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14312         (dwarf2_per_objfile::free_cached_comp_units)
14313         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14314         (init_cutu_and_read_dies_no_follow): Update.
14315         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14316         (dwarf2_cu::~dwarf2_cu): New.
14317         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14318         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14319
14320 2018-01-17  Tom Tromey  <tom@tromey.com>
14321             Simon Marchi  <simon.marchi@ericsson.com>
14322
14323         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14324         (struct die_reader_specs) <abbrev_table>: New member.
14325         (struct abbrev_table): Add constructor.
14326         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14327         <abbrev_obstack>: Now an auto_obstack.
14328         (abbrev_table_up): New typedef.
14329         (init_cu_die_reader): Add abbrev_table parameter.
14330         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14331         Add result_dwo_abbrev_table.
14332         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14333         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14334         Update.
14335         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14336         parameter.
14337         (skip_children): Update.
14338         (abbrev_table::alloc_abbrev): Rename from
14339         abbrev_table_alloc_abbrev.
14340         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14341         (abbrev_table::lookup_abbrev): Rename from
14342         abbrev_table_lookup_abbrev.
14343         (abbrev_table_read_table): Return abbrev_table_up.
14344         (abbrev_table_free, abbrev_table_free_cleanup)
14345         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14346         (load_partial_dies): Update.
14347
14348 2018-01-17  Tom Tromey  <tom@tromey.com>
14349
14350         * dwarf2read.c (dwarf2_compute_name): Update comment.
14351         (read_func_scope, read_variable): Update.
14352         (new_symbol): Remove.
14353         (new_symbol_full): Rename to new_symbol.
14354
14355 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14356
14357         PR gdb/16577
14358         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14359         a warning instead of throwing an error, set section size to 0 and return
14360         NULL.
14361         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14362
14363 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14364
14365         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14366         std::string.
14367         (linux_ptrace_attach_fail_reason_string): Likewise.
14368         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14369         Likewise.
14370         (linux_ptrace_attach_fail_reason_string): Likewise.
14371         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14372
14373 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14374
14375         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14376
14377 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14378
14379         PR gdb/21559
14380         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14381         checking for fs_base/gs_base fields in struct user_regs_struct.
14382         * configure: Regenerate.
14383
14384 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14385
14386         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14387         function.
14388         (aarch64_linux_init_abi): Install it to gdbarch hook
14389         gcc_target_options.
14390
14391 2018-01-15  Pedro Alves  <palves@redhat.com>
14392
14393         * common/signals-state-save-restore.c
14394         (save_original_signals_state): Fix typos.
14395
14396 2017-01-12  Tom Tromey  <tom@tromey.com>
14397             Sergio Durigan Junior  <sergiodj@redhat.com>
14398
14399         * Makefile.in (install-only): Install gdb-add-index.
14400
14401 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14402
14403         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14404
14405 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14406
14407         * infrun.c (keep_going_pass_signal): Clear step-over info when
14408         insert_breakpoints fails.
14409
14410 2018-01-11  Pedro Alves  <palves@redhat.com>
14411
14412         PR gdb/22583
14413         * infrun.c (resume): Rename to ...
14414         (resume_1): ... this.
14415         (resume): Reimplement as wrapper around resume_1.
14416
14417 2018-01-11  Pedro Alves  <palves@redhat.com>
14418
14419         PR remote/22597
14420         * remote.c (remote_parse_stop_reply): Default to the last-set
14421         general thread instead of to 'magic_null_ptid'.
14422
14423 2018-01-10  Pedro Alves  <palves@redhat.com>
14424
14425         * language.h (language_get_symbol_name_matcher): Rename ...
14426         (get_symbol_name_matcher): ... this.
14427         * language.c (language_get_symbol_name_matcher): Ditto.
14428         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14429         callers adjusted.
14430
14431 2018-01-10  Pedro Alves  <palves@redhat.com>
14432
14433         PR gdb/22670
14434         * dwarf2read.c
14435         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14436         Adjust to use language_get_symbol_name_matcher instead of
14437         language_defn::la_get_symbol_name_matcher.
14438         * language.c (language_get_symbol_name_matcher): If in Ada mode
14439         and the lookup name is a verbatim match, return Ada's matcher.
14440         * language.h (language_get_symbol_name_matcher): Adjust comment.
14441         (ada_lookup_name_info::verbatim_p):: New method.
14442
14443 2018-01-10  Pedro Alves  <palves@redhat.com>
14444
14445         PR gdb/22670
14446         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14447         minsym's language is language_auto or language_cplus, pass down
14448         language_ada instead.
14449         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14450
14451 2018-01-10  Pedro Alves  <palves@redhat.com>
14452
14453         PR gdb/22670
14454         * minsyms.c (linkage_name_str): New function.
14455         (iterate_over_minimal_symbols): Use it.
14456
14457 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14458
14459         * NEWS: Document that 'info proc' now works on FreeBSD.
14460
14461 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14462
14463         * configure.ac: Check for kinfo_getfile in libutil.
14464         * configure: Regenerate.
14465         * config.in: Regenerate.
14466         * fbsd-nat.c: Include "fbsd-tdep.h".
14467         (fbsd_fetch_cmdline): New.
14468         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14469         rather than calling error.
14470         (fbsd_info_proc): New.
14471         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14472         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14473         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14474
14475 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14476
14477         * fbsd-nat.c (struct free_deleter): Remove.
14478         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14479
14480 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14481
14482         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14483         NULL for an empty pathname.
14484
14485 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14486
14487         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14488         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14489         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14490         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14491         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14492         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14493         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14494         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14495         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14496         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14497         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14498         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14499         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14500         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14501         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14502
14503 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14504
14505         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14506         (gnu_xfer_auxv): New function.
14507         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14508         TARGET_OBJECT_AUXV.
14509
14510 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14511             Simon Marchi  <simon.marchi@ericsson.com>
14512
14513         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14514         common/selftest.c.
14515         (COMMON_OBS): Remove selftest.o.
14516         * configure.ac: Append selftest-arch.c and common/selftest.c to
14517         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14518         * configure: Re-generated.
14519         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14520         GDB_SELF_TEST.
14521         (maintenance_info_selftests): Likewise.
14522
14523 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14524
14525         * ada-valprint.c (val_print_packed_array_elements): Use
14526         proper number of elements when printing an array indexed
14527         by an enumeration type.
14528
14529 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14530
14531         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14532         (dw2_get_file_names_reader): Adjust.
14533         (lookup_dwo_signatured_type): Adjust.
14534         (lookup_dwp_signatured_type): Adjust.
14535         (lookup_signatured_type): Adjust.
14536         (create_type_unit_group): Adjust.
14537         (get_type_unit_group): Adjust.
14538         (process_psymtab_comp_unit_reader): Adjust.
14539         (build_type_psymtabs_reader): Adjust.
14540         (scan_partial_symbols): Adjust.
14541         (add_partial_symbol): Adjust.
14542         (add_partial_subprogram): Adjust.
14543         (peek_die_abbrev): Adjust.
14544         (fixup_go_packaging): Adjust.
14545         (process_imported_unit_die): Adjust.
14546         (dwarf2_compute_name): Adjust.
14547         (dwarf2_physname): Adjust.
14548         (read_import_statement): Adjust.
14549         (handle_DW_AT_stmt_list): Adjust.
14550         (read_file_scope): Adjust.
14551         (read_func_scope): Adjust.
14552         (read_lexical_block_scope): Adjust.
14553         (read_call_site_scope): Adjust.
14554         (read_variable): Adjust.
14555         (dwarf2_rnglists_process): Adjust.
14556         (dwarf2_ranges_process): Adjust.
14557         (dwarf2_ranges_read): Adjust.
14558         (dwarf2_get_pc_bounds): Adjust.
14559         (dwarf2_record_block_ranges): Adjust.
14560         (dwarf2_add_field): Adjust.
14561         (dwarf2_add_member_fn): Adjust.
14562         (read_structure_type): Adjust.
14563         (process_structure_scope): Adjust.
14564         (read_enumeration_type): Adjust.
14565         (read_array_type): Adjust.
14566         (mark_common_block_symbol_computed): Adjust.
14567         (read_common_block): Adjust.
14568         (read_namespace_type): Adjust.
14569         (read_namespace): Adjust.
14570         (read_module_type): Adjust.
14571         (read_tag_pointer_type): Adjust.
14572         (read_tag_ptr_to_member_type): Adjust.
14573         (read_tag_string_type): Adjust.
14574         (read_subroutine_type): Adjust.
14575         (read_typedef): Adjust.
14576         (read_base_type): Adjust.
14577         (attr_to_dynamic_prop): Adjust.
14578         (read_subrange_type): Adjust.
14579         (read_unspecified_type): Adjust.
14580         (dwarf2_read_abbrevs): Adjust.
14581         (load_partial_dies): Adjust.
14582         (read_partial_die): Adjust.
14583         (find_partial_die): Adjust.
14584         (guess_partial_die_structure_name): Adjust.
14585         (fixup_partial_die): Adjust.
14586         (read_attribute_value): Adjust.
14587         (read_addr_index): Adjust.
14588         (read_addr_index_from_leb128): Adjust.
14589         (read_str_index): Adjust.
14590         (dwarf2_string_attr): Adjust.
14591         (get_debug_line_section): Adjust.
14592         (dwarf_decode_line_header): Adjust.
14593         (lnp_state_machine::check_line_address): Adjust.
14594         (dwarf_decode_lines_1): Adjust.
14595         (dwarf_decode_lines): Adjust.
14596         (dwarf2_start_symtab): Adjust.
14597         (var_decode_location): Adjust.
14598         (new_symbol_full): Adjust.
14599         (dwarf2_const_value_data): Adjust.
14600         (dwarf2_const_value_attr): Adjust.
14601         (dwarf2_const_value): Adjust.
14602         (die_type): Adjust.
14603         (die_containing_type): Adjust.
14604         (build_error_marker_type): Adjust.
14605         (lookup_die_type): Adjust.
14606         (guess_full_die_structure_name): Adjust.
14607         (anonymous_struct_prefix): Adjust.
14608         (determine_prefix): Adjust.
14609         (dwarf2_name): Adjust.
14610         (follow_die_ref_or_sig): Adjust.
14611         (follow_die_offset): Adjust.
14612         (follow_die_ref): Adjust.
14613         (follow_die_sig_1): Adjust.
14614         (follow_die_sig): Adjust.
14615         (get_signatured_type): Adjust.
14616         (get_DW_AT_signature_type): Adjust.
14617         (decode_locdesc): Adjust.
14618         (dwarf_decode_macros): Adjust.
14619         (cu_debug_loc_section): Adjust.
14620         (fill_in_loclist_baton): Adjust.
14621         (dwarf2_symbol_mark_computed): Adjust.
14622         (init_one_comp_unit): Don't assign
14623         dwarf2_cu::dwarf2_per_objfile.
14624         (set_die_type): Adjust.
14625
14626 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14627
14628         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14629         <dwarf2_per_objfile>: New field.
14630         (dwarf2_per_objfile): Remove global.
14631         (get_dwarf2_per_objfile): New function.
14632         (set_dwarf2_per_objfile): New function.
14633         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14634         dwarf2_per_objfile.
14635         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14636         (read_abbrev_offset): Likewise.
14637         (read_indirect_string): Likewise.
14638         (read_indirect_line_string): Likewise.
14639         (read_indirect_string_at_offset): Likewise.
14640         (read_indirect_string_from_dwz): Likewise.
14641         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14642         dwarf2_per_objfile.
14643         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14644         (create_all_comp_units): Change objfile parameter to
14645         dwarf2_per_objfile.
14646         (create_all_type_units): Likewise.
14647         (process_queue): Add dwarf2_per_objfile parameter.
14648         (read_and_check_comp_unit_head): Likewise.
14649         (lookup_dwo_unit_in_dwp): Likewise.
14650         (get_dwp_file): Likewise.
14651         (process_cu_includes): Likewise.
14652         (struct free_dwo_file_cleanup_data): New struct.
14653         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14654         set_dwarf2_per_objfile.
14655         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14656         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14657         context, adjust calls.
14658         (dw2_instantiate_symtab): Likewise.
14659         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14660         (dw2_get_cu): Likewise.
14661         (create_cu_from_index_list): Change objfile parameter to
14662         dwarf2_per_objfile.
14663         (create_cus_from_index_list): Get dwarf2_per_objfile from
14664         context, adjust calls.
14665         (create_cus_from_index): Likewise.
14666         (create_signatured_type_table_from_index): Change objfile
14667         parameter to dwarf2_per_objfile.
14668         (create_signatured_type_table_from_debug_names): Change objfile
14669         parameter to dwarf2_per_objfile.
14670         (create_addrmap_from_index): Likewise.
14671         (create_addrmap_from_aranges): Likewise.
14672         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14673         (dw2_setup): Remove.
14674         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14675         context.
14676         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14677         get_dwarf2_per_objfile.
14678         (dw2_forget_cached_source_info): Likewise.
14679         (dw2_map_symtabs_matching_filename): Likewise.
14680         (struct dw2_symtab_iterator) <index>: Remove.
14681         <dwarf2_per_objfile>: New field.
14682         (dw2_symtab_iter_init): Replace index parameter with
14683         dwarf2_per_objfile.
14684         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14685         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14686         (dw2_print_stats): Likewise.
14687         (dw2_dump): Likewise.
14688         (dw2_expand_symtabs_for_function): Likewise.
14689         (dw2_expand_all_symtabs): Likewise.
14690         (dw2_expand_symtabs_with_fullname): Likewise.
14691         (dw2_expand_marked_cus): Replace index and objfile parameters
14692         with dwarf2_per_objfile.
14693         (dw_expand_symtabs_matching_file_matcher): Add
14694         dwarf2_per_objfile parameter and adjust calls.
14695         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14696         adjust calls.
14697         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14698         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14699         adjust calls.
14700         (create_cus_from_debug_names_list): Replace objfile parameter
14701         with dwarf2_per_objfile and adjust calls.
14702         (create_cus_from_debug_names): Likewise.
14703         (dwarf2_read_debug_names): Likewise.
14704         (mapped_debug_names::namei_to_name): Adjust call.
14705         (dw2_debug_names_iterator::next): Likewise.
14706         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14707         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14708         (dw2_debug_names_dump): Likewise.
14709         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14710         (dw2_debug_names_expand_symtabs_matching): Likewise.
14711         (dwarf2_initialize_objfile): Likewise.
14712         (dwarf2_build_psymtabs): Likewise.
14713         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14714         this_cu.
14715         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14716         (read_and_check_comp_unit_head): Likewise.
14717         (read_abbrev_offset): Likewise.
14718         (create_debug_type_hash_table): Likewise.
14719         (create_debug_types_hash_table): Likewise.
14720         (create_all_type_units): Replace objfile parameter with
14721         dwarf2_per_objfile.
14722         (add_type_unit): Add dwarf2_per_objfile parameter.
14723         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14724         with dwarf2_per_objfile.
14725         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14726         (lookup_dwp_signatured_type): Likewise.
14727         (lookup_signatured_type): Likewise.
14728         (read_cutu_die_from_dwo): Likewise.
14729         (init_tu_and_read_dwo_dies): Likewise.
14730         (init_cutu_and_read_dies): Likewise.
14731         (init_cutu_and_read_dies_no_follow): Likewise.
14732         (allocate_type_unit_groups_table): Add objfile parameter.
14733         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14734         (get_type_unit_group): Likewise.
14735         (process_psymtab_comp_unit): Update call.
14736         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14737         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14738         (print_tu_stats): Likewise.
14739         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14740         in void* parameter.
14741         (build_type_psymtabs): Change objfile parameter to
14742         dwarf2_per_objfile.
14743         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14744         passed in void* parameter.
14745         (process_skeletonless_type_units): Change objfile parameter to
14746         dwarf2_per_objfile.
14747         (set_partial_user): Likewise.
14748         (dwarf2_build_psymtabs_hard): Likewise.
14749         (read_comp_units_from_section): Likewise.
14750         (create_all_comp_units): Likewise.
14751         (scan_partial_symbols): Update calls.
14752         (add_partial_symbol): Likewise.
14753         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14754         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14755         (process_queue): Add dwarf2_per_objfile parameter.
14756         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14757         (compute_compunit_symtab_includes): Likewise.
14758         (process_cu_includes): Add dwarf2_per_objfile parameter.
14759         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14760         (process_full_type_unit): Likewise.
14761         (process_imported_unit_die): Update call.
14762         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14763         (read_file_scope): Likewise.
14764         (allocate_dwo_file_hash_table): Add objfile parameter.
14765         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14766         (create_cus_hash_table): Likewise.
14767         (create_dwp_hash_table): Likewise.
14768         (create_dwo_unit_in_dwp_v1): Likewise.
14769         (create_dwp_v2_section): Likewise.
14770         (create_dwo_unit_in_dwp_v2): Likewise.
14771         (lookup_dwo_unit_in_dwp): Likewise.
14772         (try_open_dwop_file): Likewise.
14773         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14774         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14775         cleanup to include a reference to dwarf2_per_objfile.
14776         (open_dwp_file): Add dwarf2_per_objfile parameter.
14777         (open_and_init_dwp_file): Likewise.
14778         (get_dwp_file): Likewise.
14779         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14780         (queue_and_load_all_dwo_tus): Update call.
14781         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14782         data.
14783         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14784         (dwarf2_ranges_process): Likewise.
14785         (dwarf2_get_pc_bounds): Likewise.
14786         (mark_common_block_symbol_computed): Likewise.
14787         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14788         (dwarf2_read_abbrevs): Update call.
14789         (read_partial_die): Use dwarf2_per_objfile from cu.
14790         (find_partial_die): Likewise.
14791         (fixup_partial_die): Likewise.
14792         (read_attribute_value): Likewise.
14793         (read_indirect_string_at_offset_from): Add objfile parameter.
14794         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14795         parameter.
14796         (read_indirect_string_from_dwz): Add objfile parameter.
14797         (read_indirect_string): Add objfile parameter.
14798         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14799         (read_addr_index): Use dwarf2_per_objfile from cu.
14800         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14801         call dw2_setup.
14802         (read_str_index): Use dwarf2_per_objfile from cu.
14803         (get_debug_line_section): Likewise.
14804         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14805         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14806         (new_symbol_full): Use dwarf2_per_objfile from cu.
14807         (build_error_marker_type): Likewise.
14808         (lookup_die_type): Likewise.
14809         (determine_prefix): Likewise.
14810         (follow_die_offset): Likewise.
14811         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14812         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14813         (dwarf2_fetch_die_type_sect_off): Likewise.
14814         (dwarf2_get_die_type): Likewise.
14815         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14816         (get_signatured_type): Likewise.
14817         (get_DW_AT_signature_type): Likewise.
14818         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14819         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14820         (cu_debug_loc_section): Likewise.
14821         (fill_in_loclist_baton): Likewise.
14822         (dwarf2_symbol_mark_computed): Likewise.
14823         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14824         dwarf2_per_objfile.
14825         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14826         parameter.
14827         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14828         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14829         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14830         (set_die_type): Use dwarf2_free_objfile from cu.
14831         (get_die_type_at_offset): Likewise.
14832         (dwarf2_per_objfile_free): Don't assign global variable.
14833         (debug_names) <constructor>: Add dwarf2_per_objfile
14834         parameter, update m_debugstrlookup construction.
14835         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14836         parameter.
14837         <m_dwarf2_per_objfile>: New field.
14838         <lookup>: Use m_dwarf2_per_objfile.
14839         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14840         (psyms_seen_size): Likewise.
14841         (write_gdbindex): Replace objfile parameter with
14842         dwarf2_per_objfile.
14843         (write_debug_names): Likewise.
14844         (write_psymtabs_to_index): Likewise.
14845         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14846         calls.
14847
14848 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14849
14850         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14851         <dwarf2_per_objfile>: New field.
14852         (struct dwarf2_per_cu_data) <objfile>: Remove.
14853         <dwarf2_per_objfile>: New field.
14854         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14855         of objfile.
14856         (create_signatured_type_table_from_index): Likewise.
14857         (create_debug_type_hash_table): Likewise.
14858         (fill_in_sig_entry_from_dwo_entry): Likewise.
14859         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14860         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14861         objfile.
14862         (create_partial_symtab): Access objfile through
14863         dwarf2_per_objfile.
14864         (process_psymtab_comp_unit_reader): Likewise.
14865         (read_comp_units_from_section): Likewise.
14866         (scan_partial_symbols): Likewise.
14867         (add_partial_symbol): Likewise.
14868         (add_partial_subprogram): Likewise.
14869         (peek_die_abbrev): Likewise.
14870         (fixup_go_packaging): Likewise.
14871         (process_full_comp_unit): Likewise.
14872         (process_full_type_unit): Likewise.
14873         (process_imported_unit_die): Likewise.
14874         (dwarf2_compute_name): Likewise.
14875         (dwarf2_physname): Likewise.
14876         (read_import_statement): Likewise.
14877         (create_cus_hash_table): Assign dwarf2_physname instead of
14878         objfile.
14879         (read_func_scope): Access objfile through dwarf2_per_objfile.
14880         (read_lexical_block_scope): Likewise.
14881         (read_call_site_scope): Likewise.
14882         (read_variable): Likewise.
14883         (dwarf2_rnglists_process): Likewise.
14884         (dwarf2_ranges_process): Likewise.
14885         (dwarf2_ranges_read): Likewise.
14886         (dwarf2_record_block_ranges): Likewise.
14887         (dwarf2_add_field): Likewise.
14888         (dwarf2_add_member_fn): Likewise.
14889         (read_structure_type): Likewise.
14890         (process_structure_scope): Likewise.
14891         (read_enumeration_type): Likewise.
14892         (read_array_type): Likewise.
14893         (read_common_block): Likewise.
14894         (read_namespace_type): Likewise.
14895         (read_namespace): Likewise.
14896         (read_module_type): Likewise.
14897         (read_tag_pointer_type): Likewise.
14898         (read_tag_ptr_to_member_type): Likewise.
14899         (read_tag_string_type): Likewise.
14900         (read_subroutine_type): Likewise.
14901         (read_typedef): Likewise.
14902         (read_base_type): Likewise.
14903         (attr_to_dynamic_prop): Likewise.
14904         (read_subrange_type): Likewise.
14905         (read_unspecified_type): Likewise.
14906         (load_partial_dies): Likewise.
14907         (read_partial_die): Likewise.
14908         (find_partial_die): Likewise.
14909         (guess_partial_die_structure_name): Likewise.
14910         (fixup_partial_die): Likewise.
14911         (read_attribute_value): Likewise.
14912         (read_addr_index_from_leb128): Likewise.
14913         (dwarf2_read_addr_index): Likewise.
14914         (dwarf2_string_attr): Likewise.
14915         (lnp_state_machine::check_line_address): Likewise.
14916         (dwarf_decode_lines_1): Likewise.
14917         (dwarf_decode_lines): Likewise.
14918         (dwarf2_start_symtab): Likewise.
14919         (var_decode_location): Likewise.
14920         (new_symbol_full): Likewise.
14921         (dwarf2_const_value_data): Likewise.
14922         (dwarf2_const_value_attr): Likewise.
14923         (dwarf2_const_value): Likewise.
14924         (die_type): Likewise.
14925         (die_containing_type): Likewise.
14926         (lookup_die_type): Likewise.
14927         (guess_full_die_structure_name): Likewise.
14928         (anonymous_struct_prefix): Likewise.
14929         (dwarf2_name): Likewise.
14930         (follow_die_ref_or_sig): Likewise.
14931         (follow_die_offset): Likewise.
14932         (follow_die_ref): Likewise.
14933         (dwarf2_fetch_die_loc_sect_off): Likewise.
14934         (dwarf2_fetch_constant_bytes): Likewise.
14935         (dwarf2_fetch_die_type_sect_off): Likewise.
14936         (dwarf2_get_die_type): Likewise.
14937         (follow_die_sig): Likewise.
14938         (decode_locdesc): Likewise.
14939         (dwarf2_per_cu_objfile): Likewise.
14940         (dwarf2_per_cu_text_offset): Likewise.
14941         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14942         objfile.
14943         (set_die_type): Access objfile through
14944         dwarf2_per_objfile.
14945
14946 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14947
14948         * valprint.c (converted_character_d): Remove typedef.
14949         (DEF_VEC_O (converted_character_d)): Remove.
14950         (count_next_character): Use std::vector.
14951         (print_converted_chars_to_obstack): Likewise.
14952         (generic_printstr): Likewise.
14953
14954 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14955
14956         * xml-support.h (struct gdb_xml_value): Add constructor.
14957         <value>: Change type to unique_xmalloc_ptr.
14958         (gdb_xml_value_s): Remove typedef.
14959         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14960         (gdb_xml_element_start_handler): Change parameter type to
14961         std::vector.
14962         (xml_find_attribute): Likewise.
14963         * xml-support.c (xml_find_attribute): Change parameter type to
14964         std::vector and adjust.
14965         (gdb_xml_values_cleanup): Remove.
14966         (gdb_xml_parser::start_element): Adjust to std::vector.
14967         (xinclude_start_include): Change paraeter type to std::vector
14968         and adjust.
14969         * btrace.c (check_xml_btrace_version): Likewise.
14970         (parse_xml_btrace_block): Likewise.
14971         (parse_xml_btrace_pt_config_cpu): Likewise.
14972         (parse_xml_btrace_pt): Likewise.
14973         (parse_xml_btrace_conf_bts): Likewise.
14974         (parse_xml_btrace_conf_pt): Likewise.
14975         * memory-map.c (memory_map_start_memory): Likewise.
14976         (memory_map_start_property): Likewise.
14977         * osdata.c (osdata_start_osdata): Likewise.
14978         (osdata_start_item): Likewise.
14979         (osdata_start_column): Likewise.
14980         * remote.c (start_thread): Likewise.
14981         * solib-aix.c (library_list_start_library): Likewise.
14982         (library_list_start_list): Likewise.
14983         * solib-svr4.c (library_list_start_library): Likewise.
14984         (svr4_library_list_start_list): Likewise.
14985         * solib-target.c (library_list_start_segment): Likewise.
14986         (library_list_start_section): Likewise.
14987         (library_list_start_library): Likewise.
14988         (library_list_start_list): Likewise.
14989         * tracepoint.c (traceframe_info_start_memory): Likewise.
14990         (traceframe_info_start_tvar): Likewise.
14991         * xml-syscall.c (syscall_start_syscall): Likewise.
14992         * xml-tdesc.c (tdesc_start_target): Likewise.
14993         (tdesc_start_feature): Likewise.
14994         (tdesc_start_reg): Likewise.
14995         (tdesc_start_union): Likewise.
14996         (tdesc_start_struct): Likewise.
14997         (tdesc_start_flags): Likewise.
14998         (tdesc_start_enum): Likewise.
14999         (tdesc_start_field): Likewise.
15000         (tdesc_start_enum_value): Likewise.
15001         (tdesc_start_vector): Likewise.
15002
15003 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15004
15005         * extension.h (struct xmethod_worker) <clone>: Remove.
15006         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15007         Remove.
15008         (python_xmethod_worker::clone): Remove.
15009         * valops.c (find_overload_match): Use std::move instead of
15010         clone.
15011
15012 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15013
15014         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15015         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15016         <free_xmethod_worker_data>: Remove.
15017         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15018         <get_xmethod_arg_types>: Remove.
15019         <get_xmethod_result_type>: Remove.
15020         <invoke_xmethod>: Remove.
15021         * extension.c (new_xmethod_worker): Remove.
15022         (clone_xmethod_worker): Remove.
15023         (get_matching_xmethod_workers): Return void, pass std::vector by
15024         pointer.
15025         (get_xmethod_arg_types): Rename to...
15026         (xmethod_worker::get_arg_types): ... this, and adjust.
15027         (get_xmethod_result_type): Rename to...
15028         (xmethod_worker::get_result_type): ... this, and adjust.
15029         (invoke_xmethod): Remove.
15030         (free_xmethod_worker): Remove.
15031         (free_xmethod_worker_vec): Remove.
15032         * extension.h (enum ext_lang_rc): Move here from
15033         extension-priv.h.
15034         (struct xmethod_worker): Add constructor and destructor.
15035         <data>: Remove.
15036         <value>: Remove.
15037         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15038         virtual pure methods.
15039         <get_arg_types, get_result_type>: New methods.
15040         (xmethod_worker_ptr): Remove typedef.
15041         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15042         (xmethod_worker_vec): Remove typedef.
15043         (xmethod_worker_up): New typedef.
15044         (invoke_xmethod): Remove.
15045         (clone_xmethod_worker): Remove.
15046         (free_xmethod_worker): Remove.
15047         (free_xmethod_worker_vec): Remove.
15048         (get_xmethod_arg_types): Remove.
15049         (get_xmethod_result_type): Remove.
15050         * valops.c (find_method_list): Use std::vector, don't use
15051         intermediate vector.
15052         (value_find_oload_method_list): Use std::vector.
15053         (find_overload_match): Use std::vector.
15054         (find_oload_champ): Use std::vector.
15055         * value.c (value_free): Use operator delete.
15056         (value_of_xmethod): Rename to...
15057         (value_from_xmethod): ... this.  Don't assign
15058         xmethod_worker::value, take rvalue-reference.
15059         (result_type_of_xmethod): Adjust.
15060         (call_xmethod): Adjust.
15061         * value.h: Include extension.h.
15062         (struct xmethod_worker): Don't forward-declare.
15063         (value_of_xmethod): Rename to...
15064         (value_from_xmethod): ... this, take rvalue-reference.
15065         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15066         (struct python_xmethod_worker): ... this, add constructor and
15067         destructor.
15068         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15069         (gdbpy_free_xmethod_worker_data): Rename to...
15070         (python_xmethod_worker::~python_xmethod_worker): ... this and
15071         adjust.
15072         (gdbpy_clone_xmethod_worker_data): Rename to...
15073         (python_xmethod_worker::clone): ... this and adjust.
15074         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15075         temporary vector.
15076         (gdbpy_get_xmethod_arg_types): Rename to...
15077         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15078         (gdbpy_get_xmethod_result_type): Rename to...
15079         (python_xmethod_worker::do_get_result_type): ... this and
15080         adjust.
15081         (gdbpy_invoke_xmethod): Rename to...
15082         (python_xmethod_worker::invoke): ... this and adjust.
15083         (new_python_xmethod_worker): Rename to...
15084         (python_xmethod_worker::python_xmethod_worker): ... this and
15085         adjust.
15086         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15087         Remove.
15088         (gdbpy_free_xmethod_worker_data): Remove.
15089         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15090         (gdbpy_get_xmethod_arg_types): Remove.
15091         (gdbpy_get_xmethod_result_type): Remove.
15092         (gdbpy_invoke_xmethod): Remove.
15093         * python/python.c (python_extension_ops): Remove obsolete
15094         callbacks.
15095
15096 2018-01-05  Pedro Alves  <palves@redhat.com>
15097
15098         PR gdb/18653
15099         * common/signals-state-save-restore.c
15100         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15101         find a custom handler preinstalled, instead of internal erroring.
15102         But only warn if !quiet.
15103         * common/signals-state-save-restore.h
15104         (save_original_signals_state): New parameter 'quiet'.
15105         * main.c (captured_main_1): Move save_original_signals_state call
15106         after option handling, and pass QUIET.
15107
15108 2018-01-05  Pedro Alves  <palves@redhat.com>
15109
15110         * spu-tdep.c (spu_catch_start): Pass
15111         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15112
15113 2018-01-05  Pedro Alves  <palves@redhat.com>
15114
15115         PR gdb/22670
15116         * ada-lang.c (literal_symbol_name_matcher): New function.
15117         (ada_get_symbol_name_matcher): Use it for
15118         symbol_name_match_type::SEARCH_NAME.
15119         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15120         it down instead of assuming symbol_name_match_type::FULL.
15121         * block.h (block_lookup_symbol): New parameter 'match_type'.
15122         * c-valprint.c (print_unpacked_pointer): Use
15123         lookup_symbol_search_name instead of lookup_symbol.
15124         * compile/compile-object-load.c (get_out_value_type): Pass down
15125         symbol_name_match_type::SEARCH_NAME.
15126         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15127         symbol_name_match_type::FULL.
15128         * cp-support.c (cp_get_symbol_name_matcher): Handle
15129         symbol_name_match_type::SEARCH_NAME.
15130         * infrun.c (insert_exception_resume_breakpoint): Use
15131         lookup_symbol_search_name.
15132         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15133         * psymtab.c (maintenance_check_psymtabs): Use
15134         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15135         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15136         SYMBOL_SEARCH_NAME.
15137         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15138         if symbol_name_match_type::SEARCH_NAME.
15139         (lookup_symbol_in_language): Pass down
15140         symbol_name_match_type::FULL.
15141         (lookup_symbol_search_name): New.
15142         (lookup_language_this): Pass down
15143         symbol_name_match_type::SEARCH_NAME.
15144         (lookup_symbol_aux, lookup_local_symbol): New parameter
15145         'match_type'.  Pass it down.
15146         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15147         (lookup_symbol_search_name): New declaration.
15148         (lookup_symbol_in_block): New 'match_type' parameter.
15149
15150 2018-01-05  Pedro Alves  <palves@redhat.com>
15151
15152         PR gdb/22670
15153         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15154         ada_lookup_symbol.
15155         (ada_lookup_symbol): Reimplement in terms of
15156         ada_lookup_symbol_list, bits factored out from
15157         ada_lookup_encoded_symbol.
15158
15159 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15160
15161         * ada-exp.y (write_object_renaming): When subscripting an array
15162         using a symbol as the index, pass the block in call to
15163         ada_lookup_encoded_symbol when looking that symbol up.
15164
15165 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15166
15167         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15168         TYPE_INDEX_TYPE.
15169
15170 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15171
15172         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15173         the case where VALUE_LVAL (val0) is not lval_memory.
15174
15175 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15176
15177         * ada-valprint.c (print_optional_low_bound): Handle
15178         character-indexed array printing like boolean-indexed array
15179         printing.
15180
15181 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15182
15183         * NEWS: Create a new section for the next release branch.
15184         Rename the section of the current branch, now that it has
15185         been cut.
15186
15187 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15188
15189         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15190         * version.in: Bump version to 8.1.50.DATE-git.
15191
15192 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15193
15194         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15195         Add field.
15196         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15197         Add field.
15198         (default_exception_support_info) <catch_handlers_sym>: Add field.
15199         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15200         (ada_exception_name_addr_1): Add "catch handlers" handling.
15201         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15202         Update all callers.
15203         (create_excep_cond_exprs) <ex>: Add parameter.
15204         (re_set_exception): Update create_excep_cond_exprs call.
15205         (print_it_exception, print_one_exception, print_mention_exception)
15206         (print_recreate_exception): Add "catch handler" handling.
15207         (allocate_location_catch_handlers, re_set_catch_handlers)
15208         (check_status_catch_handlers, print_it_catch_handlers)
15209         (print_one_catch_handlers, print_mention_catch_handlers)
15210         (print_recreate_catch_handlers): New function.
15211         (catch_handlers_breakpoint_ops): New variable.
15212         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15213         Add parameter.  Add "catch handler" handling.
15214         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15215         Add "catch handler" handling.
15216         (ada_exception_catchpoint_cond_string): Add "catch handler"
15217         handling.
15218         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15219         call.
15220         (catch_ada_handlers_command): New function.
15221         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15222         operations structure.
15223         (_initialize_ada_language): Add "catch handlers" command entry.
15224         * NEWS: Document "catch handlers" feature.
15225
15226 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15227
15228         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15229         account when creating the array type of the slice.
15230         (ada_value_slice): Likewise.
15231
15232 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15233
15234         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15235         New enum value.
15236         (create_array_type_with_stride): Add byte_stride_prop parameter.
15237         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15238         New parameter.  Update all callers in this file.
15239         (array_type_has_dynamic_stride): New function.
15240         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15241         of arrays with dynamic byte strides.
15242         * dwarf2read.c (read_array_type): Add support for dynamic
15243         DW_AT_byte_stride attributes.
15244
15245 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15246
15247         * dwarf2read.c (read_unspecified_type): Treat
15248         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15249
15250 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15251
15252         Update copyright year range in all GDB files.
15253
15254 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15255
15256         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15257         and gdb/testsuite/gdb.base/step-line.c.
15258
15259 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15260
15261         * copyright.py (main): Dump the contents of
15262         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15263         even if BY_HAND is empty.
15264
15265 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15266
15267         * top.c (print_gdb_version): Update Copyright year in version
15268         message.
15269
15270 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15271
15272         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15273
15274 For older changes see ChangeLog-2017.
15275 \f
15276 Local Variables:
15277 mode: change-log
15278 left-margin: 8
15279 fill-column: 74
15280 version-control: never
15281 coding: utf-8
15282 End: