RISC-V: Linux signal frame support.
[external/binutils.git] / gdb / ChangeLog
1 2018-10-26  Jim Wilson  <jimw@sifive.com>
2
3         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
4         (riscv_linux_sigframe_init): Declare.
5         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
6         (riscv_linux_sigframe): New.
7         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
8         (riscv_linux_sigframe_init): Define.
9         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
10
11         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
12         (riscv_isa_flen): Likewise.  Drop static.
13         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
14         (riscv_isa_flen): Likewise.  Declare.
15
16 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
17             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
18
19         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
20         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
21         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
22         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
23         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
24         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
25         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
26         Define.
27         (struct ppc_linux_features) <htm>: New field.
28         (ppc_linux_no_features): Add initializer for htm field.
29         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
30         new tdescs.
31         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
32         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
33         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
34         Define if not already defined.
35         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
36         and rs6000/powerpc-isa207-htm-vsx64l.
37         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
38         rs6000/powerpc-isa207-htm-vsx64l.xml.
39         * features/rs6000/power-htm-spr.xml: New file.
40         * features/rs6000/power-htm-core.xml: New file.
41         * features/rs6000/power64-htm-core.xml: New file.
42         * features/rs6000/power-htm-fpu.xml: New file.
43         * features/rs6000/power-htm-altivec.xml: New file.
44         * features/rs6000/power-htm-vsx.xml: New file.
45         * features/rs6000/power-htm-ppr.xml: New file.
46         * features/rs6000/power-htm-dscr.xml: New file.
47         * features/rs6000/power-htm-tar.xml: New file.
48         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
49         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
50         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
51         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
52         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
53         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
54         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
55         fetch_regset with HTM regsets.
56         (store_register, store_ppc_registers): Call store_regset with HTM
57         regsets.
58         (ppc_linux_nat_target::read_description): Set htm field in the
59         features struct if needed.
60         * ppc-linux-tdep.c: Include
61         features/rs6000/powerpc-isa207-htm-vsx32l.c and
62         features/rs6000/powerpc-isa207-htm-vsx64l.c.
63         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
64         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
65         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
66         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
67         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
68         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
69         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
70         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
71         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
72         (ppc32_linux_ctarregset): New globals.
73         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
74         (ppc_linux_collect_core_cpgrregset): New function.
75         (ppc_linux_iterate_over_regset_sections): Call back with the htm
76         regsets.
77         (ppc_linux_core_read_description): Check if the tm spr section is
78         present and set htm in the features struct.
79         (_initialize_ppc_linux_tdep): Call
80         initialize_tdesc_powerpc_isa207_htm_vsx32l and
81         initialize_tdesc_powerpc_isa207_htm_vsx64l.
82         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
83         Declare.
84         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
85         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
86         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
87         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
88         New fields.
89         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
90         Likewise.
91         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
92         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
93         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
94         New enum fields.
95         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
96         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
97         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
98         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
99         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
100         <PPC_CTAR_REGNUM>: Likewise.
101         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
102         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
103         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
104         (IS_CEFP_PSEUDOREG): Define.
105         (rs6000_register_name): Hide the upper halves of checkpointed VSX
106         registers.  Return names for the checkpointed DFP, VSX, and EFP
107         pseudo registers.
108         (rs6000_pseudo_register_type): Remove initial assert and raise an
109         internal error in the else clause instead.  Return types for the
110         checkpointed DFP, VSX, and EFP pseudo registers.
111         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
112         checkpointed DFP pseudo registers.
113         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
114         checkpointed VSX pseudo registers.
115         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
116         from efpr_pseudo_register_read and
117         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
118         registers.
119         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
120         Handle checkpointed DFP, VSX, and EFP registers.
121         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
122         (efp_ax_pseudo_register_collect): New functions.
123         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
124         register logic to new functions.  Handle checkpointed DFP, VSX,
125         and EFP pseudo registers.
126         (rs6000_gdbarch_init): Look for and validate the htm features.
127         Include checkpointed DFP, VSX and EFP pseudo-registers.
128         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
129         HTM registers.
130
131 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
132
133         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
134         without altivec or fpu.
135
136 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
137             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
138
139         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
140         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
141         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
142         Define if not already defined.
143         * features/rs6000/power-ebb.xml: New file.
144         * features/rs6000/power-linux-pmu.xml: New file.
145         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
146         features.
147         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
148         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
149         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
150         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
151         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
152         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
153         fetch_regset with ebb and pmu regsets.
154         (store_register, store_ppc_registers): Call store_regset with ebb
155         and pmu regsets.
156         (ppc_linux_nat_target::read_description): Set isa207 field in the
157         features struct if ebb and pmu are avaiable.
158         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
159         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
160         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
161         and pmu regsets.
162         (ppc_linux_core_read_description): Check if the pmu section is
163         present and set isa207 in the features struct.
164         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
165         (ppc32_linux_pmuregset): Declare.
166         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
167         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
168         <ppc_sier_regnum>: New field.
169         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
170         New enum values.
171         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
172         values.
173         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
174         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
175         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
176         ebb and pmu features.
177
178 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
179             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
180
181         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
182         (tdesc_powerpc_isa207_vsx64l): Declare.
183         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
184         (struct ppc_linux_features) <isa207>: New field.
185         (ppc_linux_no_features): Add initializer for isa207 field.
186         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
187         new tdescs.
188         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
189         (NT_PPC_TAR): Define if not already defined.
190         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
191         rs6000/powerpc-isa207-vsx64l.
192         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
193         rs6000/powerpc-isa207-vsx64l.xml.
194         * features/rs6000/power-tar.xml: New file.
195         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
196         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
197         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
198         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
199         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
200         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
201         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
202         fetch_regset with the TAR regset.
203         (store_register, store_ppc_registers): Call store_regset with the
204         TAR regset.
205         (ppc_linux_nat_target::read_description): Set isa207 field in the
206         features struct if needed.
207         * ppc-linux-tdep.c: Include
208         features/rs6000/powerpc-isa207-vsx32l.c and
209         features/rs6000/powerpc-isa207-vsx64l.c.
210         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
211         (ppc_linux_iterate_over_regset_sections): Call back with the tar
212         regset.
213         (ppc_linux_core_read_description): Check if the tar section is
214         present and set isa207 in the features struct.
215         (_initialize_ppc_linux_tdep): Call
216         initialize_tdesc_powerpc_isa207_vsx32l and
217         initialize_tdesc_powerpc_isa207_vsx64l.
218         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
219         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
220         (enum) <PPC_TAR_REGNUM>: New enum value.
221         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
222         feature.
223         (ppc_process_record_op31): Record changes to TAR.
224
225 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
226             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
227
228         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
229         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
230         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
231         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
232         (struct ppc_linux_features) <ppr_dscr>: New field.
233         (ppc_linux_no_features): Add initializer for ppr_dscr field.
234         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
235         new tdescs.
236         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
237         Define if not already defined.
238         * features/Makefile (WHICH): Add
239         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
240         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
241         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
242         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
243         * features/rs6000/power-dscr.xml: New file.
244         * features/rs6000/power-ppr.xml: New file.
245         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
246         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
247         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
248         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
249         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
250         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
251         * ppc-linux-nat.c: Include <sys/uio.h>.
252         (fetch_regset, store_regset, check_regset): New functions.
253         (fetch_register, fetch_ppc_registers): Call fetch_regset with
254         DSCR and PPR regsets.
255         (store_register, store_ppc_registers): Call store_regset with
256         DSCR and PPR regsets.
257         (ppc_linux_get_hwcap2): New function.
258         (ppc_linux_nat_target::read_description): Call
259         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
260         features struct if needed.
261         * ppc-linux-tdep.c: Include
262         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
263         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
264         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
265         (ppc32_linux_dscrregset): New globals.
266         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
267         and dscr regsets.
268         (ppc_linux_core_read_description): Check if the ppr and dscr
269         sections are present and set ppr_dscr in the features struct.
270         (_initialize_ppc_linux_tdep): Call
271         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
272         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
273         * ppc-linux-tdep.h (ppc32_linux_pprregset)
274         (ppc32_linux_dscrregset): Declare.
275         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
276         <ppc_dscr_regnum>: New field.
277         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
278         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
279         and dscr features.
280         (ppc_process_record_op31): Record changes to PPR and DSCR.
281
282 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
283
284         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
285         second initializer line for the have_* variables.  Initialize
286         have_fpu to 0 instead of 1.
287
288 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
289
290         * arch/ppc-linux-common.c (ppc_linux_match_description):
291         Parenthesize tdesc assignements and indent them properly.
292
293 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
294
295         * ppc-linux-nat.c (fetch_register): Change if statement to else
296         if.
297         (store_register): Likewise.
298
299 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
300
301         * rs6000-tdep.c: Remove reggroups.h include.
302         (rs6000_pseudo_register_reggroup_p): Remove.
303         (rs6000_gdbarch_init): Remove call to
304         set_tdesc_pseudo_register_reggroup_p.
305
306 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
307
308         * reggroups.c (default_register_reggroup_p): Return true for
309         decfloat registers and float_reggroup.
310
311 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
312
313         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
314         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
315         ppc_linux_collect_vrregset by regcache_collect_regset.
316
317 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
318
319         * linux-tdep.c (linux_collect_regset_section_cb): Use
320         std::vector<gdb_byte> instead of char * and malloc for buf.
321         Remove xfree.
322
323 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
324
325         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
326         symtab_start instead of always using language_unknown.
327
328 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
329
330         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
331         READ_P parameter, catch and ignore register access errors from
332         either the old or new MISA location.
333         (riscv_has_feature): Update call to riscv_read_misa_reg.
334
335 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
336
337         * python/py-function.c (convert_values_to_python): Return
338         gdbpy_ref<>.  Add header comment.
339         (fnpy_call): Adjust.
340
341 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
342
343         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
344         (cmdpy_completer_handle_brkchars): Adjust.
345         (cmdpy_completer): Adjust.
346
347 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
348
349         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
350         Pass correct regnum to raw_supply_zeroed.
351
352 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
353
354         * regcache.c (cooked_read_test): Add CSKY to the list of
355         architectures with a save_reggroup
356
357 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
358
359         PR gdb/23368
360         * infrun.c (follow_exec): In the follow_exec_mode_new case,
361         transfer terminal state from old new new inferior.
362         * terminal.h (swap_terminal_info): New function.
363         * inflow.c (swap_terminal_info): New function.
364
365 2018-10-23  Tom Tromey  <tom@tromey.com>
366
367         * record-btrace.c (get_thread_current_frame_id): Rename from
368         get_thread_current_frame.  Return a frame_id.
369         (record_btrace_start_replaying): Update.
370
371 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
372
373         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
374         for CSRs.
375
376 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
377
378         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
379         have_nonsteppable_watchpoint attribute to 1.
380
381 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
382
383         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
384         register names.
385         (struct register_alias): Rename to...
386         (struct riscv_register_alias): ...this, and update comment.
387         (riscv_register_aliases): Update type, and alias names.  Remove
388         CSR names from this list.
389         (riscv_register_name): Use riscv_gdb_reg_names for int and float
390         register names.  Add an extra assertion.
391         (riscv_is_regnum_a_named_csr): New function.
392         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
393
394 2018-10-22  Jim Wilson  <jimw@sifive.com>
395
396         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
397         FP reg smaller than FP reg size, and fill with -1 instead of 0.
398
399         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
400         (riscv_register_type): Use them.
401         (riscv_print_one_register_info): Handle union of floats same as float.
402         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
403         riscv_fpreg_q_type fields.
404
405 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
406
407         * gdbarch.sh (gdbarch_num_cooked_regs): New.
408         * gdbarch.h: Re-generate.
409         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
410         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
411         * eval.c (evaluate_subexp_standard): Likewise.
412         * findvar.c (value_of_register): Likewise.
413         (value_of_register_lazy): Likewise.
414         (address_from_register): Likewise.
415         * frame.c (get_frame_register_bytes): Likewise.
416         * gdbarch-selftests.c (register_to_value_test): Likewise.
417         * h8300-tdep.c (h8300_register_type): Likewise.
418         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
419         (i386_svr4_reg_to_regnum): Likewise.
420         * infcmd.c (default_print_registers_info): Likewise.
421         (registers_info): Likewise.
422         (print_vector_info): Likewise.
423         (default_print_float_info): Likewise.
424         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
425         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
426         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
427         (mi_cmd_data_list_changed_registers): Likewise.
428         (mi_cmd_data_list_register_values): Likewise.
429         (mi_cmd_data_write_register_values): Likewise.
430         (mi_cmd_trace_frame_collected): Likewise.
431         * mips-tdep.c (print_gp_register_row): Likewise.
432         (mips_print_registers_info): Likewise.
433         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
434         * regcache.c (init_regcache_descr): Likewise.
435         (register_size): Likewise.
436         (register_dump::dump): Likewise.
437         (cooked_read_test): Likewise.
438         (cooked_write_test): Likewise.
439         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
440         (rs6000_gdbarch_init): Likewise.
441         * stabsread.c (stab_reg_to_regnum): Likewise.
442         * stack.c (info_frame_command): Likewise.
443         * target-descriptions.c (tdesc_register_name): Likewise.
444         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
445         * tui/tui-regs.c (tui_show_register_group): Likewise.
446         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
447         (user_reg_map_regnum_to_name): Likewise.
448         (value_of_user_reg): Likewise.
449         (maintenance_print_user_registers): Likewise.
450         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
451         (xtensa_register_name): Likewise.
452         (xtensa_register_type): Likewise.
453         (xtensa_reg_to_regnum): Likewise.
454         (xtensa_pseudo_register_read): Likewise.
455         (xtensa_pseudo_register_write): Likewise.
456
457 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
458
459         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
460         correctly-sized buffer with raw_read.
461         (amd64_pseudo_register_write): Use correctly-sized buffer for
462         raw_read/raw_write.
463
464 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
465
466         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
467         in add_prefix_cmd of set print type.
468
469 2018-10-19  Tom Tromey  <tom@tromey.com>
470
471         PR tui/18388:
472         * NEWS: Mention tabset deprecation.
473         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
474         (update_tab_width): New function.
475         (tui_set_tab_width, tui_show_tab_width): New functions.
476         (tui_set_tab_width_command): Use update_tab_width.
477         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
478         Add new "set tui tab-width" command.
479         * tui/tui-source.c (tui_set_source_content): Update.
480         * tui/tui-disasm.c (tui_set_disassem_content): Update.
481         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
482         Don't declare.
483         (tui_tab_width): Declare.
484         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
485         (tui_set_default_tab_len): Remove.
486
487 2018-10-19  Tom Tromey  <tom@tromey.com>
488
489         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
490         (key_is_backspace, tui_getc): Don't declare.
491         * tui/tui-io.c (key_is_start_sequence): Now static.
492         (key_is_end_sequence, key_is_backspace): Remove.
493         (tui_getc): Now static.
494
495 2018-10-19  Tom Tromey  <tom@tromey.com>
496
497         * symfile.c (reread_symbols): Clear "static_links".
498
499 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
500
501         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
502         define.
503         (aarch64_linux_sigframe_init): Extra boundary checks.
504
505 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
506
507         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
508         the possibly non-existent tdesc type 'vec128', but the type of raw
509         register v16 instead.
510
511 2018-10-19  Gary Benson <gbenson@redhat.com>
512
513         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
514
515 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
516
517         PR cli/23785
518         * cli/cli-dump.c (restore_binary_file): Check if "file" is
519         NULL.
520
521 2018-10-17  Paul Koning  <paul_koning@dell.com>
522
523         * charset.c (convert_between_encodings): Fix unsigned overflow.
524
525 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
526
527         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
528         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
529         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
530         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
531         New functions.
532         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
533         and fbsd_info_proc_mappings_header.
534         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
535         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
536         New.
537
538 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
539
540         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
541         Solaris Maintainer.
542
543 2018-10-15  Tom Tromey  <tom@tromey.com>
544
545         * tui/tui.c (strcat_to_buf): Remove casts.
546         * tui/tui-winsource.c (tui_show_source_line)
547         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
548         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
549         * tui/tui-windata.c (tui_first_data_item_displayed)
550         (tui_delete_data_content_windows, tui_erase_data_content)
551         (tui_display_all_data, tui_display_data_from)
552         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
553         * tui/tui-win.c (tui_set_win_height)
554         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
555         casts.
556         * tui/tui-win.c (tui_resize_all): Remove casts.
557         (tui_scroll_backward_command, tui_set_focus)
558         (tui_set_tab_width_command): Likewise.
559         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
560         * tui/tui-regs.c (tui_show_register_group): Remove cast.
561         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
562         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
563         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
564         Remove casts.
565
566 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
567
568         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
569         AArch64/ARM maintainer.
570
571 2018-10-11  Gary Benson <gbenson@redhat.com>
572
573         * interps.h (interp::m_name): Make private and mutable.
574         * interps.c (interp::~interp): Free m_name.
575
576 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
577             Simon Marchi <simark@simark.ca>
578
579         * README (`configure' options): Add documentation for new
580         "--enable-unit-tests" option.
581         * acinclude.m4: Include "selftest.m4".
582         * configure: Regenerate.
583         * configure.ac: Use "GDB_AC_SELFTEST".
584         * maint.c (maintenance_selftest): Update message informing
585         that selftests have been disabled.
586         (maintenance_info_selftests): Likewise.
587         * selftest.m4: New file.
588
589 2018-10-10  Gary Benson <gbenson@redhat.com>
590
591         * remote.c (remote_target::remote_send_printf): Add
592         missing va_end found by Coverity.
593
594 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
595
596         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
597
598 2018-10-09  Tom Tromey  <tom@tromey.com>
599
600         * configure: Rebuild.
601         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
602         * NEWS: Update --enable-ubsan documentation.
603
604 2018-10-09  Gary Benson <gbenson@redhat.com>
605
606         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
607         found by Coverity.
608
609 2018-10-08  Tom Tromey  <tom@tromey.com>
610
611         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
612         variable.
613         (riscv_fbsd_init_abi): Likewise.
614
615 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
616         * valops.c (value_struct_elt_for_reference): Rename local variable
617         to work around the shadowing a previous local warning.
618
619 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
620
621         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
622         * NEWS: Mention new FreeBSD/riscv native configuration.
623         * configure.host: Add riscv*-*-freebsd*.
624         * configure.nat: Likewise.
625         * riscv-fbsd-nat.c: New file.
626
627 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
628
629         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
630         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
631         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
632         * NEWS: Mention new FreeBSD/riscv target.
633         * configure.tgt: Add riscv*-*-freebsd*.
634         * riscv-fbsd-tdep.c: New file.
635         * riscv-fbsd-tdep.h: New file.
636
637 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
638
639         * regcache.h (struct regcache_map_entry): Note that this type can
640         be used with traditional frame caches.
641         * trad-frame.c (trad_frame_set_reg_regmap): New.
642         * trad-frame.h (trad_frame_set_reg_regmap): New.
643
644 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
645
646         PR c++/16841
647         * valops.c (get_virtual_base_offset): New function.
648         (value_struct_elt_for_reference): Use it to get virtual base offset
649         and add it in calculating class member address.
650
651 2018-10-08   John Darrington <john@darrington.wattle.id.au>
652
653     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
654       (check_producer): Check if the producer is codewarrior.
655       (producer_is_codewarrior): New function.
656       (lnp_state_machine::record_line): Ignore is_stmt flag for records
657        produced by codewarrior.
658       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
659
660 2018-10-06  Tom Tromey  <tom@tromey.com>
661
662         PR python/19399:
663         * python/py-inferior.c: Add "architecture" entry.
664         (infpy_architecture): New function.
665
666 2018-10-06  Tom Tromey  <tom@tromey.com>
667
668         PR python/21765:
669         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
670         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
671         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
672         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
673
674 2018-10-06  Tom Tromey  <tom@tromey.com>
675
676         PR build/17077:
677         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
678         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
679         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
680         #include.
681
682 2018-10-06  Tom Tromey  <tom@tromey.com>
683
684         * python/py-breakpoint.c (bppy_get_location): Handle a
685         bp_breakpoint without a location.
686
687 2018-10-06  Tom Tromey  <tom@tromey.com>
688
689         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
690         (_RegEx): Reformat help text.
691         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
692         (AnyCallerIs, AnyCallerMatches): Reformat help text.
693         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
694         text.
695         * python/lib/gdb/command/xmethods.py (InfoXMethod)
696         (EnableXMethod, DisableXMethod): Remove help indentation.
697         Capitalize meta-syntactic variables.
698         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
699         (EnableUnwinder, DisableUnwinder): Remove help indentation.
700         Capitalize meta-syntactic variables.
701         * python/lib/gdb/command/explore.py (ExploreCommand)
702         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
703         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
704         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
705         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
706         Remove help indentation.
707         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
708         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
709         (DisableFrameFilter, SetFrameFilterPriority)
710         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
711
712 2018-10-06  Tom Tromey  <tom@tromey.com>
713
714         PR tui/28819:
715         * tui/tui-io.c (gdb_wgetch): New function.
716         (tui_mld_getc, tui_getc): Use it.
717
718 2018-10-05  Tom Tromey  <tom@tromey.com>
719
720         * sol-thread.c (sol_thread_target::wait): Rename inner
721         "save_ptid".
722
723 2018-10-04  Tom Tromey  <tom@tromey.com>
724
725         * configure: Rebuild.
726         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
727
728 2018-10-04  Tom Tromey  <tom@tromey.com>
729
730         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
731         declaration of "block".
732
733 2018-10-04  Tom Tromey  <tom@tromey.com>
734
735         * common/filestuff.c (fdwalk): Remove inner declaration of
736         "result".
737
738 2018-10-04  Tom Tromey  <tom@tromey.com>
739
740         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
741         "structs_addr" and hoist declaration.
742
743 2018-10-04  Tom Tromey  <tom@tromey.com>
744
745         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
746         variable "size".
747
748 2018-10-04  Tom Tromey  <tom@tromey.com>
749
750         * mdebugread.c (parse_partial_symbols): Use std::string.
751
752 2018-10-04  Tom Tromey  <tom@tromey.com>
753
754         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
755         * p-valprint.c (pascal_val_print): Split inner "i" variable.
756         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
757         header.
758         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
759         more inner scope.
760         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
761         * varobj.c (varobj_update): Rename inner "newobj",
762         "type_changed".
763         * valprint.c (generic_emit_char): Rename inner "buf".
764         * valops.c (find_overload_match): Rename inner "temp".
765         (value_struct_elt_for_reference): Declare "v" in more inner
766         scope.
767         * v850-tdep.c (v850_push_dummy_call): Rename "len".
768         * unittests/array-view-selftests.c (run_tests): Rename inner
769         "vec".
770         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
771         header.
772         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
773         "tsv" in more inner scope.
774         (print_one_static_tracepoint_marker): Rename inner
775         "tuple_emitter".
776         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
777         (tic6x_push_dummy_call): Don't redeclare "addr".
778         * target-float.c: Declare "dto" lower.
779         * symtab.c (lookup_local_symbol): Rename inner "sym".
780         (find_pc_sect_line): Rename inner "pc".
781         * stack.c (print_frame): Don't redeclare "gdbarch".
782         (return_command): Rename inner "gdbarch".
783         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
784         "sp".
785         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
786         header.
787         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
788         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
789         scope.
790         * remote.c (remote_target::update_thread_list): Don't redeclare
791         "tp".
792         (remote_target::process_initial_stop_replies): Rename inner
793         "thread".
794         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
795         (remote_target::wait_as): Don't redeclare "stop_reply".
796         (remote_target::get_thread_local_address): Rename inner
797         "result".
798         (remote_target::get_tib_address): Likewise.
799
800         * regcache.c (cooked_read_test): Rename "regnum".
801         * record-btrace.c (cmd_record_btrace_start): Rename inner
802         "exception".
803         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
804         loop header.
805         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
806         header.
807         (ppu2spu_sniffer): Rename inner "buf".
808         * parse.c (operator_check_standard): Rename inner "type",
809         "objfile".
810         * p-valprint.c (pascal_val_print): Introduce new scope for
811         "low_bound", "high_bound".
812         * p-exp.y (yylex): Declare "i" in loop header.
813         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
814         Lower declaration of "s".
815         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
816         header.
817         (nios2_push_dummy_call): Rename "len".
818         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
819         "buf".
820         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
821         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
822         (linux_xfer_osdata_modules): Likewise.
823         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
824         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
825         (mips_o64_push_dummy_call): Likewise.
826         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
827         "op".
828         * mi/mi-main.c (list_available_thread_groups): Rename inner
829         "tuple_emitter".
830         (mi_cmd_data_read_memory): Rename inner "opts".
831         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
832         "tuple_emitter".
833         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
834         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
835         more inner scope.
836         (parse_partial_symbols): Rename inner "pst", "p", "name"
837         * main.c (captured_main_1): Rename inner "i"s.
838         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
839         "oso2".
840         * linux-tdep.c (linux_info_proc): Rename inner "filename".
841         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
842         * infrun.c (handle_no_resumed): Don't redeclare "thread".
843         (handle_signal_stop): Rename inner "gdbarch".
844         (handle_command): Declare "signum" in loop header.
845         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
846         "status".
847         (examine_prologue): Rename inner "sol" and "sof".
848         (ia64_extract_return_value): Rename inner "val".  Declare another
849         "val" in a more inner scope.
850         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
851         inner scope.
852         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
853         "except".
854         * findvar.c (default_read_var_value): Don't redeclare "addr".
855         * f-exp.y (yylex): Declare "i" in loop header.
856         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
857         Rename inner "type", "expect_type".
858         (evaluate_subexp_for_sizeof): Rename inner "pc".
859         * elfread.c (elf_symfile_read): Rename inner "abfd".
860         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
861         "bytes_read".
862         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
863         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
864         (dwarf_decode_line_header): Rename inner "lh".
865         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
866         "offset".  Declare "i" in loop header.
867         (disassemble_dwarf_expression): Rename inner "addr_size".
868         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
869         inner "result".
870         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
871         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
872         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
873         "inner_list_emitter".
874         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
875         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
876         declaration in a block.
877         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
878         * cp-valprint.c (cp_print_value_fields): Don't redeclare
879         "obstack_final_size".
880         * cp-support.c (inspect_type): Declare "i" in loop header.
881         * compile/compile.c (compile_instance::insert_symbol_error):
882         Rename inner "e".
883         * common/agent.c (agent_run_command): Remove inner "ret"
884         declaration.
885         * coffread.c (coff_symfile_read): Rename inner "name".
886         (coff_symfile_read): Rename inner "abfd".
887         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
888         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
889         "high".
890         * c-exp.y (lex_one_token): Move "len" declaration lower.
891         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
892         "gdbarch".
893         (create_exception_master_breakpoint): Likewise.  Don't redeclare
894         "b".
895         (watch_command_1): Declare "mark" later.
896         (clear_command): Don't shadow "a" or "b".
897         (delete_command): Rename inner "b".
898         (delete_trace_command): Likewise.
899         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
900         "op".
901         (arm_gdbarch_init): Remove inner "e_flags".
902         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
903         "offset" in inner blocks.
904
905 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
906
907         * dwarf-index-write.c (file_write): Don't write if the vector is
908         empty.
909
910 2018-10-05  Tom de Vries  <tdevries@suse.de>
911
912         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
913         PyArg_ParseTuple call.
914
915 2018-10-05  Tom de Vries  <tdevries@suse.de>
916
917         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
918         PyArg_ParseTuple call.
919
920 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
921
922         * psymtab.c (recursively_search_psymtabs): Reformat parameters
923         to avoid exceeding 80 characters per line limit.
924
925 2018-10-04  Tom Tromey  <tom@tromey.com>
926
927         * symfile.c (syms_from_objfile_1, finish_new_objfile)
928         (reread_symbols): Update.
929         * complaints.h (clear_complaints): Remove argument.
930         * complaints.c (enum complaint_series): Remove.
931         (series): Remove global.
932         (complaint_internal): Update.
933         (clear_complaints): Remove argument.
934
935 2018-10-04  Tom Tromey  <tom@tromey.com>
936
937         * symfile.c (symbol_file_add_with_addrs): Do not print "no
938         debugging symbols" message if there is a separate debug objfile.
939
940 2018-10-04  Tom Tromey  <tom@tromey.com>
941
942         PR cli/19551:
943         * symfile.c (symbol_file_add_with_addrs): Update output.
944         * psymtab.c (require_partial_symbols): Update output.
945
946 2018-10-04  Tom Tromey  <tom@tromey.com>
947
948         PR cli/22234:
949         * complaints.c: Emit \n.
950
951 2018-10-04  Tom Tromey  <tom@tromey.com>
952
953         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
954         (separate_debug_file_exists, find_separate_debug_file)
955         (add_symbol_file_command, reread_symbols, allocate_symtab)
956         (allocate_compunit_symtab): Use filtered printing, not
957         unfiltered.
958         * psymtab.c (require_partial_symbols, dump_psymtab)
959         (allocate_psymtab): Use filtered printing, not unfiltered.
960
961 2018-10-04  Tom Tromey  <tom@tromey.com>
962
963         * complaints.c (complaint_internal): Correctly check complaint
964         count.
965
966 2018-10-04  Tom Tromey  <tom@tromey.com>
967
968         * complaints.h (struct complaints): Remove declaration.
969         * complaints.c (clear_complaints): Remove an unused variable.
970
971 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
972
973         * MAINTAINERS (Write After Approval): Add self.
974
975 2018-10-03  Tom Tromey  <tom@tromey.com>
976
977         * guile/scm-value.c (gdbscm_value_to_string): Initialize
978         "buffer_contents".
979         * coffread.c (coff_symtab_read): Initialize "newobj".
980
981 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
982
983         * dwarf2read.c (read_func_scope): Remove struct keyword in
984         range-based for.
985
986 2018-10-03  Tom Tromey  <tom@tromey.com>
987
988         * README: Mention --enable-ubsan.
989         * NEWS: Mention --enable-ubsan.
990         * acinclude.m4: Include sanitize.m4.
991         * configure: Rebuild.
992         * configure.ac: Call AM_GDB_UBSAN.
993         * sanitize.m4: New file.
994
995 2018-10-03  Tom Tromey  <tom@tromey.com>
996
997         * expression.h (enum exp_opcode): Use uint8_t as base type.
998         * expprint.c (op_name): Handle invalid opcodes.
999
1000 2018-10-03  Tom Tromey  <tom@tromey.com>
1001
1002         * parse.c (prefixify_expression): Add assert.
1003         (parse_exp_in_context_1): Throw exception if the expression is
1004         empty.
1005
1006 2018-10-03  Tom Tromey  <tom@tromey.com>
1007
1008         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1009
1010 2018-10-03  Tom Tromey  <tom@tromey.com>
1011
1012         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1013
1014 2018-10-03  Tom Tromey  <tom@tromey.com>
1015
1016         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1017         unsigned.
1018
1019 2018-10-03  Tom Tromey  <tom@tromey.com>
1020
1021         * findvar.c (extract_integer): Do work in an unsigned type.
1022
1023 2018-10-03  Tom Tromey  <tom@tromey.com>
1024
1025         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1026         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1027         base type.
1028         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1029         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1030         type.
1031         * c-lang.h (enum c_string_type_values): Use unsigned as base
1032         type.
1033         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1034
1035 2018-10-03  Tom Tromey  <tom@tromey.com>
1036
1037         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1038         <~dwarf2_frame_state_reg_info>: Update.
1039         <dwarf2_frame_state_reg_info>: Update.
1040         <alloc_regs>: Add assertion.  Update.
1041         <reg>: Now a std::vector.
1042         <num_regs>: Remove.
1043         <swap>: Update.
1044         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1045         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1046
1047 2018-10-03  Tom Tromey  <tom@tromey.com>
1048
1049         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1050
1051 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1052
1053         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1054
1055 2018-10-02  Tom Tromey  <tom@tromey.com>
1056
1057         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1058
1059 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1060
1061         * NEWS: Mention changed commands.
1062         * ser-uds.c: New file.
1063         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1064         * configure: Regenerate.
1065         * Makefile.in: Add new file.
1066         * serial.c (serial_open): Check if filename is a socket
1067           and lookup the appropriate interface accordingly.
1068
1069 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1070
1071         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1072         define.
1073         (AARCH64_EXTRA_MAGIC): Likewise.
1074         (AARCH64_FPSIMD_MAGIC): Likewise.
1075         (AARCH64_SVE_MAGIC): Likewise.
1076         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1077         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1078         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1079         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1080         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1081         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1082         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1083         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1084         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1085         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1086         (read_aarch64_ctx): Add function.
1087         (aarch64_linux_sigframe_init): Detect FP registers.
1088
1089 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1090
1091         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1092         (AARCH64_D0_REGNUM): Likewise.
1093         (AARCH64_S0_REGNUM): Likewise.
1094         (AARCH64_H0_REGNUM): Likewise.
1095         (AARCH64_B0_REGNUM): Likewise.
1096         (AARCH64_SVE_V0_REGNUM): Likewise.
1097         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1098         (AARCH64_D0_REGNUM): Likewise.
1099         (AARCH64_S0_REGNUM): Likewise.
1100         (AARCH64_H0_REGNUM): Likewise.
1101         (AARCH64_B0_REGNUM): Likewise.
1102         (AARCH64_SVE_V0_REGNUM): Likewise.
1103
1104 2018-10-01  Gary Benson <gbenson@redhat.com>
1105
1106         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1107         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1108         prfpregset_t instead of gdb_prfpregset_t.
1109         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1110         * configure, config.in: Rebuild.
1111
1112 2018-10-01  Gary Benson <gbenson@redhat.com>
1113
1114         * common/gdb_proc_service.h: New file, factored out from...
1115         * gdb_proc_service.h: Moved common code to the above file.
1116         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1117
1118 2018-10-01  Gary Benson <gbenson@redhat.com>
1119
1120         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1121         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1122
1123 2018-10-01  Gary Benson <gbenson@redhat.com>
1124
1125         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1126         (AC_CHECK_HEADERS): Check for linux/elf.h.
1127         * configure, config.in: Rebuild.
1128         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1129         doesn't define elf_fpregset_t.
1130
1131 2018-10-01  Gary Benson <gbenson@redhat.com>
1132
1133         * gdb_proc_service.h: Whitespace change.
1134
1135 2018-10-01  Tom Tromey  <tom@tromey.com>
1136
1137         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1138         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1139         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1140
1141 2018-10-01  Tom Tromey  <tom@tromey.com>
1142
1143         * README: Minor change.
1144
1145 2018-09-30  Pedro Alves  <palves@redhat.com>
1146
1147         * darwin-nat-info.c (darwin_debug_regions_recurse)
1148         (info_mach_exceptions_command): Remove unused local variables.
1149         * darwin-nat.c (darwin_decode_notify_message)
1150         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1151         (darwin_stop_inferior, darwin_setup_exceptions)
1152         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1153         (darwin_nat_target::attach, darwin_nat_target::detach)
1154         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1155         local variables.
1156         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1157         variables.
1158
1159 2018-09-29  Tom Tromey  <tom@tromey.com>
1160
1161         * README: Remove some leftover text.
1162
1163 2018-09-29  Tom Tromey  <tom@tromey.com>
1164
1165         * PROBLEMS: Rewrite.
1166         * README: Update.
1167
1168 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1169
1170         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1171         case with explicit breakpoint kind.
1172         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1173         'additional_info' and related logic.
1174         (riscv_debug_breakpoints): New variable.
1175         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1176         instruction to determine the breakpoint kind.
1177         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1178         flag.  Update description of 'set/show riscv
1179         use-compressed-breakpoints' flag.
1180
1181 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1182
1183         (NEWS): Mention changes to frame related commands.
1184         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1185         (add_prefix_cmd_suppress_notification): New function.
1186         (add_com_suppress_notification): Call
1187         add_cmd_suppress_notification.
1188         * command.h (add_cmd_suppress_notification): Declare.
1189         (add_prefix_cmd_suppress_notification): Declare.
1190         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1191         (parse_frame_specification): Moved from stack.c, with
1192         simplification to handle a single argument.
1193         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1194         switch to the selected frame.  Add a header comment.
1195         * stack.c: Remove 'safe-ctype.h' include.
1196         (find_frame_for_function): Add declaration.
1197         (find_frame_for_address): New function.
1198         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1199         (frame_selection_by_function_completer): New function.
1200         (info_frame_command): Rename to...
1201         (info_frame_command_core): ...this, and update parameter types.
1202         (select_frame_command): Rename to...
1203         (select_frame_command_core): ...this, and update parameter types.
1204         (frame_command): Rename to...
1205         (frame_command_core): ...this, and update parameter types.
1206         (class frame_command_helper): New class to wrap implementations of
1207         frame related sub-commands.
1208         (frame_apply_cmd_list): New static global.
1209         (frame_cmd_list): Make static.
1210         (select_frame_cmd_list): New global for sub-commands.
1211         (info_frame_cmd_list): New global for sub-commands.
1212         (_initialize_stack): Register sub-commands for 'frame',
1213         'select-frame', and 'info frame'.  Update 'frame apply' commands
1214         to use frame_apply_cmd_list.  Move function local static
1215         frame_apply_list to file static frame_apply_cmd_list for
1216         consistency.
1217         * stack.h (select_frame_command): Delete declarationn.
1218         (select_frame_for_mi): Declare new function.
1219
1220 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1221
1222         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1223         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1224         and NOP.
1225
1226 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1227
1228         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1229
1230 2018-09-26  Tom Tromey  <tom@tromey.com>
1231
1232         * valops.c (auto_abandon): Remove dead code.
1233
1234 2018-09-26  Tom Tromey  <tom@tromey.com>
1235
1236         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1237
1238 2018-09-24  Tom Tromey  <tom@tromey.com>
1239
1240         * common/pathstuff.c (get_standard_cache_dir): Make
1241         "xdg_cache_home" and "home" const.
1242         * top.c (init_history): Make "tmpenv" const.
1243         * main.c (get_init_files): Make "homedir" const.
1244
1245 2018-09-23  Tom Tromey  <tom@tromey.com>
1246
1247         PR python/18852:
1248         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1249
1250 2018-09-23  Tom Tromey  <tom@tromey.com>
1251
1252         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1253         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1254         * python/python-internal.h (gdbpy_handle_exception): Declare.
1255         * python/py-utils.c (gdbpy_handle_exception): New function.
1256
1257 2018-09-23  Tom Tromey  <tom@tromey.com>
1258
1259         PR python/17284:
1260         * python/py-type.c (typy_template_argument): Check for negative
1261         argument number.
1262
1263 2018-09-23  Tom Tromey  <tom@tromey.com>
1264
1265         PR python/14062:
1266         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1267
1268 2018-09-23  Tom Tromey  <tom@tromey.com>
1269
1270         PR python/18170:
1271         * python/py-value.c (valpy_int): Allow conversion from pointer
1272         type.
1273
1274 2018-09-23  Tom Tromey  <tom@tromey.com>
1275
1276         PR python/20126:
1277         * python/py-value.c (valpy_int): Respect type sign.
1278
1279 2018-09-23  Tom Tromey  <tom@tromey.com>
1280
1281         PR python/18352;
1282         * python/py-value.c (valpy_float): Allow conversions from int or
1283         char.
1284         (valpy_int, valpy_long): Allow conversions from float.
1285
1286 2018-09-23  Tom Tromey  <tom@tromey.com>
1287
1288         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1289         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1290
1291 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1292
1293         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1294         __sighndlr.
1295         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1296
1297 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1298
1299         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1300         target_terminal::ours().
1301
1302 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1303
1304         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1305         of vl to ULONGEST.
1306
1307 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1308
1309         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1310         redundant condition.
1311
1312 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1313
1314         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1315
1316         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1317         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1318         * sol-thread.c (ps_pdmodel): Don't guard definition.
1319
1320         * procfs.c: Fix formatting.
1321
1322         * procfs.c (sysset_t_alloc): Remove.
1323         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1324         (procfs_debug_inferior): Likewise.
1325         (procfs_set_exec_trap): Likewise.
1326         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1327         (proc_set_traced_sysexit): Likewise.
1328
1329         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1330         (dead_procinfo): Likewise.
1331         (proc_warn): Likewise.
1332         (proc_error): Likewise.
1333         (proc_get_LDT_entry): Likewise.
1334         (do_attach): Likewise.
1335         (procfs_target::pid_to_str): Likewise.
1336         (iterate_over_mappings): Likewise.
1337
1338         * procfs.c (create_procinfo): Fix ARI warning.
1339         (proc_get_status): Likewise.
1340         (proc_stop_process): Likewise.
1341         (proc_run_process): Likewise.
1342         (proc_kill): Likewise.
1343         (proc_get_LDT_entry): Likewise.
1344         (procfs_find_LDT_entry): Likewise.
1345         (proc_update_threads): Likewise.
1346         (proc_iterate_over_threads): Likewise.
1347         (do_attach): Likewise.
1348         (procfs_xfer_memory): Likewise.
1349         (invalidate_cache): Likewise.
1350         (procfs_target::resume): Likewise.
1351         (procfs_init_inferior): Likewise.
1352         (procfs_set_exec_trap): Likewise.
1353         (procfs_target::thread_alive): Likewise.
1354         (procfs_target::pid_to_exec_file): Likewise.
1355         (iterate_over_mappings): Likewise.
1356         (procfs_target::make_corefile_notes): Likewise.
1357         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1358
1359         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1360         (procfs_find_LDT_entry): Likewise.
1361         * sol-thread.c (ps_lgetLDT): Likewise.
1362
1363 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1364
1365         PR tdep/17903
1366         * procfs.c (procfs_target): Declare pid_to_exec_file.
1367         (procfs_target::pid_to_exec_file): New.
1368
1369 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1370
1371         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1372         renaming.
1373         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1374         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1375
1376 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1377
1378         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1379         (supply_fpregset, fill_fpregset): Move ...
1380         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1381         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1382         Remove references to ioctl-based procfs.
1383         Include <sys/reg.h>.
1384         Remove PR_MODEL_NATIVE guards.
1385         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1386         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1387
1388 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1389
1390         PR gdb/20981:
1391         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1392         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1393         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1394
1395 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1396
1397         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1398         (fbsd_print_sockaddr_in6): Likewise.
1399
1400 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1401             Chris January  <chris.january@arm.com>
1402
1403         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1404         (evaluate_subexp_standard): Return a dummy type when
1405         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1406         OP_F77_UNDETERMINED_ARGLIST case.
1407         * expression.h (enum noside): Update comment.
1408
1409 2018-09-19  George Vasick <george.vasick@oracle.com>
1410
1411         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1412
1413 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1414             April Chin <april.chin@oracle.com>
1415             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1416
1417         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1418         uint_t lwpid_t.
1419         (create_procinfo): Print pids in /proc without leading zeros.
1420
1421 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1422
1423         * nios2-tdep.c (nios2_gcc_target_options): New.
1424         (nios2_gdb_arch_init): Install new hook.
1425
1426 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1427
1428         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1429         New file.
1430         * update-gnulib.sh: Apply patch.
1431         * configure: Re-generate.
1432
1433 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1434
1435         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1436         description.  Make "info proc" command descriptions more
1437         consistent.
1438
1439 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1440
1441         * NEWS: Mention 'info proc files' command.
1442
1443 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1444
1445         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1446         descriptors for IP_FILES and IP_ALL.
1447
1448 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1449
1450         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1451         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1452         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1453         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1454         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1455         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1456         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1457         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1458         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1459         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1460         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1461         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1462         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1463         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1464         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1465         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1466         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1467         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1468         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1469         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1470         (struct fbsd_sockaddr_un): New types.
1471         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1472         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1473         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1474         (fbsd_core_info_proc_files): New functions.
1475         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1476         IP_ALL.
1477         * fbsd-tdep.h (fbsd_info_proc_files_header)
1478         (fbsd_info_proc_files_entry): New.
1479
1480 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1481
1482         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1483         * infcmd.c (info_proc_cmd_files): New function.
1484         (_initialize_infcmd): Register 'info proc files' command.
1485
1486 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1487
1488         * gnulib/aclocal-m4-deps.mk: Re-generate.
1489         * gnulib/aclocal.m4: Re-generate.
1490         * gnulib/config.in: Re-generate.
1491         * gnulib/configure: Re-generate.
1492         * gnulib/import/Makefile.am: Re-generate.
1493         * gnulib/import/Makefile.in: Re-generate.
1494         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1495         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1496         * gnulib/import/arpa_inet.in.h: New file.
1497         * gnulib/import/inet_ntop.c: New file.
1498         * gnulib/import/m4/arpa_inet_h.m4: New file.
1499         * gnulib/import/m4/inet_ntop.m4: New file.
1500         * gnulib/import/m4/netinet_in_h.m4: New file.
1501         * gnulib/import/m4/socklen.m4: New file.
1502         * gnulib/import/m4/sockpfaf.m4: New file.
1503         * gnulib/import/m4/stdalign.m4: New file.
1504         * gnulib/import/m4/sys_uio_h.m4: New file.
1505         * gnulib/import/netinet_in.in.h: New file.
1506         * gnulib/import/stdalign.in.h: New file.
1507         * gnulib/import/sys_socket.c: New file.
1508         * gnulib/import/sys_socket.in.h: New file.
1509         * gnulib/import/sys_uio.in.h: New file.
1510         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1511         module.
1512
1513 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1514
1515         * gnulib/aclocal-m4-deps.mk: New file.
1516         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1517         deterministically.
1518
1519 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1520
1521         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1522         KVE_PATH.
1523
1524 2018-09-18  Tom Tromey  <tom@tromey.com>
1525
1526         * compile/compile-object-load.c (struct
1527         link_hash_table_cleanup_data): Add constructor and destructor.
1528         Use DISABLE_COPY_AND_ASSIGN.
1529         (~link_hash_table_cleanup_data): Rename from
1530         link_hash_table_free.  Now a destructor.
1531         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1532
1533 2018-09-18  Tom Tromey  <tom@tromey.com>
1534
1535         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1536         * compile/compile-object-load.c (struct munmap_list): Move to
1537         header file.
1538         (munmap_list::add): Rename from munmap_list_add; rewrite.
1539         (munmap_list::~munmap_list): Rename from munmap_list_free.
1540         (munmap_listp_free_cleanup): Remove.
1541         (compile_object_load): Update.
1542         * compile/compile-object-load.h (struct munmap_list): Move from
1543         compile-object-load.c.  Rewrite.
1544
1545 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1546
1547         * aarch64-tdep.c (pass_in_v): Use register size.
1548         (aarch64_extract_return_value): Likewise.
1549         (aarch64_store_return_value): Likewise.
1550
1551 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1552
1553         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1554         rlim_t.
1555
1556 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1557
1558         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1559         Fix short help line.
1560
1561 2018-09-17  Tom Tromey  <tom@tromey.com>
1562
1563         PR python/20445:
1564         * configure: Rebuild.
1565         * configure.ac: Conditionally use -DNDEBUG for Python.
1566
1567 2018-09-17  Tom Tromey  <tom@tromey.com>
1568
1569         * configure: Rebuild.
1570         * configure.ac: Use gmp as a library dependency when checking for
1571         mpfr.
1572
1573 2018-09-17  Pedro Alves  <palves@redhat.com>
1574
1575         * python/py-inferior.c (find_inferior_object): Delete.
1576
1577 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1578
1579         * compile/compile-cplus-types.c
1580         (compile_cplus_instance::enter_scope): Don't use new_scope after
1581         std::move.
1582
1583 2018-09-17  Tom Tromey  <tom@tromey.com>
1584
1585         * common/pathstuff.c (get_standard_cache_dir): Use
1586         ~/Library/Caches on macOS.
1587         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1588
1589 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1590
1591         PR python/23669
1592         * breakpoint.c (commands_cmd_element): New.
1593         (_initialize_breakpoint): Assign commands_cmd_element.
1594         * breakpoint.h (commands_cmd_element): New.
1595         * cli/cli-script.c (while_cmd_element, if_command,
1596         define_cmd_element): New.
1597         (command_name_equals): Remove.
1598         (process_next_line): Compare commands by pointer, not by name.
1599         (_initialize_cli_script): Assign the various cmd_list_element
1600         variables.
1601         * compile/compile.c (compile_cmd_element): New.
1602         (_initialize_compile): Assign compile_cmd_element.
1603         * compile/compile.h (compile_cmd_element): New.
1604         * guile/guile.c (guile_cmd_element): New.
1605         (install_gdb_commands): Assign guile_cmd_element.
1606         * guile/guile.h (guile_cmd_element): New.
1607         * python/python.c (python_cmd_element): New.
1608         (_initialize_python): Assign python_cmd_element.
1609         * python/python.h (python_cmd_element): New.
1610         * tracepoint.c (while_stepping_cmd_element): New.
1611         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1612         * tracepoint.h (while_stepping_cmd_element): New.
1613
1614 2018-09-17  Tom Tromey  <tom@tromey.com>
1615
1616         * infrun.c (save_infcall_suspend_state): Return
1617         infcall_suspend_state_up.
1618         (save_infcall_control_state): Return infcall_control_state_up.
1619         * inferior.h (save_infcall_suspend_state)
1620         (save_infcall_control_state): Declare later.  Return unique
1621         pointers.
1622
1623 2018-09-17  Tom Tromey  <tom@tromey.com>
1624
1625         * infrun.c (struct stop_context): Declare constructor,
1626         destructor, "changed" method.
1627         (stop_context::stop_context): Rename from save_stop_context.
1628         (stop_context::~stop_context): Rename from
1629         release_stop_context_cleanup.
1630         (normal_stop): Update.
1631         (stop_context::changed): Rename from stop_context_changed.  Return
1632         bool.
1633
1634 2018-09-17  Tom Tromey  <tom@tromey.com>
1635
1636         * inferior.h (struct infcall_suspend_state_deleter): New.
1637         (infcall_suspend_state_up): New typedef.
1638         (struct infcall_control_state_deleter): New.
1639         (infcall_control_state_up): New typedef.
1640         (make_cleanup_restore_infcall_suspend_state)
1641         (make_cleanup_restore_infcall_control_state): Don't declare.
1642         * infcall.c (call_function_by_hand_dummy): Update.
1643         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1644         (make_cleanup_restore_infcall_suspend_state): Remove.
1645         (do_restore_infcall_control_state_cleanup)
1646         (make_cleanup_restore_infcall_control_state): Remove.
1647
1648 2018-09-17  Tom Tromey  <tom@tromey.com>
1649
1650         * gdbthread.h (struct thread_control_state): Add initializer.
1651         (class thread_info) <control>: Remove initializer.
1652         * inferior.h (struct inferior_control_state): Add initializer.
1653         (class inferior) <control>: Remove initializer.
1654         (exit_inferior_1): Update.
1655         * infrun.c (struct infcall_control_state): Add constructors.
1656         (save_infcall_control_state): Use new.
1657         (restore_infcall_control_state, discard_infcall_control_state):
1658         Use delete.
1659
1660 2018-09-17  Tom Tromey  <tom@tromey.com>
1661
1662         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1663         unique_ptr.
1664         <siginfo_data>: Now a unique_xmalloc_ptr.
1665         (save_infcall_suspend_state, restore_infcall_suspend_state)
1666         (discard_infcall_suspend_state)
1667         (get_infcall_suspend_state_regcache): Update.
1668
1669 2018-09-17  Tom Tromey  <tom@tromey.com>
1670
1671         * gdbthread.h (struct thread_suspend_state): Add initializers.
1672         (class thread_info) <suspend>: Remove initializer.
1673         * infrun.c (struct infcall_suspend_state): Add initializers.
1674         (save_infcall_suspend_state): Use new.
1675         (discard_infcall_suspend_state): Use delete.
1676
1677 2018-09-16  Tom Tromey  <tom@tromey.com>
1678
1679         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1680         Remove.
1681         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1682         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1683         (py_varobj_iter_new): Likewise.
1684         (py_varobj_get_iterator): Use gdbpy_ref.
1685
1686 2018-09-16  Tom Tromey  <tom@tromey.com>
1687
1688         * python/py-threadevent.c (py_get_event_thread): Simplify.
1689         * python/py-inferior.c (infpy_thread_from_thread_handle):
1690         Return immediately after calling thread_to_thread_object.  Use
1691         Py_RETURN_NONE.
1692         (thread_to_thread_object): Set the exception on a NULL return.
1693
1694 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1695
1696         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1697
1698 2018-09-16  Tom Tromey  <tom@tromey.com>
1699
1700         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1701         Remove.
1702
1703 2018-09-16  Tom Tromey  <tom@tromey.com>
1704
1705         * python/python-internal.h (thread_to_thread_object): Change
1706         return type.
1707         * python/py-inferior.c (thread_to_thread_object): Return a new
1708         reference.
1709         (infpy_thread_from_thread_handle): Update.
1710         * python/py-infthread.c (gdbpy_selected_thread): Update.
1711         * python/py-stopevent.c (create_stop_event_object): Update.
1712         * python/py-threadevent.c (py_get_event_thread): Return a new
1713         reference.
1714         (py_get_event_thread): Update.
1715         * python/py-event.h (py_get_event_thread): Change return type.
1716         * python/py-continueevent.c (create_continue_event_object):
1717         Update.
1718
1719 2018-09-16  Tom Tromey  <tom@tromey.com>
1720
1721         * python/py-progspace.c (pspy_get_objfiles): Update.
1722         * python/python-internal.h (objfile_to_objfile_object): Change
1723         return type.
1724         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1725         Update.
1726         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1727         Update.
1728         * python/python.c (gdbpy_get_current_objfile): Update.
1729         (gdbpy_objfiles): Update.
1730         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1731         Update.
1732         (objfile_to_objfile_object): Return a new reference.
1733         * python/py-symtab.c (stpy_get_objfile): Update.
1734         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1735         Update.
1736
1737 2018-09-16  Tom Tromey  <tom@tromey.com>
1738
1739         * python/py-inferior.c (infpy_get_progspace): Update.
1740         * python/python-internal.h (pspace_to_pspace_object): Change
1741         return type.
1742         * python/py-newobjfileevent.c
1743         (create_clear_objfiles_event_object): Update.
1744         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1745         Update.
1746         * python/python.c (gdbpy_get_current_progspace): Update.
1747         (gdbpy_progspaces): Update.
1748         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1749         reference.
1750         * python/py-objfile.c (objfpy_get_progspace): Update.
1751         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1752         Update.
1753
1754 2018-09-16  Tom Tromey  <tom@tromey.com>
1755
1756         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1757         (solib_name, block_for_pc, find_pc_line): New functions.
1758         (execute_unwinders): Update.
1759         * python/py-block.c (gdbpy_block_for_pc): Remove.
1760         * python/py-inferior.c (infpy_get_progspace): New function.
1761         (inferior_object_getset) <progspace>: Add.
1762         * python/py-progspace.c (pspy_objfiles): Rewrite.
1763         (pspy_solib_name, pspy_block_for_pc)
1764         (pspy_find_pc_line, pspy_is_valid): New functions.
1765         (progspace_object_methods): Add entries for solib_name,
1766         block_for_pc, find_pc_line, is_valid.
1767         * python/python-internal.h (gdbpy_block_for_pc)
1768         (build_objfiles_list): Don't declare.
1769         * python/python.c: Don't include solib.h.
1770         (gdbpy_solib_name, gdbpy_find_pc_line)
1771         (gdbpy_get_current_progspace, build_objfiles_list)
1772         (gdbpy_objfiles): Remove.
1773         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1774         solib_name, find_pc_line>: Remove entries.
1775
1776 2018-09-16  Tom Tromey  <tom@tromey.com>
1777
1778         * top.c (new_ui_command): Use GNU style for metasyntactic
1779         variables.
1780         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1781         variables.
1782         * maint.c (maintenance_translate_address): Remove "<>" around
1783         text.
1784         * interps.c (interpreter_exec_cmd): Use GNU style for
1785         metasyntactic variables.
1786         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1787         metasyntactic variables.
1788         * tracepoint.c (tfind_range_command): Use GNU style for
1789         metasyntactic variables.
1790         (tfind_outside_command): Likewise.
1791         (_initialize_tracepoint): Likewise.
1792         * remote.c (extended_remote_target::create_inferior): Use GNU
1793         style for metasyntactic variables.
1794         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1795         metasyntactic variables.
1796         (adi_assign_command): Likewise.
1797
1798 2018-09-16  Tom Tromey  <tom@tromey.com>
1799
1800         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1801         metasyntactic variables.  Print message if no disassembler options
1802         are available.
1803
1804 2018-09-15  Tom Tromey  <tom@tromey.com>
1805
1806         * infcmd.c (get_inferior_args): Return const char *.
1807         * inferior.h (get_inferior_args): Return type now const.
1808         * linux-tdep.c (linux_fill_prpsinfo): Update.
1809         * procfs.c (procfs_target::make_corefile_notes): Update.
1810
1811 2018-09-07  Tom Tromey  <tom@tromey.com>
1812
1813         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1814         inside the TRY.
1815
1816 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1817
1818         * nios2-tdep.c (nios2_type_align): New.
1819         (nios2_gdb_arch_init): Install type_align hook.
1820
1821 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1822
1823         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1824         type that is neither object file owned, nor gdbarch owned.
1825         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1826         gdbarch is non-NULL.
1827         (alloc_type_instance): Allocate non-objfile owned types on the
1828         gdbarch obstack.
1829         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1830         using TYPE_ALLOC to ensure memory is allocated on the correct
1831         obstack.
1832         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1833         obstack, or the gdbarch obstack.
1834         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1835
1836 2018-09-14  Tom Tromey  <tom@tromey.com>
1837
1838         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1839         block.
1840
1841 2018-09-14  Tom Tromey  <tom@tromey.com>
1842
1843         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1844
1845 2018-09-13  Tom Tromey  <tom@tromey.com>
1846
1847         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1848         static.
1849
1850 2018-09-13  Tom Tromey  <tom@tromey.com>
1851
1852         * exec.c (try_open_exec_file): Use std::string.
1853
1854 2018-09-13  Tom Tromey  <tom@tromey.com>
1855
1856         * utils.h (gdb_bfd_errmsg): Return std::string.
1857         * exec.c (exec_file_attach): Update.
1858         * compile/compile-object-load.c (compile_object_load): Update.
1859         * utils.c (gdb_bfd_errmsg): Return std::string.
1860
1861 2018-09-13  Tom Tromey  <tom@tromey.com>
1862
1863         * procfs.c (struct procinfo_deleter): New.
1864         (procinfo_up): New typedef.
1865         (do_destroy_procinfo_cleanup): Remove.
1866         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1867
1868 2018-09-13  Tom Tromey  <tom@tromey.com>
1869
1870         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1871
1872 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1873 2018-09-13  Tom Tromey  <tom@tromey.com>
1874
1875         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1876         (pspy_get_objfiles): New function.
1877         (progspace_object_methods): New.
1878         (pspace_object_type): Add tp_methods callback.
1879         * python/python-internal.h (build_objfiles_list): New
1880         declaration.
1881         * python/python.c (build_objfiles_list): New function.
1882         (gdbpy_objfiles): Implement using build_objfiles_list.
1883         * NEWS: Mention the Progspace.objfiles method.
1884
1885 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1886
1887         * python/py-inferior.c (infpy_get_progspace): New function.
1888         (inferior_object_getset): Add progspace property.
1889         * NEWS: Mention the new property.
1890
1891 2018-09-13  Tom Tromey  <tom@tromey.com>
1892
1893         PR rust/23650:
1894         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1895
1896 2018-09-13  Tom Tromey  <tom@tromey.com>
1897
1898         PR rust/23626:
1899         * rust-lang.c (rust_enum_variant): Now static.
1900         (rust_empty_enum_p): New function.
1901         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1902         Handle empty enum.
1903
1904 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1905
1906         * python/py-inferior.c (infpy_repr): New.
1907         (inferior_object_type): Register infpy_repr.
1908         * python/py-objfile.c (objfpy_repr): New.
1909         (objfile_object_type): Register objfpy_repr.
1910
1911 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1912
1913         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1914
1915 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1916
1917         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1918         typo.
1919
1920 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1921
1922         * common/common-utils.c: Don't include '<sys/stat.h>'.
1923         (is_regular_file): Move to...
1924         * common/filestuff.c (is_regular_file): ... here.
1925         * common/common-utils.h (is_regular_file): Move to...
1926         * common/filestuff.h (is_regular_file): ... here.
1927
1928 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1929
1930         * skip.c (debug_skip): New variable.
1931         (skiplist_entry::do_skip_file_p): Add debug output.
1932         (skiplist_entry::do_skip_gfile_p): Likewise.
1933         (skiplist_entry::skip_function_p): Likewise.
1934         (_initialize_step_skip): Create debug command.
1935         * NEWS: Mention set/show debug skip.
1936
1937 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1938
1939         * darwin-nat.c (should_disable_startup_with_shell):
1940         New function.
1941         (darwin_nat_target::create_inferior): Add call.
1942
1943 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1944
1945         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1946         inf_port, msg_state>: Initialize.
1947         (struct darwin_thread_info) <signaled, single_step>: Change
1948         type and initialize.
1949         (struct darwin_thread_info) <event>: Initialize.
1950
1951 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1952
1953         PR gdb/23555
1954         PR gdb/23558
1955         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1956         guesses.
1957
1958 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1959
1960         Revert:
1961         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1962
1963         PR gdb/23555
1964         PR gdb/23558
1965         * gnulib/aclocal.m4: Regenerate.
1966         * gnulib/config.in: Regenerate.
1967         * gnulib/configure: Regenerate.
1968         * gnulib/import/Makefile.am: Update.
1969         * gnulib/import/Makefile.in: Update.
1970         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1971         * gnulib/import/_Noreturn.h: ... this.
1972         * gnulib/import/alloca.in.h: Update.
1973         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1974         * gnulib/import/arg-nonnull.h: ... this.
1975         * gnulib/import/assure.h: Update.
1976         * gnulib/import/at-func.c: Update.
1977         * gnulib/import/basename-lgpl.c: Update.
1978         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1979         * gnulib/import/c++defs.h: ... this.
1980         * gnulib/import/canonicalize-lgpl.c: Update.
1981         * gnulib/import/cdefs.h: Update.
1982         * gnulib/import/chdir-long.c: Update.
1983         * gnulib/import/chdir-long.h: Update.
1984         * gnulib/import/cloexec.c: Update.
1985         * gnulib/import/cloexec.h: Update.
1986         * gnulib/import/close.c: Update.
1987         * gnulib/import/closedir.c: Update.
1988         * gnulib/import/config.charset: Update.
1989         * gnulib/import/dirent-private.h: Update.
1990         * gnulib/import/dirent.in.h: Update.
1991         * gnulib/import/dirfd.c: Update.
1992         * gnulib/import/dirname-lgpl.c: Update.
1993         * gnulib/import/dirname.h: Update.
1994         * gnulib/import/dosname.h: Update.
1995         * gnulib/import/dup-safer-flag.c: Update.
1996         * gnulib/import/dup-safer.c: Update.
1997         * gnulib/import/dup.c: Update.
1998         * gnulib/import/dup2.c: Update.
1999         * gnulib/import/errno.in.h: Update.
2000         * gnulib/import/error.c: Update.
2001         * gnulib/import/error.h: Update.
2002         * gnulib/import/exitfail.c: Update.
2003         * gnulib/import/exitfail.h: Update.
2004         * gnulib/import/extra/update-copyright: Update.
2005         * gnulib/import/fchdir.c: Update.
2006         * gnulib/import/fcntl.c: Update.
2007         * gnulib/import/fcntl.in.h: Update.
2008         * gnulib/import/fd-hook.c: Update.
2009         * gnulib/import/fd-hook.h: Update.
2010         * gnulib/import/fd-safer-flag.c: Update.
2011         * gnulib/import/fd-safer.c: Update.
2012         * gnulib/import/fdopendir.c: Update.
2013         * gnulib/import/filename.h: Update.
2014         * gnulib/import/filenamecat-lgpl.c: Update.
2015         * gnulib/import/filenamecat.h: Update.
2016         * gnulib/import/flexmember.h: Update.
2017         * gnulib/import/float+.h: Update.
2018         * gnulib/import/float.c: Update.
2019         * gnulib/import/float.in.h: Update.
2020         * gnulib/import/fnmatch.c: Update.
2021         * gnulib/import/fnmatch.in.h: Update.
2022         * gnulib/import/fnmatch_loop.c: Update.
2023         * gnulib/import/fpucw.h: Update.
2024         * gnulib/import/frexp.c: Update.
2025         * gnulib/import/frexpl.c: Update.
2026         * gnulib/import/fstat.c: Update.
2027         * gnulib/import/fstatat.c: Update.
2028         * gnulib/import/getcwd-lgpl.c: Update.
2029         * gnulib/import/getcwd.c: Update.
2030         * gnulib/import/getdtablesize.c: Update.
2031         * gnulib/import/getlogin_r.c: Update.
2032         * gnulib/import/getprogname.c: Update.
2033         * gnulib/import/getprogname.h: Update.
2034         * gnulib/import/gettext.h: Update.
2035         * gnulib/import/gettimeofday.c: Update.
2036         * gnulib/import/glob-libc.h: Update.
2037         * gnulib/import/glob.c: Update.
2038         * gnulib/import/glob.in.h: Update.
2039         * gnulib/import/glob_internal.h: Update.
2040         * gnulib/import/glob_pattern_p.c: Update.
2041         * gnulib/import/globfree.c: Update.
2042         * gnulib/import/hard-locale.c: Update.
2043         * gnulib/import/hard-locale.h: Update.
2044         * gnulib/import/intprops.h: Update.
2045         * gnulib/import/inttypes.in.h: Update.
2046         * gnulib/import/isnan.c: Update.
2047         * gnulib/import/isnand-nolibm.h: Update.
2048         * gnulib/import/isnand.c: Update.
2049         * gnulib/import/isnanl-nolibm.h: Update.
2050         * gnulib/import/isnanl.c: Update.
2051         * gnulib/import/itold.c: Update.
2052         * gnulib/import/libc-config.h: Update.
2053         * gnulib/import/limits.in.h: Update.
2054         * gnulib/import/localcharset.c: Update.
2055         * gnulib/import/localcharset.h: Update.
2056         * gnulib/import/localtime-buffer.c: Update.
2057         * gnulib/import/localtime-buffer.h: Update.
2058         * gnulib/import/lstat.c: Update.
2059         * gnulib/import/m4/00gnulib.m4: Update.
2060         * gnulib/import/m4/__inline.m4: Update.
2061         * gnulib/import/m4/absolute-header.m4: Update.
2062         * gnulib/import/m4/alloca.m4: Update.
2063         * gnulib/import/m4/builtin-expect.m4: Update.
2064         * gnulib/import/m4/canonicalize.m4: Update.
2065         * gnulib/import/m4/chdir-long.m4: Update.
2066         * gnulib/import/m4/close.m4: Update.
2067         * gnulib/import/m4/closedir.m4: Update.
2068         * gnulib/import/m4/configmake.m4: Update.
2069         * gnulib/import/m4/d-ino.m4: Update.
2070         * gnulib/import/m4/d-type.m4: Update.
2071         * gnulib/import/m4/dirent_h.m4: Update.
2072         * gnulib/import/m4/dirfd.m4: Update.
2073         * gnulib/import/m4/dirname.m4: Update.
2074         * gnulib/import/m4/double-slash-root.m4: Update.
2075         * gnulib/import/m4/dup.m4: Update.
2076         * gnulib/import/m4/dup2.m4: Update.
2077         * gnulib/import/m4/eealloc.m4: Update.
2078         * gnulib/import/m4/environ.m4: Update.
2079         * gnulib/import/m4/errno_h.m4: Update.
2080         * gnulib/import/m4/error.m4: Update.
2081         * gnulib/import/m4/exponentd.m4: Update.
2082         * gnulib/import/m4/exponentl.m4: Update.
2083         * gnulib/import/m4/extensions.m4: Update.
2084         * gnulib/import/m4/extern-inline.m4: Update.
2085         * gnulib/import/m4/fchdir.m4: Update.
2086         * gnulib/import/m4/fcntl-o.m4: Update.
2087         * gnulib/import/m4/fcntl.m4: Update.
2088         * gnulib/import/m4/fcntl_h.m4: Update.
2089         * gnulib/import/m4/fdopendir.m4: Update.
2090         * gnulib/import/m4/filenamecat.m4: Update.
2091         * gnulib/import/m4/flexmember.m4: Update.
2092         * gnulib/import/m4/float_h.m4: Update.
2093         * gnulib/import/m4/fnmatch.m4: Update.
2094         * gnulib/import/m4/fnmatch_h.m4: Update.
2095         * gnulib/import/m4/fpieee.m4: Update.
2096         * gnulib/import/m4/frexp.m4: Update.
2097         * gnulib/import/m4/frexpl.m4: Update.
2098         * gnulib/import/m4/fstat.m4: Update.
2099         * gnulib/import/m4/fstatat.m4: Update.
2100         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2101         * gnulib/import/m4/getcwd-path-max.m4: Update.
2102         * gnulib/import/m4/getcwd.m4: Update.
2103         * gnulib/import/m4/getdtablesize.m4: Update.
2104         * gnulib/import/m4/getlogin.m4: Update.
2105         * gnulib/import/m4/getlogin_r.m4: Update.
2106         * gnulib/import/m4/getpagesize.m4: Update.
2107         * gnulib/import/m4/getprogname.m4: Update.
2108         * gnulib/import/m4/gettimeofday.m4: Update.
2109         * gnulib/import/m4/glibc21.m4: Update.
2110         * gnulib/import/m4/glob.m4: Update.
2111         * gnulib/import/m4/glob_h.m4: Update.
2112         * gnulib/import/m4/gnulib-cache.m4: Update.
2113         * gnulib/import/m4/gnulib-common.m4: Update.
2114         * gnulib/import/m4/gnulib-comp.m4: Update.
2115         * gnulib/import/m4/gnulib-tool.m4: Update.
2116         * gnulib/import/m4/hard-locale.m4: Update.
2117         * gnulib/import/m4/include_next.m4: Update.
2118         * gnulib/import/m4/inttypes-pri.m4: Update.
2119         * gnulib/import/m4/inttypes.m4: Update.
2120         * gnulib/import/m4/isnand.m4: Update.
2121         * gnulib/import/m4/isnanl.m4: Update.
2122         * gnulib/import/m4/largefile.m4: Update.
2123         * gnulib/import/m4/limits-h.m4: Update.
2124         * gnulib/import/m4/localcharset.m4: Update.
2125         * gnulib/import/m4/locale-fr.m4: Update.
2126         * gnulib/import/m4/locale-ja.m4: Update.
2127         * gnulib/import/m4/locale-zh.m4: Update.
2128         * gnulib/import/m4/localtime-buffer.m4: Update.
2129         * gnulib/import/m4/longlong.m4: Update.
2130         * gnulib/import/m4/lstat.m4: Update.
2131         * gnulib/import/m4/malloc.m4: Update.
2132         * gnulib/import/m4/malloca.m4: Update.
2133         * gnulib/import/m4/math_h.m4: Update.
2134         * gnulib/import/m4/mbrtowc.m4: Update.
2135         * gnulib/import/m4/mbsinit.m4: Update.
2136         * gnulib/import/m4/mbsrtowcs.m4: Update.
2137         * gnulib/import/m4/mbstate_t.m4: Update.
2138         * gnulib/import/m4/memchr.m4: Update.
2139         * gnulib/import/m4/memmem.m4: Update.
2140         * gnulib/import/m4/mempcpy.m4: Update.
2141         * gnulib/import/m4/memrchr.m4: Update.
2142         * gnulib/import/m4/mkdir.m4: Update.
2143         * gnulib/import/m4/mkstemp.m4: Update.
2144         * gnulib/import/m4/mmap-anon.m4: Update.
2145         * gnulib/import/m4/mode_t.m4: Update.
2146         * gnulib/import/m4/msvc-inval.m4: Update.
2147         * gnulib/import/m4/msvc-nothrow.m4: Update.
2148         * gnulib/import/m4/multiarch.m4: Update.
2149         * gnulib/import/m4/nocrash.m4: Update.
2150         * gnulib/import/m4/off_t.m4: Update.
2151         * gnulib/import/m4/onceonly.m4: Update.
2152         * gnulib/import/m4/open-cloexec.m4: Update.
2153         * gnulib/import/m4/open.m4: Update.
2154         * gnulib/import/m4/openat.m4: Update.
2155         * gnulib/import/m4/opendir.m4: Update.
2156         * gnulib/import/m4/pathmax.m4: Update.
2157         * gnulib/import/m4/rawmemchr.m4: Update.
2158         * gnulib/import/m4/readdir.m4: Update.
2159         * gnulib/import/m4/readlink.m4: Update.
2160         * gnulib/import/m4/realloc.m4: Update.
2161         * gnulib/import/m4/rename.m4: Update.
2162         * gnulib/import/m4/rewinddir.m4: Update.
2163         * gnulib/import/m4/rmdir.m4: Update.
2164         * gnulib/import/m4/save-cwd.m4: Update.
2165         * gnulib/import/m4/secure_getenv.m4: Update.
2166         * gnulib/import/m4/setenv.m4: Update.
2167         * gnulib/import/m4/signal_h.m4: Update.
2168         * gnulib/import/m4/ssize_t.m4: Update.
2169         * gnulib/import/m4/stat-time.m4: Update.
2170         * gnulib/import/m4/stat.m4: Update.
2171         * gnulib/import/m4/std-gnu11.m4: Update.
2172         * gnulib/import/m4/stdbool.m4: Update.
2173         * gnulib/import/m4/stddef_h.m4: Update.
2174         * gnulib/import/m4/stdint.m4: Update.
2175         * gnulib/import/m4/stdio_h.m4: Update.
2176         * gnulib/import/m4/stdlib_h.m4: Update.
2177         * gnulib/import/m4/strchrnul.m4: Update.
2178         * gnulib/import/m4/strdup.m4: Update.
2179         * gnulib/import/m4/strerror.m4: Update.
2180         * gnulib/import/m4/string_h.m4: Update.
2181         * gnulib/import/m4/strstr.m4: Update.
2182         * gnulib/import/m4/strtok_r.m4: Update.
2183         * gnulib/import/m4/sys_socket_h.m4: Update.
2184         * gnulib/import/m4/sys_stat_h.m4: Update.
2185         * gnulib/import/m4/sys_time_h.m4: Update.
2186         * gnulib/import/m4/sys_types_h.m4: Update.
2187         * gnulib/import/m4/tempname.m4: Update.
2188         * gnulib/import/m4/time_h.m4: Update.
2189         * gnulib/import/m4/unistd-safer.m4: Update.
2190         * gnulib/import/m4/unistd_h.m4: Update.
2191         * gnulib/import/m4/warn-on-use.m4: Update.
2192         * gnulib/import/m4/wchar_h.m4: Update.
2193         * gnulib/import/m4/wchar_t.m4: Update.
2194         * gnulib/import/m4/wctype_h.m4: Update.
2195         * gnulib/import/m4/wint_t.m4: Update.
2196         * gnulib/import/malloc.c: Update.
2197         * gnulib/import/malloc/scratch_buffer.h: Update.
2198         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2199         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2200         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2201         * gnulib/import/malloca.c: Update.
2202         * gnulib/import/malloca.h: Update.
2203         * gnulib/import/malloca.valgrind: Update.
2204         * gnulib/import/math.in.h: Update.
2205         * gnulib/import/mbrtowc.c: Update.
2206         * gnulib/import/mbsinit.c: Update.
2207         * gnulib/import/mbsrtowcs-impl.h: Update.
2208         * gnulib/import/mbsrtowcs-state.c: Update.
2209         * gnulib/import/mbsrtowcs.c: Update.
2210         * gnulib/import/memchr.c: Update.
2211         * gnulib/import/memmem.c: Update.
2212         * gnulib/import/mempcpy.c: Update.
2213         * gnulib/import/memrchr.c: Update.
2214         * gnulib/import/mkdir.c: Update.
2215         * gnulib/import/mkstemp.c: Update.
2216         * gnulib/import/msvc-inval.c: Update.
2217         * gnulib/import/msvc-inval.h: Update.
2218         * gnulib/import/msvc-nothrow.c: Update.
2219         * gnulib/import/msvc-nothrow.h: Update.
2220         * gnulib/import/open.c: Update.
2221         * gnulib/import/openat-die.c: Update.
2222         * gnulib/import/openat-priv.h: Update.
2223         * gnulib/import/openat-proc.c: Update.
2224         * gnulib/import/openat.c: Update.
2225         * gnulib/import/openat.h: Update.
2226         * gnulib/import/opendir.c: Update.
2227         * gnulib/import/pathmax.h: Update.
2228         * gnulib/import/pipe-safer.c: Update.
2229         * gnulib/import/rawmemchr.c: Update.
2230         * gnulib/import/readdir.c: Update.
2231         * gnulib/import/readlink.c: Update.
2232         * gnulib/import/realloc.c: Update.
2233         * gnulib/import/ref-add.sin: Update.
2234         * gnulib/import/ref-del.sin: Update.
2235         * gnulib/import/rename.c: Update.
2236         * gnulib/import/rewinddir.c: Update.
2237         * gnulib/import/rmdir.c: Update.
2238         * gnulib/import/same-inode.h: Update.
2239         * gnulib/import/save-cwd.c: Update.
2240         * gnulib/import/save-cwd.h: Update.
2241         * gnulib/import/scratch_buffer.h: Update.
2242         * gnulib/import/secure_getenv.c: Update.
2243         * gnulib/import/setenv.c: Update.
2244         * gnulib/import/signal.in.h: Update.
2245         * gnulib/import/stat-time.c: Update.
2246         * gnulib/import/stat-time.h: Update.
2247         * gnulib/import/stat-w32.c: Update.
2248         * gnulib/import/stat-w32.h: Update.
2249         * gnulib/import/stat.c: Update.
2250         * gnulib/import/stdbool.in.h: Update.
2251         * gnulib/import/stddef.in.h: Update.
2252         * gnulib/import/stdint.in.h: Update.
2253         * gnulib/import/stdio.in.h: Update.
2254         * gnulib/import/stdlib.in.h: Update.
2255         * gnulib/import/str-two-way.h: Update.
2256         * gnulib/import/strchrnul.c: Update.
2257         * gnulib/import/strdup.c: Update.
2258         * gnulib/import/streq.h: Update.
2259         * gnulib/import/strerror-override.c: Update.
2260         * gnulib/import/strerror-override.h: Update.
2261         * gnulib/import/strerror.c: Update.
2262         * gnulib/import/string.in.h: Update.
2263         * gnulib/import/stripslash.c: Update.
2264         * gnulib/import/strnlen1.c: Update.
2265         * gnulib/import/strnlen1.h: Update.
2266         * gnulib/import/strstr.c: Update.
2267         * gnulib/import/strtok_r.c: Update.
2268         * gnulib/import/sys_stat.in.h: Update.
2269         * gnulib/import/sys_time.in.h: Update.
2270         * gnulib/import/sys_types.in.h: Update.
2271         * gnulib/import/tempname.c: Update.
2272         * gnulib/import/tempname.h: Update.
2273         * gnulib/import/time.in.h: Update.
2274         * gnulib/import/unistd--.h: Update.
2275         * gnulib/import/unistd-safer.h: Update.
2276         * gnulib/import/unistd.in.h: Update.
2277         * gnulib/import/unsetenv.c: Update.
2278         * gnulib/import/verify.h: Update.
2279         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2280         * gnulib/import/wchar.in.h: Update.
2281         * gnulib/import/wctype.in.h: Update.
2282         * gnulib/import/xalloc-oversized.h: Update.
2283         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2284         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2285
2286 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2287
2288         * record-btrace.c (get_thread_current_frame): Remove
2289         old_inferior_ptid.
2290
2291 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2292
2293         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2294         with check_tag to 1 if and only if the type is tagged and the
2295         component being searched cannot been found in the current
2296         view. Otherwise, always call ada_to_fixed_type with
2297         check_tag to 0.
2298
2299 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2300
2301         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2302         declaration.
2303         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2304         * ada-varobj.c (ada_varobj_get_number_of_children,
2305         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2306
2307 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2308
2309         * ada-valprint.c (ada_value_print): Use type instead of
2310         enclosing type.
2311
2312 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2313
2314         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2315         an array of access to unconstrained array.
2316
2317 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2318
2319         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2320         (ada_check_typedef): Use it.
2321
2322 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2323
2324         * ada-varobj.c (ada_varobj_describe_struct_child)
2325         (ada_varobj_describe_child): Handle union case like struct one.
2326
2327 2018-09-10  Tom Tromey  <tom@tromey.com>
2328
2329         PR python/18380:
2330         * python/python.c (_initialize_python): Make example in "python"
2331         help work in Python 3.
2332
2333 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2334
2335         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2336         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2337         $(EXEEXT) to the script, as it is not a program.
2338
2339 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2340
2341         * python/py-prettyprint.c (pretty_print_one_value): Return
2342         gdbpy_ref<>.
2343         (print_string_repr): Adjust.
2344         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2345         * python/python-internal.h (apply_varobj_pretty_printer): Return
2346         gdbpy_ref<>.
2347         * varobj.c (varobj_value_get_print_value): Adjust.
2348
2349 2018-09-08  Tom Tromey  <tom@tromey.com>
2350
2351         PR python/16047:
2352         * python/py-prettyprint.c (pretty_print_one_value): Check for
2353         to_string method.
2354
2355 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2356
2357         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2358         replace_operator_with_call.
2359
2360 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2361
2362         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2363
2364 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2365
2366         * ada-typeprint.c (print_range): Print the bounds using TYPE
2367         rather than its TYPE_TARGET_TYPE.
2368
2369 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2370
2371         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2372         call to ada_to_fixed_value_create.
2373
2374 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2375
2376         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2377
2378 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2379
2380         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2381         by calls to error.
2382
2383 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2384
2385         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2386         Move update of loop variable "fi".
2387
2388 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2389
2390         * ada-lang.c (value_assign_to_component): In the case of
2391         big-endian targets, extract the bits of the given VAL
2392         using an src_offset of zero if container is not a scalar.
2393
2394 2018-09-06  Simon Ser  <contact@emersion.fr>
2395
2396         PR gdb/23105
2397         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2398         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2399         * fbsd-tdep.c (fbsd_make_note_desc): New.
2400         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2401         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2402         * target.h (enum target_object) Add FreeBSD-specific
2403         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2404
2405 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2406
2407         * compile/compile-c.h (generate_c_for_variable_locations):
2408         Change reference to pointer.
2409         * compile/compile-c-support.c (compile_program) <compute>:
2410         Likewise.
2411         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2412         (generate_c_for_for_one_variable): Likewise
2413         (generate_c_for_variable_locations): Likewise
2414         * compile/compile-c-types.c (compile_c_instance::convert_type):
2415         Likewise
2416         * compile/compile-cplus-symbols.c (convert_one_symbol):
2417         std::move the scope passed to enter_scope.
2418         * compile/compile-cplus-types.c
2419         (compile_cplus_instance::enter_scope): Make parameter
2420         rvalue-reference.
2421         (compile_cplus_instance::new_scope): Change reference to
2422         pointer.
2423         (compile_cplus_instance::convert_type): Likewise
2424         (compile_cplus_convert_typedef): std::move the scope passed to
2425         enter_scope.
2426         (compile_cplus_convert_struct_or_union): Likewise.
2427         (compile_cplus_convert_enum): Likewise.
2428         (compile_cplus_convert_namespace): Likewise.
2429         * compile/compile-cplus.h (compile_cplus_instance)
2430         <enter_scope>: Make parameter rvalue-reference.
2431         * compile/compile-internal.h (compile_instance)
2432         <get_cached_type>: Likewise
2433         * compile/compile-loc2c.c (push): Likewise
2434         (pushf): Likewise
2435         (unary): Likewise
2436         (binary): Likewise
2437         (print_label): Likewise
2438         (pushf_register_address): Likewise
2439         (pushf_register): Likewise
2440         (do_compile_dwarf_expr_to_c): Likewise
2441         (compile_dwarf_expr_to_c): Likewise
2442         (compile_dwarf_bounds_to_c): Likewise
2443         * compile/compile.c (compile_instance::get_cached_type):
2444         Likewise
2445         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2446         (compile_dwarf_bounds_to_c): Likewise
2447         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2448         (dwarf2_compile_property_to_c): Likewise
2449         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2450         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2451         Likewise
2452
2453 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2454
2455         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2456         * tui/tui-data.c (init_content_element): Don't initialize it.
2457
2458 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2459
2460         * tui/tui-data.h (struct tui_win_info)
2461         <detail::opaque>: Remove.
2462         * tui/tui-data.c (init_win_info): Remove assignment.
2463
2464 2018-09-05  Tom Tromey  <tom@tromey.com>
2465
2466         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2467         -Wformat-nonliteral.
2468         * target-float.c (host_float_ops<T>::to_string)
2469         (host_float_ops<T>::from_string): Use
2470         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2471         * configure: Rebuild.
2472
2473 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2474
2475         * printcmd.c (printf_c_string): Use
2476         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2477         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2478
2479 2018-09-05  Tom Tromey  <tom@tromey.com>
2480
2481         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2482
2483 2018-09-05  Tom de Vries  <tdevries@suse.de>
2484
2485         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2486         with resolve_abstract_p == true.
2487         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2488         defaulting to false. Propagate resolve_abstract_p to
2489         dwarf2_fetch_die_loc_sect_off.
2490         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2491         parameter, defaulting to false.
2492         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2493         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2494         parameter.
2495         * dwarf2read.h (struct die_info): Forward-declare.
2496         (die_info_ptr): New typedef.
2497         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2498
2499 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2500
2501         GDB 8.2 released.
2502
2503 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2504             Pedro Alves  <palves@redhat.com>
2505
2506         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2507         "aclocal-m4-deps.mk".  Include file here.
2508         $(srcdir)/aclocal.m4: Add "configure.ac".
2509         * gnulib/aclocal-m4-deps.mk: New file.
2510         * gnulib/update-gnulib.sh: Automatically update
2511         "aclocal-m4-deps.mk".
2512
2513 2018-09-04  Tom Tromey  <tom@tromey.com>
2514
2515         * configure: Rebuild.
2516         * configure.ac: Remove multi-ice code.
2517
2518 2018-09-04  Tom Tromey  <tom@tromey.com>
2519
2520         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2521         (ada-exp.o): Update.
2522
2523 2018-09-04  Tom Tromey  <tom@tromey.com>
2524
2525         * Makefile.in (printcmd.o, target-float.o): Remove.
2526         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2527
2528 2018-09-04  Tom Tromey  <tom@tromey.com>
2529
2530         * gnulib/Makefile.in: Remove obsolete comment.
2531         * Makefile.in: Remove obsolete comment.
2532
2533 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2534
2535         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2536         line with '+'.
2537
2538 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2539
2540         * riscv-tdep.c: Add 'prologue-value.h' include.
2541         (struct riscv_unwind_cache): New struct.
2542         (riscv_debug_unwinder): New global.
2543         (riscv_scan_prologue): Update arguments, capture register details
2544         from prologue scan.
2545         (riscv_skip_prologue): Reformat arguments line, move end of
2546         prologue calculation into riscv_scan_prologue.
2547         (riscv_frame_cache): Update return type, create
2548         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2549         details.
2550         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2551         (riscv_frame_prev_register): Use the trad_frame within the
2552         riscv_unwind_cache.
2553         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2554         flag.
2555
2556 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2557
2558         * trad-frame.h (trad_frame_set_realreg): Declare.
2559         (trad_frame_set_addr): Declare.
2560         * trad-frame.c (trad_frame_set_realreg): Define new function.
2561         (trad_frame_set_addr): Define new function.
2562         (trad_frame_set_reg_realreg): Use new function.
2563         (trad_frame_set_reg_addr): Use new function.
2564
2565 2018-09-01  Keith Seitz  <keiths@redhat.com>
2566
2567         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2568         pulongest instead of "%lld".
2569         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2570         ATTRIBUTE_UNUSED.
2571
2572 2018-08-31  Tom Tromey  <tom@tromey.com>
2573
2574         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2575         variant part type.
2576
2577 2018-08-31  Pedro Alves  <palves@redhat.com>
2578
2579         * gdbarch.h: Regenerate.
2580
2581 2018-08-31  Pedro Alves  <palves@redhat.com>
2582
2583         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2584         * target.h (Hardware watchpoint interfaces): Describe
2585         continuable/steppable/non-steppable watchpoints.
2586         * gdbarch.h, gdbarch.c: Regenerate.
2587
2588 2018-08-31  Pedro Alves  <palves@redhat.com>
2589
2590         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2591         Delete.
2592         * s390-linux-nat.c
2593         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2594         * target.h (target_ops::have_continuable_watchpoint): Delete.
2595         (target_have_continuable_watchpoint): Delete.
2596         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2597         * target-delegates.c: Regenerate.
2598
2599 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2600
2601         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2602         the files present in "gnulib/import/m4/".
2603
2604 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2605
2606         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2607         c.sw, c.swsp, and c.sdsp.
2608
2609 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2610
2611         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2612         (riscv_read_misa_reg): Don't cache value read into inferior data.
2613         (riscv_new_inferior_data): Delete.
2614         (riscv_inferior_data_cleanup): Delete.
2615         (riscv_inferior_data): Delete.
2616         (riscv_invalidate_inferior_data): Delete.
2617         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2618
2619 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2620
2621         * compile/compile-cplus-types.c
2622         (compile_cplus_instance::leave_scope): Take the address of scope
2623         object.
2624         (compile_cplus_instance::convert_qualified_base): Compare quals
2625         to 0.
2626
2627 2018-08-30  Keith Seitz  <keiths@redhat.com>
2628
2629         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2630         Use "%s" and host_address_to_string instead of "%p" in printf.
2631
2632 2018-08-29  Keith Seitz  <keiths@redhat.com>
2633
2634         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2635         and compile-cplus-types.c.
2636         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2637         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2638         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2639         Declare.
2640         * compile/compile-c-support.c: Include compile-cplus.h.
2641         (load_libcompile): Templatize.
2642         (get_compile_context): "New" function.
2643         (c_get_compile_context): Use get_compile_context.
2644         (cplus_get_compile_context): New function.
2645         (cplus_push_user_expression, cplus_pop_user_expression)
2646         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2647         (cplus_compute_program): Define new structs/functions.
2648         * compile/compile-cplus-symmbols.c: New file.
2649         * compile/compile-cplus-types.c: New file.
2650         * compile/compile-cplus.h: New file.
2651         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2652         Declare.
2653         * compile/compile-object-load.c (get_out_value_type): Use
2654         strncmp_iw when comparing symbol names.
2655         (compile_object_load): Add mst_bss and mst_data.
2656         * compile/compile.c (_initialize_compile): Remove
2657         -Wno-implicit-function-declaration from `compile_args'.
2658         * compile/gcc-cp-plugin.h: New file.
2659         * NEWS: Mention C++ compile support and new debug options.
2660
2661 2018-08-29  Keith Seitz  <keiths@redhat.com>
2662
2663         * linespec.c (collect_info::add_symbol): Make virtual.
2664         (struct symbol_searcher_collect_info): New struct.
2665         (symbol_searcher::find_all_symbols): New method.
2666         * symtab.h (class symbol_searcher): New class.
2667
2668 2018-08-29  Keith Seitz  <keiths@redhat.com>
2669
2670         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2671         Change to vector of block_symbol.  Update all users.
2672         (struct collect_info) <symbols>: Likewise.
2673         (collect_info::add_symbol): Take block_symbol as argument.
2674         Update all callers.
2675         (decode_compound_collector) <m_symbols>: Change type to vector
2676         of block_symbol.  Update all users.
2677         (decode_compound_collector::operator ()): Change parameter type
2678         to block_symbol.
2679         (find_method, find_function_symbols, find_linespec_symbols)
2680         (find_label_symbols_in_block, find_label_symbols): Change symbol
2681         vectors to block_symbol vectors.
2682         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2683         block_symbol.
2684
2685 2018-08-29  Keith Seitz  <keiths@redhat.com>
2686
2687         * linespec.c (symbolp): Remove typedef and VEC definitions.
2688         (bound_minimal_symbol_d): Likewise.
2689
2690 2018-08-29  Keith Seitz  <keiths@redhat.com>
2691
2692         * linespec.c (decode_compound_collector::decode_compound_collector):
2693         Remove initialization for `m_symtabs'.
2694         (decode_compound_collector::release_symbols): Change return type
2695         to std::vector.  Update all callers.
2696         (class decode_compound_collector) <m_symbols>: Change type to
2697         std::vector.
2698         (lookup_prefix_sym): Change return type to std::vector.  Update all
2699         callers.
2700         (compare_symbols): Remove.
2701         (std_compare_symbols): Rename to `compare_symbols'.
2702         (find_method): Change `sym_classes' parameter to std::vector.
2703         Update all callers.  Use std::sort to sort sym_classes.
2704         (find_linespec_symbols): Remove cleanup.
2705
2706 2018-08-29  Keith Seitz  <keiths@redhat.com>
2707
2708         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2709         std::vector.  Update all users.
2710         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2711         (struct collect_info) <minimal_symbols>: Likewise.
2712         (compare_msymbols): Return bool.  Change parameters to const
2713         bound_minimal_symbol references.
2714         (find_method, find_function_symbols, find_linespec_symbols): Change
2715         `minsyms' parameter to std::vector.  Update all callers.
2716
2717 2018-08-29  Keith Seitz  <keiths@redhat.com>
2718
2719         * linespec.c (struct linespec) <label_symbols>: Change type to
2720         std::vector.  Update all users.
2721         (find_label_symbols_in_block): Change `result' parameter to
2722         std::vector.  Update all callers.
2723         (find_label_symbols): Return std::vector.  Update all callers.
2724
2725 2018-08-29  Keith Seitz  <keiths@redhat.com>
2726
2727         * linespec.c (struct linespec) <function_symbols>: Change type to
2728         std::vector.  Update all users.
2729         (struct collect_info) <function_symbols>: Likewise.
2730         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2731         (std_compare_symbols): New function.
2732         (find_method, find_function_symbols, find_linespec_symbols)
2733         (find_label_symbols_in_block): Change `symbols' parameter to
2734         std::vector.  Update all callers.
2735         (find_label_symbols): Likewise for `function_symbols' and
2736         `label_funcs_ret'.
2737
2738 2018-08-29  Keith Seitz  <keiths@redhat.com>
2739
2740         * linespec.c (symtab_vector_up): Define.
2741         (struct linespec) <file_symtabs>: Change type to std::vector *.
2742         Update all uses.
2743         (struct collect_info) <file_symtabs>: Likewise.
2744         (collect_symtabs_from_filename): Return symtab_vector_up.
2745         Update all callers.
2746         (decode_objc): Remove cleanup.
2747         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2748         (symtab_collector::release_symtabs): Return symtab_vector_up.
2749         Update all callers.
2750         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2751         Update all users.
2752         (collect_symtabs_from_filename, symtabs_from_filename): Return
2753         symtab_vector_up.  Update all callers.
2754
2755 2018-08-29  Tom Tromey  <tom@tromey.com>
2756
2757         * csky-tdep.c (csky_analyze_prologue): Use
2758         core_addr_to_string_nz.
2759
2760 2018-08-29  Tom Tromey  <tom@tromey.com>
2761
2762         * windows-nat.c (struct xlate_exception) <them>: Change type to
2763         DWORD.
2764         (xlate): Fix formatting.  Remove last entry.
2765         (struct xlate_exception, xlate): Comment out.
2766         (windows_nat_target::resume): Use ranged for.
2767
2768 2018-08-29  Jim Wilson  <jimw@sifive.com>
2769
2770         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2771         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2772         of NT_PRFPREG.
2773         (riscv_linux_nat_target::store_registers): Likewise.
2774
2775 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2776
2777         PR gdb/23555
2778         PR gdb/23558
2779         * gnulib/aclocal.m4: Regenerate.
2780         * gnulib/config.in: Regenerate.
2781         * gnulib/configure: Regenerate.
2782         * gnulib/import/Makefile.am: Update.
2783         * gnulib/import/Makefile.in: Update.
2784         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2785         * gnulib/import/_Noreturn.h: ... this.
2786         * gnulib/import/alloca.in.h: Update.
2787         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2788         * gnulib/import/arg-nonnull.h: ... this.
2789         * gnulib/import/assure.h: Update.
2790         * gnulib/import/at-func.c: Update.
2791         * gnulib/import/basename-lgpl.c: Update.
2792         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2793         * gnulib/import/c++defs.h: ... this.
2794         * gnulib/import/canonicalize-lgpl.c: Update.
2795         * gnulib/import/cdefs.h: Update.
2796         * gnulib/import/chdir-long.c: Update.
2797         * gnulib/import/chdir-long.h: Update.
2798         * gnulib/import/cloexec.c: Update.
2799         * gnulib/import/cloexec.h: Update.
2800         * gnulib/import/close.c: Update.
2801         * gnulib/import/closedir.c: Update.
2802         * gnulib/import/config.charset: Update.
2803         * gnulib/import/dirent-private.h: Update.
2804         * gnulib/import/dirent.in.h: Update.
2805         * gnulib/import/dirfd.c: Update.
2806         * gnulib/import/dirname-lgpl.c: Update.
2807         * gnulib/import/dirname.h: Update.
2808         * gnulib/import/dosname.h: Update.
2809         * gnulib/import/dup-safer-flag.c: Update.
2810         * gnulib/import/dup-safer.c: Update.
2811         * gnulib/import/dup.c: Update.
2812         * gnulib/import/dup2.c: Update.
2813         * gnulib/import/errno.in.h: Update.
2814         * gnulib/import/error.c: Update.
2815         * gnulib/import/error.h: Update.
2816         * gnulib/import/exitfail.c: Update.
2817         * gnulib/import/exitfail.h: Update.
2818         * gnulib/import/extra/update-copyright: Update.
2819         * gnulib/import/fchdir.c: Update.
2820         * gnulib/import/fcntl.c: Update.
2821         * gnulib/import/fcntl.in.h: Update.
2822         * gnulib/import/fd-hook.c: Update.
2823         * gnulib/import/fd-hook.h: Update.
2824         * gnulib/import/fd-safer-flag.c: Update.
2825         * gnulib/import/fd-safer.c: Update.
2826         * gnulib/import/fdopendir.c: Update.
2827         * gnulib/import/filename.h: Update.
2828         * gnulib/import/filenamecat-lgpl.c: Update.
2829         * gnulib/import/filenamecat.h: Update.
2830         * gnulib/import/flexmember.h: Update.
2831         * gnulib/import/float+.h: Update.
2832         * gnulib/import/float.c: Update.
2833         * gnulib/import/float.in.h: Update.
2834         * gnulib/import/fnmatch.c: Update.
2835         * gnulib/import/fnmatch.in.h: Update.
2836         * gnulib/import/fnmatch_loop.c: Update.
2837         * gnulib/import/fpucw.h: Update.
2838         * gnulib/import/frexp.c: Update.
2839         * gnulib/import/frexpl.c: Update.
2840         * gnulib/import/fstat.c: Update.
2841         * gnulib/import/fstatat.c: Update.
2842         * gnulib/import/getcwd-lgpl.c: Update.
2843         * gnulib/import/getcwd.c: Update.
2844         * gnulib/import/getdtablesize.c: Update.
2845         * gnulib/import/getlogin_r.c: Update.
2846         * gnulib/import/getprogname.c: Update.
2847         * gnulib/import/getprogname.h: Update.
2848         * gnulib/import/gettext.h: Update.
2849         * gnulib/import/gettimeofday.c: Update.
2850         * gnulib/import/glob-libc.h: Update.
2851         * gnulib/import/glob.c: Update.
2852         * gnulib/import/glob.in.h: Update.
2853         * gnulib/import/glob_internal.h: Update.
2854         * gnulib/import/glob_pattern_p.c: Update.
2855         * gnulib/import/globfree.c: Update.
2856         * gnulib/import/hard-locale.c: Update.
2857         * gnulib/import/hard-locale.h: Update.
2858         * gnulib/import/intprops.h: Update.
2859         * gnulib/import/inttypes.in.h: Update.
2860         * gnulib/import/isnan.c: Update.
2861         * gnulib/import/isnand-nolibm.h: Update.
2862         * gnulib/import/isnand.c: Update.
2863         * gnulib/import/isnanl-nolibm.h: Update.
2864         * gnulib/import/isnanl.c: Update.
2865         * gnulib/import/itold.c: Update.
2866         * gnulib/import/libc-config.h: Update.
2867         * gnulib/import/limits.in.h: Update.
2868         * gnulib/import/localcharset.c: Update.
2869         * gnulib/import/localcharset.h: Update.
2870         * gnulib/import/localtime-buffer.c: Update.
2871         * gnulib/import/localtime-buffer.h: Update.
2872         * gnulib/import/lstat.c: Update.
2873         * gnulib/import/m4/00gnulib.m4: Update.
2874         * gnulib/import/m4/__inline.m4: Update.
2875         * gnulib/import/m4/absolute-header.m4: Update.
2876         * gnulib/import/m4/alloca.m4: Update.
2877         * gnulib/import/m4/builtin-expect.m4: Update.
2878         * gnulib/import/m4/canonicalize.m4: Update.
2879         * gnulib/import/m4/chdir-long.m4: Update.
2880         * gnulib/import/m4/close.m4: Update.
2881         * gnulib/import/m4/closedir.m4: Update.
2882         * gnulib/import/m4/configmake.m4: Update.
2883         * gnulib/import/m4/d-ino.m4: Update.
2884         * gnulib/import/m4/d-type.m4: Update.
2885         * gnulib/import/m4/dirent_h.m4: Update.
2886         * gnulib/import/m4/dirfd.m4: Update.
2887         * gnulib/import/m4/dirname.m4: Update.
2888         * gnulib/import/m4/double-slash-root.m4: Update.
2889         * gnulib/import/m4/dup.m4: Update.
2890         * gnulib/import/m4/dup2.m4: Update.
2891         * gnulib/import/m4/eealloc.m4: Update.
2892         * gnulib/import/m4/environ.m4: Update.
2893         * gnulib/import/m4/errno_h.m4: Update.
2894         * gnulib/import/m4/error.m4: Update.
2895         * gnulib/import/m4/exponentd.m4: Update.
2896         * gnulib/import/m4/exponentl.m4: Update.
2897         * gnulib/import/m4/extensions.m4: Update.
2898         * gnulib/import/m4/extern-inline.m4: Update.
2899         * gnulib/import/m4/fchdir.m4: Update.
2900         * gnulib/import/m4/fcntl-o.m4: Update.
2901         * gnulib/import/m4/fcntl.m4: Update.
2902         * gnulib/import/m4/fcntl_h.m4: Update.
2903         * gnulib/import/m4/fdopendir.m4: Update.
2904         * gnulib/import/m4/filenamecat.m4: Update.
2905         * gnulib/import/m4/flexmember.m4: Update.
2906         * gnulib/import/m4/float_h.m4: Update.
2907         * gnulib/import/m4/fnmatch.m4: Update.
2908         * gnulib/import/m4/fnmatch_h.m4: Update.
2909         * gnulib/import/m4/fpieee.m4: Update.
2910         * gnulib/import/m4/frexp.m4: Update.
2911         * gnulib/import/m4/frexpl.m4: Update.
2912         * gnulib/import/m4/fstat.m4: Update.
2913         * gnulib/import/m4/fstatat.m4: Update.
2914         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2915         * gnulib/import/m4/getcwd-path-max.m4: Update.
2916         * gnulib/import/m4/getcwd.m4: Update.
2917         * gnulib/import/m4/getdtablesize.m4: Update.
2918         * gnulib/import/m4/getlogin.m4: Update.
2919         * gnulib/import/m4/getlogin_r.m4: Update.
2920         * gnulib/import/m4/getpagesize.m4: Update.
2921         * gnulib/import/m4/getprogname.m4: Update.
2922         * gnulib/import/m4/gettimeofday.m4: Update.
2923         * gnulib/import/m4/glibc21.m4: Update.
2924         * gnulib/import/m4/glob.m4: Update.
2925         * gnulib/import/m4/glob_h.m4: Update.
2926         * gnulib/import/m4/gnulib-cache.m4: Update.
2927         * gnulib/import/m4/gnulib-common.m4: Update.
2928         * gnulib/import/m4/gnulib-comp.m4: Update.
2929         * gnulib/import/m4/gnulib-tool.m4: Update.
2930         * gnulib/import/m4/hard-locale.m4: Update.
2931         * gnulib/import/m4/include_next.m4: Update.
2932         * gnulib/import/m4/inttypes-pri.m4: Update.
2933         * gnulib/import/m4/inttypes.m4: Update.
2934         * gnulib/import/m4/isnand.m4: Update.
2935         * gnulib/import/m4/isnanl.m4: Update.
2936         * gnulib/import/m4/largefile.m4: Update.
2937         * gnulib/import/m4/limits-h.m4: Update.
2938         * gnulib/import/m4/localcharset.m4: Update.
2939         * gnulib/import/m4/locale-fr.m4: Update.
2940         * gnulib/import/m4/locale-ja.m4: Update.
2941         * gnulib/import/m4/locale-zh.m4: Update.
2942         * gnulib/import/m4/localtime-buffer.m4: Update.
2943         * gnulib/import/m4/longlong.m4: Update.
2944         * gnulib/import/m4/lstat.m4: Update.
2945         * gnulib/import/m4/malloc.m4: Update.
2946         * gnulib/import/m4/malloca.m4: Update.
2947         * gnulib/import/m4/math_h.m4: Update.
2948         * gnulib/import/m4/mbrtowc.m4: Update.
2949         * gnulib/import/m4/mbsinit.m4: Update.
2950         * gnulib/import/m4/mbsrtowcs.m4: Update.
2951         * gnulib/import/m4/mbstate_t.m4: Update.
2952         * gnulib/import/m4/memchr.m4: Update.
2953         * gnulib/import/m4/memmem.m4: Update.
2954         * gnulib/import/m4/mempcpy.m4: Update.
2955         * gnulib/import/m4/memrchr.m4: Update.
2956         * gnulib/import/m4/mkdir.m4: Update.
2957         * gnulib/import/m4/mkstemp.m4: Update.
2958         * gnulib/import/m4/mmap-anon.m4: Update.
2959         * gnulib/import/m4/mode_t.m4: Update.
2960         * gnulib/import/m4/msvc-inval.m4: Update.
2961         * gnulib/import/m4/msvc-nothrow.m4: Update.
2962         * gnulib/import/m4/multiarch.m4: Update.
2963         * gnulib/import/m4/nocrash.m4: Update.
2964         * gnulib/import/m4/off_t.m4: Update.
2965         * gnulib/import/m4/onceonly.m4: Update.
2966         * gnulib/import/m4/open-cloexec.m4: Update.
2967         * gnulib/import/m4/open.m4: Update.
2968         * gnulib/import/m4/openat.m4: Update.
2969         * gnulib/import/m4/opendir.m4: Update.
2970         * gnulib/import/m4/pathmax.m4: Update.
2971         * gnulib/import/m4/rawmemchr.m4: Update.
2972         * gnulib/import/m4/readdir.m4: Update.
2973         * gnulib/import/m4/readlink.m4: Update.
2974         * gnulib/import/m4/realloc.m4: Update.
2975         * gnulib/import/m4/rename.m4: Update.
2976         * gnulib/import/m4/rewinddir.m4: Update.
2977         * gnulib/import/m4/rmdir.m4: Update.
2978         * gnulib/import/m4/save-cwd.m4: Update.
2979         * gnulib/import/m4/secure_getenv.m4: Update.
2980         * gnulib/import/m4/setenv.m4: Update.
2981         * gnulib/import/m4/signal_h.m4: Update.
2982         * gnulib/import/m4/ssize_t.m4: Update.
2983         * gnulib/import/m4/stat-time.m4: Update.
2984         * gnulib/import/m4/stat.m4: Update.
2985         * gnulib/import/m4/std-gnu11.m4: Update.
2986         * gnulib/import/m4/stdbool.m4: Update.
2987         * gnulib/import/m4/stddef_h.m4: Update.
2988         * gnulib/import/m4/stdint.m4: Update.
2989         * gnulib/import/m4/stdio_h.m4: Update.
2990         * gnulib/import/m4/stdlib_h.m4: Update.
2991         * gnulib/import/m4/strchrnul.m4: Update.
2992         * gnulib/import/m4/strdup.m4: Update.
2993         * gnulib/import/m4/strerror.m4: Update.
2994         * gnulib/import/m4/string_h.m4: Update.
2995         * gnulib/import/m4/strstr.m4: Update.
2996         * gnulib/import/m4/strtok_r.m4: Update.
2997         * gnulib/import/m4/sys_socket_h.m4: Update.
2998         * gnulib/import/m4/sys_stat_h.m4: Update.
2999         * gnulib/import/m4/sys_time_h.m4: Update.
3000         * gnulib/import/m4/sys_types_h.m4: Update.
3001         * gnulib/import/m4/tempname.m4: Update.
3002         * gnulib/import/m4/time_h.m4: Update.
3003         * gnulib/import/m4/unistd-safer.m4: Update.
3004         * gnulib/import/m4/unistd_h.m4: Update.
3005         * gnulib/import/m4/warn-on-use.m4: Update.
3006         * gnulib/import/m4/wchar_h.m4: Update.
3007         * gnulib/import/m4/wchar_t.m4: Update.
3008         * gnulib/import/m4/wctype_h.m4: Update.
3009         * gnulib/import/m4/wint_t.m4: Update.
3010         * gnulib/import/malloc.c: Update.
3011         * gnulib/import/malloc/scratch_buffer.h: Update.
3012         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3013         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3014         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3015         * gnulib/import/malloca.c: Update.
3016         * gnulib/import/malloca.h: Update.
3017         * gnulib/import/malloca.valgrind: Update.
3018         * gnulib/import/math.in.h: Update.
3019         * gnulib/import/mbrtowc.c: Update.
3020         * gnulib/import/mbsinit.c: Update.
3021         * gnulib/import/mbsrtowcs-impl.h: Update.
3022         * gnulib/import/mbsrtowcs-state.c: Update.
3023         * gnulib/import/mbsrtowcs.c: Update.
3024         * gnulib/import/memchr.c: Update.
3025         * gnulib/import/memmem.c: Update.
3026         * gnulib/import/mempcpy.c: Update.
3027         * gnulib/import/memrchr.c: Update.
3028         * gnulib/import/mkdir.c: Update.
3029         * gnulib/import/mkstemp.c: Update.
3030         * gnulib/import/msvc-inval.c: Update.
3031         * gnulib/import/msvc-inval.h: Update.
3032         * gnulib/import/msvc-nothrow.c: Update.
3033         * gnulib/import/msvc-nothrow.h: Update.
3034         * gnulib/import/open.c: Update.
3035         * gnulib/import/openat-die.c: Update.
3036         * gnulib/import/openat-priv.h: Update.
3037         * gnulib/import/openat-proc.c: Update.
3038         * gnulib/import/openat.c: Update.
3039         * gnulib/import/openat.h: Update.
3040         * gnulib/import/opendir.c: Update.
3041         * gnulib/import/pathmax.h: Update.
3042         * gnulib/import/pipe-safer.c: Update.
3043         * gnulib/import/rawmemchr.c: Update.
3044         * gnulib/import/readdir.c: Update.
3045         * gnulib/import/readlink.c: Update.
3046         * gnulib/import/realloc.c: Update.
3047         * gnulib/import/ref-add.sin: Update.
3048         * gnulib/import/ref-del.sin: Update.
3049         * gnulib/import/rename.c: Update.
3050         * gnulib/import/rewinddir.c: Update.
3051         * gnulib/import/rmdir.c: Update.
3052         * gnulib/import/same-inode.h: Update.
3053         * gnulib/import/save-cwd.c: Update.
3054         * gnulib/import/save-cwd.h: Update.
3055         * gnulib/import/scratch_buffer.h: Update.
3056         * gnulib/import/secure_getenv.c: Update.
3057         * gnulib/import/setenv.c: Update.
3058         * gnulib/import/signal.in.h: Update.
3059         * gnulib/import/stat-time.c: Update.
3060         * gnulib/import/stat-time.h: Update.
3061         * gnulib/import/stat-w32.c: Update.
3062         * gnulib/import/stat-w32.h: Update.
3063         * gnulib/import/stat.c: Update.
3064         * gnulib/import/stdbool.in.h: Update.
3065         * gnulib/import/stddef.in.h: Update.
3066         * gnulib/import/stdint.in.h: Update.
3067         * gnulib/import/stdio.in.h: Update.
3068         * gnulib/import/stdlib.in.h: Update.
3069         * gnulib/import/str-two-way.h: Update.
3070         * gnulib/import/strchrnul.c: Update.
3071         * gnulib/import/strdup.c: Update.
3072         * gnulib/import/streq.h: Update.
3073         * gnulib/import/strerror-override.c: Update.
3074         * gnulib/import/strerror-override.h: Update.
3075         * gnulib/import/strerror.c: Update.
3076         * gnulib/import/string.in.h: Update.
3077         * gnulib/import/stripslash.c: Update.
3078         * gnulib/import/strnlen1.c: Update.
3079         * gnulib/import/strnlen1.h: Update.
3080         * gnulib/import/strstr.c: Update.
3081         * gnulib/import/strtok_r.c: Update.
3082         * gnulib/import/sys_stat.in.h: Update.
3083         * gnulib/import/sys_time.in.h: Update.
3084         * gnulib/import/sys_types.in.h: Update.
3085         * gnulib/import/tempname.c: Update.
3086         * gnulib/import/tempname.h: Update.
3087         * gnulib/import/time.in.h: Update.
3088         * gnulib/import/unistd--.h: Update.
3089         * gnulib/import/unistd-safer.h: Update.
3090         * gnulib/import/unistd.in.h: Update.
3091         * gnulib/import/unsetenv.c: Update.
3092         * gnulib/import/verify.h: Update.
3093         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3094         * gnulib/import/wchar.in.h: Update.
3095         * gnulib/import/wctype.in.h: Update.
3096         * gnulib/import/xalloc-oversized.h: Update.
3097         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3098         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3099
3100 2018-08-16  Gary Benson <gbenson@redhat.com>
3101
3102         PR gdb/13000:
3103         * gdb/main.c (captured_main_1): Exit with nonzero status
3104         in batch mode if the last command to be executed failed.
3105         * NEWS: Mention the above.
3106
3107 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3108
3109         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3110         end of warning message.
3111
3112 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3113
3114         PR gdb/22943:
3115         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3116         (aarch64_extract_return_value): Use
3117         aapcs_is_vfp_call_or_return_candidate.
3118         (aarch64_return_in_memory): Likewise.
3119         (aarch64_store_return_value): Likewise.
3120
3121 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3122
3123         * aarch64-tdep.c
3124         (aapcs_is_vfp_call_or_return_candidate): Make static
3125         (pass_in_v_or_stack): Remove function.
3126         (pass_in_v_vfp_candidate): New function.
3127         (aarch64_push_dummy_call): Check for float register candidates.
3128
3129 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3130
3131         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3132         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3133         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3134
3135 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3136
3137         PR build/23399
3138         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3139         (struct ipa_sym_addresses): Rename to...
3140         (struct ipa_sym_addresses_common): ... this.
3141         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3142
3143 2018-08-28  Tom Tromey  <tom@tromey.com>
3144
3145         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3146         (token_fifo): Now a std::vector.
3147         (yylex, c_parse): Update.
3148         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3149         (token_fifo): Now a std::vector.
3150         (yylex, d_parse): Update.
3151         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3152         (token_fifo): Now a std::vector.
3153         (yylex, go_parse): Update.
3154
3155 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3156
3157         * parser-defs.h (struct type_stack) <elements>: Change type to
3158         std::vector<union type_stack_elt>.
3159         <depth, size>: Remove.
3160         * parse.c (parse_exp_in_context_1): Adjust.
3161         (type_stack_reserve): Remove.
3162         (check_type_stack_depth): Remove.
3163         (insert_into_type_stack): Adjust to std::vector.
3164         (insert_type): Likewise.
3165         (push_type): Likewise.
3166         (push_type_int): Likewise.
3167         (insert_type_address_space): Likewise.
3168         (pop_type): Likewise.
3169         (pop_type_int): Likewise.
3170         (pop_typelist): Likewise.
3171         (pop_type_stack): Likewise.
3172         (append_type_stack): Likewise.
3173         (push_type_stack): Likewise.
3174         (get_type_stack): Likewise.
3175         (type_stack_cleanup): Likewise.
3176         (push_typelist): Likewise.
3177         (follow_types): Likewise.
3178         (_initialize_parse): Likewise.
3179
3180 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3181
3182         * NEWS: Mention csky target.
3183
3184 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3185             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3186             Don Breazeal  <donb@codesourcery.com>
3187
3188         * csky-linux-tdep.c: New file.
3189         * csky-tdep.c: Likewise.
3190         * csky-tdep.h: Likewise.
3191         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3192         csky-tdep.o.
3193         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3194         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3195         * configure.tgt: Add csky support.
3196
3197 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3198
3199         * python/py-framefilter.c (py_print_frame): Print frame architecture
3200         when printing on an MI output.
3201
3202 2018-08-27  Tom Tromey  <tom@tromey.com>
3203
3204         PR build/23087:
3205         * configure: Rebuild.
3206         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3207
3208 2018-08-27  Tom Tromey  <tom@tromey.com>
3209
3210         * aarch64-linux-tdep.c
3211         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3212         casts to int.
3213
3214 2018-08-27  Tom Tromey  <tom@tromey.com>
3215
3216         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3217         unsigned.
3218         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3219         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3220         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3221         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3222         unsigned.
3223
3224 2018-08-27  Tom Tromey  <tom@tromey.com>
3225
3226         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3227         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3228
3229 2018-08-27  Tom Tromey  <tom@tromey.com>
3230
3231         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3232         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3233         ULONGEST_MAX.
3234         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3235         ULONGEST_MAX.
3236         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3237         ULONGEST_MAX.
3238         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3239         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3240         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3241         ULONGEST_MAX.
3242         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3243         (ppc64_linux_sigaction_tramp_frame)
3244         (ppc32_linux_sighandler_tramp_frame)
3245         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3246         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3247         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3248         * mn10300-linux-tdep.c (am33_linux_sigframe)
3249         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3250         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3251         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3252         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3253         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3254         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3255         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3256         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3257         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3258         * microblaze-linux-tdep.c
3259         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3260         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3261         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3262         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3263         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3264         * common/common-types.h (ULONGEST_MAX): New define.
3265         (CORE_ADDR_MAX): Fix formatting.
3266         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3267         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3268         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3269         (arm_linux_rt_sigreturn_tramp_frame)
3270         (arm_eabi_linux_sigreturn_tramp_frame)
3271         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3272         (thumb2_eabi_linux_sigreturn_tramp_frame)
3273         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3274         (arm_linux_restart_syscall_tramp_frame)
3275         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3276         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3277         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3278         ULONGEST_MAX.
3279         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3280
3281 2018-08-27  Tom Tromey  <tom@tromey.com>
3282
3283         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3284         CORE_ADDR_MAX.
3285         * mips-tdep.c (mips_deal_with_atomic_sequence)
3286         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3287         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3288         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3289         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3290         CORE_ADDR_MAX.
3291         * aarch64-tdep.c (aarch64_software_single_step): Use
3292         CORE_ADDR_MAX.
3293
3294 2018-08-27  Tom Tromey  <tom@tromey.com>
3295
3296         * linespec.c (complete_linespec_component): Add cast to "char".
3297         * completer.c (completion_tracker::build_completion_result): Add
3298         cast to "char".
3299
3300 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3301
3302         * solist.h (struct solist, struct target_so_ops): Fix
3303         indentation.
3304
3305 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3306
3307         * ada-tasks.c (ada_task_info_s): Remove typedef.
3308         (DEF_VEC_O(ada_task_info_s)): Remove.
3309         (struct ada_tasks_inferior_data): Initialize fields.
3310         <task_list>: Make an std::vector.
3311         (get_ada_tasks_inferior_data): Allocate with new.
3312         (ada_get_task_number): Adjust.
3313         (get_task_number_from_id): Likewise.
3314         (valid_task_id): Likewise.
3315         (ada_get_task_info_from_ptid): Likewise.
3316         (iterate_over_live_ada_tasks): Likewise.
3317         (add_ada_task): Likewise.
3318         (read_known_tasks): Likewise.
3319         (ada_build_task_list): Likewise.
3320         (print_ada_task_info): Likewise.
3321         (info_task): Likewise.
3322         (task_command_1): Likewise.
3323
3324 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3325
3326         * ada-lang.c (add_angle_brackets): Return std::string.
3327
3328 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3329
3330         * python/py-threadevent.c (py_get_event_thread): Initialize
3331         pythread.
3332
3333 2018-08-24  Pedro Alves  <palves@redhat.com>
3334
3335         * python/py-bpevent.c (create_breakpoint_event_object): Use
3336         copy-initialization.
3337         * python/py-continueevent.c (emit_continue_event): Use
3338         copy-initialization.
3339         * python/py-exitedevent.c (create_exited_event_object): Return a
3340         gdbpy_ref<>.
3341         (emit_exited_event): Use copy-initialization.
3342         * python/py-inferior.c (python_new_inferior)
3343         (python_inferior_deleted, add_thread_object): Use
3344         copy-initialization.
3345         * python/py-infevents.c (create_inferior_call_event_object)
3346         (create_register_changed_event_object)
3347         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3348         (emit_inferior_call_event, emit_memory_changed_event)
3349         (emit_register_changed_event): Use copy-initialization.
3350         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3351         Return a gdbpy_ref<>.
3352         (emit_new_objfile_event): Use copy-initialization.
3353         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3354         (emit_clear_objfiles_event): Use copy-initialization.
3355         * python/py-signalevent.c (create_signal_event_object): Use
3356         copy-initialization.
3357         * python/py-threadevent.c (create_thread_event_object): Use
3358         copy-initialization.
3359
3360 2018-08-24  Pedro Alves  <palves@redhat.com>
3361             Simon Marchi  <simon.marchi@ericsson.com>
3362
3363         PR gdb/23379
3364         * python/py-continueevent.c: Include "gdbthread.h".
3365         (create_continue_event_object): Add intro comment.  Add 'ptid'
3366         parameter.  Use it to find thread to pass to
3367         create_thread_event_object.
3368         (emit_continue_event): Pass PTID down to
3369         create_continue_event_object.
3370         * python/py-event.h (py_get_event_thread): Declare.
3371         (create_thread_event_object): Remove default from 'thread'
3372         parameter.
3373         * python/py-stopevent.c (create_stop_event_object): Use
3374         py_get_event_thread.
3375         * python/py-threadevent.c (get_event_thread): Rename to ...
3376         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3377         and use it to find the thread.
3378         (create_thread_event_object): Assert that THREAD isn't null.
3379         Don't find the event thread here.
3380
3381 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3382
3383         * block.h (blockrange, blockranges): New struct declarations.
3384         (struct block): Add new field named `ranges'.
3385         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3386         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3387         macros for accessing ranges in struct block.
3388         (make_blockranges): New declaration.
3389         block.c (make_blockranges): New function.
3390         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3391         for block.
3392         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3393         * blockframe.c (cache_pc_function_block): New static global.
3394         (clear_pc_function_cache): Clear cache_pc_function_block.
3395         (find_pc_partial_function): Move comment to symtab.h.  Add
3396         support for non-contiguous blocks.
3397         * cli/cli-cmds.c (block.h): Include.
3398         (print_disassembly): Handle printing of non-contiguous blocks.
3399         (disassemble_current_function): Likewise.
3400         (disassemble_command): Likewise.
3401
3402         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3403         BLOCK_START.
3404         * blockframe.c (get_pc_function_start): Likewise.
3405         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3406         (gcc_symbol_address): Likewise.
3407         * compile/compile-object-run.c (compile_object_run): Likewise.
3408         * compile/compile.c (get_expr_block_and_pc): Likewise.
3409         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3410         (func_addr_to_tail_call_list): Likewise.
3411         * findvar.c (default_read_var_value): Likewise.
3412         * inline-frame.c (inline_frame_this_id): Likewise.
3413         (skip-inline_frames): Likewise.
3414         * infcmd.c (until_next_command): Likewise.
3415         * linespec.c (convert_linespec_to_sals): Likewise.
3416         * parse.c (parse_exp_in_context_1): Likewise.
3417         * printcmd.c (build_address_symbolic): likewise.
3418         (info_address_command): Likewise.
3419         symtab.c (find_function_start_sal): Likewise.
3420         (skip_prologue_sal): Likewise.
3421         (find_function_alias_target): Likewise.
3422         (find_gnu_ifunc): Likewise.
3423         * stack.c (find_frame_funname): Likewise.
3424         * symtab.c (fixup_symbol_section): Likewise.
3425         (find_function_start_sal): Likewise.
3426         (skip_prologue_sal): Likewsie.
3427         (find_function_alias_target): Likewise.
3428         (find_gnu_ifunc): Likewise.
3429         * tracepoint.c (info_scope_command): Likewise.
3430         * value.c (value_fn_field): Likewise.
3431
3432         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3433         in place of find_pc_partial_function.
3434         * blockframe.c (find_function_entry_range_from_pc): New function.
3435         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3436         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3437         for each range in a block.
3438
3439
3440 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3441
3442         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3443         incrementation.
3444
3445 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3446
3447         * solib-svr4.c (read_program_headers_from_bfd): Return
3448         gdb::optional<gdb::byte_vector>.
3449         (svr4_exec_displacement): Adjust.
3450
3451 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3452
3453         * solib-svr4.c (read_program_header): Return
3454         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3455         (find_program_interpreter): Return
3456         gdb::optional<gdb::byte_vector>.
3457         (scan_dyntag_auxv): Adjust.
3458         (enable_break): Adjust.
3459         (svr4_exec_displacement): Adjust.
3460
3461 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3462
3463         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3464         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3465
3466 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3467
3468         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3469         string_vprintf.
3470         * guile/scm-utils.c (gdbscm_printf): Likewise.
3471         * serial.c (serial_printf): Likewise.
3472         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3473
3474 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3475
3476         * stack.c (print_frame): Print frame architecture when printing on
3477         an MI output.
3478         * NEWS: Mention new "arch" attribute in frame output.
3479
3480 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3481
3482         * arch/aarch64.h (aarch64_regnum): Update comment.
3483
3484 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3485
3486         * NEWS: Add SVE to 8.2 section.
3487
3488 2018-08-21  Pedro Alves  <palves@redhat.com>
3489
3490         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3491         out from gdbscm_parse_function_args.
3492         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3493         gdbscm_parse_function_args_1.
3494
3495 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3496
3497         PR gdb/17816
3498         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3499         operator.
3500
3501 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3502
3503         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3504
3505 2018-08-19  Michael Spang  <spang@google.com>
3506
3507         PR gdb/11786
3508         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3509         for PT_TLS segments.
3510
3511 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3512
3513         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3514         dwarf_variable_value.
3515         * dwarf2-frame.c (class dwarf_expr_executor):
3516         Add override for dwarf_variable_value.
3517         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3518         (class symbol_needs_eval_context): Likewise.
3519         (indirect_synthetic_pointer): Add forward declaration.
3520         (sect_variable_value): New function.
3521         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3522         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3523         for DW_OP_GNU_variable_value.
3524
3525 2018-08-16  Tom Tromey  <tom@tromey.com>
3526
3527         * top.c (read_command_file): Update.
3528         (command_line_input): Remove "repeat" argument.
3529         * ada-lang.c (get_selections): Update.
3530         * linespec.c (decode_line_2): Update.
3531         * defs.h (command_line_input): Remove argument.
3532         * cli/cli-script.c (read_next_line): Update.
3533         * python/py-gdb-readline.c: Update.
3534
3535 2018-08-17  Tom Tromey  <tom@tromey.com>
3536
3537         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3538         command_line_input.
3539
3540 2018-08-15  Tom Tromey  <tom@tromey.com>
3541
3542         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3543
3544 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3545
3546         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3547         If used, use find_pc_partial_function to find address range
3548         to disassemble.
3549         * mi/mi-main.c (mi_cmd_list_features): Report
3550         "data-disassemble-a-option" feature.
3551         * NEWS: Mention new -data-disassemble option -a.
3552
3553 2018-08-13  Tom Tromey  <tom@tromey.com>
3554
3555         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3556
3557 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3558
3559         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3560         (aarch64_linux_collect_sve_regset): Likewise.
3561         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3562         * regcache.h (regcache_map_entry_size): New function.
3563
3564 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3565
3566         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3567         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3568         (SVE_HEADER_VL_LENGTH): Likewise.
3569         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3570         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3571         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3572         (SVE_HEADER_SIZE_OFFSET): Likewise.
3573         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3574         (SVE_HEADER_VL_OFFSET): Likewise.
3575         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3576         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3577         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3578         (SVE_HEADER_SIZE): Likewise.
3579         (aarch64_linux_core_read_vq): Add function.
3580         (aarch64_linux_core_read_description): Check for SVE section.
3581
3582 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3583
3584         * aarch64-fbsd-tdep.c
3585         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3586         collect_size.
3587         * aarch64-linux-tdep.c
3588         (aarch64_linux_iterate_over_regset_sections): Likewise.
3589         * alpha-linux-tdep.c
3590         (alpha_linux_iterate_over_regset_sections):
3591         * alpha-nbsd-tdep.c
3592         (alphanbsd_iterate_over_regset_sections): Likewise.
3593         * amd64-fbsd-tdep.c
3594         (amd64fbsd_iterate_over_regset_sections): Likewise.
3595         * amd64-linux-tdep.c
3596         (amd64_linux_iterate_over_regset_sections): Likewise.
3597         * arm-bsd-tdep.c
3598         (armbsd_iterate_over_regset_sections): Likewise.
3599         * arm-fbsd-tdep.c
3600         (arm_fbsd_iterate_over_regset_sections): Likewise.
3601         * arm-linux-tdep.c
3602         (arm_linux_iterate_over_regset_sections): Likewise.
3603         * corelow.c (get_core_registers_cb): Likewise.
3604         (core_target::fetch_registers): Likewise.
3605         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3606         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3607         * gdbarch.h (void): Regenerate.
3608         * gdbarch.sh: Add supply_size and collect_size.
3609         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3610         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3611         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3612         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3613         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3614         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3615         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3616         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3617         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3618         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3619         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3620         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3621         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3622         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3623         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3624         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3625         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3626         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3627         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3628         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3629         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3630         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3631         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3632         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3633         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3634         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3635         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3636         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3637         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3638         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3639
3640 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3641
3642         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3643         with string_printf.
3644
3645 2018-08-10  Keith Seitz  <keiths@redhat.com>
3646
3647         * compile/compile-c-support.c (add_code_header, add_code_footer):
3648         Move into policy class.
3649         (c_push_user_expression, pop_user_expression_nop)
3650         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3651         (compile_program): New host class.
3652         (c_compile_program): New typedef.
3653         (c_compute_porgram): Use c_compile_program.
3654
3655 2018-08-10  Keith Seitz  <keiths@redhat.com>
3656
3657         * compile/compile-internal.h (compile_instance::~compile_instance):
3658         Remove calls to htab_delete.
3659         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3660         * compile.c (compile_instance::compile_instance): Initialize
3661         htab unique pointers.
3662         (compile_instance::get_cached_type, compile_instance::insert_type)
3663         (compile_instance::error_symbol_once): Update for unique_ptr.
3664
3665 2018-08-10  Keith Seitz  <keiths@redhat.com>
3666
3667         * compile/compile-c-symbols.c (struct symbol_error)
3668         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3669         (compile_instance::insert_symbol_error)
3670         (compile_instance::error_symbol_once): Move to ...
3671         * compile/compile.c: ... here.
3672
3673 2018-08-10  Keith Seitz  <keiths@redhat.com>
3674
3675         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3676         instead of `new_compile_instance'.
3677         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3678         Update description.
3679         If the symbol error map is not initialized, create it.
3680         (generate_c_for_for_one_symbol): Do not check/initialize
3681         the symbol error map.
3682         * compile/compile-c-types.c (compile_c_instance): Make a class.
3683         Update all callers.
3684         (compile_instance::compile_instance): Initialize the type cache.
3685         (get_cached_type): New function.
3686         (insert_type): Update description.
3687         (compile_c_instance::m_default_cflags): Define.
3688         (convert_type): Update description.  Use get_cached_type.
3689         (delete_instance): Moved to destructor.
3690         (new_compile_instance): Moved to constructor.
3691         * compile/compile-c.h (compile_c_instance): Make class inheriting
3692         from compile_instance.
3693         <base>: Remove field.
3694         <type_map, symbol_err_map>: Move to base class.
3695         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3696         * compile/compile-internal.h (compile_instance): Make class.
3697         <type_map_t, symbol_err_map_t>: Define.
3698         <fe>: Rename to `m_gcc_fe'.
3699         <scope, block, gcc_target_options>: Add `m_' prefix.
3700         <m_type_map, m_symbol_err_map>: New fields, moved from
3701         compile_c_instance.
3702         <destroy>: Remove.
3703         (convert_type, new_compile_instance): Remove.
3704         * compile/compile.c (cleanup_compile_instance): Remove.
3705         (compile_to_object): Use unique_ptr to eliminate cleanups.
3706         (compile_instance::set_print_callback, compile_instance::version)
3707         (compile_instance::set_verbose)
3708         (compile_instance::set_driver_filename)
3709         (compile_instance::set_triplet_regexp)
3710         (compile_instance::set_arguments)
3711         (compile_instance::set_source_file)
3712         (compile_instance::compile): Define.
3713
3714 2018-08-10  Keith Seitz  <keiths@redhat.com>
3715
3716         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3717         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3718         gcc-c-fe.def to define C plugin.
3719         (delete_instance): Delete `c_plugin'.
3720         (new_compile_instance): Initialize `c_plugin'.
3721         * compile/compile-c.h: Include gcc_c_plugin.h.
3722         (struct compile_c_instance) <c_plugin>: New member.
3723         * gcc-c-plugin.h: New file.
3724         Update all callers with API change.
3725
3726 2018-08-10  Keith Seitz  <keiths@redhat.com>
3727
3728         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3729         (HFILES_NO_SRCDIR): ... to here.
3730         Add compile-internal.h and compile-c.h.
3731         * compile/compile-c-support.c: Include compile-c.h.
3732         * compile/compile-c-symbols.c: Include compile-c.h.
3733         (generate_c_for_variable_locations): Update comment.
3734         * compile/compile-c-types.c: Include compile-c.h.
3735         * compile/compile-c.h: New file -- moved C language declarations
3736         from other files here.
3737         * compile/compile-internal.h: Do not include hashtab.h or
3738         common/enum-flags.h.
3739         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3740         (gcc_convert_symbol, gcc_symbol_address)
3741         (generate_c_for_variable_locations, c_get_mode_for_size)
3742         (c_get_range_decl_name): Definitions moved to compile-c.h.
3743         * compile/compile-loc2c.c: Include compile-c.h.
3744
3745 2018-08-10  Keith Seitz  <keiths@redhat.com>
3746
3747         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3748         (c_symbol_substitution_name): ... this.
3749         Update all callers.
3750
3751 2018-08-10  Keith Seitz  <keiths@redhat.com>
3752
3753         * compile/compile-c-support.c (c_compute_program): Use
3754         unique_xmalloc_ptr to eliminate cleanup.
3755         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3756         Return a unique_xmalloc_ptr and eliminate cleanup.
3757         * compile/compile-internal.h (generate_c_for_variable_locations):
3758         Return unique_xmalloc_ptr and update description.
3759
3760 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3761
3762         * corelow.c (core_target::get_core_register_section): Rename
3763         min_size to section_min_size.
3764
3765 2018-08-09  Jim Wilson  <jimw@sifive.com>
3766
3767         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3768         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3769         * NEWS: Mention new GNU/Linux RISC-V target.
3770         * configure.host: Add riscv*-*-linux*.
3771         * configure.nat: Add riscv*.
3772         * configure.tgt: Add riscv*-*-linux*.
3773         * riscv-linux-nat.c: New file.
3774         * riscv-linux-tdep.c: New file.
3775
3776 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3777
3778         * infrun.c (resume): Make static, add forward declaration.
3779         (proceed): Update header comment.
3780         * infrun.h (resume): Delete declaration.
3781
3782 2018-08-09  Tom Tromey  <tom@tromey.com>
3783
3784         * riscv-tdep.h: Minor formatting fixes.
3785
3786 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3787
3788         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3789         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3790         (test_mkdir_recursive): Likewise.
3791         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3792
3793 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3794
3795         * valarith.c (value_subscripted_rvalue): If an array is not in
3796         memory, and we don't know the upper bound, then we can't know that
3797         the requested element exists or not.
3798
3799 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3800
3801         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3802         (target_options_to_string): Add comment.
3803
3804 2018-08-08  Tom Tromey  <tom@tromey.com>
3805
3806         * unittests/scoped_mmap-selftests.c: Check result of "write".
3807
3808 2018-08-08  Jim Wilson  <jimw@sifive.com>
3809
3810         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3811         (decode_register_index_short): New.
3812         (decode_j_type_insn, decode_cj_type_insn): New.
3813         (decode_b_type_insn, decode_cb_type_insn): New.
3814         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3815         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3816         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3817         is_c_sw_insn instead of is_sw_insn.
3818         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3819         (riscv_software_single_step): New.
3820         * riscv-tdep.h (riscv_software_single_step): Declare.
3821
3822         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3823         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3824
3825 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3826
3827         PR gdb/18050:
3828         * target.c (dispose_inferior): Don't dispose of inferiors that are
3829         already killed.
3830
3831 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3832
3833         * remote.c (remote_target::download_tracepoint): Change char* to
3834         const char*.
3835
3836 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3837
3838         * target.h (target_options_to_string): Return an std::string.
3839         * target.c (str_comma_list_concat_elem): Return void, use
3840         std::string.
3841         (do_option): Likewise.
3842         (target_options_to_string): Return an std::string.
3843         * linux-nat.c (linux_nat_target::wait): Adjust.
3844         * target-debug.h (target_debug_print_options): Adjust.
3845
3846 2018-08-07  Tom Tromey  <tom@tromey.com>
3847
3848         * Makefile.in (CPPFLAGS): New variable.
3849         (INTERNAL_CPPFLAGS): Use it.
3850
3851 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3852
3853         * NEWS: Mention the index cache.
3854
3855 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3856
3857         * common/pathstuff.h (get_standard_cache_dir): New.
3858         * common/pathstuff.c (get_standard_cache_dir): New.
3859         * build-id.h (build_id_to_string): New.
3860         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3861         DEBUG_STR_SUFFIX): Move to here.
3862         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3863         DEBUG_STR_SUFFIX): Move from there.
3864         (write_psymtabs_to_index): Make non-static, add basename
3865         parameter.  Write to temporary files, rename when done.
3866         (save_gdb_index_command): Adjust call to
3867         write_psymtabs_to_index.
3868         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3869         field.
3870         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3871         (get_gdb_index_contents_from_cache): New.
3872         (get_gdb_index_contents_from_cache_dwz): New.
3873         (dwarf2_initialize_objfile): Read index from cache.
3874         (dwarf2_build_psymtabs): Save to index.
3875         * dwarf-index-cache.h: New file.
3876         * dwarf-index-cache.c: New file.
3877         * dwarf-index-write.h: New file.
3878
3879 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3880
3881         * gnulib/aclocal.m4: Re-generate.
3882         * gnulib/config.in: Re-generate.
3883         * gnulib/configure: Re-generate.
3884         * gnulib/import/Makefile.am: Re-generate.
3885         * gnulib/import/Makefile.in: Re-generate.
3886         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3887         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3888         * gnulib/import/m4/mkdir.m4: New file.
3889         * gnulib/import/mkdir.c: New file.
3890         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3891         module.
3892
3893 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3894
3895         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3896         * common/scoped_mmap.c: New file.
3897         * common/scoped_mmap.h (destroy): New method.
3898         (~scoped_mmap, reset): Use destroy.
3899         (scoped_mmap): New move constructor.
3900         (mmap_file): New declaration.
3901         * unittests/scoped_mmap-selftests.c (test_normal,
3902         test_invalid_filename, run_tests): New functions.
3903         (_initialize_scoped_mmap_selftests): Register selftest.
3904
3905 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3906
3907         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3908         (read_gdb_index_from_buffer): ... this.  Remove section
3909         parameter, add buffer parameter.
3910         (get_gdb_index_contents_ftype,
3911         get_gdb_index_contents_dwz_ftype): New typedefs.
3912         (dwarf2_read_gdb_index): Add callback parameters to get the
3913         index contents.
3914         (get_gdb_index_contents_from_section): New.
3915         (dwarf2_initialize_objfile): Update call to
3916         dwarf2_read_gdb_index.
3917
3918 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3919
3920         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3921         (gdb_open_cloexec): Likewise.
3922         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3923         (commandline_from_pid): Likewise.
3924         (linux_xfer_osdata_threads): Likewise.
3925         (linux_xfer_osdata_fds): Likewise.
3926         * ada-lang.c (is_package_name): Likewise.
3927         * auxv.c (procfs_xfer_auxv): Likewise.
3928         * breakpoint.c (print_one_breakpoint_location): Use
3929         uiout::field_fmt.
3930         (print_one_catch_solib): Use string_printf.
3931         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3932         (add_pe_forwarded_sym): Likewise.
3933         * dwarf2read.c (create_type_unit_group): Likewise.
3934         (build_error_marker_type): Likewise.
3935         * infcall.c (get_function_name): Likewise.
3936         * valprint.c (print_converted_chars_to_obstack): Likewise.
3937         * xtensa-tdep.c (xtensa_register_type): Likewise.
3938
3939 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3940
3941         * remote.c (remote_target::download_tracepoint): Fix format
3942         string errors.
3943
3944 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3945
3946         * tracefile.c: Include common/byte-vector.h.
3947         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3948         with trace_regblock_size if needed.  Update uses of buf.
3949
3950 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3951
3952         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3953         std::vector<unsigned char>.
3954         * tracepoint.c (collection_list::collection_list): Remove
3955         m_regs_mask initializer from initializer list.  Resize
3956         m_regs_mask using the largest remote register number.
3957         (collection_list::add_remote_register): Remove size check on
3958         m_regs_mask.  Use at to access element.
3959         (collection_list::stringify): Change type of temp_buf to
3960         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3961         stringify the register mask.  Use pack_hex_byte for the register
3962         mask.
3963
3964 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3965
3966         * tracepoint.h (class collection_list) <add_register>: Remove.
3967         <add_remote_register, add_ax_registers, add_local_register>:
3968         Declare.
3969         <add_memrange>: Add scope parameter.
3970         * tracepoint.c (encode_actions_1): Likewise.
3971         (collection_list::add_register): Rename to ...
3972         (collection_list::add_remote_register): ... this.  Update
3973         comment.
3974         (collection_list::add_ax_registers, add_local_register): New
3975         methods.
3976         (collection_list::add_memrange): Add scope parameter.  Call
3977         add_local_register instead of add_register.
3978         (finalize_tracepoint_aexpr): New function.
3979         (collection_list::collect_symbol): Update calls to add_memrange.
3980         Call add_local_register instead of add_register.  Call
3981         add_ax_registers.  Call finalize_tracepoint_aexpr.
3982         (encode_actions_1): Get remote regnos for $reg action.  Call
3983         add_remote_register, add_ax_registers, and add_local_register.
3984         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3985         (validate_actionline): Call finalize_tracepoint_aexpr.
3986
3987 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3988
3989         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3990         Replace array buf with gdb::char_vector buf, of size
3991         get_remote_packet_size ().  Replace references to buf and
3992         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3993         and xsnprintf with snprintf.  Raise errors if the buffer is too
3994         small.
3995
3996 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3997
3998         * remote.c (remote_target::download_tracepoint): Fix the has_more
3999         predicate in the QTDP action list iteration.
4000
4001 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4002
4003         * remote.c (remote_target::download_tracepoint): Fix indentation
4004         in for block.
4005
4006 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4007
4008         * proc-api.c (_initialize_proc_api): Remove c, unused.
4009         * procfs.c (procfs_init_inferior): Remove signals, unused.
4010         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4011         unused.
4012
4013 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4014             Andrew Burgess  <andrew.burgess@embecosm.com>
4015
4016         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4017         'W_STOPCODE (0)' as this could be ambiguous.
4018
4019 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4020
4021         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4022         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4023         "ai_socktype").
4024
4025 2018-08-02  Tom Tromey  <tom@tromey.com>
4026
4027         PR symtab/16842.
4028         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4029         symbols.
4030         (process_structure_scope): Likewise.
4031
4032 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4033
4034         PR gdb/22629:
4035         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4036         kill inferior.
4037
4038 2018-08-02  Tom Tromey  <tom@tromey.com>
4039
4040         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4041         (darwin_suspend_inferior, darwin_resume_inferior)
4042         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4043         (darwin_check_new_threads): Check result of get_darwin_inferior.
4044
4045 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4046
4047         GDB 8.1.1 released.
4048
4049 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4050
4051         * varobj.c (varobj_get_path_expr_parent): Report an error if
4052         parent is a dynamic varobj.
4053
4054 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4055
4056         * gnulib/aclocal.m4: Re-generate.
4057         * gnulib/config.in: Re-generate.
4058         * gnulib/configure: Re-generate.
4059         * gnulib/import/Makefile.in: Re-generate.
4060         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4061         * gnulib/import/m4/onceonly.m4: Re-generate.
4062
4063 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4064
4065         * target-descriptions.c (struct xml_test_tdesc): New.
4066         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4067         (record_xml_tdesc): Update.
4068         (maintenance_check_xml_descriptions): Update.
4069         * target-descriptions.h (record_xml_tdesc): Update comment.
4070
4071 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4072
4073         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4074         checking array bounds are defined.
4075
4076 2018-07-30  Tom Tromey  <tom@tromey.com>
4077
4078         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4079         irreflexivity violation.
4080
4081 2018-07-30  Tom Tromey  <tom@tromey.com>
4082
4083         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4084         * value.c (unpack_long): Remove lint code.
4085         * valops.c (value_ind): Remove lint code.
4086         * valarith.c (value_x_binop, value_x_unop, value_equal)
4087         (value_pos): Remove lint code.
4088
4089 2018-07-28  Tom de Vries  <tdevries@suse.de>
4090
4091         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4092         with undefined upper bound as <optimized out>.
4093
4094 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4095
4096         * gcore.in: Rename variable "name" to "prefix".  Expand
4097         "usage" text.
4098
4099 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4100
4101         * windows-nat.c (windows_nat_target::create_inferior): Update to
4102         call close() in global namespace.
4103
4104 2018-07-26  Tom Tromey  <tom@tromey.com>
4105
4106         * dwarf-index-write.c (add_address_entry): Don't add objfile
4107         offsets.
4108         * dbxread.c (find_stab_function): Rename from
4109         find_stab_function_addr.  Return a bound_minimal_symbol.
4110         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4111         Don't add objfile offsets.
4112         (end_psymtab): Use raw_text_low, raw_text_high,
4113         MSYMBOL_VALUE_RAW_ADDRESS.
4114         (read_ofile_symtab): Update.
4115         (process_one_symbol): Update.
4116         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4117         offsets.
4118         (dw2_relocate): Remove.
4119         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4120         searching addrmap.
4121         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4122         Update.
4123         (process_psymtab_comp_unit_reader, add_partial_symbol)
4124         (add_partial_subprogram, dwarf2_ranges_read): Update.
4125         (load_partial_dies): Update.
4126         (add_address_entry): Don't add objfile offsets.
4127         (dwarf2_build_include_psymtabs): Update.
4128         (create_addrmap_from_aranges): Don't add objfile offsets.
4129         (dw2_find_pc_sect_compunit_symtab): Update.
4130         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4131         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4132         Update.
4133         (parse_partial_symbols): Don't add objfile offsets.  Use
4134         raw_text_low, raw_text_high.  Update.
4135         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4136         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4137         or call 'relocate' quick function.  Clear psymbol_map.
4138         * psympriv.h (struct partial_symbol) <address>: Add section
4139         offset.
4140         <set_unrelocated_address>: Rename from set_address.
4141         <raw_text_low, raw_text_high>: New methods.
4142         <text_low, text_high>: Add objfile parameter.
4143         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4144         set_unrelocated_address.
4145         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4146         (find_pc_psymbol): Update.
4147         (fixup_psymbol_section, relocate_psymtabs): Remove.
4148         (dump_psymtab, psym_functions): Update.
4149         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4150         parameter.
4151         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4152         (start_psymtab_common): Update.
4153         * symfile-debug.c (debug_qf_relocate): Remove.
4154         (debug_sym_quick_functions): Update.
4155         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4156         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4157         Update.
4158
4159 2018-07-26  Tom Tromey  <tromey@redhat.com>
4160
4161         * dbxread.c (end_psymtab): Use text_high_valid and
4162         text_low_valid.
4163         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4164         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4165         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4166         Update comment.
4167         <text_low_valid, text_high_valid>: New fields.
4168         <set_text_low, set_text_high>: Update.
4169         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4170
4171 2018-07-26  Tom Tromey  <tom@tromey.com>
4172
4173         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4174         Update.
4175         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4176         textlow and texthigh fields.
4177         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4178         Update.
4179         * mdebugread.c (parse_lines, parse_partial_symbols)
4180         (psymtab_to_symtab_1): Update.
4181         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4182         Rename fields.  Update comment.  Now private.
4183         <text_low, text_high, set_text_low, set_text_high>: New methods.
4184         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4185         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4186         (start_psymtab_common, maintenance_info_psymtabs)
4187         (maintenance_check_psymtabs): Update.
4188         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4189         texthigh fields.
4190         (scan_xcoff_symtab): Update.
4191
4192 2018-07-26  Tom Tromey  <tromey@redhat.com>
4193
4194         * psympriv.h (struct partial_symbol) <unrelocated_address,
4195         address, set_address>: New methods.
4196         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4197         (fixup_psymbol_section, relocate_psymtabs): Update.
4198         (print_partial_symbols): Add 'objfile' parameter.  Update.
4199         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4200         Update.
4201
4202 2018-07-26  Tom Tromey  <tom@tromey.com>
4203
4204         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4205         (debug_names::write_psymbols): Update.
4206         * psympriv.h (struct partial_symbol): Derive from
4207         general_symbol_info.
4208         <obj_section>: New method.
4209         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4210         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4211         (find_pc_sect_psymbol, fixup_psymbol_section)
4212         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4213         (print_partial_symbols, recursively_search_psymtabs)
4214         (compare_psymbols, psymbol_hash, psymbol_compare)
4215         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4216         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4217
4218 2018-07-26  Tom Tromey  <tromey@redhat.com>
4219
4220         * dbxread.c (end_psymtab): Remove dead code.
4221
4222 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4223
4224         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4225         DWARF unwinders are disabled.
4226         * dwarf2-frame.c: Add dwarf2read.h include.
4227         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4228         disabled.
4229         (dwarf2_frame_unwinders_enabled_p): Define.
4230         (show_dwarf_unwinders_enabled_p): New function.
4231         (_initialize_dwarf2_frame): Register switch to control DWARF
4232         unwinder use.
4233         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4234         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4235         (show_dwarf_cmdlist): Remove static keyword.
4236         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4237         (show_dwarf_cmdlist): Declare.
4238         * NEWS: Document new feature.
4239
4240 2018-07-26  Tom de Vries  <tdevries@suse.de>
4241
4242         PR breakpoints/23366
4243         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4244
4245 2018-07-26  Tom de Vries  <tdevries@suse.de>
4246
4247         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4248         DW_AT_count can't be translated to a dynamic prop.
4249
4250 2018-07-25  Tom de Vries  <tdevries@suse.de>
4251
4252         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4253         try/catch.
4254
4255 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4256
4257         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4258
4259 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4260
4261         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4262
4263 2018-07-24  Keith Seitz  <keiths@redhat.comt
4264
4265         PR symtab/23010
4266         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4267         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4268         instead of add_symbol_to_list.
4269         (read_file_scope): Call prepare_one_comp_unit before reading
4270         any other DIEs.
4271
4272 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4273
4274         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4275
4276 2018-07-24  Tom Tromey  <tom@tromey.com>
4277
4278         * utils.c (malloc, realloc, free): Don't declare.
4279         * configure, config.in: Rebuild.
4280         * configure.ac: Don't check for declarations of free, malloc, or
4281         realloc.
4282
4283 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4284
4285         * aarch64-linux-nat.c
4286         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4287         variable.
4288         * arm-linux-nat.c (fetch_regs): Likewise.
4289         (store_regs): Likewise.
4290         (fetch_vfp_regs): Likewise.
4291         (store_vfp_regs): Likewise.
4292         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4293         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4294         (arm_linux_nat_target::insert_watchpoint): Likewise.
4295         (arm_linux_nat_target::remove_watchpoint): Likewise.
4296         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4297         Likewise.
4298         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4299         Likewise.
4300         * ppc-linux-nat.c (fetch_register): Likewise.
4301         (fetch_all_gp_regs): Likewise.
4302         (fetch_ppc_registers): Likewise.
4303         (store_all_gp_regs): Likewise.
4304         (store_ppc_registers): Likewise.
4305         (hwdebug_insert_point): Likewise.
4306         (can_use_watchpoint_cond_accel): Likewise.
4307         * remote-sim.c (gdb_os_write_stdout): Likewise.
4308
4309 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4310             Tom Tromey  <tom@tromey.com>
4311
4312         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4313         test for it.
4314         * configure: Rebuild.
4315
4316 2018-07-22  Tom Tromey  <tom@tromey.com>
4317
4318         * regformats/regdat.sh: Define xmltarget_${name} inside
4319         #ifndef IN_PROCESS_AGENT.
4320
4321 2018-07-22  Tom Tromey  <tom@tromey.com>
4322
4323         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4324
4325 2018-07-22  Tom Tromey  <tom@tromey.com>
4326
4327         * symfile.c (reread_symbols): Notify iter, not objfile.
4328
4329 2018-07-22  Tom Tromey  <tom@tromey.com>
4330
4331         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4332         Use arch_ops.
4333         (ravenscar_thread_target::prepare_to_store): Likewise.
4334
4335 2018-07-22  Tom Tromey  <tom@tromey.com>
4336
4337         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4338         unused variable.  Call value_fetch_lazy when needed.
4339         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4340         Remove unused variable.  Call value_fetch_lazy when needed.
4341
4342 2018-07-22  Tom Tromey  <tom@tromey.com>
4343
4344         * m32c-tdep.c (mark_dma): Return void.
4345         (make_regs): Remove unused declarations.
4346
4347 2018-07-22  Tom Tromey  <tom@tromey.com>
4348
4349         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4350         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4351         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4352         bkscm_get_valid_block_smob_arg_unsafe for effect.
4353
4354 2018-07-22  Tom Tromey  <tom@tromey.com>
4355
4356         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4357         value_type.
4358
4359 2018-07-22  Tom Tromey  <tom@tromey.com>
4360
4361         * windows-nat.c (saved_context): Conditionally define.
4362         * remote.c (remote_target::remote_btrace_maybe_reopen):
4363         Conditionally declare "warned".
4364         * inflow.c (sigquit_ours): Conditionally define.
4365         (new_tty): Move "tty" declaration inside #if.
4366         * guile/guile.c (guile_datadir): Conditionally define.
4367         * charset.c (set_be_le_names): Move some declarations inside #if.
4368         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4369         #if.
4370         (parse_xml_btrace_conf): Likewise.
4371
4372 2018-07-22  Tom Tromey  <tom@tromey.com>
4373
4374         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4375
4376 2018-07-22  Tom Tromey  <tom@tromey.com>
4377
4378         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4379         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4380         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4381         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4382         * stack.c (frame_apply_level_command): Remove unused variable.
4383         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4384         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4385         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4386         unused variable.
4387         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4388         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4389         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4390         variable.
4391         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4392         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4393         variable.
4394         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4395         Remove unused variable.
4396         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4397         variable.
4398         * common/tdesc.c (print_xml_feature::visit): Remove unused
4399         variable.
4400         * compile/compile-object-load.c (store_regs): Remove unused
4401         variables.
4402         * complaints.c (clear_complaints): Remove unused variable.
4403         * corelow.c (core_target_open): Remove unused variable.
4404         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4405         variable.
4406         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4407         variable.
4408         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4409         variable.
4410         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4411         variable.
4412         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4413         variable.
4414         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4415         variable.
4416         * ia64-tdep.c (examine_prologue): Remove unused variable.
4417         * infcall.c (run_inferior_call): Remove unused variable.
4418         * inferior.c (exit_inferior): Remove unused variable.
4419         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4420         * linespec.c (decode_line_2): Remove unused variable.
4421         * linux-nat.c (super_close): Remove.
4422         * linux-tdep.c (linux_info_proc): Remove unused variable.
4423         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4424         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4425         Remove unused variable.
4426         * parse.c (find_minsym_type_and_address): Remove unused variable.
4427         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4428         variable.
4429         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4430         variable.
4431         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4432         variables.
4433         * record-btrace.c (record_btrace_target::store_registers): Remove
4434         unused variable.
4435         (cmd_show_record_btrace_cpu): Remove unused variable.
4436         * riscv-tdep.c (riscv_register_reggroup_p)
4437         (riscv_push_dummy_call, riscv_return_value): Remove unused
4438         variable.
4439         * rust-exp.y (literal): Remove unused variable.
4440         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4441         unused variable.
4442         <STRUCTOP_ANONYMOUS>: Likewise.
4443         * s390-linux-tdep.c (s390_linux_init_abi_31)
4444         (s390_linux_init_abi_64): Remove unused variable.
4445         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4446         (file_select_thread, net_windows_open, _initialize_ser_windows):
4447         Remove unused variables.
4448         * symtab.c (find_pc_sect_line): Remove unused variable.
4449         * target-memory.c (compute_garbled_blocks): Remove unused
4450         variable.
4451         (target_write_memory_blocks): Remove unused variable.
4452         * target.c (target_stack::unpush): Remove unused variables.
4453         * tracepoint.c (start_tracing, all_tracepoint_actions)
4454         (merge_uploaded_trace_state_variables)
4455         (print_one_static_tracepoint_marker): Remove unused variable.
4456         * unittests/basic_string_view/element_access/char/1.cc (test01):
4457         Remove unused variable.
4458         * windows-nat.c (windows_continue, windows_add_all_dlls)
4459         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4460         Remove unused variables.
4461
4462 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4463
4464         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4465         attr_profile in HAVE_ELF.
4466         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4467         HAVE_ELF.
4468
4469 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4470
4471         * frame.c (frame_register_unwind): Change parameter name.
4472         (frame_unwind_register): Likewise.
4473         (frame_unwind_register_value): Likewise.
4474         (frame_unwind_register_signed): Likewise.
4475         (frame_unwind_register_unsigned): Likewise.
4476         * frame.h (frame_register_unwind): Likewise.
4477         (frame_unwind_register): Likewise.
4478         (frame_unwind_register_value): Likewise.
4479         (frame_unwind_register_signed): Likewise.
4480         (frame_unwind_register_unsigned): Likewise.
4481         (frame_unwind_arch): Likewise.
4482
4483 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4484
4485         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4486         ISA maintenance.
4487
4488 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4489
4490         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4491         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4492         hand.
4493
4494 2018-07-20  Keith Seitz  <keiths@redhat.com>
4495
4496         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4497         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4498         m_compunit_symtab, m_language>: Add "m_" prefix.
4499         Update all uses.
4500         * buildsym.c: Update all uses.
4501
4502 2018-07-20  Tom Tromey  <tom@tromey.com>
4503
4504         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4505         * buildsym.h (record_line_ftype): Remove typedef.
4506
4507 2018-07-20  Tom Tromey  <tom@tromey.com>
4508
4509         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4510         (end_expandable_symtab): Likewise.
4511         (end_symtab_get_static_block): Likewise.
4512         (end_symtab_from_static_block): Likewise.
4513         * buildsym-legacy.c (augment_type_symtab): Remove.
4514         (end_expandable_symtab): Remove.
4515         (end_symtab_get_static_block): Remove.
4516         (end_symtab_from_static_block): Remove.
4517
4518 2018-07-20  Tom Tromey  <tom@tromey.com>
4519
4520         * dwarf2read.c: Include buildsym.h.
4521         (struct dwarf2_cu) <builder>: New method.
4522         (fixup_go_packaging): Update.
4523         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4524         use scoped_free_pendings.
4525         (using_directives): Add "cu" parameter, remove "language".
4526         (read_import_statement, setup_type_unit_groups, )
4527         (read_func_scope, read_lexical_block_scope)
4528         (dwarf2_record_block_ranges, read_namespace): Update.
4529         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4530         (lnp_state_machine::handle_end_sequence): Update.
4531         (class lnp_state_machine) <m_cu>: New member.
4532         <m_record_line_callback>: Remove.
4533         <m_currently_recording_lines>: New member.
4534         (lnp_state_machine::handle_set_file): Update.
4535         (noop_record_line): Remove.
4536         (dwarf_record_line_p): Add cu parameter.
4537         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4538         (lnp_state_machine::record_line)
4539         (lnp_state_machine::lnp_state_machine)
4540         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4541         (dwarf_decode_lines): Update.
4542         (dwarf2_start_subfile): Add cu parameter.
4543         (dwarf2_start_symtab, new_symbol): Update.
4544         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4545         Remove dwarf2_per_objfile parameter.
4546         (dwarf_decode_macros): Update.
4547
4548 2018-07-20  Tom Tromey  <tom@tromey.com>
4549
4550         * stabsread.c (define_symbol): Update.
4551         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4552         * dwarf2read.c (new_symbol): Update.
4553         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4554         * cp-namespace.c: Include buildsym.h.
4555         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4556         * buildsym-legacy.c (get_buildsym_compunit): New function.
4557
4558 2018-07-20  Tom Tromey  <tom@tromey.com>
4559
4560         * xcoffread.c: Include buildsym-legacy.h.
4561         * windows-nat.c: Include buildsym-legacy.h.
4562         * stabsread.c: Include buildsym-legacy.h.
4563         * mdebugread.c: Include buildsym-legacy.h.
4564         * buildsym-legacy.h: New file.
4565         * buildsym-legacy.c: New file, from buildsym.c.
4566         * go32-nat.c: Include buildsym-legacy.h.
4567         * dwarf2read.c: Include buildsym-legacy.h.
4568         * dbxread.c: Include buildsym-legacy.h.
4569         * cp-namespace.c: Include buildsym-legacy.h.
4570         * coffread.c: Include buildsym-legacy.h.
4571         * buildsym.h: Move some contents to buildsym-legacy.h.
4572         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4573         buildsym-legacy.c.
4574         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4575
4576 2018-07-20  Tom Tromey  <tom@tromey.com>
4577
4578         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4579         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4580         (buildsym_compunit::buildsym_compunit)
4581         (buildsym_compunit::~buildsym_compunit)
4582         (buildsym_compunit::get_macro_table): Define.
4583
4584 2018-07-20  Tom Tromey  <tom@tromey.com>
4585
4586         * buildsym.c (reset_symtab_globals): Remove.
4587         (buildsym_compunit::end_symtab_from_static_block): Update.
4588         (buildsym_compunit::augment_type_symtab): Update.
4589         (end_symtab_from_static_block): Call free_buildsym_compunit.
4590         (augment_type_symtab, end_symtab, end_expandable_symtab):
4591         Likewise.
4592
4593 2018-07-20  Tom Tromey  <tom@tromey.com>
4594
4595         * arch-utils.c: Do not include buildsym.h.
4596         * mipsread.c: Do not include buildsym.h.
4597         * machoread.c: Do not include buildsym.h.
4598         * elfread.c: Do not include buildsym.h.
4599
4600 2018-07-20  Tom Tromey  <tom@tromey.com>
4601
4602         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4603         initialization.
4604         (buildsym_compunit): Add new constructor.
4605         (struct buildsym_compunit) <get_last_source_file, finish_block,
4606         record_block_range, start_subfile, patch_subfile_names,
4607         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4608         set_last_source_start_addr, get_last_source_start_addr,
4609         get_local_using_directives, set_local_using_directives,
4610         get_global_using_directives, outermost_context_p,
4611         get_current_context_stack, get_context_stack_depth,
4612         get_current_subfile, get_local_symbols, get_file_symbols,
4613         get_global_symbols, record_debugformat, record_producer,
4614         push_context, pop_context, end_symtab_get_static_block,
4615         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4616         New public methods.
4617         <record_pending_block, finish_block_internal, make_blockvector,
4618         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4619         private methods.
4620         Update all users.
4621
4622 2018-05-22  Tom Tromey  <tom@tromey.com>
4623
4624         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4625         parameter.
4626         (finish_block_internal): Update.
4627
4628 2018-07-20  Tom Tromey  <tom@tromey.com>
4629
4630         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4631         parameter.
4632         (finish_block_internal): Update.
4633
4634 2018-07-20  Tom Tromey  <tom@tromey.com>
4635
4636         * buildsym.h (EXTERN): Don't define or undef.
4637         * buildsym.c (EXTERN): Don't define.
4638
4639 2018-07-20  Tom Tromey  <tom@tromey.com>
4640
4641         * buildsym.c: Remove TODO comment.
4642
4643 2018-07-20  Tom Tromey  <tom@tromey.com>
4644
4645         * coffread.c (coff_symtab_read): Update.
4646         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4647         (xcoff_new_init): Update.
4648         * mipsread.c (mipscoff_new_init): Update.
4649         * mdebugread.c (mdebug_build_psymtabs): Update.
4650         * elfread.c (elf_new_init): Update.
4651         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4652         Update.
4653         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4654         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4655         (stabsect_build_psymtabs): Update.
4656         * buildsym.h (buildsym_init): Don't declare.
4657         * buildsym.c: Update comment.
4658         (prepare_for_building): Remove.
4659         (start_symtab, restart_symtab): Update.
4660         (reset_symtab_globals): Update comment.
4661         (buildsym_init): Remove.
4662
4663 2018-07-20  Tom Tromey  <tom@tromey.com>
4664
4665         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4666         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4667         (read_enum_type, common_block_start, common_block_end)
4668         (cleanup_undefined_types_1, finish_global_stabs): Update.
4669         * mdebugread.c (psymtab_to_symtab_1): Update.
4670         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4671         (read_lexical_block_scope, new_symbol): Update.
4672         * dbxread.c (process_one_symbol): Update.
4673         * coffread.c (coff_symtab_read, process_coff_symbol)
4674         (coff_read_enum_type): Update.
4675         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4676         declare.
4677         (get_local_symbols, get_file_symbols, get_global_symbols): New
4678         functions.
4679         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4680         m_global_symbols.
4681         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4682         (~scoped_free_pendings): Update.
4683         (finish_block, prepare_for_building, reset_symtab_globals)
4684         (end_symtab_get_static_block, end_symtab_with_blockvector)
4685         (augment_type_symtab, push_context): Update.
4686         (get_local_symbols, get_file_symbols, get_global_symbols): New
4687         functions.
4688         (buildsym_init): Update.
4689
4690 2018-07-20  Tom Tromey  <tom@tromey.com>
4691
4692         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4693         (process_full_type_unit): Likewise.
4694         (dwarf2_start_symtab): Set list_in_scope.
4695
4696 2018-07-20  Tom Tromey  <tom@tromey.com>
4697
4698         * dwarf2read.c (process_psymtab_comp_unit_reader)
4699         (build_type_psymtabs_reader): Do not set list_in_scope.
4700
4701 2018-07-20  Tom Tromey  <tom@tromey.com>
4702
4703         * buildsym.c (free_pendings): Remove.
4704         (add_symbol_to_list, scoped_free_pendings)
4705         (finish_block_internal, buildsym_init): Update.
4706
4707 2018-07-20  Tom Tromey  <tom@tromey.com>
4708
4709         * xcoffread.c (read_xcoff_symtab): Update.
4710         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4711         Update.
4712         * dbxread.c (process_one_symbol): Update.
4713         * coffread.c (coff_symtab_read): Update.
4714         * buildsym.h (finish_block): Update.
4715         * buildsym.c (finish_block): Remove "listhead" argument.
4716         (end_symtab_get_static_block): Update.
4717
4718 2018-07-20  Tom Tromey  <tom@tromey.com>
4719
4720         * buildsym.h (class scoped_free_pendings): Remove constructor.
4721         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4722         method.
4723         <m_pending_block_obstack, m_pending_blocks>: New members.
4724         (pending_block_obstack, pending_blocks): Remove.
4725         (scoped_free_pendings::scoped_free_pendings): Default.
4726         (~scoped_free_pendings): Update.
4727         (free_pending_blocks): Remove.
4728         (finish_block_internal, record_pending_block, make_blockvector)
4729         (end_symtab_get_static_block, augment_type_symtab, push_context)
4730         (buildsym_init): Update.
4731
4732 2018-07-20  Tom Tromey  <tom@tromey.com>
4733
4734         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4735         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4736         members.
4737         (pending_addrmap, pending_addrmap_obstack)
4738         (pending_addrmap_interesting): Remove.
4739         (scoped_free_pendings, record_block_range, make_blockvector)
4740         (prepare_for_building, reset_symtab_globals, buildsym_init):
4741         Update.
4742
4743 2018-07-20  Tom Tromey  <tom@tromey.com>
4744
4745         * xcoffread.c (process_linenos): Update.
4746         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4747         * mdebugread.c (psymtab_to_symtab_1): Update.
4748         * dwarf2read.c (setup_type_unit_groups)
4749         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4750         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4751         * dbxread.c (process_one_symbol): Update.
4752         * coffread.c (coff_symtab_read, enter_linenos)
4753         (process_coff_symbol): Update.
4754         * buildsym.h (current_subfile): Don't declare.
4755         (get_current_subfile): Declare.
4756         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4757         member.
4758         (start_subfile, free_buildsym_compunit, push_subfile)
4759         (prepare_for_building, start_symtab): Update.
4760         (get_current_subfile): New function.
4761
4762 2018-07-20  Tom Tromey  <tom@tromey.com>
4763
4764         * coffread.c (coff_symtab_read): Update.
4765         * xcoffread.c (read_xcoff_symtab): Update.
4766         * dwarf2read.c (new_symbol): Update.
4767         (read_func_scope, read_lexical_block_scope): Update.
4768         * dbxread.c (process_one_symbol): Update.
4769         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4770         (outermost_context_p): Remove macro.
4771         (outermost_context_p, get_current_context_stack)
4772         (get_context_stack_depth): Declare.
4773         (pop_context): Return struct context_stack.
4774         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4775         member.
4776         (context_stack_size): Remove.
4777         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4778         (prepare_for_building, end_symtab_get_static_block)
4779         (augment_type_symtab, push_context): Update.
4780         (pop_context): Return struct context_stack.
4781         (outermost_context_p, get_current_context_stack)
4782         (get_context_stack_depth): New functions.
4783         (buildsym_init): Update.
4784
4785 2018-07-20  Tom Tromey  <tom@tromey.com>
4786
4787         * rust-exp.y: Now a pure parser.  Update all rules.
4788         (%union): Move earlier.
4789         (current_parser, work_obstack): Remove globals.
4790         (rust_parser, ~rust_parser): Update.
4791         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4792         lex_character, lex_number, lex_string, lex_identifier,
4793         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4794         convert_name, convert_params_to_expression,
4795         convert_ast_to_expression, ast_basic_type, ast_operation,
4796         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4797         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4798         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4799         ast_array_type, ast_slice_type, ast_reference_type,
4800         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4801         (rust_parse): Update.
4802         (rustyyerror, rustyylex): Add parser parameter.
4803         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4804         (rust_lex_stringish_test, rust_lex_test_sequence)
4805         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4806         (rust_lex_test_push_back, rust_lex_tests): Update.
4807
4808 2018-07-19  Pedro Alves  <palves@redhat.com>
4809
4810         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4811         gdb::unique_xmalloc_ptr.
4812         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4813         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4814         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4815         copy-initialization.
4816         * guile/scm-pretty-print.c (ppscm_print_children): Use
4817         gdb::unique_xmalloc_ptr instead of cleanups.
4818         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4819         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4820         gdb::unique_xmalloc_ptr.
4821         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4822         Adjust to use gdb::unique_xmalloc_ptr.
4823         * guile/scm-utils.c (extract_arg): Adjust.
4824         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4825         gdb::unique_xmalloc_ptr instead of a cleanup.
4826
4827 2018-07-19  Tom Tromey  <tom@tromey.com>
4828
4829         * utils.c (do_value_free_to_mark)
4830         (make_cleanup_value_free_to_mark): Remove.
4831         * utils.h (make_cleanup_value_free_to_mark): Remove.
4832
4833 2018-07-19  Pedro Alves  <palves@redhat.com>
4834
4835         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4836         forwarding reference.
4837
4838 2018-07-18  Pedro Alves  <palves@redhat.com>
4839
4840         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4841         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4842         cleanup.
4843
4844 2018-07-18  Pedro Alves  <palves@redhat.com>
4845
4846         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4847         exceptions.
4848         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4849         (gdbscm_wrap): New.
4850         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4851         directly instead of a cleanup.
4852         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4853         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4854         (vlscm_binop_gdbthrow): New, factored out from ...
4855         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4856         (vlscm_rich_compare): Use gdbscm_wrap.
4857         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4858         instead of a cleanup.
4859         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4860         cleanup.
4861         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4862         Use xfree directly instead of a cleanup.
4863         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4864         Adjust to use gdbscm_wrap and scoped_value_mark.
4865         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4866         (gdbscm_value_address, gdbscm_value_dereference)
4867         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4868         scoped_value_mark.
4869         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4870         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4871         scoped_value_mark.
4872         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4873         gdbscm_wrap and scoped_value_mark.
4874         (gdbscm_value_to_string): Use xfree directly instead of a
4875         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4876         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4877         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4878         scoped_value_mark.
4879         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4880         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4881         scoped_value_mark.
4882         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4883         gdbscm_wrap.
4884
4885 2018-07-18  Tom de Vries  <tdevries@suse.de>
4886
4887         * findvar.c (default_read_var_value): Also resolve dynamic type for
4888         LOC_OPTIMIZED_OUT vars.
4889
4890 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4891
4892         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4893         decoding.
4894
4895 2018-07-17  Tom Tromey  <tom@tromey.com>
4896
4897         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4898         (compute_enum_list, pascm_set_param_value_x)
4899         (gdbscm_parameter_value): Update.
4900         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4901         (gdbscm_scm_to_host_string): Update.
4902         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4903         Update.
4904         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4905         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4906         * guile/scm-string.c (gdbscm_scm_to_string): Return
4907         unique_xmalloc_ptr.
4908         (gdbscm_scm_to_host_string): Likewise.
4909
4910 2018-07-17  Tom Tromey  <tom@tromey.com>
4911
4912         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4913         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4914         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4915         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4916         unique_xmalloc_ptr.
4917
4918 2018-07-17  Tom Tromey  <tom@tromey.com>
4919
4920         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4921         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4922         Update.
4923         * guile/scm-cmd.c (cmdscm_function): Update.
4924         * guile/scm-pretty-print.c
4925         (ppscm_print_exception_unless_memory_error): Update.
4926         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4927         Return unique_xmalloc_ptr.
4928
4929 2018-07-17  Tom Tromey  <tom@tromey.com>
4930
4931         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4932         Use string_printf.
4933
4934 2018-07-17  Jim Wilson  <jimw@sifive.com>
4935
4936         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4937         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4938         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4939         unecessary braces after EF_RISCV_RVC test.  Delete call to
4940         set_gdbarch_decr_pc_after_break.
4941
4942         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4943         RISCV_LAST_FP_REGNUM + 1.
4944         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4945
4946 2018-07-17  Tom Tromey  <tom@tromey.com>
4947
4948         * configure.ac: Remove --disable-gdbcli.
4949         * configure: Rebuild.
4950         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4951         (SUBDIR_CLI_CFLAGS): Remove.
4952         (SFILES): Use SUBDIR_CLI_SRCS.
4953         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4954
4955 2018-07-17  Tom Tromey  <tom@tromey.com>
4956
4957         PR gdb/18624:
4958         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4959
4960 2018-07-16  Jim Wilson  <jimw@sifive.com>
4961
4962         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4963
4964 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4965
4966         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4967         variable.
4968         (libunwind_frame_sniffer): Likewise.
4969         (libunwind_frame_prev_register): Likewise.
4970         (libunwind_sigtramp_frame_sniffer): Likewise.
4971         * ia64-tdep.c (ia64_access_reg): Likewise.
4972         (ia64_access_rse_reg): Likewise.
4973         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4974         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4975
4976 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4977
4978         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4979
4980 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4981
4982         * remote-sim.c (gdbsim_target::close,
4983         gdbsim_target::mourn_inferior): Remove unused variables.
4984
4985 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4986
4987         * ia64-tdep.c (ktab_buf): New global.
4988         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4989         (get_kernel_table): Adjust.
4990
4991 2018-07-16  Tom Tromey  <tom@tromey.com>
4992
4993         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4994         * dwarf2read.c (using_directives, new_symbol): Use
4995         outermost_context_p.
4996         * dbxread.c (process_one_symbol): Use outermost_context_p.
4997         * coffread.c (coff_symtab_read): Use outermost_context_p.
4998
4999 2018-07-16  Tom Tromey  <tom@tromey.com>
5000
5001         * dwarf2read.c (using_directives, read_func_scope)
5002         (read_lexical_block_scope): Update.
5003         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5004         * buildsym.h (local_using_directives, global_using_directives):
5005         Don't declare.
5006         (get_local_using_directives, set_local_using_directives)
5007         (get_global_using_directives): Declare.
5008         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5009         m_global_using_directives>: New members.
5010         (finish_block_internal, prepare_for_building)
5011         (reset_symtab_globals, end_symtab_get_static_block)
5012         (push_context): Update.
5013         (get_local_using_directives, set_local_using_directives)
5014         (get_global_using_directives): New functions.
5015         (buildsym_init): Update.
5016
5017 2018-07-16  Tom Tromey  <tom@tromey.com>
5018
5019         * xcoffread.c (xcoff_initial_scan): Don't call
5020         free_pending_blocks.
5021         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5022         * buildsym.h (class scoped_free_pendings): Add constructor.
5023         (free_pending_blocks): Don't declare.
5024         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5025         (free_pending_blocks): Now static.
5026
5027 2018-07-16  Tom Tromey  <tom@tromey.com>
5028
5029         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5030         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5031         member.
5032         (struct subfile_stack): Remove.
5033         (subfile_stack): Remove.
5034         (push_subfile, pop_subfile, buildsym_init): Update.
5035
5036 2018-07-16  Tom Tromey  <tom@tromey.com>
5037
5038         * buildsym.c (push_subfile): Use gdb_assert.
5039         (pop_subfile): Use gdb_assert.
5040
5041 2018-07-16  Tom Tromey  <tom@tromey.com>
5042
5043         * buildsym.h (merge_symbol_lists): Remove.
5044         * buildsym.c (merge_symbol_lists): Remove.
5045
5046 2018-07-16  Tom Tromey  <tom@tromey.com>
5047
5048         * stabsread.c (scan_file_globals): Update comment.
5049         * stabsread.h (scan_file_globals): Move from buildsym.h.
5050         * buildsym.h (scan_file_globals): Move to stabsread.h.
5051
5052 2018-07-16  Tom Tromey  <tom@tromey.com>
5053
5054         * xcoffread.c (xcoff_new_init): Update.
5055         * mipsread.c (mipscoff_new_init): Update.
5056         * mdebugread.c (mdebug_build_psymtabs): Update.
5057         * elfread.c (elf_new_init): Update.
5058         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5059         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5060         * buildsym.h (buildsym_new_init): Don't declare.
5061         * buildsym.c (buildsym_new_init): Remove.
5062
5063 2018-07-16  Tom Tromey  <tom@tromey.com>
5064
5065         * stabsread.h (within_function): Move from buildsym.h.
5066         * stabsread.c (start_stabs): Clear within_function.
5067         * coffread.c (coff_start_symtab): Clear within_function.
5068         * buildsym.h (within_function): Move to stabsread.h.
5069         * buildsym.c (prepare_for_building): Update.
5070
5071 2018-07-16  Tom Tromey  <tom@tromey.com>
5072
5073         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5074         * dwarf2read.c (dwarf2_start_symtab): Don't set
5075         processing_gcc_compilation.
5076         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5077
5078 2018-07-16  Tom Tromey  <tom@tromey.com>
5079
5080         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5081         (next_symbol_text_func): Move from buildsym.h.
5082         * stabsread.c (hashname): Move from buildsym.c.
5083         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5084         (next_symbol_text_func, hashname): Move to stabsread.h.
5085         * buildsym.c: Don't include bcache.h
5086         (hashname): Move to stasbread.c.
5087
5088 2018-07-16  Tom Tromey  <tom@tromey.com>
5089
5090         * buildsym.h (context_stack_size): Don't declare.
5091         * buildsym.c (context_stack_size): New global.
5092
5093 2018-07-16  Tom Tromey  <tom@tromey.com>
5094
5095         * dbxread.c (processing_acc_compilation): New global.
5096         * buildsym.h (processing_acc_compilation): Don't declare.
5097
5098 2018-07-16  Tom Tromey  <tom@tromey.com>
5099
5100         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5101         * dbxread.c (read_ofile_symtab): Update.
5102         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5103         * buildsym.h (last_source_start_addr): Remove.
5104         (set_last_source_start_addr, get_last_source_start_addr):
5105         Declare.
5106         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5107         parameter.
5108         (struct buildsym_compunit) <m_last_source_start_addr>: New
5109         member.
5110         (prepare_for_building): Remove start_addr parameter.
5111         (start_symtab, restart_symtab, end_symtab_get_static_block)
5112         (end_symtab_with_blockvector): Update.
5113         (set_last_source_start_addr, get_last_source_start_addr): New
5114         functions.
5115
5116 2018-07-16  Tom Tromey  <tom@tromey.com>
5117
5118         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5119         member.
5120         (have_line_numbers): Remove.
5121         (record_line, prepare_for_building, end_symtab_get_static_block)
5122         (augment_type_symtab): Update.
5123
5124 2018-07-16  Tom Tromey  <tom@tromey.com>
5125
5126         * buildsym.c (~buildsym_compunit): Free the macro table.
5127         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5128         methods.
5129         <m_pending_macros>: New member.
5130         (pending_macros): Remove.
5131         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5132         (reset_symtab_globals, end_symtab_get_static_block)
5133         (end_symtab_with_blockvector, augment_type_symtab)
5134         (buildsym_init): Update.
5135
5136 2018-07-16  Tom Tromey  <tom@tromey.com>
5137
5138         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5139         parameter.
5140         (buildsym_compunit::set_last_source_file): New method.
5141         <m_last_source_file>: New member.
5142         (prepare_for_building): Remove "name" parameter.
5143         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5144         (last_source_file): Remove.
5145         (set_last_source_file, get_last_source_file): Update.
5146
5147 2018-07-16  Tom Tromey  <tom@tromey.com>
5148
5149         * buildsym.c (prepare_for_building): Add assert.
5150
5151 2018-07-16  Tom Tromey  <tom@tromey.com>
5152
5153         * buildsym.c (~buildsym_compunit): Update.
5154         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5155         (start_subfile, patch_subfile_names)
5156         (end_symtab_with_blockvector): Update.
5157
5158 2018-07-16  Tom Tromey  <tom@tromey.com>
5159
5160         * buildsym.c (struct buildsym_compunit): Add constructor,
5161         destructor, initializers.
5162         (start_buildsym_compunit): Remove.
5163         (free_buildsym_compunit): Use "delete".
5164         (start_symtab, restart_symtab): Use "new".
5165
5166 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5167
5168         * symfile.c (set_objfile_default_section_offset): Remove struct
5169         keyword.
5170
5171 2018-07-14  Stafford Horne  <shorne@gmail.com>
5172
5173         * (Responsible Maintainers): Add myself as or1k maintainer.
5174
5175 2018-07-13  Tom Tromey  <tom@tromey.com>
5176
5177         * symfile.c (set_objfile_default_section_offset): Use extra braces
5178         around initializer.
5179
5180 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5181
5182         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5183         non-branching basr.
5184
5185 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5186
5187         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5188         unittests/cli-utils-selftests.c
5189         * unittests/cli-utils-selftests.c: New file.
5190
5191 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5192
5193         * NEWS: Mention new commands. Mention change to 'thread apply'.
5194
5195 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5196
5197         * thread.c (thr_try_catch_cmd): New function.
5198         (thread_apply_all_command): Handle qcs flags.
5199         (thread_apply_command): Handle qcs flags.
5200         (taas_command): New function.
5201         (tfaas_command): New function.
5202         (_initialize_thread): Update to setup the new commands 'taas
5203         and 'tfaas'. Change doc string for 'thread apply'.
5204
5205 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5206
5207         * stack.c: (trailing_outermost_frame): New function, mostly
5208         extracted from backtrace_command_1.
5209         (leading_innermost_frame): New function.
5210         (backtrace_command_1): Update to call trailing_outermost_frame.
5211         (frame_apply_command_count): New function.
5212         (frame_apply_level_command): New function.
5213         (frame_apply_all_command): New function.
5214         (frame_apply_command): New function.
5215         (faas_command): New function.
5216         (frame_cmd_list): New variable.
5217         (_initialize_stack): Update to setup the new commands 'frame apply'
5218         and 'faas'.
5219
5220 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5221
5222         * cli-utils.c (number_or_range_parser::get_number): Only handle
5223         numbers or convenience var as numbers.
5224         (parse_flags): New function.
5225         (parse_flags_qcs): New function.
5226         (number_or_range_parser::finished): Ensure parsing end is detected
5227         before end of string.
5228         * cli-utils.h (parse_flags): New function.
5229         (parse_flags_qcs): New function.
5230         (number_or_range_parser): Remove m_finished bool.
5231         (number_or_range_parser::skip_range): Set m_in_range to false.
5232
5233 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5234
5235         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5236         on Windows.
5237
5238 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5239             Jan Kratochvil  <jan.kratochvil@redhat.com>
5240             Paul Fertser  <fercerpav@gmail.com>
5241             Tsutomu Seki  <sekiriki@gmail.com>
5242             Pedro Alves  <palves@redhat.com>
5243
5244         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5245         'unittests/parse-connection-spec-selftests.c'.
5246         (COMMON_SFILES): Add 'common/netstuff.c'.
5247         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5248         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5249         * common/netstuff.c: New file.
5250         * common/netstuff.h: New file.
5251         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5252         (wait_for_connect): Update comment.  New parameter
5253         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5254         Use 'sock' directly instead of 'scb->fd'.
5255         (try_connect): New function, with code from 'net_open'.
5256         (net_open): Rewrite main loop to deal with multiple
5257         sockets/addresses.  Handle IPv6-style hostnames; implement
5258         support for IPv6 connections.
5259         * unittests/parse-connection-spec-selftests.c: New file.
5260
5261 2018-07-11  Pedro Alves  <palves@redhat.com>
5262
5263         PR gdb/23377
5264         * remote.c (remote_target::remote_detach_pid): Call
5265         set_current_process.
5266
5267 2018-07-11  Pedro Alves  <palves@redhat.com>
5268
5269         * h8300-tdep.c (h8300_gdbarch_init): Remove
5270         set_gdbarch_ecoff_reg_to_regnum calls.
5271
5272 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5273
5274         PR c++/23373
5275         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5276         offsets/sizes for static members of a class/struct.
5277
5278 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5279
5280         * target-descriptions.c (tdesc_register_bitsize): Rename.
5281         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5282         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5283         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5284
5285 2018-07-10  Tom Tromey  <tom@tromey.com>
5286
5287         * breakpoint.c (moribund_locations): Now static and a
5288         std::vector.
5289         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5290         (build_bpstat_chain, update_global_location_list)
5291         (breakpoint_retire_moribund): Update.
5292         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5293         VEC.
5294
5295 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5296
5297         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5298         (riscv_register_reggroup_p): Use new function, remove unneeded
5299         parenthesis.
5300         (riscv_push_dummy_call): Extend assert to compare against xlen or
5301         flen based on register type.
5302
5303 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5304
5305         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5306
5307 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5308
5309         * remote.c (show_hardware_watchpoint_limit): New function.
5310         (show_hardware_watchpoint_length_limit): New function.
5311         (show_hardware_breakpoint_limit): New function.
5312         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5313         where appropriate, update help text.
5314
5315 2018-07-09  Tom Tromey  <tom@tromey.com>
5316
5317         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5318         (CLIBS): Don't mention NAT_CLIBS.
5319
5320 2018-07-09  Tom Tromey  <tom@tromey.com>
5321
5322         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5323         (LIBGDB_OBS, clean mostlyclean): Update.
5324         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5325
5326 2018-07-09  Tom Tromey  <tom@tromey.com>
5327
5328         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5329         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5330         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5331
5332 2018-07-09  Tom Tromey  <tom@tromey.com>
5333
5334         * Makefile.in (ALLDEPFILES): Remove exec.c.
5335         (COMMON_OBS): Remove exec.o.
5336         (COMMON_SFILES): Add exec.c.
5337
5338 2018-07-09  Tom Tromey  <tom@tromey.com>
5339
5340         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5341
5342 2018-07-09  Tom Tromey  <tom@tromey.com>
5343
5344         * Makefile.in (clean mostlyclean): Remove stamp-version.
5345         (version.c): Depend on stamp-version.
5346         (stamp-version): New rule, from version.c rule.
5347
5348 2018-07-09  Tom Tromey  <tom@tromey.com>
5349
5350         * Makefile.in (init.c): Depend on stamp-init.
5351         (stamp-init): New rule, from init.c rule.
5352         (clean mostlyclean): Remove stamp-init.
5353
5354 2018-07-09  Tom Tromey  <tom@tromey.com>
5355
5356         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5357         SUBDIR_GCC_COMPILE_SRCS.
5358
5359 2018-07-09  Tom Tromey  <tom@tromey.com>
5360
5361         * Makefile.in (init.c): Remove some unused sed rules.
5362
5363 2018-07-09  Tom Tromey  <tom@tromey.com>
5364
5365         * Makefile.in (TSOBS): Remove.
5366         (INIT_FILES): Update.
5367         (LIBGDB_OBS): Update.
5368         (COMMON_SFILES): Add inflow.c.
5369         (SFILES): Remove inflow.c.
5370
5371 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5372
5373         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5374
5375 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5376
5377         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5378         get_saveloc_name, is_signal_frame_name, step_name,
5379         init_remote_name, create_addr_space_name,
5380         destroy_addr_space_name, search_unwind_table_name,
5381         find_dyn_list_name): Constify.
5382
5383 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5384
5385         * darwin-nat.c (darwin_pthread_kill): New function.
5386         (darwin_resume_thread): Use darwin_pthread_kill.
5387
5388 2018-07-05  Tom de Vries  <tdevries@suse.de>
5389
5390         * macroexp.c (macro_buffer) <operator=>: New member function.
5391
5392 2018-07-04  Tom Tromey  <tom@tromey.com>
5393
5394         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5395
5396 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5397
5398         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5399         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5400         * maint.c: Likewise.
5401         * top.c: Likewise.
5402
5403 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5404
5405         * NEWS: Create a new section for the next release branch.
5406         Rename the section of the current branch, now that it has
5407         been cut.
5408
5409 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5410
5411         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5412         * version.in: Bump version to 8.2.50.DATE-git.
5413
5414 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5415             Pedro Alves  <palves@redhat.com>
5416
5417         * linux-nat.c (linux_init_ptrace): Rename to ...
5418         (linux_init_ptrace_procfs): ... this.  Call
5419         linux_proc_init_warnings.
5420         (linux_nat_target::post_attach)
5421         (linux_nat_target::post_startup_inferior): Adjust.
5422         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5423         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5424
5425 2018-07-04  Tom de Vries  <tdevries@suse.de>
5426
5427         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5428         check ...
5429         (read_comp_unit_head): ... here.
5430
5431 2018-07-03  Tom Tromey  <tom@tromey.com>
5432
5433         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5434         (stop_tracing, tstatus_command)
5435         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5436         (print_one_static_tracepoint_marker): Update.
5437         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5438         std::vector.
5439         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5440         VEC.
5441         (all_tracepoints, static_tracepoints_here): Return std::vector.
5442
5443 2018-07-03  Tom Tromey  <tom@tromey.com>
5444
5445         * common/ptid.c (ptid_equal): Remove.
5446         * common/ptid.h (ptid_equal): Don't declare.
5447         * ada-tasks.c: Update.
5448         * breakpoint.c: Update.
5449         * common/agent.c: Update.
5450         * corelow.c: Update.
5451         * darwin-nat-info.c: Update.
5452         * darwin-nat.c: Update.
5453         * dcache.c: Update.
5454         * dtrace-probe.c: Update.
5455         * dummy-frame.c: Update.
5456         * fbsd-nat.c: Update.
5457         * frame.c: Update.
5458         * gdbthread.h: Update.
5459         * gnu-nat.c: Update.
5460         * go32-nat.c: Update.
5461         * inf-loop.c: Update.
5462         * inf-ptrace.c: Update.
5463         * infcall.c: Update.
5464         * infcmd.c: Update.
5465         * inflow.c: Update.
5466         * infrun.c: Update.
5467         * linux-fork.c: Update.
5468         * linux-nat.c: Update.
5469         * linux-thread-db.c: Update.
5470         * mi/mi-cmd-var.c: Update.
5471         * mi/mi-interp.c: Update.
5472         * mi/mi-main.c: Update.
5473         * nto-procfs.c: Update.
5474         * ppc-linux-tdep.c: Update.
5475         * procfs.c: Update.
5476         * python/py-inferior.c: Update.
5477         * python/py-record-btrace.c: Update.
5478         * python/py-record.c: Update.
5479         * ravenscar-thread.c: Update.
5480         * regcache.c: Update.
5481         * remote-sim.c: Update.
5482         * remote.c: Update.
5483         * sol-thread.c: Update.
5484         * solib.c: Update.
5485         * target.c: Update.
5486         * tui/tui-stack.c: Update.
5487         * varobj.c: Update.
5488         * windows-nat.c: Update.
5489         * windows-tdep.c: Update.
5490
5491 2018-07-03  Tom Tromey  <tom@tromey.com>
5492
5493         * common/ptid.c (ptid_match): Remove.
5494         * common/ptid.h (ptid_match): Don't declare.
5495         * fbsd-nat.c: Update.
5496         * infcmd.c: Update.
5497         * infrun.c: Update.
5498         * linux-nat.c: Update.
5499         * record-btrace.c: Update.
5500         * regcache.c: Update.
5501         * remote.c: Update.
5502
5503 2018-07-03  Tom Tromey  <tom@tromey.com>
5504
5505         * common/ptid.c (ptid_tid_p): Remove.
5506         * common/ptid.h (ptid_tid_p): Don't declare.
5507         * sol-thread.c: Update.
5508
5509 2018-07-03  Tom Tromey  <tom@tromey.com>
5510
5511         * common/ptid.c (ptid_lwp_p): Remove.
5512         * common/ptid.h (ptid_lwp_p): Don't declare.
5513         * fbsd-nat.c: Update.
5514         * linux-nat.c: Update.
5515         * nat/linux-procfs.c: Update.
5516         * nat/x86-linux-dregs.c: Update.
5517         * sol-thread.c: Update.
5518
5519 2018-07-03  Tom Tromey  <tom@tromey.com>
5520
5521         * common/ptid.c (ptid_is_pid): Remove.
5522         * common/ptid.h (ptid_is_pid): Don't declare.
5523         * infrun.c: Update.
5524         * linux-nat.c: Update.
5525         * mi/mi-interp.c: Update.
5526         * remote.c: Update.
5527         * thread.c: Update.
5528
5529 2018-07-03  Tom Tromey  <tom@tromey.com>
5530
5531         * common/ptid.c (ptid_get_tid): Remove.
5532         * common/ptid.h (ptid_get_tid): Don't declare.
5533         * ada-tasks.c: Update.
5534         * aix-thread.c: Update.
5535         * bsd-uthread.c: Update.
5536         * darwin-nat.c: Update.
5537         * fbsd-nat.c: Update.
5538         * i386-darwin-nat.c: Update.
5539         * infrun.c: Update.
5540         * linux-tdep.c: Update.
5541         * nto-procfs.c: Update.
5542         * ppc-ravenscar-thread.c: Update.
5543         * python/py-infthread.c: Update.
5544         * ravenscar-thread.c: Update.
5545         * sol-thread.c: Update.
5546         * sparc-ravenscar-thread.c: Update.
5547         * windows-nat.c: Update.
5548
5549 2018-07-03  Tom Tromey  <tom@tromey.com>
5550
5551         * common/ptid.c (ptid_get_lwp): Remove.
5552         * common/ptid.h (ptid_get_lwp): Don't declare.
5553         * aarch64-linux-nat.c: Update.
5554         * ada-tasks.c: Update.
5555         * aix-thread.c: Update.
5556         * amd64-linux-nat.c: Update.
5557         * arm-linux-nat.c: Update.
5558         * corelow.c: Update.
5559         * fbsd-nat.c: Update.
5560         * fbsd-tdep.c: Update.
5561         * gnu-nat.c: Update.
5562         * i386-cygwin-tdep.c: Update.
5563         * i386-gnu-nat.c: Update.
5564         * i386-linux-nat.c: Update.
5565         * ia64-linux-nat.c: Update.
5566         * inf-ptrace.c: Update.
5567         * infrun.c: Update.
5568         * linux-fork.c: Update.
5569         * linux-nat.c: Update.
5570         * linux-tdep.c: Update.
5571         * linux-thread-db.c: Update.
5572         * mips-linux-nat.c: Update.
5573         * nat/aarch64-linux-hw-point.c: Update.
5574         * nat/aarch64-linux.c: Update.
5575         * nat/linux-btrace.c: Update.
5576         * nat/linux-osdata.c: Update.
5577         * nat/linux-procfs.c: Update.
5578         * nat/x86-linux-dregs.c: Update.
5579         * obsd-nat.c: Update.
5580         * ppc-fbsd-nat.c: Update.
5581         * ppc-linux-nat.c: Update.
5582         * procfs.c: Update.
5583         * python/py-infthread.c: Update.
5584         * ravenscar-thread.c: Update.
5585         * remote.c: Update.
5586         * s390-linux-nat.c: Update.
5587         * sol-thread.c: Update.
5588         * sol2-tdep.c: Update.
5589         * spu-linux-nat.c: Update.
5590         * x86-linux-nat.c: Update.
5591         * xtensa-linux-nat.c: Update.
5592
5593 2018-07-03  Tom Tromey  <tom@tromey.com>
5594
5595         * common/ptid.c (ptid_get_pid): Remove.
5596         * common/ptid.h (ptid_get_pid): Don't declare.
5597         * aarch64-linux-nat.c: Update.
5598         * ada-lang.c: Update.
5599         * aix-thread.c: Update.
5600         * alpha-bsd-nat.c: Update.
5601         * amd64-fbsd-nat.c: Update.
5602         * amd64-linux-nat.c: Update.
5603         * arm-linux-nat.c: Update.
5604         * arm-nbsd-nat.c: Update.
5605         * auxv.c: Update.
5606         * break-catch-syscall.c: Update.
5607         * breakpoint.c: Update.
5608         * bsd-uthread.c: Update.
5609         * corelow.c: Update.
5610         * ctf.c: Update.
5611         * darwin-nat.c: Update.
5612         * fbsd-nat.c: Update.
5613         * fbsd-tdep.c: Update.
5614         * gcore.c: Update.
5615         * gnu-nat.c: Update.
5616         * hppa-nbsd-nat.c: Update.
5617         * hppa-obsd-nat.c: Update.
5618         * i386-fbsd-nat.c: Update.
5619         * ia64-linux-nat.c: Update.
5620         * inf-ptrace.c: Update.
5621         * infcmd.c: Update.
5622         * inferior.c: Update.
5623         * inferior.h: Update.
5624         * inflow.c: Update.
5625         * infrun.c: Update.
5626         * linux-fork.c: Update.
5627         * linux-nat.c: Update.
5628         * linux-tdep.c: Update.
5629         * linux-thread-db.c: Update.
5630         * m68k-bsd-nat.c: Update.
5631         * mi/mi-interp.c: Update.
5632         * mi/mi-main.c: Update.
5633         * mips-linux-nat.c: Update.
5634         * mips-nbsd-nat.c: Update.
5635         * mips64-obsd-nat.c: Update.
5636         * nat/aarch64-linux-hw-point.c: Update.
5637         * nat/aarch64-linux.c: Update.
5638         * nat/linux-btrace.c: Update.
5639         * nat/linux-osdata.c: Update.
5640         * nat/linux-procfs.c: Update.
5641         * nat/x86-linux-dregs.c: Update.
5642         * nto-procfs.c: Update.
5643         * obsd-nat.c: Update.
5644         * ppc-linux-nat.c: Update.
5645         * ppc-nbsd-nat.c: Update.
5646         * ppc-obsd-nat.c: Update.
5647         * proc-service.c: Update.
5648         * procfs.c: Update.
5649         * python/py-inferior.c: Update.
5650         * python/py-infthread.c: Update.
5651         * ravenscar-thread.c: Update.
5652         * record.c: Update.
5653         * remote-sim.c: Update.
5654         * remote.c: Update.
5655         * rs6000-nat.c: Update.
5656         * s390-linux-nat.c: Update.
5657         * sh-nbsd-nat.c: Update.
5658         * sol-thread.c: Update.
5659         * sparc-nat.c: Update.
5660         * sparc64-tdep.c: Update.
5661         * spu-linux-nat.c: Update.
5662         * spu-tdep.c: Update.
5663         * target-debug.h: Update.
5664         * target.c: Update.
5665         * thread.c: Update.
5666         * tid-parse.c: Update.
5667         * tracefile-tfile.c: Update.
5668         * vax-bsd-nat.c: Update.
5669         * windows-nat.c: Update.
5670         * x86-linux-nat.c: Update.
5671         * x86-nat.c: Update.
5672
5673 2018-07-03  Tom Tromey  <tom@tromey.com>
5674
5675         * common/ptid.c (pid_to_ptid): Remove.
5676         * common/ptid.h (pid_to_ptid): Don't declare.
5677         * aix-thread.c: Update.
5678         * arm-linux-nat.c: Update.
5679         * common/ptid.c: Update.
5680         * common/ptid.h: Update.
5681         * corelow.c: Update.
5682         * ctf.c: Update.
5683         * darwin-nat.c: Update.
5684         * fbsd-nat.c: Update.
5685         * fork-child.c: Update.
5686         * gnu-nat.c: Update.
5687         * go32-nat.c: Update.
5688         * inf-ptrace.c: Update.
5689         * infcmd.c: Update.
5690         * inferior.c: Update.
5691         * infrun.c: Update.
5692         * linux-fork.c: Update.
5693         * linux-nat.c: Update.
5694         * nat/aarch64-linux-hw-point.c: Update.
5695         * nat/fork-inferior.c: Update.
5696         * nat/x86-linux-dregs.c: Update.
5697         * nto-procfs.c: Update.
5698         * obsd-nat.c: Update.
5699         * procfs.c: Update.
5700         * progspace.c: Update.
5701         * remote.c: Update.
5702         * rs6000-nat.c: Update.
5703         * s390-linux-nat.c: Update.
5704         * sol-thread.c: Update.
5705         * spu-linux-nat.c: Update.
5706         * target.c: Update.
5707         * top.c: Update.
5708         * tracefile-tfile.c: Update.
5709         * windows-nat.c: Update.
5710
5711 2018-07-03  Tom Tromey  <tom@tromey.com>
5712
5713         * common/ptid.h (ptid_build): Don't declare.
5714         * common/ptid.c (ptid_build): Remove.
5715         * aix-thread.c: Update.
5716         * bsd-kvm.c: Update.
5717         * bsd-uthread.c: Update.
5718         * common/agent.c: Update.
5719         * common/ptid.c: Update.
5720         * common/ptid.h: Update.
5721         * corelow.c: Update.
5722         * darwin-nat.c: Update.
5723         * fbsd-nat.c: Update.
5724         * gnu-nat.c: Update.
5725         * linux-fork.c: Update.
5726         * linux-nat.c: Update.
5727         * linux-thread-db.c: Update.
5728         * nat/linux-osdata.c: Update.
5729         * nat/linux-procfs.c: Update.
5730         * nto-procfs.c: Update.
5731         * obsd-nat.c: Update.
5732         * proc-service.c: Update.
5733         * procfs.c: Update.
5734         * ravenscar-thread.c: Update.
5735         * remote-sim.c: Update.
5736         * remote.c: Update.
5737         * sol-thread.c: Update.
5738         * target.c: Update.
5739         * windows-nat.c: Update.
5740
5741 2018-07-03  Tom Tromey  <tom@tromey.com>
5742
5743         * infrun.c (follow_exec): Use exit_inferior_silent.
5744         * inferior.c (exit_inferior_num_silent): Remove.
5745         * inferior.h (exit_inferior_num_silent): Don't declare.
5746
5747 2018-07-03  Tom Tromey  <tom@tromey.com>
5748
5749         PR cli/23340:
5750         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5751         inferior_ptid on error.
5752
5753 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5754             Simon Marchi  <simon.marchi@polymtl.ca>
5755
5756         PR tdep/8282
5757         * disasm.h (gdb_disassembler): Add
5758         `m_disassembler_options_holder'. member
5759         * disasm.c (get_all_disassembler_options): New function.
5760         (gdb_disassembler::gdb_disassembler): Use it.
5761         (gdb_buffered_insn_length_init_dis): Likewise.
5762         (gdb_buffered_insn_length): Adjust accordingly.
5763         (set_disassembler_options): Handle options with arguments.
5764         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5765         line if showing options with descriptions.
5766         (disassembler_options_completer): Adapt to using the
5767         `disasm_options_and_args_t' structure.
5768         * mips-tdep.c (mips_disassembler_options): New variable.
5769         (mips_disassembler_options_o32): Likewise.
5770         (mips_disassembler_options_n32): Likewise.
5771         (mips_disassembler_options_n64): Likewise.
5772         (gdb_print_insn_mips): Don't set `disassembler_options'.
5773         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5774         functions.
5775         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5776         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5777         `gdbarch_disassembler_options_implicit' and
5778         `gdbarch_valid_disassembler_options'.
5779         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5780         `disasm_options_and_args_t' structure.
5781         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5782         method.
5783         (valid_disassembler_options): Switch from `disasm_options_t' to
5784         the `disasm_options_and_args_t' structure.
5785         * NEWS: Document `set disassembler-options' support for the MIPS
5786         target.
5787         * gdbarch.h: Regenerate.
5788         * gdbarch.c: Regenerate.
5789
5790 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5791
5792         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5793
5794 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5795
5796         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5797         parameter in call to amd64_target_description.
5798         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5799         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5800         (amd64fbsd_init_abi): Likewise.
5801         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5802         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5803         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5804         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5805
5806 2018-06-29  Pedro Alves  <palves@redhat.com>
5807
5808         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5809         "segments" parameter.
5810         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5811         (_initialize_amd64_tdep): Update call to
5812         amd64_create_target_description.
5813         (amd64_target_description): Add "segments" parameter.  Adjust
5814         the implementation to use it.
5815         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5816         call to amd64_create_target_description.
5817         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5818         * gdb/arch/amd64.h (amd64_create_target_description): Add
5819         "segments" register.
5820         * gdb/arch/amd64.c (amd64_create_target_description): Add
5821         "segments" parameter.  Call create_feature_i386_64bit_segments
5822         only if SEGMENTS is true.
5823         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5824         call to amd64_create_target_description.
5825
5826 2018-06-29  Pedro Alves  <palves@redhat.com>
5827
5828         * thread.c (thread_target_id_str): New, factored out from ...
5829         (print_thread_info_1): ... here.  Use it to compute the max
5830         "Target Id" column width.
5831
5832 2018-06-29  Pedro Alves  <palves@redhat.com>
5833
5834         * remote.c (remote_target::extra_thread_info): Delete
5835         'display_buf' and 'n' locals.  from the cache, regardless of
5836         packet mechanims is in use.  Use cache for qThreadExtra and qP
5837         methods too.
5838
5839 2018-06-29  Pedro Alves  <palves@redhat.com>
5840
5841         * blockframe.c (find_pc_sect_containing_function): New function.
5842         * breakpoint.c (print_breakpoint_location): Don't call
5843         find_pc_sect_function.
5844         * linespec.c (create_sals_line_offset): Record the location's
5845         symbol in the sal.
5846         * linespec.c (convert_address_location_to_sals): Fill in sal's
5847         symbol with find_pc_sect_containing_function.
5848         * symtab.c (find_function_start_sal): Rename to ...
5849         (find_function_start_sal_1): ... this.
5850         (find_function_start_sal): Reimplement as wrapper around
5851         find_function_start_sal_1, and use
5852         find_pc_sect_containing_function to fill in the sal's symbol.
5853         (find_function_start_sal(symbol*, bool)): Adjust.
5854         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5855         comments.
5856         (find_pc_sect_containing_function): Declare.
5857
5858 2018-06-29  Pedro Alves  <palves@redhat.com>
5859
5860         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5861         true if the the location has no symbol.
5862
5863 2018-06-28  Tom Tromey  <tom@tromey.com>
5864
5865         * NEWS: Mention --enable-codesign.
5866         * silent-rules.mk (ECHO_SIGN): New variable.
5867         * configure.ac: Add --enable-codesign.
5868         * configure: Rebuild.
5869         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5870         (gdb$(EXEEXT)): Optionally invoke codesign.
5871
5872 2018-06-28  Pedro Alves  <palves@redhat.com>
5873
5874         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5875         comments.
5876         (switch_to_thread_no_regs): Adjust comment.
5877         * infcmd.c (stop_pc): Delete.
5878         (post_create_inferior, info_program_command): Replace references
5879         to stop_pc with references to thread_info->suspend.stop_pc.
5880         * inferior.h (stop_pc): Delete declaration.
5881         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5882         (handle_inferior_event_1, handle_signal_stop)
5883         (process_event_stop_test, keep_going_stepped_thread)
5884         (handle_step_into_function, handle_step_into_function_backward)
5885         (print_stop_location): Replace references to stop_pc with
5886         references to thread_info->suspend.stop_pc.
5887         (struct infcall_suspend_state) <stop_pc>: Delete field.
5888         (save_infcall_suspend_state, restore_infcall_suspend_state):
5889         Remove references to inf_stat->stop_pc.
5890         * linux-fork.c (fork_load_infrun_state): Likewise.
5891         * record-btrace.c (record_btrace_set_replay): Likewise.
5892         * record-full.c (record_full_goto_entry): Likewise.
5893         * remote.c (print_one_stopped_thread): Likewise.
5894         * target.c (target_resume): Extend comment.
5895         * thread.c (set_executing_thread): New.
5896         (set_executing): Use it.
5897         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5898         Remove references to stop_pc.
5899
5900 2018-06-28  Pedro Alves  <palves@redhat.com>
5901
5902         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5903         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5904
5905 2018-06-28  Tom Tromey  <tom@tromey.com>
5906
5907         * coffread.c (coff_symfile_finish): Update.
5908         * xcoffread.c (xcoff_symfile_finish): Update.
5909         * elfread.c (elf_symfile_finish): Update.
5910         * symfile.h (dwarf2_free_objfile): Don't declare.
5911         * dwarf2read.c (_initialize_dwarf2_read): Use
5912         register_objfile_data_with_cleanup.
5913         (dwarf2_free_objfile): Now static.  Change signature.
5914
5915 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5916
5917         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5918         option "-o" to add-symbol-file-load to add an offset to each
5919         section's load address.
5920         * symfile.c (set_objfile_default_section_offset): New function.
5921
5922 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5923
5924         * symfile.c (add_symbol_file_command): Make sure that sections
5925         with the same name are sorted in the same order.
5926
5927 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5928
5929         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5930         require the second argument.  If omitted, load sections at the
5931         addresses specified in the file.
5932
5933 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5934
5935         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5936         (_initialize_symfile): Add option "-o" to symbol-file to add an
5937         offset to each section of the symbol file.
5938
5939 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5940
5941         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5942
5943 2018-06-27  Tom Tromey  <tom@tromey.com>
5944
5945         * stack.c (_initialize_stack): Update "func" help text.
5946
5947 2018-06-27  Tom Tromey  <tom@tromey.com>
5948
5949         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5950         std::vector.
5951         (unwind_infopy_str, pyuw_create_unwind_info)
5952         (unwind_infopy_add_saved_register, pyuw_sniffer)
5953         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5954         Update.
5955         (struct saved_reg): Add constructor.
5956         <value>: Now a gdbpy_ref<>.
5957
5958 2018-06-27  Tom Tromey  <tom@tromey.com>
5959
5960         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5961
5962 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5963
5964         * gdb-gdb.py.in: Format using autopep8.
5965
5966 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5967
5968         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5969         (type_lookup_function): Recognize CORE_ADDR values.
5970
5971 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5972
5973         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5974         print tag_name.
5975
5976 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5977
5978         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5979         <__lt__>: Add.
5980
5981 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5982
5983         * gdb-gdb.py: Move to...
5984         * gdb-gdb.py.in: ... here.
5985         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5986         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5987         dependencies.
5988         (distclean): Remove gdb-gdb.py when cleaning.
5989         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5990         * configure: Re-generate.
5991
5992 2018-06-27  Pedro Alves  <palves@redhat.com>
5993
5994         * proc-service.c (get_ps_regcache): New.
5995         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5996         (ps_lsetfpregs): Use it.
5997
5998 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5999
6000         PR gdb/21695
6001         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6002         (dwarf_decode_lines_1): Adjust.
6003
6004 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6005
6006         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6007         override.
6008         <info_proc>: Likewise.
6009
6010 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6011
6012         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6013         to windows_fetch_one_register, and only handle the case of
6014         fetching one register.  Move the code that reloads the context
6015         and iterates over all registers if R is negative to...
6016         (windows_nat_target::fetch_registers): ... here.
6017         (do_windows_store_inferior_registers): Rename to
6018         windows_store_one_register, and only handle the case of storing
6019         one register.  Move the code that handles the case where r is
6020         negative to...
6021         (windows_nat_target::store_registers) ... here.
6022
6023 2018-06-26  Tom Tromey  <tom@tromey.com>
6024
6025         PR rust/22574:
6026         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6027         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6028         Update.
6029         (rust_internal_print_type): Add podata parameter.
6030         (rust_print_type): Update.
6031
6032 2018-06-26  Tom Tromey  <tom@tromey.com>
6033
6034         * typeprint.h (struct print_offset_data) <update, finish,
6035         maybe_print_hole>: New methods.
6036         <indentation>: New constant.
6037         * typeprint.c (print_offset_data::indentation): Define.
6038         (print_offset_data::maybe_print_hole, print_offset_data::update)
6039         (print_offset_data::finish): Move from c-typeprint.c and rename.
6040         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6041         (print_spaces_filtered_with_print_options): Update.
6042         (c_print_type_union_field_offset, maybe_print_hole)
6043         (c_print_type_struct_field_offset): Move to typeprint.c and
6044         rename.
6045         (c_type_print_base_struct_union): Update.
6046
6047 2018-06-25  Pedro Alves  <palves@redhat.com>
6048
6049         * gdbthread.h (thread_info_ref, delete_thread)
6050         (delete_thread_silent, first_thread_of_inferior)
6051         (any_thread_of_inferior, switch_to_thread)
6052         (enable_thread_stack_temporaries)
6053         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6054         (get_last_thread_stack_temporary)
6055         (value_in_thread_stack_temporaries, can_access_registers_thread):
6056         Spell out "struct thread_info" instead of just "thread_info".
6057         * inferior.h (notice_new_inferior): Likewise.
6058
6059 2018-06-25  Pedro Alves  <palves@redhat.com>
6060
6061         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6062         pass thread_info pointer to delete_thread.
6063         (windows_nat_target::detach): Pass inferior pointer to
6064         detach_inferior.
6065         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6066         delete_thread.
6067         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6068         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6069         and pass a thread_info pointer to delete_thread.
6070         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6071         pass thread_info pointer to delete_thread.
6072         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6073         delete_thread_silent call.
6074         * procfs.c (procfs_target::detach): Pass inferior pointer to
6075         detach_inferior.
6076         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6077         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6078         delete_thread_silent call.
6079         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6080         pass thread_info pointer to delete_thread.
6081         (windows_nat_target::detach): Pass inferior pointer to
6082         delete_inferior.
6083
6084 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6085
6086         * regcache.c (readable_regcache::read_part): Fix asserts.
6087         (reg_buffer::raw_collect_part): New function.
6088         (regcache::write_part): Fix asserts.
6089         (reg_buffer::raw_supply_part): New function.
6090         (regcache::transfer_regset_register): New helper function.
6091         (regcache::transfer_regset): Call new functions.
6092         (regcache_supply_regset): Use gdb_byte*.
6093         (regcache::supply_regset): Likewise.
6094         (regcache_collect_regset): Likewise.
6095         (regcache::collect_regset): Likewise.
6096         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6097         (reg_buffer::raw_supply_part): Likewise.
6098         (regcache::transfer_regset_register): Likewise.
6099         (regcache::transfer_regset): Use gdb_byte*.
6100
6101 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6102
6103         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6104
6105 2018-06-21  Pedro Alves  <palves@redhat.com>
6106
6107         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6108         instead of a ptid_t.  All callers adjusted.
6109         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6110         adjusted.
6111         (print_ada_task_info, display_current_task_id, task_command_1):
6112         Adjust.
6113         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6114         inferior_thread.
6115         (breakpoint_kind): Adjust.
6116         (remove_breakpoints_pid): Rename to ...
6117         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6118         pointer.  All callers adjusted.
6119         (bpstat_clear_actions): Use inferior_thread.
6120         (get_bpstat_thread): New.
6121         (bpstat_do_actions): Use it.
6122         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6123         to take a thread_info pointer.  All callers adjusted.
6124         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6125         (breakpoint_re_set_thread): Use inferior_thread.
6126         * breakpoint.h (struct inferior): Forward declare.
6127         (bpstat_stop_status): Update.
6128         (remove_breakpoints_pid): Delete.
6129         (remove_breakpoints_inf): New.
6130         * bsd-uthread.c (bsd_uthread_target::wait)
6131         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6132         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6133         (maint_btrace_packet_history_cmd)
6134         (maint_btrace_clear_packet_history_cmd): Adjust.
6135         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6136         inferior_thread.
6137         * cli/cli-interp.c: Include "inferior.h".
6138         * common/refcounted-object.h (struct
6139         refcounted_object_ref_policy): New.
6140         * compile/compile-object-load.c: Include gdbthread.h.
6141         (store_regs): Use inferior_thread.
6142         * corelow.c (core_target::close): Use current_inferior.
6143         (core_target_open): Adjust to use first_thread_of_inferior and use
6144         the current inferior.
6145         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6146         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6147         <thread>: ... this new field.  All references adjusted.
6148         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6149         Take a thread_info pointer instead of a ptid_t.
6150         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6151         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6152         thread_info pointer instead of a ptid_t.
6153         * elfread.c: Include "inferior.h".
6154         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6155         Use inferior_thread.
6156         * eval.c (evaluate_subexp): Likewise.
6157         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6158         inferior_thread.
6159         * gdb_proc_service.h (struct thread_info): Forward declare.
6160         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6161         <thread>: ... this new field.  All references adjusted.
6162         * gdbarch.h, gdbarch.c: Regenerate.
6163         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6164         'thread' parameter.  All implementations and callers adjusted.
6165         * gdbthread.h (thread_info) <set_running>: New method.
6166         (delete_thread, delete_thread_silent): Take a thread_info pointer
6167         instead of a ptid.
6168         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6169         (first_thread_of_process): Delete, replaced by ...
6170         (first_thread_of_inferior): ... this new function.  All callers
6171         adjusted.
6172         (any_live_thread_of_process): Delete, replaced by ...
6173         (any_live_thread_of_inferior): ... this new function.  All callers
6174         adjusted.
6175         (switch_to_thread, switch_to_no_thread): Declare.
6176         (is_executing): Delete.
6177         (enable_thread_stack_temporaries): Update comment.
6178         <enable_thread_stack_temporaries>: Take a thread_info pointer
6179         instead of a ptid_t.  Incref the thread.
6180         <~enable_thread_stack_temporaries>: Decref the thread.
6181         <m_ptid>: Delete
6182         <m_thr>: New.
6183         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6184         (get_last_thread_stack_temporary)
6185         (value_in_thread_stack_temporaries, can_access_registers_thread):
6186         Take a thread_info pointer instead of a ptid_t.  All callers
6187         adjusted.
6188         * infcall.c (get_call_return_value): Use inferior_thread.
6189         (run_inferior_call): Work with thread pointers instead of ptid_t.
6190         (call_function_by_hand_dummy): Work with thread pointers instead
6191         of ptid_t.  Use thread_info_ref.
6192         * infcmd.c (proceed_thread_callback): Access thread's state
6193         directly.
6194         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6195         access thread's state directly.
6196         (continue_command): Use inferior_thread.
6197         (info_program_command): Use find_thread_ptid and access thread
6198         state directly.
6199         (proceed_after_attach_callback): Use thread state directly.
6200         (notice_new_inferior): Take a thread_info pointer instead of a
6201         ptid_t.  All callers adjusted.
6202         (exit_inferior): Take an inferior pointer instead of a pid.  All
6203         callers adjusted.
6204         (exit_inferior_silent): New.
6205         (detach_inferior): Delete.
6206         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6207         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6208         (detach_inferior_command, kill_inferior_command): Use
6209         find_inferior_id instead of valid_gdb_inferior_id and
6210         gdb_inferior_id_to_pid.
6211         (inferior_command): Use inferior and thread pointers.
6212         * inferior.h (struct thread_info): Forward declare.
6213         (notice_new_inferior): Take a thread_info pointer instead of a
6214         ptid_t.  All callers adjusted.
6215         (detach_inferior): Delete declaration.
6216         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6217         instead of a pid.  All callers adjusted.
6218         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6219         (valid_gdb_inferior_id): Delete.
6220         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6221         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6222         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6223         ...
6224         <inf>: ... this new field.
6225         <step_ptid>: Delete, replaced by ...
6226         <step_thread>: ... this new field.
6227         (get_displaced_stepping_state): Take an inferior pointer instead
6228         of a pid.  All callers adjusted.
6229         (displaced_step_in_progress_any_inferior): Adjust.
6230         (displaced_step_in_progress_thread): Take a thread pointer instead
6231         of a ptid_t.  All callers adjusted.
6232         (displaced_step_in_progress, add_displaced_stepping_state): Take
6233         an inferior pointer instead of a pid.  All callers adjusted.
6234         (get_displaced_step_closure_by_addr): Adjust.
6235         (remove_displaced_stepping_state): Take an inferior pointer
6236         instead of a pid.  All callers adjusted.
6237         (displaced_step_prepare_throw, displaced_step_prepare)
6238         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6239         All callers adjusted.
6240         (start_step_over): Adjust.
6241         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6242         displaced step queue.
6243         (do_target_resume): Adjust.
6244         (fetch_inferior_event): Use inferior_thread.
6245         (context_switch, get_inferior_stop_soon): Take an
6246         execution_control_state pointer instead of a ptid_t.  All callers
6247         adjusted.
6248         (switch_to_thread_cleanup): Delete.
6249         (stop_all_threads): Use scoped_restore_current_thread.
6250         * inline-frame.c: Include "gdbthread.h".
6251         (inline_state) <inline_state>: Take a thread pointer instead of a
6252         ptid_t.  All callers adjusted.
6253         <ptid>: Delete, replaced by ...
6254         <thread>: ... this new field.
6255         (find_inline_frame_state): Take a thread pointer instead of a
6256         ptid_t.  All callers adjusted.
6257         (skip_inline_frames, step_into_inline_frame)
6258         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6259         pointer instead of a ptid_t.  All callers adjusted.
6260         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6261         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6262         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6263         pointers directly.
6264         * linux-nat.c (get_detach_signal): Likewise.
6265         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6266         (thread_db_notice_clone): Adjust.
6267         (thread_db_find_new_threads_silently)
6268         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6269         a thread pointer instead of a ptid_t.  All callers adjusted.
6270         * mi/mi-cmd-var.c: Include "inferior.h".
6271         (mi_cmd_var_update_iter): Update to use thread pointers.
6272         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6273         inferior directly.
6274         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6275         out to ...
6276         (mi_output_running): ... this new function.
6277         (mi_on_resume_1): Adjust to use it.
6278         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6279         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6280         directly.
6281         (interrupt_thread_callback): : Adjust to use thread and inferior
6282         pointers.
6283         * proc-service.c: Include "gdbthread.h".
6284         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6285         * progspace-and-thread.c: Include "inferior.h".
6286         * progspace.c: Include "inferior.h".
6287         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6288         hold a reference to an inferior_object.
6289         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6290         inferior_thread.
6291         * python/py-inferior.c (struct inferior_object): Give the type a
6292         tag name instead of a typedef.
6293         (python_on_normal_stop): No need to check if the current thread is
6294         listed.
6295         (inferior_to_inferior_object): Change return type to
6296         inferior_object.  All callers adjusted.
6297         (find_thread_object): Delete, bits factored out to ...
6298         (thread_to_thread_object): ... this new function.
6299         * python/py-infthread.c (create_thread_object): Use
6300         inferior_to_inferior_object.
6301         (thpy_is_stopped): Use thread pointer directly.
6302         (gdbpy_selected_thread): Use inferior_thread.
6303         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6304         field, replaced with ...
6305         <thread>: ... this new field.  All users adjusted.
6306         (btpy_insn_or_gap_new): Drop const.
6307         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6308         callers adjusted.
6309         * python/py-record.c: Include "gdbthread.h".
6310         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6311         a ptid_t.  All callers adjusted.
6312         (gdbpy_current_recording): Use inferior_thread.
6313         * python/py-record.h (recpy_record_object) <ptid>: Delete
6314         field, replaced with ...
6315         <thread>: ... this new field.  All users adjusted.
6316         (recpy_element_object) <ptid>: Delete
6317         field, replaced with ...
6318         <thread>: ... this new field.  All users adjusted.
6319         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6320         a ptid_t.  All callers adjusted.
6321         * python/py-threadevent.c: Include "gdbthread.h".
6322         (get_event_thread): Use thread_to_thread_object.
6323         * python/python-internal.h (struct inferior_object): Forward
6324         declare.
6325         (find_thread_object, find_inferior_object): Delete declarations.
6326         (thread_to_thread_object, inferior_to_inferior_object): New
6327         declarations.
6328         * record-btrace.c: Include "inferior.h".
6329         (require_btrace_thread): Use inferior_thread.
6330         (record_btrace_frame_sniffer)
6331         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6332         (get_thread_current_frame): Use scoped_restore_current_thread and
6333         switch_to_thread.
6334         (get_thread_current_frame): Use thread pointer directly.
6335         (record_btrace_replay_at_breakpoint): Use thread's inferior
6336         pointer directly.
6337         * record-full.c: Include "inferior.h".
6338         * regcache.c: Include "gdbthread.h".
6339         (get_thread_arch_regcache): Use the inferior's address space
6340         directly.
6341         (get_thread_regcache, registers_changed_thread): New.
6342         * regcache.h (get_thread_regcache(thread_info *thread)): New
6343         overload.
6344         (registers_changed_thread): New.
6345         (remote_target) <remote_detach_1>: Swap order of parameters.
6346         (remote_add_thread): <remote_add_thread>: Return the new thread.
6347         (get_remote_thread_info(ptid_t)): New overload.
6348         (remote_target::remote_notice_new_inferior): Use thread pointers
6349         directly.
6350         (remote_target::process_initial_stop_replies): Use
6351         thread_info::set_running.
6352         (remote_target::remote_detach_1, remote_target::detach)
6353         (extended_remote_target::detach): Adjust.
6354         * stack.c (frame_show_address): Use inferior_thread.
6355         * target-debug.h (target_debug_print_thread_info_pp): New.
6356         * target-delegates.c: Regenerate.
6357         * target.c (default_thread_address_space): Delete.
6358         (memory_xfer_partial_1): Use current_inferior.
6359         (target_detach): Use current_inferior.
6360         (target_thread_address_space): Delete.
6361         (generic_mourn_inferior): Use current_inferior.
6362         * target.h (struct target_ops) <thread_address_space>: Delete.
6363         (target_thread_address_space): Delete.
6364         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6365         pointers directly.
6366         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6367         thread pointer instead of a ptid_t.  Adjust all callers.
6368         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6369         (first_thread_of_process): Delete, replaced by ...
6370         (first_thread_of_inferior): ... this new function.  All callers
6371         adjusted.
6372         (any_thread_of_process): Rename to ...
6373         (any_thread_of_inferior): ... this, and take an inferior pointer.
6374         (any_live_thread_of_process): Rename to ...
6375         (any_live_thread_of_inferior): ... this, and take an inferior
6376         pointer.
6377         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6378         (value_in_thread_stack_temporaries)
6379         (get_last_thread_stack_temporary): Take a thread pointer instead
6380         of a ptid_t.  Adjust all callers.
6381         (thread_info::set_running): New.
6382         (validate_registers_access): Use inferior_thread.
6383         (can_access_registers_ptid): Rename to ...
6384         (can_access_registers_thread): ... this, and take a thread
6385         pointer.
6386         (print_thread_info_1): Adjust to compare thread pointers instead
6387         of ptids.
6388         (switch_to_no_thread, switch_to_thread): Make extern.
6389         (scoped_restore_current_thread::~scoped_restore_current_thread):
6390         Use m_thread pointer directly.
6391         (scoped_restore_current_thread::scoped_restore_current_thread):
6392         Use inferior_thread.
6393         (thread_command): Use thread pointer directly.
6394         (thread_num_make_value_helper): Use inferior_thread.
6395         * top.c (execute_command): Use inferior_thread.
6396         * tui/tui-interp.c: Include "inferior.h".
6397         * varobj.c (varobj_create): Use inferior_thread.
6398         (value_of_root_1): Use find_thread_global_id instead of
6399         global_thread_id_to_ptid.
6400
6401 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6402
6403         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6404         possible.
6405         (regcache::write_part): Likewise.
6406         (readable_regcache::cooked_read_part): Update comment.
6407         (readable_regcache::cooked_write_part): Likewise.
6408         * regcache.h: (readable_regcache::read_part): Likewise.
6409         (regcache::write_part): Likewise.
6410
6411 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6412             Dirk Schubert  <dirk.schubert@arm.com>
6413
6414         * aarch64-linux-nat.c (post_attach): New.
6415         (aarch64_linux_nat_target::post_attach): Override post_attach to
6416         record the number of hardware debug registers.
6417
6418 2018-06-20  Tom Tromey  <tom@tromey.com>
6419
6420         * python/py-param.c (add_setshow_generic): Make parameters const.
6421         (parmpy_init): Update.
6422
6423 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6424
6425         * regcache.h (regcache_cooked_read_ftype): Rename to...
6426         (register_read_ftype): ...this, change type to function_view.
6427         (class reg_buffer) <save>: Remove src parameter.
6428         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6429         parameter non-const in first overload.  Remove src parameter in
6430         second overload.
6431         * regcache.c (do_cooked_read): Remove.
6432         (readonly_detached_regcache::readonly_detached_regcache): Make
6433         parameter non-const, adjust call to other constructor.
6434         (reg_buffer::save): Remove src parameter.
6435         * frame.c (do_frame_register_read): Remove.
6436         (frame_save_as_regcache): Use lambda function.
6437         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6438         parameter to ppu2spu_data *.
6439         (ppu2spu_sniffer): Use lambda function.
6440
6441 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6442
6443         * record-full.c (record_full_target::insert_breakpoint): Remove
6444         "struct" keyword, add const.
6445
6446 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6447
6448         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6449         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6450         * configure.ac: Remove AC_PREREQ, add missing quoting.
6451         * gnulib/configure.ac: Modernize usage of
6452         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6453         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6454         (AUTOMAKE_VERSION): Bump to 1.15.1.
6455         * configure: Re-generate.
6456         * config.in: Re-generate.
6457         * aclocal.m4: Re-generate.
6458         * gnulib/aclocal.m4: Re-generate.
6459         * gnulib/config.in: Re-generate.
6460         * gnulib/configure: Re-generate.
6461         * gnulib/import/Makefile.in: Re-generate.
6462
6463 2018-06-19  Pedro Alves  <palves@redhat.com>
6464
6465         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6466         (lookup_minimal_symbol_by_pc_section): ... here with
6467         gdb_assert_not_reached added.
6468
6469 2018-06-19  Pedro Alves  <palves@redhat.com>
6470
6471         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6472         parameter with a block parameter.  Compare location's block symbol
6473         with the frame's block instead of addresses.
6474         (skip_inline_frames): Pass the current block instead of the
6475         frame's address.  Break out as soon as we determine the frame
6476         should not be skipped.
6477
6478 2018-06-18  Tom Tromey  <tom@tromey.com>
6479
6480         * solib-aix.c (solib_aix_get_section_offsets): Return
6481         unique_xmalloc_ptr.
6482         (solib_aix_solib_create_inferior_hook): Update.
6483
6484 2018-06-18  Tom Tromey  <tom@tromey.com>
6485
6486         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6487
6488 2018-06-18  Tom Tromey  <tom@tromey.com>
6489
6490         * solib-frv.c (frv_relocate_main_executable): Use
6491         unique_xmalloc_ptr.
6492         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6493         unique_xmalloc_ptr.
6494
6495 2018-06-18  Tom Tromey  <tom@tromey.com>
6496
6497         * objfiles.h (inhibit_section_map_updates): Update.
6498         (resume_section_map_updates, resume_section_map_updates_cleanup):
6499         Remove.
6500         * solib-svr4.c (svr4_handle_solib_event): Update.
6501         * objfiles.c (inhibit_section_map_updates): Return
6502         scoped_restore_tmpl<int>.
6503         (resume_section_map_updates, resume_section_map_updates_cleanup):
6504         Remove.
6505
6506 2018-06-18  Tom Tromey  <tom@tromey.com>
6507
6508         * valprint.h (read_string): Update.
6509         * valprint.c (read_string): Change type of "buffer".
6510         (val_print_string): Update.
6511         * python/py-value.c (valpy_string): Update.
6512         * language.h (struct language_defn) <la_get_string>: Change
6513         type of "buffer".
6514         (default_get_string, c_get_string): Update.
6515         * language.c (default_get_string): Change type of "buffer".
6516         * guile/scm-value.c (gdbscm_value_to_string): Update.
6517         * c-lang.c (c_get_string): Change type of "buffer".
6518
6519 2018-06-18  Tom Tromey  <tom@tromey.com>
6520
6521         * ser-mingw.c (struct pipe_state_destroyer): New.
6522         (pipe_state_up): New typedef.
6523         (cleanup_pipe_state): Remove.
6524         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6525
6526 2018-06-18  Tom Tromey  <tom@tromey.com>
6527
6528         * rust-lang.h (rust_yyerror): Don't declare.
6529         * rust-lang.c (rust_language_defn): Update.
6530         * rust-exp.y (yyerror): Now static.
6531         * parse.c (parse_exp_in_context_1): Update.
6532         * p-lang.h (p_yyerror): Don't declare.
6533         * p-lang.c (p_language_defn): Update.
6534         * p-exp.y (yyerror): Now static.
6535         * opencl-lang.c (opencl_language_defn): Update.
6536         * objc-lang.c (objc_language_defn): Update.
6537         * m2-lang.h (m2_yyerror): Don't declare.
6538         * m2-lang.c (m2_language_defn): Update.
6539         * m2-exp.y (yyerror): Now static.
6540         * language.h (struct language_defn) <la_error>: Remove.
6541         * language.c (unk_lang_error): Remove.
6542         (unknown_language_defn, auto_language_defn): Remove.
6543         * go-lang.h (go_yyerror): Don't declare.
6544         * go-lang.c (go_language_defn): Update.
6545         * go-exp.y (yyerror): Now static.
6546         * f-lang.h (f_yyerror): Don't declare.
6547         * f-lang.c (f_language_defn): Update.
6548         * f-exp.y (yyerror): Now static.
6549         * d-lang.h (d_yyerror): Don't declare.
6550         * d-lang.c (d_language_defn): Update.
6551         * d-exp.y (yyerror): Now static.
6552         * c-lang.h (c_yyerror): Don't declare.
6553         * c-lang.c (c_language_defn, cplus_language_defn)
6554         (asm_language_defn, minimal_language_defn): Update.
6555         * c-exp.y (yyerror): Now static.
6556         * ada-lang.h (ada_yyerror): Don't declare.
6557         * ada-lang.c (ada_language_defn): Update.
6558         * ada-exp.y (yyerror): Now static.
6559
6560 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6561
6562         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6563         (store_sveregs_to_thread): Likewise.
6564         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6565         (aarch64_linux_store_inferior_registers): Likewise.
6566         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6567         function.
6568         (aarch64_sve_regs_copy_to_regcache): Likewise.
6569         (aarch64_sve_regs_copy_from_regcache): Likewise.
6570         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6571         declaration.
6572         (aarch64_sve_regs_copy_to_regcache): Likewise.
6573         (aarch64_sve_regs_copy_from_regcache): Likewise.
6574         (sve_context): Structure from Linux headers.
6575         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6576         (SVE_SIG_ZREG_SIZE): Likewise.
6577         (SVE_SIG_PREG_SIZE): Likewise.
6578         (SVE_SIG_FFR_SIZE): Likewise.
6579         (SVE_SIG_REGS_OFFSET): Likewise.
6580         (SVE_SIG_ZREGS_OFFSET): Likewise.
6581         (SVE_SIG_ZREG_OFFSET): Likewise.
6582         (SVE_SIG_ZREGS_SIZE): Likewise.
6583         (SVE_SIG_PREGS_OFFSET): Likewise.
6584         (SVE_SIG_PREG_OFFSET): Likewise.
6585         (SVE_SIG_PREGS_SIZE): Likewise.
6586         (SVE_SIG_FFR_OFFSET): Likewise.
6587         (SVE_SIG_REGS_SIZE): Likewise.
6588         (SVE_SIG_CONTEXT_SIZE): Likewise.
6589         (SVE_PT_REGS_MASK): Likewise.
6590         (SVE_PT_REGS_FPSIMD): Likewise.
6591         (SVE_PT_REGS_SVE): Likewise.
6592         (SVE_PT_VL_INHERIT): Likewise.
6593         (SVE_PT_VL_ONEXEC): Likewise.
6594         (SVE_PT_REGS_OFFSET): Likewise.
6595         (SVE_PT_FPSIMD_OFFSET): Likewise.
6596         (SVE_PT_FPSIMD_SIZE): Likewise.
6597         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6598         (SVE_PT_SVE_PREG_SIZE): Likewise.
6599         (SVE_PT_SVE_FFR_SIZE): Likewise.
6600         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6601         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6602         (__SVE_SIG_TO_PT): Likewise.
6603         (SVE_PT_SVE_OFFSET): Likewise.
6604         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6605         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6606         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6607         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6608         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6609         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6610         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6611         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6612         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6613         (SVE_PT_SVE_SIZE): Likewise.
6614         (SVE_PT_SIZE): Likewise.
6615         (HAS_SVE_STATE): New define.
6616
6617 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6618
6619         * nat/aarch64-sve-linux-sigcontext.h: New file.
6620         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6621         new files.
6622         (SVE_VQ_MIN): Likewise.
6623         (SVE_VQ_MAX): Likewise.
6624         (SVE_VL_MIN): Likewise.
6625         (SVE_VL_MAX): Likewise.
6626         (SVE_NUM_ZREGS): Likewise.
6627         (SVE_NUM_PREGS): Likewise.
6628         (sve_vl_valid): Likewise.
6629         (struct user_sve_header): Likewise.
6630
6631 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6632             Richard Bunt <Richard.Bunt@arm.com>
6633
6634         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6635         was requested by GDB.
6636
6637 2018-06-15  Tom de Vries  <tdevries@suse.de>
6638
6639         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6640
6641 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6642
6643         * gnulib/update-gnulib.sh: Print expected versions of
6644         autoconf/aclocal.
6645
6646 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6647
6648         * arch-utils.c (default_type_align): Use type_length_units.
6649         * gdbtypes.c (type_align): Use type_length_units.
6650
6651 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6652
6653         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6654         of 'define' command.
6655
6656 2018-06-14  Tom de Vries  <tdevries@suse.de>
6657
6658         PR cli/22573
6659         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6660         get_no_prettyformat_print_options.
6661
6662 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6663
6664         * sparc-nat.h: Include target.h.
6665         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6666         <fetch_registers>: Remove this argument in function call.
6667         <store_registers>: Remove this argument in function call, remove
6668         extra semicolon.
6669         <low_forget_process>: Call sparc64_forget_process instead of
6670         sparc_forget_process.
6671
6672 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6673
6674         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6675         (procfs_target::make_corefile_notes): Adjust to new
6676         target_read_alloc return type.
6677
6678 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6679             Stephen Roberts  <stephen.roberts@arm.com>
6680
6681         PR gdb/22882
6682         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6683         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6684         Move should_notify_stop local into more inner scope.
6685
6686 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6687             Stephen Roberts  <stephen.roberts@arm.com>
6688
6689         PR gdb/22882
6690         * infrun.c (resume_1): Add call to mark_async_event_handler.
6691
6692 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6693
6694         * infrun.c (do_target_wait): Change old version of $pc printed.
6695
6696 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6697
6698         * dwarf2read.c (read_index_from_section): Rename to...
6699         (read_gdb_index_from_section): ... this, update all callers.
6700         (dwarf2_read_index): Rename to...
6701         (dwarf2_read_gdb_index): ... this, update all callers.
6702
6703 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6704
6705         * gdb/hppa-linux-nat.c
6706         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6707         hppa_linux_nat_target::fetch_registers.
6708
6709 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6710
6711         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6712         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6713         (AARCH64_DWARF_SVE_FFR): Likewise.
6714         (AARCH64_DWARF_SVE_P0): Likewise.
6715         (AARCH64_DWARF_SVE_Z0): Likewise.
6716
6717 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6718
6719         * common/common-regcache.h (raw_compare): New function.
6720         * regcache.c (regcache::raw_compare): Likewise.
6721         * regcache.h (regcache::raw_compare): New declaration.
6722
6723 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6724
6725         * common/common-regcache.h (reg_buffer_common): New structure.
6726         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6727         (reg_buffer::raw_supply): Likewise.
6728         (reg_buffer::raw_supply_integer): Likewise.
6729         (reg_buffer::raw_supply_zeroed): Likewise.
6730         (reg_buffer::raw_collect): Likewise.
6731         (reg_buffer::raw_collect_integer): Likewise.
6732         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6733         (reg_buffer::raw_supply): Likewise.
6734         (reg_buffer::raw_supply_integer): Likewise.
6735         (reg_buffer::raw_supply_zeroed): Likewise.
6736         (reg_buffer::raw_collect): Likewise.
6737         (reg_buffer::raw_collect_integer): Likewise.
6738
6739 2018-06-10  Tom Tromey  <tom@tromey.com>
6740
6741         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6742         (class remote_state) <stop_reply_queue>: Now std::vector.
6743         (remote_state::~remote_state)
6744         (remote_target::stop_reply_queue_length): Update.
6745         (struct queue_iter_param, remove_child_of_pending_fork)
6746         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6747         (check_pending_event_prevents_wildcard_vcont_callback)
6748         (remove_stop_reply_for_inferior)
6749         (remove_stop_reply_of_remote_state)
6750         (remote_notif_remove_once_on_match)
6751         (stop_reply_match_ptid_and_ws)
6752         (remote_kill_child_of_pending_fork): Remove.
6753         (remote_target::remove_new_fork_children)
6754         (remote_target::check_pending_events_prevent_wildcard_vcont)
6755         (remote_target::discard_pending_stop_replies)
6756         (remote_target::discard_pending_stop_replies_in_queue)
6757         (remote_target::remote_notif_remove_queued_reply)
6758         (remote_target::queued_stop_reply)
6759         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6760         (remote_target::wait, remote_target::kill_new_fork_children)
6761         (remote_target::async): Update.
6762
6763 2018-06-10  Tom Tromey  <tom@tromey.com>
6764
6765         * record-full.c (record_full_arch_list_cleanups): Remove.
6766         (record_full_message): Use try/catch.
6767         (record_full_wait_cleanups): Remove.
6768         (record_full_wait_1): Use try/catch.
6769         (record_full_restore): Likewise.
6770
6771 2018-06-10  Tom Tromey  <tom@tromey.com>
6772
6773         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6774         declare VEC.  Add constructor.
6775         <in_target_beneath>: Now bool.
6776         (record_full_breakpoints): Now a std::vector, static.
6777         (record_full_sync_record_breakpoints)
6778         (record_full_init_record_breakpoints)
6779         (record_full_target::insert_breakpoint)
6780         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6781
6782 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6783
6784         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6785         * serial.c (serial_interface_lookup): Remove struct keyword.
6786
6787 2018-06-10  Tom Tromey  <tom@tromey.com>
6788
6789         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6790         method.
6791         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6792         a method.
6793         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6794         method.
6795         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6796         "beneath" as a method.
6797         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6798         Use "beneath" as a method.
6799
6800 2018-06-10  Tom Tromey  <tom@tromey.com>
6801
6802         * tracefile.c (struct trace_file_writer_deleter): New.
6803         <operator()>: Rename from trace_file_writer_xfree.
6804         (trace_file_writer_up): New typedef.
6805         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6806
6807 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6808
6809         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6810         <m_registers, m_register_status>: Change type to
6811         std::unique_ptr.
6812         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6813         XCNEWVEC.
6814
6815 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6816
6817         * common/common-regcache.h (enum register_status): Add
6818         underlying type "signed char".
6819         * regcache.h (reg_buffer) <m_register_status>: Change type to
6820         register_status *.
6821         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6822         register_status instead of signed char.
6823         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6824         (reg_buffer::get_register_status): Remove cast.
6825         (readable_regcache::raw_read): Remove cast.
6826         (readable_regcache::cooked_read): Remove cast.
6827
6828 2018-06-09  Tom Tromey  <tom@tromey.com>
6829
6830         * source.c (reverse_search_command, forward_search_command): Use
6831         scoped_fd.
6832
6833 2018-06-09  Tom Tromey  <tom@tromey.com>
6834
6835         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6836         (serial_ops_list): Now static, std::vector.
6837         (serial_interface_lookup, serial_add_interface): Update.
6838
6839 2018-06-09  Tom Tromey  <tom@tromey.com>
6840
6841         * dwarf2read.c (process_cu_includes): Update.
6842         (process_full_comp_unit): Update.
6843         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6844         std::vector.
6845
6846 2018-06-08  Paul Koning  <paul_koning@dell.com>
6847
6848         PR gdb/23252
6849
6850         * python/python.c (do_start_initialization):
6851         Avoid call to internal Python API.
6852         (init__gdb_module): New function.
6853
6854 2018-06-08  Gary Benson <gbenson@redhat.com>
6855
6856         * linux-thread-db.c (valprint.h): New include.
6857         (struct check_thread_db_info): New structure.
6858         (check_thread_db_on_load, tdb_testinfo): New static globals.
6859         (check_thread_db, check_thread_db_callback): New functions.
6860         (try_thread_db_load_1): Run integrity checks if requested.
6861         (maintenance_check_libthread_db): New function.
6862         (_initialize_thread_db): Register "maint check libthread-db"
6863         and "maint set/show check-libthread-db".
6864         * NEWS: Mention the above new commands.
6865
6866 2018-06-08  Tom Tromey  <tom@tromey.com>
6867
6868         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6869         now a method.
6870
6871 2018-06-08  Tom Tromey  <tom@tromey.com>
6872
6873         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6874
6875 2018-06-08  Tom Tromey  <tom@tromey.com>
6876
6877         * common/btrace-common.h (struct btrace_data): Add constructor,
6878         destructor, move assignment operator.
6879         <empty, clear, fini>: New methods.
6880         <format>: Initialize.
6881         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6882         (btrace_data_empty): Don't declare.
6883         * common/btrace-common.c (btrace_data_init): Remove.
6884         (btrace_data::fini): Rename from btrace_data_fini.
6885         (btrace_data::empty): Rename from btrace_data_empty.
6886         (btrace_data::clear): Rename from btrace_data_clear.  Return
6887         bool.
6888         * btrace.h (make_cleanup_btrace_data): Don't declare.
6889         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6890         (parse_xml_btrace): Update.
6891         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6892         (maint_btrace_clear_packet_history_cmd): Update.
6893
6894 2018-06-07  Pedro Alves  <palves@redhat.com>
6895
6896         * target.h (target_ops) <beneath>: Now a method.  All references
6897         updated.
6898         (class target_stack): New.
6899         * target.c (g_target_stack): New.
6900         (g_current_top_target): Delete.
6901         (current_top_target): Get the top target out of g_target_stack.
6902         (target_stack::push, target_stack::unpush): New.
6903         (push_target, unpush_target): Reimplement.
6904         (target_is_pushed): Reimplement in terms of g_target_stack.
6905         (target_ops::beneath, target_stack::find_beneath): New.
6906
6907 2018-06-07  Pedro Alves  <palves@redhat.com>
6908
6909         * target.h (find_target_beneath): Delete declaration.
6910         * target.c (find_target_beneath): Delete definition.
6911         * aix-thread.c: All callers of find_target_beneath adjusted to
6912         call target_ops::beneath instead.
6913         * bsd-uthread.c: Likewise.
6914         * linux-thread-db.c: Likewise.
6915         * ravenscar-thread.c: Likewise.
6916         * sol-thread.c: Likewise.
6917         * spu-multiarch.c: Likewise.
6918
6919 2018-06-07  Pedro Alves  <palves@redhat.com>
6920
6921         * target.h (target_ops) <beneath>: Now a method.  All references
6922         updated.
6923         (target_ops) <m_beneath>: New.
6924         * target.c (target_ops::beneath): New.
6925         * corelow.c: Adjust all references to target_ops::beneath.
6926         * linux-thread-db.c: Likewise.
6927         * make-target-delegates: Likewise.
6928         * record-btrace.c: Likewise.
6929         * record-full.c: Likewise.
6930         * remote.c: Likewise.
6931         * target.c: Likewise.
6932         * target-delegates.c: Regenerate.
6933
6934 2018-06-07  Pedro Alves  <palves@redhat.com>
6935
6936         * target.h (target_stack): Delete.
6937         (current_top_target): Declare function.
6938         * target.c (target_stack): Delete.
6939         (g_current_top_target): New.
6940         (current_top_target): New function.
6941         * auxv.c: Use current_top_target instead of target_stack
6942         throughout.
6943         * avr-tdep.c: Likewise.
6944         * breakpoint.c: Likewise.
6945         * corefile.c: Likewise.
6946         * elfread.c: Likewise.
6947         * eval.c: Likewise.
6948         * exceptions.c: Likewise.
6949         * frame.c: Likewise.
6950         * gdbarch-selftests.c: Likewise.
6951         * gnu-v3-abi.c: Likewise.
6952         * ia64-tdep.c: Likewise.
6953         * ia64-vms-tdep.c: Likewise.
6954         * infcall.c: Likewise.
6955         * infcmd.c: Likewise.
6956         * infrun.c: Likewise.
6957         * linespec.c: Likewise.
6958         * linux-tdep.c: Likewise.
6959         * minsyms.c: Likewise.
6960         * ppc-linux-nat.c: Likewise.
6961         * ppc-linux-tdep.c: Likewise.
6962         * procfs.c: Likewise.
6963         * regcache.c: Likewise.
6964         * remote.c: Likewise.
6965         * rs6000-tdep.c: Likewise.
6966         * s390-linux-nat.c: Likewise.
6967         * s390-tdep.c: Likewise.
6968         * solib-aix.c: Likewise.
6969         * solib-darwin.c: Likewise.
6970         * solib-dsbt.c: Likewise.
6971         * solib-spu.c: Likewise.
6972         * solib-svr4.c: Likewise.
6973         * solib-target.c: Likewise.
6974         * sparc-tdep.c: Likewise.
6975         * sparc64-tdep.c: Likewise.
6976         * spu-tdep.c: Likewise.
6977         * symfile.c: Likewise.
6978         * symtab.c: Likewise.
6979         * target-descriptions.c: Likewise.
6980         * target-memory.c: Likewise.
6981         * target.c: Likewise.
6982         * target.h: Likewise.
6983         * tracefile-tfile.c: Likewise.
6984         * tracepoint.c: Likewise.
6985         * valops.c: Likewise.
6986         * valprint.c: Likewise.
6987         * value.c: Likewise.
6988         * windows-tdep.c: Likewise.
6989         * mi/mi-main.c: Likewise.
6990
6991 2018-06-07  Tom Tromey  <tom@tromey.com>
6992
6993         * valprint.h (build_address_symbolic): Declare.
6994         * printcmd.c (print_address_symbolic): Update.
6995         (build_address_symbolic): Change "name" and "filename" to
6996         std::string.
6997         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6998         Update.
6999         * defs.h (build_address_symbolic): Remove declaration.
7000
7001 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7002
7003         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7004         (aarch64_vnv_type): Add function.
7005         (aarch64_pseudo_register_name): Add V regs for SVE.
7006         (aarch64_pseudo_register_type): Likewise.
7007         (aarch64_pseudo_register_reggroup_p): Likewise.
7008         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7009         (aarch64_pseudo_read_value): Add V regs for SVE.
7010         (aarch64_pseudo_write_2): Use V0 offset for SVE
7011         (aarch64_pseudo_write): Add V regs for SVE.
7012         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7013
7014 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7015
7016         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7017         (sve_vl_from_vq): Likewise.
7018
7019 2018-06-05  Tom Tromey  <tom@tromey.com>
7020
7021         * cli/cli-cmds.c (show_version): Update.
7022         * top.c (print_gdb_version): Add "interactive" parameter.
7023         Update.
7024         * main.c (captured_main_1): Update.
7025         * top.h (print_gdb_version): Add "interactive" parameter and a
7026         comment.
7027
7028 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7029
7030         * common/enum-flags.h: Add trailing semicolon to example in
7031         comment.
7032
7033 2018-06-05  Tom Tromey  <tom@tromey.com>
7034
7035         PR cli/12326:
7036         * NEWS: Add entry about pager.
7037         * utils.c (pagination_disabled_for_command): New global.
7038         (prompt_for_continue): Allow "c" response to prompt.
7039         (reinitialize_more_filter): Clear
7040         pagination_disabled_for_command.
7041         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7042
7043 2018-06-04  Tom Tromey  <tom@tromey.com>
7044
7045         * ada-lang.h (ada_lookup_symbol_list): Update.
7046         * ada-lang.c (resolve_subexp): Update.
7047         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7048         parameter.
7049         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7050         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7051         results parameter to std::vector.
7052         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7053         Update.
7054         * ada-exp.y (block_lookup): Update.
7055         (select_possible_type_sym): Change type of syms.  Remove nsyms
7056         parameter.
7057         (write_var_or_type, write_name_assoc): Update.
7058
7059 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7060
7061         * windows-nat.c (windows_nat_target::xfer_partial): Return
7062         TARGET_XFER_E_IO if we need to delegate to the target beneath
7063         but BENEATH is NULL.
7064
7065 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7066
7067         * Makefile.in (config.status): Add configure.nat as a
7068         dependency.
7069
7070 2018-06-04  Tom Tromey  <tom@tromey.com>
7071
7072         * cp-name-parser.y (cpname_state): Add method declarations.
7073         (HANDLE_QUAL): Update.
7074         (cpname_state::d_grab, cpname_state::fill_comp)
7075         (cpname_state::make_operator, cpname_state::make_dtor)
7076         (cpname_state::make_builtin_type, cpname_state::make_name)
7077         (cpname_state::d_qualify, cpname_state::d_int_type)
7078         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7079         (%union): Move earlier.
7080
7081 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7082
7083         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7084
7085 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7086
7087         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7088         (aarch64_pseudo_write_1): Likewise.
7089         (aarch64_pseudo_read_value): Use helper.
7090         (aarch64_pseudo_write): Likewise.
7091
7092 2018-06-04  Pedro Alves  <palves@redhat.com>
7093
7094         * darwin-nat.c (darwin_ops): Delete.
7095         (darwin_attach_pid): Use get_native_target.
7096
7097 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7098
7099         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7100         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7101
7102 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7103
7104         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7105         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7106         (aarch64_gdbarch_init): Check for SVE.
7107         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7108
7109 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7110
7111         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7112         * aarch64-tdep.h (aarch64_read_description): Likewise.
7113         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7114         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7115         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7116         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7117         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7118
7119 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7120
7121         * value.c (value_fetch_lazy_bitfield): New.
7122         (value_fetch_lazy_memory): New.
7123         (value_fetch_lazy_register): New.
7124         (value_fetch_lazy): Factor out to smaller functions.
7125
7126 2018-06-01  Tom Tromey  <tom@tromey.com>
7127
7128         * cp-name-parser.y (backslashable, represented): Now const.
7129
7130 2018-06-01  Tom Tromey  <tom@tromey.com>
7131
7132         * cp-name-parser.y: Include parser-defs.h.
7133         (parser_fprintf): Remove declaration.
7134
7135 2018-06-01  Tom Tromey  <tom@tromey.com>
7136
7137         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7138         %parse-param.
7139         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7140         (global_result): Remove globals.
7141         (struct cpname_state): New.
7142         (yyparse): Don't declare.
7143         (yylex, yyerror): Move declarations after %union.
7144         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7145         (make_name): Add state parameter.
7146         Update all callers.
7147         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7148         parameter.
7149         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7150         Update.
7151         (yylex): Add lvalp, state parameters.
7152         (yyerror): Add state parameter.
7153         (cp_demangled_name_to_comp): Update.
7154
7155 2018-06-01  Tom Tromey  <tom@tromey.com>
7156
7157         * cp-name-parser.y (parser_fprintf): Declare.
7158         (GDB_YY_REMAP_PREFIX): Define.
7159         Include yy-remap.h.  Don't redefine yy* identifiers.
7160
7161 2018-06-01  Tom Tromey  <tom@tromey.com>
7162
7163         * python/py-type.c (typy_legacy_template_argument): Update.
7164         * cp-support.h (cp_demangled_name_to_comp): Update.
7165         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7166         parameter to be a "std::string *".
7167         (main): Update.
7168
7169 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7170
7171         * ada-lex.l: Include "diagnostics.h" instead of
7172         "common/diagnostics.h".
7173         * unittests/environ-selftests.c: Likewise.
7174         * common/diagnostics.h: Moved to ../include.
7175
7176 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7177
7178         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7179         to language_mode_manual while calling breakpoint_re_set_one.
7180
7181 2018-06-01  Tom Tromey  <tom@tromey.com>
7182
7183         * valops.c (value_cast_structs, destructor_name_p): Update.
7184         * symtab.c (gdb_mangle_name): Update.
7185         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7186         Update.
7187         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7188         (pascal_object_print_value_fields, pascal_object_print_value):
7189         Update.
7190         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7191         * linespec.c (find_methods): Update.
7192         * gdbtypes.h (type_name_no_tag): Remove.
7193         (type_name_or_error): Rename from type_name_no_tag_or_error.
7194         * gdbtypes.c (type_name_no_tag): Remove.
7195         (type_name_or_error): Rename from type_name_no_tag_or_error.
7196         (lookup_struct_elt_type, check_typedef): Update.
7197         * expprint.c (print_subexp_standard): Update.
7198         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7199         * d-namespace.c (d_lookup_nested_symbol): Update.
7200         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7201         (cp_print_class_member): Update.
7202         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7203         * completer.c (add_struct_fields): Update.
7204         * c-typeprint.c (cp_type_print_derivation_info)
7205         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7206         Update.
7207         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7208         (ada_prefer_type, ada_is_exception_sym): Update.
7209
7210 2018-06-01  Tom Tromey  <tom@tromey.com>
7211
7212         * valops.c (enum_constant_from_type, value_namespace_elt)
7213         (value_maybe_namespace_elt): Update.
7214         * valarith.c (find_size_for_pointer_math): Update.
7215         * target-descriptions.c (make_gdb_type): Update.
7216         * symmisc.c (print_symbol): Update.
7217         * stabsread.c (define_symbol, read_type)
7218         (complain_about_struct_wipeout, add_undefined_type)
7219         (cleanup_undefined_types_1): Update.
7220         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7221         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7222         (rust_internal_print_type, rust_composite_type)
7223         (rust_evaluate_funcall, rust_evaluate_subexp)
7224         (rust_inclusive_range_type_p): Update.
7225         * python/py-type.c (typy_get_tag): Update.
7226         * p-typeprint.c (pascal_type_print_base): Update.
7227         * mdebugread.c (parse_symbol, parse_type): Update.
7228         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7229         Update.
7230         * guile/scm-type.c (gdbscm_type_tag): Update.
7231         * go-lang.c (sixg_string_p): Update.
7232         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7233         Update.
7234         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7235         (TYPE_TAG_NAME): Remove.
7236         * gdbtypes.c (type_name_no_tag): Simplify.
7237         (check_typedef, check_types_equal, recursive_dump_type)
7238         (copy_type_recursive, arch_composite_type): Update.
7239         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7240         in summary mode when needed.
7241         * eval.c (evaluate_funcall): Update.
7242         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7243         (process_structure_scope, read_enumeration_type)
7244         (read_namespace_type, read_module_type, determine_prefix): Update.
7245         * cp-support.c (inspect_type): Update.
7246         * coffread.c (process_coff_symbol, decode_base_type): Update.
7247         * c-varobj.c (c_is_path_expr_parent): Update.
7248         * c-typeprint.c (c_type_print_base_struct_union): Update.
7249         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7250         summary when using C language.
7251         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7252         (gen_maybe_namespace_elt): Update.
7253         * ada-lang.c (ada_type_name): Simplify.
7254         (empty_record, ada_template_to_fixed_record_type_1)
7255         (template_to_static_fixed_type)
7256         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7257
7258 2018-06-01  Tom Tromey  <tom@tromey.com>
7259
7260         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7261         c_print_type.
7262         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7263         (c_print_type): Update.
7264         (c_print_type): New overload.
7265         (c_type_print_varspec_prefix, c_type_print_args)
7266         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7267         (c_type_print_base_struct_union, c_type_print_base_1)
7268         (cp_type_print_method_args): Add "language" parameter.
7269         (c_type_print_base): Update.
7270         * c-lang.h (c_print_type): Add new overload.
7271
7272 2018-06-01  Tom Tromey  <tom@tromey.com>
7273
7274         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7275         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7276
7277 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7278
7279         * aarch64-tdep.c (aarch64_sve_register_names): New const
7280         var.
7281         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7282         (AARCH64_SVE_Z_REGS_NUM): New define.
7283         (AARCH64_SVE_P_REGS_NUM): Likewise.
7284         (AARCH64_SVE_NUM_REGS): Likewise.
7285
7286 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7287
7288         * nat/linux-ptrace.h [__alpha__]
7289         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7290         definitions.
7291
7292 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7293
7294         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7295         the endianness selected.
7296         * NEWS: Document `set endian auto' mode operation update.
7297
7298 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7299
7300         * Makefile.in: Add new header.
7301         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7302         (sve_vl_from_vg): Likewise.
7303         (sve_vq_from_vl): Likewise.
7304         (sve_vl_from_vq): Likewise.
7305         (sve_vq_from_vg): Likewise.
7306         (sve_vg_from_vq): Likewise.
7307         * configure.nat: Add new c file.
7308         * nat/aarch64-sve-linux-ptrace.c: New file.
7309         * nat/aarch64-sve-linux-ptrace.h: New file.
7310
7311 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7312
7313         * aarch64-linux-nat.c (aarch64_linux_read_description):
7314         Add parmeter zero.
7315         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7316         Likewise.
7317         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7318         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7319         (aarch64_gdbarch_init): Add parmeter zero.
7320         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7321         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7322         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7323         parmeter.
7324         * doc/gdb.texinfo: Describe SVE feature
7325         * features/aarch64-sve.c: New file.
7326
7327 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7328
7329         PR gdb/23210
7330         * gdbarch.sh (significant_addr_bit): Default to zero when
7331         not set by target architecture.
7332         * gdbarch.c: Re-generated.
7333         * utils.c (address_significant): Update.
7334
7335 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7336
7337         * stack.c (func_command): Remove trailing newline in call to error.
7338
7339 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7340
7341         * regcache.h (regcache_raw_collect): Remove, update callers to
7342         use regcache::raw_collect.
7343         * regcache.c (regcache_raw_collect): Remove.
7344
7345 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7346
7347         * regcache.h (regcache_raw_supply): Remove, update callers to
7348         use detached_regcache::raw_supply.
7349         * regcache.c (regcache_raw_supply): Remove.
7350
7351 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7352
7353         * regcache.h (regcache_cooked_write_part): Remove, update
7354         callers to use regcache::cooked_write_part.
7355         * regcache.c (regcache_cooked_write_part): Remove.
7356
7357 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7358
7359         * regcache.h (regcache_cooked_read_part): Remove, update callers
7360         to use readable_regcache::cooked_read_part.
7361         * regcache.c (regcache_cooked_read_part): Remove.
7362
7363 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7364
7365         * regcache.h (regcache_cooked_read_value): Remove, update
7366         callers to use readable_regcache::cooked_read_value.
7367         * regcache.c (regcache_cooked_read_value): Remove.
7368
7369 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7370
7371         * regcache.h (regcache_cooked_write): Remove, update callers to
7372         use regcache::cooked_write.
7373         * regcache.c (regcache_cooked_write): Remove.
7374
7375 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7376
7377         * regcache.h (regcache_invalidate): Remove, update callers to
7378         use detached_regcache::invalidate instead.
7379         * regcache.c (regcache_invalidate): Remove.
7380
7381 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7382
7383         * regcache.h (regcache_raw_write_part): Remove, update callers
7384         to use regcache::raw_write_part instead.
7385         * regcache.c (regcache_raw_write_part): Remove.
7386
7387 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7388
7389         * regcache.h (regcache_raw_read_part): Remove, update callers to
7390         use readable_regcache::raw_read_part instead.
7391         * regcache.c (regcache_raw_read_part): Remove.
7392
7393 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7394
7395         * regcache.h (regcache_cooked_read): Remove, update callers to
7396         use readable_regcache::cooked_read instead.
7397         * regcache.c (regcache_cooked_read): Remove.
7398
7399 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7400
7401         * regcache.h (regcache_raw_write): Remove, update callers to use
7402         regcache::raw_write instead.
7403         * regcache.c (regcache_raw_write): Remove.
7404
7405 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7406
7407         * regcache.h (regcache_raw_read): Remove, update callers to use
7408         readable_regcache::raw_read instead.
7409         * regcache.c (regcache_raw_read): Remove.
7410
7411 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7412
7413         * regcache.h (regcache_raw_update): Remove, update callers to
7414         use readable_regcache::raw_update instead.
7415         * regcache.c (regcache_raw_update): Remove.
7416
7417 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7418
7419         * regcache.h (regcache_register_status): Remove, update callers
7420         to use reg_buffer::get_register_status directly instead.
7421         * regcache.c (regcache_register_status): Remove.
7422
7423 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7424
7425         * regcache.h (regcache_get_ptid): Remove, update all callers to
7426         call regcache::ptid instead.
7427         * regcache.c (regcache_get_ptid): Remove.
7428
7429 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7430
7431         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7432
7433 2018-05-30  Pedro Alves  <palves@redhat.com>
7434
7435         * common/common-exceptions.h (exception_rethrow): Use
7436         ATTRIBUTE_NORETURN.
7437
7438 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7439
7440         * breakpoint.c (print_solib_event, check_status_catch_solib):
7441         Remove struct keyword in range-based for loops.
7442         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7443         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7444         Likewise.
7445         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7446         Likewise.
7447         * symfile.c (addr_info_make_relative): Likewise.
7448         * thread.c (value_in_thread_stack_temporaries): Likewise.
7449
7450 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7451
7452         PR gdb/16841
7453         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7454         aggregate type to get its real type before accessing it.
7455
7456 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7457
7458         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7459         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7460         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7461         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7462         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7463         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7464         * printcmd.c (info_address_command): Likewise.
7465
7466 2018-05-29  Tom Tromey  <tom@tromey.com>
7467
7468         * windows-nat.c (handle_exception): Update fall-through comment.
7469
7470 2018-05-29  Tom Tromey  <tom@tromey.com>
7471
7472         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7473         (struct program_space) <added_solibs>: Now a std::vector.
7474         * breakpoint.c (print_solib_event): Update.
7475         (check_status_catch_solib): Update.
7476         * progspace.c (clear_program_space_solib_cache): Update.
7477         * solib.c (update_solib_list): Update.
7478
7479 2018-05-29  Tom Tromey  <tom@tromey.com>
7480
7481         * python/py-type.c (typy_richcompare): Update.
7482         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7483         * gdbtypes.h (types_deeply_equal): Return bool.
7484         (types_equal): Likewise.
7485         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7486         declare VEC.
7487         (check_types_equal): Change worklist to std::vector.  Return
7488         bool.
7489         (struct type_equality_entry): Add constructor.
7490         (compare_maybe_null_strings): Return bool.
7491         (check_types_worklist): Return bool.  Change worklist to
7492         std::vector.
7493         (types_deeply_equal): Use std::vector.
7494         (types_equal): Return bool.
7495         (compare_maybe_null_strings): Simplify.
7496
7497 2018-05-29  Tom Tromey  <tom@tromey.com>
7498
7499         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7500
7501 2018-05-29  Tom Tromey  <tom@tromey.com>
7502
7503         * objc-lang.h: Don't include cp-support.h.
7504         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7505         declare VEC.
7506
7507 2018-05-27  Tom Tromey  <tom@tromey.com>
7508
7509         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7510
7511 2018-05-25  Tom Tromey  <tom@tromey.com>
7512
7513         * value.c (value::location): Initialize.
7514
7515 2018-05-25  Tom Tromey  <tom@tromey.com>
7516
7517         * dbxread.c (init_bincl_list): Remove.
7518         (bincl_list): Now a std::vector.
7519         (bincls_allocated, next_bincl): Remove.
7520         (free_bincl_list, do_free_bincl_list_cleanup)
7521         (make_cleanup_free_bincl_list): Remove.
7522         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7523         unique_xmalloc_ptr.
7524         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7525         (struct header_file_location): Add constructor.
7526         (add_bincl_to_list): Remove.
7527
7528 2018-05-25  Tom Tromey  <tom@tromey.com>
7529
7530         * tui/tui.c (tui_enable): Update.
7531         * mi/mi-interp.c (mi_interp::init): Update.
7532         * interps.h (class interp) <name>: New method.
7533         <m_name>: Rename from name.
7534         (~scoped_restore_interp): Update.
7535         * interps.c (interp::interp): Update.
7536         (interp_add, interp_set, interp_lookup_existing)
7537         (current_interp_named_p): Update.
7538
7539 2018-05-25  Tom Tromey  <tom@tromey.com>
7540
7541         * interps.c (interp_name): Remove.
7542         * mi/mi-interp.c (mi_interp::init): Update.
7543         * interps.h (interp_name): Remove.
7544         (~scoped_restore_interp): Update.
7545         * tui/tui.c (tui_enable): Update.
7546
7547 2018-05-25  Tom Tromey  <tom@tromey.com>
7548
7549         * utils.c (fputs_maybe_filtered): Update.
7550         * linespec.c (decode_line_full): Update.
7551         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7552         (mi_print_breakpoint_for_event, mi_solib_loaded)
7553         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7554         (mi_user_selected_context_changed): Update.
7555         * mi/mi-main.c (mi_execute_command): Update.
7556         * cli/cli-script.c (execute_control_command): Update.
7557         * python/python.c (execute_gdb_command): Update.
7558         * solib.c (info_sharedlibrary_command): Update.
7559         * interps.c (interp_ui_out): Remove.
7560         * interps.h (interp_ui_out): Remove.
7561
7562 2018-05-25  Tom Tromey  <tom@tromey.com>
7563
7564         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7565         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7566         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7567
7568 2018-05-25  Tom Tromey  <tom@tromey.com>
7569
7570         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7571         * interps.c (interp_exec): Use scoped_restore.
7572
7573 2018-05-25  Tom Tromey  <tom@tromey.com>
7574
7575         * remote.c (remote_target::remote_file_get): Use
7576         gdb::byte_vector.
7577         (remote_target::remote_file_put): Likewise.
7578
7579 2018-05-25  Tom Tromey  <tom@tromey.com>
7580
7581         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7582         a std::string.
7583         (get_pe_section_index, add_pe_exported_sym): Update.
7584         (read_pe_exported_syms): Use gdb::def_vector.
7585
7586 2018-05-25  Tom Tromey  <tom@tromey.com>
7587
7588         * frame.c (remove_prev_frame): Remove.
7589         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7590
7591 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7592
7593         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7594         Remove prototypes.
7595         * mips-linux-nat.c (supply_fpregset): Always call
7596         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7597         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7598         `mips_fill_fpregset'.
7599         * mips-linux-tdep.c (mips_supply_fpregset)
7600         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7601         (mips_fill_fpregset_wrapper): Remove functions.
7602         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7603         (mips_linux_fpregset): Remove variable.
7604         (mips_linux_iterate_over_regset_sections): Use
7605         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7606         (mips_linux_o32_sigframe_init): Remove comment.
7607
7608 2018-05-25  Pedro Alves  <palves@redhat.com>
7609
7610         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7611         (struct readahead_cache, struct packet_reg, struct
7612         remote_arch_state, class remote_state): Move higher up in the
7613         file.
7614         (remote_target::m_remote_state): Now an object instead of a pointer.
7615         (remote_target::get_remote_state): Adjust.
7616
7617 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7618
7619         * stack.c (select_and_print_frame): Delete.
7620         (struct function_bounds): Move struct within function.
7621         (func_command): Most content moved into new function
7622         find_frame_for_function, use new function, print result, add
7623         function comment.
7624         (find_frame_for_function): New function, now returns a result.
7625
7626 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7627
7628         * stack.c (iterate_over_block_arg_vars): Fix comment.
7629         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7630
7631 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7632
7633         PR gdb/23203
7634         * frame.c
7635         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7636         Define.
7637         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7638         Define.
7639         * frame.h (class scoped_restore_selected_frame): New class.
7640         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7641         of any exception, use scoped_restore_selected_frame to restore the
7642         frame instead.
7643
7644 2018-05-24  Pedro Alves  <palves@redhat.com>
7645
7646         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7647         override.
7648
7649 2018-05-23  Tom Tromey  <tom@tromey.com>
7650
7651         * complaints.c (struct complaints): Remove.
7652         (symfile_complaint_book): Remove.
7653         (series): New global.
7654         (complaint_internal): Update.
7655         (clear_complaints): Update.
7656
7657 2018-05-23  Tom Tromey  <tom@tromey.com>
7658
7659         * complaints.c (counters): New global.
7660         (struct complain): Remove.
7661         (struct complaints) <root>: Remove.
7662         (complaint_sentinel): Remove.
7663         (symfile_complaint_book): Update.
7664         (find_complaint) Remove.
7665         (complaint_internal, clear_complaints): Update.
7666
7667 2018-05-23  Tom Tromey  <tom@tromey.com>
7668
7669         * complaints.c (struct complain) <file, line>: Remove.
7670         (find_complaint): Remove file, line parameters.
7671         (complaint_internal): Update.
7672
7673 2018-05-23  Tom Tromey  <tom@tromey.com>
7674
7675         * complaints.c (vcomplaint): Remove.
7676         (complaint_internal) Merge in contents of vcomplaint.
7677
7678 2018-05-23  Tom Tromey  <tom@tromey.com>
7679
7680         * complaints.c (struct complaints) <explanation>: Remove.
7681         (symfile_explanations): Remove.
7682         (symfile_complaint_book): Update.
7683         (vcomplaint): Update.
7684         (struct explanation): Remove.
7685
7686 2018-05-23  Tom Tromey  <tom@tromey.com>
7687
7688         * complaints.c (symfile_complaints): Remove.
7689         (complaint_internal): Remove "complaints" parameter.
7690         (clear_complaints, vcomplaint): Remove "c" parameter.
7691         (get_complaints): Remove.
7692         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7693         (dwarf2_debug_line_missing_file_complaint)
7694         (dwarf2_debug_line_missing_end_sequence_complaint)
7695         (dwarf2_complex_location_expr_complaint)
7696         (dwarf2_const_value_length_mismatch_complaint)
7697         (dwarf2_section_buffer_overflow_complaint)
7698         (dwarf2_macro_malformed_definition_complaint)
7699         (dwarf2_invalid_attrib_class_complaint)
7700         (create_addrmap_from_index, dw2_symtab_iter_next)
7701         (dw2_expand_marked_cus)
7702         (dw2_debug_names_iterator::find_vec_in_debug_names)
7703         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7704         (create_debug_type_hash_table, init_cutu_and_read_dies)
7705         (partial_die_parent_scope, add_partial_enumeration)
7706         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7707         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7708         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7709         (create_cus_hash_table, create_dwp_hash_table)
7710         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7711         (dwarf2_rnglists_process, dwarf2_ranges_process)
7712         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7713         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7714         (handle_struct_member_die, process_structure_scope)
7715         (read_array_type, read_common_block, read_module_type)
7716         (read_tag_pointer_type, read_typedef, read_base_type)
7717         (read_subrange_type, load_partial_dies, partial_die_info::read)
7718         (partial_die_info::read, partial_die_info::read)
7719         (partial_die_info::read, read_checked_initial_length_and_offset)
7720         (dwarf2_string_attr, read_formatted_entries)
7721         (dwarf_decode_line_header)
7722         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7723         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7724         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7725         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7726         (get_signatured_type, get_DW_AT_signature_type)
7727         (decode_locdesc, file_file_name, consume_improper_spaces)
7728         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7729         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7730         (dwarf2_symbol_mark_computed, set_die_type)
7731         (read_attribute_value): Update.
7732         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7733         Update.
7734         * dbxread.c (unknown_symtype_complaint)
7735         (lbrac_mismatch_complaint, repeated_header_complaint)
7736         (set_namestring, function_outside_compilation_unit_complaint)
7737         (read_dbx_symtab, process_one_symbol): Update.
7738         * gdbtypes.c (stub_noname_complaint): Update.
7739         * windows-nat.c (handle_unload_dll): Update.
7740         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7741         (decode_base_type): Update.
7742         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7743         (eb_complaint, record_include_begin, record_include_end)
7744         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7745         (process_xcoff_symbol, read_symbol)
7746         (function_outside_compilation_unit_complaint)
7747         (scan_xcoff_symtab): Update.
7748         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7749         * buildsym.c (finish_block_internal, make_blockvector)
7750         (end_symtab_get_static_block, augment_type_symtab): Update.
7751         * dtrace-probe.c (dtrace_process_dof)
7752         (dtrace_static_probe_ops::get_probes): Update.
7753         * complaints.h (struct complaint): Don't declare.
7754         (symfile_complaints): Remove.
7755         (complaint_internal): Remove "complaints" parameter.
7756         (complaint): Likewise.
7757         (clear_complaints): Likewise.
7758         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7759         (reread_symbols): Update.
7760         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7761         (dwarf2_frame_cache, decode_frame_entry): Update.
7762         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7763         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7764         (info_selectors_command): Update.
7765         * macrotab.c (macro_include, check_for_redefinition)
7766         (macro_undef): Update.
7767         * objfiles.c (filter_overlapping_sections): Update.
7768         * stabsread.c (invalid_cpp_abbrev_complaint)
7769         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7770         (define_symbol, error_type, read_type, rs6000_builtin_type)
7771         (stabs_method_name_from_physname, read_member_functions)
7772         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7773         (attach_fields_to_type, complain_about_struct_wipeout)
7774         (read_range_type, read_args, common_block_start)
7775         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7776         Update.
7777         * mdebugread.c (index_complaint, unknown_ext_complaint)
7778         (basic_type_complaint, bad_tag_guess_complaint)
7779         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7780         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7781         (parse_procedure, parse_lines)
7782         (function_outside_compilation_unit_complaint)
7783         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7784         (bad_tag_guess_complaint, reg_value_complaint): Update.
7785         * cp-support.c (demangled_name_complaint): Update.
7786         * macroscope.c (sal_macro_scope): Update.
7787         * dwarf-index-write.c (class debug_names): Update.
7788
7789 2018-05-23  Tom Tromey  <tom@tromey.com>
7790
7791         * complaints.c (clear_complaints): Remove "noisy" parameter.
7792         * complaints.h (clear_complaints): Update.
7793         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7794         (reread_symbols): Update.
7795
7796 2018-05-23  Tom Tromey  <tom@tromey.com>
7797
7798         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7799         SUBSEQUENT_MESSAGE.
7800         (vcomplaint, clear_complaints): Update.
7801         (symfile_explanations): Remove some messages.
7802
7803 2018-05-23  Tom Tromey  <tom@tromey.com>
7804
7805         * complaints.c (internal_complaint): Remove.
7806         * complaints.h (internal_complaint): Remove.
7807
7808 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7809
7810         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7811
7812 2018-05-22  Pedro Alves  <palves@redhat.com>
7813
7814         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7815         (remote_fileio_badfd, remote_fileio_return_errno)
7816         (remote_fileio_return_success, remote_fileio_func_open)
7817         (remote_fileio_func_open, remote_fileio_func_close)
7818         (remote_fileio_func_read, remote_fileio_func_write)
7819         (remote_fileio_func_lseek, remote_fileio_func_rename)
7820         (remote_fileio_func_unlink, remote_fileio_func_stat)
7821         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7822         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7823         remote_target parameter.
7824         (remote_fio_func_map) <func>: Add remote_target parameter.
7825         (do_remote_fileio_request, remote_fileio_request):
7826         * remote-fileio.h (remote_fileio_request):
7827         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7828         remote_target parameter.
7829         (remote_notif_process, handle_notification): Adjust to pass down
7830         the remote.
7831         (remote_notif_state_allocate): Add remote_target parameter.  Save
7832         it.
7833         * remote-notif.h (struct remote_target): Forward declare.
7834         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7835         remote_target parameter.
7836         (struct remote_notif_state) <remote>: New field.
7837         (remote_notif_ack, remote_notif_parse): Add remote_target
7838         parameter.
7839         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7840         remote_target parameter.
7841         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7842         (threads_listing_context, rmt_thread_action, protocol_feature)
7843         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7844         (packet_result, struct threads_listing_context, remote_state):
7845         Move definitions and declarations higher up.
7846         (remote_target) <~remote_target>: Declare.
7847         (remote_download_command_source, remote_file_put, remote_file_get)
7848         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7849         (remote_hostio_pread_vFile, remote_hostio_send_command)
7850         (remote_hostio_set_filesystem, remote_hostio_open)
7851         (remote_hostio_close, remote_hostio_unlink, remote_state)
7852         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7853         (get_memory_write_packet_size, get_memory_read_packet_size)
7854         (append_pending_thread_resumptions, remote_detach_1)
7855         (append_resumption, remote_resume_with_vcont)
7856         (add_current_inferior_and_thread, wait_ns, wait_as)
7857         (process_stop_reply, remote_notice_new_inferior)
7858         (process_initial_stop_replies, remote_add_thread)
7859         (btrace_sync_conf, remote_btrace_maybe_reopen)
7860         (remove_new_fork_children, kill_new_fork_children)
7861         (discard_pending_stop_replies, stop_reply_queue_length)
7862         (check_pending_events_prevent_wildcard_vcont)
7863         (discard_pending_stop_replies_in_queue, stop_reply)
7864         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7865         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7866         (remote_interrupt_as, remote_interrupt_ns)
7867         (remote_get_noisy_reply, remote_query_attached)
7868         (remote_add_inferior, remote_current_thread, get_current_thread)
7869         (set_thread, set_general_thread, set_continue_thread)
7870         (set_general_process, write_ptid)
7871         (remote_unpack_thread_info_response, remote_get_threadinfo)
7872         (parse_threadlist_response, remote_get_threadlist)
7873         (remote_threadlist_iterator, remote_get_threads_with_ql)
7874         (remote_get_threads_with_qxfer)
7875         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7876         (get_offsets, remote_check_symbols, remote_supported_packet)
7877         (remote_query_supported, remote_packet_size)
7878         (remote_serial_quit_handler, remote_detach_pid)
7879         (remote_vcont_probe, remote_resume_with_hc)
7880         (send_interrupt_sequence, interrupt_query)
7881         (remote_notif_get_pending_events, fetch_register_using_p)
7882         (send_g_packet, process_g_packet, fetch_registers_using_g)
7883         (store_register_using_P, store_registers_using_G)
7884         (set_remote_traceframe, check_binary_download)
7885         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7886         (remote_xfer_live_readonly_partial, remote_read_bytes)
7887         (remote_send_printf, remote_flash_write, readchar)
7888         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7889         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7890         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7891         (extended_remote_disable_randomization, extended_remote_run)
7892         (send_environment_packet, extended_remote_environment_support)
7893         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7894         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7895         (packet_command): Now methods of ...
7896         (remote_target): ... this class.
7897         (m_remote_state) <remote_target>: New field.
7898         (struct remote_state) <stop_reply_queue,
7899         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7900         fields.
7901         (remote_state::remote_state): Allocate stop_reply_queue.
7902         (remote_state): Delete global.
7903         (get_remote_state_raw): Delete.
7904         (remote_target::get_remote_state): Allocate m_remote_state on
7905         demand.
7906         (get_current_remote_target): New.
7907         (remote_ops, extended_remote_ops): Delete.
7908         (wait_forever_enabled_p, remote_async_inferior_event_token):
7909         Delete, moved to struct remote_state.
7910         (remote_target::close): Delete self.  Destruction bits split to
7911         ...
7912         (remote_target::~remote_target): ... this.
7913         (show_memory_packet_size): Adjust to use
7914         get_current_remote_target.
7915         (struct protocol_feature) <func>: Add remote_target parameter.
7916         All callers adjusted.
7917         (curr_quit_handler_target): New.
7918         (remote_serial_quit_handler): Reimplement.
7919         (remote_target::open_1): Adjust to use get_current_remote_target.
7920         Heap-allocate remote_target/extended_remote_target instances.
7921         (vcont_builder::vcont_builder): Add remote_target parameter, and
7922         save it in m_remote.  All callers adjusted.
7923         (vcont_builder::m_remote): New field.
7924         (vcont_builder::restart, vcont_builder::flush)
7925         (vcont_builder::push_action): Use it.
7926         (remote_target::commit_resume): Use it.
7927         (struct queue_iter_param) <remote>: New field.
7928         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7929         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7930         (check_pending_event_prevents_wildcard_vcont_callback)
7931         (remote_target::check_pending_events_prevent_wildcard_vcont)
7932         (remote_target::discard_pending_stop_replies)
7933         (remote_target::discard_pending_stop_replies_in_queue)
7934         (remote_target::remote_notif_remove_queued_reply): Fill in
7935         'remote' field.
7936         (remote_notif_get_pending_events): New.
7937         (remote_target::readchar, remote_target::remote_serial_write):
7938         Save/restore curr_quit_handler_target.
7939         (putpkt): New.
7940         (kill_new_fork_children): Fill in 'remote' field.
7941         (packet_command): Use get_current_remote_target, defer to
7942         remote_target method of same name.
7943         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7944         parameter, and save it in m_remote.  All callers adjusted.
7945         (scoped_remote_fd::release): Use m_remote.
7946         (scoped_remote_fd::m_remote): New field.
7947         (remote_file_put, remote_file_get, remote_file_delete): Use
7948         get_current_remote_target, defer to remote_target method of same
7949         name.
7950         (remote_btrace_reset): Add remote_state paremeter.  Update all
7951         callers.
7952         (remote_async_inferior_event_handler). Pass down 'data'.
7953         (remote_new_objfile): Use get_current_remote_target.
7954         (remote_target::vcont_r_supported): New.
7955         (set_range_stepping): Use get_current_remote_target and
7956         remote_target::vcont_r_supported.
7957         (_initialize_remote): Don't allocate 'remote_state' and
7958         'stop_reply_queue' globals.
7959         * remote.h (struct remote_target): Forward declare.
7960         (getpkt, putpkt, remote_notif_get_pending_events): Add
7961         'remote_target' parameter.
7962
7963 2018-05-22  Pedro Alves  <palves@redhat.com>
7964
7965         * remote.c (vcont_builder): Now a class.  Make all data members
7966         private.
7967         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7968         Declare methods.
7969         (vcont_builder_restart): Rename to ...
7970         (vcont_builder::restart): ... this.
7971         (vcont_builder_flush): Rename to ...
7972         (vcont_builder::flush): ... this.
7973         (vcont_builder_push_action): Rename to ...
7974         (vcont_builder::push_action): ... this.
7975         (remote_target::commit_resume): Adjust.
7976
7977 2018-05-22  Pedro Alves  <palves@redhat.com>
7978
7979         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7980         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7981         (get_fixed_memory_packet_size): New.
7982         (get_memory_packet_size): Use it.
7983         (set_memory_packet_size): Don't override the config size with
7984         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7985         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7986         Don't refer to get_memory_packet_size if not connected to a remote
7987         target.  Show "(default)" if configured size is 0.
7988
7989 2018-05-22  Pedro Alves  <palves@redhat.com>
7990
7991         * remote.c (remote_target::mourn_inferior): Move
7992         discard_pending_stop_replies call here from ...
7993         (_initialize_remote): ... here.
7994
7995 2018-05-22  Pedro Alves  <palves@redhat.com>
7996
7997         * remote.c (compare_section_command): Remove set_general_process
7998         call.
7999
8000 2018-05-22  Pedro Alves  <palves@redhat.com>
8001
8002         * remote.c (struct packet_reg, struct remote_arch_state):
8003         Move higher up in the file.
8004         (remote_state) <m_arch_states>: Store remote_arch_state values
8005         instead of remote_arch_state pointers.
8006         (remote_state::get_remote_arch_state): Adjust.
8007
8008 2018-05-22  Pedro Alves  <palves@redhat.com>
8009
8010         * remote.c: Include <unordered_map>.
8011         (remote_state): Now a class.
8012         (remote_state) <get_remote_arch_state>: Declare method.
8013         <get_remote_arch_state>: New field.
8014         (remote_arch_state) <remote_arch_state>: Declare ctor.
8015         <regs>: Now a unique_ptr.
8016         (remote_gdbarch_data_handle): Delete.
8017         (get_remote_arch_state): Delete.
8018         (remote_state::get_remote_arch_state): New.
8019         (get_remote_state): Adjust to call remote_state's
8020         get_remote_arch_state method.
8021         (init_remote_state): Delete, bits factored out to ...
8022         (remote_arch_state::remote_arch_state): ... this new method.
8023         (get_remote_packet_size, get_memory_packet_size)
8024         (process_g_packet, remote_target::fetch_registers)
8025         (remote_target::prepare_to_store, store_registers_using_G)
8026         (remote_target::store_registers, remote_target::get_trace_status):
8027         Adjust to call remote_state's method.
8028         (_initialize_remote): Remove reference to
8029         remote_gdbarch_data_handle.
8030
8031 2018-05-22  Pedro Alves  <palves@redhat.com>
8032
8033         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8034         pread>: New method declarations.
8035         (remote_target::open_1): Adjust.
8036         (readahead_cache_invalidate): Rename to ...
8037         (readahead_cache::invalidate): ... this, and adjust to be a class
8038         method.
8039         (readahead_cache_invalidate_fd): Rename to ...
8040         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8041         class method.
8042         (remote_hostio_pwrite): Adjust.
8043         (remote_hostio_pread_from_cache): Rename to ...
8044         (readahead_cache::pread): ... this, and adjust to be a class
8045         method.
8046         (remote_hostio_close): Adjust.
8047
8048 2018-05-22  Pedro Alves  <palves@redhat.com>
8049
8050         * remote.c (remote_hostio_close_cleanup): Delete.
8051         (class scoped_remote_fd): New.
8052         (remote_file_put, remote_file_get): Use it.
8053
8054 2018-05-22  Pedro Alves  <palves@redhat.com>
8055
8056         (struct vCont_action_support): Use bool and initialize all fields.
8057         (struct readahead_cache): Initialize all fields.
8058         (remote_state): Use bool and initialize all fields.
8059         (remote_state::remote_state, remote_state::~remote_state): New.
8060         (new_remote_state): Delete.
8061         (_initialize_remote): Use new to allocate remote_state.
8062
8063 2018-05-22  Pedro Alves  <palves@redhat.com>
8064             張俊芝  <zjz@zjz.name>
8065
8066         PR gdb/22973
8067         * c-exp.y: Include "c-support.h".
8068         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8069         of tolower.  Use c_ident_is_alpha to scan names.
8070         * c-lang.c: Include "c-support.h".
8071         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8072         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8073         * c-support.h: New file, with bits factored out from ...
8074         * cp-name-parser.y: ... this file.
8075         Include "c-support.h".
8076         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8077         c-support.h and renamed.
8078         (symbol_end, yylex): Adjust.
8079
8080 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8081
8082         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8083         parameter type to CORE_ADDR.
8084         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8085         parameter type in declaration to CORE_ADDR.
8086         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8087         target_auxv_search to get AT_HWCAP and use the result to get the
8088         target description.
8089         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8090         to CORE_ADDR. Remove the cast of the return value to unsigned
8091         long. Fix error predicate of target_auxv_search.
8092         (ppc_linux_nat_target::read_description): Change the type of the
8093         hwcap variable to CORE_ADDR.
8094
8095 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8096
8097         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8098         if the size of fpscr is larger than 32 bits.
8099
8100 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8101
8102         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8103         (ppc32_linux_vsxregmap): New global.
8104         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8105         regcache_supply_regset, and regcache_collect_regset.
8106         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8107         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8108         (fetch_vsx_register, store_vsx_register): Remove.
8109         (fetch_vsx_registers): Add regno parameter. Get regset using
8110         ppc_linux_vsxregset. Use regset to supply registers.
8111         (store_vsx_registers): Add regno parameter. Get regset using
8112         ppc_linux_vsxregset. Use regset to collect registers.
8113         (fetch_register): Call fetch_vsx_registers instead of
8114         fetch_vsx_register.
8115         (store_register): Call store_vsx_registers instead of
8116         store_vsx_register.
8117         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8118         new regno parameter.
8119         (store_ppc_registers): Call store_vsx_registers with -1 for the
8120         new regno parameter.
8121         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8122         (ppc_collect_vsxregset): Remove.
8123
8124 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8125
8126         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8127         offset fields.
8128         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8129         for vector register offset fields.
8130         (ppc64_fbsd_reg_offsets): Likewise.
8131         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8132         to vector register offset fields.
8133         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8134         to vector register offset fields.
8135         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8136         vector register offset fields.
8137         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8138         initializers for vector register offset fields.
8139         (rs6000_aix64_reg_offsets): Likewise.
8140         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8141         (ppc_supply_vrregset): Remove.
8142         (ppc_collect_vrregset): Remove.
8143         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8144         (ppc_linux_vrregset) : New function.
8145         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8146         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8147         (ppc32_linux_vrregset): Remove.
8148         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8149         and use result instead of ppc32_linux_vrregset.
8150         (ppc32_linux_reg_offsets): Remove initializers for vector register
8151         offset fields.
8152         (ppc64_linux_reg_offsets): Likewise.
8153         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8154         * ppc-linux-nat.c: Include regset.h.
8155         (gdb_vrregset_t): Adjust comment to account for little-endian
8156         mode.
8157         (supply_vrregset, fill_vrregset): Remove.
8158         (fetch_altivec_register, store_altivec_register): Remove.
8159         (fetch_altivec_registers): Add regno parameter. Get regset using
8160         ppc_linux_vrregset. Use regset to supply registers.
8161         (store_altivec_registers): Add regno parameter. Get regset using
8162         ppc_linux_vrregset. Use regset to collect registers.
8163         (fetch_register): Call fetch_altivec_registers instead of
8164         fetch_altivec_register.
8165         (store_register): Call store_altivec_registers instead of
8166         store_altivec_register.
8167         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8168         the new regno parameter.
8169         (store_ppc_registers): Call store_altivec_registers with -1 for
8170         the new regno parameter.
8171
8172 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8173
8174         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8175         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8176         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8177         (gdb_vrregset_t): Change array type size to
8178         PPC_LINUX_SIZEOF_VRREGSET.
8179         (gdb_vsxregset_t): Change array type size to
8180         PPC_LINUX_SIZEOF_VSXREGSET.
8181         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8182         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8183         PPC_LINUX_SIZEOF_VSXREGSET.
8184
8185 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8186
8187         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8188         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8189         nat/ppc-linux.c.
8190         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8191         ppc_linux_target_wordsize with tid.
8192         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8193         wordsize with tid.
8194         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8195         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8196         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8197         tid parameter. Remove static specifier.
8198         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8199         (ppc_linux_target_wordsize): New declaration.
8200
8201 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8202
8203         * arch/ppc-linux-common.c: New file.
8204         * arch/ppc-linux-common.h: New file.
8205         * arch/ppc-linux-tdesc.h: New file.
8206         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8207         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8208         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8209         arch/ppc-linux-tdesc.h.
8210         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8211         arch/ppc-linux-tdesc.h.
8212         (ppc_linux_nat_target::read_description): Remove target
8213         description matching code. Fill a ppc_linux_features struct and
8214         call ppc_linux_match_description with it. Move comment about ISA
8215         2.05 to ppc-linux-common.c.
8216         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8217         arch/ppc-linux-tdesc.h.
8218         (ppc_linux_core_read_description): Remove target description
8219         matching code. Fill a ppc_linux_features struct and call
8220         ppc_linux_match_description with it.
8221         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8222         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8223         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8224         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8225         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8226         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8227         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8228         (tdesc_powerpc_e500l): Remove.
8229
8230 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8231
8232         * ada-lang.c (catch_assert_command): Pass empty string instead
8233         of NULL for excep_string argument.
8234
8235 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8236
8237         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8238         the width of the requested register exceeds the width of the
8239         `ptrace' data type.
8240
8241 2018-05-21  Tom Tromey  <tom@tromey.com>
8242
8243         * printcmd.c (output_command): Remove.
8244         (output_command_const): Rename to output_command.
8245         * valprint.h (output_command): Rename from output_command_const.
8246         * tracepoint.c (trace_dump_actions): Call output_command.
8247
8248 2018-05-21  Tom Tromey  <tom@tromey.com>
8249
8250         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8251         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8252         * ada-lang.h (create_ada_exception_catchpoint): Update.
8253         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8254         std::string.
8255         (create_excep_cond_exprs, ~ada_catchpoint)
8256         (should_stop_exception, print_one_exception)
8257         (print_mention_exception, print_recreate_exception): Update.
8258         (ada_get_next_arg): Remove.
8259         (catch_ada_exception_command_split): Use std::string.  Change type
8260         of "excep_string", "cond_string".
8261         (catch_ada_exception_command): Update.
8262         (create_ada_exception_catchpoint): Change type of excep_string.
8263         (ada_exception_sal): Remove excep_string parameter.
8264         (~ada_catchpoint): Remove.
8265
8266 2018-05-21  Tom Tromey  <tom@tromey.com>
8267
8268         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8269         cleanup.
8270
8271 2018-05-21  Tom Tromey  <tom@tromey.com>
8272
8273         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8274         Return unique_xmalloc_ptr.
8275         (print_it_exception): Update.
8276
8277 2018-05-21  Tom Tromey  <tom@tromey.com>
8278
8279         * tracepoint.c (trace_dump_actions): Use std::string.
8280
8281 2018-05-21  Tom Tromey  <tom@tromey.com>
8282
8283         * symfile.c (reread_symbols): Use std::string for original_name.
8284
8285 2018-05-21  Tom Tromey  <tom@tromey.com>
8286
8287         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8288         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8289         constructor.
8290
8291 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8292
8293         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8294         instance to...
8295         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8296         * objfiles.c (get_objfile_bfd_data): Allocate
8297         objfile_per_bfd_storage with obstack_new when allocating on
8298         obstack.
8299
8300 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8301
8302         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8303         OBSTACK_ZALLOC.
8304         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8305         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8306         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8307         (add_pending): Likewise.
8308         (parse_symbol): Likewise.
8309         (parse_partial_symbols): Likewise.
8310         (psymtab_to_symtab_1): Likewise.
8311         (new_psymtab): Likewise.
8312         (elfmdebug_build_psymtabs): Likewise.
8313         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8314         * objfiles.c (get_objfile_bfd_data): Likewise.
8315         (objfile_register_static_link): Likewise.
8316         * psymtab.c (allocate_psymtab): Likewise.
8317         * stabsread.c (read_member_functions): Likewise.
8318         * xcoffread.c (xcoff_end_psymtab): Likewise.
8319
8320 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8321
8322         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8323         compiler supports std::is_trivially_constructible.
8324         * common/poison.h: Include obstack.h.
8325         (IsMallocable): Define to is_trivially_constructible if the
8326         compiler supports it, define to true_type otherwise.
8327         (xobnew): New.
8328         (XOBNEW): Redefine.
8329         (xobnewvec): New.
8330         (XOBNEWVEC): Redefine.
8331         * gdb_obstack.h (obstack_zalloc): New.
8332         (OBSTACK_ZALLOC): Redefine.
8333         (obstack_calloc): New.
8334         (OBSTACK_CALLOC): Redefine.
8335         (obstack_new): New.
8336         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8337         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8338         gdbarch.c.
8339         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8340         obstack_calloc/obstack_zalloc.
8341         (gdbarch_obstack_zalloc): Remove.
8342         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8343
8344 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8345
8346         * stack.c (backtrace_command_1): Remove useless variable int i.
8347
8348 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8349
8350         * stack.c (print_frame_info): Fix comment.
8351
8352 2018-05-18  Tom Tromey  <tom@tromey.com>
8353
8354         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8355         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8356         (~dwarf2_per_objfile): Update
8357         (dwarf2_get_dwz_file): Use new.
8358         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8359         unique_ptr.
8360
8361 2018-05-18  Tom Tromey  <tom@tromey.com>
8362
8363         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8364         unique_ptr.
8365         * dwarf2read.c (struct dwp_file): Add constructor and
8366         initializers.
8367         (open_and_init_dwp_file): Return a unique_ptr.
8368         (dwarf2_per_objfile, create_dwp_hash_table)
8369         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8370         (lookup_dwo_unit_in_dwp): Update.
8371         (open_and_init_dwp_file, get_dwp_file): Update.
8372
8373 2018-05-18  Tom Tromey  <tom@tromey.com>
8374
8375         * dwarf2read.c (dwarf2_per_objfile): Update.
8376         (struct mapped_index): Add initializers.
8377         (dwarf2_read_index): Use new.
8378         (dw2_symtab_iter_init): Update.
8379         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8380         unique_ptr.
8381
8382 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8383
8384         * dwarf2read.c (mapped_index) <total_size>: Remove.
8385
8386 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8387
8388         * unittests/format_pieces-selftests.c (test_format_specifier):
8389         Add ARI comments.
8390
8391 2018-05-18  Tom Tromey  <tom@tromey.com>
8392
8393         * c-typeprint.c (maybe_print_hole): New function.
8394         (c_print_type_struct_field_offset): Update.
8395         (c_type_print_base_struct_union): Call maybe_print_hole.
8396
8397 2018-05-17  Keith Seitz  <keiths@redhat.com>
8398
8399         * breakpoint.c (build_bpstat_chain): New function, moved from
8400         bpstat_stop_status.
8401         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8402         If no stop chain is passed, call build_bpstat_chain to build it.
8403         * breakpoint.h (build_bpstat_chain): Declare.
8404         (bpstat_stop_status): Move documentation here from breakpoint.c.
8405         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8406         build the stop chain and pass it to skip_inline_frames.
8407         Pass this stop chain to bpstat_stop_status.
8408         * inline-frame.c: Include breakpoint.h.
8409         (stopped_by_user_bp_inline_frame): New function.
8410         (skip_inline_frames): Add parameter `stop_chain'.
8411         Move documention to inline-frame.h.
8412         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8413         whether the frame should be elided.
8414         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8415         Add moved documentation and update for new parameter.
8416
8417 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8418
8419         PR cli/14975
8420         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8421         unittests/format_pieces-selftests.c.
8422         * common/format.h (format_piece) <operator==>: New.
8423         (format_pieces) <operator[]>: Remove.
8424         * common/format.c (format_pieces::format_pieces): Handle \e.
8425         * unittests/format_pieces-selftests.c: New.
8426
8427 2018-05-17  Tom Tromey  <tom@tromey.com>
8428
8429         PR symtab/23010:
8430         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8431         (dw2_instantiate_symtab): Add skip_partial parameter.
8432         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8433         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8434         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8435         (dw2_expand_symtabs_matching_one)
8436         (dw2_find_pc_sect_compunit_symtab)
8437         (dw2_debug_names_lookup_symbol)
8438         (dw2_debug_names_expand_symtabs_for_function): Update.
8439         (init_cutu_and_read_dies): Add skip_partial parameter.
8440         (process_psymtab_comp_unit, build_type_psymtabs_1)
8441         (process_skeletonless_type_unit, load_partial_comp_unit)
8442         (psymtab_to_symtab_1): Update.
8443         (load_full_comp_unit): Add skip_partial parameter.
8444         (process_imported_unit_die, dwarf2_read_addr_index)
8445         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8446         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8447         (read_signatured_type): Update.
8448
8449 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8450
8451         * value.c (release_value): Remove unused variable.
8452         (record_latest_value): Likewise.
8453         (access_value_history): Likewise.
8454         (preserve_values): Likewise.
8455
8456 2018-05-17  Tom Tromey  <tom@tromey.com>
8457
8458         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8459         Initialize.
8460
8461 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8462
8463         PR gdb/22286
8464         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8465         Also handle registers whose width is not a multiple of
8466         PTRACE_TYPE_RET.
8467         (linux_nat_trad_target::store_register): Likewise.
8468
8469 2018-05-16  Tom Tromey  <tom@tromey.com>
8470
8471         * gdbcore.h (core_bfd): Redefine.
8472         * corelow.c (core_target::close): Update.
8473         (core_target_open): Update.
8474         * progspace.h (struct program_space) <cbfd>: Now a
8475         gdb_bfd_ref_ptr.
8476
8477 2018-05-16  Tom Tromey  <tom@tromey.com>
8478
8479         PR cli/19551:
8480         * symfile-add-flags.h (enum symfile_add_flags)
8481         <SYMFILE_NOT_FILENAME>: New constant.
8482         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8483         objfile name from BFD.
8484         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8485         * minidebug.c (find_separate_debug_file_in_section): Put
8486         ".gnu_debugdata" into BFD's file name.
8487
8488 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8489
8490         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8491         Remove.
8492
8493 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8494
8495         PR binutils/21446
8496         * aarch64-tdep.c (aarch64_analyze_prologue,
8497         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8498         Indicate not interested in errors.
8499
8500 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8501
8502         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8503         Supply the MIPS_ZERO_REGNUM register.
8504
8505 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8506
8507         * mips-tdep.c (mask_address_var): Make variable static.
8508
8509 2018-05-14  Tom Tromey  <tom@tromey.com>
8510
8511         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8512
8513 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8514
8515         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8516         FXSAVE_ADDR for the mxcsr register.
8517
8518 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8519
8520         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8521
8522 2018-05-11  Pedro Alves  <palves@redhat.com>
8523
8524         * corelow.c (core_target) <core_target>: No longer inline.
8525         Initialize m_core_gdbarch, m_core_vec and build the section table
8526         here.
8527         <~core_target>: New.
8528         <core_gdbarch, get_core_register_section>: New methods.
8529         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8530         factored out from ...
8531         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8532         (core_ops): Delete.
8533         (sniff_core_bfd): Add gdbarch parameter.
8534         (core_close): Delete, merged into ...
8535         (core_target::close): ... here.  Delete self.
8536         (core_close_cleanup): Delete.
8537         (core_target_open): Allocate a core_target on the heap.  Use a
8538         unique_ptr instead of a cleanup.  Bits moved into the core_target
8539         ctor.  Adjust to use core_target methods instead of globals.
8540         (get_core_register_section): Rename to ...
8541         (core_target::get_core_register_section): ... this and adjust.
8542         (struct get_core_registers_cb_data): New.
8543         (get_core_registers_cb): Use it.  Use bool.
8544         (core_target::fetch_registers, core_target::files_info)
8545         (core_target::xfer_partial, core_target::read_description)
8546         (core_target::pid_to, core_target::thread_name): Adjust to
8547         reference class fields instead of globals.
8548         * target.h (struct target_ops_deleter, target_ops_up): New.
8549
8550 2018-05-11  Pedro Alves  <palves@redhat.com>
8551
8552         * corefile.c (core_file_command): Move to corelow.c.
8553         * corelow.c (the_core_target): Delete.
8554         (core_file_command): Moved from corefile.c.  Check exec_bfd
8555         instead of the_core_target.  Use target_detach instead of calling
8556         into the_core_target directly.
8557         (maybe_say_no_core_file_now): New.
8558         (core_target::detach): Use it.
8559         (_initialize_corelow): Remove references to the_core_target.
8560         * gdbcore.h (the_core_target): Delete.
8561
8562 2018-05-11  Tom Tromey  <tromey@redhat.com>
8563             Pedro Alves  <palves@redhat.com>
8564
8565         * corefile.c (core_bfd): Remove.
8566         * gdbcore.h (core_bfd): Now a macro.
8567         * progspace.h (struct program_space) <cbfd>: New field.
8568
8569 2018-05-11  Tom Tromey  <tom@tromey.com>
8570
8571         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8572         gdb::def_vector.
8573
8574 2018-05-10  Tom Tromey  <tom@tromey.com>
8575
8576         * configure: Rebuild.
8577         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8578
8579 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8580
8581         PR server/23158:
8582         * regformats/regdat.sh: Adjust script, following the addition
8583         of the new expedite_regs parameter to init_target_desc.
8584
8585 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8586     
8587         PR gdb/23127
8588         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8589         set_gdbarch_significant_addr_bit.
8590         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8591         set_gdbarch_significant_addr_bit.
8592         * utils.c (address_significant): Update to sign extend addr.
8593
8594 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8595
8596         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8597         (xtensa_linux_init_abi): Limit tdep->num_regs by
8598         tdep->num_nopriv_regs.
8599         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8600         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8601         not initialized.
8602
8603 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8604
8605         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8606
8607 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8608
8609         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8610         (I387_MXCSR_INIT_VAL): New constant.
8611         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8612         buffer if it was supplied by the inferior.
8613         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8614         (i387_xsave_get_clear_bv): New function.
8615         (i387_supply_xsave): Only read x87 control registers from the
8616         xsave buffer if the feature is enabled, and the state will have
8617         been written, otherwise, provide a suitable default.
8618         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8619         including x87 control registers.  Update control registers if they
8620         have changed from the default value, and mark features as enabled
8621         as required.
8622         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8623
8624 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8625
8626         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8627
8628 2018-05-07  Tom Tromey  <tom@tromey.com>
8629
8630         * configure: Rebuild.
8631         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8632
8633 2018-05-07  Tom Tromey  <tom@tromey.com>
8634
8635         PR tdep/20362:
8636         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8637         bit.  Use correct value for VDIV.
8638
8639 2018-05-04  Tom Tromey  <tom@tromey.com>
8640
8641         * configure: Rebuild.
8642         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8643
8644 2018-05-04  Tom Tromey  <tom@tromey.com>
8645
8646         * linux-record.c (record_linux_system_call) <case
8647         RECORD_SYS_RECVFROM>: Add "break".
8648
8649 2018-05-04  Tom Tromey  <tom@tromey.com>
8650
8651         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8652         Add missing "break".
8653         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8654         Add missing "break".
8655
8656 2018-05-04  Tom Tromey  <tom@tromey.com>
8657
8658         * rs6000-tdep.c (ppc_process_record_op4)
8659         (ppc_process_record_op63): Add fall-through comment.
8660
8661 2018-05-04  Tom Tromey  <tom@tromey.com>
8662
8663         * i386-tdep.c (i386_process_record): Add fall-through comment.
8664
8665 2018-05-04  Tom Tromey  <tom@tromey.com>
8666
8667         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8668         comment.
8669
8670 2018-05-04  Tom Tromey  <tom@tromey.com>
8671
8672         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8673         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8674         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8675         comment.
8676         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8677         comment.
8678         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8679         comment.
8680
8681 2018-05-04  Tom Tromey  <tom@tromey.com>
8682
8683         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8684
8685 2018-05-04  Tom Tromey  <tom@tromey.com>
8686
8687         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8688         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8689         * symfile.c (section_is_mapped): Fix fall-through comment.
8690         * stabsread.c (define_symbol, read_member_functions): Fix
8691         fall-through comment.
8692         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8693         comment.
8694         * remote.c (remote_wait_as): Fix fall-through comment.
8695         * p-exp.y (yylex): Fix fall-through comment.
8696         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8697         comment.
8698         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8699         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8700         * jv-exp.y (yylex): Fix fall-through comment.
8701         * go-exp.y (lex_one_token): Fix fall-through comment.
8702         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8703         fall-through comment.
8704         * f-exp.y (yylex): Fix fall-through comment.
8705         * dwarf2read.c (process_die): Fix fall-through comments.
8706         * dbxread.c (process_one_symbol): Fix fall-through comment.
8707         * d-exp.y (lex_one_token): Fix fall-through comment.
8708         * cp-name-parser.y (yylex): Fix fall-through comment.
8709         * coffread.c (coff_symtab_read): Fix fall-through comment.
8710         * c-exp.y (lex_one_token): Fix fall-through comment.
8711         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8712         comment.
8713         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8714         comment.
8715
8716 2018-05-04  Tom Tromey  <tom@tromey.com>
8717
8718         PR python/22730:
8719         * NEWS: Mention gdb.execute change.
8720         * gdbcmd.h (execute_control_command): Don't declare.
8721         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8722         execute_control_commands, execute_control_commands_to_string.
8723         * cli/cli-script.h (execute_control_commands)
8724         (execute_control_commands_to_string): Declare.
8725         (execute_control_command): Add from_tty parameter.
8726         * cli/cli-script.c (execute_control_commands)
8727         (execute_control_commands_to_string): New functions.
8728         (execute_user_command): Use execute_control_commands.
8729         (execute_control_command_1): Add "from_tty" parameter.  Update.
8730         (execute_control_command): Likewise.
8731
8732 2018-05-04  Tom Tromey  <tom@tromey.com>
8733
8734         PR python/22731:
8735         * NEWS: Mention that breakpoint commands are writable.
8736         * python/py-breakpoint.c (bppy_set_commands): New function.
8737         (breakpoint_object_getset) <"commands">: Use it.
8738
8739 2018-05-04  Tom Tromey  <tom@tromey.com>
8740
8741         * tracepoint.c (actions_command): Update.
8742         * mi/mi-cmd-break.c (mi_command_line_array)
8743         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8744         (mi_read_next_line): Remove.
8745         (mi_cmd_break_commands): Update.
8746         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8747         function_view.
8748         * cli/cli-script.c (get_command_line): Update.
8749         (process_next_line): Use function_view.  Constify.
8750         (recurse_read_control_structure, read_command_lines)
8751         (read_command_lines_1): Change argument types to function_view.
8752         (do_define_command, document_command): Update.
8753         * breakpoint.h (check_tracepoint_command): Don't declare.
8754         * breakpoint.c (check_tracepoint_command): Remove.
8755         (commands_command_1, create_tracepoint_from_upload): Update.
8756
8757 2018-05-04  Tom Tromey  <tom@tromey.com>
8758
8759         PR gdb/11750:
8760         * cli/cli-script.h (enum command_control_type) <define_control>:
8761         New constant.
8762         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8763         (build_command_line, execute_control_command_1)
8764         (process_next_line): Likewise.
8765         (do_define_command): New function, extracted from define_command.
8766         (define_command): Use it.
8767
8768 2018-05-04  Tom Tromey  <tom@tromey.com>
8769
8770         * tracepoint.c (actions_command): Update.
8771         * cli/cli-script.h (read_command_lines): Update.
8772         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8773         (MAX_TMPBUF): Remove define.
8774         (define_command): Use string_printf.
8775         (document_command): Likewise.
8776         * breakpoint.c (commands_command_1): Update.
8777
8778 2018-05-04  Tom Tromey  <tom@tromey.com>
8779
8780         * top.c (execute_command): Update.
8781         * cli/cli-script.h (print_command_lines): Now varargs.
8782         * cli/cli-script.c (print_command_lines): Now varargs.
8783         (execute_control_command_1) <case while_control, case if_control>:
8784         Update.
8785
8786 2018-05-04  Tom Tromey  <tom@tromey.com>
8787
8788         * tracepoint.c (all_tracepoint_actions): Rename from
8789         all_tracepoint_actions_and_cleanup.  Change return type.
8790         (actions_command, encode_actions_1, encode_actions)
8791         (trace_dump_actions, tdump_command): Update.
8792         * remote.c (remote_download_command_source): Update.
8793         * python/python.c (gdbpy_eval_from_control_command)
8794         (python_command, python_interactive_command): Update.
8795         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8796         * guile/guile.c (guile_command)
8797         (gdbscm_eval_from_control_command, guile_command): Update.
8798         * compile/compile.c (compile_code_command)
8799         (compile_print_command, compile_to_object): Update.
8800         * cli/cli-script.h (struct command_lines_deleter): New.
8801         (counted_command_line): New typedef.
8802         (struct command_line): Add constructor, destructor.
8803         <body_list>: Remove.
8804         <body_list_0, body_list_1>: New members.
8805         (command_line_up): Remove typedef.
8806         (read_command_lines, read_command_lines_1, get_command_line):
8807         Update.
8808         (copy_command_lines): Don't declare.
8809         * cli/cli-script.c (build_command_line): Use "new".
8810         (get_command_line): Return counted_command_line.
8811         (print_command_lines, execute_user_command)
8812         (execute_control_command_1, while_command, if_command): Update.
8813         (realloc_body_list): Remove.
8814         (process_next_line, recurse_read_control_structure): Update.
8815         (read_command_lines, read_command_lines_1): Return counted_command_line.
8816         (free_command_lines): Use "delete".
8817         (copy_command_lines): Remove.
8818         (define_command, document_command, show_user_1): Update.
8819         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8820         a counted_command_line.
8821         * breakpoint.h (counted_command_line): Remove typedef.
8822         (breakpoint_set_commands): Update.
8823         * breakpoint.c (check_no_tracepoint_commands)
8824         (validate_commands_for_breakpoint): Update.
8825         (breakpoint_set_commands): Change commands to be a
8826         counted_command_line.
8827         (commands_command_1, update_dprintf_command_list)
8828         (create_tracepoint_from_upload): Update.
8829
8830 2018-05-04  Tom Tromey  <tom@tromey.com>
8831
8832         * cli/cli-decode.h (cmd_list_element): New constructor.
8833         (~cmd_list_element): New destructor.
8834         (struct cmd_list_element): Add initializers.
8835         * cli/cli-decode.c (do_add_cmd): Use "new".
8836         (delete_cmd): Use "delete".
8837
8838 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8839             Pedro Alves <palves@redhat.com>
8840
8841         PR breakpoints/19806 and support for PR external/20207.
8842         * NEWS: Mention Aarch64 watchpoint improvements.
8843         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8844         watchpoints and PR external/20207 watchpoints.
8845         * nat/aarch64-linux-hw-point.c
8846         (kernel_supports_any_contiguous_range): New.
8847         (aarch64_watchpoint_offset): New.
8848         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8849         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8850         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8851         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8852         next_addr_orig_p.  Support PR external/20207 watchpoints.
8853         (aarch64_downgrade_regs): New.
8854         (aarch64_dr_state_insert_one_point): New parameters offset and
8855         addr_orig.
8856         (aarch64_dr_state_remove_one_point): Likewise.
8857         (aarch64_handle_breakpoint): Update caller.
8858         (aarch64_handle_aligned_watchpoint): Likewise.
8859         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8860         aligned_offset.
8861         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8862         aarch64_downgrade_regs.
8863         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8864         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8865         (DR_CONTROL_MASK): ... this.
8866         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8867         (unsigned int aarch64_watchpoint_offset): New prototype.
8868         (aarch64_linux_set_debug_regs): Remove const from state.
8869         * utils.c (align_up, align_down): Move to ...
8870         * common/common-utils.c (align_up, align_down): ... here.
8871         * utils.h (align_up, align_down): Move to ...
8872         * common/common-utils.h (align_up, align_down): ... here.
8873
8874 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8875
8876         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8877         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8878         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8879         Re-implement to match the ABI as summarized in GCC's
8880         gcc/config/sparc/sparc.c.  All callers updated.
8881         (sparc32_store_arguments): Remove assertion.
8882
8883 2018-05-04  Tom Tromey  <tom@tromey.com>
8884
8885         * printcmd.c: Don't include tui.h.
8886         (decode_format): Use skip_spaces.
8887
8888 2018-05-04  Tom Tromey  <tom@tromey.com>
8889
8890         PR gdb/22619:
8891         * printcmd.c (last_count): New global.
8892         (x_command): Use saved count when repeating.
8893
8894 2018-05-04  Tom Tromey  <tom@tromey.com>
8895
8896         * nto-procfs.c (do_closedir_cleanup): Remove.
8897         (procfs_pidlist): Use gdb_dir_up.
8898         * procfs.c (do_closedir_cleanup): Remove.
8899         (proc_update_threads): Use gdb_dir_up.
8900         * common/filestuff.h (struct gdb_dir_deleter): New.
8901         (gdb_dir_up): New typedef.
8902
8903 2018-05-04  Tom Tromey  <tom@tromey.com>
8904
8905         * ada-lang.c (print_mention_exception): Use std::string.
8906
8907 2018-05-04  Tom Tromey  <tom@tromey.com>
8908
8909         * ada-lang.c (create_excep_cond_exprs): Update.
8910         (ada_exception_catchpoint_cond_string): Use std::string.
8911
8912 2018-05-04  Tom Tromey  <tom@tromey.com>
8913
8914         * ada-lang.c (xget_renaming_scope): Return std::string.
8915         (old_renaming_is_invisible): Update.
8916
8917 2018-05-04  Tom Tromey  <tom@tromey.com>
8918
8919         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8920         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8921
8922 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8923
8924         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8925
8926 2018-05-04  Tom Tromey  <tom@tromey.com>
8927
8928         * remote.c (remote_query_supported_append): Change type.
8929         (remote_check_symbols): Update.
8930
8931 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8932
8933         PR gdb/11420
8934         * configure.ac: Prepend libpython.
8935         * python/python-config.py: Likewise.
8936         * configure: Regenerate.
8937
8938 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8939
8940         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8941
8942 2018-05-03  Pedro Alves  <palves@redhat.com>
8943
8944         * s390-linux-nat.c
8945         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8946         override.  Write 'true' instead of '1'.
8947         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8948         declaration.
8949
8950 2018-05-02  Pedro Alves  <palves@redhat.com>
8951
8952         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8953         add_inf_child_target.
8954         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8955         add_inf_child_target.
8956         * aix-thread.c (aix_thread_target_info): New.
8957         (aix_thread_target) <shortname, longname, doc>: Delete.
8958         <info>: New.
8959         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8960         add_inf_child_target.
8961         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8962         add_inf_child_target.
8963         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8964         add_inf_child_target.
8965         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8966         add_inf_child_target.
8967         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8968         add_inf_child_target.
8969         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8970         add_inf_child_target.
8971         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8972         add_inf_child_target.
8973         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8974         add_inf_child_target.
8975         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8976         add_inf_child_target.
8977         * bfd-target.c (target_bfd_target_info): New.
8978         (target_bfd) <shortname, longname, doc>: Delete.
8979         <info>: New.
8980         * bsd-kvm.c (bsd_kvm_target_info): New.
8981         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8982         <info>: New.
8983         (bsd_kvm_target::open): Rename to ...
8984         (bsd_kvm_target_open): ... this.  Adjust.
8985         * bsd-uthread.c (bsd_uthread_target_info): New.
8986         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8987         <info>: New.
8988         * corefile.c (core_file_command): Adjust.
8989         * corelow.c (core_target_info): New.
8990         (core_target) <shortname, longname, doc>: Delete.
8991         <info>: New.
8992         (core_target::open): Rename to ...
8993         (core_target_open): ... this.  Adjust.
8994         * ctf.c (ctf_target_info): New.
8995         (ctf_target) <shortname, longname, doc>: Delete.
8996         <info>: New.
8997         (ctf_target::open): Rename to ...
8998         (ctf_target_open): ... this.
8999         (_initialize_ctf): Adjust.
9000         * exec.c (exec_target_info): New.
9001         (exec_target) <shortname, longname, doc>: Delete.
9002         <info>: New.
9003         (exec_target::open): Rename to ...
9004         (exec_target_open): ... this.
9005         * gdbcore.h (core_target_open): Declare.
9006         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9007         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9008         add_inf_child_target.
9009         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9010         add_inf_child_target.
9011         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9012         add_inf_child_target.
9013         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9014         add_inf_child_target.
9015         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9016         add_inf_child_target.
9017         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9018         add_inf_child_target.
9019         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9020         add_inf_child_target.
9021         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9022         add_inf_child_target.
9023         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9024         add_inf_child_target.
9025         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9026         add_inf_child_target.
9027         * inf-child.c (inf_child_target_info): New.
9028         (inf_child_target::info): New.
9029         (inf_child_open_target): Remove 'target' parameter.  Use
9030         get_native_target instead.
9031         (inf_child_target::open): Delete.
9032         (add_inf_child_target): New.
9033         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9034         Delete.
9035         <info>: New.
9036         (add_inf_child_target): Declare.
9037         (inf_child_open_target): Declare.
9038         * linux-thread-db.c (thread_db_target_info): New.
9039         (thread_db_target) <shortname, longname, doc>: Delete.
9040         <info>: New.
9041         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9042         add_inf_child_target.
9043         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9044         add_inf_child_target.
9045         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9046         add_inf_child_target.
9047         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9048         add_inf_child_target.
9049         * make-target-delegates (print_class): Adjust.
9050         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9051         add_inf_child_target.
9052         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9053         add_inf_child_target.
9054         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9055         add_inf_child_target.
9056         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9057         add_inf_child_target.
9058         * nto-procfs.c (nto_native_target_info): New.
9059         (nto_procfs_target_native) <shortname, longname, doc>:
9060         Delete.
9061         <info>: New.
9062         (nto_procfs_target_info): New.
9063         (nto_procfs_target_procfs) <shortname, longname, doc>:
9064         Delete.
9065         <info>: New.
9066         (init_procfs_targets): Adjust.
9067         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9068         add_inf_child_target.
9069         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9070         add_inf_child_target.
9071         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9072         add_inf_child_target.
9073         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9074         add_inf_child_target.
9075         * ravenscar-thread.c (ravenscar_target_info): New.
9076         (ravenscar_thread_target) <shortname, longname, doc>:
9077         Delete.
9078         <info>: New.
9079         * record-btrace.c (record_btrace_target_info):
9080         (record_btrace_target) <shortname, longname, doc>: Delete.
9081         <info>: New.
9082         (record_btrace_target::open): Rename to ...
9083         (record_btrace_target_open): ... this.  Adjust.
9084         * record-full.c (record_longname, record_doc): New.
9085         (record_full_base_target) <shortname, longname, doc>: Delete.
9086         <info>: New.
9087         (record_full_target_info): New.
9088         (record_full_target): <shortname>: Delete.
9089         <info>: New.
9090         (record_full_core_open_1, record_full_open_1): Update comments.
9091         (record_full_base_target::open): Rename to ...
9092         (record_full_open): ... this.
9093         (cmd_record_full_restore): Update.
9094         (_initialize_record_full): Update.
9095         * remote-sim.c (remote_sim_target_info): New.
9096         (gdbsim_target) <shortname, longname, doc>: Delete.
9097         <info>: New.
9098         (gdbsim_target::open): Rename to ...
9099         (gdbsim_target_open): ... this.
9100         (_initialize_remote_sim): Adjust.
9101         * remote.c (remote_doc): New.
9102         (remote_target_info): New.
9103         (remote_target) <shortname, longname, doc>: Delete.
9104         <info>: New.
9105         (extended_remote_target_info): New.
9106         (extended_remote_target) <shortname, longname, doc>: Delete.
9107         <info>: New.
9108         (remote_target::open_1): Make static.  Adjust.
9109         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9110         * s390-linux-nat.c (_initialize_s390_nat): Use
9111         add_inf_child_target.
9112         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9113         add_inf_child_target.
9114         * sol-thread.c (thread_db_target_info): New.
9115         (sol_thread_target) <shortname, longname, doc>: Delete.
9116         <info>: New.
9117         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9118         add_inf_child_target.
9119         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9120         add_inf_child_target.
9121         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9122         add_inf_child_target.
9123         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9124         add_inf_child_target.
9125         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9126         add_inf_child_target.
9127         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9128         add_inf_child_target.
9129         * spu-linux-nat.c (_initialize_spu_nat): Use
9130         add_inf_child_target.
9131         * spu-multiarch.c (spu_multiarch_target_info): New.
9132         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9133         <info>: New.
9134         * target-delegates.c: Regenerate.
9135         * target.c: Include <unordered_map>.
9136         (target_ops_p): Delete.
9137         (DEF_VEC_P(target_ops_p)): Delete.
9138         (target_factories): New.
9139         (test_target_info): New.
9140         (test_target_ops::info): New.
9141         (open_target): Adjust to use target_factories.
9142         (add_target_with_completer): Rename to ...
9143         (add_target): ... this.  Change prototype.  Register target_info
9144         and open callback in target_factories.  Register target_info in
9145         command context instead of target_ops.
9146         (add_target): Delete old implementation.
9147         (add_deprecated_target_alias): Change prototype.  Adjust.
9148         (the_native_target): New.
9149         (set_native_target, get_native_target): New.
9150         (find_default_run_target): Use the_native_target.
9151         (find_attach_target, find_run_target): Simplify.
9152         (target_ops::open): Delete.
9153         (dummy_target_info): New.
9154         (dummy_target::shortname, dummy_target::longname)
9155         (dummy_target::doc): Delete.
9156         (dummy_target::info): New.
9157         (debug_target::shortname, debug_target::longname)
9158         (debug_target::doc): Delete.
9159         (debug_target::info): New.
9160         * target.h (struct target_info): New.
9161         (target_ops::~target_ops): Add comment.
9162         (target_ops::info): New.
9163         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9164         longer virtual.  Implement in terms of target_info.
9165         (set_native_target, get_native_target): Declare.
9166         (target_open_ftype): New.
9167         (add_target, add_target_with_completer)
9168         (add_deprecated_target_alias): Change prototype.
9169         (test_target) <shortname, longname, doc>: Delete.
9170         <info>: New.
9171         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9172         add_inf_child_target.
9173         * tracefile-tfile.c (tfile_target_info): New.
9174         (tfile_target) <shortname, longname, doc>: Delete.
9175         <info>: New.
9176         (tfile_target::open): Rename to ...
9177         (tfile_target_open): ... this.
9178         (_initialize_tracefile_tfile): Adjust.
9179         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9180         add_inf_child_target.
9181         * windows-nat.c (_initialize_windows_nat): Use
9182         add_inf_child_target.
9183         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9184         add_inf_child_target.
9185
9186 2018-05-02  Pedro Alves  <palves@redhat.com>
9187
9188         * linux-nat.h (linux_nat_target) <low_new_thread,
9189         low_delete_thread, low_new_fork, low_forget_process,
9190         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9191         New virtual methods.
9192         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9193         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9194         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9195         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9196         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9197         Delete.
9198         * linux-fork.c (delete_fork): Adjust to call low method.
9199         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9200         (linux_nat_new_fork, linux_nat_forget_process_hook)
9201         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9202         (linux_nat_status_is_event):
9203         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9204         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9205         to call low method.
9206         (sigtrap_is_event): Rename to ...
9207         (linux_nat_target::low_status_is_event): ... this.
9208         (linux_nat_set_status_is_event): Delete.
9209         (save_stop_reason, linux_nat_wait_1)
9210         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9211         low methods.
9212         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9213         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9214         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9215         (linux_nat_set_prepare_to_resume): Delete.
9216         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9217         low virtual methods.
9218         * amd64-linux-nat.c: Likewise.
9219         * arm-linux-nat.c: Likewise.
9220         * i386-linux-nat.c: Likewise.
9221         * ia64-linux-nat.c: Likewise.
9222         * mips-linux-nat.c: Likewise.
9223         * ppc-linux-nat.c: Likewise.
9224         * s390-linux-nat.c: Likewise.
9225         * sparc64-linux-nat.c: Likewise.
9226         * x86-linux-nat.c: Likewise.
9227         * x86-linux-nat.h: Include "nat/x86-linux.h".
9228         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9229         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9230         Override methods.
9231
9232 2018-05-02  Pedro Alves  <palves@redhat.com>
9233
9234         * target.h (target_ops)
9235         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9236         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9237         stopped_by_watchpoint, have_continuable_watchpoint,
9238         stopped_data_address, watchpoint_addr_within_range,
9239         can_accel_watchpoint_condition, can_run, thread_alive,
9240         has_all_memory, has_memory, has_stack, has_registers,
9241         has_execution, can_async_p, is_async_p, supports_non_stop,
9242         always_non_stop_p, can_execute_reverse, supports_multi_process,
9243         supports_enable_disable_tracepoint,
9244         supports_disable_randomization, supports_string_tracing,
9245         supports_evaluation_of_breakpoint_conditions,
9246         can_run_breakpoint_commands, filesystem_is_local,
9247         can_download_tracepoint, get_trace_state_variable_value,
9248         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9249         record_is_replaying, record_will_replay,
9250         augmented_libraries_svr4_read>: Adjust to return bool.
9251         * aarch64-linux-nat.c: All implementations adjusted.
9252         * aix-thread.c: All implementations adjusted.
9253         * arm-linux-nat.c: All implementations adjusted.
9254         * breakpoint.c: All implementations adjusted.
9255         * bsd-kvm.c: All implementations adjusted.
9256         * bsd-uthread.c: All implementations adjusted.
9257         * corelow.c: All implementations adjusted.
9258         * ctf.c: All implementations adjusted.
9259         * darwin-nat.c: All implementations adjusted.
9260         * darwin-nat.h: All implementations adjusted.
9261         * exec.c: All implementations adjusted.
9262         * fbsd-nat.c: All implementations adjusted.
9263         * fbsd-nat.h: All implementations adjusted.
9264         * gnu-nat.c: All implementations adjusted.
9265         * gnu-nat.h: All implementations adjusted.
9266         * go32-nat.c: All implementations adjusted.
9267         * ia64-linux-nat.c: All implementations adjusted.
9268         * inf-child.c: All implementations adjusted.
9269         * inf-child.h: All implementations adjusted.
9270         * inf-ptrace.c: All implementations adjusted.
9271         * inf-ptrace.h: All implementations adjusted.
9272         * linux-nat.c: All implementations adjusted.
9273         * linux-nat.h: All implementations adjusted.
9274         * mips-linux-nat.c: All implementations adjusted.
9275         * nto-procfs.c: All implementations adjusted.
9276         * ppc-linux-nat.c: All implementations adjusted.
9277         * procfs.c: All implementations adjusted.
9278         * ravenscar-thread.c: All implementations adjusted.
9279         * record-btrace.c: All implementations adjusted.
9280         * record-full.c: All implementations adjusted.
9281         * remote-sim.c: All implementations adjusted.
9282         * remote.c: All implementations adjusted.
9283         * s390-linux-nat.c: All implementations adjusted.
9284         * sol-thread.c: All implementations adjusted.
9285         * spu-multiarch.c: All implementations adjusted.
9286         * target-delegates.c: All implementations adjusted.
9287         * target.c: All implementations adjusted.
9288         * target.h: All implementations adjusted.
9289         * tracefile-tfile.c: All implementations adjusted.
9290         * tracefile.c: All implementations adjusted.
9291         * tracefile.h: All implementations adjusted.
9292         * windows-nat.c: All implementations adjusted.
9293         * x86-linux-nat.h: All implementations adjusted.
9294         * x86-nat.h: All implementations adjusted.
9295
9296 2018-05-02  Pedro Alves  <palves@redhat.com>
9297
9298         * make-target-delegates (scan_target_h): Don't trim lines here.
9299         Replace sequences of tabs and/or whitespace with a single
9300         whitespace.
9301         (top level, parsing methods): Trim each line before processing it
9302         here.
9303
9304 2018-05-02  Pedro Alves  <palves@redhat.com>
9305             John Baldwin  <jhb@freebsd.org>
9306
9307         * target.h (enum strata) <debug_stratum>: New.
9308         (struct target_ops) <all delegation methods>: Replace by C++
9309         virtual methods, and drop "to_" prefix.  All references updated
9310         throughout.
9311         <to_shortname, to_longname, to_doc, to_data,
9312         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9313         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9314         virtual methods.  All references updated throughout.
9315         <can_attach, supports_terminal_ours, can_create_inferior,
9316         get_thread_control_capabilities, attach_no_wait>: New
9317         virtual methods.
9318         <insert_breakpoint, remove_breakpoint>: Now
9319         TARGET_DEFAULT_NORETURN methods.
9320         <info_proc>: Now returns bool.
9321         <to_magic>: Delete.
9322         (OPS_MAGIC): Delete.
9323         (current_target): Delete.  All references replaced by references
9324         to ...
9325         (target_stack): ... this.  New.
9326         (target_shortname, target_longname): Adjust.
9327         (target_can_run): Now a function declaration.
9328         (default_child_has_all_memory, default_child_has_memory)
9329         (default_child_has_stack, default_child_has_registers)
9330         (default_child_has_execution): Remove target_ops parameter.
9331         (complete_target_initialization): Delete.
9332         (memory_breakpoint_target): New template class.
9333         (test_target_ops): Refactor as a C++ class with virtual methods.
9334         * make-target-delegates (NAME_PART): Tighten.
9335         (POINTER_PART, CP_SYMBOL): New.
9336         (SIMPLE_RETURN_PART): Reimplement.
9337         (VEC_RETURN_PART): Expect less.
9338         (RETURN_PART, VIRTUAL_PART): New.
9339         (METHOD): Adjust to C++ virtual methods.
9340         (scan_target_h): Remove reference to C99.
9341         (dname): Output "target_ops::" prefix.
9342         (write_function_header): Adjust to output a C++ class method.
9343         (write_declaration): New.
9344         (write_delegator): Adjust to output a C++ class method.
9345         (tdname): Output "dummy_target::" prefix.
9346         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9347         method.
9348         (tdefault_names, debug_names): Delete.
9349         (return_types, tdefaults, styles, argtypes_array): New.
9350         (top level): All methods are delegators.
9351         (print_class): New.
9352         (top level): Print dummy_target and debug_target classes.
9353         * target-delegates.c: Regenerate.
9354         * target-debug.h (target_debug_print_enum_info_proc_what)
9355         (target_debug_print_thread_control_capabilities)
9356         (target_debug_print_thread_info_p): New.
9357         * target.c (dummy_target): Delete.
9358         (the_dummy_target, the_debug_target): New.
9359         (target_stack): Now extern.
9360         (set_targetdebug): Push/unpush debug target.
9361         (default_child_has_all_memory, default_child_has_memory)
9362         (default_child_has_stack, default_child_has_registers)
9363         (default_child_has_execution): Remove target_ops parameter.
9364         (complete_target_initialization): Delete.
9365         (add_target_with_completer): No longer call
9366         complete_target_initialization.
9367         (target_supports_terminal_ours): Use regular delegation.
9368         (update_current_target): Delete.
9369         (push_target): No longer check magic number.  Don't call
9370         update_current_target.
9371         (unpush_target): Don't call update_current_target.
9372         (target_is_pushed): No longer check magic number.
9373         (target_require_runnable): Skip for all stratums over
9374         process_stratum.
9375         (target_ops::info_proc): New.
9376         (target_info_proc): Use find_target_at and
9377         find_default_run_target.
9378         (target_supports_disable_randomization): Use regular delegation.
9379         (target_get_osdata): Use find_target_at.
9380         (target_ops::open, target_ops::close, target_ops::can_attach)
9381         (target_ops::attach, target_ops::can_create_inferior)
9382         (target_ops::create_inferior, target_ops::can_run)
9383         (target_can_run): New.
9384         (default_fileio_target): Use regular delegation.
9385         (target_ops::fileio_open, target_ops::fileio_pwrite)
9386         (target_ops::fileio_pread, target_ops::fileio_fstat)
9387         (target_ops::fileio_close, target_ops::fileio_unlink)
9388         (target_ops::fileio_readlink): New.
9389         (target_fileio_open_1, target_fileio_unlink)
9390         (target_fileio_readlink): Always call the target method.  Handle
9391         FILEIO_ENOSYS.
9392         (return_zero, return_zero_has_execution): Delete.
9393         (init_dummy_target): Delete.
9394         (dummy_target::dummy_target, dummy_target::shortname)
9395         (dummy_target::longname, dummy_target::doc)
9396         (debug_target::debug_target, debug_target::shortname)
9397         (debug_target::longname, debug_target::doc): New.
9398         (target_supports_delete_record): Use regular delegation.
9399         (setup_target_debug): Delete.
9400         (maintenance_print_target_stack): Skip debug_stratum.
9401         (initialize_targets): Instantiate the_dummy_target and
9402         the_debug_target.
9403         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9404         use target_stack.
9405         (target_auxv_search, fprint_target_auxv): Adjust.
9406         (info_auxv_command): Adjust to use target_stack.
9407         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9408         * exceptions.c (print_flush): Handle a NULL target_stack.
9409         * regcache.c (target_ops_no_register): Refactor as class with
9410         virtual methods.
9411
9412         * exec.c (exec_target): New class.
9413         (exec_ops): Now an exec_target.
9414         (exec_open, exec_close_1, exec_get_section_table)
9415         (exec_xfer_partial, exec_files_info, exec_has_memory)
9416         (exec_make_note_section): Refactor as exec_target methods.
9417         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9418         Delete.
9419         (exec_target::find_memory_regions): New.
9420         (_initialize_exec): Don't call init_exec_ops.
9421         * gdbcore.h (exec_file_clear): Delete.
9422
9423         * corefile.c (core_target): Delete.
9424         (core_file_command): Adjust.
9425         * corelow.c (core_target): New class.
9426         (the_core_target): New.
9427         (core_close): Remove target_ops parameter.
9428         (core_close_cleanup): Adjust.
9429         (core_target::close): New.
9430         (core_open, core_detach, get_core_registers, core_files_info)
9431         (core_xfer_partial, core_thread_alive, core_read_description)
9432         (core_pid_to_str, core_thread_name, core_has_memory)
9433         (core_has_stack, core_has_registers, core_info_proc): Rework as
9434         core_target methods.
9435         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9436         (_initialize_corelow): Initialize the_core_target.
9437         * gdbcore.h (core_target): Delete.
9438         (the_core_target): New.
9439
9440         * ctf.c: (ctf_target): New class.
9441         (ctf_ops): Now a ctf_target.
9442         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9443         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9444         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9445         methods.
9446         (init_ctf_ops): Delete.
9447         (_initialize_ctf): Don't call it.
9448         * tracefile-tfile.c (tfile_target): New class.
9449         (tfile_ops): Now a tfile_target.
9450         (tfile_open, tfile_close, tfile_files_info)
9451         (tfile_get_tracepoint_status, tfile_trace_find)
9452         (tfile_fetch_registers, tfile_xfer_partial)
9453         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9454         Refactor as tfile_target methods.
9455         (tfile_xfer_partial_features): Remove target_ops parameter.
9456         (init_tfile_ops): Delete.
9457         (_initialize_tracefile_tfile): Don't call it.
9458         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9459         (tracefile_has_stack, tracefile_has_registers)
9460         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9461         tracefile_target methods.
9462         (init_tracefile_ops): Delete.
9463         (tracefile_target::tracefile_target): New.
9464         * tracefile.h: Include "target.h".
9465         (tracefile_target): New class.
9466         (init_tracefile_ops): Delete.
9467
9468         * spu-multiarch.c (spu_multiarch_target): New class.
9469         (spu_ops): Now a spu_multiarch_target.
9470         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9471         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9472         (spu_search_memory, spu_mourn_inferior): Refactor as
9473         spu_multiarch_target methods.
9474         (init_spu_ops): Delete.
9475         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9476         complete_target_initialization.
9477
9478         * ravenscar-thread.c (ravenscar_thread_target): New class.
9479         (ravenscar_ops): Now a ravenscar_thread_target.
9480         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9481         (ravenscar_thread_alive, ravenscar_pid_to_str)
9482         (ravenscar_fetch_registers, ravenscar_store_registers)
9483         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9484         (ravenscar_stopped_by_hw_breakpoint)
9485         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9486         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9487         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9488         methods.
9489         (init_ravenscar_thread_ops): Delete.
9490         (_initialize_ravenscar): Remove references to
9491         init_ravenscar_thread_ops and complete_target_initialization.
9492
9493         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9494         (bsd_uthread_target): New class.
9495         (bsd_uthread_ops): Now a bsd_uthread_target.
9496         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9497         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9498         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9499         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9500         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9501         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9502         (bsd_uthread_target): Delete function.
9503         (_initialize_bsd_uthread): Remove reference to
9504         complete_target_initialization.
9505
9506         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9507         (target_bfd): ... this new class.
9508         (target_bfd_xfer_partial, target_bfd_get_section_table)
9509         (target_bfd_close): Refactor as target_bfd methods.
9510         (target_bfd::~target_bfd): New.
9511         (target_bfd_reopen): Adjust.
9512         (target_bfd::close): New.
9513
9514         * record-btrace.c (record_btrace_target): New class.
9515         (record_btrace_ops): Now a record_btrace_target.
9516         (record_btrace_open, record_btrace_stop_recording)
9517         (record_btrace_disconnect, record_btrace_close)
9518         (record_btrace_async, record_btrace_info)
9519         (record_btrace_insn_history, record_btrace_insn_history_range)
9520         (record_btrace_insn_history_from, record_btrace_call_history)
9521         (record_btrace_call_history_range)
9522         (record_btrace_call_history_from, record_btrace_record_method)
9523         (record_btrace_is_replaying, record_btrace_will_replay)
9524         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9525         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9526         (record_btrace_store_registers, record_btrace_prepare_to_store)
9527         (record_btrace_to_get_unwinder)
9528         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9529         (record_btrace_commit_resume, record_btrace_wait)
9530         (record_btrace_stop, record_btrace_can_execute_reverse)
9531         (record_btrace_stopped_by_sw_breakpoint)
9532         (record_btrace_supports_stopped_by_sw_breakpoint)
9533         (record_btrace_stopped_by_hw_breakpoint)
9534         (record_btrace_supports_stopped_by_hw_breakpoint)
9535         (record_btrace_update_thread_list, record_btrace_thread_alive)
9536         (record_btrace_goto_begin, record_btrace_goto_end)
9537         (record_btrace_goto, record_btrace_stop_replaying_all)
9538         (record_btrace_execution_direction)
9539         (record_btrace_prepare_to_generate_core)
9540         (record_btrace_done_generating_core): Refactor as
9541         record_btrace_target methods.
9542         (init_record_btrace_ops): Delete.
9543         (_initialize_record_btrace): Remove reference to
9544         init_record_btrace_ops.
9545         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9546         the execution_direction global.
9547         (record_full_base_target, record_full_target)
9548         (record_full_core_target): New classes.
9549         (record_full_ops): Now a record_full_target.
9550         (record_full_core_ops): Now a record_full_core_target.
9551         (record_full_target::detach, record_full_target::disconnect)
9552         (record_full_core_target::disconnect)
9553         (record_full_target::mourn_inferior, record_full_target::kill):
9554         New.
9555         (record_full_open, record_full_close, record_full_async): Refactor
9556         as methods of the record_full_base_target class.
9557         (record_full_resume, record_full_commit_resume): Refactor
9558         as methods of the record_full_target class.
9559         (record_full_wait, record_full_stopped_by_watchpoint)
9560         (record_full_stopped_data_address)
9561         (record_full_stopped_by_sw_breakpoint)
9562         (record_full_supports_stopped_by_sw_breakpoint)
9563         (record_full_stopped_by_hw_breakpoint)
9564         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9565         methods of the record_full_base_target class.
9566         (record_full_store_registers, record_full_xfer_partial)
9567         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9568         Refactor as methods of the record_full_target class.
9569         (record_full_can_execute_reverse, record_full_get_bookmark)
9570         (record_full_goto_bookmark, record_full_execution_direction)
9571         (record_full_record_method, record_full_info, record_full_delete)
9572         (record_full_is_replaying, record_full_will_replay)
9573         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9574         (record_full_stop_replaying): Refactor as methods of the
9575         record_full_base_target class.
9576         (record_full_core_resume, record_full_core_kill)
9577         (record_full_core_fetch_registers)
9578         (record_full_core_prepare_to_store)
9579         (record_full_core_store_registers, record_full_core_xfer_partial)
9580         (record_full_core_insert_breakpoint)
9581         (record_full_core_remove_breakpoint)
9582         (record_full_core_has_execution): Refactor
9583         as methods of the record_full_core_target class.
9584         (record_full_base_target::supports_delete_record): New.
9585         (init_record_full_ops): Delete.
9586         (init_record_full_core_ops): Delete.
9587         (record_full_save): Refactor as method of the
9588         record_full_base_target class.
9589         (_initialize_record_full): Remove references to
9590         init_record_full_ops and init_record_full_core_ops.
9591
9592         * remote.c (remote_target, extended_remote_target): New classes.
9593         (remote_ops): Now a remote_target.
9594         (extended_remote_ops): Now an extended_remote_target.
9595         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9596         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9597         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9598         (remote_pass_signals, remote_set_syscall_catchpoint)
9599         (remote_program_signals, )
9600         (remote_thread_always_alive): Remove target_ops parameter.
9601         (remote_thread_alive, remote_thread_name)
9602         (remote_update_thread_list, remote_threads_extra_info)
9603         (remote_static_tracepoint_marker_at)
9604         (remote_static_tracepoint_markers_by_strid)
9605         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9606         (remote_open): Refactor as methods of remote_target.
9607         (extended_remote_open, extended_remote_detach)
9608         (extended_remote_attach, extended_remote_post_attach):
9609         (extended_remote_supports_disable_randomization)
9610         (extended_remote_create_inferior): : Refactor as method of
9611         extended_remote_target.
9612         (remote_set_permissions, remote_open_1, remote_detach)
9613         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9614         (remote_resume, remote_commit_resume, remote_stop)
9615         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9616         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9617         (remote_prepare_to_store, remote_store_registers)
9618         (remote_flash_erase, remote_flash_done, remote_files_info)
9619         (remote_kill, remote_mourn, remote_insert_breakpoint)
9620         (remote_remove_breakpoint, remote_insert_watchpoint)
9621         (remote_watchpoint_addr_within_range)
9622         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9623         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9624         (remote_supports_stopped_by_sw_breakpoint)
9625         (remote_stopped_by_hw_breakpoint)
9626         (remote_supports_stopped_by_hw_breakpoint)
9627         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9628         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9629         (remote_verify_memory): Refactor as methods of remote_target.
9630         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9631         parameter.
9632         (remote_xfer_partial, remote_get_memory_xfer_limit)
9633         (remote_search_memory, remote_rcmd, remote_memory_map)
9634         (remote_pid_to_str, remote_get_thread_local_address)
9635         (remote_get_tib_address, remote_read_description): Refactor as
9636         methods of remote_target.
9637         (remote_target::fileio_open, remote_target::fileio_pwrite)
9638         (remote_target::fileio_pread, remote_target::fileio_close): New.
9639         (remote_hostio_readlink, remote_hostio_fstat)
9640         (remote_filesystem_is_local, remote_can_execute_reverse)
9641         (remote_supports_non_stop, remote_supports_disable_randomization)
9642         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9643         (remote_supports_enable_disable_tracepoint)
9644         (remote_supports_string_tracing)
9645         (remote_can_run_breakpoint_commands, remote_trace_init)
9646         (remote_download_tracepoint, remote_can_download_tracepoint)
9647         (remote_download_trace_state_variable, remote_enable_tracepoint)
9648         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9649         (remote_trace_start, remote_get_trace_status)
9650         (remote_get_tracepoint_status, remote_trace_stop)
9651         (remote_trace_find, remote_get_trace_state_variable_value)
9652         (remote_save_trace_data, remote_get_raw_trace_data)
9653         (remote_set_disconnected_tracing, remote_core_of_thread)
9654         (remote_set_circular_trace_buffer, remote_traceframe_info)
9655         (remote_get_min_fast_tracepoint_insn_len)
9656         (remote_set_trace_buffer_size, remote_set_trace_notes)
9657         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9658         (remote_disable_btrace, remote_teardown_btrace)
9659         (remote_read_btrace, remote_btrace_conf)
9660         (remote_augmented_libraries_svr4_read, remote_load)
9661         (remote_pid_to_exec_file, remote_can_do_single_step)
9662         (remote_execution_direction, remote_thread_handle_to_thread_info):
9663         Refactor as methods of remote_target.
9664         (init_remote_ops, init_extended_remote_ops): Delete.
9665         (remote_can_async_p, remote_is_async_p, remote_async)
9666         (remote_thread_events, remote_upload_tracepoints)
9667         (remote_upload_trace_state_variables): Refactor as methods of
9668         remote_target.
9669         (_initialize_remote): Remove references to init_remote_ops and
9670         init_extended_remote_ops.
9671
9672         * remote-sim.c (gdbsim_target): New class.
9673         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9674         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9675         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9676         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9677         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9678         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9679         Refactor as methods of gdbsim_target.
9680         (gdbsim_ops): Now a gdbsim_target.
9681         (init_gdbsim_ops): Delete.
9682         (gdbsim_cntrl_c): Adjust.
9683         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9684
9685         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9686         (the_amd64_linux_nat_target): New.
9687         (amd64_linux_fetch_inferior_registers)
9688         (amd64_linux_store_inferior_registers): Refactor as methods of
9689         amd64_linux_nat_target.
9690         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9691         * i386-linux-nat.c: Don't include "linux-nat.h".
9692         (i386_linux_nat_target): New class.
9693         (the_i386_linux_nat_target): New.
9694         (i386_linux_fetch_inferior_registers)
9695         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9696         as methods of i386_linux_nat_target.
9697         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9698         * inf-child.c (inf_child_ops): Delete.
9699         (inf_child_fetch_inferior_registers)
9700         (inf_child_store_inferior_registers): Delete.
9701         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9702         methods of inf_child_target.
9703         (inf_child_target::supports_terminal_ours)
9704         (inf_child_target::terminal_init)
9705         (inf_child_target::terminal_inferior)
9706         (inf_child_target::terminal_ours_for_output)
9707         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9708         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9709         New.
9710         (inf_child_open, inf_child_disconnect, inf_child_close)
9711         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9712         (inf_child_post_startup_inferior, inf_child_can_run)
9713         (inf_child_pid_to_exec_file): Refactor as methods of
9714         inf_child_target.
9715         (inf_child_follow_fork): Delete.
9716         (inf_child_target::can_create_inferior)
9717         (inf_child_target::can_attach): New.
9718         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9719         (inf_child_target::has_stack, inf_child_target::has_registers)
9720         (inf_child_target::has_execution): New.
9721         (inf_child_fileio_open, inf_child_fileio_pwrite)
9722         (inf_child_fileio_pread, inf_child_fileio_fstat)
9723         (inf_child_fileio_close, inf_child_fileio_unlink)
9724         (inf_child_fileio_readlink, inf_child_use_agent)
9725         (inf_child_can_use_agent): Refactor as methods of
9726         inf_child_target.
9727         (return_zero, inf_child_target): Delete.
9728         (inf_child_target::inf_child_target): New.
9729         * inf-child.h: Include "target.h".
9730         (inf_child_target): Delete function prototype.
9731         (inf_child_target): New class.
9732         (inf_child_open_target, inf_child_mourn_inferior)
9733         (inf_child_maybe_unpush_target): Delete.
9734         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9735         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9736         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9737         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9738         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9739         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9740         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9741         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9742         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9743         methods of inf_ptrace_target.
9744         (inf_ptrace_target): Delete function.
9745         * inf-ptrace.h: Include "inf-child.h".
9746         (inf_ptrace_target): Delete function declaration.
9747         (inf_ptrace_target): New class.
9748         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9749         * linux-nat.c (linux_target): New.
9750         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9751         (linux_nat_target::~linux_nat_target): New.
9752         (linux_child_post_attach, linux_child_post_startup_inferior)
9753         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9754         (linux_child_remove_fork_catchpoint)
9755         (linux_child_insert_vfork_catchpoint)
9756         (linux_child_remove_vfork_catchpoint)
9757         (linux_child_insert_exec_catchpoint)
9758         (linux_child_remove_exec_catchpoint)
9759         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9760         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9761         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9762         (linux_nat_stopped_data_address)
9763         (linux_nat_stopped_by_sw_breakpoint)
9764         (linux_nat_supports_stopped_by_sw_breakpoint)
9765         (linux_nat_stopped_by_hw_breakpoint)
9766         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9767         (linux_nat_kill, linux_nat_mourn_inferior)
9768         (linux_nat_xfer_partial, linux_nat_thread_alive)
9769         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9770         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9771         (linux_child_static_tracepoint_markers_by_strid)
9772         (linux_nat_is_async_p, linux_nat_can_async_p)
9773         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9774         (linux_nat_supports_multi_process)
9775         (linux_nat_supports_disable_randomization, linux_nat_async)
9776         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9777         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9778         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9779         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9780         methods of linux_nat_target.
9781         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9782         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9783         parameter.
9784         (check_stopped_by_watchpoint): Adjust.
9785         (linux_xfer_partial): Delete.
9786         (linux_target_install_ops, linux_target, linux_nat_add_target):
9787         Delete.
9788         (linux_nat_target::linux_nat_target): New.
9789         * linux-nat.h: Include "inf-ptrace.h".
9790         (linux_nat_target): New.
9791         (linux_target, linux_target_install_ops, linux_nat_add_target):
9792         Delete function declarations.
9793         (linux_target): Declare global.
9794         * linux-thread-db.c (thread_db_target): New.
9795         (thread_db_target::thread_db_target): New.
9796         (thread_db_ops): Delete.
9797         (the_thread_db_target): New.
9798         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9799         (thread_db_update_thread_list, thread_db_pid_to_str)
9800         (thread_db_extra_thread_info)
9801         (thread_db_thread_handle_to_thread_info)
9802         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9803         (thread_db_resume): Refactor as methods of thread_db_target.
9804         (init_thread_db_ops): Delete.
9805         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9806         * x86-linux-nat.c: Don't include "linux-nat.h".
9807         (super_post_startup_inferior): Delete.
9808         (x86_linux_nat_target::~x86_linux_nat_target): New.
9809         (x86_linux_child_post_startup_inferior)
9810         (x86_linux_read_description, x86_linux_enable_btrace)
9811         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9812         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9813         methods of x86_linux_nat_target.
9814         (x86_linux_create_target): Delete.  Bits folded ...
9815         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9816         pointer.
9817         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9818         (x86_linux_nat_target): New class.
9819         (x86_linux_create_target): Delete.
9820         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9821         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9822         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9823         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9824         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9825         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9826         make extern.
9827         (x86_use_watchpoints): Delete.
9828         * x86-nat.h: Include "breakpoint.h" and "target.h".
9829         (x86_use_watchpoints): Delete.
9830         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9831         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9832         (x86_insert_watchpoint, x86_remove_watchpoint)
9833         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9834         (x86_stopped_by_hw_breakpoint): New declarations.
9835         (x86_nat_target): New template class.
9836
9837         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9838         (the_ppc_linux_nat_target): New.
9839         (ppc_linux_fetch_inferior_registers)
9840         (ppc_linux_can_use_hw_breakpoint)
9841         (ppc_linux_region_ok_for_hw_watchpoint)
9842         (ppc_linux_ranged_break_num_registers)
9843         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9844         (ppc_linux_insert_mask_watchpoint)
9845         (ppc_linux_remove_mask_watchpoint)
9846         (ppc_linux_can_accel_watchpoint_condition)
9847         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9848         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9849         (ppc_linux_watchpoint_addr_within_range)
9850         (ppc_linux_masked_watch_num_registers)
9851         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9852         (ppc_linux_read_description): Refactor as methods of
9853         ppc_linux_nat_target.
9854         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9855
9856         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9857         (procfs_target): New class.
9858         (the_procfs_target): New.
9859         (procfs_target): Delete function.
9860         (procfs_auxv_parse, procfs_attach, procfs_detach)
9861         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9862         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9863         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9864         (procfs_create_inferior, procfs_update_thread_list)
9865         (procfs_thread_alive, procfs_pid_to_str)
9866         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9867         (procfs_stopped_data_address, procfs_insert_watchpoint)
9868         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9869         (proc_find_memory_regions, procfs_info_proc)
9870         (procfs_make_note_section): Refactor as methods of procfs_target.
9871         (_initialize_procfs): Adjust.
9872         * sol-thread.c (sol_thread_target): New class.
9873         (sol_thread_ops): Now a sol_thread_target.
9874         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9875         (sol_thread_fetch_registers, sol_thread_store_registers)
9876         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9877         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9878         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9879         (init_sol_thread_ops): Delete.
9880         (_initialize_sol_thread): Adjust.  Remove references to
9881         init_sol_thread_ops and complete_target_initialization.
9882
9883         * windows-nat.c (windows_nat_target): New class.
9884         (windows_fetch_inferior_registers)
9885         (windows_store_inferior_registers, windows_resume, windows_wait)
9886         (windows_attach, windows_detach, windows_pid_to_exec_file)
9887         (windows_files_info, windows_create_inferior)
9888         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9889         (windows_close, windows_pid_to_str, windows_xfer_partial)
9890         (windows_get_tib_address, windows_get_ada_task_ptid)
9891         (windows_thread_name, windows_thread_alive): Refactor as
9892         windows_nat_target methods.
9893         (do_initial_windows_stuff): Adjust.
9894         (windows_target): Delete function.
9895         (_initialize_windows_nat): Adjust.
9896
9897         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9898         (darwin_mourn_inferior, darwin_kill_inferior)
9899         (darwin_create_inferior, darwin_attach, darwin_detach)
9900         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9901         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9902         (darwin_supports_multi_process): Refactor as darwin_nat_target
9903         methods.
9904         (darwin_resume_to, darwin_files_info): Delete.
9905         (_initialize_darwin_inferior): Rename to ...
9906         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9907         * darwin-nat.h: Include "inf-child.h".
9908         (darwin_nat_target): New class.
9909         (darwin_complete_target): Delete.
9910         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9911         (darwin_target): New.
9912         (i386_darwin_fetch_inferior_registers)
9913         (i386_darwin_store_inferior_registers): Refactor as methods of
9914         darwin_nat_target.
9915         (darwin_complete_target): Delete, with ...
9916         (_initialize_i386_darwin_nat): ... bits factored out here.
9917
9918         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9919         (the_alpha_linux_nat_target): New.
9920         (alpha_linux_register_u_offset): Refactor as
9921         alpha_linux_nat_target method.
9922         (_initialize_alpha_linux_nat): Adjust.
9923         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9924         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9925         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9926         methods of linux_nat_trad_target.
9927         (linux_trad_target): Delete.
9928         * linux-nat-trad.h (linux_trad_target): Delete function.
9929         (linux_nat_trad_target): New class.
9930         * mips-linux-nat.c (mips_linux_nat_target): New class.
9931         (super_fetch_registers, super_store_registers, super_close):
9932         Delete.
9933         (the_mips_linux_nat_target): New.
9934         (mips64_linux_regsets_fetch_registers)
9935         (mips64_linux_regsets_store_registers)
9936         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9937         (mips_linux_register_u_offset, mips_linux_read_description)
9938         (mips_linux_can_use_hw_breakpoint)
9939         (mips_linux_stopped_by_watchpoint)
9940         (mips_linux_stopped_data_address)
9941         (mips_linux_region_ok_for_hw_watchpoint)
9942         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9943         (mips_linux_close): Refactor as methods of mips_linux_nat.
9944         (_initialize_mips_linux_nat): Adjust to C++ification.
9945
9946         * aix-thread.c (aix_thread_target): New class.
9947         (aix_thread_ops): Now an aix_thread_target.
9948         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9949         (aix_thread_fetch_registers, aix_thread_store_registers)
9950         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9951         (aix_thread_thread_alive, aix_thread_pid_to_str)
9952         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9953         Refactor as methods of aix_thread_target.
9954         (init_aix_thread_ops): Delete.
9955         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9956         and complete_target_initialization.
9957         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9958         (rs6000_nat_target): New class.
9959         (the_rs6000_nat_target): New.
9960         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9961         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9962         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9963         (super_create_inferior): Delete.
9964         (_initialize_rs6000_nat): Adjust to C++ification.
9965
9966         * arm-linux-nat.c (arm_linux_nat_target): New class.
9967         (the_arm_linux_nat_target): New.
9968         (arm_linux_fetch_inferior_registers)
9969         (arm_linux_store_inferior_registers, arm_linux_read_description)
9970         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9971         (arm_linux_remove_hw_breakpoint)
9972         (arm_linux_region_ok_for_hw_watchpoint)
9973         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9974         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9975         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9976         arm_linux_nat_target.
9977         (_initialize_arm_linux_nat): Adjust to C++ification.
9978
9979         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9980         (the_aarch64_linux_nat_target): New.
9981         (aarch64_linux_fetch_inferior_registers)
9982         (aarch64_linux_store_inferior_registers)
9983         (aarch64_linux_child_post_startup_inferior)
9984         (aarch64_linux_read_description)
9985         (aarch64_linux_can_use_hw_breakpoint)
9986         (aarch64_linux_insert_hw_breakpoint)
9987         (aarch64_linux_remove_hw_breakpoint)
9988         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9989         (aarch64_linux_region_ok_for_hw_watchpoint)
9990         (aarch64_linux_stopped_data_address)
9991         (aarch64_linux_stopped_by_watchpoint)
9992         (aarch64_linux_watchpoint_addr_within_range)
9993         (aarch64_linux_can_do_single_step): Refactor as methods of
9994         aarch64_linux_nat_target.
9995         (super_post_startup_inferior): Delete.
9996         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9997
9998         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9999         (the_hppa_linux_nat_target): New.
10000         (hppa_linux_fetch_inferior_registers)
10001         (hppa_linux_store_inferior_registers): Refactor as methods of
10002         hppa_linux_nat_target.
10003         (_initialize_hppa_linux_nat): Adjust to C++ification.
10004
10005         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10006         (the_ia64_linux_nat_target): New.
10007         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10008         (ia64_linux_stopped_data_address)
10009         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10010         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10011         ia64_linux_nat_target methods.
10012         (super_xfer_partial): Delete.
10013         (_initialize_ia64_linux_nat): Adjust to C++ification.
10014
10015         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10016         (the_m32r_linux_nat_target): New.
10017         (m32r_linux_fetch_inferior_registers)
10018         (m32r_linux_store_inferior_registers): Refactor as
10019         m32r_linux_nat_target methods.
10020         (_initialize_m32r_linux_nat): Adjust to C++ification.
10021
10022         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10023         (the_m68k_linux_nat_target): New.
10024         (m68k_linux_fetch_inferior_registers)
10025         (m68k_linux_store_inferior_registers): Refactor as
10026         m68k_linux_nat_target methods.
10027         (_initialize_m68k_linux_nat): Adjust to C++ification.
10028
10029         * s390-linux-nat.c (s390_linux_nat_target): New class.
10030         (the_s390_linux_nat_target): New.
10031         (s390_linux_fetch_inferior_registers)
10032         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10033         (s390_insert_watchpoint, s390_remove_watchpoint)
10034         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10035         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10036         (s390_auxv_parse, s390_read_description): Refactor as methods of
10037         s390_linux_nat_target.
10038         (_initialize_s390_nat): Adjust to C++ification.
10039
10040         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10041         (the_sparc_linux_nat_target): New.
10042         (_initialize_sparc_linux_nat): Adjust to C++ification.
10043         * sparc-nat.c (sparc_fetch_inferior_registers)
10044         (sparc_store_inferior_registers): Remove target_ops parameter.
10045         * sparc-nat.h (sparc_fetch_inferior_registers)
10046         (sparc_store_inferior_registers): Remove target_ops parameter.
10047         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10048         (the_sparc64_linux_nat_target): New.
10049         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10050
10051         * spu-linux-nat.c (spu_linux_nat_target): New class.
10052         (the_spu_linux_nat_target): New.
10053         (spu_child_post_startup_inferior, spu_child_post_attach)
10054         (spu_child_wait, spu_fetch_inferior_registers)
10055         (spu_store_inferior_registers, spu_xfer_partial)
10056         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10057         methods.
10058         (_initialize_spu_nat): Adjust to C++ification.
10059
10060         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10061         (the_tilegx_linux_nat_target): New.
10062         (fetch_inferior_registers, store_inferior_registers):
10063         Refactor as methods.
10064         (_initialize_tile_linux_nat): Adjust to C++ification.
10065
10066         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10067         (the_xtensa_linux_nat_target): New.
10068         (xtensa_linux_fetch_inferior_registers)
10069         (xtensa_linux_store_inferior_registers): Refactor as
10070         xtensa_linux_nat_target methods.
10071         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10072
10073         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10074         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10075         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10076         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10077         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10078         (fbsd_stopped_by_sw_breakpoint)
10079         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10080         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10081         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10082         (fbsd_post_startup_inferior, fbsd_post_attach)
10083         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10084         (fbsd_set_syscall_catchpoint)
10085         (super_xfer_partial, super_resume, super_wait)
10086         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10087         (fbsd_handle_debug_trap): Remove target_ops parameter.
10088         (fbsd_nat_add_target): Delete.
10089         * fbsd-nat.h: Include "inf-ptrace.h".
10090         (fbsd_nat_add_target): Delete.
10091         (USE_SIGTRAP_SIGINFO): Define.
10092         (fbsd_nat_target): New class.
10093
10094         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10095         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10096         (amd64bsd_target): Delete.
10097         * amd64-bsd-nat.h: New file.
10098         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10099         "x86-bsd-nat.h".
10100         (amd64_fbsd_nat_target): New class.
10101         (the_amd64_fbsd_nat_target): New.
10102         (amd64fbsd_read_description): Refactor as method of
10103         amd64_fbsd_nat_target.
10104         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10105         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10106         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10107         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10108         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10109         (i386bsd_target): Delete.
10110         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10111         (i386bsd_fetch_inferior_registers)
10112         (i386bsd_store_inferior_registers): Declare.
10113         (i386_bsd_nat_target): New class.
10114         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10115         (the_i386_fbsd_nat_target): New.
10116         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10117         i386_fbsd_nat_target methods.
10118         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10119         (_initialize_i386fbsd_nat): Adjust to C++ification.
10120         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10121         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10122         (_initialize_x86_bsd_nat): Adjust to C++ification.
10123         * x86-bsd-nat.h: Include "x86-nat.h".
10124         (x86bsd_target): Delete declaration.
10125         (x86bsd_nat_target): New class.
10126
10127         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10128         (the_aarch64_fbsd_nat_target): New.
10129         (aarch64_fbsd_fetch_inferior_registers)
10130         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10131         aarch64_fbsd_nat_target.
10132         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10133         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10134         (the_alpha_bsd_nat_target): New.
10135         (alphabsd_fetch_inferior_registers)
10136         (alphabsd_store_inferior_registers): Refactor as
10137         alpha_bsd_nat_target methods.
10138         (_initialize_alphabsd_nat): Refactor as methods of
10139         alpha_bsd_nat_target.
10140         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10141         (the_amd64_nbsd_nat_target): New.
10142         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10143         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10144         (the_amd64_obsd_nat_target): New.
10145         (_initialize_amd64obsd_nat): Adjust to C++ification.
10146         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10147         (the_arm_fbsd_nat_target): New.
10148         (arm_fbsd_fetch_inferior_registers)
10149         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10150         (_initialize_arm_fbsd_nat): Refactor as methods of
10151         arm_fbsd_nat_target.
10152         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10153         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10154         (the_arm_netbsd_nat_target): New.
10155         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10156         arm_netbsd_nat_target.
10157         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10158         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10159         (the_hppa_nbsd_nat_target): New.
10160         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10161         hppa_nbsd_nat_target methods.
10162         (_initialize_hppanbsd_nat): Adjust to C++ification.
10163         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10164         (the_hppa_obsd_nat_target): New.
10165         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10166         methods of hppa_obsd_nat_target.
10167         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10168         add_target.
10169         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10170         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10171         add_target.
10172         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10173         (_initialize_i386obsd_nat): Use add_target.
10174         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10175         (the_m68k_bsd_nat_target): New.
10176         (m68kbsd_fetch_inferior_registers)
10177         (m68kbsd_store_inferior_registers): Refactor as methods of
10178         m68k_bsd_nat_target.
10179         (_initialize_m68kbsd_nat): Adjust to C++ification.
10180         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10181         (the_mips_fbsd_nat_target): New.
10182         (mips_fbsd_fetch_inferior_registers)
10183         (mips_fbsd_store_inferior_registers): Refactor as methods of
10184         mips_fbsd_nat_target.
10185         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10186         add_target.
10187         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10188         (the_mips_nbsd_nat_target): New.
10189         (mipsnbsd_fetch_inferior_registers)
10190         (mipsnbsd_store_inferior_registers): Refactor as methods of
10191         mips_nbsd_nat_target.
10192         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10193         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10194         (the_mips64_obsd_nat_target): New.
10195         (mips64obsd_fetch_inferior_registers)
10196         (mips64obsd_store_inferior_registers): Refactor as methods of
10197         mips64_obsd_nat_target.
10198         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10199         add_target.
10200         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10201         nbsd_nat_target.
10202         * nbsd-nat.h: Include "inf-ptrace.h".
10203         (nbsd_nat_target): New class.
10204         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10205         (obsd_wait): Refactor as methods of obsd_nat_target.
10206         (obsd_add_target): Delete.
10207         * obsd-nat.h: Include "inf-ptrace.h".
10208         (obsd_nat_target): New class.
10209         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10210         (the_ppc_fbsd_nat_target): New.
10211         (ppcfbsd_fetch_inferior_registers)
10212         (ppcfbsd_store_inferior_registers): Refactor as methods of
10213         ppc_fbsd_nat_target.
10214         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10215         add_target.
10216         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10217         (the_ppc_nbsd_nat_target): New.
10218         (ppcnbsd_fetch_inferior_registers)
10219         (ppcnbsd_store_inferior_registers): Refactor as methods of
10220         ppc_nbsd_nat_target.
10221         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10222         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10223         (the_ppc_obsd_nat_target): New.
10224         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10225         methods of ppc_obsd_nat_target.
10226         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10227         add_target.
10228         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10229         (the_sh_nbsd_nat_target): New.
10230         (shnbsd_fetch_inferior_registers)
10231         (shnbsd_store_inferior_registers): Refactor as methods of
10232         sh_nbsd_nat_target.
10233         (_initialize_shnbsd_nat): Adjust to C++ification.
10234         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10235         (inf_ptrace_xfer_partial): Delete.
10236         (sparc_xfer_partial, sparc_target): Delete.
10237         * sparc-nat.h (sparc_fetch_inferior_registers)
10238         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10239         (sparc_target): Delete function declaration.
10240         (sparc_target): New template class.
10241         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10242         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10243         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10244         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10245         add_target.
10246         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10247         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10248         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10249         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10250         add_target.
10251         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10252         (the_vax_bsd_nat_target): New.
10253         (vaxbsd_fetch_inferior_registers)
10254         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10255         methods.
10256         (_initialize_vaxbsd_nat): Adjust to C++ification.
10257
10258         * bsd-kvm.c (bsd_kvm_target): New class.
10259         (bsd_kvm_ops): Now a bsd_kvm_target.
10260         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10261         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10262         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10263         bsd_kvm_target.
10264         (bsd_kvm_return_one): Delete.
10265         (bsd_kvm_add_target): Adjust to C++ification.
10266
10267         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10268         (nto_procfs_target_procfs): New classes.
10269         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10270         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10271         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10272         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10273         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10274         (procfs_remove_hw_breakpoint, procfs_resume)
10275         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10276         (procfs_kill_inferior, procfs_store_registers)
10277         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10278         as methods of nto_procfs_target.
10279         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10280         (nto_native_ops): Delete.
10281         (procfs_open, procfs_native_open): Delete.
10282         (nto_native_ops): Now an nto_procfs_target_native.
10283         (init_procfs_targets): Adjust to C++ification.
10284         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10285         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10286         Refactor as methods of nto_procfs_target.
10287
10288         * go32-nat.c (go32_nat_target): New class.
10289         (the_go32_nat_target): New.
10290         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10291         (go32_store_registers, go32_xfer_partial, go32_files_info)
10292         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10293         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10294         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10295         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10296         (go32_target): Delete.
10297         (_initialize_go32_nat): Adjust to C++ification.
10298
10299         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10300         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10301         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10302         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10303         gnu_nat_target.
10304         (gnu_target): Delete.
10305         * gnu-nat.h (gnu_target): Delete.
10306         (gnu_nat_target): New class.
10307         * i386-gnu-nat.c (gnu_base_target): New.
10308         (i386_gnu_nat_target): New class.
10309         (the_i386_gnu_nat_target): New.
10310         (_initialize_i386gnu_nat): Adjust to C++ification.
10311
10312 2018-05-02  Pedro Alves  <palves@redhat.com>
10313
10314         * bfd-target.c (target_bfd_xclose): Rename to ...
10315         (target_bfd_close): ... this.
10316         (target_bfd_reopen): Adjust.
10317         * target.c (target_close): Remove references to to_xclose.
10318         * target.h (target_ops::to_xclose): Delete.
10319         (target_ops::to_close): Update comments.
10320
10321 2018-05-02  Pedro Alves  <palves@redhat.com>
10322
10323         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10324         "linux-nat.h".
10325         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10326         * inf-ptrace.c (inf_ptrace_register_u_offset)
10327         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10328         (inf_ptrace_store_register, inf_ptrace_store_registers)
10329         (inf_ptrace_trad_target): Move to ...
10330         * linux-nat-trad.c: ... this new file.
10331         * linux-nat-trad.h: New file.
10332         * linux-nat.c (linux_target_install_ops): Make extern.
10333         (linux_trad_target): Delete.
10334         * linux-nat.h (linux_trad_target): Delete declaration.
10335         (linux_target_install_ops): Declare.
10336         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10337         "linux-nat.h".
10338
10339 2018-05-02  Pedro Alves  <palves@redhat.com>
10340
10341         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10342         procfs_target/add_target here.
10343         * procfs.c (procfs_target): Make static.
10344         (_initialize_procfs): Call add_target here.
10345         * procfs.h (struct target_ops): Remove forward declaration.
10346         (procfs_target): Remove declaration.
10347         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10348
10349 2018-05-02  Pedro Alves  <palves@redhat.com>
10350
10351         * procfs.c (procfs_stopped_by_watchpoint)
10352         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10353         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10354         Forward declare.
10355         (procfs_use_watchpoints): Delete, move contents...
10356         (procfs_target): ... here.
10357         * procfs.h (procfs_use_watchpoints): Delete declaration.
10358         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10359         procfs_use_watchpoints.
10360         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10361         procfs_use_watchpoints.
10362
10363 2018-05-02  Tom Tromey  <tom@tromey.com>
10364
10365         PR python/20084:
10366         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10367         and var_zuinteger_unlimited.
10368         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10369         and PARAM_ZUINTEGER_UNLIMITED.
10370         (set_parameter_value): Handle var_zuinteger and
10371         var_zuinteger_unlimited.
10372         (add_setshow_generic): Likewise.
10373         (parmpy_init): Likewise.
10374
10375 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10376
10377         PR rust/23124
10378         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10379         pointer is not null before dereferencing it.
10380
10381 2018-04-30  Tom Tromey  <tom@tromey.com>
10382
10383         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10384         is_mi_like_p.
10385
10386 2018-04-30  Tom Tromey  <tom@tromey.com>
10387
10388         * breakpoint.c (mention): Remove use of is_mi_like_p.
10389         (print_mention_ranged_breakpoint): Likewise.
10390         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10391         of is_mi_like_p.
10392
10393 2018-04-30  Tom Tromey  <tom@tromey.com>
10394
10395         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10396
10397 2018-04-30  Tom Tromey  <tom@tromey.com>
10398
10399         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10400         (info_spu_event_command): Remove some uses of is_mi_like_p.
10401
10402 2018-04-30  Tom Tromey  <tom@tromey.com>
10403
10404         * python/py-framefilter.c (py_print_single_arg)
10405         (enumerate_locals, py_print_args, py_print_frame): Remove some
10406         uses of is_mi_like_p.
10407
10408 2018-04-30  Tom Tromey  <tom@tromey.com>
10409
10410         * ui-out.c: Update.
10411         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10412         * ui-out.h (ui_out::is_mi_like_p): Now const.
10413         (ui_out::do_is_mi_like_p): Now const.
10414         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10415
10416 2018-04-30  Tom Tromey  <tom@tromey.com>
10417
10418         * varobj.c (varobj_set_visualizer): Use new_reference.
10419         * python/python.c (gdbpy_decode_line): Use new_reference.
10420         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10421         new_reference.
10422
10423 2018-04-30  Tom Tromey  <tom@tromey.com>
10424
10425         * varobj.c (install_new_value): Use new_reference.
10426         * value.h (value_incref): Return void.  Swap intro comment with
10427         value_decref.
10428         * value.c (set_value_parent): Use new_reference.
10429         (value_incref): Return void.  Update intro comment.
10430         (release_value): Use new_reference.
10431         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10432
10433 2018-04-30  Tom Tromey  <tom@tromey.com>
10434
10435         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10436         * gdb_bfd.h (new_bfd_ref): Remove.
10437         (gdb_bfd_open): Update comment.
10438         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10439         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10440         (gdb_bfd_fdopenr): Use new_reference.
10441         * exec.c (exec_file_attach): Use new_reference.
10442
10443 2018-04-30  Tom Tromey  <tom@tromey.com>
10444
10445         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10446         method.
10447
10448 2018-04-30  Tom Tromey  <tom@tromey.com>
10449
10450         * jit.c (jit_read_code_entry): Use type_align.
10451         * i386-tdep.c (i386_gdbarch_init): Don't call
10452         set_gdbarch_long_long_align_bit.
10453         * gdbarch.sh: Remove long_long_align_bit.
10454         * gdbarch.c, gdbarch.h: Rebuild.
10455         * arc-tdep.c (arc_type_align): New function.
10456         (arc_gdbarch_init): Use arc_type_align.  Don't call
10457         set_gdbarch_long_long_align_bit.
10458
10459 2018-04-30  Tom Tromey  <tom@tromey.com>
10460
10461         * rust-lang.c (rust_type_alignment): Remove.
10462         (rust_composite_type): Use type_align.
10463
10464 2018-04-30  Tom Tromey  <tom@tromey.com>
10465
10466         * NEWS: Mention Type.align.
10467         * python/py-type.c (typy_get_alignof): New function.
10468         (type_object_getset): Add "alignof".
10469
10470 2018-04-30  Tom Tromey  <tom@tromey.com>
10471
10472         PR exp/17095:
10473         * NEWS: Update.
10474         * std-operator.def (UNOP_ALIGNOF): New operator.
10475         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10476         New.
10477         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10478         * c-lang.c (c_op_print_tab): Add alignof.
10479         * c-exp.y (ALIGNOF): New token.
10480         (exp): Add "ALIGNOF" production.
10481         (ident_tokens): Add _Alignof and alignof.
10482
10483 2018-04-30  Tom Tromey  <tom@tromey.com>
10484
10485         * i386-tdep.c (i386_type_align): New function.
10486         (i386_gdbarch_init): Update.
10487         * gdbarch.sh (type_align): New method.
10488         * gdbarch.c, gdbarch.h: Rebuild.
10489         * arch-utils.h (default_type_align): Declare.
10490         * arch-utils.c (default_type_align): New function.
10491         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10492         (struct type) <align_log2>: New field.
10493         <instance_flags>: Now a bitfield.
10494         (TYPE_RAW_ALIGN): New macro.
10495         (type_align, type_raw_align, set_type_align): Declare.
10496         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10497         functions.
10498         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10499         (get_alignment, maybe_set_alignment): New functions.
10500         (read_structure_type, read_enumeration_type, read_array_type)
10501         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10502         (read_subrange_type, read_base_type): Set type alignment.
10503
10504 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10505
10506         * dwarf2read.c (read_index_from_section): Use bool.
10507
10508 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10509
10510         PR gdb/22950
10511         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10512         with #ifdef.
10513
10514 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10515
10516         PR build/22873
10517         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10518         last step, and do it atomically.
10519
10520 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10521
10522         * compile/compile-c-types.c (convert_int, convert_float):
10523         Update for C FE v1.
10524
10525 2018-04-27  Tom Tromey  <tom@tromey.com>
10526
10527         PR rust/22545:
10528         * rust-lang.c (rust_inclusive_range_type_p): New function.
10529         (rust_range): Handle inclusive ranges.
10530         (rust_compute_range): Likewise.
10531         * rust-exp.y (struct rust_op) <inclusive>: New field.
10532         (DOTDOTEQ): New constant.
10533         (range_expr): Add "..=" productions.
10534         (operator_tokens): Add "..=" token.
10535         (ast_range): Add "inclusive" parameter.
10536         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10537         ranges.
10538         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10539         bounds values.
10540         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10541         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10542         Update comments.
10543         * expprint.c (print_subexp_standard): Handle new bounds values.
10544         (dump_subexp_body_standard): Likewise.
10545
10546 2018-04-27  Tom Tromey  <tom@tromey.com>
10547
10548         * configure: Rebuild.
10549         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10550         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10551         "OVERRIDE".
10552         (class symbol_needs_eval_context): Likewise.
10553         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10554         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10555         "virtual".
10556         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10557         "override".
10558         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10559         * aarch64-tdep.c (instruction_reader::read): Use "override".
10560         (instruction_reader_test::read): Likewise.
10561         * arm-tdep.c (instruction_reader::read): Use "override".
10562         (instruction_reader_thumb::read): Likewise.
10563
10564 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10565
10566         PR remote/9665
10567         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10568         instead of remote_send.
10569         (remote_send): Remove.
10570
10571 2018-04-26  Pedro Alves  <palves@redhat.com>
10572
10573         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10574         find_function_start_sal instead of find_pc_line.
10575
10576 2018-04-26  Pedro Alves  <palves@redhat.com>
10577
10578         * breakpoint.c (set_breakpoint_location_function): Handle
10579         mst_data_gnu_ifunc.
10580         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10581         * elfread.c (elf_symtab_read): Give data symbols with
10582         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10583         (elf_rel_plt_read): Update comment.
10584         * linespec.c (convert_linespec_to_sals): Handle
10585         mst_data_gnu_ifunc.
10586         (minsym_found): Handle mst_data_gnu_ifunc.
10587         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10588         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10589         * parse.c (find_minsym_type_and_address): Handle
10590         mst_data_gnu_ifunc.
10591         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10592         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10593         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10594         comment.
10595         <mst_data_gnu_ifunc>: New enumerator.
10596
10597 2018-04-26  Pedro Alves  <palves@redhat.com>
10598
10599         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10600         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10601         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10602         Handle it.
10603         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10604         (lookup_minimal_symbol_by_pc): Adjust.
10605         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10606         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10607         * minsyms.h (lookup_msym_prefer): New enum.
10608         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10609         parameter by a lookup_msym_prefer parameter.
10610
10611 2018-04-26  Pedro Alves  <palves@redhat.com>
10612
10613         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10614         ends in "@plt" instead of looking at the symbol's section.
10615
10616 2018-04-26  Pedro Alves  <palves@redhat.com>
10617
10618         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10619         all references.
10620         (find_pc_partial_function_gnu_ifunc): Rename to ...
10621         (find_pc_partial_function): ... this, and remove references to
10622         'is_gnu_ifunc_p'.
10623         (find_pc_partial_function): Delete old implementation.
10624         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10625
10626 2018-04-26  Pedro Alves  <palves@redhat.com>
10627
10628         * linespec.c (struct bound_minimal_symbol_search_key): New.
10629         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10630         skip first line if we found a GNU ifunc minimal symbol by name.
10631         (compare_msymbols): Change parameters to work with a destructured
10632         lhs minsym.
10633         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10634         functions.
10635
10636 2018-04-26  Pedro Alves  <palves@redhat.com>
10637
10638         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10639         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10640         address/name.
10641         (add_location_to_breakpoint): Store the minsym and the objfile in
10642         the breakpoint location.
10643         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10644         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10645         Record the minsym in the sal.
10646         * symtab.h (symtab_and_line) <msymbol>: New field.
10647
10648 2018-04-26  Pedro Alves  <palves@redhat.com>
10649
10650         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10651         unless we actually resolved the ifunc.
10652
10653 2018-04-26  Pedro Alves  <palves@redhat.com>
10654
10655         * c-exp.y (variable production): Prefer ifunc minsyms over
10656         regular function symbols.
10657         * symtab.c (find_gnu_ifunc): New function.
10658         * minsyms.h (lookup_msym_prefer): New enum.
10659         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10660         parameter by a lookup_msym_prefer parameter.
10661         * symtab.h (find_gnu_ifunc): New declaration.
10662
10663 2018-04-26  Pedro Alves  <palves@redhat.com>
10664
10665         * blockframe.c (find_gnu_ifunc_target_type): New function.
10666         (find_function_type): New.
10667         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10668         return a value with a memory address.
10669         (eval_call): For calls to GNU ifunc functions, try to find the
10670         type of the target function from the type that the resolver
10671         returns.
10672         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10673         symbols.
10674         * infcall.c (find_function_return_type): Delete.
10675         (find_function_addr): Add 'function_type' parameter.  For calls to
10676         GNU ifunc functions, try to find the type of the target function
10677         from the type that the resolver returns, and return it via
10678         FUNCTION_TYPE.
10679         (call_function_by_hand_dummy): Adjust to use the function type
10680         returned by find_function_addr.
10681         (find_function_addr): Add 'function_type' parameter and move
10682         description here.
10683         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10684         declarations.
10685
10686 2018-04-26  Pedro Alves  <palves@redhat.com>
10687
10688         * c-exp.y (variable production): Skip finding an alias for ifunc
10689         symbols.
10690
10691 2018-04-26  Pedro Alves  <palves@redhat.com>
10692
10693         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10694
10695 2018-04-25  Pedro Alves  <palves@redhat.com>
10696
10697         * infcmd.c (kill_command): Print the pid as string, not the whole
10698         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10699         message.
10700         * remote.c (remote_detach_1): Print the pid as string, not the
10701         whole thread's ptid.
10702
10703 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10704             Sergio Durigan Junior  <sergiodj@redhat.com>
10705             Pedro Alves  <palves@redhat.com>
10706
10707         * infcmd.c (kill_command): Print message when inferior has
10708         been killed.
10709         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10710         '1'.
10711         (add_inferior): Improve message printed when
10712         'print_inferior_events' is on.
10713         (exit_inferior): Remove message printed when
10714         'print_inferior_events' is on.
10715         (detach_inferior): Improve message printed when
10716         'print_inferior_events' is on.
10717         (initialize_inferiors): Use 'add_inferior_silent' to set
10718         'current_inferior_'.
10719         * inferior.h (print_inferior_events): Declare here as
10720         'extern'.
10721         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10722         '[Detaching...]' messages when 'print_inferior_events' is on.
10723         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10724         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10725         'Detaching after fork from child...', replace it by '... from
10726         parent...'.
10727         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10728         prefix/suffix when printing 'Detaching...' messages.  Print
10729         them when 'print_inferior_events' is on.
10730         * remote.c (remote_detach_1): Print message when detaching
10731         from inferior and '!is_fork_parent'.
10732
10733 2018-04-24  Tom Tromey  <tom@tromey.com>
10734
10735         * cli-out.h: Reindent.
10736
10737 2018-04-24  Tom Tromey  <tom@tromey.com>
10738
10739         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10740         (cli_ui_out::do_field_string): Use fputs_filtered.
10741         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10742
10743 2018-04-23  Tom Tromey  <tom@tromey.com>
10744
10745         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10746         gdb::unique_xmalloc_ptr.
10747
10748 2018-04-23  Tom Tromey  <tom@tromey.com>
10749
10750         * configure: Rebuild.
10751
10752 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10753
10754         PR gdb/23095
10755         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10756         prepare_for_testing.  Set normal_bp to r_debug_state if target
10757         is bsd.
10758
10759 2018-04-21  Pedro Alves  <palves@redhat.com>
10760             Rajendra SY  <rajendra.sy@gmail.com>
10761
10762         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10763         * remote.c (extended_remote_attach): In all-stop mode, mark the
10764         thread as executing.
10765
10766 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10767
10768         * thread.c (thread_apply_all_command): Fix comment.
10769         (thread_command): Fix comment.
10770
10771 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10772
10773         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10774         parameter.
10775         * features/aarch64-core.c (create_feature_aarch64_core):
10776         Regenerate.
10777         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10778         Likewise.
10779         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10780         Likewise.
10781         * features/i386/32bit-avx512.c
10782         (create_feature_i386_32bit_avx512): Likewise.
10783         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10784         Likewise.
10785         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10786         Likewise.
10787         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10788         Likewise.
10789         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10790         Likewise.
10791         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10792         Likewise.
10793         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10794         Likewise.
10795         * features/i386/64bit-avx512.c
10796         (create_feature_i386_64bit_avx512): Likewise.
10797         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10798         Likewise.
10799         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10800         Likewise.
10801         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10802         Likewise.
10803         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10804         Likewise.
10805         * features/i386/64bit-segments.c
10806         (create_feature_i386_64bit_segments): Likewise.
10807         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10808         Likewise.
10809         * features/i386/x32-core.c
10810         (create_feature_i386_x32_core): Likewise.
10811         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10812         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10813         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10814         * target-descriptions.c: In generated code, don't pass xml
10815         filename.
10816
10817 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10818
10819         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10820         (print_xml_feature::visit_post): Likewise.
10821         (print_xml_feature::visit): Likewise.
10822         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10823         (print_xml_feature): Add new class.
10824         * regformats/regdat.sh: Null xmltarget on feature targets.
10825         * target-descriptions.c (struct target_desc): Add xmltarget.
10826         (maintenance_check_tdesc_xml_convert): Add unittest function.
10827         (tdesc_get_features_xml): Add function to get xml.
10828         (maintenance_check_xml_descriptions): Test xml generation.
10829         * xml-tdesc.c (string_read_description_xml): Add function.
10830         * xml-tdesc.h (string_read_description_xml): Add declaration.
10831
10832 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10833
10834         * features/Makefile: Add feature marker to targets with new style
10835         target descriptions.
10836         * regformats/aarch64.dat: Regenerate.
10837         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10838         * regformats/i386/amd64-avx-linux.dat: Likewise.
10839         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10840         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10841         * regformats/i386/amd64-linux.dat: Likewise.
10842         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10843         * regformats/i386/amd64.dat: Likewise.
10844         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10845         * regformats/i386/i386-avx-linux.dat: Likewise.
10846         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10847         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10848         * regformats/i386/i386-linux.dat: Likewise.
10849         * regformats/i386/i386-mmx-linux.dat: Likewise.
10850         * regformats/i386/i386-mpx-linux.dat: Likewise.
10851         * regformats/i386/i386.dat: Likewise.
10852         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10853         * regformats/i386/x32-avx-linux.dat: Likewise.
10854         * regformats/i386/x32-linux.dat: Likewise.
10855         * regformats/tic6x-c62x-linux.dat: Likewise.
10856         * regformats/tic6x-c64x-linux.dat: Likewise.
10857         * regformats/tic6x-c64xp-linux.dat: Likewise.
10858         * regformats/regdat.sh: Parse feature marker.
10859
10860 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10861
10862         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10863         (tdesc_osabi_name): Likewise.
10864         * target-descriptions.c (tdesc_architecture_name): Add new
10865         function.
10866         (tdesc_osabi_name): Likewise.
10867
10868 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10869
10870         * common/tdesc.c (tdesc_predefined_type): Move to here.
10871         (tdesc_named_type): Likewise.
10872         (tdesc_create_vector): Likewise.
10873         (tdesc_create_struct): Likewise.
10874         (tdesc_set_struct_size): Likewise.
10875         (tdesc_create_union): Likewise.
10876         (tdesc_create_flags): Likewise.
10877         (tdesc_create_enum): Likewise.
10878         (tdesc_add_field): Likewise.
10879         (tdesc_add_typed_bitfield): Likewise.
10880         (tdesc_add_bitfield): Likewise.
10881         (tdesc_add_flag): Likewise.
10882         (tdesc_add_enum_value): Likewise.
10883         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10884         (struct tdesc_type_vector): Likewise.
10885         (struct tdesc_type_field): Likewise.
10886         (struct tdesc_type_with_fields): Likewise.
10887         (tdesc_create_enum): Add declaration.
10888         (tdesc_add_typed_bitfield): Likewise.
10889         (tdesc_add_enum_value): Likewise.
10890         * target-descriptions.c (tdesc_type_field): Move from here.
10891         (tdesc_type_builtin): Likewise.
10892         (tdesc_type_vector): Likewise.
10893         (tdesc_type_with_fields): Likewise.
10894         (tdesc_predefined_types): Likewise.
10895         (tdesc_named_type): Likewise.
10896         (tdesc_create_vector): Likewise.
10897         (tdesc_create_struct): Likewise.
10898         (tdesc_set_struct_size): Likewise.
10899         (tdesc_create_union): Likewise.
10900         (tdesc_create_flags): Likewise.
10901         (tdesc_create_enum): Likewise.
10902         (tdesc_add_field): Likewise.
10903         (tdesc_add_typed_bitfield): Likewise.
10904         (tdesc_add_bitfield): Likewise.
10905         (tdesc_add_flag): Likewise.
10906         (tdesc_add_enum_value): Likewise.
10907         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10908         (tdesc_add_typed_bitfield): Likewise.
10909         (tdesc_add_enum_value): Likewise.
10910
10911 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10912
10913         * common/tdesc.c (tdesc_feature::accept): Move to here.
10914         (tdesc_feature::operator==): Likewise.
10915         (tdesc_create_reg): Likewise.
10916         * common/tdesc.h (tdesc_type_kind): Likewise.
10917         (struct tdesc_type): Likewise.
10918         (struct tdesc_feature): Likewise.
10919         * regformats/regdat.sh: Create a feature.
10920         * target-descriptions.c (tdesc_type_kind): Move from here.
10921         (tdesc_type): Likewise.
10922         (tdesc_type_up): Likewise.
10923         (tdesc_feature): Likewise.
10924         (tdesc_create_reg): Likewise.
10925
10926 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10927
10928         * Makefile.in: Add arch/tdesc.c
10929         * common/tdesc.c: New file.
10930         * common/tdesc.h (tdesc_element_visitor): Move to here.
10931         (tdesc_element): Likewise.
10932         (tdesc_reg): Likewise.
10933         (tdesc_reg_up): Likewise.
10934         * regformats/regdef.h (reg): Add offset to constructors.
10935         * target-descriptions.c (tdesc_element_visitor): Move from here.
10936         (tdesc_element): Likewise.
10937         (tdesc_reg): Likewise.
10938         (tdesc_reg_up): Likewise.
10939
10940 2018-04-17  Tom Tromey  <tom@tromey.com>
10941
10942         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10943         discriminant field.
10944
10945 2018-04-17  Tom Tromey  <tom@tromey.com>
10946
10947         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10948
10949 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10950
10951         * symtab.c (print_symbol_info): Skip printing filename and line
10952         number when `last' is NULL.
10953         (symtab_symbol_info): Use empty string instead of NULL for first
10954         invocation of print_symbol_info.
10955         (rbreak_command): Pass NULL to `last' parameter of
10956         print_symbol_info.
10957
10958 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10959
10960         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10961         instead of nullptr.
10962
10963 2018-04-16  Pedro Alves  <palves@redhat.com>
10964
10965         * MAINTAINERS (sh): Remove.
10966         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10967         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10968         (ALLDEPFILES): Remove sh64-tdep.c.
10969         * NEWS: Mentions that support for SH-5/SH64 is removed.
10970         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10971         (sh*-*-openbsd*): Ditto.
10972         (sh64-*-elf*): Remove.
10973         (sh*): Remove.
10974         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10975         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10976         * sh-tdep.c: No longer include "sh64-tdep.h".
10977         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10978         * sh64-tdep.c, sh64-tdep.h: Remove files.
10979
10980 2018-04-16  Pedro Alves  <palves@redhat.com>
10981
10982         * MAINTAINERS: Remove m88k.
10983         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10984         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10985         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10986         * NEWS: Mention that support for m88k was removed.
10987         * configure.host (m88*-*-*): Remove support.
10988         * configure.nat (m88k-*-*): Remove support.
10989         * configure.tgt (m88*-*-openbsd*): Remove.
10990         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10991
10992 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10993
10994         * configure.tgt (x86_tobjs): New variable.
10995         (amd64_tobjs, i386_tobjs): Use it.
10996
10997 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10998
10999         * symtab.c (print_symbol_info): Precede the symbol definition by
11000         the line number when available.
11001         * NEWS: Advertise this enhancement.
11002
11003 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11004
11005         * NEWS (New options): announce set/show record btrace cpu.
11006         * btrace.c: Include record-btrace.h.
11007         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11008         the vendor is unknown.
11009         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11010         Maybe overwrite the btrace configuration's cpu.
11011         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11012         (btrace_fetch): Add cpu parameter.  Update callers.
11013         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11014         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11015         errata workarounds if the vendor is unknown.
11016         * python/py-record-btrace.c: Include record-btrace.h.
11017         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11018         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11019         * record-btrace.c (record_btrace_cpu_state_kind): New.
11020         (record_btrace_cpu): New.
11021         (set_record_btrace_cpu_cmdlist): New.
11022         (record_btrace_get_cpu): New.
11023         (require_btrace_thread, record_btrace_info)
11024         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11025         (cmd_set_record_btrace_cpu_none): New.
11026         (cmd_set_record_btrace_cpu_auto): New.
11027         (cmd_set_record_btrace_cpu): New.
11028         (cmd_show_record_btrace_cpu): New.
11029         (_initialize_record_btrace): Initialize set/show record btrace cpu
11030         commands.
11031         * record-btrace.h (record_btrace_get_cpu): New.
11032
11033 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11034
11035         * record.c (set_record_command): Fix typo in message.
11036
11037 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11038
11039         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11040
11041 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11042
11043         * infrun.c (process_event_stop_test): Call
11044         gdbarch_in_indirect_branch_thunk.
11045         * gdbarch.sh (in_indirect_branch_thunk): New.
11046         * gdbarch.c: Regenerated.
11047         * gdbarch.h: Regenerated.
11048         * x86-tdep.h: New.
11049         * x86-tdep.c: New.
11050         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11051         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11052         (ALLDEPFILES): Add x86-tdep.c.
11053         * arch-utils.h (default_in_indirect_branch_thunk): New.
11054         * arch-utils.c (default_in_indirect_branch_thunk): New.
11055         * i386-tdep: Include x86-tdep.h.
11056         (i386_in_indirect_branch_thunk): New.
11057         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11058         function.
11059         * amd64-tdep: Include x86-tdep.h.
11060         (amd64_in_indirect_branch_thunk): New.
11061         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11062
11063 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11064
11065         PR gdb/23053
11066         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11067         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11068         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11069         regression.
11070
11071 2018-04-12  Tom Tromey  <tom@tromey.com>
11072
11073         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11074         (rust_evaluate_subexp): Likewise.
11075
11076 2018-04-12  Pedro Alves  <palves@redhat.com>
11077
11078         * procfs.c (procfs_detach): Make forward declaration's prototype
11079         match definition's protototype.
11080         (proc_get_LDT_entry): Remove stale do_cleanups call.
11081
11082 2018-04-12  Pedro Alves  <palves@redhat.com>
11083
11084         * target.h (target_ops::to_has_exited): Delete.
11085         (target_has_exited): Delete.
11086         * target-delegates.c: Regenerate.
11087
11088 2018-04-11  Pedro Alves  <palves@redhat.com>
11089
11090         * target.c (fileio_fh_t::t): Add comment.
11091         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11092         (target_fileio_close): Handle a NULL target.
11093         (invalidate_fileio_fh): New.
11094         (target_close): Call it.
11095         * remote.c (remote_hostio_send_command): No longer check whether
11096         remote_desc is open.
11097
11098 2018-04-11  Pedro Alves  <palves@redhat.com>
11099
11100         * target.c (fileio_fh_t): Make it a named struct instead of a
11101         typedef.
11102         (fileio_fh_t::is_closed): New method.
11103         (DEF_VEC_O (fileio_fh_t)): Remove.
11104         (fileio_fhandles): Now a std::vector.
11105         (is_closed_fileio_fh): Delete.
11106         (acquire_fileio_fd): Adjust.  Rename parameters.
11107         (release_fileio_fd): Adjust.
11108         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11109         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11110         (target_fileio_close): Adjust.
11111
11112 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11113
11114         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11115         index.
11116
11117 2018-04-10  Pedro Alves  <palves@redhat.com>
11118
11119         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11120         (scoped_finish_thread_state): New class.
11121         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11122         cleanup.
11123         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11124         (fetch_inferior_event, normal_stop): Likewise.
11125         * thread.c (finish_thread_state_cleanup): Delete.
11126
11127 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11128             Pedro Alves  <palves@redhat.com>
11129
11130         * value.c: Include "selftest.h" and "common/array-view.h".
11131         (struct range) <operator ==>: New.
11132         (test_ranges_contain): New.
11133         (check_ranges_vector): New.
11134         (test_insert_into_bit_range_vector): New.
11135         (_initialize_values): Register selftests.
11136         * common/array-view.h (operator==, operator!=): New.
11137
11138 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11139
11140         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11141         an iterator.
11142         * inline-frame.c: Include <algorithm>.
11143         (struct inline_state): Add constructor.
11144         (inline_state_s): Remove.
11145         (DEF_VEC_O(inline_state_s)): Remove.
11146         (inline_states): Change type to std::vector.
11147         (find_inline_frame_state): Adjust to std::vector.
11148         (allocate_inline_frame_state): Remove.
11149         (clear_inline_frame_state): Adjust to std::vector.
11150         (skip_inline_frames): Adjust to std::vector.
11151
11152 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11153
11154         * tracepoint.h (struct trace_state_variable): Add constructor.
11155         <name>: Change type to std::string.
11156         * tracepoint.c (tsv_s): Remove.
11157         (DEF_VEC_O(tsv_s)): Remove.
11158         (tvariables): Change to std::vector.
11159         (create_trace_state_variable): Adjust to std::vector.
11160         (find_trace_state_variable): Likewise.
11161         (find_trace_state_variable_by_number): Likewise.
11162         (delete_trace_state_variable): Likewise.
11163         (trace_variable_command): Adjust to std::string.
11164         (delete_trace_variable_command): Likewise.
11165         (tvariables_info_1): Adjust to std::vector.
11166         (save_trace_state_variables): Likewise.
11167         (start_tracing): Likewise.
11168         (merge_uploaded_trace_state_variables): Adjust to std::vector
11169         and std::string.
11170         * target.h (struct target_ops)
11171         <to_download_trace_state_variable>: Pass reference to
11172         trace_state_variable.
11173         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11174         * target-delegates.c: Re-generate.
11175         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11176         (mi_tsv_deleted): Likewise.
11177         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11178         * remote.c (remote_download_trace_state_variable): Change
11179         pointer to reference and adjust.
11180         * make-target-delegates (parse_argtypes): Handle references.
11181         (write_function_header): Likewise.
11182         (munge_type): Likewise.
11183
11184 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11185
11186         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11187         string_view-selftests.c.
11188         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11189         testsuite.
11190         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11191         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11192         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11193         * unittests/basic_string_view/element_access/char/1.cc:
11194         Likewise.
11195         * unittests/basic_string_view/element_access/char/empty.cc:
11196         Likewise.
11197         * unittests/basic_string_view/element_access/char/front_back.cc:
11198         Likewise.
11199         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11200         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11201         Likewise.
11202         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11203         Likewise.
11204         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11205         Likewise.
11206         * unittests/basic_string_view/operations/compare/char/1.cc:
11207         Likewise.
11208         * unittests/basic_string_view/operations/compare/char/13650.cc:
11209         Likewise.
11210         * unittests/basic_string_view/operations/copy/char/1.cc:
11211         Likewise.
11212         * unittests/basic_string_view/operations/data/char/1.cc:
11213         Likewise.
11214         * unittests/basic_string_view/operations/find/char/1.cc:
11215         Likewise.
11216         * unittests/basic_string_view/operations/find/char/2.cc:
11217         Likewise.
11218         * unittests/basic_string_view/operations/find/char/3.cc:
11219         Likewise.
11220         * unittests/basic_string_view/operations/find/char/4.cc:
11221         Likewise.
11222         * unittests/basic_string_view/operations/rfind/char/1.cc:
11223         Likewise.
11224         * unittests/basic_string_view/operations/rfind/char/2.cc:
11225         Likewise.
11226         * unittests/basic_string_view/operations/rfind/char/3.cc:
11227         Likewise.
11228         * unittests/basic_string_view/operations/substr/char/1.cc:
11229         Likewise.
11230         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11231         * unittests/string_view-selftests.c: New file.
11232
11233 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11234
11235         * unittests/basic_string_view/capacity/1.cc: New file.
11236         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11237         * unittests/basic_string_view/cons/char/1.cc: New file.
11238         * unittests/basic_string_view/cons/char/2.cc: New file.
11239         * unittests/basic_string_view/cons/char/3.cc: New file.
11240         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11241         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11242         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11243         * unittests/basic_string_view/element_access/char/1.cc: New file.
11244         * unittests/basic_string_view/element_access/char/2.cc: New file.
11245         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11246         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11247         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11248         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11249         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11250         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11251         * unittests/basic_string_view/include.cc: New file.
11252         * unittests/basic_string_view/inserters/char/1.cc: New file.
11253         * unittests/basic_string_view/inserters/char/2.cc: New file.
11254         * unittests/basic_string_view/inserters/char/3.cc: New file.
11255         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11256         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11257         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11258         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11259         * unittests/basic_string_view/literals/types.cc: New file.
11260         * unittests/basic_string_view/literals/values.cc: New file.
11261         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11262         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11263         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11264         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11265         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11266         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11267         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11268         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11269         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11270         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11271         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11272         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11273         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11274         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11275         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11276         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11277         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11278         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11279         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11280         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11281         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11282         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11283         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11284         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11285         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11286         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11287         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11288         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11289         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11290         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11291         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11292         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11293         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11294         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11295         * unittests/basic_string_view/operators/char/2.cc: New file.
11296         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11297         * unittests/basic_string_view/range_access/char/1.cc: New file.
11298         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11299         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11300         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11301         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11302         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11303         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11304         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11305         * unittests/basic_string_view/typedefs.cc: New file.
11306         * unittests/basic_string_view/types/1.cc: New file.
11307
11308 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11309
11310         * common/gdb_string_view.h: Remove libstdc++ implementation
11311         details, adjust to gdb reality.
11312         * common/gdb_string_view.tcc: Likewise.
11313         * cli/cli-script.c (struct string_view): Remove.
11314         (user_args) <m_args>: Change element type to gdb::string_view.
11315         (user_args::insert_args): Adjust.
11316
11317 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11318
11319         * common/gdb_string_view.h: New file.
11320         * common/gdb_string_view.tcc: New file.
11321
11322 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11323
11324         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11325         * configure: Re-generate.
11326
11327 2018-04-09  Pedro Alves  <palves@redhat.com>
11328
11329         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11330         (set_target_gdbarch): Call
11331         gdb::observers::architecture_changed.notify instead of
11332         observer_notify_architecture_changed.
11333
11334 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11335
11336         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11337         (do_restore_current_traceframe_cleanup): Remove.
11338         (restore_current_traceframe_cleanup_dtor): Remove.
11339         (make_cleanup_restore_current_traceframe): Remove.
11340         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11341         New.
11342         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11343         * infrun.c (fetch_inferior_event): Use
11344         scoped_restore_current_traceframe.
11345
11346 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11347
11348         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11349         Remove.
11350         <n_allocated_type_units>: Remove.
11351         <all_type_units>: Change to std::vector.
11352         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11353         to std::vector change.
11354         (dwarf2_per_objfile::get_cutu): Likewise.
11355         (dwarf2_per_objfile::get_tu): Likewise.
11356         (create_signatured_type_table_from_index): Likewise.
11357         (create_signatured_type_table_from_debug_names): Likewise.
11358         (dw2_symtab_iter_next): Likewise.
11359         (dw2_print_stats): Likewise.
11360         (dw2_expand_all_symtabs): Likewise.
11361         (dw2_expand_marked_cus): Likewise.
11362         (dw2_debug_names_iterator::next): Likewise.
11363         (dwarf2_initialize_objfile): Likewise.
11364         (add_signatured_type_cu_to_table): Likewise.
11365         (create_all_type_units): Likewise.
11366         (add_type_unit): Likewise.
11367         (struct tu_abbrev_offset): Add constructor.
11368         (build_type_psymtabs_1): Adjust to std::vector change.
11369         (print_tu_stats): Likewise.
11370         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11371         (write_debug_names): Likewise.
11372
11373 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11374
11375         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11376         Make an std::vector.
11377         <n_comp_units>: Remove.
11378         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11379         to std::vector change.
11380         (dwarf2_per_objfile::get_cutu): Likewise.
11381         (dwarf2_per_objfile::get_cu): Likewise.
11382         (create_cus_from_index): Likewise.
11383         (create_addrmap_from_index): Likewise.
11384         (create_addrmap_from_aranges): Likewise.
11385         (dwarf2_read_index): Likewise.
11386         (dw2_find_last_source_symtab): Likewise.
11387         (dw2_map_symtabs_matching_filename): Likewise.
11388         (dw2_symtab_iter_next): Likewise.
11389         (dw2_print_stats): Likewise.
11390         (dw2_expand_all_symtabs): Likewise.
11391         (dw2_expand_symtabs_with_fullname): Likewise.
11392         (dw2_expand_marked_cus): Likewise.
11393         (dw2_map_symbol_filenames): Likewise.
11394         (create_cus_from_debug_names): Likewise.
11395         (dwarf2_read_debug_names): Likewise.
11396         (dw2_debug_names_iterator::next): Likewise.
11397         (dwarf2_initialize_objfile): Likewise.
11398         (set_partial_user): Likewise.
11399         (dwarf2_build_psymtabs_hard): Likewise.
11400         (read_comp_units_from_section): Remove arguments, adjust to
11401         std::vector change.
11402         (create_all_comp_units): Adjust to std::vector and
11403         read_comp_units_from_section changes.
11404         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11405         change.
11406         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11407         (psyms_seen_size): Likewise.
11408         (write_gdbindex): Likewise.
11409         (write_debug_names): Likewise.
11410
11411 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11412
11413         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11414         with dwarf2_per_objfile.
11415         (create_cus_from_index): Likewise.
11416         (create_signatured_type_table_from_index): Likewise.
11417         (dwarf2_read_index): Likewise.
11418         (dwarf2_initialize_objfile): Likewise.
11419         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11420         per_cu rather than get_dwarf2_per_objfile.
11421
11422 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11423
11424         * dwarf2read.h (struct signatured_type): Forward declare.
11425         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11426         New methods.
11427         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11428         (dw2_get_cutu): ...this.
11429         (dwarf2_per_objfile::get_cu): Rename from...
11430         (dw2_get_cu): ...this.
11431         (dwarf2_per_objfile::get_tu): New.
11432         (create_addrmap_from_index): Adjust.
11433         (create_addrmap_from_aranges): Adjust.
11434         (dw2_find_last_source_symtab): Adjust.
11435         (dw2_map_symtabs_matching_filename): Adjust.
11436         (dw2_symtab_iter_next): Adjust.
11437         (dw2_print_stats): Adjust.
11438         (dw2_expand_all_symtabs): Adjust.
11439         (dw2_expand_symtabs_with_fullname): Adjust.
11440         (dw2_expand_marked_cus): Adjust.
11441         (dw_expand_symtabs_matching_file_matcher): Adjust.
11442         (dw2_map_symbol_filenames): Adjust.
11443         (dw2_debug_names_iterator::next): Adjust.
11444         (dwarf2_initialize_objfile): Adjust.
11445         (set_partial_user): Adjust.
11446         (dwarf2_build_psymtabs_hard): Adjust.
11447
11448 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11449
11450         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11451         Remove unused variables.
11452         (dw2_map_symtabs_matching_filename): Likewise.
11453         (dwarf2_record_block_ranges): Likewise.
11454         (dwarf2_read_addr_index): Likewise.
11455         (follow_die_offset): Likewise.
11456
11457 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11458
11459         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11460         to symbol_file_add_main.
11461
11462 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11463
11464         PR mi/22299
11465         * mi/mi-console.c (do_fputc_async_safe): New.
11466         (mi_console_file::write_async_safe): New.
11467         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11468         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11469         New.
11470         * ui-file.c (ui_file::putstrn): Adjust call to
11471         fputstrn_unfiltered.
11472         * utils.c (printchar): Replace do_fputs and do_fprintf
11473         parameters by do_fputc.
11474         (fputstr_filtered): Adjust call to printchar.
11475         (fputstr_unfiltered): Likewise.
11476         (fputstrn_filtered): Likewise.
11477         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11478         printchar.
11479         * utils.h (do_fputc_ftype): New typedef.
11480         (fputstrn_unfiltered): Add do_fputc parameter.
11481
11482 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11483
11484         * regformats/i386/i386-avx.dat: Remove.
11485
11486 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11487
11488         PR gdb/22979
11489         * amd64-tdep.c (amd64_none_init_abi): New function.
11490         (amd64_x32_none_init_abi): New function.
11491         (_initialize_amd64_tdep): Register handlers for x86-64 and
11492         x64_32 with GDB_OSABI_NONE.
11493         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11494         GDB_OSABI_NONE osabi.
11495
11496 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11497
11498         PR gdb/22980
11499         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11500         GDB_OSABI_NONE.
11501         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11502         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11503
11504 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11505
11506         * common/byte-vector.h (char_vector): New type.
11507         * target.h (target_read_alloc): Return
11508         gdb::optional<byte_vector>.
11509         (target_read_stralloc): Return gdb::optional<char_vector>.
11510         (target_get_osdata): Return gdb::optional<char_vector>.
11511         * target.c (target_read_alloc_1): Templatize.  Replacement
11512         manual memory management with vector.
11513         (target_read_alloc): Change return type, adjust.
11514         (target_read_stralloc): Change return type, adjust.
11515         (target_get_osdata): Change return type, adjust.
11516         * auxv.c (struct auxv_info) <length>: Remove.
11517         <data>: Change type to gdb::optional<byte_vector>.
11518         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11519         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11520         (target_auxv_search): Adjust.
11521         (fprint_target_auxv): Adjust.
11522         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11523         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11524         (linux_make_corefile_notes): Adjust.
11525         * osdata.c (get_osdata): Adjust.
11526         * remote.c (remote_get_threads_with_qxfer): Adjust.
11527         (remote_memory_map): Adjust.
11528         (remote_traceframe_info): Adjust.
11529         (btrace_read_config): Adjust.
11530         (remote_read_btrace): Adjust.
11531         (remote_pid_to_exec_file): Adjust.
11532         * solib-aix.c (solib_aix_get_library_list): Adjust.
11533         * solib-dsbt.c (decode_loadmap): Don't free buf.
11534         (dsbt_get_initial_loadmaps): Adjust.
11535         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11536         * solib-target.c (solib_target_current_sos): Adjust.
11537         * tracepoint.c (sdata_make_value): Adjust.
11538         * xml-support.c (xinclude_start_include): Adjust.
11539         (xml_fetch_content_from_file): Adjust.
11540         * xml-support.h (xml_fetch_another): Change return type.
11541         (xml_fetch_content_from_file): Change return type.
11542         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11543         * xml-tdesc.c (file_read_description_xml): Adjust.
11544         (fetch_available_features_from_target): Change return type.
11545         (target_fetch_description_xml): Adjust.
11546         (target_read_description_xml): Adjust.
11547
11548 2018-04-06  Tom Tromey  <tom@tromey.com>
11549
11550         * value.c (~value): Update.
11551         (struct value) <contents>: Now unique_xmalloc_ptr.
11552         (value_contents_bits_eq, allocate_value_contents)
11553         (value_contents_raw, value_contents_all_raw)
11554         (value_contents_for_printing, value_contents_for_printing_const)
11555         (set_value_enclosing_type): Update.
11556
11557 2018-04-06  Tom Tromey  <tom@tromey.com>
11558
11559         * value.c (range_s): Remove typedef, VEC.
11560         (struct range): Add operator<.
11561         (range_lessthan): Remove.
11562         (ranges_contain): Change type.
11563         (~value): Update.
11564         (struct value) <unavailable, optimized_out>: Now std::vector.
11565         (value_entirely_available)
11566         (value_entirely_covered_by_range_vector)
11567         (value_entirely_unavailable, value_entirely_optimized_out):
11568         Update.
11569         (insert_into_bit_range_vector): Change argument type.
11570         (find_first_range_overlap): Likewise.
11571         (struct ranges_and_idx, value_contents_bits_eq)
11572         (require_not_optimized_out, require_available): Update.
11573         (ranges_copy_adjusted): Change argument types.
11574         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11575
11576 2018-04-06  Tom Tromey  <tom@tromey.com>
11577
11578         * value.c (~value): Update.
11579         (struct value) <parent>: Now a value_ref_ptr.
11580         (value_parent, set_value_parent, value_address, value_copy):
11581         Update.
11582
11583 2018-04-06  Tom Tromey  <tom@tromey.com>
11584
11585         * value.c (struct value): Add constructor, destructor, and member
11586         initializers.
11587         (allocate_value_lazy, value_decref): Update.
11588
11589 2018-04-06  Tom Tromey  <tom@tromey.com>
11590
11591         * value.c (struct value) <released, next>: Remove.
11592         (all_values): Now a std::vector.
11593         (allocate_value_lazy): Update.
11594         (value_next): Remove.
11595         (value_mark, value_free_to_mark, release_value)
11596         (value_release_to_mark): Update.
11597
11598 2018-04-06  Tom Tromey  <tom@tromey.com>
11599
11600         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11601         (free_value_chain): Remove.
11602         * value.c (free_value_chain): Remove.
11603         (value_release_to_mark): Return a std::vector.
11604         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11605         std::vector.
11606         (check_condition): Update.
11607         * eval.c (fetch_subexp_value): Change "val_chain" to a
11608         std::vector.
11609         * breakpoint.c (update_watchpoint): Update.
11610         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11611
11612 2018-04-06  Tom Tromey  <tom@tromey.com>
11613
11614         * value.h (free_all_values): Remove.
11615         * value.c (free_all_values): Remove.
11616
11617 2018-04-06  Tom Tromey  <tom@tromey.com>
11618
11619         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11620         (value_history_chain, value_history_count): Remove.
11621         (value_history): New global.
11622         (record_latest_value, access_value_history, show_values)
11623         (preserve_values): Update.
11624
11625 2018-04-06  Tom Tromey  <tom@tromey.com>
11626
11627         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11628         * varobj.c (varobj_set_display_format, varobj_set_value)
11629         (install_default_visualizer, construct_visualizer)
11630         (install_new_value, ~varobj, varobj_get_value_type)
11631         (my_value_of_variable, varobj_editable_p): Update.
11632         * c-varobj.c (c_describe_child, c_value_of_variable)
11633         (cplus_number_of_children, cplus_describe_child): Update.
11634         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11635         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11636         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11637
11638 2018-04-06  Tom Tromey  <tom@tromey.com>
11639
11640         * printcmd.c (last_examine_address): Change type to
11641         value_ref_ptr.
11642         (do_examine, x_command): Update.
11643
11644 2018-04-06  Tom Tromey  <tom@tromey.com>
11645
11646         * value.c (release_value): Update.
11647         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11648         (struct bpstats) <val>: Now a value_ref_ptr.
11649         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11650         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11651         (~watchpoint, print_it_watchpoint, watch_command_1)
11652         (invalidate_bp_value_on_memory_change): Update.
11653
11654 2018-04-06  Tom Tromey  <tom@tromey.com>
11655
11656         * varobj.c (varobj_clear_saved_item)
11657         (update_dynamic_varobj_children, install_new_value, ~varobj):
11658         Update.
11659         * value.h (value_incref): Move declaration earlier.
11660         (value_decref): Rename from value_free.
11661         (struct value_ref_policy): New.
11662         (value_ref_ptr): New typedef.
11663         (struct value_deleter): Remove.
11664         (gdb_value_up): Remove typedef.
11665         (release_value): Change return type.
11666         (release_value_or_incref): Remove.
11667         * value.c (set_value_parent): Update.
11668         (value_incref): Change return type.
11669         (value_decref): Rename from value_free.
11670         (value_free_to_mark, free_all_values, free_value_chain): Update.
11671         (release_value): Return value_ref_ptr.
11672         (release_value_or_incref): Remove.
11673         (record_latest_value, set_internalvar, clear_internalvar):
11674         Update.
11675         * stack.c (info_frame_command): Don't call value_free.
11676         * python/py-value.c (valpy_dealloc, valpy_new)
11677         (value_to_value_object): Update.
11678         * printcmd.c (do_examine): Update.
11679         * opencl-lang.c (lval_func_free_closure): Update.
11680         * mi/mi-main.c (register_changed_p): Don't call value_free.
11681         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11682         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11683         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11684         value_free.
11685         * guile/scm-value.c (vlscm_free_value_smob)
11686         (vlscm_scm_from_value): Update.
11687         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11688         (frame_unwind_register_unsigned, get_frame_register_bytes)
11689         (put_frame_register_bytes): Don't call value_free.
11690         * findvar.c (address_from_register): Don't call value_free.
11691         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11692         * dwarf2loc.c (entry_data_value_free_closure)
11693         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11694         (dwarf2_evaluate_loc_desc_full): Update.
11695         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11696         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11697         (~watchpoint, watch_command_1)
11698         (invalidate_bp_value_on_memory_change): Update.
11699         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11700
11701 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11702
11703         PR gdb/23022
11704         * warning.m4: Add -Wno-error=deprecated-register.
11705         * configure: Re-generate.
11706
11707 2018-04-05  Tom Tromey  <tom@tromey.com>
11708
11709         * linespec.h: Remove include of "vec.h".
11710
11711 2018-04-05  Tom Tromey  <tom@tromey.com>
11712
11713         * linespec.c (typep): Remove typedef.
11714         (find_methods, find_superclass_methods): Take a std::vector.
11715         (find_method): Use std::vector.
11716
11717 2018-04-05  Tom Tromey  <tom@tromey.com>
11718
11719         * utils.c (compare_strings): Remove.
11720         * utils.h (compare_strings): Remove.
11721         * objc-lang.h (find_imps): Update.
11722         * objc-lang.c (find_methods): Take a std::vector.
11723         (uniquify_strings, find_imps): Likewise.
11724         * linespec.c (find_methods): Take a std::vector.
11725         (decode_objc): Use std::vector.
11726         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11727         a std::vector.
11728         (find_method, find_function_symbols): Use std::vector.
11729
11730 2018-04-05  Tom Tromey  <tom@tromey.com>
11731
11732         * completer.c (completion_tracker::completion_tracker): Remove
11733         cast.
11734         (completion_tracker::discard_completions): Likewise.
11735         * breakpoint.c (ambiguous_names_p): Remove cast.
11736         * ada-lang.c (_initialize_ada_language): Remove cast.
11737         * utils.h (streq): Update.
11738         (streq_hash): Add new declaration.
11739         * utils.c (streq): Return bool.
11740         (streq_hash): New function.
11741
11742 2018-04-05  Tom Tromey  <tom@tromey.com>
11743
11744         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11745         Remove a string copy.
11746
11747 2018-04-05  Tom Tromey  <tom@tromey.com>
11748
11749         * linespec.c (filter_results): Use std::vector.
11750         (decode_line_2, decode_line_full): Update.
11751
11752 2018-04-05  Tom Tromey  <tom@tromey.com>
11753
11754         * linespec.c (canonical_to_fullform): Return std::string.
11755         (filter_results): Update.
11756         (struct decode_line_2_item): Add constructor.
11757         <fullform, displayform>: Now std::string.
11758         (decode_line_2_compare_items): Now a std::sort comparator.
11759         (decode_line_2): Update.
11760
11761 2018-04-05  Tom Tromey  <tom@tromey.com>
11762
11763         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11764         (unexpected_linespec_error): Update.
11765         (linespec_parse_basic, parse_linespec): Update.
11766
11767 2018-04-05  Tom Tromey  <tom@tromey.com>
11768
11769         * linespec.c (linespec_parse_basic): Reindent.
11770
11771 2018-04-05  Tom Tromey  <tom@tromey.com>
11772
11773         * minsyms.h (iterate_over_minimal_symbols): Update.
11774         * minsyms.c (iterate_over_minimal_symbols): Take a
11775         gdb::function_view.
11776         * linespec.c (struct collect_minsyms): Remove.
11777         (compare_msyms): Now a std::sort comparator.
11778         (add_minsym): Add parameters.
11779         (search_minsyms_for_name): Update.  Use std::vector.
11780
11781 2018-04-03  Tom Tromey  <tom@tromey.com>
11782
11783         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11784         gdb::byte_vector.
11785
11786 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11787
11788         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11789
11790 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11791
11792         PR gdb/16959
11793         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11794         printing static type.
11795
11796 2018-04-01  Tom Tromey  <tom@tromey.com>
11797
11798         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11799         (rs6000_xfer_shared_libraries): Update.
11800
11801 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11802
11803         * common/gdb_vecs.h (char_ptr): Remove.
11804         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11805
11806 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11807
11808         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11809         with std::vector.
11810         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11811
11812 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11813
11814         * tracepoint.h (struct uploaded_tp): Initialize fields.
11815         <actions, step_actions, cmd_strings>: Change type to
11816         std::vector<char *>.
11817         * tracepoint.c (get_uploaded_tp): Allocate with new.
11818         (free_uploaded_tps): Free with delete.
11819         (parse_tracepoint_definition): Adjust to std::vector change.
11820         * breakpoint.c (read_uploaded_action): Likewise.
11821         (create_tracepoint_from_upload): Likewise.
11822         * ctf.c (ctf_write_uploaded_tp): Likewise.
11823         (SET_ARRAY_FIELD): Likewise.
11824         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11825
11826 2018-03-30  Tom Tromey  <tom@tromey.com>
11827
11828         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11829         std::unique_ptr.
11830         (svr4_keep_data_in_core): Update.
11831         (svr4_read_so_list): Update.
11832
11833 2018-03-30  Tom Tromey  <tom@tromey.com>
11834
11835         * windows-nat.c (handle_output_debug_string, handle_exception):
11836         Update.
11837         * target.h (target_read_string): Update.
11838         * target.c (target_read_string): Change "string" to
11839         unique_xmalloc_ptr.
11840         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11841         Update.
11842         * solib-frv.c (frv_current_sos): Update.
11843         * solib-dsbt.c (dsbt_current_sos): Update.
11844         * solib-darwin.c (darwin_current_sos): Update.
11845         * linux-thread-db.c (inferior_has_bug): Update.
11846         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11847         Update.  Remove alloca.
11848         * ada-lang.c (ada_main_name): Update.
11849
11850 2018-03-30  Tom Tromey  <tom@tromey.com>
11851
11852         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11853         (struct dwo_file_deleter): New.
11854         (dwo_file_up): New typedef.
11855         (open_and_init_dwo_file): Use dwo_file_up.
11856         (free_dwo_file_cleanup): Remove.
11857
11858 2018-03-30  Tom Tromey  <tom@tromey.com>
11859
11860         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11861         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11862
11863 2018-03-30  Tom Tromey  <tom@tromey.com>
11864
11865         * dwarf2read.c (class free_cached_comp_units): New class.
11866         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11867         (free_cached_comp_units): Remove function.
11868
11869 2018-03-30  Tom Tromey  <tom@tromey.com>
11870
11871         * utils.h (make_cleanup_unpush_target): Remove.
11872         * inf-ptrace.c (struct target_unpusher): New.
11873         (target_unpush_up) New typedef.
11874         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11875         target_unpush_up.
11876         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11877
11878 2018-03-27  Tom Tromey  <tom@tromey.com>
11879
11880         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11881
11882 2018-03-27  Pedro Alves  <palves@redhat.com>
11883             Tom Tromey  <tom@tromey.com>
11884
11885         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11886         destructor.  Now a class.
11887         (gdb_readline_wrapper_cleanup): Remove function.
11888         (gdb_readline_wrapper): Remove cleanups.
11889
11890 2018-03-27  Tom Tromey  <tom@tromey.com>
11891
11892         * typeprint.h (struct type_print_options) <local_typedefs,
11893         global_typedefs>: Remove "struct" keyword.
11894         (class typedef_hash_table): New class.
11895         (recursively_update_typedef_hash, add_template_parameters)
11896         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11897         (find_typedef_in_hash): Don't declare.
11898         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11899         (typedef_hash_table::recursively_update): Rename from
11900         recursively_update_typedef_hash.  Now a member.
11901         (typedef_hash_table::add_template_parameters): Rename from
11902         add_template_parameters.  Now a member.
11903         (typedef_hash_table::typedef_hash_table): Now a constructor;
11904         rename from create_typedef_hash.
11905         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11906         rename from free_typedef_hash.
11907         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11908         (do_free_global_table): Remove.
11909         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11910         from copy_type_recursive.
11911         (create_global_typedef_table): Remove.
11912         (typedef_hash_table::find_global_typedef): Now a member of
11913         typedef_hash_table.
11914         (typedef_hash_table::find_typedef): Rename from
11915         find_typedef_in_hash; now a member.
11916         (whatis_exp): Update.
11917         * extension.h (struct ext_lang_type_printers): Add constructor and
11918         destructor.
11919         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11920         declare.
11921         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11922         Now a constructor; rename from start_ext_lang_type_printers.
11923         (ext_lang_type_printers): Now a destructor; rename from
11924         free_ext_lang_type_printers.
11925         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11926         Update.
11927         (c_type_print_base_struct_union): Update.  Remove cleanups.
11928
11929 2018-03-27  Tom Tromey  <tom@tromey.com>
11930
11931         * dwarf-index-write.c: Include <cmath>.
11932
11933 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11934
11935         * NEWS: Add entry describing new "set|show varsize-limit" command.
11936         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11937         command.
11938         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11939         "set variable".
11940
11941 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11942
11943         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11944         dwarf-index-write.c
11945         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11946         * dwarf-index-common.c: New file.
11947         * dwarf-index-common.h: New file.
11948         * dwarf-index-write.c: New file.
11949         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11950         (struct dwarf2_section_info): Move from here.
11951         (dwarf2_section_info_def): Likewise.
11952         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11953         (offset_type): Likewise.
11954         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11955         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11956         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11957         (byte_swap): Likewise.
11958         (MAYBE_SWAP): Likewise.
11959         (dwarf2_per_cu_ptr): Likewise.
11960         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11961         (struct tu_stats): Likewise.
11962         (struct dwarf2_per_objfile): Likewise.
11963         (struct dwarf2_per_cu_data): Likewise.
11964         (struct signatured_type): Likewise.
11965         (sig_type_ptr): Likewise.
11966         (DEF_VEC_P (sig_type_ptr)): Likewise.
11967         (INDEX4_SUFFIX): Likewise.
11968         (INDEX5_SUFFIX): Likewise.
11969         (DEBUG_STR_SUFFIX): Likewise.
11970         (dwarf2_read_section): Make non-static.
11971         (mapped_index_string_hash): Move from here.
11972         (dwarf5_djb_hash): Likewise.
11973         (file_write): Likewise.
11974         (class data_buf): Likewise.
11975         (struct symtab_index_entry): Likewise.
11976         (struct mapped_symtab): Likewise.
11977         (find_slot): Likewise.
11978         (hash_expand): Likewise.
11979         (add_index_entry): Likewise.
11980         (uniquify_cu_indices): Likewise.
11981         (class c_str_view): Likewise.
11982         (class c_str_view_hasher): Likewise.
11983         (class vector_hasher): Likewise.
11984         (write_hash_table): Likewise.
11985         (psym_index_map): Likewise.
11986         (struct addrmap_index_data): Likewise.
11987         (add_address_entry): Likewise.
11988         (add_address_entry_worker): Likewise.
11989         (write_address_map): Likewise.
11990         (symbol_kind): Likewise.
11991         (write_psymbols): Likewise.
11992         (struct signatured_type_index_data): Likewise.
11993         (write_one_signatured_type): Likewise.
11994         (recursively_count_psymbols): Likewise.
11995         (recursively_write_psymbols): Likewise.
11996         (class debug_names): Likewise.
11997         (check_dwarf64_offsets): Likewise.
11998         (psyms_seen_size): Likewise.
11999         (write_gdbindex): Likewise.
12000         (write_debug_names): Likewise.
12001         (assert_file_size): Likewise.
12002         (write_psymtabs_to_index): Likewise.
12003         (save_gdb_index_command): Likewise.
12004         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12005         command.
12006         * dwarf2read.h: New file.
12007
12008 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12009
12010         PR gdb/22670
12011         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12012         symbol name if the CU's language stores symbol names in linkage
12013         format.
12014         * language.h (struct language_defn)
12015         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12016         all instances of this struct.
12017
12018 2018-03-26  Tom Tromey  <tom@tromey.com>
12019
12020         * stack.c (backtrace_command_1): Remove verbose code.
12021
12022 2018-03-26  Tom Tromey  <tom@tromey.com>
12023
12024         * python/py-framefilter.c (py_print_type): Don't catch
12025         exceptions.  Return void.
12026         (py_print_value): Likewise.
12027         (py_print_single_arg): Likewise.
12028         (enumerate_args): Don't catch exceptions.
12029         (py_print_args): Likewise.
12030         (py_print_frame): Likewise.
12031         (gdbpy_apply_frame_filter): Catch exceptions here.
12032
12033 2018-03-26  Tom Tromey  <tom@tromey.com>
12034
12035         * stack.c (_initialize_stack): Remove trailing newlines from help
12036         text.  Add "Usage" line to "backtrace" help.
12037
12038 2018-03-26  Tom Tromey  <tom@tromey.com>
12039
12040         PR python/16486:
12041         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12042
12043 2018-03-26  Tom Tromey  <tom@tromey.com>
12044
12045         * python/py-framefilter.c (py_print_single_arg): Return
12046         EXT_LANG_BT_ERROR from catch.
12047
12048 2018-03-26  Tom Tromey  <tom@tromey.com>
12049
12050         PR backtrace/15584:
12051         * stack.c (backtrace_command_1): Move some code into no-filters
12052         "if".
12053
12054 2018-03-26  Tom Tromey  <tom@tromey.com>
12055
12056         * python/py-framefilter.c (throw_quit_or_print_exception): New
12057         function.
12058         (gdbpy_apply_frame_filter): Use it.
12059
12060 2018-03-26  Tom Tromey  <tom@tromey.com>
12061
12062         PR cli/17716:
12063         * python/py-framefilter.c (py_print_type, py_print_value)
12064         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12065         RETURN_MASK_ERROR.
12066
12067 2018-03-26  Tom Tromey  <tom@tromey.com>
12068
12069         * python/py-framefilter.c (enumerate_args): Use
12070         gdb::unique_xmalloc_ptr.
12071
12072 2018-03-26  Tom Tromey  <tom@tromey.com>
12073
12074         * python/py-framefilter.c (py_print_frame): Return
12075         EXT_LANG_BT_OK.
12076         (gdbpy_apply_frame_filter): Update comment.
12077         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12078         Remove.
12079         <EXT_LANG_BT_NO_FILTERS>: Change value.
12080
12081 2018-03-26  Tom Tromey  <tom@tromey.com>
12082
12083         PR backtrace/15582:
12084         * stack.c (backtrace_command): Parse "hide" argument.
12085         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12086         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12087         constant.
12088
12089 2018-03-26  Tom Tromey  <tom@tromey.com>
12090
12091         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12092         add "flags".
12093         (backtrace_command): Remove "fulltrace", add "flags".
12094
12095 2018-03-26  Tom Tromey  <tom@tromey.com>
12096
12097         * stack.c (backtrace_command): Rewrite command line parsing.
12098
12099 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12100
12101         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12102
12103 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12104
12105         * filename-seen-cache.h: Add include guard.
12106
12107 2018-03-26  Keith Seitz  <keiths@redhat.com>
12108
12109         * symfile.c (place_section): Remove "struct" from section_addr_info
12110         in comment.
12111         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12112         "struct" keyword from section_addr_info.
12113
12114 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12115
12116         * regformats/regdef.h (reg): Add constructors.
12117
12118 2018-03-25  Pedro Alves  <palves@redhat.com>
12119
12120         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12121         if then/else bodies in var_func_name extraction.
12122
12123 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12124
12125         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12126         lookup_minimal_symbol() to find symbol entry.
12127         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12128
12129 2018-03-23  Keith Seitz  <keiths@redhat.com>
12130
12131         PR c++/22968
12132         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12133         nested type definitions for C++, too.
12134
12135 2018-03-23  Tom Tromey  <tom@tromey.com>
12136
12137         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12138         a typedef.
12139         (macho_register_oso): Remove.
12140         (macho_symtab_read): Take a std::vector.
12141         (oso_el_compare_name): Now a std::sort comparator.
12142         (macho_symfile_read_all_oso): Take a std::vector.
12143         (macho_symfile_read): Use std::vector.  Remove cleanups.
12144
12145 2018-03-22  Tom Tromey  <tom@tromey.com>
12146
12147         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12148         (record_full_goto_bookmark): Use std::string.
12149
12150 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12151
12152         PR tdep/18295
12153         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12154         a single mask.
12155
12156 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12157
12158         * rs6000-tdep.c (store_insn_p): New function.
12159         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12160         and cr_reg to their unshifted values. Use store_insn_p to
12161         match LR saves using either R1 or fdata->alloca_reg. Use
12162         store_insn_p to match CR saves. Set alloca_reg_offset
12163         when alloca_reg and framep are set. Remove lr_reg shift
12164         when assigning to fdata->lr_register.
12165
12166 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12167
12168         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12169         command line args instead of emitting a warning.
12170
12171 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12172
12173         * tracepoint.h (struct static_tracepoint_marker): Initialize
12174         fields, define default constructor, move constructor and move
12175         assignment, disable the rest.
12176         <str_id, extra>: Make std::string.
12177         (release_static_tracepoint_marker): Remove.
12178         (free_current_marker): Remove.
12179         * tracepoint.c (free_current_marker): Remove.
12180         (parse_static_tracepoint_marker_definition): Adjust to
12181         std::string, use new hex2str overload.
12182         (release_static_tracepoint_marker): Remove.
12183         (print_one_static_tracepoint_marker): Get marker by reference
12184         and adjust to std::string.
12185         (info_static_tracepoint_markers_command): Adjust to std::vector
12186         changes
12187         * target.h (static_tracepoint_marker_p): Remove typedef.
12188         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12189         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12190         bool.
12191         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12192         * target-debug.h
12193         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12194         (target_debug_print_std_vector_static_tracepoint_marker): New.
12195         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12196         to...
12197         (target_debug_print_static_tracepoint_marker_p): ... this.
12198         * target-delegates.c: Re-generate.
12199         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12200         Make std::string.
12201         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12202         (decode_static_tracepoint_spec): Adjust to std::vector.
12203         (tracepoint_print_one_detail): Adjust to std::string.
12204         (strace_marker_decode_location): Adjust to std::string.
12205         (update_static_tracepoint): Adjust to std::string, remove call
12206         to release_static_tracepoint_marker.
12207         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12208         Adjust to std::vector.
12209         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12210         (remote_static_tracepoint_markers_by_strid): Adjust to
12211         std::vector.
12212         * common/rsp-low.h (hex2str): New overload with explicit count
12213         of bytes.
12214         * common/rsp-low.c (hex2str): New overload with explicit count
12215         of bytes.
12216         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12217         (_initialize_rsp_low_selftests): Add test_hex2str test.
12218         * unittests/tracepoint-selftests.c
12219         (test_parse_static_tracepoint_marker_definition): Adjust to
12220         std::string.
12221
12222 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12223
12224         * tracepoint.c (parse_static_tracepoint_marker_definition):
12225         Consider case where the definition is followed by more
12226         definitions.
12227         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12228         tracepoint-selftests.c.
12229         * unittests/tracepoint-selftests.c: New.
12230
12231 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12232
12233         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12234         Carvalho.
12235
12236 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12237
12238         * symtab.c (find_pc_sect_line): fixed indentation.
12239
12240 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12241
12242         * symtab.c (find_pc_sect_line): now uses binary search.
12243
12244 2018-03-19  Tom Tromey  <tom@tromey.com>
12245
12246         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12247         "IDENT" production.
12248
12249 2018-03-19  Pedro Alves  <palves@redhat.com>
12250             Tom Tromey  <tom@tromey.com>
12251
12252         * unittests/observable-selftests.c: New file.
12253         * common/observable.h: New file.
12254         * observable.h: New file.
12255         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12256         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12257         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12258         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12259         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12260         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12261         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12262         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12263         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12264         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12265         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12266         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12267         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12268         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12269         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12270         tui/tui-interp.c, valops.c: Update all users.
12271         * tui/tui-hooks.c (tui_bp_created_observer)
12272         (tui_bp_deleted_observer, tui_bp_modified_observer)
12273         (tui_inferior_exit_observer, tui_before_prompt_observer)
12274         (tui_normal_stop_observer, tui_register_changed_observer):
12275         Remove.
12276         (tui_observers_token): New global.
12277         (attach_or_detach, tui_attach_detach_observers): New functions.
12278         (tui_install_hooks, tui_remove_hooks): Use
12279         tui_attach_detach_observers.
12280         * record-btrace.c (record_btrace_thread_observer): Remove.
12281         (record_btrace_thread_observer_token): New global.
12282         * observer.sh: Remove.
12283         * observer.c: Rename to observable.c.
12284         * observable.c (namespace gdb_observers): Define new objects.
12285         (observer_debug): Move into gdb_observers namespace.
12286         (struct observer, struct observer_list, xalloc_observer_list_node)
12287         (xfree_observer_list_node, generic_observer_attach)
12288         (generic_observer_detach, generic_observer_notify): Remove.
12289         (_initialize_observer): Update.
12290         Don't include observer.inc.
12291         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12292         (clean mostlyclean): Likewise.
12293         (observer.h, observer.inc): Remove targets.
12294         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12295         (COMMON_SFILES): Use observable.c, not observer.c.
12296         * .gitignore: Remove observer.h.
12297
12298 2018-03-18  Tom Tromey  <tom@tromey.com>
12299
12300         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12301         gdb::def_vector.
12302         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12303
12304 2018-03-17  Tom Tromey  <tom@tromey.com>
12305
12306         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12307
12308 2018-03-17  Tom Tromey  <tom@tromey.com>
12309
12310         * target.c (class scoped_target_fd): New.
12311         (target_fileio_close_cleanup): Remove.
12312         (target_fileio_read_alloc_1): Use scoped_target_fd.
12313
12314 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12315
12316         * silent-rules.mk: New.
12317         * Makefile.in: Include silent-rules.mk
12318         (srcdir, VPATH, top_srcdir): Move up.
12319         (COMPILE): Add ECHO_CXX.
12320         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12321         (init.c): Add ECHO_INIT_C.
12322         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12323         (version.c): Add ECHO_GEN.
12324         (printcmd.o): Add ECHO_CXX.
12325         (target-float.o): Add ECHO_CXX.
12326         (ada-exp.o): Add ECHO_CXX.
12327         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12328         (insight$(EXEEXT)): Add ECHO_CXXLD.
12329         * gnulib/configure.ac: Add AM_SILENT_RULES.
12330         * gnulib/aclocal.m4: Re-generate.
12331         * gnulib/configure: Re-generate.
12332         * gnulib/import/Makefile.in: Re-generate.
12333
12334 2018-03-16  Tom Tromey  <tom@tromey.com>
12335
12336         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12337         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12338         * utils.c (do_free_section_addr_info)
12339         (make_cleanup_free_section_addr_info): Remove.
12340         * symfile.h (struct other_sections): Add constructor.
12341         (struct section_addr_info): Remove.
12342         (section_addr_info): New typedef.
12343         (struct sym_fns) <sym_offsets>: Change type of parameter.
12344         (build_section_addr_info_from_objfile)
12345         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12346         (default_symfile_offsets, symbol_file_add)
12347         (symbol_file_add_from_bfd)
12348         (build_section_addr_info_from_section_table): Update.
12349         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12350         * symfile.c (alloc_section_addr_info): Remove.
12351         (build_section_addr_info_from_section_table): Change return type.
12352         Update.
12353         (build_section_addr_info_from_bfd)
12354         (build_section_addr_info_from_objfile): Likewise.
12355         (free_section_addr_info): Remove.
12356         (relative_addr_info_to_section_offsets): Change type of "addrs".
12357         (addrs_section_compar): Now a std::sort comparator.
12358         (addrs_section_sort): Change return type.
12359         (addr_info_make_relative): Change type of "addrs".  Update.
12360         (default_symfile_offsets, syms_from_objfile_1)
12361         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12362         (symbol_file_add_separate): Update.
12363         (symbol_file_add): Change type of "addrs".  Update.
12364         (add_symbol_file_command): Update.  Remove cleanups.
12365         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12366         cleanups.
12367         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12368         * solib.c (solib_read_symbols): Update.
12369         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12370         * machoread.c (macho_symfile_offsets): Update.
12371         * jit.c (jit_bfd_try_read_symtab): Update.
12372
12373 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12374
12375         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12376         unittests/utils-selftests.c.
12377         * unittests/utils-selftests.c: New file.
12378
12379 2018-03-14  Tom Tromey  <tom@tromey.com>
12380
12381         PR cli/14977:
12382         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12383         for NULL.
12384
12385 2018-03-14  Tom Tromey  <tom@tromey.com>
12386
12387         PR cli/19918:
12388         * printcmd.c (printf_pointer): Allow "-" in format.
12389
12390 2018-03-14  Tom Tromey  <tom@tromey.com>
12391
12392         * printcmd.c (_initialize_printcmd): Add usage to printf.
12393
12394 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12395
12396         * MAINTAINERS: Update my email address.
12397
12398 2018-03-13  Tom Tromey  <tom@tromey.com>
12399
12400         * machoread.c (macho_check_dsym): Change filenamep to a
12401         std::string*.
12402         (macho_symfile_read): Update.
12403         * symfile.c (load_command): Use std::string.
12404
12405 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12406
12407         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12408         to error message string.
12409         (riscv_register_name): Use xsnprintf instead of sprintf.
12410         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12411         internal_error.
12412         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12413         error.
12414         (riscv_push_dummy_call): Likewise.
12415
12416 2018-03-12  Tom Tromey  <tom@tromey.com>
12417
12418         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12419         Use gdb::byte_vector.
12420         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12421
12422 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12423
12424         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12425         parameter type to readable_regcache.
12426         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12427         the declaration.
12428
12429 2018-03-11  Tom Tromey  <tom@tromey.com>
12430
12431         * dwarf2read.c (struct nextfield): Add initializers.
12432         (struct nextfnfield): Remove.
12433         (struct fnfieldlist): Add initializers.  Remove "length" and
12434         "head", use std::vector.
12435         (struct decl_field_list): Remove.
12436         (struct field_info): Add initializers.
12437         <fields, baseclasses>: Now std::vector.
12438         <nbaseclasses, nfnfields, typedef_field_list_count,
12439         nested_types_list_count>: Remove.
12440         (dwarf2_add_field, dwarf2_add_type_defn)
12441         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12442         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12443         (process_structure_scope): Update.
12444
12445 2018-03-11  Tom Tromey  <tom@tromey.com>
12446
12447         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12448         for use by std::sort.
12449         (build_type_psymtabs_1): Use std::vector.
12450
12451 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12452
12453         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12454         and LIBMPFR in the printed configuration.
12455
12456 2018-03-08  Tom Tromey  <tom@tromey.com>
12457
12458         * source.c (get_filename_and_charpos): Use scoped_fd.
12459         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12460         (procfs_pidlist): Likewise.
12461         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12462         (iterate_over_mappings): Likewise.
12463
12464 2018-03-08  Tom Tromey  <tom@tromey.com>
12465
12466         * infcall.c (struct call_return_meta_info)
12467         <stack_temporaries_enabled>: Remove.
12468         (get_call_return_value, call_function_by_hand_dummy): Update.
12469         * thread.c (disable_thread_stack_temporaries): Remove.
12470         (enable_thread_stack_temporaries): Remove.
12471         (thread_stack_temporaries_enabled_p): Return bool.
12472         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12473         (get_last_thread_stack_temporary): Update.
12474         * eval.c (evaluate_subexp): Update.
12475         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12476         class, not a function.
12477         (value_ptr, value_vec): Remove typedefs.
12478         (class thread_info) <stack_temporaries_enabled>: Now bool.
12479         <stack_temporaries>: Now a std::vector.
12480         (thread_stack_temporaries_enabled_p)
12481         (value_in_thread_stack_temporaries): Return bool.
12482
12483 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12484
12485         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12486         (getpkt_or_notif_sane_1): Likewise.
12487
12488 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12489
12490         * build-id.c (build_id_to_debug_bfd): Use std::string.
12491
12492 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12493
12494         * build-id.c (find_separate_debug_file_by_buildid): Return
12495         std::string.
12496         * build-id.h (find_separate_debug_file_by_buildid): Return
12497         std::string.
12498         * coffread.c (coff_symfile_read): Adjust to std::string.
12499         * elfread.c (elf_symfile_read): Adjust to std::string.
12500         * symfile.c (separate_debug_file_exists): Change parameter to
12501         std::string.
12502         (find_separate_debug_file): Return std::string.
12503         (find_separate_debug_file_by_debuglink): Return std::string.
12504         * symfile.h (find_separate_debug_file_by_debuglink): Return
12505         std::string.
12506
12507 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12508
12509         * common/xml-utils.c (xml_escape_text): Move code to...
12510         (xml_escape_text_append): ... this new function.
12511         * common/xml-utils.h (xml_escape_text_append): New declaration.
12512         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12513         New function.
12514         (_initialize_xml_utils): register test_xml_escape_text_append as
12515         a selftest.
12516
12517 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12518
12519         * defs.h: Remove MAX_REGISTER_SIZE.
12520         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12521         asserts.
12522         * python/py-unwind.c (pyuw_sniffer): Likewise.
12523
12524 2018-03-07  Tom Tromey  <tom@tromey.com>
12525
12526         * linux-tdep.c (linux_info_proc): Update.
12527         * target.h (struct target_ops) <to_fileio_readlink>: Return
12528         optional<string>.
12529         (target_fileio_readlink): Return optional<string>.
12530         * remote.c (remote_hostio_readlink): Return optional<string>.
12531         * inf-child.c (inf_child_fileio_readlink): Return
12532         optional<string>.
12533         * target.c (target_fileio_readlink): Return optional<string>.
12534
12535 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12536
12537         * regcache.c (cooked_read_test): Add riscv to the list of
12538         architectures that have a save_reggroup.
12539
12540 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12541
12542         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12543         value is not a dynamic class object.
12544
12545 2018-03-06  Tom Tromey  <tom@tromey.com>
12546
12547         * rust-exp.y: Formatting fixes.
12548
12549 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12550
12551         * riscv-tdep.c (riscv_register_name): Remove target description
12552         support.
12553         (riscv_gdbarch_init): Remove target description check.
12554
12555 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12556
12557         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12558         comment.
12559         * riscv-tdep.h: Likewise.
12560
12561 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12562
12563         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12564         (riscv_pseudo_register_write): Delete.
12565         (riscv_gdbarch_init): Remove all use of pseudo registers.
12566
12567 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12568
12569         * record-btrace.c (btrace_print_lines): Replace cleanup
12570         parameter with RAII equivalents.
12571         (btrace_insn_history): Replace cleanup with RAII equivalents.
12572         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12573         make_cleanup_ui_out_tuple_begin_end): Remove.
12574         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12575         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12576         make_cleanup_ui_out_list_begin_end): Remove.
12577
12578 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12579
12580         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12581         parameter types to std::vector.  Use bool.
12582         (record_btrace_wait): Replace VEC(tp_t) with
12583         std::vector<thread_info *>.
12584         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12585
12586 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12587
12588         * record-btrace.c (record_btrace_disable_callback): Remove.
12589         (struct scoped_btrace_disable): New.
12590         (record_btrace_open): Use scoped_btrace_disable.
12591
12592 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12593
12594         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12595         reading values from registers.
12596
12597 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12598
12599         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12600         where appropriate.
12601
12602 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12603
12604         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12605         change parameter type.  Use GDB's print functions, and use
12606         core_addr_to_string where appropriate.
12607         (riscv_push_dummy_call): Use core_addr_to_string where
12608         appropriate, update call to riscv_print_arg_location, and reindent
12609         a few lines.
12610         (riscv_return_value): Update call to riscv_print_arg_location.
12611
12612 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12613             Tim Newsome <tim@sifive.com>
12614             Albert Ou <a0u@eecs.berkeley.edu>
12615             Darius Rad <darius@bluespec.com>
12616
12617         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12618         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12619         (ALLDEPFILES): Add riscv-tdep.c
12620         * configure.tgt: Add riscv support.
12621         * riscv-tdep.c: New file.
12622         * riscv-tdep.h: New file.
12623         * NEWS: Mention new target.
12624         * MAINTAINERS: Add entry for riscv.
12625
12626 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12627
12628         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12629         fields within aggregates.
12630
12631 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12632
12633         * record-btrace.c (btrace_print_lines): Change type of flags to
12634         gdb_disassembly_flags.
12635
12636 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12637
12638         * fbsd-nat.c: Include "inf-ptrace.h".
12639         (USE_SIGTRAP_SIGINFO): Conditionally define.
12640         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12641         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12642         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12643         function.
12644         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12645         Likewise.
12646         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12647         Likewise.
12648         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12649         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12650         "supports_stopped_by_hw_breakpoint" target methods.
12651
12652 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12653
12654         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12655         * fbsd-nat.c (debug_fbsd_nat): New variable.
12656         (show_fbsd_nat_debug): New function.
12657         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12658         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12659
12660 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12661
12662         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12663         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12664         prototype.
12665         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12666         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12667         method.
12668
12669 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12670
12671         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12672         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12673
12674 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12675
12676         * charset.c (struct charset_vector): New.
12677         (charsets): Change type to charset_vector.
12678         (find_charset_names): Adjust.
12679         (add_one): Adjust.
12680         (_initialize_charset): Adjust.
12681
12682 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12683
12684         * progspace.h (struct program_space) <deleted_solibs>: Change
12685         type to std::vector<std::string>.
12686         * progspace.c (clear_program_space_solib_cache): Adjust.
12687         * breakpoint.c (print_solib_event): Adjust.
12688         (check_status_catch_solib): Adjust.
12689         * solib.c (update_solib_list): Adjust.
12690         * ui-out.h (class ui_out) <field_string>: New overload.
12691         * ui-out.c (ui_out::field_string): New overload.
12692
12693 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12694
12695         * progspace.h (struct program_space): Add constructor and
12696         destructor, initialize fields.
12697         (add_program_space): Remove.
12698         * progspace.c (add_program_space): Rename to...
12699         (program_space::program_space): ... this.
12700         (release_program_space): Rename to...
12701         (program_space::~program_space): ... this.
12702         (delete_program_space): Use delete to delete program_space.
12703         (initialize_progspace): Use new to allocate program_space.
12704         * inferior.c (add_inferior_with_spaces): Likewise.
12705         (clone_inferior_command): Likewise.
12706         * infrun.c (follow_fork_inferior): Likewise.
12707         (handle_vfork_child_exec_or_exit): Likewise.
12708
12709 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12710
12711         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12712         (delim_string_to_char_ptr_vec): Return std::vector of
12713         gdb::unique_xmalloc_ptr.
12714         (dirnames_to_char_ptr_vec_append): Take std::vector of
12715         gdb::unique_xmalloc_ptr.
12716         (dirnames_to_char_ptr_vec): Return std::vector of
12717         gdb::unique_xmalloc_ptr.
12718         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12719         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12720         (delim_string_to_char_ptr_vec): Return an std::vector of
12721         gdb::unique_xmalloc_ptr, adjust the code.
12722         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12723         gdb::unique_xmalloc_ptr, adjust the code.
12724         (dirnames_to_char_ptr_vec): Return an std::vector of
12725         gdb::unique_xmalloc_ptr, adjust the code.
12726         * auto-load.c (auto_load_safe_path_vec): Change type to
12727         std::vector of gdb::unique_xmalloc_ptr.
12728         (auto_load_expand_dir_vars): Return an std::vector of
12729         gdb::unique_xmalloc_ptr, adjust the code.
12730         (auto_load_safe_path_vec_update): Adjust.
12731         (filename_is_in_auto_load_safe_path_vec): Adjust.
12732         (auto_load_objfile_script_1): Adjust.
12733         * build-id.c (build_id_to_debug_bfd): Adjust.
12734         * linux-thread-db.c (thread_db_load_search): Adjust.
12735         * source.c (add_path): Adjust.
12736         (openp): Adjust.
12737         * symfile.c (find_separate_debug_file): Adjust.
12738         * utils.c (do_free_char_ptr_vec): Remove.
12739         (make_cleanup_free_char_ptr_vec): Remove.
12740
12741 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12742
12743         PR gdb/22907
12744         * common/pathstuff.c: Conditionally include "<windows.h>".
12745
12746 2018-03-01  Georg Sauthoff  <mail@georg.so>
12747
12748         PR gdb/22888
12749         * gcore.in: Quote variables and switch interpreter to bash.
12750
12751 2018-03-01  Tom Tromey  <tom@tromey.com>
12752
12753         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12754         assertion.  Add assertion for discriminant_index.
12755         (quirk_rust_enum): Use correct base type name in univariant case.
12756
12757 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12758
12759         * record.c (get_call_history_modifiers): Return a
12760         record_print_flags.
12761         (cmd_record_call_history): Adjust.
12762         * record-btrace.c (record_btrace_call_history): Adjust.
12763         (record_btrace_call_history_range): Adjust.
12764         (record_btrace_call_history_from): Adjust.
12765         * target-debug.h (target_debug_print_record_print_flags): New.
12766         * target-delegates.c: Re-generate.
12767         * target.c (target_call_history): Change flags type.
12768         (target_call_history_from): Likewise.
12769         (target_call_history_range): Likewise.
12770         * target.h (struct target_ops) <target_call_history>: Likewise.
12771         (target_call_history_from): Likewise.
12772         (target_call_history_range): Likewise.
12773
12774 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12775             Simon Marchi  <simon.marchi@polymtl.ca>
12776
12777         * common/common-utils.c: Include "sys/stat.h".
12778         (is_regular_file): Move here from "source.c"; change return
12779         type to "bool".
12780         * common/common-utils.h (is_regular_file): New prototype.
12781         * common/pathstuff.c (contains_dir_separator): New function.
12782         * common/pathstuff.h (contains_dir_separator): New prototype.
12783         * source.c: Don't include "sys/stat.h".
12784         (is_regular_file): Move to "common/common-utils.c".
12785
12786 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12787
12788         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12789         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12790         * auto-load.c: Include "common/pathstuff.h".
12791         * common/common-def.h (current_directory): Move here.
12792         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12793         function.
12794         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12795         prototype.
12796         * common/pathstuff.c: New file.
12797         * common/pathstuff.h: New file.
12798         * compile/compile.c: Include "common/pathstuff.h".
12799         * defs.h (current_directory): Move to "common/common-defs.h".
12800         * dwarf2read.c: Include "common/pathstuff.h".
12801         * exec.c: Likewise.
12802         * guile/scm-safe-call.c: Likewise.
12803         * linux-thread-db.c: Likewise.
12804         * main.c: Likewise.
12805         * nto-tdep.c: Likewise.
12806         * objfiles.c: Likewise.
12807         * source.c: Likewise.
12808         * symtab.c: Likewise.
12809         * utils.c: Include "common/pathstuff.h".
12810         (gdb_realpath): Move to "common/pathstuff.c".
12811         (gdb_realpath_keepfile): Likewise.
12812         (gdb_abspath): Likewise.
12813         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12814         (gdb_realpath_keepfile): Likewise.
12815         (gdb_abspath): Likewise.
12816
12817 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12818
12819         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12820         wildcard process pid for super_resume for kernels with a
12821         specific bug.
12822
12823 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12824
12825         * compile/compile.c (get_args): Add additional comments
12826         explaining function.
12827
12828 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12829             Tom Tromey  <tom@tromey.com>
12830
12831         * target.h (memory_write_request_s): Remove typedef.  Don't define
12832         VEC.
12833         (target_write_memory_blocks): Change argument to std::vector.
12834         (struct memory_write_request): Add constructor.
12835         * target-memory.c (compare_block_starting_address): Return bool.
12836         Change argument types.
12837         (claim_memory): Change arguments to use std::vector.
12838         (split_regular_and_flash_blocks, blocks_to_erase)
12839         (compute_garbled_blocks): Likewise.
12840         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12841         (target_write_memory_blocks): Change argument to std::vector.
12842         * symfile.c (struct load_section_data): Add constructor and
12843         destructor.  Use std::vector for "requests".
12844         (struct load_progress_data): Add initializers.
12845         (load_section_callback): Update.  Use "new".
12846         (clear_memory_write_data): Remove.
12847         (generic_load): Update.
12848
12849 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12850
12851         * arch/aarch64.h: Use common/tdesc.h.
12852
12853 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12854
12855         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12856         architecture with a 64-bit ABI.
12857
12858 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12859
12860         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12861         ahead of target description loading.
12862
12863 2018-02-26  Tom Tromey  <tom@tromey.com>
12864
12865         * stack.c (backtrace_command_1): Update.
12866         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12867         of "flags".
12868         * python/py-framefilter.c (py_print_frame)
12869         (gdbpy_apply_frame_filter): Change type of "flags".
12870         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12871         of "flags".
12872         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12873         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12874         * extension.h (enum frame_filter_flag): Rename from
12875         frame_filter_flags.
12876         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12877         (apply_ext_lang_frame_filter): Change type of "flags".
12878         * extension.c (apply_ext_lang_frame_filter): Change type of
12879         "flags".
12880         * extension-priv.h (struct extension_language_ops)
12881         <apply_frame_filter>: Change type of "flags".
12882
12883 2018-02-26  Tom Tromey  <tom@tromey.com>
12884
12885         PR python/16497:
12886         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12887         off-by-one in py_end computation.
12888         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12889         PRINT_MORE_FRAMES.
12890         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12891         constant.
12892
12893 2018-02-26  Tom Tromey  <tom@tromey.com>
12894
12895         * dwarf2read.c (struct variant_field): New.
12896         (struct nextfield) <variant>: New field.
12897         (dwarf2_add_field): Handle DW_TAG_variant_part.
12898         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12899         discriminated union.
12900         (read_structure_type): Handle DW_TAG_variant_part.
12901         (handle_struct_member_die): New function, extracted from
12902         process_structure_scope.  Handle DW_TAG_variant.
12903         (process_structure_scope): Handle discriminated unions.  Call
12904         handle_struct_member_die.
12905
12906 2018-02-26  Tom Tromey  <tom@tromey.com>
12907
12908         * rust-lang.h (rust_last_path_segment): Declare.
12909         * rust-lang.c (rust_last_path_segment): Now public.  Change
12910         contract.
12911         (struct disr_info): Remove.
12912         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12913         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12914         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12915         (rust_enum_p, rust_enum_variant): New function.
12916         (rust_underscore_fields): Remove "offset" parameter.
12917         (rust_print_enum): New function.
12918         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12919         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12920         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12921         enums.
12922         (rust_internal_print_type): New function, from rust_print_type.
12923         Remove enum code.
12924         (rust_print_type): Call rust_internal_print_type.
12925         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12926         Update enum handling.
12927         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12928         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12929         (rust_union_quirks): New functions.
12930         (process_full_comp_unit, process_full_type_unit): Call
12931         rust_union_quirks.
12932         (process_structure_scope): Update rust_unions if necessary.
12933
12934 2018-02-26  Tom Tromey  <tom@tromey.com>
12935
12936         * value.h (value_union_variant): Declare.
12937         * valops.c (value_union_variant): New function.
12938         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12939         (struct discriminant_info): New.
12940         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12941         enumerator.
12942         (struct main_type) <flag_discriminated_union>: New field.
12943
12944 2018-02-26  Tom Tromey  <tom@tromey.com>
12945
12946         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12947         unittests/unpack-selftests.c.
12948         * unittests/unpack-selftests.c: New file.
12949         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12950
12951 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12952
12953         * dwarf2read.c (struct partial_die_info) <read>: New method.
12954         (read_partial_die): Remove the declaration.
12955         (load_partial_dies): Update.
12956         (partial_die_info::partial_die_info):
12957         (read_partial_die): Change it to partial_die_info::read.
12958
12959 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12960
12961         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12962         (fixup_partial_die): Remove declaration.
12963         (scan_partial_symbols): Update.
12964         (partial_die_parent_scope): Likewise.
12965         (partial_die_full_name): Likewise.
12966         (fixup_partial_die): Change it to partial_die_info::fixup.
12967
12968 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12969
12970         * dwarf2read.c (read_partial_die): Update the declaration.
12971         (load_partial_dies): Caller update.
12972         (read_partial_die): Remove one argument abbrev_len.
12973
12974 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12975
12976         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12977         assignment operator.
12978         (load_partial_dies): Use ctor and copy ctor.
12979         (read_partial_die): Update.
12980         (dwarf2_cu::find_partial_die): Use ctor.
12981
12982 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12983
12984         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12985         (find_partial_die_in_comp_unit): Change it to
12986         dwarf2_cu::find_partial_die.
12987         (find_partial_die): Update.
12988
12989 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12990
12991         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12992         is NULL.
12993
12994 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12995
12996         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12997
12998 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12999
13000         * arch/amd64.h: Use common/tdesc.h.
13001         * arch/i386.c: Likewise.
13002         * arch/i386.h: Likewise.
13003         * arch/tic6x.c: Likewise.
13004         * arch/tdesc.h: Move file from here...
13005         * common/tdesc.h: ...to here.
13006         * features/aarch64-core.c: Regenerate.
13007         * features/aarch64-fpu.c: Regenerate.
13008         * features/i386/32bit-avx.c: Regenerate.
13009         * features/i386/32bit-avx512.c: Regenerate.
13010         * features/i386/32bit-core.c: Regenerate.
13011         * features/i386/32bit-linux.c: Regenerate.
13012         * features/i386/32bit-mpx.c: Regenerate.
13013         * features/i386/32bit-pkeys.c: Regenerate.
13014         * features/i386/32bit-sse.c: Regenerate.
13015         * features/i386/64bit-avx.c: Regenerate.
13016         * features/i386/64bit-avx512.c: Regenerate.
13017         * features/i386/64bit-core.c: Regenerate.
13018         * features/i386/64bit-linux.c: Regenerate.
13019         * features/i386/64bit-mpx.c: Regenerate.
13020         * features/i386/64bit-pkeys.c: Regenerate.
13021         * features/i386/64bit-segments.c: Regenerate.
13022         * features/i386/64bit-sse.c: Regenerate.
13023         * features/i386/x32-core.c: Regenerate.
13024         * features/tic6x-c6xp.c: Regenerate.
13025         * features/tic6x-core.c: Regenerate.
13026         * features/tic6x-gp.c: Regenerate.
13027         * target-descriptions.c: Use common/tdesc.h.
13028         * target-descriptions.h: Likewise.
13029
13030 2018-02-24  Tom Tromey  <tom@tromey.com>
13031
13032         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13033         (try_thread_db_load_from_dir, thread_db_load_search): Use
13034         std::string.
13035         (info_auto_load_libthread_db_compare): Return bool.  Change
13036         argument types.
13037         (info_auto_load_libthread_db): Use std::vector, std::string.
13038         Remove cleanups.
13039
13040 2018-02-24  Tom Tromey  <tom@tromey.com>
13041
13042         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13043         std::string.
13044         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13045         std::string*.
13046         * gdbarch.c: Rebuild.
13047         * gdbarch.h: Rebuild.
13048         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13049         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13050         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13051         std::string*.
13052
13053 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13054
13055         * gdbtypes.h (sect_offset): Change type to uint64_t.
13056         (sect_offset_str): New function.
13057         * dwarf2read.c (create_addrmap_from_aranges): Use
13058         sect_offset_str.
13059         (error_check_comp_unit_head): Likewise.
13060         (create_debug_type_hash_table): Likewise.
13061         (read_cutu_die_from_dwo): Likewise.
13062         (init_cutu_and_read_dies): Likewise.
13063         (init_cutu_and_read_dies_no_follow): Likewise.
13064         (process_psymtab_comp_unit_reader): Likewise.
13065         (partial_die_parent_scope): Likewise.
13066         (peek_die_abbrev): Likewise.
13067         (process_queue): Likewise.
13068         (dwarf2_physname): Likewise.
13069         (read_namespace_alias): Likewise.
13070         (read_import_statement): Likewise.
13071         (create_dwo_cu_reader): Likewise.
13072         (create_cus_hash_table): Likewise.
13073         (lookup_dwo_cutu): Likewise.
13074         (inherit_abstract_dies): Likewise.
13075         (read_func_scope): Likewise.
13076         (read_call_site_scope): Likewise.
13077         (dwarf2_add_member_fn): Likewise.
13078         (read_common_block): Likewise.
13079         (read_module_type): Likewise.
13080         (read_typedef): Likewise.
13081         (read_subrange_type): Likewise.
13082         (load_partial_dies): Likewise.
13083         (read_partial_die): Likewise.
13084         (find_partial_die): Likewise.
13085         (read_str_index): Likewise.
13086         (dwarf2_string_attr): Likewise.
13087         (build_error_marker_type): Likewise.
13088         (lookup_die_type): Likewise.
13089         (dump_die_shallow): Likewise.
13090         (follow_die_ref): Likewise.
13091         (dwarf2_fetch_die_loc_sect_off): Likewise.
13092         (dwarf2_fetch_constant_bytes): Likewise.
13093         (follow_die_sig): Likewise.
13094         (get_signatured_type): Likewise.
13095         (get_DW_AT_signature_type): Likewise.
13096         (dwarf2_find_containing_comp_unit): Likewise.
13097         (set_die_type): Likewise.
13098
13099 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13100
13101         * arch/aarch64.c: Include "common-defs.h".
13102         * arch/amd64.c: Likewise.
13103         * arch/i386.c: Likewise.
13104
13105 2018-02-21  Tom Tromey  <tom@tromey.com>
13106
13107         * value.h: (extract_field_op): Update.
13108         * eval.c (extract_field_op): Return a const char *.
13109         * expression.h (parse_expression_for_completion): Update.
13110         * completer.c (complete_expression): Update.
13111         (add_struct_fields): Make fieldname const.
13112         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13113         (mark_completion_tag, parse_exp_in_context_1): Update.
13114         (parse_expression_for_completion): Change "name" to
13115         unique_xmalloc_ptr*.
13116
13117 2018-02-21  Tom Tromey  <tom@tromey.com>
13118
13119         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13120
13121 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13122
13123         * avr-tdep.c (avr_read_pc): Change parameter type to
13124         readable_regcache.
13125         * gdbarch.sh (read_pc): Likewise.
13126         * gdbarch.c: Re-generated.
13127         * gdbarch.h: Re-generated.
13128         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13129         readable_regcache.
13130         * ia64-tdep.c (ia64_read_pc): Likewise.
13131         * mips-tdep.c (mips_read_pc): Likewise.
13132         * spu-tdep.c (spu_read_pc): Likewise.
13133
13134 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13135
13136         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13137         * regcache-dump.c: New file.
13138         * regcache.c: Move register_dump to regcache-dump.c.
13139         (maintenance_print_registers): Likewise.
13140         (maintenance_print_raw_registers): Likewise.
13141         (maintenance_print_cooked_registers): Likewise.
13142         (maintenance_print_register_groups): Likewise.
13143         (maintenance_print_remote_registers): Likewise.
13144         (_initialize_regcache): Likewise.
13145         * regcache.h (register_dump): Moved from regcache.c.
13146
13147 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13148
13149         * regcache.c (regcache::regcache): Update.
13150         (regcache::invalidate): Move it to detached_regcache::invalidate.
13151         (get_thread_arch_aspace_regcache): Update.
13152         (regcache::raw_update): Update.
13153         (regcache::cooked_read): Remove some code.
13154         (regcache::cooked_read_value): Likewise.
13155         (regcache::raw_write): Remove assert on m_readonly_p.
13156         (regcache::raw_supply_integer): Move it to
13157         detached_regcache::raw_supply_integer.
13158         (regcache::raw_supply_zeroed): Likewise.
13159         * regcache.h (detached_regcache) <raw_supply_integer>: New
13160         declaration.
13161         <raw_supply_zeroed, invalidate>: Likewise.
13162         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13163         <invalidate>: Likewise.
13164         <m_readonly_p>: Removed.
13165
13166 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13167
13168         * infcmd.c (get_return_value): Let stop_regs point to
13169         get_current_regcache.
13170         * regcache.c (regcache::regcache): Remove.
13171         (register_dump_reg_buffer): New class.
13172         (regcache_print): Adjust.
13173         * regcache.h (regcache): Remove constructors.
13174
13175 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13176
13177         * regcache.c (class register_dump): New class.
13178         (register_dump_regcache, register_dump_none): New class.
13179         (register_dump_remote, register_dump_groups): New class.
13180         (regcache_print): Update.
13181         * regcache.h (regcache_dump_what): Move it to regcache.c.
13182         (regcache) <dump>: Remove.
13183
13184 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13185
13186         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13187          reg_buffer_rw *.
13188         (jit_unwind_reg_set_impl): Call raw_supply.
13189         (jit_frame_sniffer): Use reg_buffer_rw.
13190         * record-full.c (record_full_core_regbuf): Change its type.
13191         (record_full_core_open_1): Use reg_buffer_rw.
13192         (record_full_close): Likewise.
13193         (record_full_core_fetch_registers): Use regcache->raw_supply.
13194         (record_full_core_store_registers): Likewise.
13195         * regcache.c (regcache::get_register_status): Move it to
13196         reg_buffer.
13197         (regcache_raw_set_cached_value): Remove.
13198         (regcache::raw_set_cached_value): Remove.
13199         (regcache::raw_write): Call raw_supply.
13200         (regcache::raw_supply): Move it to reg_buffer_rw.
13201         * regcache.h (regcache_raw_set_cached_value): Remove.
13202         (reg_buffer_rw): New class.
13203
13204 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13205
13206         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13207         readonly_detached_regcache.
13208         (dummy_frame_prev_register): Use regcache->cooked_read.
13209         * frame.c (frame_save_as_regcache): Change return type.
13210         (frame_pop): Update.
13211         * frame.h (frame_save_as_regcache): Update declaration.
13212         * inferior.h (get_infcall_suspend_state_regcache): Update
13213         declaration.
13214         * infrun.c (infcall_suspend_state) <registers>: use
13215         readonly_detached_regcache.
13216         (save_infcall_suspend_state): Don't use regcache_dup.
13217         (get_infcall_suspend_state_regcache): Change return type.
13218         * linux-fork.c (struct fork_info) <savedregs>: Change to
13219         readonly_detached_regcache.
13220         <pc>: New field.
13221         (fork_save_infrun_state): Don't use regcache_dup.
13222         (info_checkpoints_command): Adjust.
13223         * mi/mi-main.c (register_changed_p): Update declaration.
13224         (mi_cmd_data_list_changed_registers): Use
13225         readonly_detached_regcache.
13226         (register_changed_p): Change parameter type to
13227         readonly_detached_regcache.
13228         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13229         readonly_detached_regcache.
13230         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13231         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13232         New.
13233         (regcache::save): Move it to reg_buffer.
13234         (regcache::restore): Change parameter type.
13235         (regcache_dup): Remove.
13236         * regcache.h (reg_buffer) <save>: New method.
13237         (readonly_detached_regcache): New class.
13238         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13239         readonly_detached_regcache.
13240         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13241
13242 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13243
13244         * frame.c (frame_save_as_regcache): Use regcache method save.
13245         (frame_pop): Use regcache method restore.
13246         * infrun.c (restore_infcall_suspend_state): Likewise.
13247         * linux-fork.c (fork_load_infrun_state): Likewise.
13248         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13249         save.
13250         * regcache.c (regcache_save): Remove.
13251         (regcache::restore): More asserts.
13252         (regcache_cpy): Remove.
13253         * regcache.h (regcache_save): Remove the declaration.
13254         (regcache::restore): Move from private to public.
13255         Remove the friend declaration of regcache_cpy.
13256         (regcache_cpy): Remove declaration.
13257
13258 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13259
13260         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13261         parameter type to 'readable_regcache *'.
13262         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13263         * arm-tdep.c (arm_neon_quad_read): Likewise.
13264         (arm_pseudo_read): Likewise.
13265         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13266         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13267         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13268         * gdbarch.c: Re-generated.
13269         * gdbarch.h: Re-generated.
13270         * gdbarch.sh (pseudo_register_read): Change parameter type to
13271         'readable_regcache *'.
13272         (pseudo_register_read_value): Likewise.
13273         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13274         (h8300_pseudo_register_read): Likewise.
13275         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13276         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13277         (i386_pseudo_register_read_into_value): Likewise.
13278         (i386_pseudo_register_read_value): Likewise.
13279         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13280         declaration.
13281         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13282         * m32c-tdep.c (m32c_raw_read): Likewise.
13283         (m32c_read_flg): Likewise.
13284         (m32c_banked_register): Likewise.
13285         (m32c_banked_read): Likewise.
13286         (m32c_sb_read): Likewise.
13287         (m32c_part_read): Likewise.
13288         (m32c_cat_read): Likewise.
13289         (m32c_r3r2r1r0_read): Likewise.
13290         (m32c_pseudo_register_read): Likewise.
13291         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13292         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13293         (mep_pseudo_cr64_read): Likewise.
13294         (mep_pseudo_register_read): Likewise.
13295         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13296         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13297         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13298         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13299         (regcache::cooked_read): Likewise.
13300         (regcache::cooked_read_value): Likewise.
13301         (regcache_cooked_read_signed):
13302         (regcache::cooked_read): Likewise.
13303         * regcache.h (readable_regcache): New class.
13304         (regcache): Inherit readable_regcache.  Move some methods to
13305         readable_regcache.
13306         * rl78-tdep.c (rl78_pseudo_register_read): Change
13307         parameter type to 'readable_regcache *'.
13308         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13309         (e500_pseudo_register_read): Change parameter type to
13310         'readable_regcache *'.
13311         (dfp_pseudo_register_read): Likewise.
13312         (vsx_pseudo_register_read): Likewise.
13313         (efpr_pseudo_register_read): Likewise.
13314         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13315         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13316         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13317         (sh64_pseudo_register_read): Likewise.
13318         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13319         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13320         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13321         (spu_pseudo_register_read): Likewise.
13322         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13323         (xtensa_pseudo_register_read): Likewise.
13324
13325 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13326
13327         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13328         (regcache::arch): Move it to reg_buffer::arch.
13329         (regcache::register_buffer): Likewise.
13330         (regcache::assert_regnum): Likewise.
13331         (regcache::num_raw_registers): Likewise.
13332         * regcache.h (reg_buffer): New class.
13333         (regcache): Inherit reg_buffer.
13334
13335 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13336
13337         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13338         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13339
13340 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13341
13342         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13343
13344 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13345
13346         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13347         (SFILES): Remove common/*.c files.
13348         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13349         * common/common.host: Add common reference.
13350         * configure.ac: Likewise.
13351         * configure: Regenerate.
13352
13353 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13354
13355         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13356         (block_initialize_namespace): Use new.
13357         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13358         (dwarf2_free_objfile): Use delete.
13359         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13360         (copy_type_recursive): Use new.
13361         * gdb_obstack.h (allocate_on_obstack): New.
13362
13363 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13364
13365         PR gdb/22849
13366         * inferior.c (exit_inferior_1): Reset inf->control.
13367
13368 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13369
13370         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13371         declaration.
13372
13373 2018-02-14  Pedro Alves  <palves@redhat.com>
13374
13375         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13376         frame_cleanup_after_sniffer on exception.
13377
13378 2018-02-14  Tom Tromey  <tom@tromey.com>
13379
13380         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13381         const.
13382         (solib_bfd_open): Make pathname const.
13383         * solib.c (solib_bfd_open): Make pathname const.
13384         * solib-spu.c (spu_bfd_fopen): Make name const.
13385         (spu_bfd_open): Make pathname const.
13386         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13387         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13388
13389 2018-02-14  Tom Tromey  <tom@tromey.com>
13390
13391         * symfile.c (symfile_bfd_open): Update.
13392         * source.h (openp, source_full_path_of, find_and_open_source):
13393         Change argument type to unique_xmalloc_ptr.
13394         * source.c (openp): Take a unique_xmalloc_ptr.
13395         (source_full_path_of, find_and_open_source): Likewise.
13396         (open_source_file, symtab_to_fullname): Update.
13397         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13398         unique_xmalloc_ptr.
13399         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13400         (exec_file_find): Update.
13401         * psymtab.c (psymtab_to_fullname): Update.
13402         * nto-tdep.h (nto_find_and_open_solib): Update.
13403         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13404         unique_xmalloc_ptr.
13405         * exec.c (exec_file_attach): Update.
13406         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13407         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13408
13409 2018-02-14  Tom Tromey  <tom@tromey.com>
13410
13411         * solib.c: Include source.h.
13412         * nto-tdep.c: Include source.h.
13413         * mi/mi-cmd-env.c: Include source.h.
13414         * infcmd.c: Include source.h.
13415         * exec.c: Include source.h.
13416         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13417         (add_path, directory_switch, source_path, init_source_path): Move
13418         declarations...
13419         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13420         (add_path, directory_switch, source_path, init_source_path):
13421         ...here.
13422
13423 2018-02-14  Tom Tromey  <tom@tromey.com>
13424
13425         * solist.h (exec_file_find, solib_find): Return
13426         unique_xmalloc_ptr.
13427         (solib_bfd_fopen): Take a const char *.
13428         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13429         (exec_file_find, solib_find): Likewise.
13430         (solib_bfd_fopen): Do not take ownership of "pathname".
13431         (solib_bfd_open): Use unique_xmalloc_ptr.
13432         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13433         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13434         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13435         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13436
13437 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13438
13439         * ada-lang.c (name_match_type_from_name): Remove reference to
13440         ada_name_for_lookup in function's documentation.
13441         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13442
13443 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13444
13445         * defs.h (enum openp_flags): New enum.
13446         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13447         Move to enum openp_flags.
13448         (openp_flags): New enum flags.
13449         (openp): Change parameter type to openp_flags.
13450         * source.c (openp): Change parameter type to openp_flags.
13451         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13452         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13453
13454 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13455
13456         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13457         per-command.
13458
13459 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13460
13461         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13462         into...
13463         (class dwarf2_queue_guard): ...the destructor of this new class.
13464         (dw2_do_instantiate_symtab): Create instance of the new class
13465         dwarf2_queue_guard, remove cleanup.
13466
13467 2018-02-09  Tom Tromey  <tom@tromey.com>
13468
13469         * source.c (find_source_lines): Don't reference past the end of
13470         the vector.
13471
13472 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13473
13474         * remote.c (remote_btrace_maybe_reopen): Change error message.
13475         * btrace.c (btrace_enable): Likewise.
13476         (parse_xml_btrace): Likewise.
13477         (parse_xml_btrace_conf): Likewise.
13478
13479 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13480
13481         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13482         (linux_enable_pt, linux_enable_bts): Call
13483         diagnose_perf_event_open_fail.
13484
13485 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13486
13487         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13488         Remove parameter and change return type.  Update callers.  Move it.
13489         (linux_enable_bts, linux_enable_pt): Improve error message.
13490         (linux_enable_pt): Remove zero buffer size check.
13491         (linux_enable_btrace): Improve error messages.  Remove NULL return
13492         check.
13493
13494 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13495
13496         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13497         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13498         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13499         (linux_supports_pt, linux_supports_btrace): Remove.
13500         (linux_enable_bts): Call cpu_supports_bts.
13501         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13502         * remote.c (remote_supports_btrace): Remove.
13503         (init_remote_ops): Remove remote_supports_btrace.
13504         * target-delegates.c: Regenerated.
13505         * target.c (target_supports_btrace): Remove.
13506         * target.h (target_ops) <to_supports_btrace>: Remove
13507         (target_supports_btrace): Remove.
13508         * x86-linux-nat.c (x86_linux_create_target): Remove
13509         linux_supports_btrace.
13510
13511 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13512
13513         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13514         btrace failed.
13515         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13516         exception and use message in own exception.
13517
13518 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13519
13520         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13521         (perf_event_pt_event_type): Use gdb_file_up.
13522         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13523         scoped_fd, and scoped_mmap.
13524
13525 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13526
13527         * common/scoped_mmap.h: New.
13528         * unittests/scoped_mmap-selftest.c: New.
13529         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13530         unittests/scoped_mmap-selftest.c.
13531
13532 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13533
13534         * common/scoped_fd.h: New.
13535         * unittests/scoped_fd-selftest.c: New.
13536         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13537         unittests/scoped_fd-selftest.c.
13538
13539 2018-02-09  Tom Tromey  <tom@tromey.com>
13540
13541         * auto-load.c (auto_load_section_scripts): Use
13542         gdb::unique_xmalloc_ptr.
13543
13544 2018-02-09  Tom Tromey  <tom@tromey.com>
13545
13546         * auto-load.c (execute_script_contents): Use std::string.
13547
13548 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13549
13550         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13551         Python function, rather than a new command.
13552
13553 2018-02-08  Tom Tromey  <tom@tromey.com>
13554
13555         * solib.c (solib_find_1): Use std::string.
13556         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13557
13558 2018-02-08  Tom Tromey  <tom@tromey.com>
13559
13560         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13561
13562 2018-02-08  Tom Tromey  <tom@tromey.com>
13563
13564         * source.c (find_source_lines): Use gdb::def_vector.
13565
13566 2018-02-08  Tom Tromey  <tom@tromey.com>
13567
13568         * macrocmd.c (struct temporary_macro_definition): New.
13569         (macro_define_command): Use temporary_macro_definition.  Remove
13570         cleanups.
13571         (free_macro_definition_ptr): Remove.
13572
13573 2018-02-08  Tom Tromey  <tom@tromey.com>
13574
13575         * macroexp.c (maybe_expand): Use std::string.
13576
13577 2018-02-08  Tom Tromey  <tom@tromey.com>
13578
13579         * macroexp.c (struct macro_buffer): Add initializers for some
13580         members.
13581         (init_buffer, init_shared_buffer, free_buffer)
13582         (free_buffer_return_text): Remove.
13583         (macro_buffer): New constructors.
13584         (~macro_buffer): New destructor.
13585         (macro_buffer::set_shared): New method.
13586         (macro_buffer::resize_buffer, macro_buffer::appendc)
13587         (macro_buffer::appendmem): Now methods, not free functions.
13588         (set_token, append_tokens_without_splicing, stringify)
13589         (macro_stringify): Update.
13590         (gather_arguments): Change return type.  Remove argc_p argument,
13591         add args_ptr argument.  Use std::vector.
13592         (substitute_args): Remove argc argument.  Accept std::vector.
13593         (expand): Update.  Use std::vector.
13594         (scan, macro_expand, macro_expand_next): Update.
13595
13596 2018-02-08  Tom Tromey  <tom@tromey.com>
13597
13598         * symtab.c (default_collect_symbol_completion_matches_break_on):
13599         Use unique_xmalloc_ptr.
13600         * macroscope.h: (sal_macro_scope, user_macro_scope)
13601         (default_macro_scope): Return unique_xmalloc_ptr.
13602         * macroscope.c (sal_macro_scope, user_macro_scope)
13603         (default_macro_scope): Return unique_xmalloc_ptr.
13604         * macroexp.h (macro_expand, macro_expand_once): Return
13605         unique_xmalloc_ptr.
13606         * macroexp.c (macro_expand, macro_expand_once): Return
13607         unique_xmalloc_ptr.
13608         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13609         (info_macro_command, info_macros_command): Use
13610         unique_xmalloc_ptr.
13611         * compile/compile-c-support.c (write_macro_definitions): Use
13612         unique_xmalloc_ptr.
13613         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13614
13615 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13616
13617         * value.c (value_static_field): Assign field type instead of
13618         containing type when returning an optimized out value.
13619
13620 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13621
13622         * ft32-tdep.c (ft32_read_pc): Remove.
13623         (ft32_write_pc): Remove.
13624         (ft32_gdbarch_init): Update.
13625         * m32r-tdep.c (m32r_read_pc): Remove.
13626         (m32r_gdbarch_init): Update.
13627         * mep-tdep.c (mep_read_pc): Remove.
13628         (mep_gdbarch_init): Update.
13629         * microblaze-tdep.c (microblaze_write_pc): Remove.
13630         (microblaze_gdbarch_init): Update.
13631         * mn10300-tdep.c (mn10300_read_pc): Remove.
13632         (mn10300_write_pc): Remove.
13633         (mn10300_gdbarch_init): Update.
13634         * moxie-tdep.c (moxie_read_pc): Remove.
13635         (moxie_write_pc): Remove.
13636         (moxie_gdbarch_init): Update.
13637
13638 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13639
13640         * expprint.c (print_subexp_standard): Handle
13641         OP_F77_UNDETERMINED_ARGLIST.
13642         (dump_subexp_body_standard): Likewise.
13643
13644 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13645
13646         * target-descriptions.c (tdesc_element_visitor) Add empty
13647         implementations.
13648         (tdesc_type): Move make_gdb_type from here.
13649         (tdesc_type_builtin): Likewise.
13650         (tdesc_type_vector): Likewise.
13651         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13652         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13653         (make_gdb_type_union): Likewise.
13654         (make_gdb_type_flags): Likewise.
13655         (make_gdb_type_enum): Likewise.
13656         (make_gdb_type): New function.
13657         (tdesc_register_type): Use static make_gdb_type.
13658
13659 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13660
13661         * infcmd.c (default_print_one_register_info): Align natural-format
13662         column values consistently one under another.
13663         (pad_to_column): New function.
13664
13665 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13666
13667         * dwarf2read.c (dwarf2_physname): Move commment.
13668
13669 2018-02-01  Leszek Swirski  <leszeks@google.com>
13670
13671         * varobj.c (varobj_formatted_print_options): Allow recursive
13672         pretty printing if pretty printing is enabled.
13673
13674 2018-02-01  Leszek Swirski  <leszeks@google.com>
13675
13676         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13677         names after a structop as a filename.
13678
13679 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13680
13681         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13682         (arm_record_coproc_data_proc): Likewise.
13683
13684 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13685
13686         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13687
13688 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13689
13690         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13691         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13692
13693 2018-01-31  Pedro Alves  <palves@redhat.com>
13694
13695         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13696         * inflow.c (child_terminal_save_inferior): Wrap reference to
13697         tcgetpgrp in HAVE_TERMIOS_H.
13698         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13699         _WIN32.
13700         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13701         always iterate over all inferiors.
13702         (gdbsim_cntrl_c): Adjust.
13703         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13704
13705 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13706
13707         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13708         index type is objfile-owned if the element type is as well.
13709
13710 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13711
13712         GDB 8.1 released.
13713
13714 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13715
13716         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13717         "features/s390x-linux64.c".
13718         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13719         s390_linux32 and s390x_linux64.
13720         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13721         default tdesc.
13722         * s390-tdep.c: Include "features/s390-linux32.c" and
13723         "features/s390x-linux64.c".
13724         (s390_tdesc_valid): Add check for tdesc_has_registers.
13725         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13726         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13727         tdesc_s390x_linux64.
13728         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13729         tdesc_s390x_linux64 to...
13730         * s390-tdep.h: ...here.
13731
13732 2018-01-30  Pedro Alves  <palves@redhat.com>
13733
13734         PR gdb/13211
13735         * config.in, configure: Regenerate.
13736         * configure.ac: Check for getpgid.
13737         * go32-nat.c (go32_pass_ctrlc): New.
13738         (go32_target): Install it.
13739         * inf-child.c (inf_child_target): Install
13740         child_terminal_save_inferior, child_pass_ctrlc and
13741         child_interrupt.
13742         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13743         (inf_ptrace_target): No longer install it.
13744         * infcmd.c (interrupt_target_1): Adjust.
13745         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13746         (child_interrupt): Declare.
13747         (inferior::terminal_state): New.
13748         * inflow.c (struct terminal_info): Update comments.
13749         (inferior_process_group): Delete.
13750         (terminal_is_ours): Delete.
13751         (gdb_tty_state): New.
13752         (child_terminal_init): Adjust.
13753         (is_gdb_terminal, sharing_input_terminal_1)
13754         (sharing_input_terminal): New functions.
13755         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13756         Set the process's actual process group in the foreground if
13757         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13758         mark terminal as the inferior's if not sharing GDB's terminal.
13759         Don't check attach_flag.
13760         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13761         pass down a target_terminal_state.
13762         (child_terminal_save_inferior): New, factored out from ...
13763         (child_terminal_ours_1): ... this.  Handle
13764         target_terminal_state::is_ours_for_output.
13765         (child_interrupt, child_pass_ctrlc): New.
13766         (inflow_inferior_exit): Clear the inferior's terminal_state.
13767         (copy_terminal_info): Copy the inferior's terminal state.
13768         (_initialize_inflow): Remove reference to terminal_is_ours.
13769         * inflow.h (inferior_process_group): Delete.
13770         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13771         * procfs.c (procfs_target): Don't install procfs_interrupt.
13772         (procfs_interrupt): Delete.
13773         * remote.c (remote_serial_quit_handler): Adjust.
13774         (remote_interrupt): Remove ptid parameter.  Adjust.
13775         * target-delegates.c: Regenerate.
13776         * target.c: Include "terminal.h".
13777         (target_terminal::terminal_state): Rename to ...
13778         (target_terminal::m_terminal_state): ... this.
13779         (target_terminal::init): Adjust.
13780         (target_terminal::inferior): Adjust to per-inferior
13781         terminal_state.
13782         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13783         (target_terminal::ours, target_terminal::ours_for_output): Use
13784         target_terminal_is_ours_kind.
13785         (target_interrupt): Remove ptid parameter.  Adjust.
13786         (default_target_pass_ctrlc): Adjust.
13787         * target.h (target_ops::to_terminal_save_inferior): New field.
13788         (target_ops::to_interrupt): Remove ptid_t parameter.
13789         (target_interrupt): Remove ptid_t parameter.  Update comment.
13790         (target_pass_ctrlc): Update comment.
13791         * target/target.h (target_terminal_state): New scoped enum,
13792         factored out of ...
13793         (target_terminal::terminal_state): ... here.
13794         (target_terminal::inferior): Update comments.
13795         (target_terminal::restore_inferior): New.
13796         (target_terminal::is_inferior, target_terminal::is_ours)
13797         (target_terminal::is_ours_for_output): Adjust.
13798         (target_terminal::scoped_restore_terminal_state): Adjust to
13799         rename, and call restore_inferior() instead of inferior().
13800         (target_terminal::scoped_restore_terminal_state::m_state): Change
13801         type.
13802         (target_terminal::terminal_state): Rename to ...
13803         (target_terminal::m_terminal_state): ... this and change type.
13804
13805 2018-01-30  Pedro Alves  <palves@redhat.com>
13806
13807         * linux-nat.c (wait_for_signal): New function.
13808         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13809         directly.
13810         (async_terminal_is_ours)
13811         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13812         (linux_nat_add_target): Don't override
13813         to_terminal_inferior/to_terminal_ours.
13814
13815 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13816
13817         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13818
13819 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13820
13821         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13822         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13823         dwarf2_per_objfile_free here.
13824         (dwarf2_per_objfile_free): Remove.
13825         (_initialize_dwarf2_read): Don't register
13826         dwarf2_per_objfile_free as a registry cleanup.
13827
13828 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13829
13830         Avoid compilation errors in MinGW native builds
13831
13832         The error is triggered by including python-internal.h, and the
13833         error message is:
13834
13835              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13836                       from build-gnulib/import/math.h:27,
13837                       from d:/usr/Python26/include/pyport.h:235,
13838                       from d:/usr/Python26/include/Python.h:58,
13839                       from python/python-internal.h:94,
13840                       from python/py-arch.c:24:
13841              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13842         using ::hypot;
13843                 ^~~~~
13844
13845         This happens because Python headers define 'hypot' to expand t
13846         '_hypot' in the Windows builds.
13847         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13848         'hypoth'.  This avoids a compilation error.
13849
13850 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13851
13852         * MAINTAINERS (Write After Approval): Fix ordering.
13853
13854 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13855
13856         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13857
13858 2018-01-26  Alan Modra  <amodra@gmail.com>
13859
13860         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13861         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13862         Remove nop.  Make const.  Comment.
13863         (powerpc32_plt_stub_so_2): New.
13864         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13865         Correct count.  Update uses.
13866         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13867         Move common code reading PLT entry word.  Correct
13868         powerpc32_plt_stub PLT address calculation.
13869         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13870         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13871         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13872         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13873         (ppc64_standard_linkage8): Likewise.
13874         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13875         Correct insns description.
13876         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13877
13878 2018-01-24  Pedro Alves  <palves@redhat.com>
13879
13880         GCC PR libstdc++/83906
13881         * gdbtypes.c (operator==(const dynamic_prop &,
13882         const dynamic_prop &)): New.
13883         (operator==(const range_bounds &, const range_bounds &)): New.
13884         (check_types_equal): Use them instead of memcmp.
13885         * gdbtypes.h (operator==(const dynamic_prop &,
13886         const dynamic_prop &)): Declare.
13887         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13888         (operator==(const range_bounds &, const range_bounds &)): Declare.
13889         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13890
13891 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13892
13893         * s390-linux-tdep.c (s390_record_address_mask)
13894         (s390_record_calc_disp_common, s390_record_calc_disp)
13895         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13896         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13897         (s390_process_record): Move to s390-tdep.c.
13898         (s390_linux_init_abi_any): Adjust.
13899         * s390-tdep.c (s390_record_address_mask)
13900         (s390_record_calc_disp_common, s390_record_calc_disp)
13901         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13902         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13903         (s390_process_record): Moved from s390-linux-tdep.c
13904         (s390_gdbarch_init): Adjust.
13905
13906 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13907
13908         * s390-linux-nat.c (s390-tdep.h): New include.
13909         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13910         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13911         (ALLDEPFILES): Add s390-tdep.c.
13912         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13913         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13914         * s390-tdep.h: ...this.  New file.
13915         * s390-linux-tdep.c (s390-tdep.h): New include.
13916         (_initialize_s390_tdep): Rename to...
13917         (_initialize_s390_linux_tdep): ...this and adjust.
13918         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13919         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13920         s390-tdep.h.
13921         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13922         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13923         (s390_is_partial_instruction, s390_software_single_step)
13924         (is_non_branch_ril, s390_displaced_step_copy_insn)
13925         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13926         (s390_prologue_data, s390_addr, s390_store, s390_load)
13927         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13928         (s390_register_call_saved, s390_guess_tracepoint_registers)
13929         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13930         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13931         (s390_pseudo_register_name, s390_pseudo_register_type)
13932         (s390_pseudo_register_read, s390_pseudo_register_write)
13933         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13934         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13935         (s390_addr_bits_remove, s390_address_class_type_flags)
13936         (s390_address_class_type_flags_to_name)
13937         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13938         (s390_function_arg_float, s390_function_arg_vector)
13939         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13940         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13941         (s390_frame_align, s390_register_return_value, s390_return_value)
13942         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13943         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13944         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13945         (s390_trad_frame_prev_register, s390_unwind_cache)
13946         (s390_prologue_frame_unwind_cache)
13947         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13948         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13949         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13950         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13951         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13952         (s390_frame_base_address, s390_local_base_address)
13953         (s390_frame_base, s390_gcc_target_options)
13954         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13955         (s390_validate_reg_range, s390_tdesc_valid)
13956         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13957         * s390-tdep.c: ...this.  New file.
13958
13959 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13960
13961         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13962         (s390_process_record, s390_gdbarch_tdep_alloc)
13963         (s390_linux_init_abi_any): Use/set new hook.
13964
13965 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13966
13967         * s390-linux-tdep.c (osabi.h): New include.
13968         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13969         (s390_linux_init_abi_any): New functions.
13970         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13971
13972 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13973
13974         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13975         tdesc_has_registers check
13976
13977 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13978
13979         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13980         (s390_validate_reg_range): New macro.
13981         (s390_gdbarch_init): Adjust.
13982
13983 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13984
13985         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13986         (s390_gdbarch_tdep_alloc): Adjust.
13987         (s390_gdbarch_init): Adjust.
13988
13989 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13990
13991         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13992         <have_tdb>: Change type to bool.
13993         (s390_gdbarch_tdep_alloc): Adjust.
13994         (s390_gdbarch_init): Adjust.
13995
13996 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13997
13998         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13999         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14000         (s390_gdbarch_tdep_alloc): New function.
14001         (s390_gdbarch_init): Allocate tdep at start and use its fields
14002         instead of separate variables.
14003
14004 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14005
14006         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14007         when looking for cached gdbarch and add comment for remaining.
14008
14009 2018-01-22  Pedro Alves  <palves@redhat.com>
14010             Sergio Durigan Junior  <sergiodj@redhat.com>
14011
14012         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14013         case.
14014
14015 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14016
14017         * MAINTAINERS: Update my company e-mail address.
14018
14019 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14020
14021         * regcache.c (cooked_write_test): New function.
14022         (_initialize_regcache): Register the test.
14023
14024 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14025
14026         * ia64-tdep.c (ia64_pseudo_register_read): Call
14027         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14028         * m32c-tdep.c (m32c_cat_read): Likewise.
14029         (m32c_r3r2r1r0_read): Likewise.
14030         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14031         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14032
14033 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14034
14035         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14036         method raw_read instead of regcache_raw_read.
14037         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14038         * arm-tdep.c (arm_neon_quad_read): Likewise.
14039         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14040         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14041         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14042         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14043         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14044         (i386_pseudo_register_read_into_value): Likewise.
14045         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14046         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14047         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14048         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14049         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14050         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14051         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14052         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14053         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14054
14055 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14056
14057         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14058         * configure.tgt: Remove target mt.
14059         * mt-tdep.c: Remove.
14060         * regcache.c (cooked_read_test): Remove the check for mt.
14061
14062 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14063
14064         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14065         instead of gdbarch_pseudo_register_read_value.
14066
14067 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14068
14069         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14070         language is Ada.
14071
14072 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14073
14074         * linespec.c (create_sals_line_offset): Remove code that preserved
14075         the symtab_and_line's line number.
14076
14077 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14078
14079         * varobj.c (varobj_create): Don't set valid_block when creating a
14080         floating varobj.
14081
14082 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14083
14084         * varobj.c (varobj_create): Remove out of date comment.
14085
14086 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14087
14088         PR mi/20395
14089         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14090         updating innermost block.
14091         * parse.c (innermost_block_tracker::update): Take extra type
14092         parameter, and check types match before updating innermost block.
14093         (write_dollar_variable): Update innermost block for registers.
14094         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14095         (innermost_block_tracker::innermost_block_tracker): Initialise
14096         m_types member.
14097         (innermost_block_tracker::reset): Take type parameter.
14098         (innermost_block_tracker::update): Take type parameter, and pass
14099         type through as needed.
14100         (innermost_block_tracker::m_types): New member.
14101         * varobj.c (varobj_create): Pass type when reseting innermost
14102         block.
14103
14104 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14105
14106         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14107         * ada-lang.c (resolve_subexp): Likewise.
14108         * breakpoint.c (set_breakpoint_condition) Likewise.
14109         (watch_command_1) Likewise.
14110         * c-exp.y (variable): Likewise.
14111         * d-exp.y (PrimaryExpression): Likewise.
14112         * f-exp.y (variable): Likewise.
14113         * go-exp.y (variable): Likewise.
14114         * m2-exp.y (variable): Likewise.
14115         * objfiles.c (objfile::~objfile): Likewise.
14116         * p-exp.y (variable): Likewise.
14117         * parse.c (innermost_block): Change type.
14118         * parser-defs.h (class innermost_block_tracker): New.
14119         (innermost_block): Change to innermost_block_tracker.
14120         * printcmd.c (display_command): Switch to innermost_block API.
14121         (do_one_display): Likewise.
14122         * rust-exp.y (do_one_display): Likewise.
14123         * symfile.c (clear_symtab_users): Likewise.
14124         * varobj.c (varobj_create): Switch to innermost_block API, replace
14125         use of innermost_block with block stored on varobj object.
14126
14127 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14128
14129         * expression.h (innermost_block): Remove declaration.
14130         * varobj.c: Add 'parser-defs.h' include.
14131
14132 2018-01-19  Tom Tromey  <tom@tromey.com>
14133
14134         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14135         symbols in the static and global blocks.
14136
14137 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14138
14139         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14140         gdb_ptrace.h, and move including gdb_wait.h ...
14141         * nat/linux-ptrace.h: ... to here.
14142
14143 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14144
14145         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14146         inf_ptrace_detach_success.
14147         (inf_ptrace_detach_success): Add inferior parameter, use it
14148         instead of inferior_ptid, pass it to detach_inferior.
14149         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14150         parameter.
14151         * inferior.c (detach_inferior): Add overload that takes an
14152         inferior object.
14153         * inferior.h (detach_inferior): Likewise.
14154         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14155         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14156         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14157
14158 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14159
14160         * target.h (struct target_ops) <to_detach>: Add inferior
14161         parameter.
14162         (target_detach): Likewise.
14163         * target.c (dispose_inferior): Pass inferior down.
14164         (target_detach): Pass inferior down.  Assert that it is equal to
14165         the current inferior.
14166         * aix-thread.c (aix_thread_detach): Pass inferior down.
14167         * corefile.c (core_file_command): Pass current_inferior() down.
14168         * corelow.c (core_detach): Add inferior parameter.
14169         * darwin-nat.c (darwin_detach): Likewise.
14170         * gnu-nat.c (gnu_detach): Likewise.
14171         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14172         * infcmd.c (detach_command): Pass current_inferior() down to
14173         target_detach.
14174         * infrun.c (follow_fork_inferior): Pass parent_inf to
14175         target_detach.
14176         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14177         target_detach.
14178         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14179         * linux-thread-db.c (thread_db_detach): Likewise.
14180         * nto-procfs.c (procfs_detach): Likewise.
14181         * procfs.c (procfs_detach): Likewise.
14182         * record.c (record_detach): Likewise.
14183         * record.h (struct inferior): Forward-declare.
14184         (record_detach): Add inferior parameter.
14185         * remote-sim.c (gdbsim_detach): Likewise.
14186         * remote.c (remote_detach_1): Likewise.
14187         (remote_detach): Likewise.
14188         (extended_remote_detach): Likewise.
14189         * sol-thread.c (sol_thread_detach): Likewise.
14190         * target-debug.h (target_debug_print_inferior_p): New macro.
14191         * target-delegates.c: Re-generate.
14192         * top.c (kill_or_detach): Pass inferior down to target_detach.
14193         * windows-nat.c (windows_detach): Add inferior parameter.
14194
14195 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14196
14197         * target.h (struct target_ops) <to_detach>: Remove args
14198         parameter.
14199         (target_detach): Likewise.
14200         * target.c (dispose_inferior): Adjust.
14201         (target_detach): Remove args parameter, adjust.
14202         * aix-thread.c (aix_thread_detach): Adjust.
14203         * corefile.c (core_file_command): Adjust.
14204         * corelow.c (core_detach): Adjust.
14205         * darwin-nat.c (darwin_detach): Adjust.
14206         * gnu-nat.c (gnu_detach): Adjust.
14207         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14208         * infcmd.c (detach_command): Adjust
14209         * infrun.c (follow_fork_inferior): Adjust.
14210         (handle_vfork_child_exec_or_exit): Adjust.
14211         * linux-fork.c (linux_fork_detach): Remove args parameter.
14212         * linux-fork.h (linux_fork_detach): Likewise.
14213         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14214         * linux-thread-db.c (thread_db_detach): Likewise.
14215         * nto-procfs.c (procfs_detach): Likewise.
14216         * procfs.c (procfs_detach): Likewise.
14217         (do_detach): Remove signo parameter.
14218         * record.c (record_detach): Remove args parameter.
14219         * record.h (record_detach): Likewise.
14220         * remote-sim.c (gdbsim_detach): Likewise.
14221         * remote.c (remote_detach_1): Likewise.
14222         (remote_detach): Likewise.
14223         (extended_remote_detach): Likewise.
14224         * sol-thread.c (sol_thread_detach): Likewise.
14225         * target-delegates.c: Re-generate.
14226         * top.c (struct qt_args) <args>: Remove field.
14227         (kill_or_detach): Don't pass args.
14228         (quit_force): Don't set args.
14229         * windows-nat.c (windows_detach): Remove args parameter.
14230
14231 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14232
14233         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14234         (arm_linux_init_abi): Install it.
14235
14236 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14237
14238         * osabi.c (gdb_osabi_names): Extend the regexp for
14239         arm-linux-gnueabihf.
14240
14241 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14242
14243         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14244         m_abbrevs.
14245         (abbrev_table::add_abbrev): Update.
14246         (abbrev_table::lookup_abbrev): Update.
14247
14248 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14249
14250         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14251
14252 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14253
14254         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14255         to "std::string".
14256
14257 2018-01-17  Tom Tromey  <tom@tromey.com>
14258
14259         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14260
14261 2018-01-17  Tom Tromey  <tom@tromey.com>
14262
14263         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14264         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14265         (create_array_type_with_stride): Update.
14266         * dwarf2read.c (set_die_type): Update.
14267
14268 2018-01-17  Tom Tromey  <tom@tromey.com>
14269
14270         * dwarf2read.c (delayed_method_info): Remove typedef.
14271         (dwarf2_cu::method_info): Now a std::vector.
14272         (add_to_method_list): Update.
14273         (free_delayed_list): Remove.
14274         (compute_delayed_physnames): Update.
14275         (process_full_comp_unit, process_full_type_unit): Clear the method
14276         list.  Remove cleanups.
14277         (psymtab_include_file_name): Add name_holder parameter.  Use
14278         unique_xmalloc_ptr.
14279         (dwarf_decode_lines): Update.
14280
14281 2018-01-17  Tom Tromey  <tom@tromey.com>
14282             Simon Marchi  <simon.marchi@ericsson.com>
14283
14284         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14285         (dwarf2_per_objfile::free_cached_comp_units)
14286         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14287         (init_cutu_and_read_dies_no_follow): Update.
14288         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14289         (dwarf2_cu::~dwarf2_cu): New.
14290         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14291         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14292
14293 2018-01-17  Tom Tromey  <tom@tromey.com>
14294             Simon Marchi  <simon.marchi@ericsson.com>
14295
14296         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14297         (struct die_reader_specs) <abbrev_table>: New member.
14298         (struct abbrev_table): Add constructor.
14299         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14300         <abbrev_obstack>: Now an auto_obstack.
14301         (abbrev_table_up): New typedef.
14302         (init_cu_die_reader): Add abbrev_table parameter.
14303         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14304         Add result_dwo_abbrev_table.
14305         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14306         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14307         Update.
14308         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14309         parameter.
14310         (skip_children): Update.
14311         (abbrev_table::alloc_abbrev): Rename from
14312         abbrev_table_alloc_abbrev.
14313         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14314         (abbrev_table::lookup_abbrev): Rename from
14315         abbrev_table_lookup_abbrev.
14316         (abbrev_table_read_table): Return abbrev_table_up.
14317         (abbrev_table_free, abbrev_table_free_cleanup)
14318         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14319         (load_partial_dies): Update.
14320
14321 2018-01-17  Tom Tromey  <tom@tromey.com>
14322
14323         * dwarf2read.c (dwarf2_compute_name): Update comment.
14324         (read_func_scope, read_variable): Update.
14325         (new_symbol): Remove.
14326         (new_symbol_full): Rename to new_symbol.
14327
14328 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14329
14330         PR gdb/16577
14331         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14332         a warning instead of throwing an error, set section size to 0 and return
14333         NULL.
14334         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14335
14336 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14337
14338         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14339         std::string.
14340         (linux_ptrace_attach_fail_reason_string): Likewise.
14341         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14342         Likewise.
14343         (linux_ptrace_attach_fail_reason_string): Likewise.
14344         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14345
14346 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14347
14348         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14349
14350 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14351
14352         PR gdb/21559
14353         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14354         checking for fs_base/gs_base fields in struct user_regs_struct.
14355         * configure: Regenerate.
14356
14357 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14358
14359         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14360         function.
14361         (aarch64_linux_init_abi): Install it to gdbarch hook
14362         gcc_target_options.
14363
14364 2018-01-15  Pedro Alves  <palves@redhat.com>
14365
14366         * common/signals-state-save-restore.c
14367         (save_original_signals_state): Fix typos.
14368
14369 2017-01-12  Tom Tromey  <tom@tromey.com>
14370             Sergio Durigan Junior  <sergiodj@redhat.com>
14371
14372         * Makefile.in (install-only): Install gdb-add-index.
14373
14374 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14375
14376         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14377
14378 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14379
14380         * infrun.c (keep_going_pass_signal): Clear step-over info when
14381         insert_breakpoints fails.
14382
14383 2018-01-11  Pedro Alves  <palves@redhat.com>
14384
14385         PR gdb/22583
14386         * infrun.c (resume): Rename to ...
14387         (resume_1): ... this.
14388         (resume): Reimplement as wrapper around resume_1.
14389
14390 2018-01-11  Pedro Alves  <palves@redhat.com>
14391
14392         PR remote/22597
14393         * remote.c (remote_parse_stop_reply): Default to the last-set
14394         general thread instead of to 'magic_null_ptid'.
14395
14396 2018-01-10  Pedro Alves  <palves@redhat.com>
14397
14398         * language.h (language_get_symbol_name_matcher): Rename ...
14399         (get_symbol_name_matcher): ... this.
14400         * language.c (language_get_symbol_name_matcher): Ditto.
14401         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14402         callers adjusted.
14403
14404 2018-01-10  Pedro Alves  <palves@redhat.com>
14405
14406         PR gdb/22670
14407         * dwarf2read.c
14408         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14409         Adjust to use language_get_symbol_name_matcher instead of
14410         language_defn::la_get_symbol_name_matcher.
14411         * language.c (language_get_symbol_name_matcher): If in Ada mode
14412         and the lookup name is a verbatim match, return Ada's matcher.
14413         * language.h (language_get_symbol_name_matcher): Adjust comment.
14414         (ada_lookup_name_info::verbatim_p):: New method.
14415
14416 2018-01-10  Pedro Alves  <palves@redhat.com>
14417
14418         PR gdb/22670
14419         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14420         minsym's language is language_auto or language_cplus, pass down
14421         language_ada instead.
14422         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14423
14424 2018-01-10  Pedro Alves  <palves@redhat.com>
14425
14426         PR gdb/22670
14427         * minsyms.c (linkage_name_str): New function.
14428         (iterate_over_minimal_symbols): Use it.
14429
14430 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14431
14432         * NEWS: Document that 'info proc' now works on FreeBSD.
14433
14434 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14435
14436         * configure.ac: Check for kinfo_getfile in libutil.
14437         * configure: Regenerate.
14438         * config.in: Regenerate.
14439         * fbsd-nat.c: Include "fbsd-tdep.h".
14440         (fbsd_fetch_cmdline): New.
14441         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14442         rather than calling error.
14443         (fbsd_info_proc): New.
14444         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14445         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14446         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14447
14448 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14449
14450         * fbsd-nat.c (struct free_deleter): Remove.
14451         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14452
14453 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14454
14455         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14456         NULL for an empty pathname.
14457
14458 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14459
14460         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14461         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14462         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14463         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14464         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14465         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14466         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14467         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14468         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14469         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14470         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14471         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14472         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14473         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14474         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14475
14476 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14477
14478         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14479         (gnu_xfer_auxv): New function.
14480         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14481         TARGET_OBJECT_AUXV.
14482
14483 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14484             Simon Marchi  <simon.marchi@ericsson.com>
14485
14486         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14487         common/selftest.c.
14488         (COMMON_OBS): Remove selftest.o.
14489         * configure.ac: Append selftest-arch.c and common/selftest.c to
14490         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14491         * configure: Re-generated.
14492         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14493         GDB_SELF_TEST.
14494         (maintenance_info_selftests): Likewise.
14495
14496 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14497
14498         * ada-valprint.c (val_print_packed_array_elements): Use
14499         proper number of elements when printing an array indexed
14500         by an enumeration type.
14501
14502 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14503
14504         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14505         (dw2_get_file_names_reader): Adjust.
14506         (lookup_dwo_signatured_type): Adjust.
14507         (lookup_dwp_signatured_type): Adjust.
14508         (lookup_signatured_type): Adjust.
14509         (create_type_unit_group): Adjust.
14510         (get_type_unit_group): Adjust.
14511         (process_psymtab_comp_unit_reader): Adjust.
14512         (build_type_psymtabs_reader): Adjust.
14513         (scan_partial_symbols): Adjust.
14514         (add_partial_symbol): Adjust.
14515         (add_partial_subprogram): Adjust.
14516         (peek_die_abbrev): Adjust.
14517         (fixup_go_packaging): Adjust.
14518         (process_imported_unit_die): Adjust.
14519         (dwarf2_compute_name): Adjust.
14520         (dwarf2_physname): Adjust.
14521         (read_import_statement): Adjust.
14522         (handle_DW_AT_stmt_list): Adjust.
14523         (read_file_scope): Adjust.
14524         (read_func_scope): Adjust.
14525         (read_lexical_block_scope): Adjust.
14526         (read_call_site_scope): Adjust.
14527         (read_variable): Adjust.
14528         (dwarf2_rnglists_process): Adjust.
14529         (dwarf2_ranges_process): Adjust.
14530         (dwarf2_ranges_read): Adjust.
14531         (dwarf2_get_pc_bounds): Adjust.
14532         (dwarf2_record_block_ranges): Adjust.
14533         (dwarf2_add_field): Adjust.
14534         (dwarf2_add_member_fn): Adjust.
14535         (read_structure_type): Adjust.
14536         (process_structure_scope): Adjust.
14537         (read_enumeration_type): Adjust.
14538         (read_array_type): Adjust.
14539         (mark_common_block_symbol_computed): Adjust.
14540         (read_common_block): Adjust.
14541         (read_namespace_type): Adjust.
14542         (read_namespace): Adjust.
14543         (read_module_type): Adjust.
14544         (read_tag_pointer_type): Adjust.
14545         (read_tag_ptr_to_member_type): Adjust.
14546         (read_tag_string_type): Adjust.
14547         (read_subroutine_type): Adjust.
14548         (read_typedef): Adjust.
14549         (read_base_type): Adjust.
14550         (attr_to_dynamic_prop): Adjust.
14551         (read_subrange_type): Adjust.
14552         (read_unspecified_type): Adjust.
14553         (dwarf2_read_abbrevs): Adjust.
14554         (load_partial_dies): Adjust.
14555         (read_partial_die): Adjust.
14556         (find_partial_die): Adjust.
14557         (guess_partial_die_structure_name): Adjust.
14558         (fixup_partial_die): Adjust.
14559         (read_attribute_value): Adjust.
14560         (read_addr_index): Adjust.
14561         (read_addr_index_from_leb128): Adjust.
14562         (read_str_index): Adjust.
14563         (dwarf2_string_attr): Adjust.
14564         (get_debug_line_section): Adjust.
14565         (dwarf_decode_line_header): Adjust.
14566         (lnp_state_machine::check_line_address): Adjust.
14567         (dwarf_decode_lines_1): Adjust.
14568         (dwarf_decode_lines): Adjust.
14569         (dwarf2_start_symtab): Adjust.
14570         (var_decode_location): Adjust.
14571         (new_symbol_full): Adjust.
14572         (dwarf2_const_value_data): Adjust.
14573         (dwarf2_const_value_attr): Adjust.
14574         (dwarf2_const_value): Adjust.
14575         (die_type): Adjust.
14576         (die_containing_type): Adjust.
14577         (build_error_marker_type): Adjust.
14578         (lookup_die_type): Adjust.
14579         (guess_full_die_structure_name): Adjust.
14580         (anonymous_struct_prefix): Adjust.
14581         (determine_prefix): Adjust.
14582         (dwarf2_name): Adjust.
14583         (follow_die_ref_or_sig): Adjust.
14584         (follow_die_offset): Adjust.
14585         (follow_die_ref): Adjust.
14586         (follow_die_sig_1): Adjust.
14587         (follow_die_sig): Adjust.
14588         (get_signatured_type): Adjust.
14589         (get_DW_AT_signature_type): Adjust.
14590         (decode_locdesc): Adjust.
14591         (dwarf_decode_macros): Adjust.
14592         (cu_debug_loc_section): Adjust.
14593         (fill_in_loclist_baton): Adjust.
14594         (dwarf2_symbol_mark_computed): Adjust.
14595         (init_one_comp_unit): Don't assign
14596         dwarf2_cu::dwarf2_per_objfile.
14597         (set_die_type): Adjust.
14598
14599 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14600
14601         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14602         <dwarf2_per_objfile>: New field.
14603         (dwarf2_per_objfile): Remove global.
14604         (get_dwarf2_per_objfile): New function.
14605         (set_dwarf2_per_objfile): New function.
14606         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14607         dwarf2_per_objfile.
14608         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14609         (read_abbrev_offset): Likewise.
14610         (read_indirect_string): Likewise.
14611         (read_indirect_line_string): Likewise.
14612         (read_indirect_string_at_offset): Likewise.
14613         (read_indirect_string_from_dwz): Likewise.
14614         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14615         dwarf2_per_objfile.
14616         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14617         (create_all_comp_units): Change objfile parameter to
14618         dwarf2_per_objfile.
14619         (create_all_type_units): Likewise.
14620         (process_queue): Add dwarf2_per_objfile parameter.
14621         (read_and_check_comp_unit_head): Likewise.
14622         (lookup_dwo_unit_in_dwp): Likewise.
14623         (get_dwp_file): Likewise.
14624         (process_cu_includes): Likewise.
14625         (struct free_dwo_file_cleanup_data): New struct.
14626         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14627         set_dwarf2_per_objfile.
14628         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14629         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14630         context, adjust calls.
14631         (dw2_instantiate_symtab): Likewise.
14632         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14633         (dw2_get_cu): Likewise.
14634         (create_cu_from_index_list): Change objfile parameter to
14635         dwarf2_per_objfile.
14636         (create_cus_from_index_list): Get dwarf2_per_objfile from
14637         context, adjust calls.
14638         (create_cus_from_index): Likewise.
14639         (create_signatured_type_table_from_index): Change objfile
14640         parameter to dwarf2_per_objfile.
14641         (create_signatured_type_table_from_debug_names): Change objfile
14642         parameter to dwarf2_per_objfile.
14643         (create_addrmap_from_index): Likewise.
14644         (create_addrmap_from_aranges): Likewise.
14645         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14646         (dw2_setup): Remove.
14647         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14648         context.
14649         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14650         get_dwarf2_per_objfile.
14651         (dw2_forget_cached_source_info): Likewise.
14652         (dw2_map_symtabs_matching_filename): Likewise.
14653         (struct dw2_symtab_iterator) <index>: Remove.
14654         <dwarf2_per_objfile>: New field.
14655         (dw2_symtab_iter_init): Replace index parameter with
14656         dwarf2_per_objfile.
14657         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14658         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14659         (dw2_print_stats): Likewise.
14660         (dw2_dump): Likewise.
14661         (dw2_expand_symtabs_for_function): Likewise.
14662         (dw2_expand_all_symtabs): Likewise.
14663         (dw2_expand_symtabs_with_fullname): Likewise.
14664         (dw2_expand_marked_cus): Replace index and objfile parameters
14665         with dwarf2_per_objfile.
14666         (dw_expand_symtabs_matching_file_matcher): Add
14667         dwarf2_per_objfile parameter and adjust calls.
14668         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14669         adjust calls.
14670         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14671         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14672         adjust calls.
14673         (create_cus_from_debug_names_list): Replace objfile parameter
14674         with dwarf2_per_objfile and adjust calls.
14675         (create_cus_from_debug_names): Likewise.
14676         (dwarf2_read_debug_names): Likewise.
14677         (mapped_debug_names::namei_to_name): Adjust call.
14678         (dw2_debug_names_iterator::next): Likewise.
14679         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14680         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14681         (dw2_debug_names_dump): Likewise.
14682         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14683         (dw2_debug_names_expand_symtabs_matching): Likewise.
14684         (dwarf2_initialize_objfile): Likewise.
14685         (dwarf2_build_psymtabs): Likewise.
14686         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14687         this_cu.
14688         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14689         (read_and_check_comp_unit_head): Likewise.
14690         (read_abbrev_offset): Likewise.
14691         (create_debug_type_hash_table): Likewise.
14692         (create_debug_types_hash_table): Likewise.
14693         (create_all_type_units): Replace objfile parameter with
14694         dwarf2_per_objfile.
14695         (add_type_unit): Add dwarf2_per_objfile parameter.
14696         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14697         with dwarf2_per_objfile.
14698         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14699         (lookup_dwp_signatured_type): Likewise.
14700         (lookup_signatured_type): Likewise.
14701         (read_cutu_die_from_dwo): Likewise.
14702         (init_tu_and_read_dwo_dies): Likewise.
14703         (init_cutu_and_read_dies): Likewise.
14704         (init_cutu_and_read_dies_no_follow): Likewise.
14705         (allocate_type_unit_groups_table): Add objfile parameter.
14706         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14707         (get_type_unit_group): Likewise.
14708         (process_psymtab_comp_unit): Update call.
14709         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14710         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14711         (print_tu_stats): Likewise.
14712         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14713         in void* parameter.
14714         (build_type_psymtabs): Change objfile parameter to
14715         dwarf2_per_objfile.
14716         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14717         passed in void* parameter.
14718         (process_skeletonless_type_units): Change objfile parameter to
14719         dwarf2_per_objfile.
14720         (set_partial_user): Likewise.
14721         (dwarf2_build_psymtabs_hard): Likewise.
14722         (read_comp_units_from_section): Likewise.
14723         (create_all_comp_units): Likewise.
14724         (scan_partial_symbols): Update calls.
14725         (add_partial_symbol): Likewise.
14726         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14727         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14728         (process_queue): Add dwarf2_per_objfile parameter.
14729         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14730         (compute_compunit_symtab_includes): Likewise.
14731         (process_cu_includes): Add dwarf2_per_objfile parameter.
14732         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14733         (process_full_type_unit): Likewise.
14734         (process_imported_unit_die): Update call.
14735         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14736         (read_file_scope): Likewise.
14737         (allocate_dwo_file_hash_table): Add objfile parameter.
14738         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14739         (create_cus_hash_table): Likewise.
14740         (create_dwp_hash_table): Likewise.
14741         (create_dwo_unit_in_dwp_v1): Likewise.
14742         (create_dwp_v2_section): Likewise.
14743         (create_dwo_unit_in_dwp_v2): Likewise.
14744         (lookup_dwo_unit_in_dwp): Likewise.
14745         (try_open_dwop_file): Likewise.
14746         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14747         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14748         cleanup to include a reference to dwarf2_per_objfile.
14749         (open_dwp_file): Add dwarf2_per_objfile parameter.
14750         (open_and_init_dwp_file): Likewise.
14751         (get_dwp_file): Likewise.
14752         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14753         (queue_and_load_all_dwo_tus): Update call.
14754         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14755         data.
14756         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14757         (dwarf2_ranges_process): Likewise.
14758         (dwarf2_get_pc_bounds): Likewise.
14759         (mark_common_block_symbol_computed): Likewise.
14760         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14761         (dwarf2_read_abbrevs): Update call.
14762         (read_partial_die): Use dwarf2_per_objfile from cu.
14763         (find_partial_die): Likewise.
14764         (fixup_partial_die): Likewise.
14765         (read_attribute_value): Likewise.
14766         (read_indirect_string_at_offset_from): Add objfile parameter.
14767         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14768         parameter.
14769         (read_indirect_string_from_dwz): Add objfile parameter.
14770         (read_indirect_string): Add objfile parameter.
14771         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14772         (read_addr_index): Use dwarf2_per_objfile from cu.
14773         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14774         call dw2_setup.
14775         (read_str_index): Use dwarf2_per_objfile from cu.
14776         (get_debug_line_section): Likewise.
14777         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14778         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14779         (new_symbol_full): Use dwarf2_per_objfile from cu.
14780         (build_error_marker_type): Likewise.
14781         (lookup_die_type): Likewise.
14782         (determine_prefix): Likewise.
14783         (follow_die_offset): Likewise.
14784         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14785         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14786         (dwarf2_fetch_die_type_sect_off): Likewise.
14787         (dwarf2_get_die_type): Likewise.
14788         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14789         (get_signatured_type): Likewise.
14790         (get_DW_AT_signature_type): Likewise.
14791         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14792         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14793         (cu_debug_loc_section): Likewise.
14794         (fill_in_loclist_baton): Likewise.
14795         (dwarf2_symbol_mark_computed): Likewise.
14796         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14797         dwarf2_per_objfile.
14798         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14799         parameter.
14800         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14801         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14802         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14803         (set_die_type): Use dwarf2_free_objfile from cu.
14804         (get_die_type_at_offset): Likewise.
14805         (dwarf2_per_objfile_free): Don't assign global variable.
14806         (debug_names) <constructor>: Add dwarf2_per_objfile
14807         parameter, update m_debugstrlookup construction.
14808         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14809         parameter.
14810         <m_dwarf2_per_objfile>: New field.
14811         <lookup>: Use m_dwarf2_per_objfile.
14812         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14813         (psyms_seen_size): Likewise.
14814         (write_gdbindex): Replace objfile parameter with
14815         dwarf2_per_objfile.
14816         (write_debug_names): Likewise.
14817         (write_psymtabs_to_index): Likewise.
14818         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14819         calls.
14820
14821 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14822
14823         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14824         <dwarf2_per_objfile>: New field.
14825         (struct dwarf2_per_cu_data) <objfile>: Remove.
14826         <dwarf2_per_objfile>: New field.
14827         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14828         of objfile.
14829         (create_signatured_type_table_from_index): Likewise.
14830         (create_debug_type_hash_table): Likewise.
14831         (fill_in_sig_entry_from_dwo_entry): Likewise.
14832         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14833         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14834         objfile.
14835         (create_partial_symtab): Access objfile through
14836         dwarf2_per_objfile.
14837         (process_psymtab_comp_unit_reader): Likewise.
14838         (read_comp_units_from_section): Likewise.
14839         (scan_partial_symbols): Likewise.
14840         (add_partial_symbol): Likewise.
14841         (add_partial_subprogram): Likewise.
14842         (peek_die_abbrev): Likewise.
14843         (fixup_go_packaging): Likewise.
14844         (process_full_comp_unit): Likewise.
14845         (process_full_type_unit): Likewise.
14846         (process_imported_unit_die): Likewise.
14847         (dwarf2_compute_name): Likewise.
14848         (dwarf2_physname): Likewise.
14849         (read_import_statement): Likewise.
14850         (create_cus_hash_table): Assign dwarf2_physname instead of
14851         objfile.
14852         (read_func_scope): Access objfile through dwarf2_per_objfile.
14853         (read_lexical_block_scope): Likewise.
14854         (read_call_site_scope): Likewise.
14855         (read_variable): Likewise.
14856         (dwarf2_rnglists_process): Likewise.
14857         (dwarf2_ranges_process): Likewise.
14858         (dwarf2_ranges_read): Likewise.
14859         (dwarf2_record_block_ranges): Likewise.
14860         (dwarf2_add_field): Likewise.
14861         (dwarf2_add_member_fn): Likewise.
14862         (read_structure_type): Likewise.
14863         (process_structure_scope): Likewise.
14864         (read_enumeration_type): Likewise.
14865         (read_array_type): Likewise.
14866         (read_common_block): Likewise.
14867         (read_namespace_type): Likewise.
14868         (read_namespace): Likewise.
14869         (read_module_type): Likewise.
14870         (read_tag_pointer_type): Likewise.
14871         (read_tag_ptr_to_member_type): Likewise.
14872         (read_tag_string_type): Likewise.
14873         (read_subroutine_type): Likewise.
14874         (read_typedef): Likewise.
14875         (read_base_type): Likewise.
14876         (attr_to_dynamic_prop): Likewise.
14877         (read_subrange_type): Likewise.
14878         (read_unspecified_type): Likewise.
14879         (load_partial_dies): Likewise.
14880         (read_partial_die): Likewise.
14881         (find_partial_die): Likewise.
14882         (guess_partial_die_structure_name): Likewise.
14883         (fixup_partial_die): Likewise.
14884         (read_attribute_value): Likewise.
14885         (read_addr_index_from_leb128): Likewise.
14886         (dwarf2_read_addr_index): Likewise.
14887         (dwarf2_string_attr): Likewise.
14888         (lnp_state_machine::check_line_address): Likewise.
14889         (dwarf_decode_lines_1): Likewise.
14890         (dwarf_decode_lines): Likewise.
14891         (dwarf2_start_symtab): Likewise.
14892         (var_decode_location): Likewise.
14893         (new_symbol_full): Likewise.
14894         (dwarf2_const_value_data): Likewise.
14895         (dwarf2_const_value_attr): Likewise.
14896         (dwarf2_const_value): Likewise.
14897         (die_type): Likewise.
14898         (die_containing_type): Likewise.
14899         (lookup_die_type): Likewise.
14900         (guess_full_die_structure_name): Likewise.
14901         (anonymous_struct_prefix): Likewise.
14902         (dwarf2_name): Likewise.
14903         (follow_die_ref_or_sig): Likewise.
14904         (follow_die_offset): Likewise.
14905         (follow_die_ref): Likewise.
14906         (dwarf2_fetch_die_loc_sect_off): Likewise.
14907         (dwarf2_fetch_constant_bytes): Likewise.
14908         (dwarf2_fetch_die_type_sect_off): Likewise.
14909         (dwarf2_get_die_type): Likewise.
14910         (follow_die_sig): Likewise.
14911         (decode_locdesc): Likewise.
14912         (dwarf2_per_cu_objfile): Likewise.
14913         (dwarf2_per_cu_text_offset): Likewise.
14914         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14915         objfile.
14916         (set_die_type): Access objfile through
14917         dwarf2_per_objfile.
14918
14919 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14920
14921         * valprint.c (converted_character_d): Remove typedef.
14922         (DEF_VEC_O (converted_character_d)): Remove.
14923         (count_next_character): Use std::vector.
14924         (print_converted_chars_to_obstack): Likewise.
14925         (generic_printstr): Likewise.
14926
14927 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14928
14929         * xml-support.h (struct gdb_xml_value): Add constructor.
14930         <value>: Change type to unique_xmalloc_ptr.
14931         (gdb_xml_value_s): Remove typedef.
14932         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14933         (gdb_xml_element_start_handler): Change parameter type to
14934         std::vector.
14935         (xml_find_attribute): Likewise.
14936         * xml-support.c (xml_find_attribute): Change parameter type to
14937         std::vector and adjust.
14938         (gdb_xml_values_cleanup): Remove.
14939         (gdb_xml_parser::start_element): Adjust to std::vector.
14940         (xinclude_start_include): Change paraeter type to std::vector
14941         and adjust.
14942         * btrace.c (check_xml_btrace_version): Likewise.
14943         (parse_xml_btrace_block): Likewise.
14944         (parse_xml_btrace_pt_config_cpu): Likewise.
14945         (parse_xml_btrace_pt): Likewise.
14946         (parse_xml_btrace_conf_bts): Likewise.
14947         (parse_xml_btrace_conf_pt): Likewise.
14948         * memory-map.c (memory_map_start_memory): Likewise.
14949         (memory_map_start_property): Likewise.
14950         * osdata.c (osdata_start_osdata): Likewise.
14951         (osdata_start_item): Likewise.
14952         (osdata_start_column): Likewise.
14953         * remote.c (start_thread): Likewise.
14954         * solib-aix.c (library_list_start_library): Likewise.
14955         (library_list_start_list): Likewise.
14956         * solib-svr4.c (library_list_start_library): Likewise.
14957         (svr4_library_list_start_list): Likewise.
14958         * solib-target.c (library_list_start_segment): Likewise.
14959         (library_list_start_section): Likewise.
14960         (library_list_start_library): Likewise.
14961         (library_list_start_list): Likewise.
14962         * tracepoint.c (traceframe_info_start_memory): Likewise.
14963         (traceframe_info_start_tvar): Likewise.
14964         * xml-syscall.c (syscall_start_syscall): Likewise.
14965         * xml-tdesc.c (tdesc_start_target): Likewise.
14966         (tdesc_start_feature): Likewise.
14967         (tdesc_start_reg): Likewise.
14968         (tdesc_start_union): Likewise.
14969         (tdesc_start_struct): Likewise.
14970         (tdesc_start_flags): Likewise.
14971         (tdesc_start_enum): Likewise.
14972         (tdesc_start_field): Likewise.
14973         (tdesc_start_enum_value): Likewise.
14974         (tdesc_start_vector): Likewise.
14975
14976 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14977
14978         * extension.h (struct xmethod_worker) <clone>: Remove.
14979         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14980         Remove.
14981         (python_xmethod_worker::clone): Remove.
14982         * valops.c (find_overload_match): Use std::move instead of
14983         clone.
14984
14985 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14986
14987         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14988         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14989         <free_xmethod_worker_data>: Remove.
14990         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14991         <get_xmethod_arg_types>: Remove.
14992         <get_xmethod_result_type>: Remove.
14993         <invoke_xmethod>: Remove.
14994         * extension.c (new_xmethod_worker): Remove.
14995         (clone_xmethod_worker): Remove.
14996         (get_matching_xmethod_workers): Return void, pass std::vector by
14997         pointer.
14998         (get_xmethod_arg_types): Rename to...
14999         (xmethod_worker::get_arg_types): ... this, and adjust.
15000         (get_xmethod_result_type): Rename to...
15001         (xmethod_worker::get_result_type): ... this, and adjust.
15002         (invoke_xmethod): Remove.
15003         (free_xmethod_worker): Remove.
15004         (free_xmethod_worker_vec): Remove.
15005         * extension.h (enum ext_lang_rc): Move here from
15006         extension-priv.h.
15007         (struct xmethod_worker): Add constructor and destructor.
15008         <data>: Remove.
15009         <value>: Remove.
15010         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15011         virtual pure methods.
15012         <get_arg_types, get_result_type>: New methods.
15013         (xmethod_worker_ptr): Remove typedef.
15014         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15015         (xmethod_worker_vec): Remove typedef.
15016         (xmethod_worker_up): New typedef.
15017         (invoke_xmethod): Remove.
15018         (clone_xmethod_worker): Remove.
15019         (free_xmethod_worker): Remove.
15020         (free_xmethod_worker_vec): Remove.
15021         (get_xmethod_arg_types): Remove.
15022         (get_xmethod_result_type): Remove.
15023         * valops.c (find_method_list): Use std::vector, don't use
15024         intermediate vector.
15025         (value_find_oload_method_list): Use std::vector.
15026         (find_overload_match): Use std::vector.
15027         (find_oload_champ): Use std::vector.
15028         * value.c (value_free): Use operator delete.
15029         (value_of_xmethod): Rename to...
15030         (value_from_xmethod): ... this.  Don't assign
15031         xmethod_worker::value, take rvalue-reference.
15032         (result_type_of_xmethod): Adjust.
15033         (call_xmethod): Adjust.
15034         * value.h: Include extension.h.
15035         (struct xmethod_worker): Don't forward-declare.
15036         (value_of_xmethod): Rename to...
15037         (value_from_xmethod): ... this, take rvalue-reference.
15038         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15039         (struct python_xmethod_worker): ... this, add constructor and
15040         destructor.
15041         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15042         (gdbpy_free_xmethod_worker_data): Rename to...
15043         (python_xmethod_worker::~python_xmethod_worker): ... this and
15044         adjust.
15045         (gdbpy_clone_xmethod_worker_data): Rename to...
15046         (python_xmethod_worker::clone): ... this and adjust.
15047         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15048         temporary vector.
15049         (gdbpy_get_xmethod_arg_types): Rename to...
15050         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15051         (gdbpy_get_xmethod_result_type): Rename to...
15052         (python_xmethod_worker::do_get_result_type): ... this and
15053         adjust.
15054         (gdbpy_invoke_xmethod): Rename to...
15055         (python_xmethod_worker::invoke): ... this and adjust.
15056         (new_python_xmethod_worker): Rename to...
15057         (python_xmethod_worker::python_xmethod_worker): ... this and
15058         adjust.
15059         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15060         Remove.
15061         (gdbpy_free_xmethod_worker_data): Remove.
15062         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15063         (gdbpy_get_xmethod_arg_types): Remove.
15064         (gdbpy_get_xmethod_result_type): Remove.
15065         (gdbpy_invoke_xmethod): Remove.
15066         * python/python.c (python_extension_ops): Remove obsolete
15067         callbacks.
15068
15069 2018-01-05  Pedro Alves  <palves@redhat.com>
15070
15071         PR gdb/18653
15072         * common/signals-state-save-restore.c
15073         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15074         find a custom handler preinstalled, instead of internal erroring.
15075         But only warn if !quiet.
15076         * common/signals-state-save-restore.h
15077         (save_original_signals_state): New parameter 'quiet'.
15078         * main.c (captured_main_1): Move save_original_signals_state call
15079         after option handling, and pass QUIET.
15080
15081 2018-01-05  Pedro Alves  <palves@redhat.com>
15082
15083         * spu-tdep.c (spu_catch_start): Pass
15084         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15085
15086 2018-01-05  Pedro Alves  <palves@redhat.com>
15087
15088         PR gdb/22670
15089         * ada-lang.c (literal_symbol_name_matcher): New function.
15090         (ada_get_symbol_name_matcher): Use it for
15091         symbol_name_match_type::SEARCH_NAME.
15092         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15093         it down instead of assuming symbol_name_match_type::FULL.
15094         * block.h (block_lookup_symbol): New parameter 'match_type'.
15095         * c-valprint.c (print_unpacked_pointer): Use
15096         lookup_symbol_search_name instead of lookup_symbol.
15097         * compile/compile-object-load.c (get_out_value_type): Pass down
15098         symbol_name_match_type::SEARCH_NAME.
15099         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15100         symbol_name_match_type::FULL.
15101         * cp-support.c (cp_get_symbol_name_matcher): Handle
15102         symbol_name_match_type::SEARCH_NAME.
15103         * infrun.c (insert_exception_resume_breakpoint): Use
15104         lookup_symbol_search_name.
15105         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15106         * psymtab.c (maintenance_check_psymtabs): Use
15107         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15108         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15109         SYMBOL_SEARCH_NAME.
15110         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15111         if symbol_name_match_type::SEARCH_NAME.
15112         (lookup_symbol_in_language): Pass down
15113         symbol_name_match_type::FULL.
15114         (lookup_symbol_search_name): New.
15115         (lookup_language_this): Pass down
15116         symbol_name_match_type::SEARCH_NAME.
15117         (lookup_symbol_aux, lookup_local_symbol): New parameter
15118         'match_type'.  Pass it down.
15119         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15120         (lookup_symbol_search_name): New declaration.
15121         (lookup_symbol_in_block): New 'match_type' parameter.
15122
15123 2018-01-05  Pedro Alves  <palves@redhat.com>
15124
15125         PR gdb/22670
15126         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15127         ada_lookup_symbol.
15128         (ada_lookup_symbol): Reimplement in terms of
15129         ada_lookup_symbol_list, bits factored out from
15130         ada_lookup_encoded_symbol.
15131
15132 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15133
15134         * ada-exp.y (write_object_renaming): When subscripting an array
15135         using a symbol as the index, pass the block in call to
15136         ada_lookup_encoded_symbol when looking that symbol up.
15137
15138 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15139
15140         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15141         TYPE_INDEX_TYPE.
15142
15143 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15144
15145         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15146         the case where VALUE_LVAL (val0) is not lval_memory.
15147
15148 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15149
15150         * ada-valprint.c (print_optional_low_bound): Handle
15151         character-indexed array printing like boolean-indexed array
15152         printing.
15153
15154 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15155
15156         * NEWS: Create a new section for the next release branch.
15157         Rename the section of the current branch, now that it has
15158         been cut.
15159
15160 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15161
15162         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15163         * version.in: Bump version to 8.1.50.DATE-git.
15164
15165 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15166
15167         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15168         Add field.
15169         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15170         Add field.
15171         (default_exception_support_info) <catch_handlers_sym>: Add field.
15172         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15173         (ada_exception_name_addr_1): Add "catch handlers" handling.
15174         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15175         Update all callers.
15176         (create_excep_cond_exprs) <ex>: Add parameter.
15177         (re_set_exception): Update create_excep_cond_exprs call.
15178         (print_it_exception, print_one_exception, print_mention_exception)
15179         (print_recreate_exception): Add "catch handler" handling.
15180         (allocate_location_catch_handlers, re_set_catch_handlers)
15181         (check_status_catch_handlers, print_it_catch_handlers)
15182         (print_one_catch_handlers, print_mention_catch_handlers)
15183         (print_recreate_catch_handlers): New function.
15184         (catch_handlers_breakpoint_ops): New variable.
15185         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15186         Add parameter.  Add "catch handler" handling.
15187         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15188         Add "catch handler" handling.
15189         (ada_exception_catchpoint_cond_string): Add "catch handler"
15190         handling.
15191         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15192         call.
15193         (catch_ada_handlers_command): New function.
15194         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15195         operations structure.
15196         (_initialize_ada_language): Add "catch handlers" command entry.
15197         * NEWS: Document "catch handlers" feature.
15198
15199 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15200
15201         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15202         account when creating the array type of the slice.
15203         (ada_value_slice): Likewise.
15204
15205 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15206
15207         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15208         New enum value.
15209         (create_array_type_with_stride): Add byte_stride_prop parameter.
15210         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15211         New parameter.  Update all callers in this file.
15212         (array_type_has_dynamic_stride): New function.
15213         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15214         of arrays with dynamic byte strides.
15215         * dwarf2read.c (read_array_type): Add support for dynamic
15216         DW_AT_byte_stride attributes.
15217
15218 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15219
15220         * dwarf2read.c (read_unspecified_type): Treat
15221         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15222
15223 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15224
15225         Update copyright year range in all GDB files.
15226
15227 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15228
15229         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15230         and gdb/testsuite/gdb.base/step-line.c.
15231
15232 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15233
15234         * copyright.py (main): Dump the contents of
15235         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15236         even if BY_HAND is empty.
15237
15238 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15239
15240         * top.c (print_gdb_version): Update Copyright year in version
15241         message.
15242
15243 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15244
15245         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15246
15247 For older changes see ChangeLog-2017.
15248 \f
15249 Local Variables:
15250 mode: change-log
15251 left-margin: 8
15252 fill-column: 74
15253 version-control: never
15254 coding: utf-8
15255 End: