[PowerPC] Add support for HTM registers
[external/binutils.git] / gdb / ChangeLog
1 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
2             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3
4         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
5         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
6         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
7         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
8         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
9         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
10         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
11         Define.
12         (struct ppc_linux_features) <htm>: New field.
13         (ppc_linux_no_features): Add initializer for htm field.
14         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
15         new tdescs.
16         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
17         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
18         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
19         Define if not already defined.
20         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
21         and rs6000/powerpc-isa207-htm-vsx64l.
22         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
23         rs6000/powerpc-isa207-htm-vsx64l.xml.
24         * features/rs6000/power-htm-spr.xml: New file.
25         * features/rs6000/power-htm-core.xml: New file.
26         * features/rs6000/power64-htm-core.xml: New file.
27         * features/rs6000/power-htm-fpu.xml: New file.
28         * features/rs6000/power-htm-altivec.xml: New file.
29         * features/rs6000/power-htm-vsx.xml: New file.
30         * features/rs6000/power-htm-ppr.xml: New file.
31         * features/rs6000/power-htm-dscr.xml: New file.
32         * features/rs6000/power-htm-tar.xml: New file.
33         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
34         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
35         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
36         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
37         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
38         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
39         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
40         fetch_regset with HTM regsets.
41         (store_register, store_ppc_registers): Call store_regset with HTM
42         regsets.
43         (ppc_linux_nat_target::read_description): Set htm field in the
44         features struct if needed.
45         * ppc-linux-tdep.c: Include
46         features/rs6000/powerpc-isa207-htm-vsx32l.c and
47         features/rs6000/powerpc-isa207-htm-vsx64l.c.
48         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
49         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
50         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
51         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
52         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
53         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
54         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
55         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
56         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
57         (ppc32_linux_ctarregset): New globals.
58         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
59         (ppc_linux_collect_core_cpgrregset): New function.
60         (ppc_linux_iterate_over_regset_sections): Call back with the htm
61         regsets.
62         (ppc_linux_core_read_description): Check if the tm spr section is
63         present and set htm in the features struct.
64         (_initialize_ppc_linux_tdep): Call
65         initialize_tdesc_powerpc_isa207_htm_vsx32l and
66         initialize_tdesc_powerpc_isa207_htm_vsx64l.
67         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
68         Declare.
69         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
70         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
71         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
72         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
73         New fields.
74         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
75         Likewise.
76         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
77         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
78         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
79         New enum fields.
80         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
81         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
82         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
83         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
84         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
85         <PPC_CTAR_REGNUM>: Likewise.
86         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
87         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
88         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
89         (IS_CEFP_PSEUDOREG): Define.
90         (rs6000_register_name): Hide the upper halves of checkpointed VSX
91         registers.  Return names for the checkpointed DFP, VSX, and EFP
92         pseudo registers.
93         (rs6000_pseudo_register_type): Remove initial assert and raise an
94         internal error in the else clause instead.  Return types for the
95         checkpointed DFP, VSX, and EFP pseudo registers.
96         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
97         checkpointed DFP pseudo registers.
98         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
99         checkpointed VSX pseudo registers.
100         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
101         from efpr_pseudo_register_read and
102         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
103         registers.
104         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
105         Handle checkpointed DFP, VSX, and EFP registers.
106         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
107         (efp_ax_pseudo_register_collect): New functions.
108         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
109         register logic to new functions.  Handle checkpointed DFP, VSX,
110         and EFP pseudo registers.
111         (rs6000_gdbarch_init): Look for and validate the htm features.
112         Include checkpointed DFP, VSX and EFP pseudo-registers.
113         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
114         HTM registers.
115
116 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
117
118         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
119         without altivec or fpu.
120
121 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
122             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
123
124         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
125         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
126         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
127         Define if not already defined.
128         * features/rs6000/power-ebb.xml: New file.
129         * features/rs6000/power-linux-pmu.xml: New file.
130         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
131         features.
132         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
133         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
134         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
135         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
136         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
137         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
138         fetch_regset with ebb and pmu regsets.
139         (store_register, store_ppc_registers): Call store_regset with ebb
140         and pmu regsets.
141         (ppc_linux_nat_target::read_description): Set isa207 field in the
142         features struct if ebb and pmu are avaiable.
143         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
144         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
145         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
146         and pmu regsets.
147         (ppc_linux_core_read_description): Check if the pmu section is
148         present and set isa207 in the features struct.
149         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
150         (ppc32_linux_pmuregset): Declare.
151         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
152         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
153         <ppc_sier_regnum>: New field.
154         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
155         New enum values.
156         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
157         values.
158         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
159         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
160         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
161         ebb and pmu features.
162
163 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
164             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
165
166         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
167         (tdesc_powerpc_isa207_vsx64l): Declare.
168         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
169         (struct ppc_linux_features) <isa207>: New field.
170         (ppc_linux_no_features): Add initializer for isa207 field.
171         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
172         new tdescs.
173         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
174         (NT_PPC_TAR): Define if not already defined.
175         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
176         rs6000/powerpc-isa207-vsx64l.
177         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
178         rs6000/powerpc-isa207-vsx64l.xml.
179         * features/rs6000/power-tar.xml: New file.
180         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
181         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
182         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
183         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
184         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
185         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
186         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
187         fetch_regset with the TAR regset.
188         (store_register, store_ppc_registers): Call store_regset with the
189         TAR regset.
190         (ppc_linux_nat_target::read_description): Set isa207 field in the
191         features struct if needed.
192         * ppc-linux-tdep.c: Include
193         features/rs6000/powerpc-isa207-vsx32l.c and
194         features/rs6000/powerpc-isa207-vsx64l.c.
195         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
196         (ppc_linux_iterate_over_regset_sections): Call back with the tar
197         regset.
198         (ppc_linux_core_read_description): Check if the tar section is
199         present and set isa207 in the features struct.
200         (_initialize_ppc_linux_tdep): Call
201         initialize_tdesc_powerpc_isa207_vsx32l and
202         initialize_tdesc_powerpc_isa207_vsx64l.
203         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
204         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
205         (enum) <PPC_TAR_REGNUM>: New enum value.
206         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
207         feature.
208         (ppc_process_record_op31): Record changes to TAR.
209
210 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
211             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
212
213         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
214         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
215         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
216         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
217         (struct ppc_linux_features) <ppr_dscr>: New field.
218         (ppc_linux_no_features): Add initializer for ppr_dscr field.
219         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
220         new tdescs.
221         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
222         Define if not already defined.
223         * features/Makefile (WHICH): Add
224         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
225         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
226         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
227         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
228         * features/rs6000/power-dscr.xml: New file.
229         * features/rs6000/power-ppr.xml: New file.
230         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
231         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
232         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
233         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
234         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
235         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
236         * ppc-linux-nat.c: Include <sys/uio.h>.
237         (fetch_regset, store_regset, check_regset): New functions.
238         (fetch_register, fetch_ppc_registers): Call fetch_regset with
239         DSCR and PPR regsets.
240         (store_register, store_ppc_registers): Call store_regset with
241         DSCR and PPR regsets.
242         (ppc_linux_get_hwcap2): New function.
243         (ppc_linux_nat_target::read_description): Call
244         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
245         features struct if needed.
246         * ppc-linux-tdep.c: Include
247         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
248         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
249         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
250         (ppc32_linux_dscrregset): New globals.
251         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
252         and dscr regsets.
253         (ppc_linux_core_read_description): Check if the ppr and dscr
254         sections are present and set ppr_dscr in the features struct.
255         (_initialize_ppc_linux_tdep): Call
256         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
257         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
258         * ppc-linux-tdep.h (ppc32_linux_pprregset)
259         (ppc32_linux_dscrregset): Declare.
260         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
261         <ppc_dscr_regnum>: New field.
262         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
263         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
264         and dscr features.
265         (ppc_process_record_op31): Record changes to PPR and DSCR.
266
267 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
268
269         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
270         second initializer line for the have_* variables.  Initialize
271         have_fpu to 0 instead of 1.
272
273 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
274
275         * arch/ppc-linux-common.c (ppc_linux_match_description):
276         Parenthesize tdesc assignements and indent them properly.
277
278 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
279
280         * ppc-linux-nat.c (fetch_register): Change if statement to else
281         if.
282         (store_register): Likewise.
283
284 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
285
286         * rs6000-tdep.c: Remove reggroups.h include.
287         (rs6000_pseudo_register_reggroup_p): Remove.
288         (rs6000_gdbarch_init): Remove call to
289         set_tdesc_pseudo_register_reggroup_p.
290
291 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
292
293         * reggroups.c (default_register_reggroup_p): Return true for
294         decfloat registers and float_reggroup.
295
296 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
297
298         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
299         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
300         ppc_linux_collect_vrregset by regcache_collect_regset.
301
302 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
303
304         * linux-tdep.c (linux_collect_regset_section_cb): Use
305         std::vector<gdb_byte> instead of char * and malloc for buf.
306         Remove xfree.
307
308 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
309
310         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
311         symtab_start instead of always using language_unknown.
312
313 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
314
315         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
316         READ_P parameter, catch and ignore register access errors from
317         either the old or new MISA location.
318         (riscv_has_feature): Update call to riscv_read_misa_reg.
319
320 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
321
322         * python/py-function.c (convert_values_to_python): Return
323         gdbpy_ref<>.  Add header comment.
324         (fnpy_call): Adjust.
325
326 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
327
328         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
329         (cmdpy_completer_handle_brkchars): Adjust.
330         (cmdpy_completer): Adjust.
331
332 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
333
334         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
335         Pass correct regnum to raw_supply_zeroed.
336
337 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
338
339         * regcache.c (cooked_read_test): Add CSKY to the list of
340         architectures with a save_reggroup
341
342 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
343
344         PR gdb/23368
345         * infrun.c (follow_exec): In the follow_exec_mode_new case,
346         transfer terminal state from old new new inferior.
347         * terminal.h (swap_terminal_info): New function.
348         * inflow.c (swap_terminal_info): New function.
349
350 2018-10-23  Tom Tromey  <tom@tromey.com>
351
352         * record-btrace.c (get_thread_current_frame_id): Rename from
353         get_thread_current_frame.  Return a frame_id.
354         (record_btrace_start_replaying): Update.
355
356 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
357
358         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
359         for CSRs.
360
361 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
362
363         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
364         have_nonsteppable_watchpoint attribute to 1.
365
366 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
367
368         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
369         register names.
370         (struct register_alias): Rename to...
371         (struct riscv_register_alias): ...this, and update comment.
372         (riscv_register_aliases): Update type, and alias names.  Remove
373         CSR names from this list.
374         (riscv_register_name): Use riscv_gdb_reg_names for int and float
375         register names.  Add an extra assertion.
376         (riscv_is_regnum_a_named_csr): New function.
377         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
378
379 2018-10-22  Jim Wilson  <jimw@sifive.com>
380
381         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
382         FP reg smaller than FP reg size, and fill with -1 instead of 0.
383
384         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
385         (riscv_register_type): Use them.
386         (riscv_print_one_register_info): Handle union of floats same as float.
387         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
388         riscv_fpreg_q_type fields.
389
390 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
391
392         * gdbarch.sh (gdbarch_num_cooked_regs): New.
393         * gdbarch.h: Re-generate.
394         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
395         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
396         * eval.c (evaluate_subexp_standard): Likewise.
397         * findvar.c (value_of_register): Likewise.
398         (value_of_register_lazy): Likewise.
399         (address_from_register): Likewise.
400         * frame.c (get_frame_register_bytes): Likewise.
401         * gdbarch-selftests.c (register_to_value_test): Likewise.
402         * h8300-tdep.c (h8300_register_type): Likewise.
403         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
404         (i386_svr4_reg_to_regnum): Likewise.
405         * infcmd.c (default_print_registers_info): Likewise.
406         (registers_info): Likewise.
407         (print_vector_info): Likewise.
408         (default_print_float_info): Likewise.
409         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
410         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
411         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
412         (mi_cmd_data_list_changed_registers): Likewise.
413         (mi_cmd_data_list_register_values): Likewise.
414         (mi_cmd_data_write_register_values): Likewise.
415         (mi_cmd_trace_frame_collected): Likewise.
416         * mips-tdep.c (print_gp_register_row): Likewise.
417         (mips_print_registers_info): Likewise.
418         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
419         * regcache.c (init_regcache_descr): Likewise.
420         (register_size): Likewise.
421         (register_dump::dump): Likewise.
422         (cooked_read_test): Likewise.
423         (cooked_write_test): Likewise.
424         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
425         (rs6000_gdbarch_init): Likewise.
426         * stabsread.c (stab_reg_to_regnum): Likewise.
427         * stack.c (info_frame_command): Likewise.
428         * target-descriptions.c (tdesc_register_name): Likewise.
429         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
430         * tui/tui-regs.c (tui_show_register_group): Likewise.
431         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
432         (user_reg_map_regnum_to_name): Likewise.
433         (value_of_user_reg): Likewise.
434         (maintenance_print_user_registers): Likewise.
435         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
436         (xtensa_register_name): Likewise.
437         (xtensa_register_type): Likewise.
438         (xtensa_reg_to_regnum): Likewise.
439         (xtensa_pseudo_register_read): Likewise.
440         (xtensa_pseudo_register_write): Likewise.
441
442 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
443
444         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
445         correctly-sized buffer with raw_read.
446         (amd64_pseudo_register_write): Use correctly-sized buffer for
447         raw_read/raw_write.
448
449 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
450
451         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
452         in add_prefix_cmd of set print type.
453
454 2018-10-19  Tom Tromey  <tom@tromey.com>
455
456         PR tui/18388:
457         * NEWS: Mention tabset deprecation.
458         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
459         (update_tab_width): New function.
460         (tui_set_tab_width, tui_show_tab_width): New functions.
461         (tui_set_tab_width_command): Use update_tab_width.
462         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
463         Add new "set tui tab-width" command.
464         * tui/tui-source.c (tui_set_source_content): Update.
465         * tui/tui-disasm.c (tui_set_disassem_content): Update.
466         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
467         Don't declare.
468         (tui_tab_width): Declare.
469         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
470         (tui_set_default_tab_len): Remove.
471
472 2018-10-19  Tom Tromey  <tom@tromey.com>
473
474         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
475         (key_is_backspace, tui_getc): Don't declare.
476         * tui/tui-io.c (key_is_start_sequence): Now static.
477         (key_is_end_sequence, key_is_backspace): Remove.
478         (tui_getc): Now static.
479
480 2018-10-19  Tom Tromey  <tom@tromey.com>
481
482         * symfile.c (reread_symbols): Clear "static_links".
483
484 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
485
486         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
487         define.
488         (aarch64_linux_sigframe_init): Extra boundary checks.
489
490 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
491
492         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
493         the possibly non-existent tdesc type 'vec128', but the type of raw
494         register v16 instead.
495
496 2018-10-19  Gary Benson <gbenson@redhat.com>
497
498         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
499
500 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
501
502         PR cli/23785
503         * cli/cli-dump.c (restore_binary_file): Check if "file" is
504         NULL.
505
506 2018-10-17  Paul Koning  <paul_koning@dell.com>
507
508         * charset.c (convert_between_encodings): Fix unsigned overflow.
509
510 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
511
512         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
513         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
514         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
515         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
516         New functions.
517         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
518         and fbsd_info_proc_mappings_header.
519         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
520         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
521         New.
522
523 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
524
525         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
526         Solaris Maintainer.
527
528 2018-10-15  Tom Tromey  <tom@tromey.com>
529
530         * tui/tui.c (strcat_to_buf): Remove casts.
531         * tui/tui-winsource.c (tui_show_source_line)
532         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
533         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
534         * tui/tui-windata.c (tui_first_data_item_displayed)
535         (tui_delete_data_content_windows, tui_erase_data_content)
536         (tui_display_all_data, tui_display_data_from)
537         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
538         * tui/tui-win.c (tui_set_win_height)
539         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
540         casts.
541         * tui/tui-win.c (tui_resize_all): Remove casts.
542         (tui_scroll_backward_command, tui_set_focus)
543         (tui_set_tab_width_command): Likewise.
544         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
545         * tui/tui-regs.c (tui_show_register_group): Remove cast.
546         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
547         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
548         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
549         Remove casts.
550
551 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
552
553         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
554         AArch64/ARM maintainer.
555
556 2018-10-11  Gary Benson <gbenson@redhat.com>
557
558         * interps.h (interp::m_name): Make private and mutable.
559         * interps.c (interp::~interp): Free m_name.
560
561 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
562             Simon Marchi <simark@simark.ca>
563
564         * README (`configure' options): Add documentation for new
565         "--enable-unit-tests" option.
566         * acinclude.m4: Include "selftest.m4".
567         * configure: Regenerate.
568         * configure.ac: Use "GDB_AC_SELFTEST".
569         * maint.c (maintenance_selftest): Update message informing
570         that selftests have been disabled.
571         (maintenance_info_selftests): Likewise.
572         * selftest.m4: New file.
573
574 2018-10-10  Gary Benson <gbenson@redhat.com>
575
576         * remote.c (remote_target::remote_send_printf): Add
577         missing va_end found by Coverity.
578
579 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
580
581         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
582
583 2018-10-09  Tom Tromey  <tom@tromey.com>
584
585         * configure: Rebuild.
586         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
587         * NEWS: Update --enable-ubsan documentation.
588
589 2018-10-09  Gary Benson <gbenson@redhat.com>
590
591         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
592         found by Coverity.
593
594 2018-10-08  Tom Tromey  <tom@tromey.com>
595
596         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
597         variable.
598         (riscv_fbsd_init_abi): Likewise.
599
600 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
601         * valops.c (value_struct_elt_for_reference): Rename local variable
602         to work around the shadowing a previous local warning.
603
604 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
605
606         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
607         * NEWS: Mention new FreeBSD/riscv native configuration.
608         * configure.host: Add riscv*-*-freebsd*.
609         * configure.nat: Likewise.
610         * riscv-fbsd-nat.c: New file.
611
612 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
613
614         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
615         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
616         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
617         * NEWS: Mention new FreeBSD/riscv target.
618         * configure.tgt: Add riscv*-*-freebsd*.
619         * riscv-fbsd-tdep.c: New file.
620         * riscv-fbsd-tdep.h: New file.
621
622 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
623
624         * regcache.h (struct regcache_map_entry): Note that this type can
625         be used with traditional frame caches.
626         * trad-frame.c (trad_frame_set_reg_regmap): New.
627         * trad-frame.h (trad_frame_set_reg_regmap): New.
628
629 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
630
631         PR c++/16841
632         * valops.c (get_virtual_base_offset): New function.
633         (value_struct_elt_for_reference): Use it to get virtual base offset
634         and add it in calculating class member address.
635
636 2018-10-08   John Darrington <john@darrington.wattle.id.au>
637
638     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
639       (check_producer): Check if the producer is codewarrior.
640       (producer_is_codewarrior): New function.
641       (lnp_state_machine::record_line): Ignore is_stmt flag for records
642        produced by codewarrior.
643       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
644
645 2018-10-06  Tom Tromey  <tom@tromey.com>
646
647         PR python/19399:
648         * python/py-inferior.c: Add "architecture" entry.
649         (infpy_architecture): New function.
650
651 2018-10-06  Tom Tromey  <tom@tromey.com>
652
653         PR python/21765:
654         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
655         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
656         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
657         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
658
659 2018-10-06  Tom Tromey  <tom@tromey.com>
660
661         PR build/17077:
662         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
663         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
664         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
665         #include.
666
667 2018-10-06  Tom Tromey  <tom@tromey.com>
668
669         * python/py-breakpoint.c (bppy_get_location): Handle a
670         bp_breakpoint without a location.
671
672 2018-10-06  Tom Tromey  <tom@tromey.com>
673
674         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
675         (_RegEx): Reformat help text.
676         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
677         (AnyCallerIs, AnyCallerMatches): Reformat help text.
678         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
679         text.
680         * python/lib/gdb/command/xmethods.py (InfoXMethod)
681         (EnableXMethod, DisableXMethod): Remove help indentation.
682         Capitalize meta-syntactic variables.
683         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
684         (EnableUnwinder, DisableUnwinder): Remove help indentation.
685         Capitalize meta-syntactic variables.
686         * python/lib/gdb/command/explore.py (ExploreCommand)
687         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
688         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
689         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
690         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
691         Remove help indentation.
692         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
693         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
694         (DisableFrameFilter, SetFrameFilterPriority)
695         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
696
697 2018-10-06  Tom Tromey  <tom@tromey.com>
698
699         PR tui/28819:
700         * tui/tui-io.c (gdb_wgetch): New function.
701         (tui_mld_getc, tui_getc): Use it.
702
703 2018-10-05  Tom Tromey  <tom@tromey.com>
704
705         * sol-thread.c (sol_thread_target::wait): Rename inner
706         "save_ptid".
707
708 2018-10-04  Tom Tromey  <tom@tromey.com>
709
710         * configure: Rebuild.
711         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
712
713 2018-10-04  Tom Tromey  <tom@tromey.com>
714
715         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
716         declaration of "block".
717
718 2018-10-04  Tom Tromey  <tom@tromey.com>
719
720         * common/filestuff.c (fdwalk): Remove inner declaration of
721         "result".
722
723 2018-10-04  Tom Tromey  <tom@tromey.com>
724
725         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
726         "structs_addr" and hoist declaration.
727
728 2018-10-04  Tom Tromey  <tom@tromey.com>
729
730         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
731         variable "size".
732
733 2018-10-04  Tom Tromey  <tom@tromey.com>
734
735         * mdebugread.c (parse_partial_symbols): Use std::string.
736
737 2018-10-04  Tom Tromey  <tom@tromey.com>
738
739         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
740         * p-valprint.c (pascal_val_print): Split inner "i" variable.
741         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
742         header.
743         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
744         more inner scope.
745         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
746         * varobj.c (varobj_update): Rename inner "newobj",
747         "type_changed".
748         * valprint.c (generic_emit_char): Rename inner "buf".
749         * valops.c (find_overload_match): Rename inner "temp".
750         (value_struct_elt_for_reference): Declare "v" in more inner
751         scope.
752         * v850-tdep.c (v850_push_dummy_call): Rename "len".
753         * unittests/array-view-selftests.c (run_tests): Rename inner
754         "vec".
755         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
756         header.
757         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
758         "tsv" in more inner scope.
759         (print_one_static_tracepoint_marker): Rename inner
760         "tuple_emitter".
761         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
762         (tic6x_push_dummy_call): Don't redeclare "addr".
763         * target-float.c: Declare "dto" lower.
764         * symtab.c (lookup_local_symbol): Rename inner "sym".
765         (find_pc_sect_line): Rename inner "pc".
766         * stack.c (print_frame): Don't redeclare "gdbarch".
767         (return_command): Rename inner "gdbarch".
768         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
769         "sp".
770         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
771         header.
772         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
773         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
774         scope.
775         * remote.c (remote_target::update_thread_list): Don't redeclare
776         "tp".
777         (remote_target::process_initial_stop_replies): Rename inner
778         "thread".
779         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
780         (remote_target::wait_as): Don't redeclare "stop_reply".
781         (remote_target::get_thread_local_address): Rename inner
782         "result".
783         (remote_target::get_tib_address): Likewise.
784
785         * regcache.c (cooked_read_test): Rename "regnum".
786         * record-btrace.c (cmd_record_btrace_start): Rename inner
787         "exception".
788         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
789         loop header.
790         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
791         header.
792         (ppu2spu_sniffer): Rename inner "buf".
793         * parse.c (operator_check_standard): Rename inner "type",
794         "objfile".
795         * p-valprint.c (pascal_val_print): Introduce new scope for
796         "low_bound", "high_bound".
797         * p-exp.y (yylex): Declare "i" in loop header.
798         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
799         Lower declaration of "s".
800         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
801         header.
802         (nios2_push_dummy_call): Rename "len".
803         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
804         "buf".
805         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
806         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
807         (linux_xfer_osdata_modules): Likewise.
808         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
809         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
810         (mips_o64_push_dummy_call): Likewise.
811         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
812         "op".
813         * mi/mi-main.c (list_available_thread_groups): Rename inner
814         "tuple_emitter".
815         (mi_cmd_data_read_memory): Rename inner "opts".
816         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
817         "tuple_emitter".
818         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
819         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
820         more inner scope.
821         (parse_partial_symbols): Rename inner "pst", "p", "name"
822         * main.c (captured_main_1): Rename inner "i"s.
823         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
824         "oso2".
825         * linux-tdep.c (linux_info_proc): Rename inner "filename".
826         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
827         * infrun.c (handle_no_resumed): Don't redeclare "thread".
828         (handle_signal_stop): Rename inner "gdbarch".
829         (handle_command): Declare "signum" in loop header.
830         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
831         "status".
832         (examine_prologue): Rename inner "sol" and "sof".
833         (ia64_extract_return_value): Rename inner "val".  Declare another
834         "val" in a more inner scope.
835         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
836         inner scope.
837         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
838         "except".
839         * findvar.c (default_read_var_value): Don't redeclare "addr".
840         * f-exp.y (yylex): Declare "i" in loop header.
841         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
842         Rename inner "type", "expect_type".
843         (evaluate_subexp_for_sizeof): Rename inner "pc".
844         * elfread.c (elf_symfile_read): Rename inner "abfd".
845         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
846         "bytes_read".
847         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
848         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
849         (dwarf_decode_line_header): Rename inner "lh".
850         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
851         "offset".  Declare "i" in loop header.
852         (disassemble_dwarf_expression): Rename inner "addr_size".
853         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
854         inner "result".
855         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
856         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
857         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
858         "inner_list_emitter".
859         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
860         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
861         declaration in a block.
862         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
863         * cp-valprint.c (cp_print_value_fields): Don't redeclare
864         "obstack_final_size".
865         * cp-support.c (inspect_type): Declare "i" in loop header.
866         * compile/compile.c (compile_instance::insert_symbol_error):
867         Rename inner "e".
868         * common/agent.c (agent_run_command): Remove inner "ret"
869         declaration.
870         * coffread.c (coff_symfile_read): Rename inner "name".
871         (coff_symfile_read): Rename inner "abfd".
872         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
873         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
874         "high".
875         * c-exp.y (lex_one_token): Move "len" declaration lower.
876         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
877         "gdbarch".
878         (create_exception_master_breakpoint): Likewise.  Don't redeclare
879         "b".
880         (watch_command_1): Declare "mark" later.
881         (clear_command): Don't shadow "a" or "b".
882         (delete_command): Rename inner "b".
883         (delete_trace_command): Likewise.
884         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
885         "op".
886         (arm_gdbarch_init): Remove inner "e_flags".
887         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
888         "offset" in inner blocks.
889
890 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
891
892         * dwarf-index-write.c (file_write): Don't write if the vector is
893         empty.
894
895 2018-10-05  Tom de Vries  <tdevries@suse.de>
896
897         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
898         PyArg_ParseTuple call.
899
900 2018-10-05  Tom de Vries  <tdevries@suse.de>
901
902         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
903         PyArg_ParseTuple call.
904
905 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
906
907         * psymtab.c (recursively_search_psymtabs): Reformat parameters
908         to avoid exceeding 80 characters per line limit.
909
910 2018-10-04  Tom Tromey  <tom@tromey.com>
911
912         * symfile.c (syms_from_objfile_1, finish_new_objfile)
913         (reread_symbols): Update.
914         * complaints.h (clear_complaints): Remove argument.
915         * complaints.c (enum complaint_series): Remove.
916         (series): Remove global.
917         (complaint_internal): Update.
918         (clear_complaints): Remove argument.
919
920 2018-10-04  Tom Tromey  <tom@tromey.com>
921
922         * symfile.c (symbol_file_add_with_addrs): Do not print "no
923         debugging symbols" message if there is a separate debug objfile.
924
925 2018-10-04  Tom Tromey  <tom@tromey.com>
926
927         PR cli/19551:
928         * symfile.c (symbol_file_add_with_addrs): Update output.
929         * psymtab.c (require_partial_symbols): Update output.
930
931 2018-10-04  Tom Tromey  <tom@tromey.com>
932
933         PR cli/22234:
934         * complaints.c: Emit \n.
935
936 2018-10-04  Tom Tromey  <tom@tromey.com>
937
938         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
939         (separate_debug_file_exists, find_separate_debug_file)
940         (add_symbol_file_command, reread_symbols, allocate_symtab)
941         (allocate_compunit_symtab): Use filtered printing, not
942         unfiltered.
943         * psymtab.c (require_partial_symbols, dump_psymtab)
944         (allocate_psymtab): Use filtered printing, not unfiltered.
945
946 2018-10-04  Tom Tromey  <tom@tromey.com>
947
948         * complaints.c (complaint_internal): Correctly check complaint
949         count.
950
951 2018-10-04  Tom Tromey  <tom@tromey.com>
952
953         * complaints.h (struct complaints): Remove declaration.
954         * complaints.c (clear_complaints): Remove an unused variable.
955
956 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
957
958         * MAINTAINERS (Write After Approval): Add self.
959
960 2018-10-03  Tom Tromey  <tom@tromey.com>
961
962         * guile/scm-value.c (gdbscm_value_to_string): Initialize
963         "buffer_contents".
964         * coffread.c (coff_symtab_read): Initialize "newobj".
965
966 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
967
968         * dwarf2read.c (read_func_scope): Remove struct keyword in
969         range-based for.
970
971 2018-10-03  Tom Tromey  <tom@tromey.com>
972
973         * README: Mention --enable-ubsan.
974         * NEWS: Mention --enable-ubsan.
975         * acinclude.m4: Include sanitize.m4.
976         * configure: Rebuild.
977         * configure.ac: Call AM_GDB_UBSAN.
978         * sanitize.m4: New file.
979
980 2018-10-03  Tom Tromey  <tom@tromey.com>
981
982         * expression.h (enum exp_opcode): Use uint8_t as base type.
983         * expprint.c (op_name): Handle invalid opcodes.
984
985 2018-10-03  Tom Tromey  <tom@tromey.com>
986
987         * parse.c (prefixify_expression): Add assert.
988         (parse_exp_in_context_1): Throw exception if the expression is
989         empty.
990
991 2018-10-03  Tom Tromey  <tom@tromey.com>
992
993         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
994
995 2018-10-03  Tom Tromey  <tom@tromey.com>
996
997         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
998
999 2018-10-03  Tom Tromey  <tom@tromey.com>
1000
1001         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1002         unsigned.
1003
1004 2018-10-03  Tom Tromey  <tom@tromey.com>
1005
1006         * findvar.c (extract_integer): Do work in an unsigned type.
1007
1008 2018-10-03  Tom Tromey  <tom@tromey.com>
1009
1010         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1011         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1012         base type.
1013         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1014         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1015         type.
1016         * c-lang.h (enum c_string_type_values): Use unsigned as base
1017         type.
1018         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1019
1020 2018-10-03  Tom Tromey  <tom@tromey.com>
1021
1022         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1023         <~dwarf2_frame_state_reg_info>: Update.
1024         <dwarf2_frame_state_reg_info>: Update.
1025         <alloc_regs>: Add assertion.  Update.
1026         <reg>: Now a std::vector.
1027         <num_regs>: Remove.
1028         <swap>: Update.
1029         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1030         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1031
1032 2018-10-03  Tom Tromey  <tom@tromey.com>
1033
1034         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1035
1036 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1037
1038         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1039
1040 2018-10-02  Tom Tromey  <tom@tromey.com>
1041
1042         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1043
1044 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1045
1046         * NEWS: Mention changed commands.
1047         * ser-uds.c: New file.
1048         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1049         * configure: Regenerate.
1050         * Makefile.in: Add new file.
1051         * serial.c (serial_open): Check if filename is a socket
1052           and lookup the appropriate interface accordingly.
1053
1054 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1055
1056         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1057         define.
1058         (AARCH64_EXTRA_MAGIC): Likewise.
1059         (AARCH64_FPSIMD_MAGIC): Likewise.
1060         (AARCH64_SVE_MAGIC): Likewise.
1061         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1062         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1063         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1064         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1065         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1066         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1067         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1068         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1069         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1070         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1071         (read_aarch64_ctx): Add function.
1072         (aarch64_linux_sigframe_init): Detect FP registers.
1073
1074 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1075
1076         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1077         (AARCH64_D0_REGNUM): Likewise.
1078         (AARCH64_S0_REGNUM): Likewise.
1079         (AARCH64_H0_REGNUM): Likewise.
1080         (AARCH64_B0_REGNUM): Likewise.
1081         (AARCH64_SVE_V0_REGNUM): Likewise.
1082         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1083         (AARCH64_D0_REGNUM): Likewise.
1084         (AARCH64_S0_REGNUM): Likewise.
1085         (AARCH64_H0_REGNUM): Likewise.
1086         (AARCH64_B0_REGNUM): Likewise.
1087         (AARCH64_SVE_V0_REGNUM): Likewise.
1088
1089 2018-10-01  Gary Benson <gbenson@redhat.com>
1090
1091         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1092         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1093         prfpregset_t instead of gdb_prfpregset_t.
1094         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1095         * configure, config.in: Rebuild.
1096
1097 2018-10-01  Gary Benson <gbenson@redhat.com>
1098
1099         * common/gdb_proc_service.h: New file, factored out from...
1100         * gdb_proc_service.h: Moved common code to the above file.
1101         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1102
1103 2018-10-01  Gary Benson <gbenson@redhat.com>
1104
1105         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1106         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1107
1108 2018-10-01  Gary Benson <gbenson@redhat.com>
1109
1110         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1111         (AC_CHECK_HEADERS): Check for linux/elf.h.
1112         * configure, config.in: Rebuild.
1113         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1114         doesn't define elf_fpregset_t.
1115
1116 2018-10-01  Gary Benson <gbenson@redhat.com>
1117
1118         * gdb_proc_service.h: Whitespace change.
1119
1120 2018-10-01  Tom Tromey  <tom@tromey.com>
1121
1122         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1123         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1124         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1125
1126 2018-10-01  Tom Tromey  <tom@tromey.com>
1127
1128         * README: Minor change.
1129
1130 2018-09-30  Pedro Alves  <palves@redhat.com>
1131
1132         * darwin-nat-info.c (darwin_debug_regions_recurse)
1133         (info_mach_exceptions_command): Remove unused local variables.
1134         * darwin-nat.c (darwin_decode_notify_message)
1135         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1136         (darwin_stop_inferior, darwin_setup_exceptions)
1137         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1138         (darwin_nat_target::attach, darwin_nat_target::detach)
1139         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1140         local variables.
1141         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1142         variables.
1143
1144 2018-09-29  Tom Tromey  <tom@tromey.com>
1145
1146         * README: Remove some leftover text.
1147
1148 2018-09-29  Tom Tromey  <tom@tromey.com>
1149
1150         * PROBLEMS: Rewrite.
1151         * README: Update.
1152
1153 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1154
1155         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1156         case with explicit breakpoint kind.
1157         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1158         'additional_info' and related logic.
1159         (riscv_debug_breakpoints): New variable.
1160         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1161         instruction to determine the breakpoint kind.
1162         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1163         flag.  Update description of 'set/show riscv
1164         use-compressed-breakpoints' flag.
1165
1166 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1167
1168         (NEWS): Mention changes to frame related commands.
1169         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1170         (add_prefix_cmd_suppress_notification): New function.
1171         (add_com_suppress_notification): Call
1172         add_cmd_suppress_notification.
1173         * command.h (add_cmd_suppress_notification): Declare.
1174         (add_prefix_cmd_suppress_notification): Declare.
1175         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1176         (parse_frame_specification): Moved from stack.c, with
1177         simplification to handle a single argument.
1178         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1179         switch to the selected frame.  Add a header comment.
1180         * stack.c: Remove 'safe-ctype.h' include.
1181         (find_frame_for_function): Add declaration.
1182         (find_frame_for_address): New function.
1183         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1184         (frame_selection_by_function_completer): New function.
1185         (info_frame_command): Rename to...
1186         (info_frame_command_core): ...this, and update parameter types.
1187         (select_frame_command): Rename to...
1188         (select_frame_command_core): ...this, and update parameter types.
1189         (frame_command): Rename to...
1190         (frame_command_core): ...this, and update parameter types.
1191         (class frame_command_helper): New class to wrap implementations of
1192         frame related sub-commands.
1193         (frame_apply_cmd_list): New static global.
1194         (frame_cmd_list): Make static.
1195         (select_frame_cmd_list): New global for sub-commands.
1196         (info_frame_cmd_list): New global for sub-commands.
1197         (_initialize_stack): Register sub-commands for 'frame',
1198         'select-frame', and 'info frame'.  Update 'frame apply' commands
1199         to use frame_apply_cmd_list.  Move function local static
1200         frame_apply_list to file static frame_apply_cmd_list for
1201         consistency.
1202         * stack.h (select_frame_command): Delete declarationn.
1203         (select_frame_for_mi): Declare new function.
1204
1205 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1206
1207         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1208         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1209         and NOP.
1210
1211 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1212
1213         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1214
1215 2018-09-26  Tom Tromey  <tom@tromey.com>
1216
1217         * valops.c (auto_abandon): Remove dead code.
1218
1219 2018-09-26  Tom Tromey  <tom@tromey.com>
1220
1221         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1222
1223 2018-09-24  Tom Tromey  <tom@tromey.com>
1224
1225         * common/pathstuff.c (get_standard_cache_dir): Make
1226         "xdg_cache_home" and "home" const.
1227         * top.c (init_history): Make "tmpenv" const.
1228         * main.c (get_init_files): Make "homedir" const.
1229
1230 2018-09-23  Tom Tromey  <tom@tromey.com>
1231
1232         PR python/18852:
1233         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1234
1235 2018-09-23  Tom Tromey  <tom@tromey.com>
1236
1237         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1238         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1239         * python/python-internal.h (gdbpy_handle_exception): Declare.
1240         * python/py-utils.c (gdbpy_handle_exception): New function.
1241
1242 2018-09-23  Tom Tromey  <tom@tromey.com>
1243
1244         PR python/17284:
1245         * python/py-type.c (typy_template_argument): Check for negative
1246         argument number.
1247
1248 2018-09-23  Tom Tromey  <tom@tromey.com>
1249
1250         PR python/14062:
1251         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1252
1253 2018-09-23  Tom Tromey  <tom@tromey.com>
1254
1255         PR python/18170:
1256         * python/py-value.c (valpy_int): Allow conversion from pointer
1257         type.
1258
1259 2018-09-23  Tom Tromey  <tom@tromey.com>
1260
1261         PR python/20126:
1262         * python/py-value.c (valpy_int): Respect type sign.
1263
1264 2018-09-23  Tom Tromey  <tom@tromey.com>
1265
1266         PR python/18352;
1267         * python/py-value.c (valpy_float): Allow conversions from int or
1268         char.
1269         (valpy_int, valpy_long): Allow conversions from float.
1270
1271 2018-09-23  Tom Tromey  <tom@tromey.com>
1272
1273         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1274         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1275
1276 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1277
1278         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1279         __sighndlr.
1280         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1281
1282 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1283
1284         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1285         target_terminal::ours().
1286
1287 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1288
1289         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1290         of vl to ULONGEST.
1291
1292 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1293
1294         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1295         redundant condition.
1296
1297 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1298
1299         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1300
1301         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1302         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1303         * sol-thread.c (ps_pdmodel): Don't guard definition.
1304
1305         * procfs.c: Fix formatting.
1306
1307         * procfs.c (sysset_t_alloc): Remove.
1308         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1309         (procfs_debug_inferior): Likewise.
1310         (procfs_set_exec_trap): Likewise.
1311         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1312         (proc_set_traced_sysexit): Likewise.
1313
1314         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1315         (dead_procinfo): Likewise.
1316         (proc_warn): Likewise.
1317         (proc_error): Likewise.
1318         (proc_get_LDT_entry): Likewise.
1319         (do_attach): Likewise.
1320         (procfs_target::pid_to_str): Likewise.
1321         (iterate_over_mappings): Likewise.
1322
1323         * procfs.c (create_procinfo): Fix ARI warning.
1324         (proc_get_status): Likewise.
1325         (proc_stop_process): Likewise.
1326         (proc_run_process): Likewise.
1327         (proc_kill): Likewise.
1328         (proc_get_LDT_entry): Likewise.
1329         (procfs_find_LDT_entry): Likewise.
1330         (proc_update_threads): Likewise.
1331         (proc_iterate_over_threads): Likewise.
1332         (do_attach): Likewise.
1333         (procfs_xfer_memory): Likewise.
1334         (invalidate_cache): Likewise.
1335         (procfs_target::resume): Likewise.
1336         (procfs_init_inferior): Likewise.
1337         (procfs_set_exec_trap): Likewise.
1338         (procfs_target::thread_alive): Likewise.
1339         (procfs_target::pid_to_exec_file): Likewise.
1340         (iterate_over_mappings): Likewise.
1341         (procfs_target::make_corefile_notes): Likewise.
1342         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1343
1344         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1345         (procfs_find_LDT_entry): Likewise.
1346         * sol-thread.c (ps_lgetLDT): Likewise.
1347
1348 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1349
1350         PR tdep/17903
1351         * procfs.c (procfs_target): Declare pid_to_exec_file.
1352         (procfs_target::pid_to_exec_file): New.
1353
1354 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1355
1356         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1357         renaming.
1358         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1359         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1360
1361 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1362
1363         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1364         (supply_fpregset, fill_fpregset): Move ...
1365         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1366         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1367         Remove references to ioctl-based procfs.
1368         Include <sys/reg.h>.
1369         Remove PR_MODEL_NATIVE guards.
1370         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1371         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1372
1373 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1374
1375         PR gdb/20981:
1376         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1377         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1378         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1379
1380 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1381
1382         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1383         (fbsd_print_sockaddr_in6): Likewise.
1384
1385 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1386             Chris January  <chris.january@arm.com>
1387
1388         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1389         (evaluate_subexp_standard): Return a dummy type when
1390         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1391         OP_F77_UNDETERMINED_ARGLIST case.
1392         * expression.h (enum noside): Update comment.
1393
1394 2018-09-19  George Vasick <george.vasick@oracle.com>
1395
1396         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1397
1398 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1399             April Chin <april.chin@oracle.com>
1400             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1401
1402         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1403         uint_t lwpid_t.
1404         (create_procinfo): Print pids in /proc without leading zeros.
1405
1406 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1407
1408         * nios2-tdep.c (nios2_gcc_target_options): New.
1409         (nios2_gdb_arch_init): Install new hook.
1410
1411 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1412
1413         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1414         New file.
1415         * update-gnulib.sh: Apply patch.
1416         * configure: Re-generate.
1417
1418 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1419
1420         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1421         description.  Make "info proc" command descriptions more
1422         consistent.
1423
1424 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1425
1426         * NEWS: Mention 'info proc files' command.
1427
1428 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1429
1430         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1431         descriptors for IP_FILES and IP_ALL.
1432
1433 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1434
1435         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1436         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1437         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1438         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1439         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1440         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1441         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1442         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1443         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1444         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1445         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1446         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1447         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1448         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1449         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1450         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1451         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1452         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1453         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1454         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1455         (struct fbsd_sockaddr_un): New types.
1456         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1457         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1458         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1459         (fbsd_core_info_proc_files): New functions.
1460         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1461         IP_ALL.
1462         * fbsd-tdep.h (fbsd_info_proc_files_header)
1463         (fbsd_info_proc_files_entry): New.
1464
1465 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1466
1467         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1468         * infcmd.c (info_proc_cmd_files): New function.
1469         (_initialize_infcmd): Register 'info proc files' command.
1470
1471 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1472
1473         * gnulib/aclocal-m4-deps.mk: Re-generate.
1474         * gnulib/aclocal.m4: Re-generate.
1475         * gnulib/config.in: Re-generate.
1476         * gnulib/configure: Re-generate.
1477         * gnulib/import/Makefile.am: Re-generate.
1478         * gnulib/import/Makefile.in: Re-generate.
1479         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1480         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1481         * gnulib/import/arpa_inet.in.h: New file.
1482         * gnulib/import/inet_ntop.c: New file.
1483         * gnulib/import/m4/arpa_inet_h.m4: New file.
1484         * gnulib/import/m4/inet_ntop.m4: New file.
1485         * gnulib/import/m4/netinet_in_h.m4: New file.
1486         * gnulib/import/m4/socklen.m4: New file.
1487         * gnulib/import/m4/sockpfaf.m4: New file.
1488         * gnulib/import/m4/stdalign.m4: New file.
1489         * gnulib/import/m4/sys_uio_h.m4: New file.
1490         * gnulib/import/netinet_in.in.h: New file.
1491         * gnulib/import/stdalign.in.h: New file.
1492         * gnulib/import/sys_socket.c: New file.
1493         * gnulib/import/sys_socket.in.h: New file.
1494         * gnulib/import/sys_uio.in.h: New file.
1495         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1496         module.
1497
1498 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1499
1500         * gnulib/aclocal-m4-deps.mk: New file.
1501         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1502         deterministically.
1503
1504 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1505
1506         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1507         KVE_PATH.
1508
1509 2018-09-18  Tom Tromey  <tom@tromey.com>
1510
1511         * compile/compile-object-load.c (struct
1512         link_hash_table_cleanup_data): Add constructor and destructor.
1513         Use DISABLE_COPY_AND_ASSIGN.
1514         (~link_hash_table_cleanup_data): Rename from
1515         link_hash_table_free.  Now a destructor.
1516         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1517
1518 2018-09-18  Tom Tromey  <tom@tromey.com>
1519
1520         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1521         * compile/compile-object-load.c (struct munmap_list): Move to
1522         header file.
1523         (munmap_list::add): Rename from munmap_list_add; rewrite.
1524         (munmap_list::~munmap_list): Rename from munmap_list_free.
1525         (munmap_listp_free_cleanup): Remove.
1526         (compile_object_load): Update.
1527         * compile/compile-object-load.h (struct munmap_list): Move from
1528         compile-object-load.c.  Rewrite.
1529
1530 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1531
1532         * aarch64-tdep.c (pass_in_v): Use register size.
1533         (aarch64_extract_return_value): Likewise.
1534         (aarch64_store_return_value): Likewise.
1535
1536 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1537
1538         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1539         rlim_t.
1540
1541 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1542
1543         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1544         Fix short help line.
1545
1546 2018-09-17  Tom Tromey  <tom@tromey.com>
1547
1548         PR python/20445:
1549         * configure: Rebuild.
1550         * configure.ac: Conditionally use -DNDEBUG for Python.
1551
1552 2018-09-17  Tom Tromey  <tom@tromey.com>
1553
1554         * configure: Rebuild.
1555         * configure.ac: Use gmp as a library dependency when checking for
1556         mpfr.
1557
1558 2018-09-17  Pedro Alves  <palves@redhat.com>
1559
1560         * python/py-inferior.c (find_inferior_object): Delete.
1561
1562 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1563
1564         * compile/compile-cplus-types.c
1565         (compile_cplus_instance::enter_scope): Don't use new_scope after
1566         std::move.
1567
1568 2018-09-17  Tom Tromey  <tom@tromey.com>
1569
1570         * common/pathstuff.c (get_standard_cache_dir): Use
1571         ~/Library/Caches on macOS.
1572         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1573
1574 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1575
1576         PR python/23669
1577         * breakpoint.c (commands_cmd_element): New.
1578         (_initialize_breakpoint): Assign commands_cmd_element.
1579         * breakpoint.h (commands_cmd_element): New.
1580         * cli/cli-script.c (while_cmd_element, if_command,
1581         define_cmd_element): New.
1582         (command_name_equals): Remove.
1583         (process_next_line): Compare commands by pointer, not by name.
1584         (_initialize_cli_script): Assign the various cmd_list_element
1585         variables.
1586         * compile/compile.c (compile_cmd_element): New.
1587         (_initialize_compile): Assign compile_cmd_element.
1588         * compile/compile.h (compile_cmd_element): New.
1589         * guile/guile.c (guile_cmd_element): New.
1590         (install_gdb_commands): Assign guile_cmd_element.
1591         * guile/guile.h (guile_cmd_element): New.
1592         * python/python.c (python_cmd_element): New.
1593         (_initialize_python): Assign python_cmd_element.
1594         * python/python.h (python_cmd_element): New.
1595         * tracepoint.c (while_stepping_cmd_element): New.
1596         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1597         * tracepoint.h (while_stepping_cmd_element): New.
1598
1599 2018-09-17  Tom Tromey  <tom@tromey.com>
1600
1601         * infrun.c (save_infcall_suspend_state): Return
1602         infcall_suspend_state_up.
1603         (save_infcall_control_state): Return infcall_control_state_up.
1604         * inferior.h (save_infcall_suspend_state)
1605         (save_infcall_control_state): Declare later.  Return unique
1606         pointers.
1607
1608 2018-09-17  Tom Tromey  <tom@tromey.com>
1609
1610         * infrun.c (struct stop_context): Declare constructor,
1611         destructor, "changed" method.
1612         (stop_context::stop_context): Rename from save_stop_context.
1613         (stop_context::~stop_context): Rename from
1614         release_stop_context_cleanup.
1615         (normal_stop): Update.
1616         (stop_context::changed): Rename from stop_context_changed.  Return
1617         bool.
1618
1619 2018-09-17  Tom Tromey  <tom@tromey.com>
1620
1621         * inferior.h (struct infcall_suspend_state_deleter): New.
1622         (infcall_suspend_state_up): New typedef.
1623         (struct infcall_control_state_deleter): New.
1624         (infcall_control_state_up): New typedef.
1625         (make_cleanup_restore_infcall_suspend_state)
1626         (make_cleanup_restore_infcall_control_state): Don't declare.
1627         * infcall.c (call_function_by_hand_dummy): Update.
1628         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1629         (make_cleanup_restore_infcall_suspend_state): Remove.
1630         (do_restore_infcall_control_state_cleanup)
1631         (make_cleanup_restore_infcall_control_state): Remove.
1632
1633 2018-09-17  Tom Tromey  <tom@tromey.com>
1634
1635         * gdbthread.h (struct thread_control_state): Add initializer.
1636         (class thread_info) <control>: Remove initializer.
1637         * inferior.h (struct inferior_control_state): Add initializer.
1638         (class inferior) <control>: Remove initializer.
1639         (exit_inferior_1): Update.
1640         * infrun.c (struct infcall_control_state): Add constructors.
1641         (save_infcall_control_state): Use new.
1642         (restore_infcall_control_state, discard_infcall_control_state):
1643         Use delete.
1644
1645 2018-09-17  Tom Tromey  <tom@tromey.com>
1646
1647         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1648         unique_ptr.
1649         <siginfo_data>: Now a unique_xmalloc_ptr.
1650         (save_infcall_suspend_state, restore_infcall_suspend_state)
1651         (discard_infcall_suspend_state)
1652         (get_infcall_suspend_state_regcache): Update.
1653
1654 2018-09-17  Tom Tromey  <tom@tromey.com>
1655
1656         * gdbthread.h (struct thread_suspend_state): Add initializers.
1657         (class thread_info) <suspend>: Remove initializer.
1658         * infrun.c (struct infcall_suspend_state): Add initializers.
1659         (save_infcall_suspend_state): Use new.
1660         (discard_infcall_suspend_state): Use delete.
1661
1662 2018-09-16  Tom Tromey  <tom@tromey.com>
1663
1664         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1665         Remove.
1666         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1667         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1668         (py_varobj_iter_new): Likewise.
1669         (py_varobj_get_iterator): Use gdbpy_ref.
1670
1671 2018-09-16  Tom Tromey  <tom@tromey.com>
1672
1673         * python/py-threadevent.c (py_get_event_thread): Simplify.
1674         * python/py-inferior.c (infpy_thread_from_thread_handle):
1675         Return immediately after calling thread_to_thread_object.  Use
1676         Py_RETURN_NONE.
1677         (thread_to_thread_object): Set the exception on a NULL return.
1678
1679 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1680
1681         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1682
1683 2018-09-16  Tom Tromey  <tom@tromey.com>
1684
1685         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1686         Remove.
1687
1688 2018-09-16  Tom Tromey  <tom@tromey.com>
1689
1690         * python/python-internal.h (thread_to_thread_object): Change
1691         return type.
1692         * python/py-inferior.c (thread_to_thread_object): Return a new
1693         reference.
1694         (infpy_thread_from_thread_handle): Update.
1695         * python/py-infthread.c (gdbpy_selected_thread): Update.
1696         * python/py-stopevent.c (create_stop_event_object): Update.
1697         * python/py-threadevent.c (py_get_event_thread): Return a new
1698         reference.
1699         (py_get_event_thread): Update.
1700         * python/py-event.h (py_get_event_thread): Change return type.
1701         * python/py-continueevent.c (create_continue_event_object):
1702         Update.
1703
1704 2018-09-16  Tom Tromey  <tom@tromey.com>
1705
1706         * python/py-progspace.c (pspy_get_objfiles): Update.
1707         * python/python-internal.h (objfile_to_objfile_object): Change
1708         return type.
1709         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1710         Update.
1711         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1712         Update.
1713         * python/python.c (gdbpy_get_current_objfile): Update.
1714         (gdbpy_objfiles): Update.
1715         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1716         Update.
1717         (objfile_to_objfile_object): Return a new reference.
1718         * python/py-symtab.c (stpy_get_objfile): Update.
1719         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1720         Update.
1721
1722 2018-09-16  Tom Tromey  <tom@tromey.com>
1723
1724         * python/py-inferior.c (infpy_get_progspace): Update.
1725         * python/python-internal.h (pspace_to_pspace_object): Change
1726         return type.
1727         * python/py-newobjfileevent.c
1728         (create_clear_objfiles_event_object): Update.
1729         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1730         Update.
1731         * python/python.c (gdbpy_get_current_progspace): Update.
1732         (gdbpy_progspaces): Update.
1733         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1734         reference.
1735         * python/py-objfile.c (objfpy_get_progspace): Update.
1736         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1737         Update.
1738
1739 2018-09-16  Tom Tromey  <tom@tromey.com>
1740
1741         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1742         (solib_name, block_for_pc, find_pc_line): New functions.
1743         (execute_unwinders): Update.
1744         * python/py-block.c (gdbpy_block_for_pc): Remove.
1745         * python/py-inferior.c (infpy_get_progspace): New function.
1746         (inferior_object_getset) <progspace>: Add.
1747         * python/py-progspace.c (pspy_objfiles): Rewrite.
1748         (pspy_solib_name, pspy_block_for_pc)
1749         (pspy_find_pc_line, pspy_is_valid): New functions.
1750         (progspace_object_methods): Add entries for solib_name,
1751         block_for_pc, find_pc_line, is_valid.
1752         * python/python-internal.h (gdbpy_block_for_pc)
1753         (build_objfiles_list): Don't declare.
1754         * python/python.c: Don't include solib.h.
1755         (gdbpy_solib_name, gdbpy_find_pc_line)
1756         (gdbpy_get_current_progspace, build_objfiles_list)
1757         (gdbpy_objfiles): Remove.
1758         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1759         solib_name, find_pc_line>: Remove entries.
1760
1761 2018-09-16  Tom Tromey  <tom@tromey.com>
1762
1763         * top.c (new_ui_command): Use GNU style for metasyntactic
1764         variables.
1765         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1766         variables.
1767         * maint.c (maintenance_translate_address): Remove "<>" around
1768         text.
1769         * interps.c (interpreter_exec_cmd): Use GNU style for
1770         metasyntactic variables.
1771         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1772         metasyntactic variables.
1773         * tracepoint.c (tfind_range_command): Use GNU style for
1774         metasyntactic variables.
1775         (tfind_outside_command): Likewise.
1776         (_initialize_tracepoint): Likewise.
1777         * remote.c (extended_remote_target::create_inferior): Use GNU
1778         style for metasyntactic variables.
1779         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1780         metasyntactic variables.
1781         (adi_assign_command): Likewise.
1782
1783 2018-09-16  Tom Tromey  <tom@tromey.com>
1784
1785         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1786         metasyntactic variables.  Print message if no disassembler options
1787         are available.
1788
1789 2018-09-15  Tom Tromey  <tom@tromey.com>
1790
1791         * infcmd.c (get_inferior_args): Return const char *.
1792         * inferior.h (get_inferior_args): Return type now const.
1793         * linux-tdep.c (linux_fill_prpsinfo): Update.
1794         * procfs.c (procfs_target::make_corefile_notes): Update.
1795
1796 2018-09-07  Tom Tromey  <tom@tromey.com>
1797
1798         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1799         inside the TRY.
1800
1801 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1802
1803         * nios2-tdep.c (nios2_type_align): New.
1804         (nios2_gdb_arch_init): Install type_align hook.
1805
1806 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1807
1808         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1809         type that is neither object file owned, nor gdbarch owned.
1810         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1811         gdbarch is non-NULL.
1812         (alloc_type_instance): Allocate non-objfile owned types on the
1813         gdbarch obstack.
1814         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1815         using TYPE_ALLOC to ensure memory is allocated on the correct
1816         obstack.
1817         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1818         obstack, or the gdbarch obstack.
1819         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1820
1821 2018-09-14  Tom Tromey  <tom@tromey.com>
1822
1823         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1824         block.
1825
1826 2018-09-14  Tom Tromey  <tom@tromey.com>
1827
1828         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1829
1830 2018-09-13  Tom Tromey  <tom@tromey.com>
1831
1832         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1833         static.
1834
1835 2018-09-13  Tom Tromey  <tom@tromey.com>
1836
1837         * exec.c (try_open_exec_file): Use std::string.
1838
1839 2018-09-13  Tom Tromey  <tom@tromey.com>
1840
1841         * utils.h (gdb_bfd_errmsg): Return std::string.
1842         * exec.c (exec_file_attach): Update.
1843         * compile/compile-object-load.c (compile_object_load): Update.
1844         * utils.c (gdb_bfd_errmsg): Return std::string.
1845
1846 2018-09-13  Tom Tromey  <tom@tromey.com>
1847
1848         * procfs.c (struct procinfo_deleter): New.
1849         (procinfo_up): New typedef.
1850         (do_destroy_procinfo_cleanup): Remove.
1851         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1852
1853 2018-09-13  Tom Tromey  <tom@tromey.com>
1854
1855         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1856
1857 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1858 2018-09-13  Tom Tromey  <tom@tromey.com>
1859
1860         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1861         (pspy_get_objfiles): New function.
1862         (progspace_object_methods): New.
1863         (pspace_object_type): Add tp_methods callback.
1864         * python/python-internal.h (build_objfiles_list): New
1865         declaration.
1866         * python/python.c (build_objfiles_list): New function.
1867         (gdbpy_objfiles): Implement using build_objfiles_list.
1868         * NEWS: Mention the Progspace.objfiles method.
1869
1870 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1871
1872         * python/py-inferior.c (infpy_get_progspace): New function.
1873         (inferior_object_getset): Add progspace property.
1874         * NEWS: Mention the new property.
1875
1876 2018-09-13  Tom Tromey  <tom@tromey.com>
1877
1878         PR rust/23650:
1879         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1880
1881 2018-09-13  Tom Tromey  <tom@tromey.com>
1882
1883         PR rust/23626:
1884         * rust-lang.c (rust_enum_variant): Now static.
1885         (rust_empty_enum_p): New function.
1886         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1887         Handle empty enum.
1888
1889 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1890
1891         * python/py-inferior.c (infpy_repr): New.
1892         (inferior_object_type): Register infpy_repr.
1893         * python/py-objfile.c (objfpy_repr): New.
1894         (objfile_object_type): Register objfpy_repr.
1895
1896 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1897
1898         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1899
1900 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1901
1902         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1903         typo.
1904
1905 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1906
1907         * common/common-utils.c: Don't include '<sys/stat.h>'.
1908         (is_regular_file): Move to...
1909         * common/filestuff.c (is_regular_file): ... here.
1910         * common/common-utils.h (is_regular_file): Move to...
1911         * common/filestuff.h (is_regular_file): ... here.
1912
1913 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1914
1915         * skip.c (debug_skip): New variable.
1916         (skiplist_entry::do_skip_file_p): Add debug output.
1917         (skiplist_entry::do_skip_gfile_p): Likewise.
1918         (skiplist_entry::skip_function_p): Likewise.
1919         (_initialize_step_skip): Create debug command.
1920         * NEWS: Mention set/show debug skip.
1921
1922 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1923
1924         * darwin-nat.c (should_disable_startup_with_shell):
1925         New function.
1926         (darwin_nat_target::create_inferior): Add call.
1927
1928 2018-09-11  Xavier Roirand  <roirand@adacore.com>
1929
1930         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
1931         inf_port, msg_state>: Initialize.
1932         (struct darwin_thread_info) <signaled, single_step>: Change
1933         type and initialize.
1934         (struct darwin_thread_info) <event>: Initialize.
1935
1936 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1937
1938         PR gdb/23555
1939         PR gdb/23558
1940         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
1941         guesses.
1942
1943 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1944
1945         Revert:
1946         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1947
1948         PR gdb/23555
1949         PR gdb/23558
1950         * gnulib/aclocal.m4: Regenerate.
1951         * gnulib/config.in: Regenerate.
1952         * gnulib/configure: Regenerate.
1953         * gnulib/import/Makefile.am: Update.
1954         * gnulib/import/Makefile.in: Update.
1955         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1956         * gnulib/import/_Noreturn.h: ... this.
1957         * gnulib/import/alloca.in.h: Update.
1958         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1959         * gnulib/import/arg-nonnull.h: ... this.
1960         * gnulib/import/assure.h: Update.
1961         * gnulib/import/at-func.c: Update.
1962         * gnulib/import/basename-lgpl.c: Update.
1963         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1964         * gnulib/import/c++defs.h: ... this.
1965         * gnulib/import/canonicalize-lgpl.c: Update.
1966         * gnulib/import/cdefs.h: Update.
1967         * gnulib/import/chdir-long.c: Update.
1968         * gnulib/import/chdir-long.h: Update.
1969         * gnulib/import/cloexec.c: Update.
1970         * gnulib/import/cloexec.h: Update.
1971         * gnulib/import/close.c: Update.
1972         * gnulib/import/closedir.c: Update.
1973         * gnulib/import/config.charset: Update.
1974         * gnulib/import/dirent-private.h: Update.
1975         * gnulib/import/dirent.in.h: Update.
1976         * gnulib/import/dirfd.c: Update.
1977         * gnulib/import/dirname-lgpl.c: Update.
1978         * gnulib/import/dirname.h: Update.
1979         * gnulib/import/dosname.h: Update.
1980         * gnulib/import/dup-safer-flag.c: Update.
1981         * gnulib/import/dup-safer.c: Update.
1982         * gnulib/import/dup.c: Update.
1983         * gnulib/import/dup2.c: Update.
1984         * gnulib/import/errno.in.h: Update.
1985         * gnulib/import/error.c: Update.
1986         * gnulib/import/error.h: Update.
1987         * gnulib/import/exitfail.c: Update.
1988         * gnulib/import/exitfail.h: Update.
1989         * gnulib/import/extra/update-copyright: Update.
1990         * gnulib/import/fchdir.c: Update.
1991         * gnulib/import/fcntl.c: Update.
1992         * gnulib/import/fcntl.in.h: Update.
1993         * gnulib/import/fd-hook.c: Update.
1994         * gnulib/import/fd-hook.h: Update.
1995         * gnulib/import/fd-safer-flag.c: Update.
1996         * gnulib/import/fd-safer.c: Update.
1997         * gnulib/import/fdopendir.c: Update.
1998         * gnulib/import/filename.h: Update.
1999         * gnulib/import/filenamecat-lgpl.c: Update.
2000         * gnulib/import/filenamecat.h: Update.
2001         * gnulib/import/flexmember.h: Update.
2002         * gnulib/import/float+.h: Update.
2003         * gnulib/import/float.c: Update.
2004         * gnulib/import/float.in.h: Update.
2005         * gnulib/import/fnmatch.c: Update.
2006         * gnulib/import/fnmatch.in.h: Update.
2007         * gnulib/import/fnmatch_loop.c: Update.
2008         * gnulib/import/fpucw.h: Update.
2009         * gnulib/import/frexp.c: Update.
2010         * gnulib/import/frexpl.c: Update.
2011         * gnulib/import/fstat.c: Update.
2012         * gnulib/import/fstatat.c: Update.
2013         * gnulib/import/getcwd-lgpl.c: Update.
2014         * gnulib/import/getcwd.c: Update.
2015         * gnulib/import/getdtablesize.c: Update.
2016         * gnulib/import/getlogin_r.c: Update.
2017         * gnulib/import/getprogname.c: Update.
2018         * gnulib/import/getprogname.h: Update.
2019         * gnulib/import/gettext.h: Update.
2020         * gnulib/import/gettimeofday.c: Update.
2021         * gnulib/import/glob-libc.h: Update.
2022         * gnulib/import/glob.c: Update.
2023         * gnulib/import/glob.in.h: Update.
2024         * gnulib/import/glob_internal.h: Update.
2025         * gnulib/import/glob_pattern_p.c: Update.
2026         * gnulib/import/globfree.c: Update.
2027         * gnulib/import/hard-locale.c: Update.
2028         * gnulib/import/hard-locale.h: Update.
2029         * gnulib/import/intprops.h: Update.
2030         * gnulib/import/inttypes.in.h: Update.
2031         * gnulib/import/isnan.c: Update.
2032         * gnulib/import/isnand-nolibm.h: Update.
2033         * gnulib/import/isnand.c: Update.
2034         * gnulib/import/isnanl-nolibm.h: Update.
2035         * gnulib/import/isnanl.c: Update.
2036         * gnulib/import/itold.c: Update.
2037         * gnulib/import/libc-config.h: Update.
2038         * gnulib/import/limits.in.h: Update.
2039         * gnulib/import/localcharset.c: Update.
2040         * gnulib/import/localcharset.h: Update.
2041         * gnulib/import/localtime-buffer.c: Update.
2042         * gnulib/import/localtime-buffer.h: Update.
2043         * gnulib/import/lstat.c: Update.
2044         * gnulib/import/m4/00gnulib.m4: Update.
2045         * gnulib/import/m4/__inline.m4: Update.
2046         * gnulib/import/m4/absolute-header.m4: Update.
2047         * gnulib/import/m4/alloca.m4: Update.
2048         * gnulib/import/m4/builtin-expect.m4: Update.
2049         * gnulib/import/m4/canonicalize.m4: Update.
2050         * gnulib/import/m4/chdir-long.m4: Update.
2051         * gnulib/import/m4/close.m4: Update.
2052         * gnulib/import/m4/closedir.m4: Update.
2053         * gnulib/import/m4/configmake.m4: Update.
2054         * gnulib/import/m4/d-ino.m4: Update.
2055         * gnulib/import/m4/d-type.m4: Update.
2056         * gnulib/import/m4/dirent_h.m4: Update.
2057         * gnulib/import/m4/dirfd.m4: Update.
2058         * gnulib/import/m4/dirname.m4: Update.
2059         * gnulib/import/m4/double-slash-root.m4: Update.
2060         * gnulib/import/m4/dup.m4: Update.
2061         * gnulib/import/m4/dup2.m4: Update.
2062         * gnulib/import/m4/eealloc.m4: Update.
2063         * gnulib/import/m4/environ.m4: Update.
2064         * gnulib/import/m4/errno_h.m4: Update.
2065         * gnulib/import/m4/error.m4: Update.
2066         * gnulib/import/m4/exponentd.m4: Update.
2067         * gnulib/import/m4/exponentl.m4: Update.
2068         * gnulib/import/m4/extensions.m4: Update.
2069         * gnulib/import/m4/extern-inline.m4: Update.
2070         * gnulib/import/m4/fchdir.m4: Update.
2071         * gnulib/import/m4/fcntl-o.m4: Update.
2072         * gnulib/import/m4/fcntl.m4: Update.
2073         * gnulib/import/m4/fcntl_h.m4: Update.
2074         * gnulib/import/m4/fdopendir.m4: Update.
2075         * gnulib/import/m4/filenamecat.m4: Update.
2076         * gnulib/import/m4/flexmember.m4: Update.
2077         * gnulib/import/m4/float_h.m4: Update.
2078         * gnulib/import/m4/fnmatch.m4: Update.
2079         * gnulib/import/m4/fnmatch_h.m4: Update.
2080         * gnulib/import/m4/fpieee.m4: Update.
2081         * gnulib/import/m4/frexp.m4: Update.
2082         * gnulib/import/m4/frexpl.m4: Update.
2083         * gnulib/import/m4/fstat.m4: Update.
2084         * gnulib/import/m4/fstatat.m4: Update.
2085         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2086         * gnulib/import/m4/getcwd-path-max.m4: Update.
2087         * gnulib/import/m4/getcwd.m4: Update.
2088         * gnulib/import/m4/getdtablesize.m4: Update.
2089         * gnulib/import/m4/getlogin.m4: Update.
2090         * gnulib/import/m4/getlogin_r.m4: Update.
2091         * gnulib/import/m4/getpagesize.m4: Update.
2092         * gnulib/import/m4/getprogname.m4: Update.
2093         * gnulib/import/m4/gettimeofday.m4: Update.
2094         * gnulib/import/m4/glibc21.m4: Update.
2095         * gnulib/import/m4/glob.m4: Update.
2096         * gnulib/import/m4/glob_h.m4: Update.
2097         * gnulib/import/m4/gnulib-cache.m4: Update.
2098         * gnulib/import/m4/gnulib-common.m4: Update.
2099         * gnulib/import/m4/gnulib-comp.m4: Update.
2100         * gnulib/import/m4/gnulib-tool.m4: Update.
2101         * gnulib/import/m4/hard-locale.m4: Update.
2102         * gnulib/import/m4/include_next.m4: Update.
2103         * gnulib/import/m4/inttypes-pri.m4: Update.
2104         * gnulib/import/m4/inttypes.m4: Update.
2105         * gnulib/import/m4/isnand.m4: Update.
2106         * gnulib/import/m4/isnanl.m4: Update.
2107         * gnulib/import/m4/largefile.m4: Update.
2108         * gnulib/import/m4/limits-h.m4: Update.
2109         * gnulib/import/m4/localcharset.m4: Update.
2110         * gnulib/import/m4/locale-fr.m4: Update.
2111         * gnulib/import/m4/locale-ja.m4: Update.
2112         * gnulib/import/m4/locale-zh.m4: Update.
2113         * gnulib/import/m4/localtime-buffer.m4: Update.
2114         * gnulib/import/m4/longlong.m4: Update.
2115         * gnulib/import/m4/lstat.m4: Update.
2116         * gnulib/import/m4/malloc.m4: Update.
2117         * gnulib/import/m4/malloca.m4: Update.
2118         * gnulib/import/m4/math_h.m4: Update.
2119         * gnulib/import/m4/mbrtowc.m4: Update.
2120         * gnulib/import/m4/mbsinit.m4: Update.
2121         * gnulib/import/m4/mbsrtowcs.m4: Update.
2122         * gnulib/import/m4/mbstate_t.m4: Update.
2123         * gnulib/import/m4/memchr.m4: Update.
2124         * gnulib/import/m4/memmem.m4: Update.
2125         * gnulib/import/m4/mempcpy.m4: Update.
2126         * gnulib/import/m4/memrchr.m4: Update.
2127         * gnulib/import/m4/mkdir.m4: Update.
2128         * gnulib/import/m4/mkstemp.m4: Update.
2129         * gnulib/import/m4/mmap-anon.m4: Update.
2130         * gnulib/import/m4/mode_t.m4: Update.
2131         * gnulib/import/m4/msvc-inval.m4: Update.
2132         * gnulib/import/m4/msvc-nothrow.m4: Update.
2133         * gnulib/import/m4/multiarch.m4: Update.
2134         * gnulib/import/m4/nocrash.m4: Update.
2135         * gnulib/import/m4/off_t.m4: Update.
2136         * gnulib/import/m4/onceonly.m4: Update.
2137         * gnulib/import/m4/open-cloexec.m4: Update.
2138         * gnulib/import/m4/open.m4: Update.
2139         * gnulib/import/m4/openat.m4: Update.
2140         * gnulib/import/m4/opendir.m4: Update.
2141         * gnulib/import/m4/pathmax.m4: Update.
2142         * gnulib/import/m4/rawmemchr.m4: Update.
2143         * gnulib/import/m4/readdir.m4: Update.
2144         * gnulib/import/m4/readlink.m4: Update.
2145         * gnulib/import/m4/realloc.m4: Update.
2146         * gnulib/import/m4/rename.m4: Update.
2147         * gnulib/import/m4/rewinddir.m4: Update.
2148         * gnulib/import/m4/rmdir.m4: Update.
2149         * gnulib/import/m4/save-cwd.m4: Update.
2150         * gnulib/import/m4/secure_getenv.m4: Update.
2151         * gnulib/import/m4/setenv.m4: Update.
2152         * gnulib/import/m4/signal_h.m4: Update.
2153         * gnulib/import/m4/ssize_t.m4: Update.
2154         * gnulib/import/m4/stat-time.m4: Update.
2155         * gnulib/import/m4/stat.m4: Update.
2156         * gnulib/import/m4/std-gnu11.m4: Update.
2157         * gnulib/import/m4/stdbool.m4: Update.
2158         * gnulib/import/m4/stddef_h.m4: Update.
2159         * gnulib/import/m4/stdint.m4: Update.
2160         * gnulib/import/m4/stdio_h.m4: Update.
2161         * gnulib/import/m4/stdlib_h.m4: Update.
2162         * gnulib/import/m4/strchrnul.m4: Update.
2163         * gnulib/import/m4/strdup.m4: Update.
2164         * gnulib/import/m4/strerror.m4: Update.
2165         * gnulib/import/m4/string_h.m4: Update.
2166         * gnulib/import/m4/strstr.m4: Update.
2167         * gnulib/import/m4/strtok_r.m4: Update.
2168         * gnulib/import/m4/sys_socket_h.m4: Update.
2169         * gnulib/import/m4/sys_stat_h.m4: Update.
2170         * gnulib/import/m4/sys_time_h.m4: Update.
2171         * gnulib/import/m4/sys_types_h.m4: Update.
2172         * gnulib/import/m4/tempname.m4: Update.
2173         * gnulib/import/m4/time_h.m4: Update.
2174         * gnulib/import/m4/unistd-safer.m4: Update.
2175         * gnulib/import/m4/unistd_h.m4: Update.
2176         * gnulib/import/m4/warn-on-use.m4: Update.
2177         * gnulib/import/m4/wchar_h.m4: Update.
2178         * gnulib/import/m4/wchar_t.m4: Update.
2179         * gnulib/import/m4/wctype_h.m4: Update.
2180         * gnulib/import/m4/wint_t.m4: Update.
2181         * gnulib/import/malloc.c: Update.
2182         * gnulib/import/malloc/scratch_buffer.h: Update.
2183         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2184         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2185         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2186         * gnulib/import/malloca.c: Update.
2187         * gnulib/import/malloca.h: Update.
2188         * gnulib/import/malloca.valgrind: Update.
2189         * gnulib/import/math.in.h: Update.
2190         * gnulib/import/mbrtowc.c: Update.
2191         * gnulib/import/mbsinit.c: Update.
2192         * gnulib/import/mbsrtowcs-impl.h: Update.
2193         * gnulib/import/mbsrtowcs-state.c: Update.
2194         * gnulib/import/mbsrtowcs.c: Update.
2195         * gnulib/import/memchr.c: Update.
2196         * gnulib/import/memmem.c: Update.
2197         * gnulib/import/mempcpy.c: Update.
2198         * gnulib/import/memrchr.c: Update.
2199         * gnulib/import/mkdir.c: Update.
2200         * gnulib/import/mkstemp.c: Update.
2201         * gnulib/import/msvc-inval.c: Update.
2202         * gnulib/import/msvc-inval.h: Update.
2203         * gnulib/import/msvc-nothrow.c: Update.
2204         * gnulib/import/msvc-nothrow.h: Update.
2205         * gnulib/import/open.c: Update.
2206         * gnulib/import/openat-die.c: Update.
2207         * gnulib/import/openat-priv.h: Update.
2208         * gnulib/import/openat-proc.c: Update.
2209         * gnulib/import/openat.c: Update.
2210         * gnulib/import/openat.h: Update.
2211         * gnulib/import/opendir.c: Update.
2212         * gnulib/import/pathmax.h: Update.
2213         * gnulib/import/pipe-safer.c: Update.
2214         * gnulib/import/rawmemchr.c: Update.
2215         * gnulib/import/readdir.c: Update.
2216         * gnulib/import/readlink.c: Update.
2217         * gnulib/import/realloc.c: Update.
2218         * gnulib/import/ref-add.sin: Update.
2219         * gnulib/import/ref-del.sin: Update.
2220         * gnulib/import/rename.c: Update.
2221         * gnulib/import/rewinddir.c: Update.
2222         * gnulib/import/rmdir.c: Update.
2223         * gnulib/import/same-inode.h: Update.
2224         * gnulib/import/save-cwd.c: Update.
2225         * gnulib/import/save-cwd.h: Update.
2226         * gnulib/import/scratch_buffer.h: Update.
2227         * gnulib/import/secure_getenv.c: Update.
2228         * gnulib/import/setenv.c: Update.
2229         * gnulib/import/signal.in.h: Update.
2230         * gnulib/import/stat-time.c: Update.
2231         * gnulib/import/stat-time.h: Update.
2232         * gnulib/import/stat-w32.c: Update.
2233         * gnulib/import/stat-w32.h: Update.
2234         * gnulib/import/stat.c: Update.
2235         * gnulib/import/stdbool.in.h: Update.
2236         * gnulib/import/stddef.in.h: Update.
2237         * gnulib/import/stdint.in.h: Update.
2238         * gnulib/import/stdio.in.h: Update.
2239         * gnulib/import/stdlib.in.h: Update.
2240         * gnulib/import/str-two-way.h: Update.
2241         * gnulib/import/strchrnul.c: Update.
2242         * gnulib/import/strdup.c: Update.
2243         * gnulib/import/streq.h: Update.
2244         * gnulib/import/strerror-override.c: Update.
2245         * gnulib/import/strerror-override.h: Update.
2246         * gnulib/import/strerror.c: Update.
2247         * gnulib/import/string.in.h: Update.
2248         * gnulib/import/stripslash.c: Update.
2249         * gnulib/import/strnlen1.c: Update.
2250         * gnulib/import/strnlen1.h: Update.
2251         * gnulib/import/strstr.c: Update.
2252         * gnulib/import/strtok_r.c: Update.
2253         * gnulib/import/sys_stat.in.h: Update.
2254         * gnulib/import/sys_time.in.h: Update.
2255         * gnulib/import/sys_types.in.h: Update.
2256         * gnulib/import/tempname.c: Update.
2257         * gnulib/import/tempname.h: Update.
2258         * gnulib/import/time.in.h: Update.
2259         * gnulib/import/unistd--.h: Update.
2260         * gnulib/import/unistd-safer.h: Update.
2261         * gnulib/import/unistd.in.h: Update.
2262         * gnulib/import/unsetenv.c: Update.
2263         * gnulib/import/verify.h: Update.
2264         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2265         * gnulib/import/wchar.in.h: Update.
2266         * gnulib/import/wctype.in.h: Update.
2267         * gnulib/import/xalloc-oversized.h: Update.
2268         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2269         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2270
2271 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2272
2273         * record-btrace.c (get_thread_current_frame): Remove
2274         old_inferior_ptid.
2275
2276 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2277
2278         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2279         with check_tag to 1 if and only if the type is tagged and the
2280         component being searched cannot been found in the current
2281         view. Otherwise, always call ada_to_fixed_type with
2282         check_tag to 0.
2283
2284 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2285
2286         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2287         declaration.
2288         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2289         * ada-varobj.c (ada_varobj_get_number_of_children,
2290         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2291
2292 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2293
2294         * ada-valprint.c (ada_value_print): Use type instead of
2295         enclosing type.
2296
2297 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2298
2299         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2300         an array of access to unconstrained array.
2301
2302 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2303
2304         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2305         (ada_check_typedef): Use it.
2306
2307 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2308
2309         * ada-varobj.c (ada_varobj_describe_struct_child)
2310         (ada_varobj_describe_child): Handle union case like struct one.
2311
2312 2018-09-10  Tom Tromey  <tom@tromey.com>
2313
2314         PR python/18380:
2315         * python/python.c (_initialize_python): Make example in "python"
2316         help work in Python 3.
2317
2318 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2319
2320         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2321         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2322         $(EXEEXT) to the script, as it is not a program.
2323
2324 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2325
2326         * python/py-prettyprint.c (pretty_print_one_value): Return
2327         gdbpy_ref<>.
2328         (print_string_repr): Adjust.
2329         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2330         * python/python-internal.h (apply_varobj_pretty_printer): Return
2331         gdbpy_ref<>.
2332         * varobj.c (varobj_value_get_print_value): Adjust.
2333
2334 2018-09-08  Tom Tromey  <tom@tromey.com>
2335
2336         PR python/16047:
2337         * python/py-prettyprint.c (pretty_print_one_value): Check for
2338         to_string method.
2339
2340 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2341
2342         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2343         replace_operator_with_call.
2344
2345 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2346
2347         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2348
2349 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2350
2351         * ada-typeprint.c (print_range): Print the bounds using TYPE
2352         rather than its TYPE_TARGET_TYPE.
2353
2354 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2355
2356         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2357         call to ada_to_fixed_value_create.
2358
2359 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2360
2361         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2362
2363 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2364
2365         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2366         by calls to error.
2367
2368 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2369
2370         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2371         Move update of loop variable "fi".
2372
2373 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2374
2375         * ada-lang.c (value_assign_to_component): In the case of
2376         big-endian targets, extract the bits of the given VAL
2377         using an src_offset of zero if container is not a scalar.
2378
2379 2018-09-06  Simon Ser  <contact@emersion.fr>
2380
2381         PR gdb/23105
2382         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2383         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2384         * fbsd-tdep.c (fbsd_make_note_desc): New.
2385         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2386         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2387         * target.h (enum target_object) Add FreeBSD-specific
2388         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2389
2390 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2391
2392         * compile/compile-c.h (generate_c_for_variable_locations):
2393         Change reference to pointer.
2394         * compile/compile-c-support.c (compile_program) <compute>:
2395         Likewise.
2396         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2397         (generate_c_for_for_one_variable): Likewise
2398         (generate_c_for_variable_locations): Likewise
2399         * compile/compile-c-types.c (compile_c_instance::convert_type):
2400         Likewise
2401         * compile/compile-cplus-symbols.c (convert_one_symbol):
2402         std::move the scope passed to enter_scope.
2403         * compile/compile-cplus-types.c
2404         (compile_cplus_instance::enter_scope): Make parameter
2405         rvalue-reference.
2406         (compile_cplus_instance::new_scope): Change reference to
2407         pointer.
2408         (compile_cplus_instance::convert_type): Likewise
2409         (compile_cplus_convert_typedef): std::move the scope passed to
2410         enter_scope.
2411         (compile_cplus_convert_struct_or_union): Likewise.
2412         (compile_cplus_convert_enum): Likewise.
2413         (compile_cplus_convert_namespace): Likewise.
2414         * compile/compile-cplus.h (compile_cplus_instance)
2415         <enter_scope>: Make parameter rvalue-reference.
2416         * compile/compile-internal.h (compile_instance)
2417         <get_cached_type>: Likewise
2418         * compile/compile-loc2c.c (push): Likewise
2419         (pushf): Likewise
2420         (unary): Likewise
2421         (binary): Likewise
2422         (print_label): Likewise
2423         (pushf_register_address): Likewise
2424         (pushf_register): Likewise
2425         (do_compile_dwarf_expr_to_c): Likewise
2426         (compile_dwarf_expr_to_c): Likewise
2427         (compile_dwarf_bounds_to_c): Likewise
2428         * compile/compile.c (compile_instance::get_cached_type):
2429         Likewise
2430         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2431         (compile_dwarf_bounds_to_c): Likewise
2432         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2433         (dwarf2_compile_property_to_c): Likewise
2434         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2435         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2436         Likewise
2437
2438 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2439
2440         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2441         * tui/tui-data.c (init_content_element): Don't initialize it.
2442
2443 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2444
2445         * tui/tui-data.h (struct tui_win_info)
2446         <detail::opaque>: Remove.
2447         * tui/tui-data.c (init_win_info): Remove assignment.
2448
2449 2018-09-05  Tom Tromey  <tom@tromey.com>
2450
2451         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2452         -Wformat-nonliteral.
2453         * target-float.c (host_float_ops<T>::to_string)
2454         (host_float_ops<T>::from_string): Use
2455         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2456         * configure: Rebuild.
2457
2458 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2459
2460         * printcmd.c (printf_c_string): Use
2461         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2462         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2463
2464 2018-09-05  Tom Tromey  <tom@tromey.com>
2465
2466         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2467
2468 2018-09-05  Tom de Vries  <tdevries@suse.de>
2469
2470         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2471         with resolve_abstract_p == true.
2472         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2473         defaulting to false. Propagate resolve_abstract_p to
2474         dwarf2_fetch_die_loc_sect_off.
2475         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2476         parameter, defaulting to false.
2477         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2478         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2479         parameter.
2480         * dwarf2read.h (struct die_info): Forward-declare.
2481         (die_info_ptr): New typedef.
2482         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2483
2484 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2485
2486         GDB 8.2 released.
2487
2488 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2489             Pedro Alves  <palves@redhat.com>
2490
2491         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2492         "aclocal-m4-deps.mk".  Include file here.
2493         $(srcdir)/aclocal.m4: Add "configure.ac".
2494         * gnulib/aclocal-m4-deps.mk: New file.
2495         * gnulib/update-gnulib.sh: Automatically update
2496         "aclocal-m4-deps.mk".
2497
2498 2018-09-04  Tom Tromey  <tom@tromey.com>
2499
2500         * configure: Rebuild.
2501         * configure.ac: Remove multi-ice code.
2502
2503 2018-09-04  Tom Tromey  <tom@tromey.com>
2504
2505         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2506         (ada-exp.o): Update.
2507
2508 2018-09-04  Tom Tromey  <tom@tromey.com>
2509
2510         * Makefile.in (printcmd.o, target-float.o): Remove.
2511         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2512
2513 2018-09-04  Tom Tromey  <tom@tromey.com>
2514
2515         * gnulib/Makefile.in: Remove obsolete comment.
2516         * Makefile.in: Remove obsolete comment.
2517
2518 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2519
2520         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2521         line with '+'.
2522
2523 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2524
2525         * riscv-tdep.c: Add 'prologue-value.h' include.
2526         (struct riscv_unwind_cache): New struct.
2527         (riscv_debug_unwinder): New global.
2528         (riscv_scan_prologue): Update arguments, capture register details
2529         from prologue scan.
2530         (riscv_skip_prologue): Reformat arguments line, move end of
2531         prologue calculation into riscv_scan_prologue.
2532         (riscv_frame_cache): Update return type, create
2533         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2534         details.
2535         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2536         (riscv_frame_prev_register): Use the trad_frame within the
2537         riscv_unwind_cache.
2538         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2539         flag.
2540
2541 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2542
2543         * trad-frame.h (trad_frame_set_realreg): Declare.
2544         (trad_frame_set_addr): Declare.
2545         * trad-frame.c (trad_frame_set_realreg): Define new function.
2546         (trad_frame_set_addr): Define new function.
2547         (trad_frame_set_reg_realreg): Use new function.
2548         (trad_frame_set_reg_addr): Use new function.
2549
2550 2018-09-01  Keith Seitz  <keiths@redhat.com>
2551
2552         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2553         pulongest instead of "%lld".
2554         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2555         ATTRIBUTE_UNUSED.
2556
2557 2018-08-31  Tom Tromey  <tom@tromey.com>
2558
2559         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2560         variant part type.
2561
2562 2018-08-31  Pedro Alves  <palves@redhat.com>
2563
2564         * gdbarch.h: Regenerate.
2565
2566 2018-08-31  Pedro Alves  <palves@redhat.com>
2567
2568         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2569         * target.h (Hardware watchpoint interfaces): Describe
2570         continuable/steppable/non-steppable watchpoints.
2571         * gdbarch.h, gdbarch.c: Regenerate.
2572
2573 2018-08-31  Pedro Alves  <palves@redhat.com>
2574
2575         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2576         Delete.
2577         * s390-linux-nat.c
2578         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2579         * target.h (target_ops::have_continuable_watchpoint): Delete.
2580         (target_have_continuable_watchpoint): Delete.
2581         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2582         * target-delegates.c: Regenerate.
2583
2584 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2585
2586         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2587         the files present in "gnulib/import/m4/".
2588
2589 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2590
2591         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2592         c.sw, c.swsp, and c.sdsp.
2593
2594 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2595
2596         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2597         (riscv_read_misa_reg): Don't cache value read into inferior data.
2598         (riscv_new_inferior_data): Delete.
2599         (riscv_inferior_data_cleanup): Delete.
2600         (riscv_inferior_data): Delete.
2601         (riscv_invalidate_inferior_data): Delete.
2602         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2603
2604 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2605
2606         * compile/compile-cplus-types.c
2607         (compile_cplus_instance::leave_scope): Take the address of scope
2608         object.
2609         (compile_cplus_instance::convert_qualified_base): Compare quals
2610         to 0.
2611
2612 2018-08-30  Keith Seitz  <keiths@redhat.com>
2613
2614         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2615         Use "%s" and host_address_to_string instead of "%p" in printf.
2616
2617 2018-08-29  Keith Seitz  <keiths@redhat.com>
2618
2619         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2620         and compile-cplus-types.c.
2621         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2622         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2623         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2624         Declare.
2625         * compile/compile-c-support.c: Include compile-cplus.h.
2626         (load_libcompile): Templatize.
2627         (get_compile_context): "New" function.
2628         (c_get_compile_context): Use get_compile_context.
2629         (cplus_get_compile_context): New function.
2630         (cplus_push_user_expression, cplus_pop_user_expression)
2631         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2632         (cplus_compute_program): Define new structs/functions.
2633         * compile/compile-cplus-symmbols.c: New file.
2634         * compile/compile-cplus-types.c: New file.
2635         * compile/compile-cplus.h: New file.
2636         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2637         Declare.
2638         * compile/compile-object-load.c (get_out_value_type): Use
2639         strncmp_iw when comparing symbol names.
2640         (compile_object_load): Add mst_bss and mst_data.
2641         * compile/compile.c (_initialize_compile): Remove
2642         -Wno-implicit-function-declaration from `compile_args'.
2643         * compile/gcc-cp-plugin.h: New file.
2644         * NEWS: Mention C++ compile support and new debug options.
2645
2646 2018-08-29  Keith Seitz  <keiths@redhat.com>
2647
2648         * linespec.c (collect_info::add_symbol): Make virtual.
2649         (struct symbol_searcher_collect_info): New struct.
2650         (symbol_searcher::find_all_symbols): New method.
2651         * symtab.h (class symbol_searcher): New class.
2652
2653 2018-08-29  Keith Seitz  <keiths@redhat.com>
2654
2655         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2656         Change to vector of block_symbol.  Update all users.
2657         (struct collect_info) <symbols>: Likewise.
2658         (collect_info::add_symbol): Take block_symbol as argument.
2659         Update all callers.
2660         (decode_compound_collector) <m_symbols>: Change type to vector
2661         of block_symbol.  Update all users.
2662         (decode_compound_collector::operator ()): Change parameter type
2663         to block_symbol.
2664         (find_method, find_function_symbols, find_linespec_symbols)
2665         (find_label_symbols_in_block, find_label_symbols): Change symbol
2666         vectors to block_symbol vectors.
2667         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2668         block_symbol.
2669
2670 2018-08-29  Keith Seitz  <keiths@redhat.com>
2671
2672         * linespec.c (symbolp): Remove typedef and VEC definitions.
2673         (bound_minimal_symbol_d): Likewise.
2674
2675 2018-08-29  Keith Seitz  <keiths@redhat.com>
2676
2677         * linespec.c (decode_compound_collector::decode_compound_collector):
2678         Remove initialization for `m_symtabs'.
2679         (decode_compound_collector::release_symbols): Change return type
2680         to std::vector.  Update all callers.
2681         (class decode_compound_collector) <m_symbols>: Change type to
2682         std::vector.
2683         (lookup_prefix_sym): Change return type to std::vector.  Update all
2684         callers.
2685         (compare_symbols): Remove.
2686         (std_compare_symbols): Rename to `compare_symbols'.
2687         (find_method): Change `sym_classes' parameter to std::vector.
2688         Update all callers.  Use std::sort to sort sym_classes.
2689         (find_linespec_symbols): Remove cleanup.
2690
2691 2018-08-29  Keith Seitz  <keiths@redhat.com>
2692
2693         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2694         std::vector.  Update all users.
2695         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2696         (struct collect_info) <minimal_symbols>: Likewise.
2697         (compare_msymbols): Return bool.  Change parameters to const
2698         bound_minimal_symbol references.
2699         (find_method, find_function_symbols, find_linespec_symbols): Change
2700         `minsyms' parameter to std::vector.  Update all callers.
2701
2702 2018-08-29  Keith Seitz  <keiths@redhat.com>
2703
2704         * linespec.c (struct linespec) <label_symbols>: Change type to
2705         std::vector.  Update all users.
2706         (find_label_symbols_in_block): Change `result' parameter to
2707         std::vector.  Update all callers.
2708         (find_label_symbols): Return std::vector.  Update all callers.
2709
2710 2018-08-29  Keith Seitz  <keiths@redhat.com>
2711
2712         * linespec.c (struct linespec) <function_symbols>: Change type to
2713         std::vector.  Update all users.
2714         (struct collect_info) <function_symbols>: Likewise.
2715         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2716         (std_compare_symbols): New function.
2717         (find_method, find_function_symbols, find_linespec_symbols)
2718         (find_label_symbols_in_block): Change `symbols' parameter to
2719         std::vector.  Update all callers.
2720         (find_label_symbols): Likewise for `function_symbols' and
2721         `label_funcs_ret'.
2722
2723 2018-08-29  Keith Seitz  <keiths@redhat.com>
2724
2725         * linespec.c (symtab_vector_up): Define.
2726         (struct linespec) <file_symtabs>: Change type to std::vector *.
2727         Update all uses.
2728         (struct collect_info) <file_symtabs>: Likewise.
2729         (collect_symtabs_from_filename): Return symtab_vector_up.
2730         Update all callers.
2731         (decode_objc): Remove cleanup.
2732         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2733         (symtab_collector::release_symtabs): Return symtab_vector_up.
2734         Update all callers.
2735         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2736         Update all users.
2737         (collect_symtabs_from_filename, symtabs_from_filename): Return
2738         symtab_vector_up.  Update all callers.
2739
2740 2018-08-29  Tom Tromey  <tom@tromey.com>
2741
2742         * csky-tdep.c (csky_analyze_prologue): Use
2743         core_addr_to_string_nz.
2744
2745 2018-08-29  Tom Tromey  <tom@tromey.com>
2746
2747         * windows-nat.c (struct xlate_exception) <them>: Change type to
2748         DWORD.
2749         (xlate): Fix formatting.  Remove last entry.
2750         (struct xlate_exception, xlate): Comment out.
2751         (windows_nat_target::resume): Use ranged for.
2752
2753 2018-08-29  Jim Wilson  <jimw@sifive.com>
2754
2755         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2756         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2757         of NT_PRFPREG.
2758         (riscv_linux_nat_target::store_registers): Likewise.
2759
2760 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2761
2762         PR gdb/23555
2763         PR gdb/23558
2764         * gnulib/aclocal.m4: Regenerate.
2765         * gnulib/config.in: Regenerate.
2766         * gnulib/configure: Regenerate.
2767         * gnulib/import/Makefile.am: Update.
2768         * gnulib/import/Makefile.in: Update.
2769         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2770         * gnulib/import/_Noreturn.h: ... this.
2771         * gnulib/import/alloca.in.h: Update.
2772         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2773         * gnulib/import/arg-nonnull.h: ... this.
2774         * gnulib/import/assure.h: Update.
2775         * gnulib/import/at-func.c: Update.
2776         * gnulib/import/basename-lgpl.c: Update.
2777         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2778         * gnulib/import/c++defs.h: ... this.
2779         * gnulib/import/canonicalize-lgpl.c: Update.
2780         * gnulib/import/cdefs.h: Update.
2781         * gnulib/import/chdir-long.c: Update.
2782         * gnulib/import/chdir-long.h: Update.
2783         * gnulib/import/cloexec.c: Update.
2784         * gnulib/import/cloexec.h: Update.
2785         * gnulib/import/close.c: Update.
2786         * gnulib/import/closedir.c: Update.
2787         * gnulib/import/config.charset: Update.
2788         * gnulib/import/dirent-private.h: Update.
2789         * gnulib/import/dirent.in.h: Update.
2790         * gnulib/import/dirfd.c: Update.
2791         * gnulib/import/dirname-lgpl.c: Update.
2792         * gnulib/import/dirname.h: Update.
2793         * gnulib/import/dosname.h: Update.
2794         * gnulib/import/dup-safer-flag.c: Update.
2795         * gnulib/import/dup-safer.c: Update.
2796         * gnulib/import/dup.c: Update.
2797         * gnulib/import/dup2.c: Update.
2798         * gnulib/import/errno.in.h: Update.
2799         * gnulib/import/error.c: Update.
2800         * gnulib/import/error.h: Update.
2801         * gnulib/import/exitfail.c: Update.
2802         * gnulib/import/exitfail.h: Update.
2803         * gnulib/import/extra/update-copyright: Update.
2804         * gnulib/import/fchdir.c: Update.
2805         * gnulib/import/fcntl.c: Update.
2806         * gnulib/import/fcntl.in.h: Update.
2807         * gnulib/import/fd-hook.c: Update.
2808         * gnulib/import/fd-hook.h: Update.
2809         * gnulib/import/fd-safer-flag.c: Update.
2810         * gnulib/import/fd-safer.c: Update.
2811         * gnulib/import/fdopendir.c: Update.
2812         * gnulib/import/filename.h: Update.
2813         * gnulib/import/filenamecat-lgpl.c: Update.
2814         * gnulib/import/filenamecat.h: Update.
2815         * gnulib/import/flexmember.h: Update.
2816         * gnulib/import/float+.h: Update.
2817         * gnulib/import/float.c: Update.
2818         * gnulib/import/float.in.h: Update.
2819         * gnulib/import/fnmatch.c: Update.
2820         * gnulib/import/fnmatch.in.h: Update.
2821         * gnulib/import/fnmatch_loop.c: Update.
2822         * gnulib/import/fpucw.h: Update.
2823         * gnulib/import/frexp.c: Update.
2824         * gnulib/import/frexpl.c: Update.
2825         * gnulib/import/fstat.c: Update.
2826         * gnulib/import/fstatat.c: Update.
2827         * gnulib/import/getcwd-lgpl.c: Update.
2828         * gnulib/import/getcwd.c: Update.
2829         * gnulib/import/getdtablesize.c: Update.
2830         * gnulib/import/getlogin_r.c: Update.
2831         * gnulib/import/getprogname.c: Update.
2832         * gnulib/import/getprogname.h: Update.
2833         * gnulib/import/gettext.h: Update.
2834         * gnulib/import/gettimeofday.c: Update.
2835         * gnulib/import/glob-libc.h: Update.
2836         * gnulib/import/glob.c: Update.
2837         * gnulib/import/glob.in.h: Update.
2838         * gnulib/import/glob_internal.h: Update.
2839         * gnulib/import/glob_pattern_p.c: Update.
2840         * gnulib/import/globfree.c: Update.
2841         * gnulib/import/hard-locale.c: Update.
2842         * gnulib/import/hard-locale.h: Update.
2843         * gnulib/import/intprops.h: Update.
2844         * gnulib/import/inttypes.in.h: Update.
2845         * gnulib/import/isnan.c: Update.
2846         * gnulib/import/isnand-nolibm.h: Update.
2847         * gnulib/import/isnand.c: Update.
2848         * gnulib/import/isnanl-nolibm.h: Update.
2849         * gnulib/import/isnanl.c: Update.
2850         * gnulib/import/itold.c: Update.
2851         * gnulib/import/libc-config.h: Update.
2852         * gnulib/import/limits.in.h: Update.
2853         * gnulib/import/localcharset.c: Update.
2854         * gnulib/import/localcharset.h: Update.
2855         * gnulib/import/localtime-buffer.c: Update.
2856         * gnulib/import/localtime-buffer.h: Update.
2857         * gnulib/import/lstat.c: Update.
2858         * gnulib/import/m4/00gnulib.m4: Update.
2859         * gnulib/import/m4/__inline.m4: Update.
2860         * gnulib/import/m4/absolute-header.m4: Update.
2861         * gnulib/import/m4/alloca.m4: Update.
2862         * gnulib/import/m4/builtin-expect.m4: Update.
2863         * gnulib/import/m4/canonicalize.m4: Update.
2864         * gnulib/import/m4/chdir-long.m4: Update.
2865         * gnulib/import/m4/close.m4: Update.
2866         * gnulib/import/m4/closedir.m4: Update.
2867         * gnulib/import/m4/configmake.m4: Update.
2868         * gnulib/import/m4/d-ino.m4: Update.
2869         * gnulib/import/m4/d-type.m4: Update.
2870         * gnulib/import/m4/dirent_h.m4: Update.
2871         * gnulib/import/m4/dirfd.m4: Update.
2872         * gnulib/import/m4/dirname.m4: Update.
2873         * gnulib/import/m4/double-slash-root.m4: Update.
2874         * gnulib/import/m4/dup.m4: Update.
2875         * gnulib/import/m4/dup2.m4: Update.
2876         * gnulib/import/m4/eealloc.m4: Update.
2877         * gnulib/import/m4/environ.m4: Update.
2878         * gnulib/import/m4/errno_h.m4: Update.
2879         * gnulib/import/m4/error.m4: Update.
2880         * gnulib/import/m4/exponentd.m4: Update.
2881         * gnulib/import/m4/exponentl.m4: Update.
2882         * gnulib/import/m4/extensions.m4: Update.
2883         * gnulib/import/m4/extern-inline.m4: Update.
2884         * gnulib/import/m4/fchdir.m4: Update.
2885         * gnulib/import/m4/fcntl-o.m4: Update.
2886         * gnulib/import/m4/fcntl.m4: Update.
2887         * gnulib/import/m4/fcntl_h.m4: Update.
2888         * gnulib/import/m4/fdopendir.m4: Update.
2889         * gnulib/import/m4/filenamecat.m4: Update.
2890         * gnulib/import/m4/flexmember.m4: Update.
2891         * gnulib/import/m4/float_h.m4: Update.
2892         * gnulib/import/m4/fnmatch.m4: Update.
2893         * gnulib/import/m4/fnmatch_h.m4: Update.
2894         * gnulib/import/m4/fpieee.m4: Update.
2895         * gnulib/import/m4/frexp.m4: Update.
2896         * gnulib/import/m4/frexpl.m4: Update.
2897         * gnulib/import/m4/fstat.m4: Update.
2898         * gnulib/import/m4/fstatat.m4: Update.
2899         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2900         * gnulib/import/m4/getcwd-path-max.m4: Update.
2901         * gnulib/import/m4/getcwd.m4: Update.
2902         * gnulib/import/m4/getdtablesize.m4: Update.
2903         * gnulib/import/m4/getlogin.m4: Update.
2904         * gnulib/import/m4/getlogin_r.m4: Update.
2905         * gnulib/import/m4/getpagesize.m4: Update.
2906         * gnulib/import/m4/getprogname.m4: Update.
2907         * gnulib/import/m4/gettimeofday.m4: Update.
2908         * gnulib/import/m4/glibc21.m4: Update.
2909         * gnulib/import/m4/glob.m4: Update.
2910         * gnulib/import/m4/glob_h.m4: Update.
2911         * gnulib/import/m4/gnulib-cache.m4: Update.
2912         * gnulib/import/m4/gnulib-common.m4: Update.
2913         * gnulib/import/m4/gnulib-comp.m4: Update.
2914         * gnulib/import/m4/gnulib-tool.m4: Update.
2915         * gnulib/import/m4/hard-locale.m4: Update.
2916         * gnulib/import/m4/include_next.m4: Update.
2917         * gnulib/import/m4/inttypes-pri.m4: Update.
2918         * gnulib/import/m4/inttypes.m4: Update.
2919         * gnulib/import/m4/isnand.m4: Update.
2920         * gnulib/import/m4/isnanl.m4: Update.
2921         * gnulib/import/m4/largefile.m4: Update.
2922         * gnulib/import/m4/limits-h.m4: Update.
2923         * gnulib/import/m4/localcharset.m4: Update.
2924         * gnulib/import/m4/locale-fr.m4: Update.
2925         * gnulib/import/m4/locale-ja.m4: Update.
2926         * gnulib/import/m4/locale-zh.m4: Update.
2927         * gnulib/import/m4/localtime-buffer.m4: Update.
2928         * gnulib/import/m4/longlong.m4: Update.
2929         * gnulib/import/m4/lstat.m4: Update.
2930         * gnulib/import/m4/malloc.m4: Update.
2931         * gnulib/import/m4/malloca.m4: Update.
2932         * gnulib/import/m4/math_h.m4: Update.
2933         * gnulib/import/m4/mbrtowc.m4: Update.
2934         * gnulib/import/m4/mbsinit.m4: Update.
2935         * gnulib/import/m4/mbsrtowcs.m4: Update.
2936         * gnulib/import/m4/mbstate_t.m4: Update.
2937         * gnulib/import/m4/memchr.m4: Update.
2938         * gnulib/import/m4/memmem.m4: Update.
2939         * gnulib/import/m4/mempcpy.m4: Update.
2940         * gnulib/import/m4/memrchr.m4: Update.
2941         * gnulib/import/m4/mkdir.m4: Update.
2942         * gnulib/import/m4/mkstemp.m4: Update.
2943         * gnulib/import/m4/mmap-anon.m4: Update.
2944         * gnulib/import/m4/mode_t.m4: Update.
2945         * gnulib/import/m4/msvc-inval.m4: Update.
2946         * gnulib/import/m4/msvc-nothrow.m4: Update.
2947         * gnulib/import/m4/multiarch.m4: Update.
2948         * gnulib/import/m4/nocrash.m4: Update.
2949         * gnulib/import/m4/off_t.m4: Update.
2950         * gnulib/import/m4/onceonly.m4: Update.
2951         * gnulib/import/m4/open-cloexec.m4: Update.
2952         * gnulib/import/m4/open.m4: Update.
2953         * gnulib/import/m4/openat.m4: Update.
2954         * gnulib/import/m4/opendir.m4: Update.
2955         * gnulib/import/m4/pathmax.m4: Update.
2956         * gnulib/import/m4/rawmemchr.m4: Update.
2957         * gnulib/import/m4/readdir.m4: Update.
2958         * gnulib/import/m4/readlink.m4: Update.
2959         * gnulib/import/m4/realloc.m4: Update.
2960         * gnulib/import/m4/rename.m4: Update.
2961         * gnulib/import/m4/rewinddir.m4: Update.
2962         * gnulib/import/m4/rmdir.m4: Update.
2963         * gnulib/import/m4/save-cwd.m4: Update.
2964         * gnulib/import/m4/secure_getenv.m4: Update.
2965         * gnulib/import/m4/setenv.m4: Update.
2966         * gnulib/import/m4/signal_h.m4: Update.
2967         * gnulib/import/m4/ssize_t.m4: Update.
2968         * gnulib/import/m4/stat-time.m4: Update.
2969         * gnulib/import/m4/stat.m4: Update.
2970         * gnulib/import/m4/std-gnu11.m4: Update.
2971         * gnulib/import/m4/stdbool.m4: Update.
2972         * gnulib/import/m4/stddef_h.m4: Update.
2973         * gnulib/import/m4/stdint.m4: Update.
2974         * gnulib/import/m4/stdio_h.m4: Update.
2975         * gnulib/import/m4/stdlib_h.m4: Update.
2976         * gnulib/import/m4/strchrnul.m4: Update.
2977         * gnulib/import/m4/strdup.m4: Update.
2978         * gnulib/import/m4/strerror.m4: Update.
2979         * gnulib/import/m4/string_h.m4: Update.
2980         * gnulib/import/m4/strstr.m4: Update.
2981         * gnulib/import/m4/strtok_r.m4: Update.
2982         * gnulib/import/m4/sys_socket_h.m4: Update.
2983         * gnulib/import/m4/sys_stat_h.m4: Update.
2984         * gnulib/import/m4/sys_time_h.m4: Update.
2985         * gnulib/import/m4/sys_types_h.m4: Update.
2986         * gnulib/import/m4/tempname.m4: Update.
2987         * gnulib/import/m4/time_h.m4: Update.
2988         * gnulib/import/m4/unistd-safer.m4: Update.
2989         * gnulib/import/m4/unistd_h.m4: Update.
2990         * gnulib/import/m4/warn-on-use.m4: Update.
2991         * gnulib/import/m4/wchar_h.m4: Update.
2992         * gnulib/import/m4/wchar_t.m4: Update.
2993         * gnulib/import/m4/wctype_h.m4: Update.
2994         * gnulib/import/m4/wint_t.m4: Update.
2995         * gnulib/import/malloc.c: Update.
2996         * gnulib/import/malloc/scratch_buffer.h: Update.
2997         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2998         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2999         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3000         * gnulib/import/malloca.c: Update.
3001         * gnulib/import/malloca.h: Update.
3002         * gnulib/import/malloca.valgrind: Update.
3003         * gnulib/import/math.in.h: Update.
3004         * gnulib/import/mbrtowc.c: Update.
3005         * gnulib/import/mbsinit.c: Update.
3006         * gnulib/import/mbsrtowcs-impl.h: Update.
3007         * gnulib/import/mbsrtowcs-state.c: Update.
3008         * gnulib/import/mbsrtowcs.c: Update.
3009         * gnulib/import/memchr.c: Update.
3010         * gnulib/import/memmem.c: Update.
3011         * gnulib/import/mempcpy.c: Update.
3012         * gnulib/import/memrchr.c: Update.
3013         * gnulib/import/mkdir.c: Update.
3014         * gnulib/import/mkstemp.c: Update.
3015         * gnulib/import/msvc-inval.c: Update.
3016         * gnulib/import/msvc-inval.h: Update.
3017         * gnulib/import/msvc-nothrow.c: Update.
3018         * gnulib/import/msvc-nothrow.h: Update.
3019         * gnulib/import/open.c: Update.
3020         * gnulib/import/openat-die.c: Update.
3021         * gnulib/import/openat-priv.h: Update.
3022         * gnulib/import/openat-proc.c: Update.
3023         * gnulib/import/openat.c: Update.
3024         * gnulib/import/openat.h: Update.
3025         * gnulib/import/opendir.c: Update.
3026         * gnulib/import/pathmax.h: Update.
3027         * gnulib/import/pipe-safer.c: Update.
3028         * gnulib/import/rawmemchr.c: Update.
3029         * gnulib/import/readdir.c: Update.
3030         * gnulib/import/readlink.c: Update.
3031         * gnulib/import/realloc.c: Update.
3032         * gnulib/import/ref-add.sin: Update.
3033         * gnulib/import/ref-del.sin: Update.
3034         * gnulib/import/rename.c: Update.
3035         * gnulib/import/rewinddir.c: Update.
3036         * gnulib/import/rmdir.c: Update.
3037         * gnulib/import/same-inode.h: Update.
3038         * gnulib/import/save-cwd.c: Update.
3039         * gnulib/import/save-cwd.h: Update.
3040         * gnulib/import/scratch_buffer.h: Update.
3041         * gnulib/import/secure_getenv.c: Update.
3042         * gnulib/import/setenv.c: Update.
3043         * gnulib/import/signal.in.h: Update.
3044         * gnulib/import/stat-time.c: Update.
3045         * gnulib/import/stat-time.h: Update.
3046         * gnulib/import/stat-w32.c: Update.
3047         * gnulib/import/stat-w32.h: Update.
3048         * gnulib/import/stat.c: Update.
3049         * gnulib/import/stdbool.in.h: Update.
3050         * gnulib/import/stddef.in.h: Update.
3051         * gnulib/import/stdint.in.h: Update.
3052         * gnulib/import/stdio.in.h: Update.
3053         * gnulib/import/stdlib.in.h: Update.
3054         * gnulib/import/str-two-way.h: Update.
3055         * gnulib/import/strchrnul.c: Update.
3056         * gnulib/import/strdup.c: Update.
3057         * gnulib/import/streq.h: Update.
3058         * gnulib/import/strerror-override.c: Update.
3059         * gnulib/import/strerror-override.h: Update.
3060         * gnulib/import/strerror.c: Update.
3061         * gnulib/import/string.in.h: Update.
3062         * gnulib/import/stripslash.c: Update.
3063         * gnulib/import/strnlen1.c: Update.
3064         * gnulib/import/strnlen1.h: Update.
3065         * gnulib/import/strstr.c: Update.
3066         * gnulib/import/strtok_r.c: Update.
3067         * gnulib/import/sys_stat.in.h: Update.
3068         * gnulib/import/sys_time.in.h: Update.
3069         * gnulib/import/sys_types.in.h: Update.
3070         * gnulib/import/tempname.c: Update.
3071         * gnulib/import/tempname.h: Update.
3072         * gnulib/import/time.in.h: Update.
3073         * gnulib/import/unistd--.h: Update.
3074         * gnulib/import/unistd-safer.h: Update.
3075         * gnulib/import/unistd.in.h: Update.
3076         * gnulib/import/unsetenv.c: Update.
3077         * gnulib/import/verify.h: Update.
3078         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3079         * gnulib/import/wchar.in.h: Update.
3080         * gnulib/import/wctype.in.h: Update.
3081         * gnulib/import/xalloc-oversized.h: Update.
3082         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3083         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3084
3085 2018-08-16  Gary Benson <gbenson@redhat.com>
3086
3087         PR gdb/13000:
3088         * gdb/main.c (captured_main_1): Exit with nonzero status
3089         in batch mode if the last command to be executed failed.
3090         * NEWS: Mention the above.
3091
3092 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3093
3094         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3095         end of warning message.
3096
3097 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3098
3099         PR gdb/22943:
3100         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3101         (aarch64_extract_return_value): Use
3102         aapcs_is_vfp_call_or_return_candidate.
3103         (aarch64_return_in_memory): Likewise.
3104         (aarch64_store_return_value): Likewise.
3105
3106 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3107
3108         * aarch64-tdep.c
3109         (aapcs_is_vfp_call_or_return_candidate): Make static
3110         (pass_in_v_or_stack): Remove function.
3111         (pass_in_v_vfp_candidate): New function.
3112         (aarch64_push_dummy_call): Check for float register candidates.
3113
3114 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3115
3116         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3117         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3118         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3119
3120 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3121
3122         PR build/23399
3123         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3124         (struct ipa_sym_addresses): Rename to...
3125         (struct ipa_sym_addresses_common): ... this.
3126         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3127
3128 2018-08-28  Tom Tromey  <tom@tromey.com>
3129
3130         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3131         (token_fifo): Now a std::vector.
3132         (yylex, c_parse): Update.
3133         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3134         (token_fifo): Now a std::vector.
3135         (yylex, d_parse): Update.
3136         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3137         (token_fifo): Now a std::vector.
3138         (yylex, go_parse): Update.
3139
3140 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3141
3142         * parser-defs.h (struct type_stack) <elements>: Change type to
3143         std::vector<union type_stack_elt>.
3144         <depth, size>: Remove.
3145         * parse.c (parse_exp_in_context_1): Adjust.
3146         (type_stack_reserve): Remove.
3147         (check_type_stack_depth): Remove.
3148         (insert_into_type_stack): Adjust to std::vector.
3149         (insert_type): Likewise.
3150         (push_type): Likewise.
3151         (push_type_int): Likewise.
3152         (insert_type_address_space): Likewise.
3153         (pop_type): Likewise.
3154         (pop_type_int): Likewise.
3155         (pop_typelist): Likewise.
3156         (pop_type_stack): Likewise.
3157         (append_type_stack): Likewise.
3158         (push_type_stack): Likewise.
3159         (get_type_stack): Likewise.
3160         (type_stack_cleanup): Likewise.
3161         (push_typelist): Likewise.
3162         (follow_types): Likewise.
3163         (_initialize_parse): Likewise.
3164
3165 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3166
3167         * NEWS: Mention csky target.
3168
3169 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3170             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3171             Don Breazeal  <donb@codesourcery.com>
3172
3173         * csky-linux-tdep.c: New file.
3174         * csky-tdep.c: Likewise.
3175         * csky-tdep.h: Likewise.
3176         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3177         csky-tdep.o.
3178         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3179         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3180         * configure.tgt: Add csky support.
3181
3182 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3183
3184         * python/py-framefilter.c (py_print_frame): Print frame architecture
3185         when printing on an MI output.
3186
3187 2018-08-27  Tom Tromey  <tom@tromey.com>
3188
3189         PR build/23087:
3190         * configure: Rebuild.
3191         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3192
3193 2018-08-27  Tom Tromey  <tom@tromey.com>
3194
3195         * aarch64-linux-tdep.c
3196         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3197         casts to int.
3198
3199 2018-08-27  Tom Tromey  <tom@tromey.com>
3200
3201         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3202         unsigned.
3203         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3204         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3205         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3206         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3207         unsigned.
3208
3209 2018-08-27  Tom Tromey  <tom@tromey.com>
3210
3211         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3212         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3213
3214 2018-08-27  Tom Tromey  <tom@tromey.com>
3215
3216         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3217         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3218         ULONGEST_MAX.
3219         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3220         ULONGEST_MAX.
3221         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3222         ULONGEST_MAX.
3223         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3224         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3225         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3226         ULONGEST_MAX.
3227         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3228         (ppc64_linux_sigaction_tramp_frame)
3229         (ppc32_linux_sighandler_tramp_frame)
3230         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3231         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3232         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3233         * mn10300-linux-tdep.c (am33_linux_sigframe)
3234         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3235         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3236         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3237         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3238         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3239         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3240         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3241         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3242         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3243         * microblaze-linux-tdep.c
3244         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3245         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3246         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3247         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3248         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3249         * common/common-types.h (ULONGEST_MAX): New define.
3250         (CORE_ADDR_MAX): Fix formatting.
3251         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3252         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3253         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3254         (arm_linux_rt_sigreturn_tramp_frame)
3255         (arm_eabi_linux_sigreturn_tramp_frame)
3256         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3257         (thumb2_eabi_linux_sigreturn_tramp_frame)
3258         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3259         (arm_linux_restart_syscall_tramp_frame)
3260         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3261         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3262         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3263         ULONGEST_MAX.
3264         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3265
3266 2018-08-27  Tom Tromey  <tom@tromey.com>
3267
3268         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3269         CORE_ADDR_MAX.
3270         * mips-tdep.c (mips_deal_with_atomic_sequence)
3271         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3272         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3273         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3274         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3275         CORE_ADDR_MAX.
3276         * aarch64-tdep.c (aarch64_software_single_step): Use
3277         CORE_ADDR_MAX.
3278
3279 2018-08-27  Tom Tromey  <tom@tromey.com>
3280
3281         * linespec.c (complete_linespec_component): Add cast to "char".
3282         * completer.c (completion_tracker::build_completion_result): Add
3283         cast to "char".
3284
3285 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3286
3287         * solist.h (struct solist, struct target_so_ops): Fix
3288         indentation.
3289
3290 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3291
3292         * ada-tasks.c (ada_task_info_s): Remove typedef.
3293         (DEF_VEC_O(ada_task_info_s)): Remove.
3294         (struct ada_tasks_inferior_data): Initialize fields.
3295         <task_list>: Make an std::vector.
3296         (get_ada_tasks_inferior_data): Allocate with new.
3297         (ada_get_task_number): Adjust.
3298         (get_task_number_from_id): Likewise.
3299         (valid_task_id): Likewise.
3300         (ada_get_task_info_from_ptid): Likewise.
3301         (iterate_over_live_ada_tasks): Likewise.
3302         (add_ada_task): Likewise.
3303         (read_known_tasks): Likewise.
3304         (ada_build_task_list): Likewise.
3305         (print_ada_task_info): Likewise.
3306         (info_task): Likewise.
3307         (task_command_1): Likewise.
3308
3309 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3310
3311         * ada-lang.c (add_angle_brackets): Return std::string.
3312
3313 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3314
3315         * python/py-threadevent.c (py_get_event_thread): Initialize
3316         pythread.
3317
3318 2018-08-24  Pedro Alves  <palves@redhat.com>
3319
3320         * python/py-bpevent.c (create_breakpoint_event_object): Use
3321         copy-initialization.
3322         * python/py-continueevent.c (emit_continue_event): Use
3323         copy-initialization.
3324         * python/py-exitedevent.c (create_exited_event_object): Return a
3325         gdbpy_ref<>.
3326         (emit_exited_event): Use copy-initialization.
3327         * python/py-inferior.c (python_new_inferior)
3328         (python_inferior_deleted, add_thread_object): Use
3329         copy-initialization.
3330         * python/py-infevents.c (create_inferior_call_event_object)
3331         (create_register_changed_event_object)
3332         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3333         (emit_inferior_call_event, emit_memory_changed_event)
3334         (emit_register_changed_event): Use copy-initialization.
3335         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3336         Return a gdbpy_ref<>.
3337         (emit_new_objfile_event): Use copy-initialization.
3338         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3339         (emit_clear_objfiles_event): Use copy-initialization.
3340         * python/py-signalevent.c (create_signal_event_object): Use
3341         copy-initialization.
3342         * python/py-threadevent.c (create_thread_event_object): Use
3343         copy-initialization.
3344
3345 2018-08-24  Pedro Alves  <palves@redhat.com>
3346             Simon Marchi  <simon.marchi@ericsson.com>
3347
3348         PR gdb/23379
3349         * python/py-continueevent.c: Include "gdbthread.h".
3350         (create_continue_event_object): Add intro comment.  Add 'ptid'
3351         parameter.  Use it to find thread to pass to
3352         create_thread_event_object.
3353         (emit_continue_event): Pass PTID down to
3354         create_continue_event_object.
3355         * python/py-event.h (py_get_event_thread): Declare.
3356         (create_thread_event_object): Remove default from 'thread'
3357         parameter.
3358         * python/py-stopevent.c (create_stop_event_object): Use
3359         py_get_event_thread.
3360         * python/py-threadevent.c (get_event_thread): Rename to ...
3361         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3362         and use it to find the thread.
3363         (create_thread_event_object): Assert that THREAD isn't null.
3364         Don't find the event thread here.
3365
3366 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3367
3368         * block.h (blockrange, blockranges): New struct declarations.
3369         (struct block): Add new field named `ranges'.
3370         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3371         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3372         macros for accessing ranges in struct block.
3373         (make_blockranges): New declaration.
3374         block.c (make_blockranges): New function.
3375         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3376         for block.
3377         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3378         * blockframe.c (cache_pc_function_block): New static global.
3379         (clear_pc_function_cache): Clear cache_pc_function_block.
3380         (find_pc_partial_function): Move comment to symtab.h.  Add
3381         support for non-contiguous blocks.
3382         * cli/cli-cmds.c (block.h): Include.
3383         (print_disassembly): Handle printing of non-contiguous blocks.
3384         (disassemble_current_function): Likewise.
3385         (disassemble_command): Likewise.
3386
3387         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3388         BLOCK_START.
3389         * blockframe.c (get_pc_function_start): Likewise.
3390         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3391         (gcc_symbol_address): Likewise.
3392         * compile/compile-object-run.c (compile_object_run): Likewise.
3393         * compile/compile.c (get_expr_block_and_pc): Likewise.
3394         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3395         (func_addr_to_tail_call_list): Likewise.
3396         * findvar.c (default_read_var_value): Likewise.
3397         * inline-frame.c (inline_frame_this_id): Likewise.
3398         (skip-inline_frames): Likewise.
3399         * infcmd.c (until_next_command): Likewise.
3400         * linespec.c (convert_linespec_to_sals): Likewise.
3401         * parse.c (parse_exp_in_context_1): Likewise.
3402         * printcmd.c (build_address_symbolic): likewise.
3403         (info_address_command): Likewise.
3404         symtab.c (find_function_start_sal): Likewise.
3405         (skip_prologue_sal): Likewise.
3406         (find_function_alias_target): Likewise.
3407         (find_gnu_ifunc): Likewise.
3408         * stack.c (find_frame_funname): Likewise.
3409         * symtab.c (fixup_symbol_section): Likewise.
3410         (find_function_start_sal): Likewise.
3411         (skip_prologue_sal): Likewsie.
3412         (find_function_alias_target): Likewise.
3413         (find_gnu_ifunc): Likewise.
3414         * tracepoint.c (info_scope_command): Likewise.
3415         * value.c (value_fn_field): Likewise.
3416
3417         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3418         in place of find_pc_partial_function.
3419         * blockframe.c (find_function_entry_range_from_pc): New function.
3420         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3421         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3422         for each range in a block.
3423
3424
3425 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3426
3427         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3428         incrementation.
3429
3430 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3431
3432         * solib-svr4.c (read_program_headers_from_bfd): Return
3433         gdb::optional<gdb::byte_vector>.
3434         (svr4_exec_displacement): Adjust.
3435
3436 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3437
3438         * solib-svr4.c (read_program_header): Return
3439         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3440         (find_program_interpreter): Return
3441         gdb::optional<gdb::byte_vector>.
3442         (scan_dyntag_auxv): Adjust.
3443         (enable_break): Adjust.
3444         (svr4_exec_displacement): Adjust.
3445
3446 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3447
3448         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3449         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3450
3451 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3452
3453         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3454         string_vprintf.
3455         * guile/scm-utils.c (gdbscm_printf): Likewise.
3456         * serial.c (serial_printf): Likewise.
3457         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3458
3459 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3460
3461         * stack.c (print_frame): Print frame architecture when printing on
3462         an MI output.
3463         * NEWS: Mention new "arch" attribute in frame output.
3464
3465 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3466
3467         * arch/aarch64.h (aarch64_regnum): Update comment.
3468
3469 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3470
3471         * NEWS: Add SVE to 8.2 section.
3472
3473 2018-08-21  Pedro Alves  <palves@redhat.com>
3474
3475         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3476         out from gdbscm_parse_function_args.
3477         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3478         gdbscm_parse_function_args_1.
3479
3480 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3481
3482         PR gdb/17816
3483         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3484         operator.
3485
3486 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3487
3488         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3489
3490 2018-08-19  Michael Spang  <spang@google.com>
3491
3492         PR gdb/11786
3493         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3494         for PT_TLS segments.
3495
3496 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3497
3498         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3499         dwarf_variable_value.
3500         * dwarf2-frame.c (class dwarf_expr_executor):
3501         Add override for dwarf_variable_value.
3502         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3503         (class symbol_needs_eval_context): Likewise.
3504         (indirect_synthetic_pointer): Add forward declaration.
3505         (sect_variable_value): New function.
3506         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3507         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3508         for DW_OP_GNU_variable_value.
3509
3510 2018-08-16  Tom Tromey  <tom@tromey.com>
3511
3512         * top.c (read_command_file): Update.
3513         (command_line_input): Remove "repeat" argument.
3514         * ada-lang.c (get_selections): Update.
3515         * linespec.c (decode_line_2): Update.
3516         * defs.h (command_line_input): Remove argument.
3517         * cli/cli-script.c (read_next_line): Update.
3518         * python/py-gdb-readline.c: Update.
3519
3520 2018-08-17  Tom Tromey  <tom@tromey.com>
3521
3522         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3523         command_line_input.
3524
3525 2018-08-15  Tom Tromey  <tom@tromey.com>
3526
3527         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3528
3529 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3530
3531         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3532         If used, use find_pc_partial_function to find address range
3533         to disassemble.
3534         * mi/mi-main.c (mi_cmd_list_features): Report
3535         "data-disassemble-a-option" feature.
3536         * NEWS: Mention new -data-disassemble option -a.
3537
3538 2018-08-13  Tom Tromey  <tom@tromey.com>
3539
3540         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3541
3542 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3543
3544         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3545         (aarch64_linux_collect_sve_regset): Likewise.
3546         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3547         * regcache.h (regcache_map_entry_size): New function.
3548
3549 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3550
3551         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3552         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3553         (SVE_HEADER_VL_LENGTH): Likewise.
3554         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3555         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3556         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3557         (SVE_HEADER_SIZE_OFFSET): Likewise.
3558         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3559         (SVE_HEADER_VL_OFFSET): Likewise.
3560         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3561         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3562         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3563         (SVE_HEADER_SIZE): Likewise.
3564         (aarch64_linux_core_read_vq): Add function.
3565         (aarch64_linux_core_read_description): Check for SVE section.
3566
3567 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3568
3569         * aarch64-fbsd-tdep.c
3570         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3571         collect_size.
3572         * aarch64-linux-tdep.c
3573         (aarch64_linux_iterate_over_regset_sections): Likewise.
3574         * alpha-linux-tdep.c
3575         (alpha_linux_iterate_over_regset_sections):
3576         * alpha-nbsd-tdep.c
3577         (alphanbsd_iterate_over_regset_sections): Likewise.
3578         * amd64-fbsd-tdep.c
3579         (amd64fbsd_iterate_over_regset_sections): Likewise.
3580         * amd64-linux-tdep.c
3581         (amd64_linux_iterate_over_regset_sections): Likewise.
3582         * arm-bsd-tdep.c
3583         (armbsd_iterate_over_regset_sections): Likewise.
3584         * arm-fbsd-tdep.c
3585         (arm_fbsd_iterate_over_regset_sections): Likewise.
3586         * arm-linux-tdep.c
3587         (arm_linux_iterate_over_regset_sections): Likewise.
3588         * corelow.c (get_core_registers_cb): Likewise.
3589         (core_target::fetch_registers): Likewise.
3590         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3591         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3592         * gdbarch.h (void): Regenerate.
3593         * gdbarch.sh: Add supply_size and collect_size.
3594         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3595         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3596         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3597         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3598         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3599         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3600         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3601         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3602         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3603         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3604         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3605         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3606         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3607         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3608         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3609         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3610         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3611         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3612         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3613         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3614         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3615         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3616         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3617         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3618         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3619         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3620         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3621         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3622         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3623         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3624
3625 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3626
3627         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3628         with string_printf.
3629
3630 2018-08-10  Keith Seitz  <keiths@redhat.com>
3631
3632         * compile/compile-c-support.c (add_code_header, add_code_footer):
3633         Move into policy class.
3634         (c_push_user_expression, pop_user_expression_nop)
3635         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3636         (compile_program): New host class.
3637         (c_compile_program): New typedef.
3638         (c_compute_porgram): Use c_compile_program.
3639
3640 2018-08-10  Keith Seitz  <keiths@redhat.com>
3641
3642         * compile/compile-internal.h (compile_instance::~compile_instance):
3643         Remove calls to htab_delete.
3644         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3645         * compile.c (compile_instance::compile_instance): Initialize
3646         htab unique pointers.
3647         (compile_instance::get_cached_type, compile_instance::insert_type)
3648         (compile_instance::error_symbol_once): Update for unique_ptr.
3649
3650 2018-08-10  Keith Seitz  <keiths@redhat.com>
3651
3652         * compile/compile-c-symbols.c (struct symbol_error)
3653         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3654         (compile_instance::insert_symbol_error)
3655         (compile_instance::error_symbol_once): Move to ...
3656         * compile/compile.c: ... here.
3657
3658 2018-08-10  Keith Seitz  <keiths@redhat.com>
3659
3660         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3661         instead of `new_compile_instance'.
3662         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3663         Update description.
3664         If the symbol error map is not initialized, create it.
3665         (generate_c_for_for_one_symbol): Do not check/initialize
3666         the symbol error map.
3667         * compile/compile-c-types.c (compile_c_instance): Make a class.
3668         Update all callers.
3669         (compile_instance::compile_instance): Initialize the type cache.
3670         (get_cached_type): New function.
3671         (insert_type): Update description.
3672         (compile_c_instance::m_default_cflags): Define.
3673         (convert_type): Update description.  Use get_cached_type.
3674         (delete_instance): Moved to destructor.
3675         (new_compile_instance): Moved to constructor.
3676         * compile/compile-c.h (compile_c_instance): Make class inheriting
3677         from compile_instance.
3678         <base>: Remove field.
3679         <type_map, symbol_err_map>: Move to base class.
3680         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3681         * compile/compile-internal.h (compile_instance): Make class.
3682         <type_map_t, symbol_err_map_t>: Define.
3683         <fe>: Rename to `m_gcc_fe'.
3684         <scope, block, gcc_target_options>: Add `m_' prefix.
3685         <m_type_map, m_symbol_err_map>: New fields, moved from
3686         compile_c_instance.
3687         <destroy>: Remove.
3688         (convert_type, new_compile_instance): Remove.
3689         * compile/compile.c (cleanup_compile_instance): Remove.
3690         (compile_to_object): Use unique_ptr to eliminate cleanups.
3691         (compile_instance::set_print_callback, compile_instance::version)
3692         (compile_instance::set_verbose)
3693         (compile_instance::set_driver_filename)
3694         (compile_instance::set_triplet_regexp)
3695         (compile_instance::set_arguments)
3696         (compile_instance::set_source_file)
3697         (compile_instance::compile): Define.
3698
3699 2018-08-10  Keith Seitz  <keiths@redhat.com>
3700
3701         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3702         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3703         gcc-c-fe.def to define C plugin.
3704         (delete_instance): Delete `c_plugin'.
3705         (new_compile_instance): Initialize `c_plugin'.
3706         * compile/compile-c.h: Include gcc_c_plugin.h.
3707         (struct compile_c_instance) <c_plugin>: New member.
3708         * gcc-c-plugin.h: New file.
3709         Update all callers with API change.
3710
3711 2018-08-10  Keith Seitz  <keiths@redhat.com>
3712
3713         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3714         (HFILES_NO_SRCDIR): ... to here.
3715         Add compile-internal.h and compile-c.h.
3716         * compile/compile-c-support.c: Include compile-c.h.
3717         * compile/compile-c-symbols.c: Include compile-c.h.
3718         (generate_c_for_variable_locations): Update comment.
3719         * compile/compile-c-types.c: Include compile-c.h.
3720         * compile/compile-c.h: New file -- moved C language declarations
3721         from other files here.
3722         * compile/compile-internal.h: Do not include hashtab.h or
3723         common/enum-flags.h.
3724         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3725         (gcc_convert_symbol, gcc_symbol_address)
3726         (generate_c_for_variable_locations, c_get_mode_for_size)
3727         (c_get_range_decl_name): Definitions moved to compile-c.h.
3728         * compile/compile-loc2c.c: Include compile-c.h.
3729
3730 2018-08-10  Keith Seitz  <keiths@redhat.com>
3731
3732         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3733         (c_symbol_substitution_name): ... this.
3734         Update all callers.
3735
3736 2018-08-10  Keith Seitz  <keiths@redhat.com>
3737
3738         * compile/compile-c-support.c (c_compute_program): Use
3739         unique_xmalloc_ptr to eliminate cleanup.
3740         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3741         Return a unique_xmalloc_ptr and eliminate cleanup.
3742         * compile/compile-internal.h (generate_c_for_variable_locations):
3743         Return unique_xmalloc_ptr and update description.
3744
3745 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3746
3747         * corelow.c (core_target::get_core_register_section): Rename
3748         min_size to section_min_size.
3749
3750 2018-08-09  Jim Wilson  <jimw@sifive.com>
3751
3752         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3753         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3754         * NEWS: Mention new GNU/Linux RISC-V target.
3755         * configure.host: Add riscv*-*-linux*.
3756         * configure.nat: Add riscv*.
3757         * configure.tgt: Add riscv*-*-linux*.
3758         * riscv-linux-nat.c: New file.
3759         * riscv-linux-tdep.c: New file.
3760
3761 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3762
3763         * infrun.c (resume): Make static, add forward declaration.
3764         (proceed): Update header comment.
3765         * infrun.h (resume): Delete declaration.
3766
3767 2018-08-09  Tom Tromey  <tom@tromey.com>
3768
3769         * riscv-tdep.h: Minor formatting fixes.
3770
3771 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3772
3773         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3774         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3775         (test_mkdir_recursive): Likewise.
3776         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3777
3778 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3779
3780         * valarith.c (value_subscripted_rvalue): If an array is not in
3781         memory, and we don't know the upper bound, then we can't know that
3782         the requested element exists or not.
3783
3784 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3785
3786         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3787         (target_options_to_string): Add comment.
3788
3789 2018-08-08  Tom Tromey  <tom@tromey.com>
3790
3791         * unittests/scoped_mmap-selftests.c: Check result of "write".
3792
3793 2018-08-08  Jim Wilson  <jimw@sifive.com>
3794
3795         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3796         (decode_register_index_short): New.
3797         (decode_j_type_insn, decode_cj_type_insn): New.
3798         (decode_b_type_insn, decode_cb_type_insn): New.
3799         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3800         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3801         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3802         is_c_sw_insn instead of is_sw_insn.
3803         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3804         (riscv_software_single_step): New.
3805         * riscv-tdep.h (riscv_software_single_step): Declare.
3806
3807         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3808         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3809
3810 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3811
3812         PR gdb/18050:
3813         * target.c (dispose_inferior): Don't dispose of inferiors that are
3814         already killed.
3815
3816 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3817
3818         * remote.c (remote_target::download_tracepoint): Change char* to
3819         const char*.
3820
3821 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3822
3823         * target.h (target_options_to_string): Return an std::string.
3824         * target.c (str_comma_list_concat_elem): Return void, use
3825         std::string.
3826         (do_option): Likewise.
3827         (target_options_to_string): Return an std::string.
3828         * linux-nat.c (linux_nat_target::wait): Adjust.
3829         * target-debug.h (target_debug_print_options): Adjust.
3830
3831 2018-08-07  Tom Tromey  <tom@tromey.com>
3832
3833         * Makefile.in (CPPFLAGS): New variable.
3834         (INTERNAL_CPPFLAGS): Use it.
3835
3836 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3837
3838         * NEWS: Mention the index cache.
3839
3840 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3841
3842         * common/pathstuff.h (get_standard_cache_dir): New.
3843         * common/pathstuff.c (get_standard_cache_dir): New.
3844         * build-id.h (build_id_to_string): New.
3845         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3846         DEBUG_STR_SUFFIX): Move to here.
3847         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3848         DEBUG_STR_SUFFIX): Move from there.
3849         (write_psymtabs_to_index): Make non-static, add basename
3850         parameter.  Write to temporary files, rename when done.
3851         (save_gdb_index_command): Adjust call to
3852         write_psymtabs_to_index.
3853         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3854         field.
3855         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3856         (get_gdb_index_contents_from_cache): New.
3857         (get_gdb_index_contents_from_cache_dwz): New.
3858         (dwarf2_initialize_objfile): Read index from cache.
3859         (dwarf2_build_psymtabs): Save to index.
3860         * dwarf-index-cache.h: New file.
3861         * dwarf-index-cache.c: New file.
3862         * dwarf-index-write.h: New file.
3863
3864 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3865
3866         * gnulib/aclocal.m4: Re-generate.
3867         * gnulib/config.in: Re-generate.
3868         * gnulib/configure: Re-generate.
3869         * gnulib/import/Makefile.am: Re-generate.
3870         * gnulib/import/Makefile.in: Re-generate.
3871         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3872         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3873         * gnulib/import/m4/mkdir.m4: New file.
3874         * gnulib/import/mkdir.c: New file.
3875         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3876         module.
3877
3878 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3879
3880         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3881         * common/scoped_mmap.c: New file.
3882         * common/scoped_mmap.h (destroy): New method.
3883         (~scoped_mmap, reset): Use destroy.
3884         (scoped_mmap): New move constructor.
3885         (mmap_file): New declaration.
3886         * unittests/scoped_mmap-selftests.c (test_normal,
3887         test_invalid_filename, run_tests): New functions.
3888         (_initialize_scoped_mmap_selftests): Register selftest.
3889
3890 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3891
3892         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3893         (read_gdb_index_from_buffer): ... this.  Remove section
3894         parameter, add buffer parameter.
3895         (get_gdb_index_contents_ftype,
3896         get_gdb_index_contents_dwz_ftype): New typedefs.
3897         (dwarf2_read_gdb_index): Add callback parameters to get the
3898         index contents.
3899         (get_gdb_index_contents_from_section): New.
3900         (dwarf2_initialize_objfile): Update call to
3901         dwarf2_read_gdb_index.
3902
3903 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3904
3905         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3906         (gdb_open_cloexec): Likewise.
3907         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3908         (commandline_from_pid): Likewise.
3909         (linux_xfer_osdata_threads): Likewise.
3910         (linux_xfer_osdata_fds): Likewise.
3911         * ada-lang.c (is_package_name): Likewise.
3912         * auxv.c (procfs_xfer_auxv): Likewise.
3913         * breakpoint.c (print_one_breakpoint_location): Use
3914         uiout::field_fmt.
3915         (print_one_catch_solib): Use string_printf.
3916         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3917         (add_pe_forwarded_sym): Likewise.
3918         * dwarf2read.c (create_type_unit_group): Likewise.
3919         (build_error_marker_type): Likewise.
3920         * infcall.c (get_function_name): Likewise.
3921         * valprint.c (print_converted_chars_to_obstack): Likewise.
3922         * xtensa-tdep.c (xtensa_register_type): Likewise.
3923
3924 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
3925
3926         * remote.c (remote_target::download_tracepoint): Fix format
3927         string errors.
3928
3929 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3930
3931         * tracefile.c: Include common/byte-vector.h.
3932         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
3933         with trace_regblock_size if needed.  Update uses of buf.
3934
3935 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3936
3937         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
3938         std::vector<unsigned char>.
3939         * tracepoint.c (collection_list::collection_list): Remove
3940         m_regs_mask initializer from initializer list.  Resize
3941         m_regs_mask using the largest remote register number.
3942         (collection_list::add_remote_register): Remove size check on
3943         m_regs_mask.  Use at to access element.
3944         (collection_list::stringify): Change type of temp_buf to
3945         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
3946         stringify the register mask.  Use pack_hex_byte for the register
3947         mask.
3948
3949 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3950
3951         * tracepoint.h (class collection_list) <add_register>: Remove.
3952         <add_remote_register, add_ax_registers, add_local_register>:
3953         Declare.
3954         <add_memrange>: Add scope parameter.
3955         * tracepoint.c (encode_actions_1): Likewise.
3956         (collection_list::add_register): Rename to ...
3957         (collection_list::add_remote_register): ... this.  Update
3958         comment.
3959         (collection_list::add_ax_registers, add_local_register): New
3960         methods.
3961         (collection_list::add_memrange): Add scope parameter.  Call
3962         add_local_register instead of add_register.
3963         (finalize_tracepoint_aexpr): New function.
3964         (collection_list::collect_symbol): Update calls to add_memrange.
3965         Call add_local_register instead of add_register.  Call
3966         add_ax_registers.  Call finalize_tracepoint_aexpr.
3967         (encode_actions_1): Get remote regnos for $reg action.  Call
3968         add_remote_register, add_ax_registers, and add_local_register.
3969         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3970         (validate_actionline): Call finalize_tracepoint_aexpr.
3971
3972 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3973
3974         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3975         Replace array buf with gdb::char_vector buf, of size
3976         get_remote_packet_size ().  Replace references to buf and
3977         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3978         and xsnprintf with snprintf.  Raise errors if the buffer is too
3979         small.
3980
3981 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3982
3983         * remote.c (remote_target::download_tracepoint): Fix the has_more
3984         predicate in the QTDP action list iteration.
3985
3986 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3987
3988         * remote.c (remote_target::download_tracepoint): Fix indentation
3989         in for block.
3990
3991 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3992
3993         * proc-api.c (_initialize_proc_api): Remove c, unused.
3994         * procfs.c (procfs_init_inferior): Remove signals, unused.
3995         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3996         unused.
3997
3998 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3999             Andrew Burgess  <andrew.burgess@embecosm.com>
4000
4001         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4002         'W_STOPCODE (0)' as this could be ambiguous.
4003
4004 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4005
4006         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4007         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4008         "ai_socktype").
4009
4010 2018-08-02  Tom Tromey  <tom@tromey.com>
4011
4012         PR symtab/16842.
4013         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4014         symbols.
4015         (process_structure_scope): Likewise.
4016
4017 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4018
4019         PR gdb/22629:
4020         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4021         kill inferior.
4022
4023 2018-08-02  Tom Tromey  <tom@tromey.com>
4024
4025         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4026         (darwin_suspend_inferior, darwin_resume_inferior)
4027         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4028         (darwin_check_new_threads): Check result of get_darwin_inferior.
4029
4030 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4031
4032         GDB 8.1.1 released.
4033
4034 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4035
4036         * varobj.c (varobj_get_path_expr_parent): Report an error if
4037         parent is a dynamic varobj.
4038
4039 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4040
4041         * gnulib/aclocal.m4: Re-generate.
4042         * gnulib/config.in: Re-generate.
4043         * gnulib/configure: Re-generate.
4044         * gnulib/import/Makefile.in: Re-generate.
4045         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4046         * gnulib/import/m4/onceonly.m4: Re-generate.
4047
4048 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4049
4050         * target-descriptions.c (struct xml_test_tdesc): New.
4051         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4052         (record_xml_tdesc): Update.
4053         (maintenance_check_xml_descriptions): Update.
4054         * target-descriptions.h (record_xml_tdesc): Update comment.
4055
4056 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4057
4058         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4059         checking array bounds are defined.
4060
4061 2018-07-30  Tom Tromey  <tom@tromey.com>
4062
4063         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4064         irreflexivity violation.
4065
4066 2018-07-30  Tom Tromey  <tom@tromey.com>
4067
4068         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4069         * value.c (unpack_long): Remove lint code.
4070         * valops.c (value_ind): Remove lint code.
4071         * valarith.c (value_x_binop, value_x_unop, value_equal)
4072         (value_pos): Remove lint code.
4073
4074 2018-07-28  Tom de Vries  <tdevries@suse.de>
4075
4076         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4077         with undefined upper bound as <optimized out>.
4078
4079 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4080
4081         * gcore.in: Rename variable "name" to "prefix".  Expand
4082         "usage" text.
4083
4084 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4085
4086         * windows-nat.c (windows_nat_target::create_inferior): Update to
4087         call close() in global namespace.
4088
4089 2018-07-26  Tom Tromey  <tom@tromey.com>
4090
4091         * dwarf-index-write.c (add_address_entry): Don't add objfile
4092         offsets.
4093         * dbxread.c (find_stab_function): Rename from
4094         find_stab_function_addr.  Return a bound_minimal_symbol.
4095         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4096         Don't add objfile offsets.
4097         (end_psymtab): Use raw_text_low, raw_text_high,
4098         MSYMBOL_VALUE_RAW_ADDRESS.
4099         (read_ofile_symtab): Update.
4100         (process_one_symbol): Update.
4101         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4102         offsets.
4103         (dw2_relocate): Remove.
4104         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4105         searching addrmap.
4106         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4107         Update.
4108         (process_psymtab_comp_unit_reader, add_partial_symbol)
4109         (add_partial_subprogram, dwarf2_ranges_read): Update.
4110         (load_partial_dies): Update.
4111         (add_address_entry): Don't add objfile offsets.
4112         (dwarf2_build_include_psymtabs): Update.
4113         (create_addrmap_from_aranges): Don't add objfile offsets.
4114         (dw2_find_pc_sect_compunit_symtab): Update.
4115         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4116         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4117         Update.
4118         (parse_partial_symbols): Don't add objfile offsets.  Use
4119         raw_text_low, raw_text_high.  Update.
4120         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4121         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4122         or call 'relocate' quick function.  Clear psymbol_map.
4123         * psympriv.h (struct partial_symbol) <address>: Add section
4124         offset.
4125         <set_unrelocated_address>: Rename from set_address.
4126         <raw_text_low, raw_text_high>: New methods.
4127         <text_low, text_high>: Add objfile parameter.
4128         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4129         set_unrelocated_address.
4130         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4131         (find_pc_psymbol): Update.
4132         (fixup_psymbol_section, relocate_psymtabs): Remove.
4133         (dump_psymtab, psym_functions): Update.
4134         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4135         parameter.
4136         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4137         (start_psymtab_common): Update.
4138         * symfile-debug.c (debug_qf_relocate): Remove.
4139         (debug_sym_quick_functions): Update.
4140         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4141         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4142         Update.
4143
4144 2018-07-26  Tom Tromey  <tromey@redhat.com>
4145
4146         * dbxread.c (end_psymtab): Use text_high_valid and
4147         text_low_valid.
4148         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4149         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4150         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4151         Update comment.
4152         <text_low_valid, text_high_valid>: New fields.
4153         <set_text_low, set_text_high>: Update.
4154         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4155
4156 2018-07-26  Tom Tromey  <tom@tromey.com>
4157
4158         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4159         Update.
4160         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4161         textlow and texthigh fields.
4162         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4163         Update.
4164         * mdebugread.c (parse_lines, parse_partial_symbols)
4165         (psymtab_to_symtab_1): Update.
4166         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4167         Rename fields.  Update comment.  Now private.
4168         <text_low, text_high, set_text_low, set_text_high>: New methods.
4169         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4170         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4171         (start_psymtab_common, maintenance_info_psymtabs)
4172         (maintenance_check_psymtabs): Update.
4173         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4174         texthigh fields.
4175         (scan_xcoff_symtab): Update.
4176
4177 2018-07-26  Tom Tromey  <tromey@redhat.com>
4178
4179         * psympriv.h (struct partial_symbol) <unrelocated_address,
4180         address, set_address>: New methods.
4181         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4182         (fixup_psymbol_section, relocate_psymtabs): Update.
4183         (print_partial_symbols): Add 'objfile' parameter.  Update.
4184         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4185         Update.
4186
4187 2018-07-26  Tom Tromey  <tom@tromey.com>
4188
4189         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4190         (debug_names::write_psymbols): Update.
4191         * psympriv.h (struct partial_symbol): Derive from
4192         general_symbol_info.
4193         <obj_section>: New method.
4194         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4195         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4196         (find_pc_sect_psymbol, fixup_psymbol_section)
4197         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4198         (print_partial_symbols, recursively_search_psymtabs)
4199         (compare_psymbols, psymbol_hash, psymbol_compare)
4200         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4201         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4202
4203 2018-07-26  Tom Tromey  <tromey@redhat.com>
4204
4205         * dbxread.c (end_psymtab): Remove dead code.
4206
4207 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4208
4209         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4210         DWARF unwinders are disabled.
4211         * dwarf2-frame.c: Add dwarf2read.h include.
4212         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4213         disabled.
4214         (dwarf2_frame_unwinders_enabled_p): Define.
4215         (show_dwarf_unwinders_enabled_p): New function.
4216         (_initialize_dwarf2_frame): Register switch to control DWARF
4217         unwinder use.
4218         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4219         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4220         (show_dwarf_cmdlist): Remove static keyword.
4221         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4222         (show_dwarf_cmdlist): Declare.
4223         * NEWS: Document new feature.
4224
4225 2018-07-26  Tom de Vries  <tdevries@suse.de>
4226
4227         PR breakpoints/23366
4228         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4229
4230 2018-07-26  Tom de Vries  <tdevries@suse.de>
4231
4232         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4233         DW_AT_count can't be translated to a dynamic prop.
4234
4235 2018-07-25  Tom de Vries  <tdevries@suse.de>
4236
4237         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4238         try/catch.
4239
4240 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4241
4242         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4243
4244 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4245
4246         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4247
4248 2018-07-24  Keith Seitz  <keiths@redhat.comt
4249
4250         PR symtab/23010
4251         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4252         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4253         instead of add_symbol_to_list.
4254         (read_file_scope): Call prepare_one_comp_unit before reading
4255         any other DIEs.
4256
4257 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4258
4259         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4260
4261 2018-07-24  Tom Tromey  <tom@tromey.com>
4262
4263         * utils.c (malloc, realloc, free): Don't declare.
4264         * configure, config.in: Rebuild.
4265         * configure.ac: Don't check for declarations of free, malloc, or
4266         realloc.
4267
4268 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4269
4270         * aarch64-linux-nat.c
4271         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4272         variable.
4273         * arm-linux-nat.c (fetch_regs): Likewise.
4274         (store_regs): Likewise.
4275         (fetch_vfp_regs): Likewise.
4276         (store_vfp_regs): Likewise.
4277         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4278         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4279         (arm_linux_nat_target::insert_watchpoint): Likewise.
4280         (arm_linux_nat_target::remove_watchpoint): Likewise.
4281         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4282         Likewise.
4283         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4284         Likewise.
4285         * ppc-linux-nat.c (fetch_register): Likewise.
4286         (fetch_all_gp_regs): Likewise.
4287         (fetch_ppc_registers): Likewise.
4288         (store_all_gp_regs): Likewise.
4289         (store_ppc_registers): Likewise.
4290         (hwdebug_insert_point): Likewise.
4291         (can_use_watchpoint_cond_accel): Likewise.
4292         * remote-sim.c (gdb_os_write_stdout): Likewise.
4293
4294 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4295             Tom Tromey  <tom@tromey.com>
4296
4297         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4298         test for it.
4299         * configure: Rebuild.
4300
4301 2018-07-22  Tom Tromey  <tom@tromey.com>
4302
4303         * regformats/regdat.sh: Define xmltarget_${name} inside
4304         #ifndef IN_PROCESS_AGENT.
4305
4306 2018-07-22  Tom Tromey  <tom@tromey.com>
4307
4308         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4309
4310 2018-07-22  Tom Tromey  <tom@tromey.com>
4311
4312         * symfile.c (reread_symbols): Notify iter, not objfile.
4313
4314 2018-07-22  Tom Tromey  <tom@tromey.com>
4315
4316         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4317         Use arch_ops.
4318         (ravenscar_thread_target::prepare_to_store): Likewise.
4319
4320 2018-07-22  Tom Tromey  <tom@tromey.com>
4321
4322         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4323         unused variable.  Call value_fetch_lazy when needed.
4324         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4325         Remove unused variable.  Call value_fetch_lazy when needed.
4326
4327 2018-07-22  Tom Tromey  <tom@tromey.com>
4328
4329         * m32c-tdep.c (mark_dma): Return void.
4330         (make_regs): Remove unused declarations.
4331
4332 2018-07-22  Tom Tromey  <tom@tromey.com>
4333
4334         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4335         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4336         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4337         bkscm_get_valid_block_smob_arg_unsafe for effect.
4338
4339 2018-07-22  Tom Tromey  <tom@tromey.com>
4340
4341         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4342         value_type.
4343
4344 2018-07-22  Tom Tromey  <tom@tromey.com>
4345
4346         * windows-nat.c (saved_context): Conditionally define.
4347         * remote.c (remote_target::remote_btrace_maybe_reopen):
4348         Conditionally declare "warned".
4349         * inflow.c (sigquit_ours): Conditionally define.
4350         (new_tty): Move "tty" declaration inside #if.
4351         * guile/guile.c (guile_datadir): Conditionally define.
4352         * charset.c (set_be_le_names): Move some declarations inside #if.
4353         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4354         #if.
4355         (parse_xml_btrace_conf): Likewise.
4356
4357 2018-07-22  Tom Tromey  <tom@tromey.com>
4358
4359         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4360
4361 2018-07-22  Tom Tromey  <tom@tromey.com>
4362
4363         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4364         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4365         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4366         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4367         * stack.c (frame_apply_level_command): Remove unused variable.
4368         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4369         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4370         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4371         unused variable.
4372         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4373         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4374         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4375         variable.
4376         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4377         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4378         variable.
4379         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4380         Remove unused variable.
4381         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4382         variable.
4383         * common/tdesc.c (print_xml_feature::visit): Remove unused
4384         variable.
4385         * compile/compile-object-load.c (store_regs): Remove unused
4386         variables.
4387         * complaints.c (clear_complaints): Remove unused variable.
4388         * corelow.c (core_target_open): Remove unused variable.
4389         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4390         variable.
4391         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4392         variable.
4393         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4394         variable.
4395         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4396         variable.
4397         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4398         variable.
4399         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4400         variable.
4401         * ia64-tdep.c (examine_prologue): Remove unused variable.
4402         * infcall.c (run_inferior_call): Remove unused variable.
4403         * inferior.c (exit_inferior): Remove unused variable.
4404         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4405         * linespec.c (decode_line_2): Remove unused variable.
4406         * linux-nat.c (super_close): Remove.
4407         * linux-tdep.c (linux_info_proc): Remove unused variable.
4408         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4409         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4410         Remove unused variable.
4411         * parse.c (find_minsym_type_and_address): Remove unused variable.
4412         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4413         variable.
4414         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4415         variable.
4416         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4417         variables.
4418         * record-btrace.c (record_btrace_target::store_registers): Remove
4419         unused variable.
4420         (cmd_show_record_btrace_cpu): Remove unused variable.
4421         * riscv-tdep.c (riscv_register_reggroup_p)
4422         (riscv_push_dummy_call, riscv_return_value): Remove unused
4423         variable.
4424         * rust-exp.y (literal): Remove unused variable.
4425         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4426         unused variable.
4427         <STRUCTOP_ANONYMOUS>: Likewise.
4428         * s390-linux-tdep.c (s390_linux_init_abi_31)
4429         (s390_linux_init_abi_64): Remove unused variable.
4430         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4431         (file_select_thread, net_windows_open, _initialize_ser_windows):
4432         Remove unused variables.
4433         * symtab.c (find_pc_sect_line): Remove unused variable.
4434         * target-memory.c (compute_garbled_blocks): Remove unused
4435         variable.
4436         (target_write_memory_blocks): Remove unused variable.
4437         * target.c (target_stack::unpush): Remove unused variables.
4438         * tracepoint.c (start_tracing, all_tracepoint_actions)
4439         (merge_uploaded_trace_state_variables)
4440         (print_one_static_tracepoint_marker): Remove unused variable.
4441         * unittests/basic_string_view/element_access/char/1.cc (test01):
4442         Remove unused variable.
4443         * windows-nat.c (windows_continue, windows_add_all_dlls)
4444         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4445         Remove unused variables.
4446
4447 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4448
4449         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4450         attr_profile in HAVE_ELF.
4451         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4452         HAVE_ELF.
4453
4454 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4455
4456         * frame.c (frame_register_unwind): Change parameter name.
4457         (frame_unwind_register): Likewise.
4458         (frame_unwind_register_value): Likewise.
4459         (frame_unwind_register_signed): Likewise.
4460         (frame_unwind_register_unsigned): Likewise.
4461         * frame.h (frame_register_unwind): Likewise.
4462         (frame_unwind_register): Likewise.
4463         (frame_unwind_register_value): Likewise.
4464         (frame_unwind_register_signed): Likewise.
4465         (frame_unwind_register_unsigned): Likewise.
4466         (frame_unwind_arch): Likewise.
4467
4468 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4469
4470         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4471         ISA maintenance.
4472
4473 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4474
4475         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4476         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4477         hand.
4478
4479 2018-07-20  Keith Seitz  <keiths@redhat.com>
4480
4481         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4482         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4483         m_compunit_symtab, m_language>: Add "m_" prefix.
4484         Update all uses.
4485         * buildsym.c: Update all uses.
4486
4487 2018-07-20  Tom Tromey  <tom@tromey.com>
4488
4489         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4490         * buildsym.h (record_line_ftype): Remove typedef.
4491
4492 2018-07-20  Tom Tromey  <tom@tromey.com>
4493
4494         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4495         (end_expandable_symtab): Likewise.
4496         (end_symtab_get_static_block): Likewise.
4497         (end_symtab_from_static_block): Likewise.
4498         * buildsym-legacy.c (augment_type_symtab): Remove.
4499         (end_expandable_symtab): Remove.
4500         (end_symtab_get_static_block): Remove.
4501         (end_symtab_from_static_block): Remove.
4502
4503 2018-07-20  Tom Tromey  <tom@tromey.com>
4504
4505         * dwarf2read.c: Include buildsym.h.
4506         (struct dwarf2_cu) <builder>: New method.
4507         (fixup_go_packaging): Update.
4508         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4509         use scoped_free_pendings.
4510         (using_directives): Add "cu" parameter, remove "language".
4511         (read_import_statement, setup_type_unit_groups, )
4512         (read_func_scope, read_lexical_block_scope)
4513         (dwarf2_record_block_ranges, read_namespace): Update.
4514         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4515         (lnp_state_machine::handle_end_sequence): Update.
4516         (class lnp_state_machine) <m_cu>: New member.
4517         <m_record_line_callback>: Remove.
4518         <m_currently_recording_lines>: New member.
4519         (lnp_state_machine::handle_set_file): Update.
4520         (noop_record_line): Remove.
4521         (dwarf_record_line_p): Add cu parameter.
4522         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4523         (lnp_state_machine::record_line)
4524         (lnp_state_machine::lnp_state_machine)
4525         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4526         (dwarf_decode_lines): Update.
4527         (dwarf2_start_subfile): Add cu parameter.
4528         (dwarf2_start_symtab, new_symbol): Update.
4529         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4530         Remove dwarf2_per_objfile parameter.
4531         (dwarf_decode_macros): Update.
4532
4533 2018-07-20  Tom Tromey  <tom@tromey.com>
4534
4535         * stabsread.c (define_symbol): Update.
4536         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4537         * dwarf2read.c (new_symbol): Update.
4538         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4539         * cp-namespace.c: Include buildsym.h.
4540         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4541         * buildsym-legacy.c (get_buildsym_compunit): New function.
4542
4543 2018-07-20  Tom Tromey  <tom@tromey.com>
4544
4545         * xcoffread.c: Include buildsym-legacy.h.
4546         * windows-nat.c: Include buildsym-legacy.h.
4547         * stabsread.c: Include buildsym-legacy.h.
4548         * mdebugread.c: Include buildsym-legacy.h.
4549         * buildsym-legacy.h: New file.
4550         * buildsym-legacy.c: New file, from buildsym.c.
4551         * go32-nat.c: Include buildsym-legacy.h.
4552         * dwarf2read.c: Include buildsym-legacy.h.
4553         * dbxread.c: Include buildsym-legacy.h.
4554         * cp-namespace.c: Include buildsym-legacy.h.
4555         * coffread.c: Include buildsym-legacy.h.
4556         * buildsym.h: Move some contents to buildsym-legacy.h.
4557         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4558         buildsym-legacy.c.
4559         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4560
4561 2018-07-20  Tom Tromey  <tom@tromey.com>
4562
4563         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4564         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4565         (buildsym_compunit::buildsym_compunit)
4566         (buildsym_compunit::~buildsym_compunit)
4567         (buildsym_compunit::get_macro_table): Define.
4568
4569 2018-07-20  Tom Tromey  <tom@tromey.com>
4570
4571         * buildsym.c (reset_symtab_globals): Remove.
4572         (buildsym_compunit::end_symtab_from_static_block): Update.
4573         (buildsym_compunit::augment_type_symtab): Update.
4574         (end_symtab_from_static_block): Call free_buildsym_compunit.
4575         (augment_type_symtab, end_symtab, end_expandable_symtab):
4576         Likewise.
4577
4578 2018-07-20  Tom Tromey  <tom@tromey.com>
4579
4580         * arch-utils.c: Do not include buildsym.h.
4581         * mipsread.c: Do not include buildsym.h.
4582         * machoread.c: Do not include buildsym.h.
4583         * elfread.c: Do not include buildsym.h.
4584
4585 2018-07-20  Tom Tromey  <tom@tromey.com>
4586
4587         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4588         initialization.
4589         (buildsym_compunit): Add new constructor.
4590         (struct buildsym_compunit) <get_last_source_file, finish_block,
4591         record_block_range, start_subfile, patch_subfile_names,
4592         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4593         set_last_source_start_addr, get_last_source_start_addr,
4594         get_local_using_directives, set_local_using_directives,
4595         get_global_using_directives, outermost_context_p,
4596         get_current_context_stack, get_context_stack_depth,
4597         get_current_subfile, get_local_symbols, get_file_symbols,
4598         get_global_symbols, record_debugformat, record_producer,
4599         push_context, pop_context, end_symtab_get_static_block,
4600         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4601         New public methods.
4602         <record_pending_block, finish_block_internal, make_blockvector,
4603         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4604         private methods.
4605         Update all users.
4606
4607 2018-05-22  Tom Tromey  <tom@tromey.com>
4608
4609         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4610         parameter.
4611         (finish_block_internal): Update.
4612
4613 2018-07-20  Tom Tromey  <tom@tromey.com>
4614
4615         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4616         parameter.
4617         (finish_block_internal): Update.
4618
4619 2018-07-20  Tom Tromey  <tom@tromey.com>
4620
4621         * buildsym.h (EXTERN): Don't define or undef.
4622         * buildsym.c (EXTERN): Don't define.
4623
4624 2018-07-20  Tom Tromey  <tom@tromey.com>
4625
4626         * buildsym.c: Remove TODO comment.
4627
4628 2018-07-20  Tom Tromey  <tom@tromey.com>
4629
4630         * coffread.c (coff_symtab_read): Update.
4631         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4632         (xcoff_new_init): Update.
4633         * mipsread.c (mipscoff_new_init): Update.
4634         * mdebugread.c (mdebug_build_psymtabs): Update.
4635         * elfread.c (elf_new_init): Update.
4636         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4637         Update.
4638         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4639         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4640         (stabsect_build_psymtabs): Update.
4641         * buildsym.h (buildsym_init): Don't declare.
4642         * buildsym.c: Update comment.
4643         (prepare_for_building): Remove.
4644         (start_symtab, restart_symtab): Update.
4645         (reset_symtab_globals): Update comment.
4646         (buildsym_init): Remove.
4647
4648 2018-07-20  Tom Tromey  <tom@tromey.com>
4649
4650         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4651         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4652         (read_enum_type, common_block_start, common_block_end)
4653         (cleanup_undefined_types_1, finish_global_stabs): Update.
4654         * mdebugread.c (psymtab_to_symtab_1): Update.
4655         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4656         (read_lexical_block_scope, new_symbol): Update.
4657         * dbxread.c (process_one_symbol): Update.
4658         * coffread.c (coff_symtab_read, process_coff_symbol)
4659         (coff_read_enum_type): Update.
4660         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4661         declare.
4662         (get_local_symbols, get_file_symbols, get_global_symbols): New
4663         functions.
4664         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4665         m_global_symbols.
4666         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4667         (~scoped_free_pendings): Update.
4668         (finish_block, prepare_for_building, reset_symtab_globals)
4669         (end_symtab_get_static_block, end_symtab_with_blockvector)
4670         (augment_type_symtab, push_context): Update.
4671         (get_local_symbols, get_file_symbols, get_global_symbols): New
4672         functions.
4673         (buildsym_init): Update.
4674
4675 2018-07-20  Tom Tromey  <tom@tromey.com>
4676
4677         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4678         (process_full_type_unit): Likewise.
4679         (dwarf2_start_symtab): Set list_in_scope.
4680
4681 2018-07-20  Tom Tromey  <tom@tromey.com>
4682
4683         * dwarf2read.c (process_psymtab_comp_unit_reader)
4684         (build_type_psymtabs_reader): Do not set list_in_scope.
4685
4686 2018-07-20  Tom Tromey  <tom@tromey.com>
4687
4688         * buildsym.c (free_pendings): Remove.
4689         (add_symbol_to_list, scoped_free_pendings)
4690         (finish_block_internal, buildsym_init): Update.
4691
4692 2018-07-20  Tom Tromey  <tom@tromey.com>
4693
4694         * xcoffread.c (read_xcoff_symtab): Update.
4695         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4696         Update.
4697         * dbxread.c (process_one_symbol): Update.
4698         * coffread.c (coff_symtab_read): Update.
4699         * buildsym.h (finish_block): Update.
4700         * buildsym.c (finish_block): Remove "listhead" argument.
4701         (end_symtab_get_static_block): Update.
4702
4703 2018-07-20  Tom Tromey  <tom@tromey.com>
4704
4705         * buildsym.h (class scoped_free_pendings): Remove constructor.
4706         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4707         method.
4708         <m_pending_block_obstack, m_pending_blocks>: New members.
4709         (pending_block_obstack, pending_blocks): Remove.
4710         (scoped_free_pendings::scoped_free_pendings): Default.
4711         (~scoped_free_pendings): Update.
4712         (free_pending_blocks): Remove.
4713         (finish_block_internal, record_pending_block, make_blockvector)
4714         (end_symtab_get_static_block, augment_type_symtab, push_context)
4715         (buildsym_init): Update.
4716
4717 2018-07-20  Tom Tromey  <tom@tromey.com>
4718
4719         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4720         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4721         members.
4722         (pending_addrmap, pending_addrmap_obstack)
4723         (pending_addrmap_interesting): Remove.
4724         (scoped_free_pendings, record_block_range, make_blockvector)
4725         (prepare_for_building, reset_symtab_globals, buildsym_init):
4726         Update.
4727
4728 2018-07-20  Tom Tromey  <tom@tromey.com>
4729
4730         * xcoffread.c (process_linenos): Update.
4731         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4732         * mdebugread.c (psymtab_to_symtab_1): Update.
4733         * dwarf2read.c (setup_type_unit_groups)
4734         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4735         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4736         * dbxread.c (process_one_symbol): Update.
4737         * coffread.c (coff_symtab_read, enter_linenos)
4738         (process_coff_symbol): Update.
4739         * buildsym.h (current_subfile): Don't declare.
4740         (get_current_subfile): Declare.
4741         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4742         member.
4743         (start_subfile, free_buildsym_compunit, push_subfile)
4744         (prepare_for_building, start_symtab): Update.
4745         (get_current_subfile): New function.
4746
4747 2018-07-20  Tom Tromey  <tom@tromey.com>
4748
4749         * coffread.c (coff_symtab_read): Update.
4750         * xcoffread.c (read_xcoff_symtab): Update.
4751         * dwarf2read.c (new_symbol): Update.
4752         (read_func_scope, read_lexical_block_scope): Update.
4753         * dbxread.c (process_one_symbol): Update.
4754         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4755         (outermost_context_p): Remove macro.
4756         (outermost_context_p, get_current_context_stack)
4757         (get_context_stack_depth): Declare.
4758         (pop_context): Return struct context_stack.
4759         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4760         member.
4761         (context_stack_size): Remove.
4762         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4763         (prepare_for_building, end_symtab_get_static_block)
4764         (augment_type_symtab, push_context): Update.
4765         (pop_context): Return struct context_stack.
4766         (outermost_context_p, get_current_context_stack)
4767         (get_context_stack_depth): New functions.
4768         (buildsym_init): Update.
4769
4770 2018-07-20  Tom Tromey  <tom@tromey.com>
4771
4772         * rust-exp.y: Now a pure parser.  Update all rules.
4773         (%union): Move earlier.
4774         (current_parser, work_obstack): Remove globals.
4775         (rust_parser, ~rust_parser): Update.
4776         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4777         lex_character, lex_number, lex_string, lex_identifier,
4778         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4779         convert_name, convert_params_to_expression,
4780         convert_ast_to_expression, ast_basic_type, ast_operation,
4781         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4782         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4783         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4784         ast_array_type, ast_slice_type, ast_reference_type,
4785         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4786         (rust_parse): Update.
4787         (rustyyerror, rustyylex): Add parser parameter.
4788         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4789         (rust_lex_stringish_test, rust_lex_test_sequence)
4790         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4791         (rust_lex_test_push_back, rust_lex_tests): Update.
4792
4793 2018-07-19  Pedro Alves  <palves@redhat.com>
4794
4795         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4796         gdb::unique_xmalloc_ptr.
4797         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4798         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4799         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4800         copy-initialization.
4801         * guile/scm-pretty-print.c (ppscm_print_children): Use
4802         gdb::unique_xmalloc_ptr instead of cleanups.
4803         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4804         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4805         gdb::unique_xmalloc_ptr.
4806         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4807         Adjust to use gdb::unique_xmalloc_ptr.
4808         * guile/scm-utils.c (extract_arg): Adjust.
4809         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4810         gdb::unique_xmalloc_ptr instead of a cleanup.
4811
4812 2018-07-19  Tom Tromey  <tom@tromey.com>
4813
4814         * utils.c (do_value_free_to_mark)
4815         (make_cleanup_value_free_to_mark): Remove.
4816         * utils.h (make_cleanup_value_free_to_mark): Remove.
4817
4818 2018-07-19  Pedro Alves  <palves@redhat.com>
4819
4820         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4821         forwarding reference.
4822
4823 2018-07-18  Pedro Alves  <palves@redhat.com>
4824
4825         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4826         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4827         cleanup.
4828
4829 2018-07-18  Pedro Alves  <palves@redhat.com>
4830
4831         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4832         exceptions.
4833         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4834         (gdbscm_wrap): New.
4835         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4836         directly instead of a cleanup.
4837         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4838         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4839         (vlscm_binop_gdbthrow): New, factored out from ...
4840         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4841         (vlscm_rich_compare): Use gdbscm_wrap.
4842         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4843         instead of a cleanup.
4844         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4845         cleanup.
4846         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4847         Use xfree directly instead of a cleanup.
4848         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4849         Adjust to use gdbscm_wrap and scoped_value_mark.
4850         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4851         (gdbscm_value_address, gdbscm_value_dereference)
4852         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4853         scoped_value_mark.
4854         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4855         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4856         scoped_value_mark.
4857         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4858         gdbscm_wrap and scoped_value_mark.
4859         (gdbscm_value_to_string): Use xfree directly instead of a
4860         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4861         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4862         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4863         scoped_value_mark.
4864         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4865         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4866         scoped_value_mark.
4867         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4868         gdbscm_wrap.
4869
4870 2018-07-18  Tom de Vries  <tdevries@suse.de>
4871
4872         * findvar.c (default_read_var_value): Also resolve dynamic type for
4873         LOC_OPTIMIZED_OUT vars.
4874
4875 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4876
4877         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4878         decoding.
4879
4880 2018-07-17  Tom Tromey  <tom@tromey.com>
4881
4882         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4883         (compute_enum_list, pascm_set_param_value_x)
4884         (gdbscm_parameter_value): Update.
4885         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4886         (gdbscm_scm_to_host_string): Update.
4887         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4888         Update.
4889         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4890         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4891         * guile/scm-string.c (gdbscm_scm_to_string): Return
4892         unique_xmalloc_ptr.
4893         (gdbscm_scm_to_host_string): Likewise.
4894
4895 2018-07-17  Tom Tromey  <tom@tromey.com>
4896
4897         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4898         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4899         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4900         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4901         unique_xmalloc_ptr.
4902
4903 2018-07-17  Tom Tromey  <tom@tromey.com>
4904
4905         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4906         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4907         Update.
4908         * guile/scm-cmd.c (cmdscm_function): Update.
4909         * guile/scm-pretty-print.c
4910         (ppscm_print_exception_unless_memory_error): Update.
4911         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4912         Return unique_xmalloc_ptr.
4913
4914 2018-07-17  Tom Tromey  <tom@tromey.com>
4915
4916         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4917         Use string_printf.
4918
4919 2018-07-17  Jim Wilson  <jimw@sifive.com>
4920
4921         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4922         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
4923         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
4924         unecessary braces after EF_RISCV_RVC test.  Delete call to
4925         set_gdbarch_decr_pc_after_break.
4926
4927         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
4928         RISCV_LAST_FP_REGNUM + 1.
4929         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
4930
4931 2018-07-17  Tom Tromey  <tom@tromey.com>
4932
4933         * configure.ac: Remove --disable-gdbcli.
4934         * configure: Rebuild.
4935         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
4936         (SUBDIR_CLI_CFLAGS): Remove.
4937         (SFILES): Use SUBDIR_CLI_SRCS.
4938         (COMMON_OBS): Use SUBDIR_CLI_OBS.
4939
4940 2018-07-17  Tom Tromey  <tom@tromey.com>
4941
4942         PR gdb/18624:
4943         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
4944
4945 2018-07-16  Jim Wilson  <jimw@sifive.com>
4946
4947         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
4948
4949 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4950
4951         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
4952         variable.
4953         (libunwind_frame_sniffer): Likewise.
4954         (libunwind_frame_prev_register): Likewise.
4955         (libunwind_sigtramp_frame_sniffer): Likewise.
4956         * ia64-tdep.c (ia64_access_reg): Likewise.
4957         (ia64_access_rse_reg): Likewise.
4958         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
4959         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
4960
4961 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4962
4963         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
4964
4965 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4966
4967         * remote-sim.c (gdbsim_target::close,
4968         gdbsim_target::mourn_inferior): Remove unused variables.
4969
4970 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4971
4972         * ia64-tdep.c (ktab_buf): New global.
4973         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4974         (get_kernel_table): Adjust.
4975
4976 2018-07-16  Tom Tromey  <tom@tromey.com>
4977
4978         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4979         * dwarf2read.c (using_directives, new_symbol): Use
4980         outermost_context_p.
4981         * dbxread.c (process_one_symbol): Use outermost_context_p.
4982         * coffread.c (coff_symtab_read): Use outermost_context_p.
4983
4984 2018-07-16  Tom Tromey  <tom@tromey.com>
4985
4986         * dwarf2read.c (using_directives, read_func_scope)
4987         (read_lexical_block_scope): Update.
4988         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4989         * buildsym.h (local_using_directives, global_using_directives):
4990         Don't declare.
4991         (get_local_using_directives, set_local_using_directives)
4992         (get_global_using_directives): Declare.
4993         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4994         m_global_using_directives>: New members.
4995         (finish_block_internal, prepare_for_building)
4996         (reset_symtab_globals, end_symtab_get_static_block)
4997         (push_context): Update.
4998         (get_local_using_directives, set_local_using_directives)
4999         (get_global_using_directives): New functions.
5000         (buildsym_init): Update.
5001
5002 2018-07-16  Tom Tromey  <tom@tromey.com>
5003
5004         * xcoffread.c (xcoff_initial_scan): Don't call
5005         free_pending_blocks.
5006         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5007         * buildsym.h (class scoped_free_pendings): Add constructor.
5008         (free_pending_blocks): Don't declare.
5009         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5010         (free_pending_blocks): Now static.
5011
5012 2018-07-16  Tom Tromey  <tom@tromey.com>
5013
5014         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5015         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5016         member.
5017         (struct subfile_stack): Remove.
5018         (subfile_stack): Remove.
5019         (push_subfile, pop_subfile, buildsym_init): Update.
5020
5021 2018-07-16  Tom Tromey  <tom@tromey.com>
5022
5023         * buildsym.c (push_subfile): Use gdb_assert.
5024         (pop_subfile): Use gdb_assert.
5025
5026 2018-07-16  Tom Tromey  <tom@tromey.com>
5027
5028         * buildsym.h (merge_symbol_lists): Remove.
5029         * buildsym.c (merge_symbol_lists): Remove.
5030
5031 2018-07-16  Tom Tromey  <tom@tromey.com>
5032
5033         * stabsread.c (scan_file_globals): Update comment.
5034         * stabsread.h (scan_file_globals): Move from buildsym.h.
5035         * buildsym.h (scan_file_globals): Move to stabsread.h.
5036
5037 2018-07-16  Tom Tromey  <tom@tromey.com>
5038
5039         * xcoffread.c (xcoff_new_init): Update.
5040         * mipsread.c (mipscoff_new_init): Update.
5041         * mdebugread.c (mdebug_build_psymtabs): Update.
5042         * elfread.c (elf_new_init): Update.
5043         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5044         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5045         * buildsym.h (buildsym_new_init): Don't declare.
5046         * buildsym.c (buildsym_new_init): Remove.
5047
5048 2018-07-16  Tom Tromey  <tom@tromey.com>
5049
5050         * stabsread.h (within_function): Move from buildsym.h.
5051         * stabsread.c (start_stabs): Clear within_function.
5052         * coffread.c (coff_start_symtab): Clear within_function.
5053         * buildsym.h (within_function): Move to stabsread.h.
5054         * buildsym.c (prepare_for_building): Update.
5055
5056 2018-07-16  Tom Tromey  <tom@tromey.com>
5057
5058         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5059         * dwarf2read.c (dwarf2_start_symtab): Don't set
5060         processing_gcc_compilation.
5061         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5062
5063 2018-07-16  Tom Tromey  <tom@tromey.com>
5064
5065         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5066         (next_symbol_text_func): Move from buildsym.h.
5067         * stabsread.c (hashname): Move from buildsym.c.
5068         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5069         (next_symbol_text_func, hashname): Move to stabsread.h.
5070         * buildsym.c: Don't include bcache.h
5071         (hashname): Move to stasbread.c.
5072
5073 2018-07-16  Tom Tromey  <tom@tromey.com>
5074
5075         * buildsym.h (context_stack_size): Don't declare.
5076         * buildsym.c (context_stack_size): New global.
5077
5078 2018-07-16  Tom Tromey  <tom@tromey.com>
5079
5080         * dbxread.c (processing_acc_compilation): New global.
5081         * buildsym.h (processing_acc_compilation): Don't declare.
5082
5083 2018-07-16  Tom Tromey  <tom@tromey.com>
5084
5085         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5086         * dbxread.c (read_ofile_symtab): Update.
5087         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5088         * buildsym.h (last_source_start_addr): Remove.
5089         (set_last_source_start_addr, get_last_source_start_addr):
5090         Declare.
5091         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5092         parameter.
5093         (struct buildsym_compunit) <m_last_source_start_addr>: New
5094         member.
5095         (prepare_for_building): Remove start_addr parameter.
5096         (start_symtab, restart_symtab, end_symtab_get_static_block)
5097         (end_symtab_with_blockvector): Update.
5098         (set_last_source_start_addr, get_last_source_start_addr): New
5099         functions.
5100
5101 2018-07-16  Tom Tromey  <tom@tromey.com>
5102
5103         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5104         member.
5105         (have_line_numbers): Remove.
5106         (record_line, prepare_for_building, end_symtab_get_static_block)
5107         (augment_type_symtab): Update.
5108
5109 2018-07-16  Tom Tromey  <tom@tromey.com>
5110
5111         * buildsym.c (~buildsym_compunit): Free the macro table.
5112         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5113         methods.
5114         <m_pending_macros>: New member.
5115         (pending_macros): Remove.
5116         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5117         (reset_symtab_globals, end_symtab_get_static_block)
5118         (end_symtab_with_blockvector, augment_type_symtab)
5119         (buildsym_init): Update.
5120
5121 2018-07-16  Tom Tromey  <tom@tromey.com>
5122
5123         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5124         parameter.
5125         (buildsym_compunit::set_last_source_file): New method.
5126         <m_last_source_file>: New member.
5127         (prepare_for_building): Remove "name" parameter.
5128         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5129         (last_source_file): Remove.
5130         (set_last_source_file, get_last_source_file): Update.
5131
5132 2018-07-16  Tom Tromey  <tom@tromey.com>
5133
5134         * buildsym.c (prepare_for_building): Add assert.
5135
5136 2018-07-16  Tom Tromey  <tom@tromey.com>
5137
5138         * buildsym.c (~buildsym_compunit): Update.
5139         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5140         (start_subfile, patch_subfile_names)
5141         (end_symtab_with_blockvector): Update.
5142
5143 2018-07-16  Tom Tromey  <tom@tromey.com>
5144
5145         * buildsym.c (struct buildsym_compunit): Add constructor,
5146         destructor, initializers.
5147         (start_buildsym_compunit): Remove.
5148         (free_buildsym_compunit): Use "delete".
5149         (start_symtab, restart_symtab): Use "new".
5150
5151 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5152
5153         * symfile.c (set_objfile_default_section_offset): Remove struct
5154         keyword.
5155
5156 2018-07-14  Stafford Horne  <shorne@gmail.com>
5157
5158         * (Responsible Maintainers): Add myself as or1k maintainer.
5159
5160 2018-07-13  Tom Tromey  <tom@tromey.com>
5161
5162         * symfile.c (set_objfile_default_section_offset): Use extra braces
5163         around initializer.
5164
5165 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5166
5167         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5168         non-branching basr.
5169
5170 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5171
5172         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5173         unittests/cli-utils-selftests.c
5174         * unittests/cli-utils-selftests.c: New file.
5175
5176 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5177
5178         * NEWS: Mention new commands. Mention change to 'thread apply'.
5179
5180 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5181
5182         * thread.c (thr_try_catch_cmd): New function.
5183         (thread_apply_all_command): Handle qcs flags.
5184         (thread_apply_command): Handle qcs flags.
5185         (taas_command): New function.
5186         (tfaas_command): New function.
5187         (_initialize_thread): Update to setup the new commands 'taas
5188         and 'tfaas'. Change doc string for 'thread apply'.
5189
5190 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5191
5192         * stack.c: (trailing_outermost_frame): New function, mostly
5193         extracted from backtrace_command_1.
5194         (leading_innermost_frame): New function.
5195         (backtrace_command_1): Update to call trailing_outermost_frame.
5196         (frame_apply_command_count): New function.
5197         (frame_apply_level_command): New function.
5198         (frame_apply_all_command): New function.
5199         (frame_apply_command): New function.
5200         (faas_command): New function.
5201         (frame_cmd_list): New variable.
5202         (_initialize_stack): Update to setup the new commands 'frame apply'
5203         and 'faas'.
5204
5205 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5206
5207         * cli-utils.c (number_or_range_parser::get_number): Only handle
5208         numbers or convenience var as numbers.
5209         (parse_flags): New function.
5210         (parse_flags_qcs): New function.
5211         (number_or_range_parser::finished): Ensure parsing end is detected
5212         before end of string.
5213         * cli-utils.h (parse_flags): New function.
5214         (parse_flags_qcs): New function.
5215         (number_or_range_parser): Remove m_finished bool.
5216         (number_or_range_parser::skip_range): Set m_in_range to false.
5217
5218 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5219
5220         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5221         on Windows.
5222
5223 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5224             Jan Kratochvil  <jan.kratochvil@redhat.com>
5225             Paul Fertser  <fercerpav@gmail.com>
5226             Tsutomu Seki  <sekiriki@gmail.com>
5227             Pedro Alves  <palves@redhat.com>
5228
5229         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5230         'unittests/parse-connection-spec-selftests.c'.
5231         (COMMON_SFILES): Add 'common/netstuff.c'.
5232         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5233         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5234         * common/netstuff.c: New file.
5235         * common/netstuff.h: New file.
5236         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5237         (wait_for_connect): Update comment.  New parameter
5238         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5239         Use 'sock' directly instead of 'scb->fd'.
5240         (try_connect): New function, with code from 'net_open'.
5241         (net_open): Rewrite main loop to deal with multiple
5242         sockets/addresses.  Handle IPv6-style hostnames; implement
5243         support for IPv6 connections.
5244         * unittests/parse-connection-spec-selftests.c: New file.
5245
5246 2018-07-11  Pedro Alves  <palves@redhat.com>
5247
5248         PR gdb/23377
5249         * remote.c (remote_target::remote_detach_pid): Call
5250         set_current_process.
5251
5252 2018-07-11  Pedro Alves  <palves@redhat.com>
5253
5254         * h8300-tdep.c (h8300_gdbarch_init): Remove
5255         set_gdbarch_ecoff_reg_to_regnum calls.
5256
5257 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5258
5259         PR c++/23373
5260         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5261         offsets/sizes for static members of a class/struct.
5262
5263 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5264
5265         * target-descriptions.c (tdesc_register_bitsize): Rename.
5266         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5267         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5268         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5269
5270 2018-07-10  Tom Tromey  <tom@tromey.com>
5271
5272         * breakpoint.c (moribund_locations): Now static and a
5273         std::vector.
5274         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5275         (build_bpstat_chain, update_global_location_list)
5276         (breakpoint_retire_moribund): Update.
5277         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5278         VEC.
5279
5280 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5281
5282         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5283         (riscv_register_reggroup_p): Use new function, remove unneeded
5284         parenthesis.
5285         (riscv_push_dummy_call): Extend assert to compare against xlen or
5286         flen based on register type.
5287
5288 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5289
5290         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5291
5292 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5293
5294         * remote.c (show_hardware_watchpoint_limit): New function.
5295         (show_hardware_watchpoint_length_limit): New function.
5296         (show_hardware_breakpoint_limit): New function.
5297         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5298         where appropriate, update help text.
5299
5300 2018-07-09  Tom Tromey  <tom@tromey.com>
5301
5302         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5303         (CLIBS): Don't mention NAT_CLIBS.
5304
5305 2018-07-09  Tom Tromey  <tom@tromey.com>
5306
5307         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5308         (LIBGDB_OBS, clean mostlyclean): Update.
5309         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5310
5311 2018-07-09  Tom Tromey  <tom@tromey.com>
5312
5313         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5314         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5315         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5316
5317 2018-07-09  Tom Tromey  <tom@tromey.com>
5318
5319         * Makefile.in (ALLDEPFILES): Remove exec.c.
5320         (COMMON_OBS): Remove exec.o.
5321         (COMMON_SFILES): Add exec.c.
5322
5323 2018-07-09  Tom Tromey  <tom@tromey.com>
5324
5325         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5326
5327 2018-07-09  Tom Tromey  <tom@tromey.com>
5328
5329         * Makefile.in (clean mostlyclean): Remove stamp-version.
5330         (version.c): Depend on stamp-version.
5331         (stamp-version): New rule, from version.c rule.
5332
5333 2018-07-09  Tom Tromey  <tom@tromey.com>
5334
5335         * Makefile.in (init.c): Depend on stamp-init.
5336         (stamp-init): New rule, from init.c rule.
5337         (clean mostlyclean): Remove stamp-init.
5338
5339 2018-07-09  Tom Tromey  <tom@tromey.com>
5340
5341         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5342         SUBDIR_GCC_COMPILE_SRCS.
5343
5344 2018-07-09  Tom Tromey  <tom@tromey.com>
5345
5346         * Makefile.in (init.c): Remove some unused sed rules.
5347
5348 2018-07-09  Tom Tromey  <tom@tromey.com>
5349
5350         * Makefile.in (TSOBS): Remove.
5351         (INIT_FILES): Update.
5352         (LIBGDB_OBS): Update.
5353         (COMMON_SFILES): Add inflow.c.
5354         (SFILES): Remove inflow.c.
5355
5356 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5357
5358         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5359
5360 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5361
5362         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5363         get_saveloc_name, is_signal_frame_name, step_name,
5364         init_remote_name, create_addr_space_name,
5365         destroy_addr_space_name, search_unwind_table_name,
5366         find_dyn_list_name): Constify.
5367
5368 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5369
5370         * darwin-nat.c (darwin_pthread_kill): New function.
5371         (darwin_resume_thread): Use darwin_pthread_kill.
5372
5373 2018-07-05  Tom de Vries  <tdevries@suse.de>
5374
5375         * macroexp.c (macro_buffer) <operator=>: New member function.
5376
5377 2018-07-04  Tom Tromey  <tom@tromey.com>
5378
5379         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5380
5381 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5382
5383         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5384         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5385         * maint.c: Likewise.
5386         * top.c: Likewise.
5387
5388 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5389
5390         * NEWS: Create a new section for the next release branch.
5391         Rename the section of the current branch, now that it has
5392         been cut.
5393
5394 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5395
5396         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5397         * version.in: Bump version to 8.2.50.DATE-git.
5398
5399 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5400             Pedro Alves  <palves@redhat.com>
5401
5402         * linux-nat.c (linux_init_ptrace): Rename to ...
5403         (linux_init_ptrace_procfs): ... this.  Call
5404         linux_proc_init_warnings.
5405         (linux_nat_target::post_attach)
5406         (linux_nat_target::post_startup_inferior): Adjust.
5407         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5408         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5409
5410 2018-07-04  Tom de Vries  <tdevries@suse.de>
5411
5412         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5413         check ...
5414         (read_comp_unit_head): ... here.
5415
5416 2018-07-03  Tom Tromey  <tom@tromey.com>
5417
5418         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5419         (stop_tracing, tstatus_command)
5420         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5421         (print_one_static_tracepoint_marker): Update.
5422         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5423         std::vector.
5424         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5425         VEC.
5426         (all_tracepoints, static_tracepoints_here): Return std::vector.
5427
5428 2018-07-03  Tom Tromey  <tom@tromey.com>
5429
5430         * common/ptid.c (ptid_equal): Remove.
5431         * common/ptid.h (ptid_equal): Don't declare.
5432         * ada-tasks.c: Update.
5433         * breakpoint.c: Update.
5434         * common/agent.c: Update.
5435         * corelow.c: Update.
5436         * darwin-nat-info.c: Update.
5437         * darwin-nat.c: Update.
5438         * dcache.c: Update.
5439         * dtrace-probe.c: Update.
5440         * dummy-frame.c: Update.
5441         * fbsd-nat.c: Update.
5442         * frame.c: Update.
5443         * gdbthread.h: Update.
5444         * gnu-nat.c: Update.
5445         * go32-nat.c: Update.
5446         * inf-loop.c: Update.
5447         * inf-ptrace.c: Update.
5448         * infcall.c: Update.
5449         * infcmd.c: Update.
5450         * inflow.c: Update.
5451         * infrun.c: Update.
5452         * linux-fork.c: Update.
5453         * linux-nat.c: Update.
5454         * linux-thread-db.c: Update.
5455         * mi/mi-cmd-var.c: Update.
5456         * mi/mi-interp.c: Update.
5457         * mi/mi-main.c: Update.
5458         * nto-procfs.c: Update.
5459         * ppc-linux-tdep.c: Update.
5460         * procfs.c: Update.
5461         * python/py-inferior.c: Update.
5462         * python/py-record-btrace.c: Update.
5463         * python/py-record.c: Update.
5464         * ravenscar-thread.c: Update.
5465         * regcache.c: Update.
5466         * remote-sim.c: Update.
5467         * remote.c: Update.
5468         * sol-thread.c: Update.
5469         * solib.c: Update.
5470         * target.c: Update.
5471         * tui/tui-stack.c: Update.
5472         * varobj.c: Update.
5473         * windows-nat.c: Update.
5474         * windows-tdep.c: Update.
5475
5476 2018-07-03  Tom Tromey  <tom@tromey.com>
5477
5478         * common/ptid.c (ptid_match): Remove.
5479         * common/ptid.h (ptid_match): Don't declare.
5480         * fbsd-nat.c: Update.
5481         * infcmd.c: Update.
5482         * infrun.c: Update.
5483         * linux-nat.c: Update.
5484         * record-btrace.c: Update.
5485         * regcache.c: Update.
5486         * remote.c: Update.
5487
5488 2018-07-03  Tom Tromey  <tom@tromey.com>
5489
5490         * common/ptid.c (ptid_tid_p): Remove.
5491         * common/ptid.h (ptid_tid_p): Don't declare.
5492         * sol-thread.c: Update.
5493
5494 2018-07-03  Tom Tromey  <tom@tromey.com>
5495
5496         * common/ptid.c (ptid_lwp_p): Remove.
5497         * common/ptid.h (ptid_lwp_p): Don't declare.
5498         * fbsd-nat.c: Update.
5499         * linux-nat.c: Update.
5500         * nat/linux-procfs.c: Update.
5501         * nat/x86-linux-dregs.c: Update.
5502         * sol-thread.c: Update.
5503
5504 2018-07-03  Tom Tromey  <tom@tromey.com>
5505
5506         * common/ptid.c (ptid_is_pid): Remove.
5507         * common/ptid.h (ptid_is_pid): Don't declare.
5508         * infrun.c: Update.
5509         * linux-nat.c: Update.
5510         * mi/mi-interp.c: Update.
5511         * remote.c: Update.
5512         * thread.c: Update.
5513
5514 2018-07-03  Tom Tromey  <tom@tromey.com>
5515
5516         * common/ptid.c (ptid_get_tid): Remove.
5517         * common/ptid.h (ptid_get_tid): Don't declare.
5518         * ada-tasks.c: Update.
5519         * aix-thread.c: Update.
5520         * bsd-uthread.c: Update.
5521         * darwin-nat.c: Update.
5522         * fbsd-nat.c: Update.
5523         * i386-darwin-nat.c: Update.
5524         * infrun.c: Update.
5525         * linux-tdep.c: Update.
5526         * nto-procfs.c: Update.
5527         * ppc-ravenscar-thread.c: Update.
5528         * python/py-infthread.c: Update.
5529         * ravenscar-thread.c: Update.
5530         * sol-thread.c: Update.
5531         * sparc-ravenscar-thread.c: Update.
5532         * windows-nat.c: Update.
5533
5534 2018-07-03  Tom Tromey  <tom@tromey.com>
5535
5536         * common/ptid.c (ptid_get_lwp): Remove.
5537         * common/ptid.h (ptid_get_lwp): Don't declare.
5538         * aarch64-linux-nat.c: Update.
5539         * ada-tasks.c: Update.
5540         * aix-thread.c: Update.
5541         * amd64-linux-nat.c: Update.
5542         * arm-linux-nat.c: Update.
5543         * corelow.c: Update.
5544         * fbsd-nat.c: Update.
5545         * fbsd-tdep.c: Update.
5546         * gnu-nat.c: Update.
5547         * i386-cygwin-tdep.c: Update.
5548         * i386-gnu-nat.c: Update.
5549         * i386-linux-nat.c: Update.
5550         * ia64-linux-nat.c: Update.
5551         * inf-ptrace.c: Update.
5552         * infrun.c: Update.
5553         * linux-fork.c: Update.
5554         * linux-nat.c: Update.
5555         * linux-tdep.c: Update.
5556         * linux-thread-db.c: Update.
5557         * mips-linux-nat.c: Update.
5558         * nat/aarch64-linux-hw-point.c: Update.
5559         * nat/aarch64-linux.c: Update.
5560         * nat/linux-btrace.c: Update.
5561         * nat/linux-osdata.c: Update.
5562         * nat/linux-procfs.c: Update.
5563         * nat/x86-linux-dregs.c: Update.
5564         * obsd-nat.c: Update.
5565         * ppc-fbsd-nat.c: Update.
5566         * ppc-linux-nat.c: Update.
5567         * procfs.c: Update.
5568         * python/py-infthread.c: Update.
5569         * ravenscar-thread.c: Update.
5570         * remote.c: Update.
5571         * s390-linux-nat.c: Update.
5572         * sol-thread.c: Update.
5573         * sol2-tdep.c: Update.
5574         * spu-linux-nat.c: Update.
5575         * x86-linux-nat.c: Update.
5576         * xtensa-linux-nat.c: Update.
5577
5578 2018-07-03  Tom Tromey  <tom@tromey.com>
5579
5580         * common/ptid.c (ptid_get_pid): Remove.
5581         * common/ptid.h (ptid_get_pid): Don't declare.
5582         * aarch64-linux-nat.c: Update.
5583         * ada-lang.c: Update.
5584         * aix-thread.c: Update.
5585         * alpha-bsd-nat.c: Update.
5586         * amd64-fbsd-nat.c: Update.
5587         * amd64-linux-nat.c: Update.
5588         * arm-linux-nat.c: Update.
5589         * arm-nbsd-nat.c: Update.
5590         * auxv.c: Update.
5591         * break-catch-syscall.c: Update.
5592         * breakpoint.c: Update.
5593         * bsd-uthread.c: Update.
5594         * corelow.c: Update.
5595         * ctf.c: Update.
5596         * darwin-nat.c: Update.
5597         * fbsd-nat.c: Update.
5598         * fbsd-tdep.c: Update.
5599         * gcore.c: Update.
5600         * gnu-nat.c: Update.
5601         * hppa-nbsd-nat.c: Update.
5602         * hppa-obsd-nat.c: Update.
5603         * i386-fbsd-nat.c: Update.
5604         * ia64-linux-nat.c: Update.
5605         * inf-ptrace.c: Update.
5606         * infcmd.c: Update.
5607         * inferior.c: Update.
5608         * inferior.h: Update.
5609         * inflow.c: Update.
5610         * infrun.c: Update.
5611         * linux-fork.c: Update.
5612         * linux-nat.c: Update.
5613         * linux-tdep.c: Update.
5614         * linux-thread-db.c: Update.
5615         * m68k-bsd-nat.c: Update.
5616         * mi/mi-interp.c: Update.
5617         * mi/mi-main.c: Update.
5618         * mips-linux-nat.c: Update.
5619         * mips-nbsd-nat.c: Update.
5620         * mips64-obsd-nat.c: Update.
5621         * nat/aarch64-linux-hw-point.c: Update.
5622         * nat/aarch64-linux.c: Update.
5623         * nat/linux-btrace.c: Update.
5624         * nat/linux-osdata.c: Update.
5625         * nat/linux-procfs.c: Update.
5626         * nat/x86-linux-dregs.c: Update.
5627         * nto-procfs.c: Update.
5628         * obsd-nat.c: Update.
5629         * ppc-linux-nat.c: Update.
5630         * ppc-nbsd-nat.c: Update.
5631         * ppc-obsd-nat.c: Update.
5632         * proc-service.c: Update.
5633         * procfs.c: Update.
5634         * python/py-inferior.c: Update.
5635         * python/py-infthread.c: Update.
5636         * ravenscar-thread.c: Update.
5637         * record.c: Update.
5638         * remote-sim.c: Update.
5639         * remote.c: Update.
5640         * rs6000-nat.c: Update.
5641         * s390-linux-nat.c: Update.
5642         * sh-nbsd-nat.c: Update.
5643         * sol-thread.c: Update.
5644         * sparc-nat.c: Update.
5645         * sparc64-tdep.c: Update.
5646         * spu-linux-nat.c: Update.
5647         * spu-tdep.c: Update.
5648         * target-debug.h: Update.
5649         * target.c: Update.
5650         * thread.c: Update.
5651         * tid-parse.c: Update.
5652         * tracefile-tfile.c: Update.
5653         * vax-bsd-nat.c: Update.
5654         * windows-nat.c: Update.
5655         * x86-linux-nat.c: Update.
5656         * x86-nat.c: Update.
5657
5658 2018-07-03  Tom Tromey  <tom@tromey.com>
5659
5660         * common/ptid.c (pid_to_ptid): Remove.
5661         * common/ptid.h (pid_to_ptid): Don't declare.
5662         * aix-thread.c: Update.
5663         * arm-linux-nat.c: Update.
5664         * common/ptid.c: Update.
5665         * common/ptid.h: Update.
5666         * corelow.c: Update.
5667         * ctf.c: Update.
5668         * darwin-nat.c: Update.
5669         * fbsd-nat.c: Update.
5670         * fork-child.c: Update.
5671         * gnu-nat.c: Update.
5672         * go32-nat.c: Update.
5673         * inf-ptrace.c: Update.
5674         * infcmd.c: Update.
5675         * inferior.c: Update.
5676         * infrun.c: Update.
5677         * linux-fork.c: Update.
5678         * linux-nat.c: Update.
5679         * nat/aarch64-linux-hw-point.c: Update.
5680         * nat/fork-inferior.c: Update.
5681         * nat/x86-linux-dregs.c: Update.
5682         * nto-procfs.c: Update.
5683         * obsd-nat.c: Update.
5684         * procfs.c: Update.
5685         * progspace.c: Update.
5686         * remote.c: Update.
5687         * rs6000-nat.c: Update.
5688         * s390-linux-nat.c: Update.
5689         * sol-thread.c: Update.
5690         * spu-linux-nat.c: Update.
5691         * target.c: Update.
5692         * top.c: Update.
5693         * tracefile-tfile.c: Update.
5694         * windows-nat.c: Update.
5695
5696 2018-07-03  Tom Tromey  <tom@tromey.com>
5697
5698         * common/ptid.h (ptid_build): Don't declare.
5699         * common/ptid.c (ptid_build): Remove.
5700         * aix-thread.c: Update.
5701         * bsd-kvm.c: Update.
5702         * bsd-uthread.c: Update.
5703         * common/agent.c: Update.
5704         * common/ptid.c: Update.
5705         * common/ptid.h: Update.
5706         * corelow.c: Update.
5707         * darwin-nat.c: Update.
5708         * fbsd-nat.c: Update.
5709         * gnu-nat.c: Update.
5710         * linux-fork.c: Update.
5711         * linux-nat.c: Update.
5712         * linux-thread-db.c: Update.
5713         * nat/linux-osdata.c: Update.
5714         * nat/linux-procfs.c: Update.
5715         * nto-procfs.c: Update.
5716         * obsd-nat.c: Update.
5717         * proc-service.c: Update.
5718         * procfs.c: Update.
5719         * ravenscar-thread.c: Update.
5720         * remote-sim.c: Update.
5721         * remote.c: Update.
5722         * sol-thread.c: Update.
5723         * target.c: Update.
5724         * windows-nat.c: Update.
5725
5726 2018-07-03  Tom Tromey  <tom@tromey.com>
5727
5728         * infrun.c (follow_exec): Use exit_inferior_silent.
5729         * inferior.c (exit_inferior_num_silent): Remove.
5730         * inferior.h (exit_inferior_num_silent): Don't declare.
5731
5732 2018-07-03  Tom Tromey  <tom@tromey.com>
5733
5734         PR cli/23340:
5735         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5736         inferior_ptid on error.
5737
5738 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5739             Simon Marchi  <simon.marchi@polymtl.ca>
5740
5741         PR tdep/8282
5742         * disasm.h (gdb_disassembler): Add
5743         `m_disassembler_options_holder'. member
5744         * disasm.c (get_all_disassembler_options): New function.
5745         (gdb_disassembler::gdb_disassembler): Use it.
5746         (gdb_buffered_insn_length_init_dis): Likewise.
5747         (gdb_buffered_insn_length): Adjust accordingly.
5748         (set_disassembler_options): Handle options with arguments.
5749         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5750         line if showing options with descriptions.
5751         (disassembler_options_completer): Adapt to using the
5752         `disasm_options_and_args_t' structure.
5753         * mips-tdep.c (mips_disassembler_options): New variable.
5754         (mips_disassembler_options_o32): Likewise.
5755         (mips_disassembler_options_n32): Likewise.
5756         (mips_disassembler_options_n64): Likewise.
5757         (gdb_print_insn_mips): Don't set `disassembler_options'.
5758         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5759         functions.
5760         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5761         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5762         `gdbarch_disassembler_options_implicit' and
5763         `gdbarch_valid_disassembler_options'.
5764         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5765         `disasm_options_and_args_t' structure.
5766         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5767         method.
5768         (valid_disassembler_options): Switch from `disasm_options_t' to
5769         the `disasm_options_and_args_t' structure.
5770         * NEWS: Document `set disassembler-options' support for the MIPS
5771         target.
5772         * gdbarch.h: Regenerate.
5773         * gdbarch.c: Regenerate.
5774
5775 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5776
5777         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5778
5779 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5780
5781         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5782         parameter in call to amd64_target_description.
5783         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5784         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5785         (amd64fbsd_init_abi): Likewise.
5786         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5787         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5788         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5789         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5790
5791 2018-06-29  Pedro Alves  <palves@redhat.com>
5792
5793         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5794         "segments" parameter.
5795         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5796         (_initialize_amd64_tdep): Update call to
5797         amd64_create_target_description.
5798         (amd64_target_description): Add "segments" parameter.  Adjust
5799         the implementation to use it.
5800         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5801         call to amd64_create_target_description.
5802         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5803         * gdb/arch/amd64.h (amd64_create_target_description): Add
5804         "segments" register.
5805         * gdb/arch/amd64.c (amd64_create_target_description): Add
5806         "segments" parameter.  Call create_feature_i386_64bit_segments
5807         only if SEGMENTS is true.
5808         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5809         call to amd64_create_target_description.
5810
5811 2018-06-29  Pedro Alves  <palves@redhat.com>
5812
5813         * thread.c (thread_target_id_str): New, factored out from ...
5814         (print_thread_info_1): ... here.  Use it to compute the max
5815         "Target Id" column width.
5816
5817 2018-06-29  Pedro Alves  <palves@redhat.com>
5818
5819         * remote.c (remote_target::extra_thread_info): Delete
5820         'display_buf' and 'n' locals.  from the cache, regardless of
5821         packet mechanims is in use.  Use cache for qThreadExtra and qP
5822         methods too.
5823
5824 2018-06-29  Pedro Alves  <palves@redhat.com>
5825
5826         * blockframe.c (find_pc_sect_containing_function): New function.
5827         * breakpoint.c (print_breakpoint_location): Don't call
5828         find_pc_sect_function.
5829         * linespec.c (create_sals_line_offset): Record the location's
5830         symbol in the sal.
5831         * linespec.c (convert_address_location_to_sals): Fill in sal's
5832         symbol with find_pc_sect_containing_function.
5833         * symtab.c (find_function_start_sal): Rename to ...
5834         (find_function_start_sal_1): ... this.
5835         (find_function_start_sal): Reimplement as wrapper around
5836         find_function_start_sal_1, and use
5837         find_pc_sect_containing_function to fill in the sal's symbol.
5838         (find_function_start_sal(symbol*, bool)): Adjust.
5839         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5840         comments.
5841         (find_pc_sect_containing_function): Declare.
5842
5843 2018-06-29  Pedro Alves  <palves@redhat.com>
5844
5845         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5846         true if the the location has no symbol.
5847
5848 2018-06-28  Tom Tromey  <tom@tromey.com>
5849
5850         * NEWS: Mention --enable-codesign.
5851         * silent-rules.mk (ECHO_SIGN): New variable.
5852         * configure.ac: Add --enable-codesign.
5853         * configure: Rebuild.
5854         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5855         (gdb$(EXEEXT)): Optionally invoke codesign.
5856
5857 2018-06-28  Pedro Alves  <palves@redhat.com>
5858
5859         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5860         comments.
5861         (switch_to_thread_no_regs): Adjust comment.
5862         * infcmd.c (stop_pc): Delete.
5863         (post_create_inferior, info_program_command): Replace references
5864         to stop_pc with references to thread_info->suspend.stop_pc.
5865         * inferior.h (stop_pc): Delete declaration.
5866         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5867         (handle_inferior_event_1, handle_signal_stop)
5868         (process_event_stop_test, keep_going_stepped_thread)
5869         (handle_step_into_function, handle_step_into_function_backward)
5870         (print_stop_location): Replace references to stop_pc with
5871         references to thread_info->suspend.stop_pc.
5872         (struct infcall_suspend_state) <stop_pc>: Delete field.
5873         (save_infcall_suspend_state, restore_infcall_suspend_state):
5874         Remove references to inf_stat->stop_pc.
5875         * linux-fork.c (fork_load_infrun_state): Likewise.
5876         * record-btrace.c (record_btrace_set_replay): Likewise.
5877         * record-full.c (record_full_goto_entry): Likewise.
5878         * remote.c (print_one_stopped_thread): Likewise.
5879         * target.c (target_resume): Extend comment.
5880         * thread.c (set_executing_thread): New.
5881         (set_executing): Use it.
5882         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5883         Remove references to stop_pc.
5884
5885 2018-06-28  Pedro Alves  <palves@redhat.com>
5886
5887         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5888         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5889
5890 2018-06-28  Tom Tromey  <tom@tromey.com>
5891
5892         * coffread.c (coff_symfile_finish): Update.
5893         * xcoffread.c (xcoff_symfile_finish): Update.
5894         * elfread.c (elf_symfile_finish): Update.
5895         * symfile.h (dwarf2_free_objfile): Don't declare.
5896         * dwarf2read.c (_initialize_dwarf2_read): Use
5897         register_objfile_data_with_cleanup.
5898         (dwarf2_free_objfile): Now static.  Change signature.
5899
5900 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5901
5902         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5903         option "-o" to add-symbol-file-load to add an offset to each
5904         section's load address.
5905         * symfile.c (set_objfile_default_section_offset): New function.
5906
5907 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5908
5909         * symfile.c (add_symbol_file_command): Make sure that sections
5910         with the same name are sorted in the same order.
5911
5912 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5913
5914         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5915         require the second argument.  If omitted, load sections at the
5916         addresses specified in the file.
5917
5918 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5919
5920         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5921         (_initialize_symfile): Add option "-o" to symbol-file to add an
5922         offset to each section of the symbol file.
5923
5924 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5925
5926         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
5927
5928 2018-06-27  Tom Tromey  <tom@tromey.com>
5929
5930         * stack.c (_initialize_stack): Update "func" help text.
5931
5932 2018-06-27  Tom Tromey  <tom@tromey.com>
5933
5934         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
5935         std::vector.
5936         (unwind_infopy_str, pyuw_create_unwind_info)
5937         (unwind_infopy_add_saved_register, pyuw_sniffer)
5938         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
5939         Update.
5940         (struct saved_reg): Add constructor.
5941         <value>: Now a gdbpy_ref<>.
5942
5943 2018-06-27  Tom Tromey  <tom@tromey.com>
5944
5945         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
5946
5947 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5948
5949         * gdb-gdb.py.in: Format using autopep8.
5950
5951 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5952
5953         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
5954         (type_lookup_function): Recognize CORE_ADDR values.
5955
5956 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5957
5958         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
5959         print tag_name.
5960
5961 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5962
5963         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
5964         <__lt__>: Add.
5965
5966 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5967
5968         * gdb-gdb.py: Move to...
5969         * gdb-gdb.py.in: ... here.
5970         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5971         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5972         dependencies.
5973         (distclean): Remove gdb-gdb.py when cleaning.
5974         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5975         * configure: Re-generate.
5976
5977 2018-06-27  Pedro Alves  <palves@redhat.com>
5978
5979         * proc-service.c (get_ps_regcache): New.
5980         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5981         (ps_lsetfpregs): Use it.
5982
5983 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5984
5985         PR gdb/21695
5986         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5987         (dwarf_decode_lines_1): Adjust.
5988
5989 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5990
5991         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5992         override.
5993         <info_proc>: Likewise.
5994
5995 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5996
5997         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5998         to windows_fetch_one_register, and only handle the case of
5999         fetching one register.  Move the code that reloads the context
6000         and iterates over all registers if R is negative to...
6001         (windows_nat_target::fetch_registers): ... here.
6002         (do_windows_store_inferior_registers): Rename to
6003         windows_store_one_register, and only handle the case of storing
6004         one register.  Move the code that handles the case where r is
6005         negative to...
6006         (windows_nat_target::store_registers) ... here.
6007
6008 2018-06-26  Tom Tromey  <tom@tromey.com>
6009
6010         PR rust/22574:
6011         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6012         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6013         Update.
6014         (rust_internal_print_type): Add podata parameter.
6015         (rust_print_type): Update.
6016
6017 2018-06-26  Tom Tromey  <tom@tromey.com>
6018
6019         * typeprint.h (struct print_offset_data) <update, finish,
6020         maybe_print_hole>: New methods.
6021         <indentation>: New constant.
6022         * typeprint.c (print_offset_data::indentation): Define.
6023         (print_offset_data::maybe_print_hole, print_offset_data::update)
6024         (print_offset_data::finish): Move from c-typeprint.c and rename.
6025         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6026         (print_spaces_filtered_with_print_options): Update.
6027         (c_print_type_union_field_offset, maybe_print_hole)
6028         (c_print_type_struct_field_offset): Move to typeprint.c and
6029         rename.
6030         (c_type_print_base_struct_union): Update.
6031
6032 2018-06-25  Pedro Alves  <palves@redhat.com>
6033
6034         * gdbthread.h (thread_info_ref, delete_thread)
6035         (delete_thread_silent, first_thread_of_inferior)
6036         (any_thread_of_inferior, switch_to_thread)
6037         (enable_thread_stack_temporaries)
6038         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6039         (get_last_thread_stack_temporary)
6040         (value_in_thread_stack_temporaries, can_access_registers_thread):
6041         Spell out "struct thread_info" instead of just "thread_info".
6042         * inferior.h (notice_new_inferior): Likewise.
6043
6044 2018-06-25  Pedro Alves  <palves@redhat.com>
6045
6046         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6047         pass thread_info pointer to delete_thread.
6048         (windows_nat_target::detach): Pass inferior pointer to
6049         detach_inferior.
6050         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6051         delete_thread.
6052         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6053         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6054         and pass a thread_info pointer to delete_thread.
6055         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6056         pass thread_info pointer to delete_thread.
6057         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6058         delete_thread_silent call.
6059         * procfs.c (procfs_target::detach): Pass inferior pointer to
6060         detach_inferior.
6061         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6062         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6063         delete_thread_silent call.
6064         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6065         pass thread_info pointer to delete_thread.
6066         (windows_nat_target::detach): Pass inferior pointer to
6067         delete_inferior.
6068
6069 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6070
6071         * regcache.c (readable_regcache::read_part): Fix asserts.
6072         (reg_buffer::raw_collect_part): New function.
6073         (regcache::write_part): Fix asserts.
6074         (reg_buffer::raw_supply_part): New function.
6075         (regcache::transfer_regset_register): New helper function.
6076         (regcache::transfer_regset): Call new functions.
6077         (regcache_supply_regset): Use gdb_byte*.
6078         (regcache::supply_regset): Likewise.
6079         (regcache_collect_regset): Likewise.
6080         (regcache::collect_regset): Likewise.
6081         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6082         (reg_buffer::raw_supply_part): Likewise.
6083         (regcache::transfer_regset_register): Likewise.
6084         (regcache::transfer_regset): Use gdb_byte*.
6085
6086 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6087
6088         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6089
6090 2018-06-21  Pedro Alves  <palves@redhat.com>
6091
6092         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6093         instead of a ptid_t.  All callers adjusted.
6094         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6095         adjusted.
6096         (print_ada_task_info, display_current_task_id, task_command_1):
6097         Adjust.
6098         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6099         inferior_thread.
6100         (breakpoint_kind): Adjust.
6101         (remove_breakpoints_pid): Rename to ...
6102         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6103         pointer.  All callers adjusted.
6104         (bpstat_clear_actions): Use inferior_thread.
6105         (get_bpstat_thread): New.
6106         (bpstat_do_actions): Use it.
6107         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6108         to take a thread_info pointer.  All callers adjusted.
6109         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6110         (breakpoint_re_set_thread): Use inferior_thread.
6111         * breakpoint.h (struct inferior): Forward declare.
6112         (bpstat_stop_status): Update.
6113         (remove_breakpoints_pid): Delete.
6114         (remove_breakpoints_inf): New.
6115         * bsd-uthread.c (bsd_uthread_target::wait)
6116         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6117         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6118         (maint_btrace_packet_history_cmd)
6119         (maint_btrace_clear_packet_history_cmd): Adjust.
6120         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6121         inferior_thread.
6122         * cli/cli-interp.c: Include "inferior.h".
6123         * common/refcounted-object.h (struct
6124         refcounted_object_ref_policy): New.
6125         * compile/compile-object-load.c: Include gdbthread.h.
6126         (store_regs): Use inferior_thread.
6127         * corelow.c (core_target::close): Use current_inferior.
6128         (core_target_open): Adjust to use first_thread_of_inferior and use
6129         the current inferior.
6130         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6131         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6132         <thread>: ... this new field.  All references adjusted.
6133         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6134         Take a thread_info pointer instead of a ptid_t.
6135         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6136         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6137         thread_info pointer instead of a ptid_t.
6138         * elfread.c: Include "inferior.h".
6139         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6140         Use inferior_thread.
6141         * eval.c (evaluate_subexp): Likewise.
6142         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6143         inferior_thread.
6144         * gdb_proc_service.h (struct thread_info): Forward declare.
6145         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6146         <thread>: ... this new field.  All references adjusted.
6147         * gdbarch.h, gdbarch.c: Regenerate.
6148         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6149         'thread' parameter.  All implementations and callers adjusted.
6150         * gdbthread.h (thread_info) <set_running>: New method.
6151         (delete_thread, delete_thread_silent): Take a thread_info pointer
6152         instead of a ptid.
6153         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6154         (first_thread_of_process): Delete, replaced by ...
6155         (first_thread_of_inferior): ... this new function.  All callers
6156         adjusted.
6157         (any_live_thread_of_process): Delete, replaced by ...
6158         (any_live_thread_of_inferior): ... this new function.  All callers
6159         adjusted.
6160         (switch_to_thread, switch_to_no_thread): Declare.
6161         (is_executing): Delete.
6162         (enable_thread_stack_temporaries): Update comment.
6163         <enable_thread_stack_temporaries>: Take a thread_info pointer
6164         instead of a ptid_t.  Incref the thread.
6165         <~enable_thread_stack_temporaries>: Decref the thread.
6166         <m_ptid>: Delete
6167         <m_thr>: New.
6168         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6169         (get_last_thread_stack_temporary)
6170         (value_in_thread_stack_temporaries, can_access_registers_thread):
6171         Take a thread_info pointer instead of a ptid_t.  All callers
6172         adjusted.
6173         * infcall.c (get_call_return_value): Use inferior_thread.
6174         (run_inferior_call): Work with thread pointers instead of ptid_t.
6175         (call_function_by_hand_dummy): Work with thread pointers instead
6176         of ptid_t.  Use thread_info_ref.
6177         * infcmd.c (proceed_thread_callback): Access thread's state
6178         directly.
6179         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6180         access thread's state directly.
6181         (continue_command): Use inferior_thread.
6182         (info_program_command): Use find_thread_ptid and access thread
6183         state directly.
6184         (proceed_after_attach_callback): Use thread state directly.
6185         (notice_new_inferior): Take a thread_info pointer instead of a
6186         ptid_t.  All callers adjusted.
6187         (exit_inferior): Take an inferior pointer instead of a pid.  All
6188         callers adjusted.
6189         (exit_inferior_silent): New.
6190         (detach_inferior): Delete.
6191         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6192         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6193         (detach_inferior_command, kill_inferior_command): Use
6194         find_inferior_id instead of valid_gdb_inferior_id and
6195         gdb_inferior_id_to_pid.
6196         (inferior_command): Use inferior and thread pointers.
6197         * inferior.h (struct thread_info): Forward declare.
6198         (notice_new_inferior): Take a thread_info pointer instead of a
6199         ptid_t.  All callers adjusted.
6200         (detach_inferior): Delete declaration.
6201         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6202         instead of a pid.  All callers adjusted.
6203         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6204         (valid_gdb_inferior_id): Delete.
6205         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6206         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6207         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6208         ...
6209         <inf>: ... this new field.
6210         <step_ptid>: Delete, replaced by ...
6211         <step_thread>: ... this new field.
6212         (get_displaced_stepping_state): Take an inferior pointer instead
6213         of a pid.  All callers adjusted.
6214         (displaced_step_in_progress_any_inferior): Adjust.
6215         (displaced_step_in_progress_thread): Take a thread pointer instead
6216         of a ptid_t.  All callers adjusted.
6217         (displaced_step_in_progress, add_displaced_stepping_state): Take
6218         an inferior pointer instead of a pid.  All callers adjusted.
6219         (get_displaced_step_closure_by_addr): Adjust.
6220         (remove_displaced_stepping_state): Take an inferior pointer
6221         instead of a pid.  All callers adjusted.
6222         (displaced_step_prepare_throw, displaced_step_prepare)
6223         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6224         All callers adjusted.
6225         (start_step_over): Adjust.
6226         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6227         displaced step queue.
6228         (do_target_resume): Adjust.
6229         (fetch_inferior_event): Use inferior_thread.
6230         (context_switch, get_inferior_stop_soon): Take an
6231         execution_control_state pointer instead of a ptid_t.  All callers
6232         adjusted.
6233         (switch_to_thread_cleanup): Delete.
6234         (stop_all_threads): Use scoped_restore_current_thread.
6235         * inline-frame.c: Include "gdbthread.h".
6236         (inline_state) <inline_state>: Take a thread pointer instead of a
6237         ptid_t.  All callers adjusted.
6238         <ptid>: Delete, replaced by ...
6239         <thread>: ... this new field.
6240         (find_inline_frame_state): Take a thread pointer instead of a
6241         ptid_t.  All callers adjusted.
6242         (skip_inline_frames, step_into_inline_frame)
6243         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6244         pointer instead of a ptid_t.  All callers adjusted.
6245         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6246         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6247         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6248         pointers directly.
6249         * linux-nat.c (get_detach_signal): Likewise.
6250         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6251         (thread_db_notice_clone): Adjust.
6252         (thread_db_find_new_threads_silently)
6253         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6254         a thread pointer instead of a ptid_t.  All callers adjusted.
6255         * mi/mi-cmd-var.c: Include "inferior.h".
6256         (mi_cmd_var_update_iter): Update to use thread pointers.
6257         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6258         inferior directly.
6259         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6260         out to ...
6261         (mi_output_running): ... this new function.
6262         (mi_on_resume_1): Adjust to use it.
6263         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6264         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6265         directly.
6266         (interrupt_thread_callback): : Adjust to use thread and inferior
6267         pointers.
6268         * proc-service.c: Include "gdbthread.h".
6269         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6270         * progspace-and-thread.c: Include "inferior.h".
6271         * progspace.c: Include "inferior.h".
6272         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6273         hold a reference to an inferior_object.
6274         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6275         inferior_thread.
6276         * python/py-inferior.c (struct inferior_object): Give the type a
6277         tag name instead of a typedef.
6278         (python_on_normal_stop): No need to check if the current thread is
6279         listed.
6280         (inferior_to_inferior_object): Change return type to
6281         inferior_object.  All callers adjusted.
6282         (find_thread_object): Delete, bits factored out to ...
6283         (thread_to_thread_object): ... this new function.
6284         * python/py-infthread.c (create_thread_object): Use
6285         inferior_to_inferior_object.
6286         (thpy_is_stopped): Use thread pointer directly.
6287         (gdbpy_selected_thread): Use inferior_thread.
6288         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6289         field, replaced with ...
6290         <thread>: ... this new field.  All users adjusted.
6291         (btpy_insn_or_gap_new): Drop const.
6292         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6293         callers adjusted.
6294         * python/py-record.c: Include "gdbthread.h".
6295         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6296         a ptid_t.  All callers adjusted.
6297         (gdbpy_current_recording): Use inferior_thread.
6298         * python/py-record.h (recpy_record_object) <ptid>: Delete
6299         field, replaced with ...
6300         <thread>: ... this new field.  All users adjusted.
6301         (recpy_element_object) <ptid>: Delete
6302         field, replaced with ...
6303         <thread>: ... this new field.  All users adjusted.
6304         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6305         a ptid_t.  All callers adjusted.
6306         * python/py-threadevent.c: Include "gdbthread.h".
6307         (get_event_thread): Use thread_to_thread_object.
6308         * python/python-internal.h (struct inferior_object): Forward
6309         declare.
6310         (find_thread_object, find_inferior_object): Delete declarations.
6311         (thread_to_thread_object, inferior_to_inferior_object): New
6312         declarations.
6313         * record-btrace.c: Include "inferior.h".
6314         (require_btrace_thread): Use inferior_thread.
6315         (record_btrace_frame_sniffer)
6316         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6317         (get_thread_current_frame): Use scoped_restore_current_thread and
6318         switch_to_thread.
6319         (get_thread_current_frame): Use thread pointer directly.
6320         (record_btrace_replay_at_breakpoint): Use thread's inferior
6321         pointer directly.
6322         * record-full.c: Include "inferior.h".
6323         * regcache.c: Include "gdbthread.h".
6324         (get_thread_arch_regcache): Use the inferior's address space
6325         directly.
6326         (get_thread_regcache, registers_changed_thread): New.
6327         * regcache.h (get_thread_regcache(thread_info *thread)): New
6328         overload.
6329         (registers_changed_thread): New.
6330         (remote_target) <remote_detach_1>: Swap order of parameters.
6331         (remote_add_thread): <remote_add_thread>: Return the new thread.
6332         (get_remote_thread_info(ptid_t)): New overload.
6333         (remote_target::remote_notice_new_inferior): Use thread pointers
6334         directly.
6335         (remote_target::process_initial_stop_replies): Use
6336         thread_info::set_running.
6337         (remote_target::remote_detach_1, remote_target::detach)
6338         (extended_remote_target::detach): Adjust.
6339         * stack.c (frame_show_address): Use inferior_thread.
6340         * target-debug.h (target_debug_print_thread_info_pp): New.
6341         * target-delegates.c: Regenerate.
6342         * target.c (default_thread_address_space): Delete.
6343         (memory_xfer_partial_1): Use current_inferior.
6344         (target_detach): Use current_inferior.
6345         (target_thread_address_space): Delete.
6346         (generic_mourn_inferior): Use current_inferior.
6347         * target.h (struct target_ops) <thread_address_space>: Delete.
6348         (target_thread_address_space): Delete.
6349         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6350         pointers directly.
6351         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6352         thread pointer instead of a ptid_t.  Adjust all callers.
6353         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6354         (first_thread_of_process): Delete, replaced by ...
6355         (first_thread_of_inferior): ... this new function.  All callers
6356         adjusted.
6357         (any_thread_of_process): Rename to ...
6358         (any_thread_of_inferior): ... this, and take an inferior pointer.
6359         (any_live_thread_of_process): Rename to ...
6360         (any_live_thread_of_inferior): ... this, and take an inferior
6361         pointer.
6362         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6363         (value_in_thread_stack_temporaries)
6364         (get_last_thread_stack_temporary): Take a thread pointer instead
6365         of a ptid_t.  Adjust all callers.
6366         (thread_info::set_running): New.
6367         (validate_registers_access): Use inferior_thread.
6368         (can_access_registers_ptid): Rename to ...
6369         (can_access_registers_thread): ... this, and take a thread
6370         pointer.
6371         (print_thread_info_1): Adjust to compare thread pointers instead
6372         of ptids.
6373         (switch_to_no_thread, switch_to_thread): Make extern.
6374         (scoped_restore_current_thread::~scoped_restore_current_thread):
6375         Use m_thread pointer directly.
6376         (scoped_restore_current_thread::scoped_restore_current_thread):
6377         Use inferior_thread.
6378         (thread_command): Use thread pointer directly.
6379         (thread_num_make_value_helper): Use inferior_thread.
6380         * top.c (execute_command): Use inferior_thread.
6381         * tui/tui-interp.c: Include "inferior.h".
6382         * varobj.c (varobj_create): Use inferior_thread.
6383         (value_of_root_1): Use find_thread_global_id instead of
6384         global_thread_id_to_ptid.
6385
6386 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6387
6388         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6389         possible.
6390         (regcache::write_part): Likewise.
6391         (readable_regcache::cooked_read_part): Update comment.
6392         (readable_regcache::cooked_write_part): Likewise.
6393         * regcache.h: (readable_regcache::read_part): Likewise.
6394         (regcache::write_part): Likewise.
6395
6396 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6397             Dirk Schubert  <dirk.schubert@arm.com>
6398
6399         * aarch64-linux-nat.c (post_attach): New.
6400         (aarch64_linux_nat_target::post_attach): Override post_attach to
6401         record the number of hardware debug registers.
6402
6403 2018-06-20  Tom Tromey  <tom@tromey.com>
6404
6405         * python/py-param.c (add_setshow_generic): Make parameters const.
6406         (parmpy_init): Update.
6407
6408 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6409
6410         * regcache.h (regcache_cooked_read_ftype): Rename to...
6411         (register_read_ftype): ...this, change type to function_view.
6412         (class reg_buffer) <save>: Remove src parameter.
6413         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6414         parameter non-const in first overload.  Remove src parameter in
6415         second overload.
6416         * regcache.c (do_cooked_read): Remove.
6417         (readonly_detached_regcache::readonly_detached_regcache): Make
6418         parameter non-const, adjust call to other constructor.
6419         (reg_buffer::save): Remove src parameter.
6420         * frame.c (do_frame_register_read): Remove.
6421         (frame_save_as_regcache): Use lambda function.
6422         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6423         parameter to ppu2spu_data *.
6424         (ppu2spu_sniffer): Use lambda function.
6425
6426 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6427
6428         * record-full.c (record_full_target::insert_breakpoint): Remove
6429         "struct" keyword, add const.
6430
6431 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6432
6433         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6434         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6435         * configure.ac: Remove AC_PREREQ, add missing quoting.
6436         * gnulib/configure.ac: Modernize usage of
6437         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6438         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6439         (AUTOMAKE_VERSION): Bump to 1.15.1.
6440         * configure: Re-generate.
6441         * config.in: Re-generate.
6442         * aclocal.m4: Re-generate.
6443         * gnulib/aclocal.m4: Re-generate.
6444         * gnulib/config.in: Re-generate.
6445         * gnulib/configure: Re-generate.
6446         * gnulib/import/Makefile.in: Re-generate.
6447
6448 2018-06-19  Pedro Alves  <palves@redhat.com>
6449
6450         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6451         (lookup_minimal_symbol_by_pc_section): ... here with
6452         gdb_assert_not_reached added.
6453
6454 2018-06-19  Pedro Alves  <palves@redhat.com>
6455
6456         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6457         parameter with a block parameter.  Compare location's block symbol
6458         with the frame's block instead of addresses.
6459         (skip_inline_frames): Pass the current block instead of the
6460         frame's address.  Break out as soon as we determine the frame
6461         should not be skipped.
6462
6463 2018-06-18  Tom Tromey  <tom@tromey.com>
6464
6465         * solib-aix.c (solib_aix_get_section_offsets): Return
6466         unique_xmalloc_ptr.
6467         (solib_aix_solib_create_inferior_hook): Update.
6468
6469 2018-06-18  Tom Tromey  <tom@tromey.com>
6470
6471         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6472
6473 2018-06-18  Tom Tromey  <tom@tromey.com>
6474
6475         * solib-frv.c (frv_relocate_main_executable): Use
6476         unique_xmalloc_ptr.
6477         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6478         unique_xmalloc_ptr.
6479
6480 2018-06-18  Tom Tromey  <tom@tromey.com>
6481
6482         * objfiles.h (inhibit_section_map_updates): Update.
6483         (resume_section_map_updates, resume_section_map_updates_cleanup):
6484         Remove.
6485         * solib-svr4.c (svr4_handle_solib_event): Update.
6486         * objfiles.c (inhibit_section_map_updates): Return
6487         scoped_restore_tmpl<int>.
6488         (resume_section_map_updates, resume_section_map_updates_cleanup):
6489         Remove.
6490
6491 2018-06-18  Tom Tromey  <tom@tromey.com>
6492
6493         * valprint.h (read_string): Update.
6494         * valprint.c (read_string): Change type of "buffer".
6495         (val_print_string): Update.
6496         * python/py-value.c (valpy_string): Update.
6497         * language.h (struct language_defn) <la_get_string>: Change
6498         type of "buffer".
6499         (default_get_string, c_get_string): Update.
6500         * language.c (default_get_string): Change type of "buffer".
6501         * guile/scm-value.c (gdbscm_value_to_string): Update.
6502         * c-lang.c (c_get_string): Change type of "buffer".
6503
6504 2018-06-18  Tom Tromey  <tom@tromey.com>
6505
6506         * ser-mingw.c (struct pipe_state_destroyer): New.
6507         (pipe_state_up): New typedef.
6508         (cleanup_pipe_state): Remove.
6509         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6510
6511 2018-06-18  Tom Tromey  <tom@tromey.com>
6512
6513         * rust-lang.h (rust_yyerror): Don't declare.
6514         * rust-lang.c (rust_language_defn): Update.
6515         * rust-exp.y (yyerror): Now static.
6516         * parse.c (parse_exp_in_context_1): Update.
6517         * p-lang.h (p_yyerror): Don't declare.
6518         * p-lang.c (p_language_defn): Update.
6519         * p-exp.y (yyerror): Now static.
6520         * opencl-lang.c (opencl_language_defn): Update.
6521         * objc-lang.c (objc_language_defn): Update.
6522         * m2-lang.h (m2_yyerror): Don't declare.
6523         * m2-lang.c (m2_language_defn): Update.
6524         * m2-exp.y (yyerror): Now static.
6525         * language.h (struct language_defn) <la_error>: Remove.
6526         * language.c (unk_lang_error): Remove.
6527         (unknown_language_defn, auto_language_defn): Remove.
6528         * go-lang.h (go_yyerror): Don't declare.
6529         * go-lang.c (go_language_defn): Update.
6530         * go-exp.y (yyerror): Now static.
6531         * f-lang.h (f_yyerror): Don't declare.
6532         * f-lang.c (f_language_defn): Update.
6533         * f-exp.y (yyerror): Now static.
6534         * d-lang.h (d_yyerror): Don't declare.
6535         * d-lang.c (d_language_defn): Update.
6536         * d-exp.y (yyerror): Now static.
6537         * c-lang.h (c_yyerror): Don't declare.
6538         * c-lang.c (c_language_defn, cplus_language_defn)
6539         (asm_language_defn, minimal_language_defn): Update.
6540         * c-exp.y (yyerror): Now static.
6541         * ada-lang.h (ada_yyerror): Don't declare.
6542         * ada-lang.c (ada_language_defn): Update.
6543         * ada-exp.y (yyerror): Now static.
6544
6545 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6546
6547         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6548         (store_sveregs_to_thread): Likewise.
6549         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6550         (aarch64_linux_store_inferior_registers): Likewise.
6551         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6552         function.
6553         (aarch64_sve_regs_copy_to_regcache): Likewise.
6554         (aarch64_sve_regs_copy_from_regcache): Likewise.
6555         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6556         declaration.
6557         (aarch64_sve_regs_copy_to_regcache): Likewise.
6558         (aarch64_sve_regs_copy_from_regcache): Likewise.
6559         (sve_context): Structure from Linux headers.
6560         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6561         (SVE_SIG_ZREG_SIZE): Likewise.
6562         (SVE_SIG_PREG_SIZE): Likewise.
6563         (SVE_SIG_FFR_SIZE): Likewise.
6564         (SVE_SIG_REGS_OFFSET): Likewise.
6565         (SVE_SIG_ZREGS_OFFSET): Likewise.
6566         (SVE_SIG_ZREG_OFFSET): Likewise.
6567         (SVE_SIG_ZREGS_SIZE): Likewise.
6568         (SVE_SIG_PREGS_OFFSET): Likewise.
6569         (SVE_SIG_PREG_OFFSET): Likewise.
6570         (SVE_SIG_PREGS_SIZE): Likewise.
6571         (SVE_SIG_FFR_OFFSET): Likewise.
6572         (SVE_SIG_REGS_SIZE): Likewise.
6573         (SVE_SIG_CONTEXT_SIZE): Likewise.
6574         (SVE_PT_REGS_MASK): Likewise.
6575         (SVE_PT_REGS_FPSIMD): Likewise.
6576         (SVE_PT_REGS_SVE): Likewise.
6577         (SVE_PT_VL_INHERIT): Likewise.
6578         (SVE_PT_VL_ONEXEC): Likewise.
6579         (SVE_PT_REGS_OFFSET): Likewise.
6580         (SVE_PT_FPSIMD_OFFSET): Likewise.
6581         (SVE_PT_FPSIMD_SIZE): Likewise.
6582         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6583         (SVE_PT_SVE_PREG_SIZE): Likewise.
6584         (SVE_PT_SVE_FFR_SIZE): Likewise.
6585         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6586         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6587         (__SVE_SIG_TO_PT): Likewise.
6588         (SVE_PT_SVE_OFFSET): Likewise.
6589         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6590         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6591         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6592         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6593         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6594         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6595         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6596         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6597         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6598         (SVE_PT_SVE_SIZE): Likewise.
6599         (SVE_PT_SIZE): Likewise.
6600         (HAS_SVE_STATE): New define.
6601
6602 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6603
6604         * nat/aarch64-sve-linux-sigcontext.h: New file.
6605         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6606         new files.
6607         (SVE_VQ_MIN): Likewise.
6608         (SVE_VQ_MAX): Likewise.
6609         (SVE_VL_MIN): Likewise.
6610         (SVE_VL_MAX): Likewise.
6611         (SVE_NUM_ZREGS): Likewise.
6612         (SVE_NUM_PREGS): Likewise.
6613         (sve_vl_valid): Likewise.
6614         (struct user_sve_header): Likewise.
6615
6616 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6617             Richard Bunt <Richard.Bunt@arm.com>
6618
6619         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6620         was requested by GDB.
6621
6622 2018-06-15  Tom de Vries  <tdevries@suse.de>
6623
6624         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6625
6626 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6627
6628         * gnulib/update-gnulib.sh: Print expected versions of
6629         autoconf/aclocal.
6630
6631 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6632
6633         * arch-utils.c (default_type_align): Use type_length_units.
6634         * gdbtypes.c (type_align): Use type_length_units.
6635
6636 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6637
6638         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6639         of 'define' command.
6640
6641 2018-06-14  Tom de Vries  <tdevries@suse.de>
6642
6643         PR cli/22573
6644         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6645         get_no_prettyformat_print_options.
6646
6647 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6648
6649         * sparc-nat.h: Include target.h.
6650         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6651         <fetch_registers>: Remove this argument in function call.
6652         <store_registers>: Remove this argument in function call, remove
6653         extra semicolon.
6654         <low_forget_process>: Call sparc64_forget_process instead of
6655         sparc_forget_process.
6656
6657 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6658
6659         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6660         (procfs_target::make_corefile_notes): Adjust to new
6661         target_read_alloc return type.
6662
6663 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6664             Stephen Roberts  <stephen.roberts@arm.com>
6665
6666         PR gdb/22882
6667         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6668         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6669         Move should_notify_stop local into more inner scope.
6670
6671 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6672             Stephen Roberts  <stephen.roberts@arm.com>
6673
6674         PR gdb/22882
6675         * infrun.c (resume_1): Add call to mark_async_event_handler.
6676
6677 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6678
6679         * infrun.c (do_target_wait): Change old version of $pc printed.
6680
6681 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6682
6683         * dwarf2read.c (read_index_from_section): Rename to...
6684         (read_gdb_index_from_section): ... this, update all callers.
6685         (dwarf2_read_index): Rename to...
6686         (dwarf2_read_gdb_index): ... this, update all callers.
6687
6688 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6689
6690         * gdb/hppa-linux-nat.c
6691         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6692         hppa_linux_nat_target::fetch_registers.
6693
6694 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6695
6696         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6697         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6698         (AARCH64_DWARF_SVE_FFR): Likewise.
6699         (AARCH64_DWARF_SVE_P0): Likewise.
6700         (AARCH64_DWARF_SVE_Z0): Likewise.
6701
6702 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6703
6704         * common/common-regcache.h (raw_compare): New function.
6705         * regcache.c (regcache::raw_compare): Likewise.
6706         * regcache.h (regcache::raw_compare): New declaration.
6707
6708 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6709
6710         * common/common-regcache.h (reg_buffer_common): New structure.
6711         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6712         (reg_buffer::raw_supply): Likewise.
6713         (reg_buffer::raw_supply_integer): Likewise.
6714         (reg_buffer::raw_supply_zeroed): Likewise.
6715         (reg_buffer::raw_collect): Likewise.
6716         (reg_buffer::raw_collect_integer): Likewise.
6717         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6718         (reg_buffer::raw_supply): Likewise.
6719         (reg_buffer::raw_supply_integer): Likewise.
6720         (reg_buffer::raw_supply_zeroed): Likewise.
6721         (reg_buffer::raw_collect): Likewise.
6722         (reg_buffer::raw_collect_integer): Likewise.
6723
6724 2018-06-10  Tom Tromey  <tom@tromey.com>
6725
6726         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6727         (class remote_state) <stop_reply_queue>: Now std::vector.
6728         (remote_state::~remote_state)
6729         (remote_target::stop_reply_queue_length): Update.
6730         (struct queue_iter_param, remove_child_of_pending_fork)
6731         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6732         (check_pending_event_prevents_wildcard_vcont_callback)
6733         (remove_stop_reply_for_inferior)
6734         (remove_stop_reply_of_remote_state)
6735         (remote_notif_remove_once_on_match)
6736         (stop_reply_match_ptid_and_ws)
6737         (remote_kill_child_of_pending_fork): Remove.
6738         (remote_target::remove_new_fork_children)
6739         (remote_target::check_pending_events_prevent_wildcard_vcont)
6740         (remote_target::discard_pending_stop_replies)
6741         (remote_target::discard_pending_stop_replies_in_queue)
6742         (remote_target::remote_notif_remove_queued_reply)
6743         (remote_target::queued_stop_reply)
6744         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6745         (remote_target::wait, remote_target::kill_new_fork_children)
6746         (remote_target::async): Update.
6747
6748 2018-06-10  Tom Tromey  <tom@tromey.com>
6749
6750         * record-full.c (record_full_arch_list_cleanups): Remove.
6751         (record_full_message): Use try/catch.
6752         (record_full_wait_cleanups): Remove.
6753         (record_full_wait_1): Use try/catch.
6754         (record_full_restore): Likewise.
6755
6756 2018-06-10  Tom Tromey  <tom@tromey.com>
6757
6758         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6759         declare VEC.  Add constructor.
6760         <in_target_beneath>: Now bool.
6761         (record_full_breakpoints): Now a std::vector, static.
6762         (record_full_sync_record_breakpoints)
6763         (record_full_init_record_breakpoints)
6764         (record_full_target::insert_breakpoint)
6765         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6766
6767 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6768
6769         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6770         * serial.c (serial_interface_lookup): Remove struct keyword.
6771
6772 2018-06-10  Tom Tromey  <tom@tromey.com>
6773
6774         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6775         method.
6776         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6777         a method.
6778         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6779         method.
6780         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6781         "beneath" as a method.
6782         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6783         Use "beneath" as a method.
6784
6785 2018-06-10  Tom Tromey  <tom@tromey.com>
6786
6787         * tracefile.c (struct trace_file_writer_deleter): New.
6788         <operator()>: Rename from trace_file_writer_xfree.
6789         (trace_file_writer_up): New typedef.
6790         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6791
6792 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6793
6794         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6795         <m_registers, m_register_status>: Change type to
6796         std::unique_ptr.
6797         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6798         XCNEWVEC.
6799
6800 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6801
6802         * common/common-regcache.h (enum register_status): Add
6803         underlying type "signed char".
6804         * regcache.h (reg_buffer) <m_register_status>: Change type to
6805         register_status *.
6806         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6807         register_status instead of signed char.
6808         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6809         (reg_buffer::get_register_status): Remove cast.
6810         (readable_regcache::raw_read): Remove cast.
6811         (readable_regcache::cooked_read): Remove cast.
6812
6813 2018-06-09  Tom Tromey  <tom@tromey.com>
6814
6815         * source.c (reverse_search_command, forward_search_command): Use
6816         scoped_fd.
6817
6818 2018-06-09  Tom Tromey  <tom@tromey.com>
6819
6820         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6821         (serial_ops_list): Now static, std::vector.
6822         (serial_interface_lookup, serial_add_interface): Update.
6823
6824 2018-06-09  Tom Tromey  <tom@tromey.com>
6825
6826         * dwarf2read.c (process_cu_includes): Update.
6827         (process_full_comp_unit): Update.
6828         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6829         std::vector.
6830
6831 2018-06-08  Paul Koning  <paul_koning@dell.com>
6832
6833         PR gdb/23252
6834
6835         * python/python.c (do_start_initialization):
6836         Avoid call to internal Python API.
6837         (init__gdb_module): New function.
6838
6839 2018-06-08  Gary Benson <gbenson@redhat.com>
6840
6841         * linux-thread-db.c (valprint.h): New include.
6842         (struct check_thread_db_info): New structure.
6843         (check_thread_db_on_load, tdb_testinfo): New static globals.
6844         (check_thread_db, check_thread_db_callback): New functions.
6845         (try_thread_db_load_1): Run integrity checks if requested.
6846         (maintenance_check_libthread_db): New function.
6847         (_initialize_thread_db): Register "maint check libthread-db"
6848         and "maint set/show check-libthread-db".
6849         * NEWS: Mention the above new commands.
6850
6851 2018-06-08  Tom Tromey  <tom@tromey.com>
6852
6853         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6854         now a method.
6855
6856 2018-06-08  Tom Tromey  <tom@tromey.com>
6857
6858         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6859
6860 2018-06-08  Tom Tromey  <tom@tromey.com>
6861
6862         * common/btrace-common.h (struct btrace_data): Add constructor,
6863         destructor, move assignment operator.
6864         <empty, clear, fini>: New methods.
6865         <format>: Initialize.
6866         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6867         (btrace_data_empty): Don't declare.
6868         * common/btrace-common.c (btrace_data_init): Remove.
6869         (btrace_data::fini): Rename from btrace_data_fini.
6870         (btrace_data::empty): Rename from btrace_data_empty.
6871         (btrace_data::clear): Rename from btrace_data_clear.  Return
6872         bool.
6873         * btrace.h (make_cleanup_btrace_data): Don't declare.
6874         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6875         (parse_xml_btrace): Update.
6876         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6877         (maint_btrace_clear_packet_history_cmd): Update.
6878
6879 2018-06-07  Pedro Alves  <palves@redhat.com>
6880
6881         * target.h (target_ops) <beneath>: Now a method.  All references
6882         updated.
6883         (class target_stack): New.
6884         * target.c (g_target_stack): New.
6885         (g_current_top_target): Delete.
6886         (current_top_target): Get the top target out of g_target_stack.
6887         (target_stack::push, target_stack::unpush): New.
6888         (push_target, unpush_target): Reimplement.
6889         (target_is_pushed): Reimplement in terms of g_target_stack.
6890         (target_ops::beneath, target_stack::find_beneath): New.
6891
6892 2018-06-07  Pedro Alves  <palves@redhat.com>
6893
6894         * target.h (find_target_beneath): Delete declaration.
6895         * target.c (find_target_beneath): Delete definition.
6896         * aix-thread.c: All callers of find_target_beneath adjusted to
6897         call target_ops::beneath instead.
6898         * bsd-uthread.c: Likewise.
6899         * linux-thread-db.c: Likewise.
6900         * ravenscar-thread.c: Likewise.
6901         * sol-thread.c: Likewise.
6902         * spu-multiarch.c: Likewise.
6903
6904 2018-06-07  Pedro Alves  <palves@redhat.com>
6905
6906         * target.h (target_ops) <beneath>: Now a method.  All references
6907         updated.
6908         (target_ops) <m_beneath>: New.
6909         * target.c (target_ops::beneath): New.
6910         * corelow.c: Adjust all references to target_ops::beneath.
6911         * linux-thread-db.c: Likewise.
6912         * make-target-delegates: Likewise.
6913         * record-btrace.c: Likewise.
6914         * record-full.c: Likewise.
6915         * remote.c: Likewise.
6916         * target.c: Likewise.
6917         * target-delegates.c: Regenerate.
6918
6919 2018-06-07  Pedro Alves  <palves@redhat.com>
6920
6921         * target.h (target_stack): Delete.
6922         (current_top_target): Declare function.
6923         * target.c (target_stack): Delete.
6924         (g_current_top_target): New.
6925         (current_top_target): New function.
6926         * auxv.c: Use current_top_target instead of target_stack
6927         throughout.
6928         * avr-tdep.c: Likewise.
6929         * breakpoint.c: Likewise.
6930         * corefile.c: Likewise.
6931         * elfread.c: Likewise.
6932         * eval.c: Likewise.
6933         * exceptions.c: Likewise.
6934         * frame.c: Likewise.
6935         * gdbarch-selftests.c: Likewise.
6936         * gnu-v3-abi.c: Likewise.
6937         * ia64-tdep.c: Likewise.
6938         * ia64-vms-tdep.c: Likewise.
6939         * infcall.c: Likewise.
6940         * infcmd.c: Likewise.
6941         * infrun.c: Likewise.
6942         * linespec.c: Likewise.
6943         * linux-tdep.c: Likewise.
6944         * minsyms.c: Likewise.
6945         * ppc-linux-nat.c: Likewise.
6946         * ppc-linux-tdep.c: Likewise.
6947         * procfs.c: Likewise.
6948         * regcache.c: Likewise.
6949         * remote.c: Likewise.
6950         * rs6000-tdep.c: Likewise.
6951         * s390-linux-nat.c: Likewise.
6952         * s390-tdep.c: Likewise.
6953         * solib-aix.c: Likewise.
6954         * solib-darwin.c: Likewise.
6955         * solib-dsbt.c: Likewise.
6956         * solib-spu.c: Likewise.
6957         * solib-svr4.c: Likewise.
6958         * solib-target.c: Likewise.
6959         * sparc-tdep.c: Likewise.
6960         * sparc64-tdep.c: Likewise.
6961         * spu-tdep.c: Likewise.
6962         * symfile.c: Likewise.
6963         * symtab.c: Likewise.
6964         * target-descriptions.c: Likewise.
6965         * target-memory.c: Likewise.
6966         * target.c: Likewise.
6967         * target.h: Likewise.
6968         * tracefile-tfile.c: Likewise.
6969         * tracepoint.c: Likewise.
6970         * valops.c: Likewise.
6971         * valprint.c: Likewise.
6972         * value.c: Likewise.
6973         * windows-tdep.c: Likewise.
6974         * mi/mi-main.c: Likewise.
6975
6976 2018-06-07  Tom Tromey  <tom@tromey.com>
6977
6978         * valprint.h (build_address_symbolic): Declare.
6979         * printcmd.c (print_address_symbolic): Update.
6980         (build_address_symbolic): Change "name" and "filename" to
6981         std::string.
6982         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6983         Update.
6984         * defs.h (build_address_symbolic): Remove declaration.
6985
6986 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6987
6988         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6989         (aarch64_vnv_type): Add function.
6990         (aarch64_pseudo_register_name): Add V regs for SVE.
6991         (aarch64_pseudo_register_type): Likewise.
6992         (aarch64_pseudo_register_reggroup_p): Likewise.
6993         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6994         (aarch64_pseudo_read_value): Add V regs for SVE.
6995         (aarch64_pseudo_write_2): Use V0 offset for SVE
6996         (aarch64_pseudo_write): Add V regs for SVE.
6997         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6998
6999 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7000
7001         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7002         (sve_vl_from_vq): Likewise.
7003
7004 2018-06-05  Tom Tromey  <tom@tromey.com>
7005
7006         * cli/cli-cmds.c (show_version): Update.
7007         * top.c (print_gdb_version): Add "interactive" parameter.
7008         Update.
7009         * main.c (captured_main_1): Update.
7010         * top.h (print_gdb_version): Add "interactive" parameter and a
7011         comment.
7012
7013 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7014
7015         * common/enum-flags.h: Add trailing semicolon to example in
7016         comment.
7017
7018 2018-06-05  Tom Tromey  <tom@tromey.com>
7019
7020         PR cli/12326:
7021         * NEWS: Add entry about pager.
7022         * utils.c (pagination_disabled_for_command): New global.
7023         (prompt_for_continue): Allow "c" response to prompt.
7024         (reinitialize_more_filter): Clear
7025         pagination_disabled_for_command.
7026         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7027
7028 2018-06-04  Tom Tromey  <tom@tromey.com>
7029
7030         * ada-lang.h (ada_lookup_symbol_list): Update.
7031         * ada-lang.c (resolve_subexp): Update.
7032         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7033         parameter.
7034         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7035         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7036         results parameter to std::vector.
7037         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7038         Update.
7039         * ada-exp.y (block_lookup): Update.
7040         (select_possible_type_sym): Change type of syms.  Remove nsyms
7041         parameter.
7042         (write_var_or_type, write_name_assoc): Update.
7043
7044 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7045
7046         * windows-nat.c (windows_nat_target::xfer_partial): Return
7047         TARGET_XFER_E_IO if we need to delegate to the target beneath
7048         but BENEATH is NULL.
7049
7050 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7051
7052         * Makefile.in (config.status): Add configure.nat as a
7053         dependency.
7054
7055 2018-06-04  Tom Tromey  <tom@tromey.com>
7056
7057         * cp-name-parser.y (cpname_state): Add method declarations.
7058         (HANDLE_QUAL): Update.
7059         (cpname_state::d_grab, cpname_state::fill_comp)
7060         (cpname_state::make_operator, cpname_state::make_dtor)
7061         (cpname_state::make_builtin_type, cpname_state::make_name)
7062         (cpname_state::d_qualify, cpname_state::d_int_type)
7063         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7064         (%union): Move earlier.
7065
7066 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7067
7068         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7069
7070 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7071
7072         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7073         (aarch64_pseudo_write_1): Likewise.
7074         (aarch64_pseudo_read_value): Use helper.
7075         (aarch64_pseudo_write): Likewise.
7076
7077 2018-06-04  Pedro Alves  <palves@redhat.com>
7078
7079         * darwin-nat.c (darwin_ops): Delete.
7080         (darwin_attach_pid): Use get_native_target.
7081
7082 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7083
7084         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7085         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7086
7087 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7088
7089         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7090         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7091         (aarch64_gdbarch_init): Check for SVE.
7092         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7093
7094 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7095
7096         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7097         * aarch64-tdep.h (aarch64_read_description): Likewise.
7098         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7099         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7100         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7101         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7102         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7103
7104 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7105
7106         * value.c (value_fetch_lazy_bitfield): New.
7107         (value_fetch_lazy_memory): New.
7108         (value_fetch_lazy_register): New.
7109         (value_fetch_lazy): Factor out to smaller functions.
7110
7111 2018-06-01  Tom Tromey  <tom@tromey.com>
7112
7113         * cp-name-parser.y (backslashable, represented): Now const.
7114
7115 2018-06-01  Tom Tromey  <tom@tromey.com>
7116
7117         * cp-name-parser.y: Include parser-defs.h.
7118         (parser_fprintf): Remove declaration.
7119
7120 2018-06-01  Tom Tromey  <tom@tromey.com>
7121
7122         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7123         %parse-param.
7124         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7125         (global_result): Remove globals.
7126         (struct cpname_state): New.
7127         (yyparse): Don't declare.
7128         (yylex, yyerror): Move declarations after %union.
7129         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7130         (make_name): Add state parameter.
7131         Update all callers.
7132         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7133         parameter.
7134         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7135         Update.
7136         (yylex): Add lvalp, state parameters.
7137         (yyerror): Add state parameter.
7138         (cp_demangled_name_to_comp): Update.
7139
7140 2018-06-01  Tom Tromey  <tom@tromey.com>
7141
7142         * cp-name-parser.y (parser_fprintf): Declare.
7143         (GDB_YY_REMAP_PREFIX): Define.
7144         Include yy-remap.h.  Don't redefine yy* identifiers.
7145
7146 2018-06-01  Tom Tromey  <tom@tromey.com>
7147
7148         * python/py-type.c (typy_legacy_template_argument): Update.
7149         * cp-support.h (cp_demangled_name_to_comp): Update.
7150         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7151         parameter to be a "std::string *".
7152         (main): Update.
7153
7154 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7155
7156         * ada-lex.l: Include "diagnostics.h" instead of
7157         "common/diagnostics.h".
7158         * unittests/environ-selftests.c: Likewise.
7159         * common/diagnostics.h: Moved to ../include.
7160
7161 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7162
7163         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7164         to language_mode_manual while calling breakpoint_re_set_one.
7165
7166 2018-06-01  Tom Tromey  <tom@tromey.com>
7167
7168         * valops.c (value_cast_structs, destructor_name_p): Update.
7169         * symtab.c (gdb_mangle_name): Update.
7170         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7171         Update.
7172         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7173         (pascal_object_print_value_fields, pascal_object_print_value):
7174         Update.
7175         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7176         * linespec.c (find_methods): Update.
7177         * gdbtypes.h (type_name_no_tag): Remove.
7178         (type_name_or_error): Rename from type_name_no_tag_or_error.
7179         * gdbtypes.c (type_name_no_tag): Remove.
7180         (type_name_or_error): Rename from type_name_no_tag_or_error.
7181         (lookup_struct_elt_type, check_typedef): Update.
7182         * expprint.c (print_subexp_standard): Update.
7183         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7184         * d-namespace.c (d_lookup_nested_symbol): Update.
7185         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7186         (cp_print_class_member): Update.
7187         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7188         * completer.c (add_struct_fields): Update.
7189         * c-typeprint.c (cp_type_print_derivation_info)
7190         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7191         Update.
7192         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7193         (ada_prefer_type, ada_is_exception_sym): Update.
7194
7195 2018-06-01  Tom Tromey  <tom@tromey.com>
7196
7197         * valops.c (enum_constant_from_type, value_namespace_elt)
7198         (value_maybe_namespace_elt): Update.
7199         * valarith.c (find_size_for_pointer_math): Update.
7200         * target-descriptions.c (make_gdb_type): Update.
7201         * symmisc.c (print_symbol): Update.
7202         * stabsread.c (define_symbol, read_type)
7203         (complain_about_struct_wipeout, add_undefined_type)
7204         (cleanup_undefined_types_1): Update.
7205         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7206         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7207         (rust_internal_print_type, rust_composite_type)
7208         (rust_evaluate_funcall, rust_evaluate_subexp)
7209         (rust_inclusive_range_type_p): Update.
7210         * python/py-type.c (typy_get_tag): Update.
7211         * p-typeprint.c (pascal_type_print_base): Update.
7212         * mdebugread.c (parse_symbol, parse_type): Update.
7213         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7214         Update.
7215         * guile/scm-type.c (gdbscm_type_tag): Update.
7216         * go-lang.c (sixg_string_p): Update.
7217         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7218         Update.
7219         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7220         (TYPE_TAG_NAME): Remove.
7221         * gdbtypes.c (type_name_no_tag): Simplify.
7222         (check_typedef, check_types_equal, recursive_dump_type)
7223         (copy_type_recursive, arch_composite_type): Update.
7224         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7225         in summary mode when needed.
7226         * eval.c (evaluate_funcall): Update.
7227         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7228         (process_structure_scope, read_enumeration_type)
7229         (read_namespace_type, read_module_type, determine_prefix): Update.
7230         * cp-support.c (inspect_type): Update.
7231         * coffread.c (process_coff_symbol, decode_base_type): Update.
7232         * c-varobj.c (c_is_path_expr_parent): Update.
7233         * c-typeprint.c (c_type_print_base_struct_union): Update.
7234         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7235         summary when using C language.
7236         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7237         (gen_maybe_namespace_elt): Update.
7238         * ada-lang.c (ada_type_name): Simplify.
7239         (empty_record, ada_template_to_fixed_record_type_1)
7240         (template_to_static_fixed_type)
7241         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7242
7243 2018-06-01  Tom Tromey  <tom@tromey.com>
7244
7245         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7246         c_print_type.
7247         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7248         (c_print_type): Update.
7249         (c_print_type): New overload.
7250         (c_type_print_varspec_prefix, c_type_print_args)
7251         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7252         (c_type_print_base_struct_union, c_type_print_base_1)
7253         (cp_type_print_method_args): Add "language" parameter.
7254         (c_type_print_base): Update.
7255         * c-lang.h (c_print_type): Add new overload.
7256
7257 2018-06-01  Tom Tromey  <tom@tromey.com>
7258
7259         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7260         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7261
7262 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7263
7264         * aarch64-tdep.c (aarch64_sve_register_names): New const
7265         var.
7266         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7267         (AARCH64_SVE_Z_REGS_NUM): New define.
7268         (AARCH64_SVE_P_REGS_NUM): Likewise.
7269         (AARCH64_SVE_NUM_REGS): Likewise.
7270
7271 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7272
7273         * nat/linux-ptrace.h [__alpha__]
7274         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7275         definitions.
7276
7277 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7278
7279         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7280         the endianness selected.
7281         * NEWS: Document `set endian auto' mode operation update.
7282
7283 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7284
7285         * Makefile.in: Add new header.
7286         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7287         (sve_vl_from_vg): Likewise.
7288         (sve_vq_from_vl): Likewise.
7289         (sve_vl_from_vq): Likewise.
7290         (sve_vq_from_vg): Likewise.
7291         (sve_vg_from_vq): Likewise.
7292         * configure.nat: Add new c file.
7293         * nat/aarch64-sve-linux-ptrace.c: New file.
7294         * nat/aarch64-sve-linux-ptrace.h: New file.
7295
7296 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7297
7298         * aarch64-linux-nat.c (aarch64_linux_read_description):
7299         Add parmeter zero.
7300         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7301         Likewise.
7302         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7303         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7304         (aarch64_gdbarch_init): Add parmeter zero.
7305         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7306         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7307         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7308         parmeter.
7309         * doc/gdb.texinfo: Describe SVE feature
7310         * features/aarch64-sve.c: New file.
7311
7312 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7313
7314         PR gdb/23210
7315         * gdbarch.sh (significant_addr_bit): Default to zero when
7316         not set by target architecture.
7317         * gdbarch.c: Re-generated.
7318         * utils.c (address_significant): Update.
7319
7320 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7321
7322         * stack.c (func_command): Remove trailing newline in call to error.
7323
7324 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7325
7326         * regcache.h (regcache_raw_collect): Remove, update callers to
7327         use regcache::raw_collect.
7328         * regcache.c (regcache_raw_collect): Remove.
7329
7330 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7331
7332         * regcache.h (regcache_raw_supply): Remove, update callers to
7333         use detached_regcache::raw_supply.
7334         * regcache.c (regcache_raw_supply): Remove.
7335
7336 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7337
7338         * regcache.h (regcache_cooked_write_part): Remove, update
7339         callers to use regcache::cooked_write_part.
7340         * regcache.c (regcache_cooked_write_part): Remove.
7341
7342 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7343
7344         * regcache.h (regcache_cooked_read_part): Remove, update callers
7345         to use readable_regcache::cooked_read_part.
7346         * regcache.c (regcache_cooked_read_part): Remove.
7347
7348 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7349
7350         * regcache.h (regcache_cooked_read_value): Remove, update
7351         callers to use readable_regcache::cooked_read_value.
7352         * regcache.c (regcache_cooked_read_value): Remove.
7353
7354 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7355
7356         * regcache.h (regcache_cooked_write): Remove, update callers to
7357         use regcache::cooked_write.
7358         * regcache.c (regcache_cooked_write): Remove.
7359
7360 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7361
7362         * regcache.h (regcache_invalidate): Remove, update callers to
7363         use detached_regcache::invalidate instead.
7364         * regcache.c (regcache_invalidate): Remove.
7365
7366 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7367
7368         * regcache.h (regcache_raw_write_part): Remove, update callers
7369         to use regcache::raw_write_part instead.
7370         * regcache.c (regcache_raw_write_part): Remove.
7371
7372 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7373
7374         * regcache.h (regcache_raw_read_part): Remove, update callers to
7375         use readable_regcache::raw_read_part instead.
7376         * regcache.c (regcache_raw_read_part): Remove.
7377
7378 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7379
7380         * regcache.h (regcache_cooked_read): Remove, update callers to
7381         use readable_regcache::cooked_read instead.
7382         * regcache.c (regcache_cooked_read): Remove.
7383
7384 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7385
7386         * regcache.h (regcache_raw_write): Remove, update callers to use
7387         regcache::raw_write instead.
7388         * regcache.c (regcache_raw_write): Remove.
7389
7390 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7391
7392         * regcache.h (regcache_raw_read): Remove, update callers to use
7393         readable_regcache::raw_read instead.
7394         * regcache.c (regcache_raw_read): Remove.
7395
7396 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7397
7398         * regcache.h (regcache_raw_update): Remove, update callers to
7399         use readable_regcache::raw_update instead.
7400         * regcache.c (regcache_raw_update): Remove.
7401
7402 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7403
7404         * regcache.h (regcache_register_status): Remove, update callers
7405         to use reg_buffer::get_register_status directly instead.
7406         * regcache.c (regcache_register_status): Remove.
7407
7408 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7409
7410         * regcache.h (regcache_get_ptid): Remove, update all callers to
7411         call regcache::ptid instead.
7412         * regcache.c (regcache_get_ptid): Remove.
7413
7414 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7415
7416         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7417
7418 2018-05-30  Pedro Alves  <palves@redhat.com>
7419
7420         * common/common-exceptions.h (exception_rethrow): Use
7421         ATTRIBUTE_NORETURN.
7422
7423 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7424
7425         * breakpoint.c (print_solib_event, check_status_catch_solib):
7426         Remove struct keyword in range-based for loops.
7427         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7428         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7429         Likewise.
7430         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7431         Likewise.
7432         * symfile.c (addr_info_make_relative): Likewise.
7433         * thread.c (value_in_thread_stack_temporaries): Likewise.
7434
7435 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7436
7437         PR gdb/16841
7438         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7439         aggregate type to get its real type before accessing it.
7440
7441 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7442
7443         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7444         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7445         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7446         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7447         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7448         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7449         * printcmd.c (info_address_command): Likewise.
7450
7451 2018-05-29  Tom Tromey  <tom@tromey.com>
7452
7453         * windows-nat.c (handle_exception): Update fall-through comment.
7454
7455 2018-05-29  Tom Tromey  <tom@tromey.com>
7456
7457         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7458         (struct program_space) <added_solibs>: Now a std::vector.
7459         * breakpoint.c (print_solib_event): Update.
7460         (check_status_catch_solib): Update.
7461         * progspace.c (clear_program_space_solib_cache): Update.
7462         * solib.c (update_solib_list): Update.
7463
7464 2018-05-29  Tom Tromey  <tom@tromey.com>
7465
7466         * python/py-type.c (typy_richcompare): Update.
7467         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7468         * gdbtypes.h (types_deeply_equal): Return bool.
7469         (types_equal): Likewise.
7470         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7471         declare VEC.
7472         (check_types_equal): Change worklist to std::vector.  Return
7473         bool.
7474         (struct type_equality_entry): Add constructor.
7475         (compare_maybe_null_strings): Return bool.
7476         (check_types_worklist): Return bool.  Change worklist to
7477         std::vector.
7478         (types_deeply_equal): Use std::vector.
7479         (types_equal): Return bool.
7480         (compare_maybe_null_strings): Simplify.
7481
7482 2018-05-29  Tom Tromey  <tom@tromey.com>
7483
7484         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7485
7486 2018-05-29  Tom Tromey  <tom@tromey.com>
7487
7488         * objc-lang.h: Don't include cp-support.h.
7489         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7490         declare VEC.
7491
7492 2018-05-27  Tom Tromey  <tom@tromey.com>
7493
7494         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7495
7496 2018-05-25  Tom Tromey  <tom@tromey.com>
7497
7498         * value.c (value::location): Initialize.
7499
7500 2018-05-25  Tom Tromey  <tom@tromey.com>
7501
7502         * dbxread.c (init_bincl_list): Remove.
7503         (bincl_list): Now a std::vector.
7504         (bincls_allocated, next_bincl): Remove.
7505         (free_bincl_list, do_free_bincl_list_cleanup)
7506         (make_cleanup_free_bincl_list): Remove.
7507         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7508         unique_xmalloc_ptr.
7509         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7510         (struct header_file_location): Add constructor.
7511         (add_bincl_to_list): Remove.
7512
7513 2018-05-25  Tom Tromey  <tom@tromey.com>
7514
7515         * tui/tui.c (tui_enable): Update.
7516         * mi/mi-interp.c (mi_interp::init): Update.
7517         * interps.h (class interp) <name>: New method.
7518         <m_name>: Rename from name.
7519         (~scoped_restore_interp): Update.
7520         * interps.c (interp::interp): Update.
7521         (interp_add, interp_set, interp_lookup_existing)
7522         (current_interp_named_p): Update.
7523
7524 2018-05-25  Tom Tromey  <tom@tromey.com>
7525
7526         * interps.c (interp_name): Remove.
7527         * mi/mi-interp.c (mi_interp::init): Update.
7528         * interps.h (interp_name): Remove.
7529         (~scoped_restore_interp): Update.
7530         * tui/tui.c (tui_enable): Update.
7531
7532 2018-05-25  Tom Tromey  <tom@tromey.com>
7533
7534         * utils.c (fputs_maybe_filtered): Update.
7535         * linespec.c (decode_line_full): Update.
7536         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7537         (mi_print_breakpoint_for_event, mi_solib_loaded)
7538         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7539         (mi_user_selected_context_changed): Update.
7540         * mi/mi-main.c (mi_execute_command): Update.
7541         * cli/cli-script.c (execute_control_command): Update.
7542         * python/python.c (execute_gdb_command): Update.
7543         * solib.c (info_sharedlibrary_command): Update.
7544         * interps.c (interp_ui_out): Remove.
7545         * interps.h (interp_ui_out): Remove.
7546
7547 2018-05-25  Tom Tromey  <tom@tromey.com>
7548
7549         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7550         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7551         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7552
7553 2018-05-25  Tom Tromey  <tom@tromey.com>
7554
7555         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7556         * interps.c (interp_exec): Use scoped_restore.
7557
7558 2018-05-25  Tom Tromey  <tom@tromey.com>
7559
7560         * remote.c (remote_target::remote_file_get): Use
7561         gdb::byte_vector.
7562         (remote_target::remote_file_put): Likewise.
7563
7564 2018-05-25  Tom Tromey  <tom@tromey.com>
7565
7566         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7567         a std::string.
7568         (get_pe_section_index, add_pe_exported_sym): Update.
7569         (read_pe_exported_syms): Use gdb::def_vector.
7570
7571 2018-05-25  Tom Tromey  <tom@tromey.com>
7572
7573         * frame.c (remove_prev_frame): Remove.
7574         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7575
7576 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7577
7578         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7579         Remove prototypes.
7580         * mips-linux-nat.c (supply_fpregset): Always call
7581         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7582         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7583         `mips_fill_fpregset'.
7584         * mips-linux-tdep.c (mips_supply_fpregset)
7585         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7586         (mips_fill_fpregset_wrapper): Remove functions.
7587         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7588         (mips_linux_fpregset): Remove variable.
7589         (mips_linux_iterate_over_regset_sections): Use
7590         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7591         (mips_linux_o32_sigframe_init): Remove comment.
7592
7593 2018-05-25  Pedro Alves  <palves@redhat.com>
7594
7595         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7596         (struct readahead_cache, struct packet_reg, struct
7597         remote_arch_state, class remote_state): Move higher up in the
7598         file.
7599         (remote_target::m_remote_state): Now an object instead of a pointer.
7600         (remote_target::get_remote_state): Adjust.
7601
7602 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7603
7604         * stack.c (select_and_print_frame): Delete.
7605         (struct function_bounds): Move struct within function.
7606         (func_command): Most content moved into new function
7607         find_frame_for_function, use new function, print result, add
7608         function comment.
7609         (find_frame_for_function): New function, now returns a result.
7610
7611 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7612
7613         * stack.c (iterate_over_block_arg_vars): Fix comment.
7614         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7615
7616 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7617
7618         PR gdb/23203
7619         * frame.c
7620         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7621         Define.
7622         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7623         Define.
7624         * frame.h (class scoped_restore_selected_frame): New class.
7625         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7626         of any exception, use scoped_restore_selected_frame to restore the
7627         frame instead.
7628
7629 2018-05-24  Pedro Alves  <palves@redhat.com>
7630
7631         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7632         override.
7633
7634 2018-05-23  Tom Tromey  <tom@tromey.com>
7635
7636         * complaints.c (struct complaints): Remove.
7637         (symfile_complaint_book): Remove.
7638         (series): New global.
7639         (complaint_internal): Update.
7640         (clear_complaints): Update.
7641
7642 2018-05-23  Tom Tromey  <tom@tromey.com>
7643
7644         * complaints.c (counters): New global.
7645         (struct complain): Remove.
7646         (struct complaints) <root>: Remove.
7647         (complaint_sentinel): Remove.
7648         (symfile_complaint_book): Update.
7649         (find_complaint) Remove.
7650         (complaint_internal, clear_complaints): Update.
7651
7652 2018-05-23  Tom Tromey  <tom@tromey.com>
7653
7654         * complaints.c (struct complain) <file, line>: Remove.
7655         (find_complaint): Remove file, line parameters.
7656         (complaint_internal): Update.
7657
7658 2018-05-23  Tom Tromey  <tom@tromey.com>
7659
7660         * complaints.c (vcomplaint): Remove.
7661         (complaint_internal) Merge in contents of vcomplaint.
7662
7663 2018-05-23  Tom Tromey  <tom@tromey.com>
7664
7665         * complaints.c (struct complaints) <explanation>: Remove.
7666         (symfile_explanations): Remove.
7667         (symfile_complaint_book): Update.
7668         (vcomplaint): Update.
7669         (struct explanation): Remove.
7670
7671 2018-05-23  Tom Tromey  <tom@tromey.com>
7672
7673         * complaints.c (symfile_complaints): Remove.
7674         (complaint_internal): Remove "complaints" parameter.
7675         (clear_complaints, vcomplaint): Remove "c" parameter.
7676         (get_complaints): Remove.
7677         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7678         (dwarf2_debug_line_missing_file_complaint)
7679         (dwarf2_debug_line_missing_end_sequence_complaint)
7680         (dwarf2_complex_location_expr_complaint)
7681         (dwarf2_const_value_length_mismatch_complaint)
7682         (dwarf2_section_buffer_overflow_complaint)
7683         (dwarf2_macro_malformed_definition_complaint)
7684         (dwarf2_invalid_attrib_class_complaint)
7685         (create_addrmap_from_index, dw2_symtab_iter_next)
7686         (dw2_expand_marked_cus)
7687         (dw2_debug_names_iterator::find_vec_in_debug_names)
7688         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7689         (create_debug_type_hash_table, init_cutu_and_read_dies)
7690         (partial_die_parent_scope, add_partial_enumeration)
7691         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7692         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7693         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7694         (create_cus_hash_table, create_dwp_hash_table)
7695         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7696         (dwarf2_rnglists_process, dwarf2_ranges_process)
7697         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7698         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7699         (handle_struct_member_die, process_structure_scope)
7700         (read_array_type, read_common_block, read_module_type)
7701         (read_tag_pointer_type, read_typedef, read_base_type)
7702         (read_subrange_type, load_partial_dies, partial_die_info::read)
7703         (partial_die_info::read, partial_die_info::read)
7704         (partial_die_info::read, read_checked_initial_length_and_offset)
7705         (dwarf2_string_attr, read_formatted_entries)
7706         (dwarf_decode_line_header)
7707         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7708         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7709         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7710         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7711         (get_signatured_type, get_DW_AT_signature_type)
7712         (decode_locdesc, file_file_name, consume_improper_spaces)
7713         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7714         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7715         (dwarf2_symbol_mark_computed, set_die_type)
7716         (read_attribute_value): Update.
7717         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7718         Update.
7719         * dbxread.c (unknown_symtype_complaint)
7720         (lbrac_mismatch_complaint, repeated_header_complaint)
7721         (set_namestring, function_outside_compilation_unit_complaint)
7722         (read_dbx_symtab, process_one_symbol): Update.
7723         * gdbtypes.c (stub_noname_complaint): Update.
7724         * windows-nat.c (handle_unload_dll): Update.
7725         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7726         (decode_base_type): Update.
7727         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7728         (eb_complaint, record_include_begin, record_include_end)
7729         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7730         (process_xcoff_symbol, read_symbol)
7731         (function_outside_compilation_unit_complaint)
7732         (scan_xcoff_symtab): Update.
7733         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7734         * buildsym.c (finish_block_internal, make_blockvector)
7735         (end_symtab_get_static_block, augment_type_symtab): Update.
7736         * dtrace-probe.c (dtrace_process_dof)
7737         (dtrace_static_probe_ops::get_probes): Update.
7738         * complaints.h (struct complaint): Don't declare.
7739         (symfile_complaints): Remove.
7740         (complaint_internal): Remove "complaints" parameter.
7741         (complaint): Likewise.
7742         (clear_complaints): Likewise.
7743         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7744         (reread_symbols): Update.
7745         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7746         (dwarf2_frame_cache, decode_frame_entry): Update.
7747         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7748         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7749         (info_selectors_command): Update.
7750         * macrotab.c (macro_include, check_for_redefinition)
7751         (macro_undef): Update.
7752         * objfiles.c (filter_overlapping_sections): Update.
7753         * stabsread.c (invalid_cpp_abbrev_complaint)
7754         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7755         (define_symbol, error_type, read_type, rs6000_builtin_type)
7756         (stabs_method_name_from_physname, read_member_functions)
7757         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7758         (attach_fields_to_type, complain_about_struct_wipeout)
7759         (read_range_type, read_args, common_block_start)
7760         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7761         Update.
7762         * mdebugread.c (index_complaint, unknown_ext_complaint)
7763         (basic_type_complaint, bad_tag_guess_complaint)
7764         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7765         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7766         (parse_procedure, parse_lines)
7767         (function_outside_compilation_unit_complaint)
7768         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7769         (bad_tag_guess_complaint, reg_value_complaint): Update.
7770         * cp-support.c (demangled_name_complaint): Update.
7771         * macroscope.c (sal_macro_scope): Update.
7772         * dwarf-index-write.c (class debug_names): Update.
7773
7774 2018-05-23  Tom Tromey  <tom@tromey.com>
7775
7776         * complaints.c (clear_complaints): Remove "noisy" parameter.
7777         * complaints.h (clear_complaints): Update.
7778         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7779         (reread_symbols): Update.
7780
7781 2018-05-23  Tom Tromey  <tom@tromey.com>
7782
7783         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7784         SUBSEQUENT_MESSAGE.
7785         (vcomplaint, clear_complaints): Update.
7786         (symfile_explanations): Remove some messages.
7787
7788 2018-05-23  Tom Tromey  <tom@tromey.com>
7789
7790         * complaints.c (internal_complaint): Remove.
7791         * complaints.h (internal_complaint): Remove.
7792
7793 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7794
7795         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7796
7797 2018-05-22  Pedro Alves  <palves@redhat.com>
7798
7799         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7800         (remote_fileio_badfd, remote_fileio_return_errno)
7801         (remote_fileio_return_success, remote_fileio_func_open)
7802         (remote_fileio_func_open, remote_fileio_func_close)
7803         (remote_fileio_func_read, remote_fileio_func_write)
7804         (remote_fileio_func_lseek, remote_fileio_func_rename)
7805         (remote_fileio_func_unlink, remote_fileio_func_stat)
7806         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7807         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7808         remote_target parameter.
7809         (remote_fio_func_map) <func>: Add remote_target parameter.
7810         (do_remote_fileio_request, remote_fileio_request):
7811         * remote-fileio.h (remote_fileio_request):
7812         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7813         remote_target parameter.
7814         (remote_notif_process, handle_notification): Adjust to pass down
7815         the remote.
7816         (remote_notif_state_allocate): Add remote_target parameter.  Save
7817         it.
7818         * remote-notif.h (struct remote_target): Forward declare.
7819         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7820         remote_target parameter.
7821         (struct remote_notif_state) <remote>: New field.
7822         (remote_notif_ack, remote_notif_parse): Add remote_target
7823         parameter.
7824         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7825         remote_target parameter.
7826         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7827         (threads_listing_context, rmt_thread_action, protocol_feature)
7828         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7829         (packet_result, struct threads_listing_context, remote_state):
7830         Move definitions and declarations higher up.
7831         (remote_target) <~remote_target>: Declare.
7832         (remote_download_command_source, remote_file_put, remote_file_get)
7833         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7834         (remote_hostio_pread_vFile, remote_hostio_send_command)
7835         (remote_hostio_set_filesystem, remote_hostio_open)
7836         (remote_hostio_close, remote_hostio_unlink, remote_state)
7837         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7838         (get_memory_write_packet_size, get_memory_read_packet_size)
7839         (append_pending_thread_resumptions, remote_detach_1)
7840         (append_resumption, remote_resume_with_vcont)
7841         (add_current_inferior_and_thread, wait_ns, wait_as)
7842         (process_stop_reply, remote_notice_new_inferior)
7843         (process_initial_stop_replies, remote_add_thread)
7844         (btrace_sync_conf, remote_btrace_maybe_reopen)
7845         (remove_new_fork_children, kill_new_fork_children)
7846         (discard_pending_stop_replies, stop_reply_queue_length)
7847         (check_pending_events_prevent_wildcard_vcont)
7848         (discard_pending_stop_replies_in_queue, stop_reply)
7849         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7850         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7851         (remote_interrupt_as, remote_interrupt_ns)
7852         (remote_get_noisy_reply, remote_query_attached)
7853         (remote_add_inferior, remote_current_thread, get_current_thread)
7854         (set_thread, set_general_thread, set_continue_thread)
7855         (set_general_process, write_ptid)
7856         (remote_unpack_thread_info_response, remote_get_threadinfo)
7857         (parse_threadlist_response, remote_get_threadlist)
7858         (remote_threadlist_iterator, remote_get_threads_with_ql)
7859         (remote_get_threads_with_qxfer)
7860         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7861         (get_offsets, remote_check_symbols, remote_supported_packet)
7862         (remote_query_supported, remote_packet_size)
7863         (remote_serial_quit_handler, remote_detach_pid)
7864         (remote_vcont_probe, remote_resume_with_hc)
7865         (send_interrupt_sequence, interrupt_query)
7866         (remote_notif_get_pending_events, fetch_register_using_p)
7867         (send_g_packet, process_g_packet, fetch_registers_using_g)
7868         (store_register_using_P, store_registers_using_G)
7869         (set_remote_traceframe, check_binary_download)
7870         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7871         (remote_xfer_live_readonly_partial, remote_read_bytes)
7872         (remote_send_printf, remote_flash_write, readchar)
7873         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7874         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7875         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7876         (extended_remote_disable_randomization, extended_remote_run)
7877         (send_environment_packet, extended_remote_environment_support)
7878         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7879         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7880         (packet_command): Now methods of ...
7881         (remote_target): ... this class.
7882         (m_remote_state) <remote_target>: New field.
7883         (struct remote_state) <stop_reply_queue,
7884         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7885         fields.
7886         (remote_state::remote_state): Allocate stop_reply_queue.
7887         (remote_state): Delete global.
7888         (get_remote_state_raw): Delete.
7889         (remote_target::get_remote_state): Allocate m_remote_state on
7890         demand.
7891         (get_current_remote_target): New.
7892         (remote_ops, extended_remote_ops): Delete.
7893         (wait_forever_enabled_p, remote_async_inferior_event_token):
7894         Delete, moved to struct remote_state.
7895         (remote_target::close): Delete self.  Destruction bits split to
7896         ...
7897         (remote_target::~remote_target): ... this.
7898         (show_memory_packet_size): Adjust to use
7899         get_current_remote_target.
7900         (struct protocol_feature) <func>: Add remote_target parameter.
7901         All callers adjusted.
7902         (curr_quit_handler_target): New.
7903         (remote_serial_quit_handler): Reimplement.
7904         (remote_target::open_1): Adjust to use get_current_remote_target.
7905         Heap-allocate remote_target/extended_remote_target instances.
7906         (vcont_builder::vcont_builder): Add remote_target parameter, and
7907         save it in m_remote.  All callers adjusted.
7908         (vcont_builder::m_remote): New field.
7909         (vcont_builder::restart, vcont_builder::flush)
7910         (vcont_builder::push_action): Use it.
7911         (remote_target::commit_resume): Use it.
7912         (struct queue_iter_param) <remote>: New field.
7913         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7914         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7915         (check_pending_event_prevents_wildcard_vcont_callback)
7916         (remote_target::check_pending_events_prevent_wildcard_vcont)
7917         (remote_target::discard_pending_stop_replies)
7918         (remote_target::discard_pending_stop_replies_in_queue)
7919         (remote_target::remote_notif_remove_queued_reply): Fill in
7920         'remote' field.
7921         (remote_notif_get_pending_events): New.
7922         (remote_target::readchar, remote_target::remote_serial_write):
7923         Save/restore curr_quit_handler_target.
7924         (putpkt): New.
7925         (kill_new_fork_children): Fill in 'remote' field.
7926         (packet_command): Use get_current_remote_target, defer to
7927         remote_target method of same name.
7928         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
7929         parameter, and save it in m_remote.  All callers adjusted.
7930         (scoped_remote_fd::release): Use m_remote.
7931         (scoped_remote_fd::m_remote): New field.
7932         (remote_file_put, remote_file_get, remote_file_delete): Use
7933         get_current_remote_target, defer to remote_target method of same
7934         name.
7935         (remote_btrace_reset): Add remote_state paremeter.  Update all
7936         callers.
7937         (remote_async_inferior_event_handler). Pass down 'data'.
7938         (remote_new_objfile): Use get_current_remote_target.
7939         (remote_target::vcont_r_supported): New.
7940         (set_range_stepping): Use get_current_remote_target and
7941         remote_target::vcont_r_supported.
7942         (_initialize_remote): Don't allocate 'remote_state' and
7943         'stop_reply_queue' globals.
7944         * remote.h (struct remote_target): Forward declare.
7945         (getpkt, putpkt, remote_notif_get_pending_events): Add
7946         'remote_target' parameter.
7947
7948 2018-05-22  Pedro Alves  <palves@redhat.com>
7949
7950         * remote.c (vcont_builder): Now a class.  Make all data members
7951         private.
7952         (vcont_builder) <vcont_builder, restart, flush, push_action>:
7953         Declare methods.
7954         (vcont_builder_restart): Rename to ...
7955         (vcont_builder::restart): ... this.
7956         (vcont_builder_flush): Rename to ...
7957         (vcont_builder::flush): ... this.
7958         (vcont_builder_push_action): Rename to ...
7959         (vcont_builder::push_action): ... this.
7960         (remote_target::commit_resume): Adjust.
7961
7962 2018-05-22  Pedro Alves  <palves@redhat.com>
7963
7964         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7965         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7966         (get_fixed_memory_packet_size): New.
7967         (get_memory_packet_size): Use it.
7968         (set_memory_packet_size): Don't override the config size with
7969         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7970         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7971         Don't refer to get_memory_packet_size if not connected to a remote
7972         target.  Show "(default)" if configured size is 0.
7973
7974 2018-05-22  Pedro Alves  <palves@redhat.com>
7975
7976         * remote.c (remote_target::mourn_inferior): Move
7977         discard_pending_stop_replies call here from ...
7978         (_initialize_remote): ... here.
7979
7980 2018-05-22  Pedro Alves  <palves@redhat.com>
7981
7982         * remote.c (compare_section_command): Remove set_general_process
7983         call.
7984
7985 2018-05-22  Pedro Alves  <palves@redhat.com>
7986
7987         * remote.c (struct packet_reg, struct remote_arch_state):
7988         Move higher up in the file.
7989         (remote_state) <m_arch_states>: Store remote_arch_state values
7990         instead of remote_arch_state pointers.
7991         (remote_state::get_remote_arch_state): Adjust.
7992
7993 2018-05-22  Pedro Alves  <palves@redhat.com>
7994
7995         * remote.c: Include <unordered_map>.
7996         (remote_state): Now a class.
7997         (remote_state) <get_remote_arch_state>: Declare method.
7998         <get_remote_arch_state>: New field.
7999         (remote_arch_state) <remote_arch_state>: Declare ctor.
8000         <regs>: Now a unique_ptr.
8001         (remote_gdbarch_data_handle): Delete.
8002         (get_remote_arch_state): Delete.
8003         (remote_state::get_remote_arch_state): New.
8004         (get_remote_state): Adjust to call remote_state's
8005         get_remote_arch_state method.
8006         (init_remote_state): Delete, bits factored out to ...
8007         (remote_arch_state::remote_arch_state): ... this new method.
8008         (get_remote_packet_size, get_memory_packet_size)
8009         (process_g_packet, remote_target::fetch_registers)
8010         (remote_target::prepare_to_store, store_registers_using_G)
8011         (remote_target::store_registers, remote_target::get_trace_status):
8012         Adjust to call remote_state's method.
8013         (_initialize_remote): Remove reference to
8014         remote_gdbarch_data_handle.
8015
8016 2018-05-22  Pedro Alves  <palves@redhat.com>
8017
8018         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8019         pread>: New method declarations.
8020         (remote_target::open_1): Adjust.
8021         (readahead_cache_invalidate): Rename to ...
8022         (readahead_cache::invalidate): ... this, and adjust to be a class
8023         method.
8024         (readahead_cache_invalidate_fd): Rename to ...
8025         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8026         class method.
8027         (remote_hostio_pwrite): Adjust.
8028         (remote_hostio_pread_from_cache): Rename to ...
8029         (readahead_cache::pread): ... this, and adjust to be a class
8030         method.
8031         (remote_hostio_close): Adjust.
8032
8033 2018-05-22  Pedro Alves  <palves@redhat.com>
8034
8035         * remote.c (remote_hostio_close_cleanup): Delete.
8036         (class scoped_remote_fd): New.
8037         (remote_file_put, remote_file_get): Use it.
8038
8039 2018-05-22  Pedro Alves  <palves@redhat.com>
8040
8041         (struct vCont_action_support): Use bool and initialize all fields.
8042         (struct readahead_cache): Initialize all fields.
8043         (remote_state): Use bool and initialize all fields.
8044         (remote_state::remote_state, remote_state::~remote_state): New.
8045         (new_remote_state): Delete.
8046         (_initialize_remote): Use new to allocate remote_state.
8047
8048 2018-05-22  Pedro Alves  <palves@redhat.com>
8049             張俊芝  <zjz@zjz.name>
8050
8051         PR gdb/22973
8052         * c-exp.y: Include "c-support.h".
8053         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8054         of tolower.  Use c_ident_is_alpha to scan names.
8055         * c-lang.c: Include "c-support.h".
8056         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8057         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8058         * c-support.h: New file, with bits factored out from ...
8059         * cp-name-parser.y: ... this file.
8060         Include "c-support.h".
8061         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8062         c-support.h and renamed.
8063         (symbol_end, yylex): Adjust.
8064
8065 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8066
8067         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8068         parameter type to CORE_ADDR.
8069         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8070         parameter type in declaration to CORE_ADDR.
8071         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8072         target_auxv_search to get AT_HWCAP and use the result to get the
8073         target description.
8074         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8075         to CORE_ADDR. Remove the cast of the return value to unsigned
8076         long. Fix error predicate of target_auxv_search.
8077         (ppc_linux_nat_target::read_description): Change the type of the
8078         hwcap variable to CORE_ADDR.
8079
8080 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8081
8082         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8083         if the size of fpscr is larger than 32 bits.
8084
8085 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8086
8087         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8088         (ppc32_linux_vsxregmap): New global.
8089         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8090         regcache_supply_regset, and regcache_collect_regset.
8091         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8092         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8093         (fetch_vsx_register, store_vsx_register): Remove.
8094         (fetch_vsx_registers): Add regno parameter. Get regset using
8095         ppc_linux_vsxregset. Use regset to supply registers.
8096         (store_vsx_registers): Add regno parameter. Get regset using
8097         ppc_linux_vsxregset. Use regset to collect registers.
8098         (fetch_register): Call fetch_vsx_registers instead of
8099         fetch_vsx_register.
8100         (store_register): Call store_vsx_registers instead of
8101         store_vsx_register.
8102         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8103         new regno parameter.
8104         (store_ppc_registers): Call store_vsx_registers with -1 for the
8105         new regno parameter.
8106         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8107         (ppc_collect_vsxregset): Remove.
8108
8109 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8110
8111         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8112         offset fields.
8113         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8114         for vector register offset fields.
8115         (ppc64_fbsd_reg_offsets): Likewise.
8116         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8117         to vector register offset fields.
8118         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8119         to vector register offset fields.
8120         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8121         vector register offset fields.
8122         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8123         initializers for vector register offset fields.
8124         (rs6000_aix64_reg_offsets): Likewise.
8125         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8126         (ppc_supply_vrregset): Remove.
8127         (ppc_collect_vrregset): Remove.
8128         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8129         (ppc_linux_vrregset) : New function.
8130         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8131         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8132         (ppc32_linux_vrregset): Remove.
8133         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8134         and use result instead of ppc32_linux_vrregset.
8135         (ppc32_linux_reg_offsets): Remove initializers for vector register
8136         offset fields.
8137         (ppc64_linux_reg_offsets): Likewise.
8138         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8139         * ppc-linux-nat.c: Include regset.h.
8140         (gdb_vrregset_t): Adjust comment to account for little-endian
8141         mode.
8142         (supply_vrregset, fill_vrregset): Remove.
8143         (fetch_altivec_register, store_altivec_register): Remove.
8144         (fetch_altivec_registers): Add regno parameter. Get regset using
8145         ppc_linux_vrregset. Use regset to supply registers.
8146         (store_altivec_registers): Add regno parameter. Get regset using
8147         ppc_linux_vrregset. Use regset to collect registers.
8148         (fetch_register): Call fetch_altivec_registers instead of
8149         fetch_altivec_register.
8150         (store_register): Call store_altivec_registers instead of
8151         store_altivec_register.
8152         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8153         the new regno parameter.
8154         (store_ppc_registers): Call store_altivec_registers with -1 for
8155         the new regno parameter.
8156
8157 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8158
8159         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8160         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8161         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8162         (gdb_vrregset_t): Change array type size to
8163         PPC_LINUX_SIZEOF_VRREGSET.
8164         (gdb_vsxregset_t): Change array type size to
8165         PPC_LINUX_SIZEOF_VSXREGSET.
8166         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8167         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8168         PPC_LINUX_SIZEOF_VSXREGSET.
8169
8170 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8171
8172         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8173         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8174         nat/ppc-linux.c.
8175         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8176         ppc_linux_target_wordsize with tid.
8177         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8178         wordsize with tid.
8179         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8180         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8181         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8182         tid parameter. Remove static specifier.
8183         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8184         (ppc_linux_target_wordsize): New declaration.
8185
8186 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8187
8188         * arch/ppc-linux-common.c: New file.
8189         * arch/ppc-linux-common.h: New file.
8190         * arch/ppc-linux-tdesc.h: New file.
8191         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8192         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8193         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8194         arch/ppc-linux-tdesc.h.
8195         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8196         arch/ppc-linux-tdesc.h.
8197         (ppc_linux_nat_target::read_description): Remove target
8198         description matching code. Fill a ppc_linux_features struct and
8199         call ppc_linux_match_description with it. Move comment about ISA
8200         2.05 to ppc-linux-common.c.
8201         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8202         arch/ppc-linux-tdesc.h.
8203         (ppc_linux_core_read_description): Remove target description
8204         matching code. Fill a ppc_linux_features struct and call
8205         ppc_linux_match_description with it.
8206         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8207         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8208         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8209         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8210         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8211         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8212         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8213         (tdesc_powerpc_e500l): Remove.
8214
8215 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8216
8217         * ada-lang.c (catch_assert_command): Pass empty string instead
8218         of NULL for excep_string argument.
8219
8220 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8221
8222         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8223         the width of the requested register exceeds the width of the
8224         `ptrace' data type.
8225
8226 2018-05-21  Tom Tromey  <tom@tromey.com>
8227
8228         * printcmd.c (output_command): Remove.
8229         (output_command_const): Rename to output_command.
8230         * valprint.h (output_command): Rename from output_command_const.
8231         * tracepoint.c (trace_dump_actions): Call output_command.
8232
8233 2018-05-21  Tom Tromey  <tom@tromey.com>
8234
8235         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8236         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8237         * ada-lang.h (create_ada_exception_catchpoint): Update.
8238         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8239         std::string.
8240         (create_excep_cond_exprs, ~ada_catchpoint)
8241         (should_stop_exception, print_one_exception)
8242         (print_mention_exception, print_recreate_exception): Update.
8243         (ada_get_next_arg): Remove.
8244         (catch_ada_exception_command_split): Use std::string.  Change type
8245         of "excep_string", "cond_string".
8246         (catch_ada_exception_command): Update.
8247         (create_ada_exception_catchpoint): Change type of excep_string.
8248         (ada_exception_sal): Remove excep_string parameter.
8249         (~ada_catchpoint): Remove.
8250
8251 2018-05-21  Tom Tromey  <tom@tromey.com>
8252
8253         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8254         cleanup.
8255
8256 2018-05-21  Tom Tromey  <tom@tromey.com>
8257
8258         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8259         Return unique_xmalloc_ptr.
8260         (print_it_exception): Update.
8261
8262 2018-05-21  Tom Tromey  <tom@tromey.com>
8263
8264         * tracepoint.c (trace_dump_actions): Use std::string.
8265
8266 2018-05-21  Tom Tromey  <tom@tromey.com>
8267
8268         * symfile.c (reread_symbols): Use std::string for original_name.
8269
8270 2018-05-21  Tom Tromey  <tom@tromey.com>
8271
8272         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8273         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8274         constructor.
8275
8276 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8277
8278         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8279         instance to...
8280         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8281         * objfiles.c (get_objfile_bfd_data): Allocate
8282         objfile_per_bfd_storage with obstack_new when allocating on
8283         obstack.
8284
8285 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8286
8287         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8288         OBSTACK_ZALLOC.
8289         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8290         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8291         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8292         (add_pending): Likewise.
8293         (parse_symbol): Likewise.
8294         (parse_partial_symbols): Likewise.
8295         (psymtab_to_symtab_1): Likewise.
8296         (new_psymtab): Likewise.
8297         (elfmdebug_build_psymtabs): Likewise.
8298         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8299         * objfiles.c (get_objfile_bfd_data): Likewise.
8300         (objfile_register_static_link): Likewise.
8301         * psymtab.c (allocate_psymtab): Likewise.
8302         * stabsread.c (read_member_functions): Likewise.
8303         * xcoffread.c (xcoff_end_psymtab): Likewise.
8304
8305 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8306
8307         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8308         compiler supports std::is_trivially_constructible.
8309         * common/poison.h: Include obstack.h.
8310         (IsMallocable): Define to is_trivially_constructible if the
8311         compiler supports it, define to true_type otherwise.
8312         (xobnew): New.
8313         (XOBNEW): Redefine.
8314         (xobnewvec): New.
8315         (XOBNEWVEC): Redefine.
8316         * gdb_obstack.h (obstack_zalloc): New.
8317         (OBSTACK_ZALLOC): Redefine.
8318         (obstack_calloc): New.
8319         (OBSTACK_CALLOC): Redefine.
8320         (obstack_new): New.
8321         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8322         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8323         gdbarch.c.
8324         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8325         obstack_calloc/obstack_zalloc.
8326         (gdbarch_obstack_zalloc): Remove.
8327         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8328
8329 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8330
8331         * stack.c (backtrace_command_1): Remove useless variable int i.
8332
8333 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8334
8335         * stack.c (print_frame_info): Fix comment.
8336
8337 2018-05-18  Tom Tromey  <tom@tromey.com>
8338
8339         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8340         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8341         (~dwarf2_per_objfile): Update
8342         (dwarf2_get_dwz_file): Use new.
8343         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8344         unique_ptr.
8345
8346 2018-05-18  Tom Tromey  <tom@tromey.com>
8347
8348         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8349         unique_ptr.
8350         * dwarf2read.c (struct dwp_file): Add constructor and
8351         initializers.
8352         (open_and_init_dwp_file): Return a unique_ptr.
8353         (dwarf2_per_objfile, create_dwp_hash_table)
8354         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8355         (lookup_dwo_unit_in_dwp): Update.
8356         (open_and_init_dwp_file, get_dwp_file): Update.
8357
8358 2018-05-18  Tom Tromey  <tom@tromey.com>
8359
8360         * dwarf2read.c (dwarf2_per_objfile): Update.
8361         (struct mapped_index): Add initializers.
8362         (dwarf2_read_index): Use new.
8363         (dw2_symtab_iter_init): Update.
8364         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8365         unique_ptr.
8366
8367 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8368
8369         * dwarf2read.c (mapped_index) <total_size>: Remove.
8370
8371 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8372
8373         * unittests/format_pieces-selftests.c (test_format_specifier):
8374         Add ARI comments.
8375
8376 2018-05-18  Tom Tromey  <tom@tromey.com>
8377
8378         * c-typeprint.c (maybe_print_hole): New function.
8379         (c_print_type_struct_field_offset): Update.
8380         (c_type_print_base_struct_union): Call maybe_print_hole.
8381
8382 2018-05-17  Keith Seitz  <keiths@redhat.com>
8383
8384         * breakpoint.c (build_bpstat_chain): New function, moved from
8385         bpstat_stop_status.
8386         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8387         If no stop chain is passed, call build_bpstat_chain to build it.
8388         * breakpoint.h (build_bpstat_chain): Declare.
8389         (bpstat_stop_status): Move documentation here from breakpoint.c.
8390         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8391         build the stop chain and pass it to skip_inline_frames.
8392         Pass this stop chain to bpstat_stop_status.
8393         * inline-frame.c: Include breakpoint.h.
8394         (stopped_by_user_bp_inline_frame): New function.
8395         (skip_inline_frames): Add parameter `stop_chain'.
8396         Move documention to inline-frame.h.
8397         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8398         whether the frame should be elided.
8399         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8400         Add moved documentation and update for new parameter.
8401
8402 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8403
8404         PR cli/14975
8405         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8406         unittests/format_pieces-selftests.c.
8407         * common/format.h (format_piece) <operator==>: New.
8408         (format_pieces) <operator[]>: Remove.
8409         * common/format.c (format_pieces::format_pieces): Handle \e.
8410         * unittests/format_pieces-selftests.c: New.
8411
8412 2018-05-17  Tom Tromey  <tom@tromey.com>
8413
8414         PR symtab/23010:
8415         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8416         (dw2_instantiate_symtab): Add skip_partial parameter.
8417         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8418         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8419         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8420         (dw2_expand_symtabs_matching_one)
8421         (dw2_find_pc_sect_compunit_symtab)
8422         (dw2_debug_names_lookup_symbol)
8423         (dw2_debug_names_expand_symtabs_for_function): Update.
8424         (init_cutu_and_read_dies): Add skip_partial parameter.
8425         (process_psymtab_comp_unit, build_type_psymtabs_1)
8426         (process_skeletonless_type_unit, load_partial_comp_unit)
8427         (psymtab_to_symtab_1): Update.
8428         (load_full_comp_unit): Add skip_partial parameter.
8429         (process_imported_unit_die, dwarf2_read_addr_index)
8430         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8431         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8432         (read_signatured_type): Update.
8433
8434 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8435
8436         * value.c (release_value): Remove unused variable.
8437         (record_latest_value): Likewise.
8438         (access_value_history): Likewise.
8439         (preserve_values): Likewise.
8440
8441 2018-05-17  Tom Tromey  <tom@tromey.com>
8442
8443         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8444         Initialize.
8445
8446 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8447
8448         PR gdb/22286
8449         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8450         Also handle registers whose width is not a multiple of
8451         PTRACE_TYPE_RET.
8452         (linux_nat_trad_target::store_register): Likewise.
8453
8454 2018-05-16  Tom Tromey  <tom@tromey.com>
8455
8456         * gdbcore.h (core_bfd): Redefine.
8457         * corelow.c (core_target::close): Update.
8458         (core_target_open): Update.
8459         * progspace.h (struct program_space) <cbfd>: Now a
8460         gdb_bfd_ref_ptr.
8461
8462 2018-05-16  Tom Tromey  <tom@tromey.com>
8463
8464         PR cli/19551:
8465         * symfile-add-flags.h (enum symfile_add_flags)
8466         <SYMFILE_NOT_FILENAME>: New constant.
8467         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8468         objfile name from BFD.
8469         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8470         * minidebug.c (find_separate_debug_file_in_section): Put
8471         ".gnu_debugdata" into BFD's file name.
8472
8473 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8474
8475         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8476         Remove.
8477
8478 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8479
8480         PR binutils/21446
8481         * aarch64-tdep.c (aarch64_analyze_prologue,
8482         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8483         Indicate not interested in errors.
8484
8485 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8486
8487         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8488         Supply the MIPS_ZERO_REGNUM register.
8489
8490 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8491
8492         * mips-tdep.c (mask_address_var): Make variable static.
8493
8494 2018-05-14  Tom Tromey  <tom@tromey.com>
8495
8496         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8497
8498 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8499
8500         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8501         FXSAVE_ADDR for the mxcsr register.
8502
8503 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8504
8505         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8506
8507 2018-05-11  Pedro Alves  <palves@redhat.com>
8508
8509         * corelow.c (core_target) <core_target>: No longer inline.
8510         Initialize m_core_gdbarch, m_core_vec and build the section table
8511         here.
8512         <~core_target>: New.
8513         <core_gdbarch, get_core_register_section>: New methods.
8514         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8515         factored out from ...
8516         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8517         (core_ops): Delete.
8518         (sniff_core_bfd): Add gdbarch parameter.
8519         (core_close): Delete, merged into ...
8520         (core_target::close): ... here.  Delete self.
8521         (core_close_cleanup): Delete.
8522         (core_target_open): Allocate a core_target on the heap.  Use a
8523         unique_ptr instead of a cleanup.  Bits moved into the core_target
8524         ctor.  Adjust to use core_target methods instead of globals.
8525         (get_core_register_section): Rename to ...
8526         (core_target::get_core_register_section): ... this and adjust.
8527         (struct get_core_registers_cb_data): New.
8528         (get_core_registers_cb): Use it.  Use bool.
8529         (core_target::fetch_registers, core_target::files_info)
8530         (core_target::xfer_partial, core_target::read_description)
8531         (core_target::pid_to, core_target::thread_name): Adjust to
8532         reference class fields instead of globals.
8533         * target.h (struct target_ops_deleter, target_ops_up): New.
8534
8535 2018-05-11  Pedro Alves  <palves@redhat.com>
8536
8537         * corefile.c (core_file_command): Move to corelow.c.
8538         * corelow.c (the_core_target): Delete.
8539         (core_file_command): Moved from corefile.c.  Check exec_bfd
8540         instead of the_core_target.  Use target_detach instead of calling
8541         into the_core_target directly.
8542         (maybe_say_no_core_file_now): New.
8543         (core_target::detach): Use it.
8544         (_initialize_corelow): Remove references to the_core_target.
8545         * gdbcore.h (the_core_target): Delete.
8546
8547 2018-05-11  Tom Tromey  <tromey@redhat.com>
8548             Pedro Alves  <palves@redhat.com>
8549
8550         * corefile.c (core_bfd): Remove.
8551         * gdbcore.h (core_bfd): Now a macro.
8552         * progspace.h (struct program_space) <cbfd>: New field.
8553
8554 2018-05-11  Tom Tromey  <tom@tromey.com>
8555
8556         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8557         gdb::def_vector.
8558
8559 2018-05-10  Tom Tromey  <tom@tromey.com>
8560
8561         * configure: Rebuild.
8562         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8563
8564 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8565
8566         PR server/23158:
8567         * regformats/regdat.sh: Adjust script, following the addition
8568         of the new expedite_regs parameter to init_target_desc.
8569
8570 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8571     
8572         PR gdb/23127
8573         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8574         set_gdbarch_significant_addr_bit.
8575         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8576         set_gdbarch_significant_addr_bit.
8577         * utils.c (address_significant): Update to sign extend addr.
8578
8579 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8580
8581         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8582         (xtensa_linux_init_abi): Limit tdep->num_regs by
8583         tdep->num_nopriv_regs.
8584         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8585         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8586         not initialized.
8587
8588 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8589
8590         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8591
8592 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8593
8594         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8595         (I387_MXCSR_INIT_VAL): New constant.
8596         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8597         buffer if it was supplied by the inferior.
8598         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8599         (i387_xsave_get_clear_bv): New function.
8600         (i387_supply_xsave): Only read x87 control registers from the
8601         xsave buffer if the feature is enabled, and the state will have
8602         been written, otherwise, provide a suitable default.
8603         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8604         including x87 control registers.  Update control registers if they
8605         have changed from the default value, and mark features as enabled
8606         as required.
8607         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8608
8609 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8610
8611         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8612
8613 2018-05-07  Tom Tromey  <tom@tromey.com>
8614
8615         * configure: Rebuild.
8616         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8617
8618 2018-05-07  Tom Tromey  <tom@tromey.com>
8619
8620         PR tdep/20362:
8621         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8622         bit.  Use correct value for VDIV.
8623
8624 2018-05-04  Tom Tromey  <tom@tromey.com>
8625
8626         * configure: Rebuild.
8627         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8628
8629 2018-05-04  Tom Tromey  <tom@tromey.com>
8630
8631         * linux-record.c (record_linux_system_call) <case
8632         RECORD_SYS_RECVFROM>: Add "break".
8633
8634 2018-05-04  Tom Tromey  <tom@tromey.com>
8635
8636         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8637         Add missing "break".
8638         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8639         Add missing "break".
8640
8641 2018-05-04  Tom Tromey  <tom@tromey.com>
8642
8643         * rs6000-tdep.c (ppc_process_record_op4)
8644         (ppc_process_record_op63): Add fall-through comment.
8645
8646 2018-05-04  Tom Tromey  <tom@tromey.com>
8647
8648         * i386-tdep.c (i386_process_record): Add fall-through comment.
8649
8650 2018-05-04  Tom Tromey  <tom@tromey.com>
8651
8652         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8653         comment.
8654
8655 2018-05-04  Tom Tromey  <tom@tromey.com>
8656
8657         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8658         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8659         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8660         comment.
8661         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8662         comment.
8663         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8664         comment.
8665
8666 2018-05-04  Tom Tromey  <tom@tromey.com>
8667
8668         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8669
8670 2018-05-04  Tom Tromey  <tom@tromey.com>
8671
8672         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8673         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8674         * symfile.c (section_is_mapped): Fix fall-through comment.
8675         * stabsread.c (define_symbol, read_member_functions): Fix
8676         fall-through comment.
8677         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8678         comment.
8679         * remote.c (remote_wait_as): Fix fall-through comment.
8680         * p-exp.y (yylex): Fix fall-through comment.
8681         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8682         comment.
8683         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8684         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8685         * jv-exp.y (yylex): Fix fall-through comment.
8686         * go-exp.y (lex_one_token): Fix fall-through comment.
8687         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8688         fall-through comment.
8689         * f-exp.y (yylex): Fix fall-through comment.
8690         * dwarf2read.c (process_die): Fix fall-through comments.
8691         * dbxread.c (process_one_symbol): Fix fall-through comment.
8692         * d-exp.y (lex_one_token): Fix fall-through comment.
8693         * cp-name-parser.y (yylex): Fix fall-through comment.
8694         * coffread.c (coff_symtab_read): Fix fall-through comment.
8695         * c-exp.y (lex_one_token): Fix fall-through comment.
8696         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8697         comment.
8698         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8699         comment.
8700
8701 2018-05-04  Tom Tromey  <tom@tromey.com>
8702
8703         PR python/22730:
8704         * NEWS: Mention gdb.execute change.
8705         * gdbcmd.h (execute_control_command): Don't declare.
8706         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8707         execute_control_commands, execute_control_commands_to_string.
8708         * cli/cli-script.h (execute_control_commands)
8709         (execute_control_commands_to_string): Declare.
8710         (execute_control_command): Add from_tty parameter.
8711         * cli/cli-script.c (execute_control_commands)
8712         (execute_control_commands_to_string): New functions.
8713         (execute_user_command): Use execute_control_commands.
8714         (execute_control_command_1): Add "from_tty" parameter.  Update.
8715         (execute_control_command): Likewise.
8716
8717 2018-05-04  Tom Tromey  <tom@tromey.com>
8718
8719         PR python/22731:
8720         * NEWS: Mention that breakpoint commands are writable.
8721         * python/py-breakpoint.c (bppy_set_commands): New function.
8722         (breakpoint_object_getset) <"commands">: Use it.
8723
8724 2018-05-04  Tom Tromey  <tom@tromey.com>
8725
8726         * tracepoint.c (actions_command): Update.
8727         * mi/mi-cmd-break.c (mi_command_line_array)
8728         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8729         (mi_read_next_line): Remove.
8730         (mi_cmd_break_commands): Update.
8731         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8732         function_view.
8733         * cli/cli-script.c (get_command_line): Update.
8734         (process_next_line): Use function_view.  Constify.
8735         (recurse_read_control_structure, read_command_lines)
8736         (read_command_lines_1): Change argument types to function_view.
8737         (do_define_command, document_command): Update.
8738         * breakpoint.h (check_tracepoint_command): Don't declare.
8739         * breakpoint.c (check_tracepoint_command): Remove.
8740         (commands_command_1, create_tracepoint_from_upload): Update.
8741
8742 2018-05-04  Tom Tromey  <tom@tromey.com>
8743
8744         PR gdb/11750:
8745         * cli/cli-script.h (enum command_control_type) <define_control>:
8746         New constant.
8747         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8748         (build_command_line, execute_control_command_1)
8749         (process_next_line): Likewise.
8750         (do_define_command): New function, extracted from define_command.
8751         (define_command): Use it.
8752
8753 2018-05-04  Tom Tromey  <tom@tromey.com>
8754
8755         * tracepoint.c (actions_command): Update.
8756         * cli/cli-script.h (read_command_lines): Update.
8757         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8758         (MAX_TMPBUF): Remove define.
8759         (define_command): Use string_printf.
8760         (document_command): Likewise.
8761         * breakpoint.c (commands_command_1): Update.
8762
8763 2018-05-04  Tom Tromey  <tom@tromey.com>
8764
8765         * top.c (execute_command): Update.
8766         * cli/cli-script.h (print_command_lines): Now varargs.
8767         * cli/cli-script.c (print_command_lines): Now varargs.
8768         (execute_control_command_1) <case while_control, case if_control>:
8769         Update.
8770
8771 2018-05-04  Tom Tromey  <tom@tromey.com>
8772
8773         * tracepoint.c (all_tracepoint_actions): Rename from
8774         all_tracepoint_actions_and_cleanup.  Change return type.
8775         (actions_command, encode_actions_1, encode_actions)
8776         (trace_dump_actions, tdump_command): Update.
8777         * remote.c (remote_download_command_source): Update.
8778         * python/python.c (gdbpy_eval_from_control_command)
8779         (python_command, python_interactive_command): Update.
8780         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8781         * guile/guile.c (guile_command)
8782         (gdbscm_eval_from_control_command, guile_command): Update.
8783         * compile/compile.c (compile_code_command)
8784         (compile_print_command, compile_to_object): Update.
8785         * cli/cli-script.h (struct command_lines_deleter): New.
8786         (counted_command_line): New typedef.
8787         (struct command_line): Add constructor, destructor.
8788         <body_list>: Remove.
8789         <body_list_0, body_list_1>: New members.
8790         (command_line_up): Remove typedef.
8791         (read_command_lines, read_command_lines_1, get_command_line):
8792         Update.
8793         (copy_command_lines): Don't declare.
8794         * cli/cli-script.c (build_command_line): Use "new".
8795         (get_command_line): Return counted_command_line.
8796         (print_command_lines, execute_user_command)
8797         (execute_control_command_1, while_command, if_command): Update.
8798         (realloc_body_list): Remove.
8799         (process_next_line, recurse_read_control_structure): Update.
8800         (read_command_lines, read_command_lines_1): Return counted_command_line.
8801         (free_command_lines): Use "delete".
8802         (copy_command_lines): Remove.
8803         (define_command, document_command, show_user_1): Update.
8804         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8805         a counted_command_line.
8806         * breakpoint.h (counted_command_line): Remove typedef.
8807         (breakpoint_set_commands): Update.
8808         * breakpoint.c (check_no_tracepoint_commands)
8809         (validate_commands_for_breakpoint): Update.
8810         (breakpoint_set_commands): Change commands to be a
8811         counted_command_line.
8812         (commands_command_1, update_dprintf_command_list)
8813         (create_tracepoint_from_upload): Update.
8814
8815 2018-05-04  Tom Tromey  <tom@tromey.com>
8816
8817         * cli/cli-decode.h (cmd_list_element): New constructor.
8818         (~cmd_list_element): New destructor.
8819         (struct cmd_list_element): Add initializers.
8820         * cli/cli-decode.c (do_add_cmd): Use "new".
8821         (delete_cmd): Use "delete".
8822
8823 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8824             Pedro Alves <palves@redhat.com>
8825
8826         PR breakpoints/19806 and support for PR external/20207.
8827         * NEWS: Mention Aarch64 watchpoint improvements.
8828         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8829         watchpoints and PR external/20207 watchpoints.
8830         * nat/aarch64-linux-hw-point.c
8831         (kernel_supports_any_contiguous_range): New.
8832         (aarch64_watchpoint_offset): New.
8833         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8834         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8835         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8836         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8837         next_addr_orig_p.  Support PR external/20207 watchpoints.
8838         (aarch64_downgrade_regs): New.
8839         (aarch64_dr_state_insert_one_point): New parameters offset and
8840         addr_orig.
8841         (aarch64_dr_state_remove_one_point): Likewise.
8842         (aarch64_handle_breakpoint): Update caller.
8843         (aarch64_handle_aligned_watchpoint): Likewise.
8844         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8845         aligned_offset.
8846         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8847         aarch64_downgrade_regs.
8848         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8849         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8850         (DR_CONTROL_MASK): ... this.
8851         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8852         (unsigned int aarch64_watchpoint_offset): New prototype.
8853         (aarch64_linux_set_debug_regs): Remove const from state.
8854         * utils.c (align_up, align_down): Move to ...
8855         * common/common-utils.c (align_up, align_down): ... here.
8856         * utils.h (align_up, align_down): Move to ...
8857         * common/common-utils.h (align_up, align_down): ... here.
8858
8859 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8860
8861         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8862         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8863         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8864         Re-implement to match the ABI as summarized in GCC's
8865         gcc/config/sparc/sparc.c.  All callers updated.
8866         (sparc32_store_arguments): Remove assertion.
8867
8868 2018-05-04  Tom Tromey  <tom@tromey.com>
8869
8870         * printcmd.c: Don't include tui.h.
8871         (decode_format): Use skip_spaces.
8872
8873 2018-05-04  Tom Tromey  <tom@tromey.com>
8874
8875         PR gdb/22619:
8876         * printcmd.c (last_count): New global.
8877         (x_command): Use saved count when repeating.
8878
8879 2018-05-04  Tom Tromey  <tom@tromey.com>
8880
8881         * nto-procfs.c (do_closedir_cleanup): Remove.
8882         (procfs_pidlist): Use gdb_dir_up.
8883         * procfs.c (do_closedir_cleanup): Remove.
8884         (proc_update_threads): Use gdb_dir_up.
8885         * common/filestuff.h (struct gdb_dir_deleter): New.
8886         (gdb_dir_up): New typedef.
8887
8888 2018-05-04  Tom Tromey  <tom@tromey.com>
8889
8890         * ada-lang.c (print_mention_exception): Use std::string.
8891
8892 2018-05-04  Tom Tromey  <tom@tromey.com>
8893
8894         * ada-lang.c (create_excep_cond_exprs): Update.
8895         (ada_exception_catchpoint_cond_string): Use std::string.
8896
8897 2018-05-04  Tom Tromey  <tom@tromey.com>
8898
8899         * ada-lang.c (xget_renaming_scope): Return std::string.
8900         (old_renaming_is_invisible): Update.
8901
8902 2018-05-04  Tom Tromey  <tom@tromey.com>
8903
8904         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8905         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8906
8907 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8908
8909         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8910
8911 2018-05-04  Tom Tromey  <tom@tromey.com>
8912
8913         * remote.c (remote_query_supported_append): Change type.
8914         (remote_check_symbols): Update.
8915
8916 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8917
8918         PR gdb/11420
8919         * configure.ac: Prepend libpython.
8920         * python/python-config.py: Likewise.
8921         * configure: Regenerate.
8922
8923 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
8924
8925         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
8926
8927 2018-05-03  Pedro Alves  <palves@redhat.com>
8928
8929         * s390-linux-nat.c
8930         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
8931         override.  Write 'true' instead of '1'.
8932         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
8933         declaration.
8934
8935 2018-05-02  Pedro Alves  <palves@redhat.com>
8936
8937         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
8938         add_inf_child_target.
8939         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
8940         add_inf_child_target.
8941         * aix-thread.c (aix_thread_target_info): New.
8942         (aix_thread_target) <shortname, longname, doc>: Delete.
8943         <info>: New.
8944         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
8945         add_inf_child_target.
8946         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
8947         add_inf_child_target.
8948         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
8949         add_inf_child_target.
8950         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
8951         add_inf_child_target.
8952         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
8953         add_inf_child_target.
8954         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
8955         add_inf_child_target.
8956         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
8957         add_inf_child_target.
8958         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
8959         add_inf_child_target.
8960         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
8961         add_inf_child_target.
8962         * bfd-target.c (target_bfd_target_info): New.
8963         (target_bfd) <shortname, longname, doc>: Delete.
8964         <info>: New.
8965         * bsd-kvm.c (bsd_kvm_target_info): New.
8966         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8967         <info>: New.
8968         (bsd_kvm_target::open): Rename to ...
8969         (bsd_kvm_target_open): ... this.  Adjust.
8970         * bsd-uthread.c (bsd_uthread_target_info): New.
8971         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8972         <info>: New.
8973         * corefile.c (core_file_command): Adjust.
8974         * corelow.c (core_target_info): New.
8975         (core_target) <shortname, longname, doc>: Delete.
8976         <info>: New.
8977         (core_target::open): Rename to ...
8978         (core_target_open): ... this.  Adjust.
8979         * ctf.c (ctf_target_info): New.
8980         (ctf_target) <shortname, longname, doc>: Delete.
8981         <info>: New.
8982         (ctf_target::open): Rename to ...
8983         (ctf_target_open): ... this.
8984         (_initialize_ctf): Adjust.
8985         * exec.c (exec_target_info): New.
8986         (exec_target) <shortname, longname, doc>: Delete.
8987         <info>: New.
8988         (exec_target::open): Rename to ...
8989         (exec_target_open): ... this.
8990         * gdbcore.h (core_target_open): Declare.
8991         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8992         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8993         add_inf_child_target.
8994         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8995         add_inf_child_target.
8996         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8997         add_inf_child_target.
8998         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8999         add_inf_child_target.
9000         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9001         add_inf_child_target.
9002         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9003         add_inf_child_target.
9004         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9005         add_inf_child_target.
9006         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9007         add_inf_child_target.
9008         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9009         add_inf_child_target.
9010         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9011         add_inf_child_target.
9012         * inf-child.c (inf_child_target_info): New.
9013         (inf_child_target::info): New.
9014         (inf_child_open_target): Remove 'target' parameter.  Use
9015         get_native_target instead.
9016         (inf_child_target::open): Delete.
9017         (add_inf_child_target): New.
9018         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9019         Delete.
9020         <info>: New.
9021         (add_inf_child_target): Declare.
9022         (inf_child_open_target): Declare.
9023         * linux-thread-db.c (thread_db_target_info): New.
9024         (thread_db_target) <shortname, longname, doc>: Delete.
9025         <info>: New.
9026         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9027         add_inf_child_target.
9028         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9029         add_inf_child_target.
9030         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9031         add_inf_child_target.
9032         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9033         add_inf_child_target.
9034         * make-target-delegates (print_class): Adjust.
9035         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9036         add_inf_child_target.
9037         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9038         add_inf_child_target.
9039         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9040         add_inf_child_target.
9041         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9042         add_inf_child_target.
9043         * nto-procfs.c (nto_native_target_info): New.
9044         (nto_procfs_target_native) <shortname, longname, doc>:
9045         Delete.
9046         <info>: New.
9047         (nto_procfs_target_info): New.
9048         (nto_procfs_target_procfs) <shortname, longname, doc>:
9049         Delete.
9050         <info>: New.
9051         (init_procfs_targets): Adjust.
9052         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9053         add_inf_child_target.
9054         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9055         add_inf_child_target.
9056         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9057         add_inf_child_target.
9058         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9059         add_inf_child_target.
9060         * ravenscar-thread.c (ravenscar_target_info): New.
9061         (ravenscar_thread_target) <shortname, longname, doc>:
9062         Delete.
9063         <info>: New.
9064         * record-btrace.c (record_btrace_target_info):
9065         (record_btrace_target) <shortname, longname, doc>: Delete.
9066         <info>: New.
9067         (record_btrace_target::open): Rename to ...
9068         (record_btrace_target_open): ... this.  Adjust.
9069         * record-full.c (record_longname, record_doc): New.
9070         (record_full_base_target) <shortname, longname, doc>: Delete.
9071         <info>: New.
9072         (record_full_target_info): New.
9073         (record_full_target): <shortname>: Delete.
9074         <info>: New.
9075         (record_full_core_open_1, record_full_open_1): Update comments.
9076         (record_full_base_target::open): Rename to ...
9077         (record_full_open): ... this.
9078         (cmd_record_full_restore): Update.
9079         (_initialize_record_full): Update.
9080         * remote-sim.c (remote_sim_target_info): New.
9081         (gdbsim_target) <shortname, longname, doc>: Delete.
9082         <info>: New.
9083         (gdbsim_target::open): Rename to ...
9084         (gdbsim_target_open): ... this.
9085         (_initialize_remote_sim): Adjust.
9086         * remote.c (remote_doc): New.
9087         (remote_target_info): New.
9088         (remote_target) <shortname, longname, doc>: Delete.
9089         <info>: New.
9090         (extended_remote_target_info): New.
9091         (extended_remote_target) <shortname, longname, doc>: Delete.
9092         <info>: New.
9093         (remote_target::open_1): Make static.  Adjust.
9094         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9095         * s390-linux-nat.c (_initialize_s390_nat): Use
9096         add_inf_child_target.
9097         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9098         add_inf_child_target.
9099         * sol-thread.c (thread_db_target_info): New.
9100         (sol_thread_target) <shortname, longname, doc>: Delete.
9101         <info>: New.
9102         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9103         add_inf_child_target.
9104         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9105         add_inf_child_target.
9106         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9107         add_inf_child_target.
9108         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9109         add_inf_child_target.
9110         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9111         add_inf_child_target.
9112         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9113         add_inf_child_target.
9114         * spu-linux-nat.c (_initialize_spu_nat): Use
9115         add_inf_child_target.
9116         * spu-multiarch.c (spu_multiarch_target_info): New.
9117         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9118         <info>: New.
9119         * target-delegates.c: Regenerate.
9120         * target.c: Include <unordered_map>.
9121         (target_ops_p): Delete.
9122         (DEF_VEC_P(target_ops_p)): Delete.
9123         (target_factories): New.
9124         (test_target_info): New.
9125         (test_target_ops::info): New.
9126         (open_target): Adjust to use target_factories.
9127         (add_target_with_completer): Rename to ...
9128         (add_target): ... this.  Change prototype.  Register target_info
9129         and open callback in target_factories.  Register target_info in
9130         command context instead of target_ops.
9131         (add_target): Delete old implementation.
9132         (add_deprecated_target_alias): Change prototype.  Adjust.
9133         (the_native_target): New.
9134         (set_native_target, get_native_target): New.
9135         (find_default_run_target): Use the_native_target.
9136         (find_attach_target, find_run_target): Simplify.
9137         (target_ops::open): Delete.
9138         (dummy_target_info): New.
9139         (dummy_target::shortname, dummy_target::longname)
9140         (dummy_target::doc): Delete.
9141         (dummy_target::info): New.
9142         (debug_target::shortname, debug_target::longname)
9143         (debug_target::doc): Delete.
9144         (debug_target::info): New.
9145         * target.h (struct target_info): New.
9146         (target_ops::~target_ops): Add comment.
9147         (target_ops::info): New.
9148         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9149         longer virtual.  Implement in terms of target_info.
9150         (set_native_target, get_native_target): Declare.
9151         (target_open_ftype): New.
9152         (add_target, add_target_with_completer)
9153         (add_deprecated_target_alias): Change prototype.
9154         (test_target) <shortname, longname, doc>: Delete.
9155         <info>: New.
9156         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9157         add_inf_child_target.
9158         * tracefile-tfile.c (tfile_target_info): New.
9159         (tfile_target) <shortname, longname, doc>: Delete.
9160         <info>: New.
9161         (tfile_target::open): Rename to ...
9162         (tfile_target_open): ... this.
9163         (_initialize_tracefile_tfile): Adjust.
9164         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9165         add_inf_child_target.
9166         * windows-nat.c (_initialize_windows_nat): Use
9167         add_inf_child_target.
9168         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9169         add_inf_child_target.
9170
9171 2018-05-02  Pedro Alves  <palves@redhat.com>
9172
9173         * linux-nat.h (linux_nat_target) <low_new_thread,
9174         low_delete_thread, low_new_fork, low_forget_process,
9175         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9176         New virtual methods.
9177         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9178         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9179         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9180         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9181         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9182         Delete.
9183         * linux-fork.c (delete_fork): Adjust to call low method.
9184         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9185         (linux_nat_new_fork, linux_nat_forget_process_hook)
9186         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9187         (linux_nat_status_is_event):
9188         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9189         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9190         to call low method.
9191         (sigtrap_is_event): Rename to ...
9192         (linux_nat_target::low_status_is_event): ... this.
9193         (linux_nat_set_status_is_event): Delete.
9194         (save_stop_reason, linux_nat_wait_1)
9195         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9196         low methods.
9197         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9198         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9199         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9200         (linux_nat_set_prepare_to_resume): Delete.
9201         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9202         low virtual methods.
9203         * amd64-linux-nat.c: Likewise.
9204         * arm-linux-nat.c: Likewise.
9205         * i386-linux-nat.c: Likewise.
9206         * ia64-linux-nat.c: Likewise.
9207         * mips-linux-nat.c: Likewise.
9208         * ppc-linux-nat.c: Likewise.
9209         * s390-linux-nat.c: Likewise.
9210         * sparc64-linux-nat.c: Likewise.
9211         * x86-linux-nat.c: Likewise.
9212         * x86-linux-nat.h: Include "nat/x86-linux.h".
9213         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9214         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9215         Override methods.
9216
9217 2018-05-02  Pedro Alves  <palves@redhat.com>
9218
9219         * target.h (target_ops)
9220         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9221         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9222         stopped_by_watchpoint, have_continuable_watchpoint,
9223         stopped_data_address, watchpoint_addr_within_range,
9224         can_accel_watchpoint_condition, can_run, thread_alive,
9225         has_all_memory, has_memory, has_stack, has_registers,
9226         has_execution, can_async_p, is_async_p, supports_non_stop,
9227         always_non_stop_p, can_execute_reverse, supports_multi_process,
9228         supports_enable_disable_tracepoint,
9229         supports_disable_randomization, supports_string_tracing,
9230         supports_evaluation_of_breakpoint_conditions,
9231         can_run_breakpoint_commands, filesystem_is_local,
9232         can_download_tracepoint, get_trace_state_variable_value,
9233         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9234         record_is_replaying, record_will_replay,
9235         augmented_libraries_svr4_read>: Adjust to return bool.
9236         * aarch64-linux-nat.c: All implementations adjusted.
9237         * aix-thread.c: All implementations adjusted.
9238         * arm-linux-nat.c: All implementations adjusted.
9239         * breakpoint.c: All implementations adjusted.
9240         * bsd-kvm.c: All implementations adjusted.
9241         * bsd-uthread.c: All implementations adjusted.
9242         * corelow.c: All implementations adjusted.
9243         * ctf.c: All implementations adjusted.
9244         * darwin-nat.c: All implementations adjusted.
9245         * darwin-nat.h: All implementations adjusted.
9246         * exec.c: All implementations adjusted.
9247         * fbsd-nat.c: All implementations adjusted.
9248         * fbsd-nat.h: All implementations adjusted.
9249         * gnu-nat.c: All implementations adjusted.
9250         * gnu-nat.h: All implementations adjusted.
9251         * go32-nat.c: All implementations adjusted.
9252         * ia64-linux-nat.c: All implementations adjusted.
9253         * inf-child.c: All implementations adjusted.
9254         * inf-child.h: All implementations adjusted.
9255         * inf-ptrace.c: All implementations adjusted.
9256         * inf-ptrace.h: All implementations adjusted.
9257         * linux-nat.c: All implementations adjusted.
9258         * linux-nat.h: All implementations adjusted.
9259         * mips-linux-nat.c: All implementations adjusted.
9260         * nto-procfs.c: All implementations adjusted.
9261         * ppc-linux-nat.c: All implementations adjusted.
9262         * procfs.c: All implementations adjusted.
9263         * ravenscar-thread.c: All implementations adjusted.
9264         * record-btrace.c: All implementations adjusted.
9265         * record-full.c: All implementations adjusted.
9266         * remote-sim.c: All implementations adjusted.
9267         * remote.c: All implementations adjusted.
9268         * s390-linux-nat.c: All implementations adjusted.
9269         * sol-thread.c: All implementations adjusted.
9270         * spu-multiarch.c: All implementations adjusted.
9271         * target-delegates.c: All implementations adjusted.
9272         * target.c: All implementations adjusted.
9273         * target.h: All implementations adjusted.
9274         * tracefile-tfile.c: All implementations adjusted.
9275         * tracefile.c: All implementations adjusted.
9276         * tracefile.h: All implementations adjusted.
9277         * windows-nat.c: All implementations adjusted.
9278         * x86-linux-nat.h: All implementations adjusted.
9279         * x86-nat.h: All implementations adjusted.
9280
9281 2018-05-02  Pedro Alves  <palves@redhat.com>
9282
9283         * make-target-delegates (scan_target_h): Don't trim lines here.
9284         Replace sequences of tabs and/or whitespace with a single
9285         whitespace.
9286         (top level, parsing methods): Trim each line before processing it
9287         here.
9288
9289 2018-05-02  Pedro Alves  <palves@redhat.com>
9290             John Baldwin  <jhb@freebsd.org>
9291
9292         * target.h (enum strata) <debug_stratum>: New.
9293         (struct target_ops) <all delegation methods>: Replace by C++
9294         virtual methods, and drop "to_" prefix.  All references updated
9295         throughout.
9296         <to_shortname, to_longname, to_doc, to_data,
9297         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9298         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9299         virtual methods.  All references updated throughout.
9300         <can_attach, supports_terminal_ours, can_create_inferior,
9301         get_thread_control_capabilities, attach_no_wait>: New
9302         virtual methods.
9303         <insert_breakpoint, remove_breakpoint>: Now
9304         TARGET_DEFAULT_NORETURN methods.
9305         <info_proc>: Now returns bool.
9306         <to_magic>: Delete.
9307         (OPS_MAGIC): Delete.
9308         (current_target): Delete.  All references replaced by references
9309         to ...
9310         (target_stack): ... this.  New.
9311         (target_shortname, target_longname): Adjust.
9312         (target_can_run): Now a function declaration.
9313         (default_child_has_all_memory, default_child_has_memory)
9314         (default_child_has_stack, default_child_has_registers)
9315         (default_child_has_execution): Remove target_ops parameter.
9316         (complete_target_initialization): Delete.
9317         (memory_breakpoint_target): New template class.
9318         (test_target_ops): Refactor as a C++ class with virtual methods.
9319         * make-target-delegates (NAME_PART): Tighten.
9320         (POINTER_PART, CP_SYMBOL): New.
9321         (SIMPLE_RETURN_PART): Reimplement.
9322         (VEC_RETURN_PART): Expect less.
9323         (RETURN_PART, VIRTUAL_PART): New.
9324         (METHOD): Adjust to C++ virtual methods.
9325         (scan_target_h): Remove reference to C99.
9326         (dname): Output "target_ops::" prefix.
9327         (write_function_header): Adjust to output a C++ class method.
9328         (write_declaration): New.
9329         (write_delegator): Adjust to output a C++ class method.
9330         (tdname): Output "dummy_target::" prefix.
9331         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9332         method.
9333         (tdefault_names, debug_names): Delete.
9334         (return_types, tdefaults, styles, argtypes_array): New.
9335         (top level): All methods are delegators.
9336         (print_class): New.
9337         (top level): Print dummy_target and debug_target classes.
9338         * target-delegates.c: Regenerate.
9339         * target-debug.h (target_debug_print_enum_info_proc_what)
9340         (target_debug_print_thread_control_capabilities)
9341         (target_debug_print_thread_info_p): New.
9342         * target.c (dummy_target): Delete.
9343         (the_dummy_target, the_debug_target): New.
9344         (target_stack): Now extern.
9345         (set_targetdebug): Push/unpush debug target.
9346         (default_child_has_all_memory, default_child_has_memory)
9347         (default_child_has_stack, default_child_has_registers)
9348         (default_child_has_execution): Remove target_ops parameter.
9349         (complete_target_initialization): Delete.
9350         (add_target_with_completer): No longer call
9351         complete_target_initialization.
9352         (target_supports_terminal_ours): Use regular delegation.
9353         (update_current_target): Delete.
9354         (push_target): No longer check magic number.  Don't call
9355         update_current_target.
9356         (unpush_target): Don't call update_current_target.
9357         (target_is_pushed): No longer check magic number.
9358         (target_require_runnable): Skip for all stratums over
9359         process_stratum.
9360         (target_ops::info_proc): New.
9361         (target_info_proc): Use find_target_at and
9362         find_default_run_target.
9363         (target_supports_disable_randomization): Use regular delegation.
9364         (target_get_osdata): Use find_target_at.
9365         (target_ops::open, target_ops::close, target_ops::can_attach)
9366         (target_ops::attach, target_ops::can_create_inferior)
9367         (target_ops::create_inferior, target_ops::can_run)
9368         (target_can_run): New.
9369         (default_fileio_target): Use regular delegation.
9370         (target_ops::fileio_open, target_ops::fileio_pwrite)
9371         (target_ops::fileio_pread, target_ops::fileio_fstat)
9372         (target_ops::fileio_close, target_ops::fileio_unlink)
9373         (target_ops::fileio_readlink): New.
9374         (target_fileio_open_1, target_fileio_unlink)
9375         (target_fileio_readlink): Always call the target method.  Handle
9376         FILEIO_ENOSYS.
9377         (return_zero, return_zero_has_execution): Delete.
9378         (init_dummy_target): Delete.
9379         (dummy_target::dummy_target, dummy_target::shortname)
9380         (dummy_target::longname, dummy_target::doc)
9381         (debug_target::debug_target, debug_target::shortname)
9382         (debug_target::longname, debug_target::doc): New.
9383         (target_supports_delete_record): Use regular delegation.
9384         (setup_target_debug): Delete.
9385         (maintenance_print_target_stack): Skip debug_stratum.
9386         (initialize_targets): Instantiate the_dummy_target and
9387         the_debug_target.
9388         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9389         use target_stack.
9390         (target_auxv_search, fprint_target_auxv): Adjust.
9391         (info_auxv_command): Adjust to use target_stack.
9392         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9393         * exceptions.c (print_flush): Handle a NULL target_stack.
9394         * regcache.c (target_ops_no_register): Refactor as class with
9395         virtual methods.
9396
9397         * exec.c (exec_target): New class.
9398         (exec_ops): Now an exec_target.
9399         (exec_open, exec_close_1, exec_get_section_table)
9400         (exec_xfer_partial, exec_files_info, exec_has_memory)
9401         (exec_make_note_section): Refactor as exec_target methods.
9402         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9403         Delete.
9404         (exec_target::find_memory_regions): New.
9405         (_initialize_exec): Don't call init_exec_ops.
9406         * gdbcore.h (exec_file_clear): Delete.
9407
9408         * corefile.c (core_target): Delete.
9409         (core_file_command): Adjust.
9410         * corelow.c (core_target): New class.
9411         (the_core_target): New.
9412         (core_close): Remove target_ops parameter.
9413         (core_close_cleanup): Adjust.
9414         (core_target::close): New.
9415         (core_open, core_detach, get_core_registers, core_files_info)
9416         (core_xfer_partial, core_thread_alive, core_read_description)
9417         (core_pid_to_str, core_thread_name, core_has_memory)
9418         (core_has_stack, core_has_registers, core_info_proc): Rework as
9419         core_target methods.
9420         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9421         (_initialize_corelow): Initialize the_core_target.
9422         * gdbcore.h (core_target): Delete.
9423         (the_core_target): New.
9424
9425         * ctf.c: (ctf_target): New class.
9426         (ctf_ops): Now a ctf_target.
9427         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9428         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9429         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9430         methods.
9431         (init_ctf_ops): Delete.
9432         (_initialize_ctf): Don't call it.
9433         * tracefile-tfile.c (tfile_target): New class.
9434         (tfile_ops): Now a tfile_target.
9435         (tfile_open, tfile_close, tfile_files_info)
9436         (tfile_get_tracepoint_status, tfile_trace_find)
9437         (tfile_fetch_registers, tfile_xfer_partial)
9438         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9439         Refactor as tfile_target methods.
9440         (tfile_xfer_partial_features): Remove target_ops parameter.
9441         (init_tfile_ops): Delete.
9442         (_initialize_tracefile_tfile): Don't call it.
9443         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9444         (tracefile_has_stack, tracefile_has_registers)
9445         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9446         tracefile_target methods.
9447         (init_tracefile_ops): Delete.
9448         (tracefile_target::tracefile_target): New.
9449         * tracefile.h: Include "target.h".
9450         (tracefile_target): New class.
9451         (init_tracefile_ops): Delete.
9452
9453         * spu-multiarch.c (spu_multiarch_target): New class.
9454         (spu_ops): Now a spu_multiarch_target.
9455         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9456         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9457         (spu_search_memory, spu_mourn_inferior): Refactor as
9458         spu_multiarch_target methods.
9459         (init_spu_ops): Delete.
9460         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9461         complete_target_initialization.
9462
9463         * ravenscar-thread.c (ravenscar_thread_target): New class.
9464         (ravenscar_ops): Now a ravenscar_thread_target.
9465         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9466         (ravenscar_thread_alive, ravenscar_pid_to_str)
9467         (ravenscar_fetch_registers, ravenscar_store_registers)
9468         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9469         (ravenscar_stopped_by_hw_breakpoint)
9470         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9471         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9472         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9473         methods.
9474         (init_ravenscar_thread_ops): Delete.
9475         (_initialize_ravenscar): Remove references to
9476         init_ravenscar_thread_ops and complete_target_initialization.
9477
9478         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9479         (bsd_uthread_target): New class.
9480         (bsd_uthread_ops): Now a bsd_uthread_target.
9481         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9482         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9483         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9484         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9485         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9486         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9487         (bsd_uthread_target): Delete function.
9488         (_initialize_bsd_uthread): Remove reference to
9489         complete_target_initialization.
9490
9491         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9492         (target_bfd): ... this new class.
9493         (target_bfd_xfer_partial, target_bfd_get_section_table)
9494         (target_bfd_close): Refactor as target_bfd methods.
9495         (target_bfd::~target_bfd): New.
9496         (target_bfd_reopen): Adjust.
9497         (target_bfd::close): New.
9498
9499         * record-btrace.c (record_btrace_target): New class.
9500         (record_btrace_ops): Now a record_btrace_target.
9501         (record_btrace_open, record_btrace_stop_recording)
9502         (record_btrace_disconnect, record_btrace_close)
9503         (record_btrace_async, record_btrace_info)
9504         (record_btrace_insn_history, record_btrace_insn_history_range)
9505         (record_btrace_insn_history_from, record_btrace_call_history)
9506         (record_btrace_call_history_range)
9507         (record_btrace_call_history_from, record_btrace_record_method)
9508         (record_btrace_is_replaying, record_btrace_will_replay)
9509         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9510         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9511         (record_btrace_store_registers, record_btrace_prepare_to_store)
9512         (record_btrace_to_get_unwinder)
9513         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9514         (record_btrace_commit_resume, record_btrace_wait)
9515         (record_btrace_stop, record_btrace_can_execute_reverse)
9516         (record_btrace_stopped_by_sw_breakpoint)
9517         (record_btrace_supports_stopped_by_sw_breakpoint)
9518         (record_btrace_stopped_by_hw_breakpoint)
9519         (record_btrace_supports_stopped_by_hw_breakpoint)
9520         (record_btrace_update_thread_list, record_btrace_thread_alive)
9521         (record_btrace_goto_begin, record_btrace_goto_end)
9522         (record_btrace_goto, record_btrace_stop_replaying_all)
9523         (record_btrace_execution_direction)
9524         (record_btrace_prepare_to_generate_core)
9525         (record_btrace_done_generating_core): Refactor as
9526         record_btrace_target methods.
9527         (init_record_btrace_ops): Delete.
9528         (_initialize_record_btrace): Remove reference to
9529         init_record_btrace_ops.
9530         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9531         the execution_direction global.
9532         (record_full_base_target, record_full_target)
9533         (record_full_core_target): New classes.
9534         (record_full_ops): Now a record_full_target.
9535         (record_full_core_ops): Now a record_full_core_target.
9536         (record_full_target::detach, record_full_target::disconnect)
9537         (record_full_core_target::disconnect)
9538         (record_full_target::mourn_inferior, record_full_target::kill):
9539         New.
9540         (record_full_open, record_full_close, record_full_async): Refactor
9541         as methods of the record_full_base_target class.
9542         (record_full_resume, record_full_commit_resume): Refactor
9543         as methods of the record_full_target class.
9544         (record_full_wait, record_full_stopped_by_watchpoint)
9545         (record_full_stopped_data_address)
9546         (record_full_stopped_by_sw_breakpoint)
9547         (record_full_supports_stopped_by_sw_breakpoint)
9548         (record_full_stopped_by_hw_breakpoint)
9549         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9550         methods of the record_full_base_target class.
9551         (record_full_store_registers, record_full_xfer_partial)
9552         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9553         Refactor as methods of the record_full_target class.
9554         (record_full_can_execute_reverse, record_full_get_bookmark)
9555         (record_full_goto_bookmark, record_full_execution_direction)
9556         (record_full_record_method, record_full_info, record_full_delete)
9557         (record_full_is_replaying, record_full_will_replay)
9558         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9559         (record_full_stop_replaying): Refactor as methods of the
9560         record_full_base_target class.
9561         (record_full_core_resume, record_full_core_kill)
9562         (record_full_core_fetch_registers)
9563         (record_full_core_prepare_to_store)
9564         (record_full_core_store_registers, record_full_core_xfer_partial)
9565         (record_full_core_insert_breakpoint)
9566         (record_full_core_remove_breakpoint)
9567         (record_full_core_has_execution): Refactor
9568         as methods of the record_full_core_target class.
9569         (record_full_base_target::supports_delete_record): New.
9570         (init_record_full_ops): Delete.
9571         (init_record_full_core_ops): Delete.
9572         (record_full_save): Refactor as method of the
9573         record_full_base_target class.
9574         (_initialize_record_full): Remove references to
9575         init_record_full_ops and init_record_full_core_ops.
9576
9577         * remote.c (remote_target, extended_remote_target): New classes.
9578         (remote_ops): Now a remote_target.
9579         (extended_remote_ops): Now an extended_remote_target.
9580         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9581         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9582         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9583         (remote_pass_signals, remote_set_syscall_catchpoint)
9584         (remote_program_signals, )
9585         (remote_thread_always_alive): Remove target_ops parameter.
9586         (remote_thread_alive, remote_thread_name)
9587         (remote_update_thread_list, remote_threads_extra_info)
9588         (remote_static_tracepoint_marker_at)
9589         (remote_static_tracepoint_markers_by_strid)
9590         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9591         (remote_open): Refactor as methods of remote_target.
9592         (extended_remote_open, extended_remote_detach)
9593         (extended_remote_attach, extended_remote_post_attach):
9594         (extended_remote_supports_disable_randomization)
9595         (extended_remote_create_inferior): : Refactor as method of
9596         extended_remote_target.
9597         (remote_set_permissions, remote_open_1, remote_detach)
9598         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9599         (remote_resume, remote_commit_resume, remote_stop)
9600         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9601         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9602         (remote_prepare_to_store, remote_store_registers)
9603         (remote_flash_erase, remote_flash_done, remote_files_info)
9604         (remote_kill, remote_mourn, remote_insert_breakpoint)
9605         (remote_remove_breakpoint, remote_insert_watchpoint)
9606         (remote_watchpoint_addr_within_range)
9607         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9608         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9609         (remote_supports_stopped_by_sw_breakpoint)
9610         (remote_stopped_by_hw_breakpoint)
9611         (remote_supports_stopped_by_hw_breakpoint)
9612         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9613         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9614         (remote_verify_memory): Refactor as methods of remote_target.
9615         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9616         parameter.
9617         (remote_xfer_partial, remote_get_memory_xfer_limit)
9618         (remote_search_memory, remote_rcmd, remote_memory_map)
9619         (remote_pid_to_str, remote_get_thread_local_address)
9620         (remote_get_tib_address, remote_read_description): Refactor as
9621         methods of remote_target.
9622         (remote_target::fileio_open, remote_target::fileio_pwrite)
9623         (remote_target::fileio_pread, remote_target::fileio_close): New.
9624         (remote_hostio_readlink, remote_hostio_fstat)
9625         (remote_filesystem_is_local, remote_can_execute_reverse)
9626         (remote_supports_non_stop, remote_supports_disable_randomization)
9627         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9628         (remote_supports_enable_disable_tracepoint)
9629         (remote_supports_string_tracing)
9630         (remote_can_run_breakpoint_commands, remote_trace_init)
9631         (remote_download_tracepoint, remote_can_download_tracepoint)
9632         (remote_download_trace_state_variable, remote_enable_tracepoint)
9633         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9634         (remote_trace_start, remote_get_trace_status)
9635         (remote_get_tracepoint_status, remote_trace_stop)
9636         (remote_trace_find, remote_get_trace_state_variable_value)
9637         (remote_save_trace_data, remote_get_raw_trace_data)
9638         (remote_set_disconnected_tracing, remote_core_of_thread)
9639         (remote_set_circular_trace_buffer, remote_traceframe_info)
9640         (remote_get_min_fast_tracepoint_insn_len)
9641         (remote_set_trace_buffer_size, remote_set_trace_notes)
9642         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9643         (remote_disable_btrace, remote_teardown_btrace)
9644         (remote_read_btrace, remote_btrace_conf)
9645         (remote_augmented_libraries_svr4_read, remote_load)
9646         (remote_pid_to_exec_file, remote_can_do_single_step)
9647         (remote_execution_direction, remote_thread_handle_to_thread_info):
9648         Refactor as methods of remote_target.
9649         (init_remote_ops, init_extended_remote_ops): Delete.
9650         (remote_can_async_p, remote_is_async_p, remote_async)
9651         (remote_thread_events, remote_upload_tracepoints)
9652         (remote_upload_trace_state_variables): Refactor as methods of
9653         remote_target.
9654         (_initialize_remote): Remove references to init_remote_ops and
9655         init_extended_remote_ops.
9656
9657         * remote-sim.c (gdbsim_target): New class.
9658         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9659         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9660         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9661         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9662         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9663         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9664         Refactor as methods of gdbsim_target.
9665         (gdbsim_ops): Now a gdbsim_target.
9666         (init_gdbsim_ops): Delete.
9667         (gdbsim_cntrl_c): Adjust.
9668         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9669
9670         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9671         (the_amd64_linux_nat_target): New.
9672         (amd64_linux_fetch_inferior_registers)
9673         (amd64_linux_store_inferior_registers): Refactor as methods of
9674         amd64_linux_nat_target.
9675         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9676         * i386-linux-nat.c: Don't include "linux-nat.h".
9677         (i386_linux_nat_target): New class.
9678         (the_i386_linux_nat_target): New.
9679         (i386_linux_fetch_inferior_registers)
9680         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9681         as methods of i386_linux_nat_target.
9682         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9683         * inf-child.c (inf_child_ops): Delete.
9684         (inf_child_fetch_inferior_registers)
9685         (inf_child_store_inferior_registers): Delete.
9686         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9687         methods of inf_child_target.
9688         (inf_child_target::supports_terminal_ours)
9689         (inf_child_target::terminal_init)
9690         (inf_child_target::terminal_inferior)
9691         (inf_child_target::terminal_ours_for_output)
9692         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9693         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9694         New.
9695         (inf_child_open, inf_child_disconnect, inf_child_close)
9696         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9697         (inf_child_post_startup_inferior, inf_child_can_run)
9698         (inf_child_pid_to_exec_file): Refactor as methods of
9699         inf_child_target.
9700         (inf_child_follow_fork): Delete.
9701         (inf_child_target::can_create_inferior)
9702         (inf_child_target::can_attach): New.
9703         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9704         (inf_child_target::has_stack, inf_child_target::has_registers)
9705         (inf_child_target::has_execution): New.
9706         (inf_child_fileio_open, inf_child_fileio_pwrite)
9707         (inf_child_fileio_pread, inf_child_fileio_fstat)
9708         (inf_child_fileio_close, inf_child_fileio_unlink)
9709         (inf_child_fileio_readlink, inf_child_use_agent)
9710         (inf_child_can_use_agent): Refactor as methods of
9711         inf_child_target.
9712         (return_zero, inf_child_target): Delete.
9713         (inf_child_target::inf_child_target): New.
9714         * inf-child.h: Include "target.h".
9715         (inf_child_target): Delete function prototype.
9716         (inf_child_target): New class.
9717         (inf_child_open_target, inf_child_mourn_inferior)
9718         (inf_child_maybe_unpush_target): Delete.
9719         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9720         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9721         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9722         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9723         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9724         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9725         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9726         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9727         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9728         methods of inf_ptrace_target.
9729         (inf_ptrace_target): Delete function.
9730         * inf-ptrace.h: Include "inf-child.h".
9731         (inf_ptrace_target): Delete function declaration.
9732         (inf_ptrace_target): New class.
9733         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9734         * linux-nat.c (linux_target): New.
9735         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9736         (linux_nat_target::~linux_nat_target): New.
9737         (linux_child_post_attach, linux_child_post_startup_inferior)
9738         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9739         (linux_child_remove_fork_catchpoint)
9740         (linux_child_insert_vfork_catchpoint)
9741         (linux_child_remove_vfork_catchpoint)
9742         (linux_child_insert_exec_catchpoint)
9743         (linux_child_remove_exec_catchpoint)
9744         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9745         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9746         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9747         (linux_nat_stopped_data_address)
9748         (linux_nat_stopped_by_sw_breakpoint)
9749         (linux_nat_supports_stopped_by_sw_breakpoint)
9750         (linux_nat_stopped_by_hw_breakpoint)
9751         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9752         (linux_nat_kill, linux_nat_mourn_inferior)
9753         (linux_nat_xfer_partial, linux_nat_thread_alive)
9754         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9755         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9756         (linux_child_static_tracepoint_markers_by_strid)
9757         (linux_nat_is_async_p, linux_nat_can_async_p)
9758         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9759         (linux_nat_supports_multi_process)
9760         (linux_nat_supports_disable_randomization, linux_nat_async)
9761         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9762         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9763         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9764         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9765         methods of linux_nat_target.
9766         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9767         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9768         parameter.
9769         (check_stopped_by_watchpoint): Adjust.
9770         (linux_xfer_partial): Delete.
9771         (linux_target_install_ops, linux_target, linux_nat_add_target):
9772         Delete.
9773         (linux_nat_target::linux_nat_target): New.
9774         * linux-nat.h: Include "inf-ptrace.h".
9775         (linux_nat_target): New.
9776         (linux_target, linux_target_install_ops, linux_nat_add_target):
9777         Delete function declarations.
9778         (linux_target): Declare global.
9779         * linux-thread-db.c (thread_db_target): New.
9780         (thread_db_target::thread_db_target): New.
9781         (thread_db_ops): Delete.
9782         (the_thread_db_target): New.
9783         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9784         (thread_db_update_thread_list, thread_db_pid_to_str)
9785         (thread_db_extra_thread_info)
9786         (thread_db_thread_handle_to_thread_info)
9787         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9788         (thread_db_resume): Refactor as methods of thread_db_target.
9789         (init_thread_db_ops): Delete.
9790         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9791         * x86-linux-nat.c: Don't include "linux-nat.h".
9792         (super_post_startup_inferior): Delete.
9793         (x86_linux_nat_target::~x86_linux_nat_target): New.
9794         (x86_linux_child_post_startup_inferior)
9795         (x86_linux_read_description, x86_linux_enable_btrace)
9796         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9797         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9798         methods of x86_linux_nat_target.
9799         (x86_linux_create_target): Delete.  Bits folded ...
9800         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9801         pointer.
9802         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9803         (x86_linux_nat_target): New class.
9804         (x86_linux_create_target): Delete.
9805         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9806         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9807         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9808         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9809         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9810         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9811         make extern.
9812         (x86_use_watchpoints): Delete.
9813         * x86-nat.h: Include "breakpoint.h" and "target.h".
9814         (x86_use_watchpoints): Delete.
9815         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9816         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9817         (x86_insert_watchpoint, x86_remove_watchpoint)
9818         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9819         (x86_stopped_by_hw_breakpoint): New declarations.
9820         (x86_nat_target): New template class.
9821
9822         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9823         (the_ppc_linux_nat_target): New.
9824         (ppc_linux_fetch_inferior_registers)
9825         (ppc_linux_can_use_hw_breakpoint)
9826         (ppc_linux_region_ok_for_hw_watchpoint)
9827         (ppc_linux_ranged_break_num_registers)
9828         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9829         (ppc_linux_insert_mask_watchpoint)
9830         (ppc_linux_remove_mask_watchpoint)
9831         (ppc_linux_can_accel_watchpoint_condition)
9832         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9833         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9834         (ppc_linux_watchpoint_addr_within_range)
9835         (ppc_linux_masked_watch_num_registers)
9836         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9837         (ppc_linux_read_description): Refactor as methods of
9838         ppc_linux_nat_target.
9839         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9840
9841         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9842         (procfs_target): New class.
9843         (the_procfs_target): New.
9844         (procfs_target): Delete function.
9845         (procfs_auxv_parse, procfs_attach, procfs_detach)
9846         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9847         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9848         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9849         (procfs_create_inferior, procfs_update_thread_list)
9850         (procfs_thread_alive, procfs_pid_to_str)
9851         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9852         (procfs_stopped_data_address, procfs_insert_watchpoint)
9853         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9854         (proc_find_memory_regions, procfs_info_proc)
9855         (procfs_make_note_section): Refactor as methods of procfs_target.
9856         (_initialize_procfs): Adjust.
9857         * sol-thread.c (sol_thread_target): New class.
9858         (sol_thread_ops): Now a sol_thread_target.
9859         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9860         (sol_thread_fetch_registers, sol_thread_store_registers)
9861         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9862         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9863         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9864         (init_sol_thread_ops): Delete.
9865         (_initialize_sol_thread): Adjust.  Remove references to
9866         init_sol_thread_ops and complete_target_initialization.
9867
9868         * windows-nat.c (windows_nat_target): New class.
9869         (windows_fetch_inferior_registers)
9870         (windows_store_inferior_registers, windows_resume, windows_wait)
9871         (windows_attach, windows_detach, windows_pid_to_exec_file)
9872         (windows_files_info, windows_create_inferior)
9873         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9874         (windows_close, windows_pid_to_str, windows_xfer_partial)
9875         (windows_get_tib_address, windows_get_ada_task_ptid)
9876         (windows_thread_name, windows_thread_alive): Refactor as
9877         windows_nat_target methods.
9878         (do_initial_windows_stuff): Adjust.
9879         (windows_target): Delete function.
9880         (_initialize_windows_nat): Adjust.
9881
9882         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9883         (darwin_mourn_inferior, darwin_kill_inferior)
9884         (darwin_create_inferior, darwin_attach, darwin_detach)
9885         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9886         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9887         (darwin_supports_multi_process): Refactor as darwin_nat_target
9888         methods.
9889         (darwin_resume_to, darwin_files_info): Delete.
9890         (_initialize_darwin_inferior): Rename to ...
9891         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9892         * darwin-nat.h: Include "inf-child.h".
9893         (darwin_nat_target): New class.
9894         (darwin_complete_target): Delete.
9895         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9896         (darwin_target): New.
9897         (i386_darwin_fetch_inferior_registers)
9898         (i386_darwin_store_inferior_registers): Refactor as methods of
9899         darwin_nat_target.
9900         (darwin_complete_target): Delete, with ...
9901         (_initialize_i386_darwin_nat): ... bits factored out here.
9902
9903         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9904         (the_alpha_linux_nat_target): New.
9905         (alpha_linux_register_u_offset): Refactor as
9906         alpha_linux_nat_target method.
9907         (_initialize_alpha_linux_nat): Adjust.
9908         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9909         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9910         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9911         methods of linux_nat_trad_target.
9912         (linux_trad_target): Delete.
9913         * linux-nat-trad.h (linux_trad_target): Delete function.
9914         (linux_nat_trad_target): New class.
9915         * mips-linux-nat.c (mips_linux_nat_target): New class.
9916         (super_fetch_registers, super_store_registers, super_close):
9917         Delete.
9918         (the_mips_linux_nat_target): New.
9919         (mips64_linux_regsets_fetch_registers)
9920         (mips64_linux_regsets_store_registers)
9921         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9922         (mips_linux_register_u_offset, mips_linux_read_description)
9923         (mips_linux_can_use_hw_breakpoint)
9924         (mips_linux_stopped_by_watchpoint)
9925         (mips_linux_stopped_data_address)
9926         (mips_linux_region_ok_for_hw_watchpoint)
9927         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
9928         (mips_linux_close): Refactor as methods of mips_linux_nat.
9929         (_initialize_mips_linux_nat): Adjust to C++ification.
9930
9931         * aix-thread.c (aix_thread_target): New class.
9932         (aix_thread_ops): Now an aix_thread_target.
9933         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
9934         (aix_thread_fetch_registers, aix_thread_store_registers)
9935         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
9936         (aix_thread_thread_alive, aix_thread_pid_to_str)
9937         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
9938         Refactor as methods of aix_thread_target.
9939         (init_aix_thread_ops): Delete.
9940         (_initialize_aix_thread): Remove references to init_aix_thread_ops
9941         and complete_target_initialization.
9942         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
9943         (rs6000_nat_target): New class.
9944         (the_rs6000_nat_target): New.
9945         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
9946         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
9947         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
9948         (super_create_inferior): Delete.
9949         (_initialize_rs6000_nat): Adjust to C++ification.
9950
9951         * arm-linux-nat.c (arm_linux_nat_target): New class.
9952         (the_arm_linux_nat_target): New.
9953         (arm_linux_fetch_inferior_registers)
9954         (arm_linux_store_inferior_registers, arm_linux_read_description)
9955         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
9956         (arm_linux_remove_hw_breakpoint)
9957         (arm_linux_region_ok_for_hw_watchpoint)
9958         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
9959         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
9960         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
9961         arm_linux_nat_target.
9962         (_initialize_arm_linux_nat): Adjust to C++ification.
9963
9964         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9965         (the_aarch64_linux_nat_target): New.
9966         (aarch64_linux_fetch_inferior_registers)
9967         (aarch64_linux_store_inferior_registers)
9968         (aarch64_linux_child_post_startup_inferior)
9969         (aarch64_linux_read_description)
9970         (aarch64_linux_can_use_hw_breakpoint)
9971         (aarch64_linux_insert_hw_breakpoint)
9972         (aarch64_linux_remove_hw_breakpoint)
9973         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9974         (aarch64_linux_region_ok_for_hw_watchpoint)
9975         (aarch64_linux_stopped_data_address)
9976         (aarch64_linux_stopped_by_watchpoint)
9977         (aarch64_linux_watchpoint_addr_within_range)
9978         (aarch64_linux_can_do_single_step): Refactor as methods of
9979         aarch64_linux_nat_target.
9980         (super_post_startup_inferior): Delete.
9981         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9982
9983         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9984         (the_hppa_linux_nat_target): New.
9985         (hppa_linux_fetch_inferior_registers)
9986         (hppa_linux_store_inferior_registers): Refactor as methods of
9987         hppa_linux_nat_target.
9988         (_initialize_hppa_linux_nat): Adjust to C++ification.
9989
9990         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9991         (the_ia64_linux_nat_target): New.
9992         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9993         (ia64_linux_stopped_data_address)
9994         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9995         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9996         ia64_linux_nat_target methods.
9997         (super_xfer_partial): Delete.
9998         (_initialize_ia64_linux_nat): Adjust to C++ification.
9999
10000         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10001         (the_m32r_linux_nat_target): New.
10002         (m32r_linux_fetch_inferior_registers)
10003         (m32r_linux_store_inferior_registers): Refactor as
10004         m32r_linux_nat_target methods.
10005         (_initialize_m32r_linux_nat): Adjust to C++ification.
10006
10007         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10008         (the_m68k_linux_nat_target): New.
10009         (m68k_linux_fetch_inferior_registers)
10010         (m68k_linux_store_inferior_registers): Refactor as
10011         m68k_linux_nat_target methods.
10012         (_initialize_m68k_linux_nat): Adjust to C++ification.
10013
10014         * s390-linux-nat.c (s390_linux_nat_target): New class.
10015         (the_s390_linux_nat_target): New.
10016         (s390_linux_fetch_inferior_registers)
10017         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10018         (s390_insert_watchpoint, s390_remove_watchpoint)
10019         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10020         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10021         (s390_auxv_parse, s390_read_description): Refactor as methods of
10022         s390_linux_nat_target.
10023         (_initialize_s390_nat): Adjust to C++ification.
10024
10025         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10026         (the_sparc_linux_nat_target): New.
10027         (_initialize_sparc_linux_nat): Adjust to C++ification.
10028         * sparc-nat.c (sparc_fetch_inferior_registers)
10029         (sparc_store_inferior_registers): Remove target_ops parameter.
10030         * sparc-nat.h (sparc_fetch_inferior_registers)
10031         (sparc_store_inferior_registers): Remove target_ops parameter.
10032         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10033         (the_sparc64_linux_nat_target): New.
10034         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10035
10036         * spu-linux-nat.c (spu_linux_nat_target): New class.
10037         (the_spu_linux_nat_target): New.
10038         (spu_child_post_startup_inferior, spu_child_post_attach)
10039         (spu_child_wait, spu_fetch_inferior_registers)
10040         (spu_store_inferior_registers, spu_xfer_partial)
10041         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10042         methods.
10043         (_initialize_spu_nat): Adjust to C++ification.
10044
10045         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10046         (the_tilegx_linux_nat_target): New.
10047         (fetch_inferior_registers, store_inferior_registers):
10048         Refactor as methods.
10049         (_initialize_tile_linux_nat): Adjust to C++ification.
10050
10051         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10052         (the_xtensa_linux_nat_target): New.
10053         (xtensa_linux_fetch_inferior_registers)
10054         (xtensa_linux_store_inferior_registers): Refactor as
10055         xtensa_linux_nat_target methods.
10056         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10057
10058         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10059         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10060         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10061         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10062         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10063         (fbsd_stopped_by_sw_breakpoint)
10064         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10065         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10066         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10067         (fbsd_post_startup_inferior, fbsd_post_attach)
10068         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10069         (fbsd_set_syscall_catchpoint)
10070         (super_xfer_partial, super_resume, super_wait)
10071         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10072         (fbsd_handle_debug_trap): Remove target_ops parameter.
10073         (fbsd_nat_add_target): Delete.
10074         * fbsd-nat.h: Include "inf-ptrace.h".
10075         (fbsd_nat_add_target): Delete.
10076         (USE_SIGTRAP_SIGINFO): Define.
10077         (fbsd_nat_target): New class.
10078
10079         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10080         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10081         (amd64bsd_target): Delete.
10082         * amd64-bsd-nat.h: New file.
10083         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10084         "x86-bsd-nat.h".
10085         (amd64_fbsd_nat_target): New class.
10086         (the_amd64_fbsd_nat_target): New.
10087         (amd64fbsd_read_description): Refactor as method of
10088         amd64_fbsd_nat_target.
10089         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10090         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10091         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10092         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10093         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10094         (i386bsd_target): Delete.
10095         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10096         (i386bsd_fetch_inferior_registers)
10097         (i386bsd_store_inferior_registers): Declare.
10098         (i386_bsd_nat_target): New class.
10099         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10100         (the_i386_fbsd_nat_target): New.
10101         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10102         i386_fbsd_nat_target methods.
10103         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10104         (_initialize_i386fbsd_nat): Adjust to C++ification.
10105         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10106         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10107         (_initialize_x86_bsd_nat): Adjust to C++ification.
10108         * x86-bsd-nat.h: Include "x86-nat.h".
10109         (x86bsd_target): Delete declaration.
10110         (x86bsd_nat_target): New class.
10111
10112         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10113         (the_aarch64_fbsd_nat_target): New.
10114         (aarch64_fbsd_fetch_inferior_registers)
10115         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10116         aarch64_fbsd_nat_target.
10117         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10118         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10119         (the_alpha_bsd_nat_target): New.
10120         (alphabsd_fetch_inferior_registers)
10121         (alphabsd_store_inferior_registers): Refactor as
10122         alpha_bsd_nat_target methods.
10123         (_initialize_alphabsd_nat): Refactor as methods of
10124         alpha_bsd_nat_target.
10125         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10126         (the_amd64_nbsd_nat_target): New.
10127         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10128         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10129         (the_amd64_obsd_nat_target): New.
10130         (_initialize_amd64obsd_nat): Adjust to C++ification.
10131         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10132         (the_arm_fbsd_nat_target): New.
10133         (arm_fbsd_fetch_inferior_registers)
10134         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10135         (_initialize_arm_fbsd_nat): Refactor as methods of
10136         arm_fbsd_nat_target.
10137         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10138         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10139         (the_arm_netbsd_nat_target): New.
10140         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10141         arm_netbsd_nat_target.
10142         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10143         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10144         (the_hppa_nbsd_nat_target): New.
10145         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10146         hppa_nbsd_nat_target methods.
10147         (_initialize_hppanbsd_nat): Adjust to C++ification.
10148         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10149         (the_hppa_obsd_nat_target): New.
10150         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10151         methods of hppa_obsd_nat_target.
10152         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10153         add_target.
10154         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10155         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10156         add_target.
10157         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10158         (_initialize_i386obsd_nat): Use add_target.
10159         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10160         (the_m68k_bsd_nat_target): New.
10161         (m68kbsd_fetch_inferior_registers)
10162         (m68kbsd_store_inferior_registers): Refactor as methods of
10163         m68k_bsd_nat_target.
10164         (_initialize_m68kbsd_nat): Adjust to C++ification.
10165         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10166         (the_mips_fbsd_nat_target): New.
10167         (mips_fbsd_fetch_inferior_registers)
10168         (mips_fbsd_store_inferior_registers): Refactor as methods of
10169         mips_fbsd_nat_target.
10170         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10171         add_target.
10172         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10173         (the_mips_nbsd_nat_target): New.
10174         (mipsnbsd_fetch_inferior_registers)
10175         (mipsnbsd_store_inferior_registers): Refactor as methods of
10176         mips_nbsd_nat_target.
10177         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10178         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10179         (the_mips64_obsd_nat_target): New.
10180         (mips64obsd_fetch_inferior_registers)
10181         (mips64obsd_store_inferior_registers): Refactor as methods of
10182         mips64_obsd_nat_target.
10183         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10184         add_target.
10185         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10186         nbsd_nat_target.
10187         * nbsd-nat.h: Include "inf-ptrace.h".
10188         (nbsd_nat_target): New class.
10189         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10190         (obsd_wait): Refactor as methods of obsd_nat_target.
10191         (obsd_add_target): Delete.
10192         * obsd-nat.h: Include "inf-ptrace.h".
10193         (obsd_nat_target): New class.
10194         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10195         (the_ppc_fbsd_nat_target): New.
10196         (ppcfbsd_fetch_inferior_registers)
10197         (ppcfbsd_store_inferior_registers): Refactor as methods of
10198         ppc_fbsd_nat_target.
10199         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10200         add_target.
10201         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10202         (the_ppc_nbsd_nat_target): New.
10203         (ppcnbsd_fetch_inferior_registers)
10204         (ppcnbsd_store_inferior_registers): Refactor as methods of
10205         ppc_nbsd_nat_target.
10206         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10207         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10208         (the_ppc_obsd_nat_target): New.
10209         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10210         methods of ppc_obsd_nat_target.
10211         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10212         add_target.
10213         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10214         (the_sh_nbsd_nat_target): New.
10215         (shnbsd_fetch_inferior_registers)
10216         (shnbsd_store_inferior_registers): Refactor as methods of
10217         sh_nbsd_nat_target.
10218         (_initialize_shnbsd_nat): Adjust to C++ification.
10219         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10220         (inf_ptrace_xfer_partial): Delete.
10221         (sparc_xfer_partial, sparc_target): Delete.
10222         * sparc-nat.h (sparc_fetch_inferior_registers)
10223         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10224         (sparc_target): Delete function declaration.
10225         (sparc_target): New template class.
10226         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10227         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10228         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10229         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10230         add_target.
10231         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10232         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10233         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10234         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10235         add_target.
10236         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10237         (the_vax_bsd_nat_target): New.
10238         (vaxbsd_fetch_inferior_registers)
10239         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10240         methods.
10241         (_initialize_vaxbsd_nat): Adjust to C++ification.
10242
10243         * bsd-kvm.c (bsd_kvm_target): New class.
10244         (bsd_kvm_ops): Now a bsd_kvm_target.
10245         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10246         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10247         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10248         bsd_kvm_target.
10249         (bsd_kvm_return_one): Delete.
10250         (bsd_kvm_add_target): Adjust to C++ification.
10251
10252         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10253         (nto_procfs_target_procfs): New classes.
10254         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10255         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10256         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10257         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10258         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10259         (procfs_remove_hw_breakpoint, procfs_resume)
10260         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10261         (procfs_kill_inferior, procfs_store_registers)
10262         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10263         as methods of nto_procfs_target.
10264         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10265         (nto_native_ops): Delete.
10266         (procfs_open, procfs_native_open): Delete.
10267         (nto_native_ops): Now an nto_procfs_target_native.
10268         (init_procfs_targets): Adjust to C++ification.
10269         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10270         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10271         Refactor as methods of nto_procfs_target.
10272
10273         * go32-nat.c (go32_nat_target): New class.
10274         (the_go32_nat_target): New.
10275         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10276         (go32_store_registers, go32_xfer_partial, go32_files_info)
10277         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10278         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10279         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10280         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10281         (go32_target): Delete.
10282         (_initialize_go32_nat): Adjust to C++ification.
10283
10284         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10285         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10286         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10287         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10288         gnu_nat_target.
10289         (gnu_target): Delete.
10290         * gnu-nat.h (gnu_target): Delete.
10291         (gnu_nat_target): New class.
10292         * i386-gnu-nat.c (gnu_base_target): New.
10293         (i386_gnu_nat_target): New class.
10294         (the_i386_gnu_nat_target): New.
10295         (_initialize_i386gnu_nat): Adjust to C++ification.
10296
10297 2018-05-02  Pedro Alves  <palves@redhat.com>
10298
10299         * bfd-target.c (target_bfd_xclose): Rename to ...
10300         (target_bfd_close): ... this.
10301         (target_bfd_reopen): Adjust.
10302         * target.c (target_close): Remove references to to_xclose.
10303         * target.h (target_ops::to_xclose): Delete.
10304         (target_ops::to_close): Update comments.
10305
10306 2018-05-02  Pedro Alves  <palves@redhat.com>
10307
10308         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10309         "linux-nat.h".
10310         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10311         * inf-ptrace.c (inf_ptrace_register_u_offset)
10312         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10313         (inf_ptrace_store_register, inf_ptrace_store_registers)
10314         (inf_ptrace_trad_target): Move to ...
10315         * linux-nat-trad.c: ... this new file.
10316         * linux-nat-trad.h: New file.
10317         * linux-nat.c (linux_target_install_ops): Make extern.
10318         (linux_trad_target): Delete.
10319         * linux-nat.h (linux_trad_target): Delete declaration.
10320         (linux_target_install_ops): Declare.
10321         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10322         "linux-nat.h".
10323
10324 2018-05-02  Pedro Alves  <palves@redhat.com>
10325
10326         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10327         procfs_target/add_target here.
10328         * procfs.c (procfs_target): Make static.
10329         (_initialize_procfs): Call add_target here.
10330         * procfs.h (struct target_ops): Remove forward declaration.
10331         (procfs_target): Remove declaration.
10332         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10333
10334 2018-05-02  Pedro Alves  <palves@redhat.com>
10335
10336         * procfs.c (procfs_stopped_by_watchpoint)
10337         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10338         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10339         Forward declare.
10340         (procfs_use_watchpoints): Delete, move contents...
10341         (procfs_target): ... here.
10342         * procfs.h (procfs_use_watchpoints): Delete declaration.
10343         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10344         procfs_use_watchpoints.
10345         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10346         procfs_use_watchpoints.
10347
10348 2018-05-02  Tom Tromey  <tom@tromey.com>
10349
10350         PR python/20084:
10351         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10352         and var_zuinteger_unlimited.
10353         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10354         and PARAM_ZUINTEGER_UNLIMITED.
10355         (set_parameter_value): Handle var_zuinteger and
10356         var_zuinteger_unlimited.
10357         (add_setshow_generic): Likewise.
10358         (parmpy_init): Likewise.
10359
10360 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10361
10362         PR rust/23124
10363         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10364         pointer is not null before dereferencing it.
10365
10366 2018-04-30  Tom Tromey  <tom@tromey.com>
10367
10368         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10369         is_mi_like_p.
10370
10371 2018-04-30  Tom Tromey  <tom@tromey.com>
10372
10373         * breakpoint.c (mention): Remove use of is_mi_like_p.
10374         (print_mention_ranged_breakpoint): Likewise.
10375         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10376         of is_mi_like_p.
10377
10378 2018-04-30  Tom Tromey  <tom@tromey.com>
10379
10380         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10381
10382 2018-04-30  Tom Tromey  <tom@tromey.com>
10383
10384         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10385         (info_spu_event_command): Remove some uses of is_mi_like_p.
10386
10387 2018-04-30  Tom Tromey  <tom@tromey.com>
10388
10389         * python/py-framefilter.c (py_print_single_arg)
10390         (enumerate_locals, py_print_args, py_print_frame): Remove some
10391         uses of is_mi_like_p.
10392
10393 2018-04-30  Tom Tromey  <tom@tromey.com>
10394
10395         * ui-out.c: Update.
10396         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10397         * ui-out.h (ui_out::is_mi_like_p): Now const.
10398         (ui_out::do_is_mi_like_p): Now const.
10399         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10400
10401 2018-04-30  Tom Tromey  <tom@tromey.com>
10402
10403         * varobj.c (varobj_set_visualizer): Use new_reference.
10404         * python/python.c (gdbpy_decode_line): Use new_reference.
10405         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10406         new_reference.
10407
10408 2018-04-30  Tom Tromey  <tom@tromey.com>
10409
10410         * varobj.c (install_new_value): Use new_reference.
10411         * value.h (value_incref): Return void.  Swap intro comment with
10412         value_decref.
10413         * value.c (set_value_parent): Use new_reference.
10414         (value_incref): Return void.  Update intro comment.
10415         (release_value): Use new_reference.
10416         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10417
10418 2018-04-30  Tom Tromey  <tom@tromey.com>
10419
10420         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10421         * gdb_bfd.h (new_bfd_ref): Remove.
10422         (gdb_bfd_open): Update comment.
10423         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10424         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10425         (gdb_bfd_fdopenr): Use new_reference.
10426         * exec.c (exec_file_attach): Use new_reference.
10427
10428 2018-04-30  Tom Tromey  <tom@tromey.com>
10429
10430         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10431         method.
10432
10433 2018-04-30  Tom Tromey  <tom@tromey.com>
10434
10435         * jit.c (jit_read_code_entry): Use type_align.
10436         * i386-tdep.c (i386_gdbarch_init): Don't call
10437         set_gdbarch_long_long_align_bit.
10438         * gdbarch.sh: Remove long_long_align_bit.
10439         * gdbarch.c, gdbarch.h: Rebuild.
10440         * arc-tdep.c (arc_type_align): New function.
10441         (arc_gdbarch_init): Use arc_type_align.  Don't call
10442         set_gdbarch_long_long_align_bit.
10443
10444 2018-04-30  Tom Tromey  <tom@tromey.com>
10445
10446         * rust-lang.c (rust_type_alignment): Remove.
10447         (rust_composite_type): Use type_align.
10448
10449 2018-04-30  Tom Tromey  <tom@tromey.com>
10450
10451         * NEWS: Mention Type.align.
10452         * python/py-type.c (typy_get_alignof): New function.
10453         (type_object_getset): Add "alignof".
10454
10455 2018-04-30  Tom Tromey  <tom@tromey.com>
10456
10457         PR exp/17095:
10458         * NEWS: Update.
10459         * std-operator.def (UNOP_ALIGNOF): New operator.
10460         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10461         New.
10462         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10463         * c-lang.c (c_op_print_tab): Add alignof.
10464         * c-exp.y (ALIGNOF): New token.
10465         (exp): Add "ALIGNOF" production.
10466         (ident_tokens): Add _Alignof and alignof.
10467
10468 2018-04-30  Tom Tromey  <tom@tromey.com>
10469
10470         * i386-tdep.c (i386_type_align): New function.
10471         (i386_gdbarch_init): Update.
10472         * gdbarch.sh (type_align): New method.
10473         * gdbarch.c, gdbarch.h: Rebuild.
10474         * arch-utils.h (default_type_align): Declare.
10475         * arch-utils.c (default_type_align): New function.
10476         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10477         (struct type) <align_log2>: New field.
10478         <instance_flags>: Now a bitfield.
10479         (TYPE_RAW_ALIGN): New macro.
10480         (type_align, type_raw_align, set_type_align): Declare.
10481         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10482         functions.
10483         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10484         (get_alignment, maybe_set_alignment): New functions.
10485         (read_structure_type, read_enumeration_type, read_array_type)
10486         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10487         (read_subrange_type, read_base_type): Set type alignment.
10488
10489 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10490
10491         * dwarf2read.c (read_index_from_section): Use bool.
10492
10493 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10494
10495         PR gdb/22950
10496         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10497         with #ifdef.
10498
10499 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10500
10501         PR build/22873
10502         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10503         last step, and do it atomically.
10504
10505 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10506
10507         * compile/compile-c-types.c (convert_int, convert_float):
10508         Update for C FE v1.
10509
10510 2018-04-27  Tom Tromey  <tom@tromey.com>
10511
10512         PR rust/22545:
10513         * rust-lang.c (rust_inclusive_range_type_p): New function.
10514         (rust_range): Handle inclusive ranges.
10515         (rust_compute_range): Likewise.
10516         * rust-exp.y (struct rust_op) <inclusive>: New field.
10517         (DOTDOTEQ): New constant.
10518         (range_expr): Add "..=" productions.
10519         (operator_tokens): Add "..=" token.
10520         (ast_range): Add "inclusive" parameter.
10521         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10522         ranges.
10523         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10524         bounds values.
10525         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10526         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10527         Update comments.
10528         * expprint.c (print_subexp_standard): Handle new bounds values.
10529         (dump_subexp_body_standard): Likewise.
10530
10531 2018-04-27  Tom Tromey  <tom@tromey.com>
10532
10533         * configure: Rebuild.
10534         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10535         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10536         "OVERRIDE".
10537         (class symbol_needs_eval_context): Likewise.
10538         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10539         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10540         "virtual".
10541         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10542         "override".
10543         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10544         * aarch64-tdep.c (instruction_reader::read): Use "override".
10545         (instruction_reader_test::read): Likewise.
10546         * arm-tdep.c (instruction_reader::read): Use "override".
10547         (instruction_reader_thumb::read): Likewise.
10548
10549 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10550
10551         PR remote/9665
10552         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10553         instead of remote_send.
10554         (remote_send): Remove.
10555
10556 2018-04-26  Pedro Alves  <palves@redhat.com>
10557
10558         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10559         find_function_start_sal instead of find_pc_line.
10560
10561 2018-04-26  Pedro Alves  <palves@redhat.com>
10562
10563         * breakpoint.c (set_breakpoint_location_function): Handle
10564         mst_data_gnu_ifunc.
10565         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10566         * elfread.c (elf_symtab_read): Give data symbols with
10567         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10568         (elf_rel_plt_read): Update comment.
10569         * linespec.c (convert_linespec_to_sals): Handle
10570         mst_data_gnu_ifunc.
10571         (minsym_found): Handle mst_data_gnu_ifunc.
10572         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10573         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10574         * parse.c (find_minsym_type_and_address): Handle
10575         mst_data_gnu_ifunc.
10576         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10577         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10578         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10579         comment.
10580         <mst_data_gnu_ifunc>: New enumerator.
10581
10582 2018-04-26  Pedro Alves  <palves@redhat.com>
10583
10584         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10585         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10586         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10587         Handle it.
10588         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10589         (lookup_minimal_symbol_by_pc): Adjust.
10590         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10591         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10592         * minsyms.h (lookup_msym_prefer): New enum.
10593         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10594         parameter by a lookup_msym_prefer parameter.
10595
10596 2018-04-26  Pedro Alves  <palves@redhat.com>
10597
10598         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10599         ends in "@plt" instead of looking at the symbol's section.
10600
10601 2018-04-26  Pedro Alves  <palves@redhat.com>
10602
10603         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10604         all references.
10605         (find_pc_partial_function_gnu_ifunc): Rename to ...
10606         (find_pc_partial_function): ... this, and remove references to
10607         'is_gnu_ifunc_p'.
10608         (find_pc_partial_function): Delete old implementation.
10609         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10610
10611 2018-04-26  Pedro Alves  <palves@redhat.com>
10612
10613         * linespec.c (struct bound_minimal_symbol_search_key): New.
10614         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10615         skip first line if we found a GNU ifunc minimal symbol by name.
10616         (compare_msymbols): Change parameters to work with a destructured
10617         lhs minsym.
10618         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10619         functions.
10620
10621 2018-04-26  Pedro Alves  <palves@redhat.com>
10622
10623         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10624         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10625         address/name.
10626         (add_location_to_breakpoint): Store the minsym and the objfile in
10627         the breakpoint location.
10628         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10629         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10630         Record the minsym in the sal.
10631         * symtab.h (symtab_and_line) <msymbol>: New field.
10632
10633 2018-04-26  Pedro Alves  <palves@redhat.com>
10634
10635         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10636         unless we actually resolved the ifunc.
10637
10638 2018-04-26  Pedro Alves  <palves@redhat.com>
10639
10640         * c-exp.y (variable production): Prefer ifunc minsyms over
10641         regular function symbols.
10642         * symtab.c (find_gnu_ifunc): New function.
10643         * minsyms.h (lookup_msym_prefer): New enum.
10644         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10645         parameter by a lookup_msym_prefer parameter.
10646         * symtab.h (find_gnu_ifunc): New declaration.
10647
10648 2018-04-26  Pedro Alves  <palves@redhat.com>
10649
10650         * blockframe.c (find_gnu_ifunc_target_type): New function.
10651         (find_function_type): New.
10652         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10653         return a value with a memory address.
10654         (eval_call): For calls to GNU ifunc functions, try to find the
10655         type of the target function from the type that the resolver
10656         returns.
10657         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10658         symbols.
10659         * infcall.c (find_function_return_type): Delete.
10660         (find_function_addr): Add 'function_type' parameter.  For calls to
10661         GNU ifunc functions, try to find the type of the target function
10662         from the type that the resolver returns, and return it via
10663         FUNCTION_TYPE.
10664         (call_function_by_hand_dummy): Adjust to use the function type
10665         returned by find_function_addr.
10666         (find_function_addr): Add 'function_type' parameter and move
10667         description here.
10668         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10669         declarations.
10670
10671 2018-04-26  Pedro Alves  <palves@redhat.com>
10672
10673         * c-exp.y (variable production): Skip finding an alias for ifunc
10674         symbols.
10675
10676 2018-04-26  Pedro Alves  <palves@redhat.com>
10677
10678         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10679
10680 2018-04-25  Pedro Alves  <palves@redhat.com>
10681
10682         * infcmd.c (kill_command): Print the pid as string, not the whole
10683         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10684         message.
10685         * remote.c (remote_detach_1): Print the pid as string, not the
10686         whole thread's ptid.
10687
10688 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10689             Sergio Durigan Junior  <sergiodj@redhat.com>
10690             Pedro Alves  <palves@redhat.com>
10691
10692         * infcmd.c (kill_command): Print message when inferior has
10693         been killed.
10694         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10695         '1'.
10696         (add_inferior): Improve message printed when
10697         'print_inferior_events' is on.
10698         (exit_inferior): Remove message printed when
10699         'print_inferior_events' is on.
10700         (detach_inferior): Improve message printed when
10701         'print_inferior_events' is on.
10702         (initialize_inferiors): Use 'add_inferior_silent' to set
10703         'current_inferior_'.
10704         * inferior.h (print_inferior_events): Declare here as
10705         'extern'.
10706         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10707         '[Detaching...]' messages when 'print_inferior_events' is on.
10708         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10709         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10710         'Detaching after fork from child...', replace it by '... from
10711         parent...'.
10712         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10713         prefix/suffix when printing 'Detaching...' messages.  Print
10714         them when 'print_inferior_events' is on.
10715         * remote.c (remote_detach_1): Print message when detaching
10716         from inferior and '!is_fork_parent'.
10717
10718 2018-04-24  Tom Tromey  <tom@tromey.com>
10719
10720         * cli-out.h: Reindent.
10721
10722 2018-04-24  Tom Tromey  <tom@tromey.com>
10723
10724         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10725         (cli_ui_out::do_field_string): Use fputs_filtered.
10726         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10727
10728 2018-04-23  Tom Tromey  <tom@tromey.com>
10729
10730         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10731         gdb::unique_xmalloc_ptr.
10732
10733 2018-04-23  Tom Tromey  <tom@tromey.com>
10734
10735         * configure: Rebuild.
10736
10737 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10738
10739         PR gdb/23095
10740         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10741         prepare_for_testing.  Set normal_bp to r_debug_state if target
10742         is bsd.
10743
10744 2018-04-21  Pedro Alves  <palves@redhat.com>
10745             Rajendra SY  <rajendra.sy@gmail.com>
10746
10747         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10748         * remote.c (extended_remote_attach): In all-stop mode, mark the
10749         thread as executing.
10750
10751 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10752
10753         * thread.c (thread_apply_all_command): Fix comment.
10754         (thread_command): Fix comment.
10755
10756 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10757
10758         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10759         parameter.
10760         * features/aarch64-core.c (create_feature_aarch64_core):
10761         Regenerate.
10762         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10763         Likewise.
10764         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10765         Likewise.
10766         * features/i386/32bit-avx512.c
10767         (create_feature_i386_32bit_avx512): Likewise.
10768         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10769         Likewise.
10770         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10771         Likewise.
10772         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10773         Likewise.
10774         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10775         Likewise.
10776         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10777         Likewise.
10778         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10779         Likewise.
10780         * features/i386/64bit-avx512.c
10781         (create_feature_i386_64bit_avx512): Likewise.
10782         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10783         Likewise.
10784         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10785         Likewise.
10786         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10787         Likewise.
10788         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10789         Likewise.
10790         * features/i386/64bit-segments.c
10791         (create_feature_i386_64bit_segments): Likewise.
10792         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10793         Likewise.
10794         * features/i386/x32-core.c
10795         (create_feature_i386_x32_core): Likewise.
10796         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10797         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10798         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10799         * target-descriptions.c: In generated code, don't pass xml
10800         filename.
10801
10802 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10803
10804         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10805         (print_xml_feature::visit_post): Likewise.
10806         (print_xml_feature::visit): Likewise.
10807         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10808         (print_xml_feature): Add new class.
10809         * regformats/regdat.sh: Null xmltarget on feature targets.
10810         * target-descriptions.c (struct target_desc): Add xmltarget.
10811         (maintenance_check_tdesc_xml_convert): Add unittest function.
10812         (tdesc_get_features_xml): Add function to get xml.
10813         (maintenance_check_xml_descriptions): Test xml generation.
10814         * xml-tdesc.c (string_read_description_xml): Add function.
10815         * xml-tdesc.h (string_read_description_xml): Add declaration.
10816
10817 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10818
10819         * features/Makefile: Add feature marker to targets with new style
10820         target descriptions.
10821         * regformats/aarch64.dat: Regenerate.
10822         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10823         * regformats/i386/amd64-avx-linux.dat: Likewise.
10824         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10825         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10826         * regformats/i386/amd64-linux.dat: Likewise.
10827         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10828         * regformats/i386/amd64.dat: Likewise.
10829         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10830         * regformats/i386/i386-avx-linux.dat: Likewise.
10831         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10832         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10833         * regformats/i386/i386-linux.dat: Likewise.
10834         * regformats/i386/i386-mmx-linux.dat: Likewise.
10835         * regformats/i386/i386-mpx-linux.dat: Likewise.
10836         * regformats/i386/i386.dat: Likewise.
10837         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10838         * regformats/i386/x32-avx-linux.dat: Likewise.
10839         * regformats/i386/x32-linux.dat: Likewise.
10840         * regformats/tic6x-c62x-linux.dat: Likewise.
10841         * regformats/tic6x-c64x-linux.dat: Likewise.
10842         * regformats/tic6x-c64xp-linux.dat: Likewise.
10843         * regformats/regdat.sh: Parse feature marker.
10844
10845 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10846
10847         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10848         (tdesc_osabi_name): Likewise.
10849         * target-descriptions.c (tdesc_architecture_name): Add new
10850         function.
10851         (tdesc_osabi_name): Likewise.
10852
10853 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10854
10855         * common/tdesc.c (tdesc_predefined_type): Move to here.
10856         (tdesc_named_type): Likewise.
10857         (tdesc_create_vector): Likewise.
10858         (tdesc_create_struct): Likewise.
10859         (tdesc_set_struct_size): Likewise.
10860         (tdesc_create_union): Likewise.
10861         (tdesc_create_flags): Likewise.
10862         (tdesc_create_enum): Likewise.
10863         (tdesc_add_field): Likewise.
10864         (tdesc_add_typed_bitfield): Likewise.
10865         (tdesc_add_bitfield): Likewise.
10866         (tdesc_add_flag): Likewise.
10867         (tdesc_add_enum_value): Likewise.
10868         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10869         (struct tdesc_type_vector): Likewise.
10870         (struct tdesc_type_field): Likewise.
10871         (struct tdesc_type_with_fields): Likewise.
10872         (tdesc_create_enum): Add declaration.
10873         (tdesc_add_typed_bitfield): Likewise.
10874         (tdesc_add_enum_value): Likewise.
10875         * target-descriptions.c (tdesc_type_field): Move from here.
10876         (tdesc_type_builtin): Likewise.
10877         (tdesc_type_vector): Likewise.
10878         (tdesc_type_with_fields): Likewise.
10879         (tdesc_predefined_types): Likewise.
10880         (tdesc_named_type): Likewise.
10881         (tdesc_create_vector): Likewise.
10882         (tdesc_create_struct): Likewise.
10883         (tdesc_set_struct_size): Likewise.
10884         (tdesc_create_union): Likewise.
10885         (tdesc_create_flags): Likewise.
10886         (tdesc_create_enum): Likewise.
10887         (tdesc_add_field): Likewise.
10888         (tdesc_add_typed_bitfield): Likewise.
10889         (tdesc_add_bitfield): Likewise.
10890         (tdesc_add_flag): Likewise.
10891         (tdesc_add_enum_value): Likewise.
10892         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10893         (tdesc_add_typed_bitfield): Likewise.
10894         (tdesc_add_enum_value): Likewise.
10895
10896 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10897
10898         * common/tdesc.c (tdesc_feature::accept): Move to here.
10899         (tdesc_feature::operator==): Likewise.
10900         (tdesc_create_reg): Likewise.
10901         * common/tdesc.h (tdesc_type_kind): Likewise.
10902         (struct tdesc_type): Likewise.
10903         (struct tdesc_feature): Likewise.
10904         * regformats/regdat.sh: Create a feature.
10905         * target-descriptions.c (tdesc_type_kind): Move from here.
10906         (tdesc_type): Likewise.
10907         (tdesc_type_up): Likewise.
10908         (tdesc_feature): Likewise.
10909         (tdesc_create_reg): Likewise.
10910
10911 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10912
10913         * Makefile.in: Add arch/tdesc.c
10914         * common/tdesc.c: New file.
10915         * common/tdesc.h (tdesc_element_visitor): Move to here.
10916         (tdesc_element): Likewise.
10917         (tdesc_reg): Likewise.
10918         (tdesc_reg_up): Likewise.
10919         * regformats/regdef.h (reg): Add offset to constructors.
10920         * target-descriptions.c (tdesc_element_visitor): Move from here.
10921         (tdesc_element): Likewise.
10922         (tdesc_reg): Likewise.
10923         (tdesc_reg_up): Likewise.
10924
10925 2018-04-17  Tom Tromey  <tom@tromey.com>
10926
10927         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
10928         discriminant field.
10929
10930 2018-04-17  Tom Tromey  <tom@tromey.com>
10931
10932         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
10933
10934 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10935
10936         * symtab.c (print_symbol_info): Skip printing filename and line
10937         number when `last' is NULL.
10938         (symtab_symbol_info): Use empty string instead of NULL for first
10939         invocation of print_symbol_info.
10940         (rbreak_command): Pass NULL to `last' parameter of
10941         print_symbol_info.
10942
10943 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
10944
10945         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
10946         instead of nullptr.
10947
10948 2018-04-16  Pedro Alves  <palves@redhat.com>
10949
10950         * MAINTAINERS (sh): Remove.
10951         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
10952         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
10953         (ALLDEPFILES): Remove sh64-tdep.c.
10954         * NEWS: Mentions that support for SH-5/SH64 is removed.
10955         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
10956         (sh*-*-openbsd*): Ditto.
10957         (sh64-*-elf*): Remove.
10958         (sh*): Remove.
10959         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
10960         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
10961         * sh-tdep.c: No longer include "sh64-tdep.h".
10962         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
10963         * sh64-tdep.c, sh64-tdep.h: Remove files.
10964
10965 2018-04-16  Pedro Alves  <palves@redhat.com>
10966
10967         * MAINTAINERS: Remove m88k.
10968         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10969         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10970         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10971         * NEWS: Mention that support for m88k was removed.
10972         * configure.host (m88*-*-*): Remove support.
10973         * configure.nat (m88k-*-*): Remove support.
10974         * configure.tgt (m88*-*-openbsd*): Remove.
10975         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10976
10977 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10978
10979         * configure.tgt (x86_tobjs): New variable.
10980         (amd64_tobjs, i386_tobjs): Use it.
10981
10982 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10983
10984         * symtab.c (print_symbol_info): Precede the symbol definition by
10985         the line number when available.
10986         * NEWS: Advertise this enhancement.
10987
10988 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10989
10990         * NEWS (New options): announce set/show record btrace cpu.
10991         * btrace.c: Include record-btrace.h.
10992         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10993         the vendor is unknown.
10994         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10995         Maybe overwrite the btrace configuration's cpu.
10996         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10997         (btrace_fetch): Add cpu parameter.  Update callers.
10998         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10999         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11000         errata workarounds if the vendor is unknown.
11001         * python/py-record-btrace.c: Include record-btrace.h.
11002         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11003         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11004         * record-btrace.c (record_btrace_cpu_state_kind): New.
11005         (record_btrace_cpu): New.
11006         (set_record_btrace_cpu_cmdlist): New.
11007         (record_btrace_get_cpu): New.
11008         (require_btrace_thread, record_btrace_info)
11009         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11010         (cmd_set_record_btrace_cpu_none): New.
11011         (cmd_set_record_btrace_cpu_auto): New.
11012         (cmd_set_record_btrace_cpu): New.
11013         (cmd_show_record_btrace_cpu): New.
11014         (_initialize_record_btrace): Initialize set/show record btrace cpu
11015         commands.
11016         * record-btrace.h (record_btrace_get_cpu): New.
11017
11018 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11019
11020         * record.c (set_record_command): Fix typo in message.
11021
11022 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11023
11024         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11025
11026 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11027
11028         * infrun.c (process_event_stop_test): Call
11029         gdbarch_in_indirect_branch_thunk.
11030         * gdbarch.sh (in_indirect_branch_thunk): New.
11031         * gdbarch.c: Regenerated.
11032         * gdbarch.h: Regenerated.
11033         * x86-tdep.h: New.
11034         * x86-tdep.c: New.
11035         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11036         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11037         (ALLDEPFILES): Add x86-tdep.c.
11038         * arch-utils.h (default_in_indirect_branch_thunk): New.
11039         * arch-utils.c (default_in_indirect_branch_thunk): New.
11040         * i386-tdep: Include x86-tdep.h.
11041         (i386_in_indirect_branch_thunk): New.
11042         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11043         function.
11044         * amd64-tdep: Include x86-tdep.h.
11045         (amd64_in_indirect_branch_thunk): New.
11046         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11047
11048 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11049
11050         PR gdb/23053
11051         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11052         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11053         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11054         regression.
11055
11056 2018-04-12  Tom Tromey  <tom@tromey.com>
11057
11058         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11059         (rust_evaluate_subexp): Likewise.
11060
11061 2018-04-12  Pedro Alves  <palves@redhat.com>
11062
11063         * procfs.c (procfs_detach): Make forward declaration's prototype
11064         match definition's protototype.
11065         (proc_get_LDT_entry): Remove stale do_cleanups call.
11066
11067 2018-04-12  Pedro Alves  <palves@redhat.com>
11068
11069         * target.h (target_ops::to_has_exited): Delete.
11070         (target_has_exited): Delete.
11071         * target-delegates.c: Regenerate.
11072
11073 2018-04-11  Pedro Alves  <palves@redhat.com>
11074
11075         * target.c (fileio_fh_t::t): Add comment.
11076         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11077         (target_fileio_close): Handle a NULL target.
11078         (invalidate_fileio_fh): New.
11079         (target_close): Call it.
11080         * remote.c (remote_hostio_send_command): No longer check whether
11081         remote_desc is open.
11082
11083 2018-04-11  Pedro Alves  <palves@redhat.com>
11084
11085         * target.c (fileio_fh_t): Make it a named struct instead of a
11086         typedef.
11087         (fileio_fh_t::is_closed): New method.
11088         (DEF_VEC_O (fileio_fh_t)): Remove.
11089         (fileio_fhandles): Now a std::vector.
11090         (is_closed_fileio_fh): Delete.
11091         (acquire_fileio_fd): Adjust.  Rename parameters.
11092         (release_fileio_fd): Adjust.
11093         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11094         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11095         (target_fileio_close): Adjust.
11096
11097 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11098
11099         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11100         index.
11101
11102 2018-04-10  Pedro Alves  <palves@redhat.com>
11103
11104         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11105         (scoped_finish_thread_state): New class.
11106         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11107         cleanup.
11108         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11109         (fetch_inferior_event, normal_stop): Likewise.
11110         * thread.c (finish_thread_state_cleanup): Delete.
11111
11112 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11113             Pedro Alves  <palves@redhat.com>
11114
11115         * value.c: Include "selftest.h" and "common/array-view.h".
11116         (struct range) <operator ==>: New.
11117         (test_ranges_contain): New.
11118         (check_ranges_vector): New.
11119         (test_insert_into_bit_range_vector): New.
11120         (_initialize_values): Register selftests.
11121         * common/array-view.h (operator==, operator!=): New.
11122
11123 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11124
11125         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11126         an iterator.
11127         * inline-frame.c: Include <algorithm>.
11128         (struct inline_state): Add constructor.
11129         (inline_state_s): Remove.
11130         (DEF_VEC_O(inline_state_s)): Remove.
11131         (inline_states): Change type to std::vector.
11132         (find_inline_frame_state): Adjust to std::vector.
11133         (allocate_inline_frame_state): Remove.
11134         (clear_inline_frame_state): Adjust to std::vector.
11135         (skip_inline_frames): Adjust to std::vector.
11136
11137 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11138
11139         * tracepoint.h (struct trace_state_variable): Add constructor.
11140         <name>: Change type to std::string.
11141         * tracepoint.c (tsv_s): Remove.
11142         (DEF_VEC_O(tsv_s)): Remove.
11143         (tvariables): Change to std::vector.
11144         (create_trace_state_variable): Adjust to std::vector.
11145         (find_trace_state_variable): Likewise.
11146         (find_trace_state_variable_by_number): Likewise.
11147         (delete_trace_state_variable): Likewise.
11148         (trace_variable_command): Adjust to std::string.
11149         (delete_trace_variable_command): Likewise.
11150         (tvariables_info_1): Adjust to std::vector.
11151         (save_trace_state_variables): Likewise.
11152         (start_tracing): Likewise.
11153         (merge_uploaded_trace_state_variables): Adjust to std::vector
11154         and std::string.
11155         * target.h (struct target_ops)
11156         <to_download_trace_state_variable>: Pass reference to
11157         trace_state_variable.
11158         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11159         * target-delegates.c: Re-generate.
11160         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11161         (mi_tsv_deleted): Likewise.
11162         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11163         * remote.c (remote_download_trace_state_variable): Change
11164         pointer to reference and adjust.
11165         * make-target-delegates (parse_argtypes): Handle references.
11166         (write_function_header): Likewise.
11167         (munge_type): Likewise.
11168
11169 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11170
11171         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11172         string_view-selftests.c.
11173         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11174         testsuite.
11175         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11176         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11177         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11178         * unittests/basic_string_view/element_access/char/1.cc:
11179         Likewise.
11180         * unittests/basic_string_view/element_access/char/empty.cc:
11181         Likewise.
11182         * unittests/basic_string_view/element_access/char/front_back.cc:
11183         Likewise.
11184         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11185         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11186         Likewise.
11187         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11188         Likewise.
11189         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11190         Likewise.
11191         * unittests/basic_string_view/operations/compare/char/1.cc:
11192         Likewise.
11193         * unittests/basic_string_view/operations/compare/char/13650.cc:
11194         Likewise.
11195         * unittests/basic_string_view/operations/copy/char/1.cc:
11196         Likewise.
11197         * unittests/basic_string_view/operations/data/char/1.cc:
11198         Likewise.
11199         * unittests/basic_string_view/operations/find/char/1.cc:
11200         Likewise.
11201         * unittests/basic_string_view/operations/find/char/2.cc:
11202         Likewise.
11203         * unittests/basic_string_view/operations/find/char/3.cc:
11204         Likewise.
11205         * unittests/basic_string_view/operations/find/char/4.cc:
11206         Likewise.
11207         * unittests/basic_string_view/operations/rfind/char/1.cc:
11208         Likewise.
11209         * unittests/basic_string_view/operations/rfind/char/2.cc:
11210         Likewise.
11211         * unittests/basic_string_view/operations/rfind/char/3.cc:
11212         Likewise.
11213         * unittests/basic_string_view/operations/substr/char/1.cc:
11214         Likewise.
11215         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11216         * unittests/string_view-selftests.c: New file.
11217
11218 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11219
11220         * unittests/basic_string_view/capacity/1.cc: New file.
11221         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11222         * unittests/basic_string_view/cons/char/1.cc: New file.
11223         * unittests/basic_string_view/cons/char/2.cc: New file.
11224         * unittests/basic_string_view/cons/char/3.cc: New file.
11225         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11226         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11227         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11228         * unittests/basic_string_view/element_access/char/1.cc: New file.
11229         * unittests/basic_string_view/element_access/char/2.cc: New file.
11230         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11231         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11232         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11233         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11234         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11235         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11236         * unittests/basic_string_view/include.cc: New file.
11237         * unittests/basic_string_view/inserters/char/1.cc: New file.
11238         * unittests/basic_string_view/inserters/char/2.cc: New file.
11239         * unittests/basic_string_view/inserters/char/3.cc: New file.
11240         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11241         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11242         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11243         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11244         * unittests/basic_string_view/literals/types.cc: New file.
11245         * unittests/basic_string_view/literals/values.cc: New file.
11246         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11247         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11248         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11249         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11250         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11251         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11252         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11253         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11254         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11255         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11256         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11257         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11258         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11259         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11260         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11261         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11262         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11263         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11264         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11265         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11266         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11267         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11268         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11269         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11270         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11271         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11272         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11273         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11274         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11275         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11276         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11277         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11278         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11279         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11280         * unittests/basic_string_view/operators/char/2.cc: New file.
11281         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11282         * unittests/basic_string_view/range_access/char/1.cc: New file.
11283         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11284         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11285         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11286         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11287         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11288         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11289         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11290         * unittests/basic_string_view/typedefs.cc: New file.
11291         * unittests/basic_string_view/types/1.cc: New file.
11292
11293 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11294
11295         * common/gdb_string_view.h: Remove libstdc++ implementation
11296         details, adjust to gdb reality.
11297         * common/gdb_string_view.tcc: Likewise.
11298         * cli/cli-script.c (struct string_view): Remove.
11299         (user_args) <m_args>: Change element type to gdb::string_view.
11300         (user_args::insert_args): Adjust.
11301
11302 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11303
11304         * common/gdb_string_view.h: New file.
11305         * common/gdb_string_view.tcc: New file.
11306
11307 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11308
11309         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11310         * configure: Re-generate.
11311
11312 2018-04-09  Pedro Alves  <palves@redhat.com>
11313
11314         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11315         (set_target_gdbarch): Call
11316         gdb::observers::architecture_changed.notify instead of
11317         observer_notify_architecture_changed.
11318
11319 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11320
11321         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11322         (do_restore_current_traceframe_cleanup): Remove.
11323         (restore_current_traceframe_cleanup_dtor): Remove.
11324         (make_cleanup_restore_current_traceframe): Remove.
11325         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11326         New.
11327         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11328         * infrun.c (fetch_inferior_event): Use
11329         scoped_restore_current_traceframe.
11330
11331 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11332
11333         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11334         Remove.
11335         <n_allocated_type_units>: Remove.
11336         <all_type_units>: Change to std::vector.
11337         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11338         to std::vector change.
11339         (dwarf2_per_objfile::get_cutu): Likewise.
11340         (dwarf2_per_objfile::get_tu): Likewise.
11341         (create_signatured_type_table_from_index): Likewise.
11342         (create_signatured_type_table_from_debug_names): Likewise.
11343         (dw2_symtab_iter_next): Likewise.
11344         (dw2_print_stats): Likewise.
11345         (dw2_expand_all_symtabs): Likewise.
11346         (dw2_expand_marked_cus): Likewise.
11347         (dw2_debug_names_iterator::next): Likewise.
11348         (dwarf2_initialize_objfile): Likewise.
11349         (add_signatured_type_cu_to_table): Likewise.
11350         (create_all_type_units): Likewise.
11351         (add_type_unit): Likewise.
11352         (struct tu_abbrev_offset): Add constructor.
11353         (build_type_psymtabs_1): Adjust to std::vector change.
11354         (print_tu_stats): Likewise.
11355         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11356         (write_debug_names): Likewise.
11357
11358 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11359
11360         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11361         Make an std::vector.
11362         <n_comp_units>: Remove.
11363         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11364         to std::vector change.
11365         (dwarf2_per_objfile::get_cutu): Likewise.
11366         (dwarf2_per_objfile::get_cu): Likewise.
11367         (create_cus_from_index): Likewise.
11368         (create_addrmap_from_index): Likewise.
11369         (create_addrmap_from_aranges): Likewise.
11370         (dwarf2_read_index): Likewise.
11371         (dw2_find_last_source_symtab): Likewise.
11372         (dw2_map_symtabs_matching_filename): Likewise.
11373         (dw2_symtab_iter_next): Likewise.
11374         (dw2_print_stats): Likewise.
11375         (dw2_expand_all_symtabs): Likewise.
11376         (dw2_expand_symtabs_with_fullname): Likewise.
11377         (dw2_expand_marked_cus): Likewise.
11378         (dw2_map_symbol_filenames): Likewise.
11379         (create_cus_from_debug_names): Likewise.
11380         (dwarf2_read_debug_names): Likewise.
11381         (dw2_debug_names_iterator::next): Likewise.
11382         (dwarf2_initialize_objfile): Likewise.
11383         (set_partial_user): Likewise.
11384         (dwarf2_build_psymtabs_hard): Likewise.
11385         (read_comp_units_from_section): Remove arguments, adjust to
11386         std::vector change.
11387         (create_all_comp_units): Adjust to std::vector and
11388         read_comp_units_from_section changes.
11389         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11390         change.
11391         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11392         (psyms_seen_size): Likewise.
11393         (write_gdbindex): Likewise.
11394         (write_debug_names): Likewise.
11395
11396 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11397
11398         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11399         with dwarf2_per_objfile.
11400         (create_cus_from_index): Likewise.
11401         (create_signatured_type_table_from_index): Likewise.
11402         (dwarf2_read_index): Likewise.
11403         (dwarf2_initialize_objfile): Likewise.
11404         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11405         per_cu rather than get_dwarf2_per_objfile.
11406
11407 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11408
11409         * dwarf2read.h (struct signatured_type): Forward declare.
11410         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11411         New methods.
11412         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11413         (dw2_get_cutu): ...this.
11414         (dwarf2_per_objfile::get_cu): Rename from...
11415         (dw2_get_cu): ...this.
11416         (dwarf2_per_objfile::get_tu): New.
11417         (create_addrmap_from_index): Adjust.
11418         (create_addrmap_from_aranges): Adjust.
11419         (dw2_find_last_source_symtab): Adjust.
11420         (dw2_map_symtabs_matching_filename): Adjust.
11421         (dw2_symtab_iter_next): Adjust.
11422         (dw2_print_stats): Adjust.
11423         (dw2_expand_all_symtabs): Adjust.
11424         (dw2_expand_symtabs_with_fullname): Adjust.
11425         (dw2_expand_marked_cus): Adjust.
11426         (dw_expand_symtabs_matching_file_matcher): Adjust.
11427         (dw2_map_symbol_filenames): Adjust.
11428         (dw2_debug_names_iterator::next): Adjust.
11429         (dwarf2_initialize_objfile): Adjust.
11430         (set_partial_user): Adjust.
11431         (dwarf2_build_psymtabs_hard): Adjust.
11432
11433 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11434
11435         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11436         Remove unused variables.
11437         (dw2_map_symtabs_matching_filename): Likewise.
11438         (dwarf2_record_block_ranges): Likewise.
11439         (dwarf2_read_addr_index): Likewise.
11440         (follow_die_offset): Likewise.
11441
11442 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11443
11444         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11445         to symbol_file_add_main.
11446
11447 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11448
11449         PR mi/22299
11450         * mi/mi-console.c (do_fputc_async_safe): New.
11451         (mi_console_file::write_async_safe): New.
11452         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11453         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11454         New.
11455         * ui-file.c (ui_file::putstrn): Adjust call to
11456         fputstrn_unfiltered.
11457         * utils.c (printchar): Replace do_fputs and do_fprintf
11458         parameters by do_fputc.
11459         (fputstr_filtered): Adjust call to printchar.
11460         (fputstr_unfiltered): Likewise.
11461         (fputstrn_filtered): Likewise.
11462         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11463         printchar.
11464         * utils.h (do_fputc_ftype): New typedef.
11465         (fputstrn_unfiltered): Add do_fputc parameter.
11466
11467 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11468
11469         * regformats/i386/i386-avx.dat: Remove.
11470
11471 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11472
11473         PR gdb/22979
11474         * amd64-tdep.c (amd64_none_init_abi): New function.
11475         (amd64_x32_none_init_abi): New function.
11476         (_initialize_amd64_tdep): Register handlers for x86-64 and
11477         x64_32 with GDB_OSABI_NONE.
11478         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11479         GDB_OSABI_NONE osabi.
11480
11481 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11482
11483         PR gdb/22980
11484         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11485         GDB_OSABI_NONE.
11486         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11487         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11488
11489 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11490
11491         * common/byte-vector.h (char_vector): New type.
11492         * target.h (target_read_alloc): Return
11493         gdb::optional<byte_vector>.
11494         (target_read_stralloc): Return gdb::optional<char_vector>.
11495         (target_get_osdata): Return gdb::optional<char_vector>.
11496         * target.c (target_read_alloc_1): Templatize.  Replacement
11497         manual memory management with vector.
11498         (target_read_alloc): Change return type, adjust.
11499         (target_read_stralloc): Change return type, adjust.
11500         (target_get_osdata): Change return type, adjust.
11501         * auxv.c (struct auxv_info) <length>: Remove.
11502         <data>: Change type to gdb::optional<byte_vector>.
11503         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11504         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11505         (target_auxv_search): Adjust.
11506         (fprint_target_auxv): Adjust.
11507         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11508         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11509         (linux_make_corefile_notes): Adjust.
11510         * osdata.c (get_osdata): Adjust.
11511         * remote.c (remote_get_threads_with_qxfer): Adjust.
11512         (remote_memory_map): Adjust.
11513         (remote_traceframe_info): Adjust.
11514         (btrace_read_config): Adjust.
11515         (remote_read_btrace): Adjust.
11516         (remote_pid_to_exec_file): Adjust.
11517         * solib-aix.c (solib_aix_get_library_list): Adjust.
11518         * solib-dsbt.c (decode_loadmap): Don't free buf.
11519         (dsbt_get_initial_loadmaps): Adjust.
11520         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11521         * solib-target.c (solib_target_current_sos): Adjust.
11522         * tracepoint.c (sdata_make_value): Adjust.
11523         * xml-support.c (xinclude_start_include): Adjust.
11524         (xml_fetch_content_from_file): Adjust.
11525         * xml-support.h (xml_fetch_another): Change return type.
11526         (xml_fetch_content_from_file): Change return type.
11527         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11528         * xml-tdesc.c (file_read_description_xml): Adjust.
11529         (fetch_available_features_from_target): Change return type.
11530         (target_fetch_description_xml): Adjust.
11531         (target_read_description_xml): Adjust.
11532
11533 2018-04-06  Tom Tromey  <tom@tromey.com>
11534
11535         * value.c (~value): Update.
11536         (struct value) <contents>: Now unique_xmalloc_ptr.
11537         (value_contents_bits_eq, allocate_value_contents)
11538         (value_contents_raw, value_contents_all_raw)
11539         (value_contents_for_printing, value_contents_for_printing_const)
11540         (set_value_enclosing_type): Update.
11541
11542 2018-04-06  Tom Tromey  <tom@tromey.com>
11543
11544         * value.c (range_s): Remove typedef, VEC.
11545         (struct range): Add operator<.
11546         (range_lessthan): Remove.
11547         (ranges_contain): Change type.
11548         (~value): Update.
11549         (struct value) <unavailable, optimized_out>: Now std::vector.
11550         (value_entirely_available)
11551         (value_entirely_covered_by_range_vector)
11552         (value_entirely_unavailable, value_entirely_optimized_out):
11553         Update.
11554         (insert_into_bit_range_vector): Change argument type.
11555         (find_first_range_overlap): Likewise.
11556         (struct ranges_and_idx, value_contents_bits_eq)
11557         (require_not_optimized_out, require_available): Update.
11558         (ranges_copy_adjusted): Change argument types.
11559         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11560
11561 2018-04-06  Tom Tromey  <tom@tromey.com>
11562
11563         * value.c (~value): Update.
11564         (struct value) <parent>: Now a value_ref_ptr.
11565         (value_parent, set_value_parent, value_address, value_copy):
11566         Update.
11567
11568 2018-04-06  Tom Tromey  <tom@tromey.com>
11569
11570         * value.c (struct value): Add constructor, destructor, and member
11571         initializers.
11572         (allocate_value_lazy, value_decref): Update.
11573
11574 2018-04-06  Tom Tromey  <tom@tromey.com>
11575
11576         * value.c (struct value) <released, next>: Remove.
11577         (all_values): Now a std::vector.
11578         (allocate_value_lazy): Update.
11579         (value_next): Remove.
11580         (value_mark, value_free_to_mark, release_value)
11581         (value_release_to_mark): Update.
11582
11583 2018-04-06  Tom Tromey  <tom@tromey.com>
11584
11585         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11586         (free_value_chain): Remove.
11587         * value.c (free_value_chain): Remove.
11588         (value_release_to_mark): Return a std::vector.
11589         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11590         std::vector.
11591         (check_condition): Update.
11592         * eval.c (fetch_subexp_value): Change "val_chain" to a
11593         std::vector.
11594         * breakpoint.c (update_watchpoint): Update.
11595         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11596
11597 2018-04-06  Tom Tromey  <tom@tromey.com>
11598
11599         * value.h (free_all_values): Remove.
11600         * value.c (free_all_values): Remove.
11601
11602 2018-04-06  Tom Tromey  <tom@tromey.com>
11603
11604         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11605         (value_history_chain, value_history_count): Remove.
11606         (value_history): New global.
11607         (record_latest_value, access_value_history, show_values)
11608         (preserve_values): Update.
11609
11610 2018-04-06  Tom Tromey  <tom@tromey.com>
11611
11612         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11613         * varobj.c (varobj_set_display_format, varobj_set_value)
11614         (install_default_visualizer, construct_visualizer)
11615         (install_new_value, ~varobj, varobj_get_value_type)
11616         (my_value_of_variable, varobj_editable_p): Update.
11617         * c-varobj.c (c_describe_child, c_value_of_variable)
11618         (cplus_number_of_children, cplus_describe_child): Update.
11619         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11620         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11621         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11622
11623 2018-04-06  Tom Tromey  <tom@tromey.com>
11624
11625         * printcmd.c (last_examine_address): Change type to
11626         value_ref_ptr.
11627         (do_examine, x_command): Update.
11628
11629 2018-04-06  Tom Tromey  <tom@tromey.com>
11630
11631         * value.c (release_value): Update.
11632         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11633         (struct bpstats) <val>: Now a value_ref_ptr.
11634         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11635         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11636         (~watchpoint, print_it_watchpoint, watch_command_1)
11637         (invalidate_bp_value_on_memory_change): Update.
11638
11639 2018-04-06  Tom Tromey  <tom@tromey.com>
11640
11641         * varobj.c (varobj_clear_saved_item)
11642         (update_dynamic_varobj_children, install_new_value, ~varobj):
11643         Update.
11644         * value.h (value_incref): Move declaration earlier.
11645         (value_decref): Rename from value_free.
11646         (struct value_ref_policy): New.
11647         (value_ref_ptr): New typedef.
11648         (struct value_deleter): Remove.
11649         (gdb_value_up): Remove typedef.
11650         (release_value): Change return type.
11651         (release_value_or_incref): Remove.
11652         * value.c (set_value_parent): Update.
11653         (value_incref): Change return type.
11654         (value_decref): Rename from value_free.
11655         (value_free_to_mark, free_all_values, free_value_chain): Update.
11656         (release_value): Return value_ref_ptr.
11657         (release_value_or_incref): Remove.
11658         (record_latest_value, set_internalvar, clear_internalvar):
11659         Update.
11660         * stack.c (info_frame_command): Don't call value_free.
11661         * python/py-value.c (valpy_dealloc, valpy_new)
11662         (value_to_value_object): Update.
11663         * printcmd.c (do_examine): Update.
11664         * opencl-lang.c (lval_func_free_closure): Update.
11665         * mi/mi-main.c (register_changed_p): Don't call value_free.
11666         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11667         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11668         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11669         value_free.
11670         * guile/scm-value.c (vlscm_free_value_smob)
11671         (vlscm_scm_from_value): Update.
11672         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11673         (frame_unwind_register_unsigned, get_frame_register_bytes)
11674         (put_frame_register_bytes): Don't call value_free.
11675         * findvar.c (address_from_register): Don't call value_free.
11676         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11677         * dwarf2loc.c (entry_data_value_free_closure)
11678         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11679         (dwarf2_evaluate_loc_desc_full): Update.
11680         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11681         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11682         (~watchpoint, watch_command_1)
11683         (invalidate_bp_value_on_memory_change): Update.
11684         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11685
11686 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11687
11688         PR gdb/23022
11689         * warning.m4: Add -Wno-error=deprecated-register.
11690         * configure: Re-generate.
11691
11692 2018-04-05  Tom Tromey  <tom@tromey.com>
11693
11694         * linespec.h: Remove include of "vec.h".
11695
11696 2018-04-05  Tom Tromey  <tom@tromey.com>
11697
11698         * linespec.c (typep): Remove typedef.
11699         (find_methods, find_superclass_methods): Take a std::vector.
11700         (find_method): Use std::vector.
11701
11702 2018-04-05  Tom Tromey  <tom@tromey.com>
11703
11704         * utils.c (compare_strings): Remove.
11705         * utils.h (compare_strings): Remove.
11706         * objc-lang.h (find_imps): Update.
11707         * objc-lang.c (find_methods): Take a std::vector.
11708         (uniquify_strings, find_imps): Likewise.
11709         * linespec.c (find_methods): Take a std::vector.
11710         (decode_objc): Use std::vector.
11711         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11712         a std::vector.
11713         (find_method, find_function_symbols): Use std::vector.
11714
11715 2018-04-05  Tom Tromey  <tom@tromey.com>
11716
11717         * completer.c (completion_tracker::completion_tracker): Remove
11718         cast.
11719         (completion_tracker::discard_completions): Likewise.
11720         * breakpoint.c (ambiguous_names_p): Remove cast.
11721         * ada-lang.c (_initialize_ada_language): Remove cast.
11722         * utils.h (streq): Update.
11723         (streq_hash): Add new declaration.
11724         * utils.c (streq): Return bool.
11725         (streq_hash): New function.
11726
11727 2018-04-05  Tom Tromey  <tom@tromey.com>
11728
11729         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11730         Remove a string copy.
11731
11732 2018-04-05  Tom Tromey  <tom@tromey.com>
11733
11734         * linespec.c (filter_results): Use std::vector.
11735         (decode_line_2, decode_line_full): Update.
11736
11737 2018-04-05  Tom Tromey  <tom@tromey.com>
11738
11739         * linespec.c (canonical_to_fullform): Return std::string.
11740         (filter_results): Update.
11741         (struct decode_line_2_item): Add constructor.
11742         <fullform, displayform>: Now std::string.
11743         (decode_line_2_compare_items): Now a std::sort comparator.
11744         (decode_line_2): Update.
11745
11746 2018-04-05  Tom Tromey  <tom@tromey.com>
11747
11748         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11749         (unexpected_linespec_error): Update.
11750         (linespec_parse_basic, parse_linespec): Update.
11751
11752 2018-04-05  Tom Tromey  <tom@tromey.com>
11753
11754         * linespec.c (linespec_parse_basic): Reindent.
11755
11756 2018-04-05  Tom Tromey  <tom@tromey.com>
11757
11758         * minsyms.h (iterate_over_minimal_symbols): Update.
11759         * minsyms.c (iterate_over_minimal_symbols): Take a
11760         gdb::function_view.
11761         * linespec.c (struct collect_minsyms): Remove.
11762         (compare_msyms): Now a std::sort comparator.
11763         (add_minsym): Add parameters.
11764         (search_minsyms_for_name): Update.  Use std::vector.
11765
11766 2018-04-03  Tom Tromey  <tom@tromey.com>
11767
11768         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11769         gdb::byte_vector.
11770
11771 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11772
11773         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11774
11775 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11776
11777         PR gdb/16959
11778         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11779         printing static type.
11780
11781 2018-04-01  Tom Tromey  <tom@tromey.com>
11782
11783         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11784         (rs6000_xfer_shared_libraries): Update.
11785
11786 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11787
11788         * common/gdb_vecs.h (char_ptr): Remove.
11789         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11790
11791 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11792
11793         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11794         with std::vector.
11795         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11796
11797 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11798
11799         * tracepoint.h (struct uploaded_tp): Initialize fields.
11800         <actions, step_actions, cmd_strings>: Change type to
11801         std::vector<char *>.
11802         * tracepoint.c (get_uploaded_tp): Allocate with new.
11803         (free_uploaded_tps): Free with delete.
11804         (parse_tracepoint_definition): Adjust to std::vector change.
11805         * breakpoint.c (read_uploaded_action): Likewise.
11806         (create_tracepoint_from_upload): Likewise.
11807         * ctf.c (ctf_write_uploaded_tp): Likewise.
11808         (SET_ARRAY_FIELD): Likewise.
11809         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11810
11811 2018-03-30  Tom Tromey  <tom@tromey.com>
11812
11813         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11814         std::unique_ptr.
11815         (svr4_keep_data_in_core): Update.
11816         (svr4_read_so_list): Update.
11817
11818 2018-03-30  Tom Tromey  <tom@tromey.com>
11819
11820         * windows-nat.c (handle_output_debug_string, handle_exception):
11821         Update.
11822         * target.h (target_read_string): Update.
11823         * target.c (target_read_string): Change "string" to
11824         unique_xmalloc_ptr.
11825         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11826         Update.
11827         * solib-frv.c (frv_current_sos): Update.
11828         * solib-dsbt.c (dsbt_current_sos): Update.
11829         * solib-darwin.c (darwin_current_sos): Update.
11830         * linux-thread-db.c (inferior_has_bug): Update.
11831         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11832         Update.  Remove alloca.
11833         * ada-lang.c (ada_main_name): Update.
11834
11835 2018-03-30  Tom Tromey  <tom@tromey.com>
11836
11837         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11838         (struct dwo_file_deleter): New.
11839         (dwo_file_up): New typedef.
11840         (open_and_init_dwo_file): Use dwo_file_up.
11841         (free_dwo_file_cleanup): Remove.
11842
11843 2018-03-30  Tom Tromey  <tom@tromey.com>
11844
11845         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11846         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11847
11848 2018-03-30  Tom Tromey  <tom@tromey.com>
11849
11850         * dwarf2read.c (class free_cached_comp_units): New class.
11851         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11852         (free_cached_comp_units): Remove function.
11853
11854 2018-03-30  Tom Tromey  <tom@tromey.com>
11855
11856         * utils.h (make_cleanup_unpush_target): Remove.
11857         * inf-ptrace.c (struct target_unpusher): New.
11858         (target_unpush_up) New typedef.
11859         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11860         target_unpush_up.
11861         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11862
11863 2018-03-27  Tom Tromey  <tom@tromey.com>
11864
11865         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11866
11867 2018-03-27  Pedro Alves  <palves@redhat.com>
11868             Tom Tromey  <tom@tromey.com>
11869
11870         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11871         destructor.  Now a class.
11872         (gdb_readline_wrapper_cleanup): Remove function.
11873         (gdb_readline_wrapper): Remove cleanups.
11874
11875 2018-03-27  Tom Tromey  <tom@tromey.com>
11876
11877         * typeprint.h (struct type_print_options) <local_typedefs,
11878         global_typedefs>: Remove "struct" keyword.
11879         (class typedef_hash_table): New class.
11880         (recursively_update_typedef_hash, add_template_parameters)
11881         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11882         (find_typedef_in_hash): Don't declare.
11883         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11884         (typedef_hash_table::recursively_update): Rename from
11885         recursively_update_typedef_hash.  Now a member.
11886         (typedef_hash_table::add_template_parameters): Rename from
11887         add_template_parameters.  Now a member.
11888         (typedef_hash_table::typedef_hash_table): Now a constructor;
11889         rename from create_typedef_hash.
11890         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11891         rename from free_typedef_hash.
11892         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11893         (do_free_global_table): Remove.
11894         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11895         from copy_type_recursive.
11896         (create_global_typedef_table): Remove.
11897         (typedef_hash_table::find_global_typedef): Now a member of
11898         typedef_hash_table.
11899         (typedef_hash_table::find_typedef): Rename from
11900         find_typedef_in_hash; now a member.
11901         (whatis_exp): Update.
11902         * extension.h (struct ext_lang_type_printers): Add constructor and
11903         destructor.
11904         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11905         declare.
11906         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11907         Now a constructor; rename from start_ext_lang_type_printers.
11908         (ext_lang_type_printers): Now a destructor; rename from
11909         free_ext_lang_type_printers.
11910         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11911         Update.
11912         (c_type_print_base_struct_union): Update.  Remove cleanups.
11913
11914 2018-03-27  Tom Tromey  <tom@tromey.com>
11915
11916         * dwarf-index-write.c: Include <cmath>.
11917
11918 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11919
11920         * NEWS: Add entry describing new "set|show varsize-limit" command.
11921         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11922         command.
11923         * printcmd.c (_initialize_printcmd): Add "set var" alias of
11924         "set variable".
11925
11926 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
11927
11928         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
11929         dwarf-index-write.c
11930         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
11931         * dwarf-index-common.c: New file.
11932         * dwarf-index-common.h: New file.
11933         * dwarf-index-write.c: New file.
11934         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
11935         (struct dwarf2_section_info): Move from here.
11936         (dwarf2_section_info_def): Likewise.
11937         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
11938         (offset_type): Likewise.
11939         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
11940         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
11941         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
11942         (byte_swap): Likewise.
11943         (MAYBE_SWAP): Likewise.
11944         (dwarf2_per_cu_ptr): Likewise.
11945         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
11946         (struct tu_stats): Likewise.
11947         (struct dwarf2_per_objfile): Likewise.
11948         (struct dwarf2_per_cu_data): Likewise.
11949         (struct signatured_type): Likewise.
11950         (sig_type_ptr): Likewise.
11951         (DEF_VEC_P (sig_type_ptr)): Likewise.
11952         (INDEX4_SUFFIX): Likewise.
11953         (INDEX5_SUFFIX): Likewise.
11954         (DEBUG_STR_SUFFIX): Likewise.
11955         (dwarf2_read_section): Make non-static.
11956         (mapped_index_string_hash): Move from here.
11957         (dwarf5_djb_hash): Likewise.
11958         (file_write): Likewise.
11959         (class data_buf): Likewise.
11960         (struct symtab_index_entry): Likewise.
11961         (struct mapped_symtab): Likewise.
11962         (find_slot): Likewise.
11963         (hash_expand): Likewise.
11964         (add_index_entry): Likewise.
11965         (uniquify_cu_indices): Likewise.
11966         (class c_str_view): Likewise.
11967         (class c_str_view_hasher): Likewise.
11968         (class vector_hasher): Likewise.
11969         (write_hash_table): Likewise.
11970         (psym_index_map): Likewise.
11971         (struct addrmap_index_data): Likewise.
11972         (add_address_entry): Likewise.
11973         (add_address_entry_worker): Likewise.
11974         (write_address_map): Likewise.
11975         (symbol_kind): Likewise.
11976         (write_psymbols): Likewise.
11977         (struct signatured_type_index_data): Likewise.
11978         (write_one_signatured_type): Likewise.
11979         (recursively_count_psymbols): Likewise.
11980         (recursively_write_psymbols): Likewise.
11981         (class debug_names): Likewise.
11982         (check_dwarf64_offsets): Likewise.
11983         (psyms_seen_size): Likewise.
11984         (write_gdbindex): Likewise.
11985         (write_debug_names): Likewise.
11986         (assert_file_size): Likewise.
11987         (write_psymtabs_to_index): Likewise.
11988         (save_gdb_index_command): Likewise.
11989         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11990         command.
11991         * dwarf2read.h: New file.
11992
11993 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11994
11995         PR gdb/22670
11996         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11997         symbol name if the CU's language stores symbol names in linkage
11998         format.
11999         * language.h (struct language_defn)
12000         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12001         all instances of this struct.
12002
12003 2018-03-26  Tom Tromey  <tom@tromey.com>
12004
12005         * stack.c (backtrace_command_1): Remove verbose code.
12006
12007 2018-03-26  Tom Tromey  <tom@tromey.com>
12008
12009         * python/py-framefilter.c (py_print_type): Don't catch
12010         exceptions.  Return void.
12011         (py_print_value): Likewise.
12012         (py_print_single_arg): Likewise.
12013         (enumerate_args): Don't catch exceptions.
12014         (py_print_args): Likewise.
12015         (py_print_frame): Likewise.
12016         (gdbpy_apply_frame_filter): Catch exceptions here.
12017
12018 2018-03-26  Tom Tromey  <tom@tromey.com>
12019
12020         * stack.c (_initialize_stack): Remove trailing newlines from help
12021         text.  Add "Usage" line to "backtrace" help.
12022
12023 2018-03-26  Tom Tromey  <tom@tromey.com>
12024
12025         PR python/16486:
12026         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12027
12028 2018-03-26  Tom Tromey  <tom@tromey.com>
12029
12030         * python/py-framefilter.c (py_print_single_arg): Return
12031         EXT_LANG_BT_ERROR from catch.
12032
12033 2018-03-26  Tom Tromey  <tom@tromey.com>
12034
12035         PR backtrace/15584:
12036         * stack.c (backtrace_command_1): Move some code into no-filters
12037         "if".
12038
12039 2018-03-26  Tom Tromey  <tom@tromey.com>
12040
12041         * python/py-framefilter.c (throw_quit_or_print_exception): New
12042         function.
12043         (gdbpy_apply_frame_filter): Use it.
12044
12045 2018-03-26  Tom Tromey  <tom@tromey.com>
12046
12047         PR cli/17716:
12048         * python/py-framefilter.c (py_print_type, py_print_value)
12049         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12050         RETURN_MASK_ERROR.
12051
12052 2018-03-26  Tom Tromey  <tom@tromey.com>
12053
12054         * python/py-framefilter.c (enumerate_args): Use
12055         gdb::unique_xmalloc_ptr.
12056
12057 2018-03-26  Tom Tromey  <tom@tromey.com>
12058
12059         * python/py-framefilter.c (py_print_frame): Return
12060         EXT_LANG_BT_OK.
12061         (gdbpy_apply_frame_filter): Update comment.
12062         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12063         Remove.
12064         <EXT_LANG_BT_NO_FILTERS>: Change value.
12065
12066 2018-03-26  Tom Tromey  <tom@tromey.com>
12067
12068         PR backtrace/15582:
12069         * stack.c (backtrace_command): Parse "hide" argument.
12070         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12071         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12072         constant.
12073
12074 2018-03-26  Tom Tromey  <tom@tromey.com>
12075
12076         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12077         add "flags".
12078         (backtrace_command): Remove "fulltrace", add "flags".
12079
12080 2018-03-26  Tom Tromey  <tom@tromey.com>
12081
12082         * stack.c (backtrace_command): Rewrite command line parsing.
12083
12084 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12085
12086         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12087
12088 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12089
12090         * filename-seen-cache.h: Add include guard.
12091
12092 2018-03-26  Keith Seitz  <keiths@redhat.com>
12093
12094         * symfile.c (place_section): Remove "struct" from section_addr_info
12095         in comment.
12096         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12097         "struct" keyword from section_addr_info.
12098
12099 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12100
12101         * regformats/regdef.h (reg): Add constructors.
12102
12103 2018-03-25  Pedro Alves  <palves@redhat.com>
12104
12105         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12106         if then/else bodies in var_func_name extraction.
12107
12108 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12109
12110         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12111         lookup_minimal_symbol() to find symbol entry.
12112         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12113
12114 2018-03-23  Keith Seitz  <keiths@redhat.com>
12115
12116         PR c++/22968
12117         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12118         nested type definitions for C++, too.
12119
12120 2018-03-23  Tom Tromey  <tom@tromey.com>
12121
12122         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12123         a typedef.
12124         (macho_register_oso): Remove.
12125         (macho_symtab_read): Take a std::vector.
12126         (oso_el_compare_name): Now a std::sort comparator.
12127         (macho_symfile_read_all_oso): Take a std::vector.
12128         (macho_symfile_read): Use std::vector.  Remove cleanups.
12129
12130 2018-03-22  Tom Tromey  <tom@tromey.com>
12131
12132         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12133         (record_full_goto_bookmark): Use std::string.
12134
12135 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12136
12137         PR tdep/18295
12138         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12139         a single mask.
12140
12141 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12142
12143         * rs6000-tdep.c (store_insn_p): New function.
12144         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12145         and cr_reg to their unshifted values. Use store_insn_p to
12146         match LR saves using either R1 or fdata->alloca_reg. Use
12147         store_insn_p to match CR saves. Set alloca_reg_offset
12148         when alloca_reg and framep are set. Remove lr_reg shift
12149         when assigning to fdata->lr_register.
12150
12151 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12152
12153         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12154         command line args instead of emitting a warning.
12155
12156 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12157
12158         * tracepoint.h (struct static_tracepoint_marker): Initialize
12159         fields, define default constructor, move constructor and move
12160         assignment, disable the rest.
12161         <str_id, extra>: Make std::string.
12162         (release_static_tracepoint_marker): Remove.
12163         (free_current_marker): Remove.
12164         * tracepoint.c (free_current_marker): Remove.
12165         (parse_static_tracepoint_marker_definition): Adjust to
12166         std::string, use new hex2str overload.
12167         (release_static_tracepoint_marker): Remove.
12168         (print_one_static_tracepoint_marker): Get marker by reference
12169         and adjust to std::string.
12170         (info_static_tracepoint_markers_command): Adjust to std::vector
12171         changes
12172         * target.h (static_tracepoint_marker_p): Remove typedef.
12173         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12174         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12175         bool.
12176         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12177         * target-debug.h
12178         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12179         (target_debug_print_std_vector_static_tracepoint_marker): New.
12180         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12181         to...
12182         (target_debug_print_static_tracepoint_marker_p): ... this.
12183         * target-delegates.c: Re-generate.
12184         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12185         Make std::string.
12186         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12187         (decode_static_tracepoint_spec): Adjust to std::vector.
12188         (tracepoint_print_one_detail): Adjust to std::string.
12189         (strace_marker_decode_location): Adjust to std::string.
12190         (update_static_tracepoint): Adjust to std::string, remove call
12191         to release_static_tracepoint_marker.
12192         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12193         Adjust to std::vector.
12194         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12195         (remote_static_tracepoint_markers_by_strid): Adjust to
12196         std::vector.
12197         * common/rsp-low.h (hex2str): New overload with explicit count
12198         of bytes.
12199         * common/rsp-low.c (hex2str): New overload with explicit count
12200         of bytes.
12201         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12202         (_initialize_rsp_low_selftests): Add test_hex2str test.
12203         * unittests/tracepoint-selftests.c
12204         (test_parse_static_tracepoint_marker_definition): Adjust to
12205         std::string.
12206
12207 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12208
12209         * tracepoint.c (parse_static_tracepoint_marker_definition):
12210         Consider case where the definition is followed by more
12211         definitions.
12212         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12213         tracepoint-selftests.c.
12214         * unittests/tracepoint-selftests.c: New.
12215
12216 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12217
12218         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12219         Carvalho.
12220
12221 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12222
12223         * symtab.c (find_pc_sect_line): fixed indentation.
12224
12225 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12226
12227         * symtab.c (find_pc_sect_line): now uses binary search.
12228
12229 2018-03-19  Tom Tromey  <tom@tromey.com>
12230
12231         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12232         "IDENT" production.
12233
12234 2018-03-19  Pedro Alves  <palves@redhat.com>
12235             Tom Tromey  <tom@tromey.com>
12236
12237         * unittests/observable-selftests.c: New file.
12238         * common/observable.h: New file.
12239         * observable.h: New file.
12240         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12241         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12242         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12243         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12244         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12245         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12246         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12247         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12248         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12249         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12250         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12251         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12252         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12253         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12254         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12255         tui/tui-interp.c, valops.c: Update all users.
12256         * tui/tui-hooks.c (tui_bp_created_observer)
12257         (tui_bp_deleted_observer, tui_bp_modified_observer)
12258         (tui_inferior_exit_observer, tui_before_prompt_observer)
12259         (tui_normal_stop_observer, tui_register_changed_observer):
12260         Remove.
12261         (tui_observers_token): New global.
12262         (attach_or_detach, tui_attach_detach_observers): New functions.
12263         (tui_install_hooks, tui_remove_hooks): Use
12264         tui_attach_detach_observers.
12265         * record-btrace.c (record_btrace_thread_observer): Remove.
12266         (record_btrace_thread_observer_token): New global.
12267         * observer.sh: Remove.
12268         * observer.c: Rename to observable.c.
12269         * observable.c (namespace gdb_observers): Define new objects.
12270         (observer_debug): Move into gdb_observers namespace.
12271         (struct observer, struct observer_list, xalloc_observer_list_node)
12272         (xfree_observer_list_node, generic_observer_attach)
12273         (generic_observer_detach, generic_observer_notify): Remove.
12274         (_initialize_observer): Update.
12275         Don't include observer.inc.
12276         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12277         (clean mostlyclean): Likewise.
12278         (observer.h, observer.inc): Remove targets.
12279         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12280         (COMMON_SFILES): Use observable.c, not observer.c.
12281         * .gitignore: Remove observer.h.
12282
12283 2018-03-18  Tom Tromey  <tom@tromey.com>
12284
12285         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12286         gdb::def_vector.
12287         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12288
12289 2018-03-17  Tom Tromey  <tom@tromey.com>
12290
12291         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12292
12293 2018-03-17  Tom Tromey  <tom@tromey.com>
12294
12295         * target.c (class scoped_target_fd): New.
12296         (target_fileio_close_cleanup): Remove.
12297         (target_fileio_read_alloc_1): Use scoped_target_fd.
12298
12299 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12300
12301         * silent-rules.mk: New.
12302         * Makefile.in: Include silent-rules.mk
12303         (srcdir, VPATH, top_srcdir): Move up.
12304         (COMPILE): Add ECHO_CXX.
12305         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12306         (init.c): Add ECHO_INIT_C.
12307         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12308         (version.c): Add ECHO_GEN.
12309         (printcmd.o): Add ECHO_CXX.
12310         (target-float.o): Add ECHO_CXX.
12311         (ada-exp.o): Add ECHO_CXX.
12312         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12313         (insight$(EXEEXT)): Add ECHO_CXXLD.
12314         * gnulib/configure.ac: Add AM_SILENT_RULES.
12315         * gnulib/aclocal.m4: Re-generate.
12316         * gnulib/configure: Re-generate.
12317         * gnulib/import/Makefile.in: Re-generate.
12318
12319 2018-03-16  Tom Tromey  <tom@tromey.com>
12320
12321         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12322         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12323         * utils.c (do_free_section_addr_info)
12324         (make_cleanup_free_section_addr_info): Remove.
12325         * symfile.h (struct other_sections): Add constructor.
12326         (struct section_addr_info): Remove.
12327         (section_addr_info): New typedef.
12328         (struct sym_fns) <sym_offsets>: Change type of parameter.
12329         (build_section_addr_info_from_objfile)
12330         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12331         (default_symfile_offsets, symbol_file_add)
12332         (symbol_file_add_from_bfd)
12333         (build_section_addr_info_from_section_table): Update.
12334         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12335         * symfile.c (alloc_section_addr_info): Remove.
12336         (build_section_addr_info_from_section_table): Change return type.
12337         Update.
12338         (build_section_addr_info_from_bfd)
12339         (build_section_addr_info_from_objfile): Likewise.
12340         (free_section_addr_info): Remove.
12341         (relative_addr_info_to_section_offsets): Change type of "addrs".
12342         (addrs_section_compar): Now a std::sort comparator.
12343         (addrs_section_sort): Change return type.
12344         (addr_info_make_relative): Change type of "addrs".  Update.
12345         (default_symfile_offsets, syms_from_objfile_1)
12346         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12347         (symbol_file_add_separate): Update.
12348         (symbol_file_add): Change type of "addrs".  Update.
12349         (add_symbol_file_command): Update.  Remove cleanups.
12350         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12351         cleanups.
12352         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12353         * solib.c (solib_read_symbols): Update.
12354         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12355         * machoread.c (macho_symfile_offsets): Update.
12356         * jit.c (jit_bfd_try_read_symtab): Update.
12357
12358 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12359
12360         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12361         unittests/utils-selftests.c.
12362         * unittests/utils-selftests.c: New file.
12363
12364 2018-03-14  Tom Tromey  <tom@tromey.com>
12365
12366         PR cli/14977:
12367         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12368         for NULL.
12369
12370 2018-03-14  Tom Tromey  <tom@tromey.com>
12371
12372         PR cli/19918:
12373         * printcmd.c (printf_pointer): Allow "-" in format.
12374
12375 2018-03-14  Tom Tromey  <tom@tromey.com>
12376
12377         * printcmd.c (_initialize_printcmd): Add usage to printf.
12378
12379 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12380
12381         * MAINTAINERS: Update my email address.
12382
12383 2018-03-13  Tom Tromey  <tom@tromey.com>
12384
12385         * machoread.c (macho_check_dsym): Change filenamep to a
12386         std::string*.
12387         (macho_symfile_read): Update.
12388         * symfile.c (load_command): Use std::string.
12389
12390 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12391
12392         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12393         to error message string.
12394         (riscv_register_name): Use xsnprintf instead of sprintf.
12395         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12396         internal_error.
12397         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12398         error.
12399         (riscv_push_dummy_call): Likewise.
12400
12401 2018-03-12  Tom Tromey  <tom@tromey.com>
12402
12403         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12404         Use gdb::byte_vector.
12405         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12406
12407 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12408
12409         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12410         parameter type to readable_regcache.
12411         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12412         the declaration.
12413
12414 2018-03-11  Tom Tromey  <tom@tromey.com>
12415
12416         * dwarf2read.c (struct nextfield): Add initializers.
12417         (struct nextfnfield): Remove.
12418         (struct fnfieldlist): Add initializers.  Remove "length" and
12419         "head", use std::vector.
12420         (struct decl_field_list): Remove.
12421         (struct field_info): Add initializers.
12422         <fields, baseclasses>: Now std::vector.
12423         <nbaseclasses, nfnfields, typedef_field_list_count,
12424         nested_types_list_count>: Remove.
12425         (dwarf2_add_field, dwarf2_add_type_defn)
12426         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12427         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12428         (process_structure_scope): Update.
12429
12430 2018-03-11  Tom Tromey  <tom@tromey.com>
12431
12432         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12433         for use by std::sort.
12434         (build_type_psymtabs_1): Use std::vector.
12435
12436 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12437
12438         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12439         and LIBMPFR in the printed configuration.
12440
12441 2018-03-08  Tom Tromey  <tom@tromey.com>
12442
12443         * source.c (get_filename_and_charpos): Use scoped_fd.
12444         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12445         (procfs_pidlist): Likewise.
12446         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12447         (iterate_over_mappings): Likewise.
12448
12449 2018-03-08  Tom Tromey  <tom@tromey.com>
12450
12451         * infcall.c (struct call_return_meta_info)
12452         <stack_temporaries_enabled>: Remove.
12453         (get_call_return_value, call_function_by_hand_dummy): Update.
12454         * thread.c (disable_thread_stack_temporaries): Remove.
12455         (enable_thread_stack_temporaries): Remove.
12456         (thread_stack_temporaries_enabled_p): Return bool.
12457         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12458         (get_last_thread_stack_temporary): Update.
12459         * eval.c (evaluate_subexp): Update.
12460         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12461         class, not a function.
12462         (value_ptr, value_vec): Remove typedefs.
12463         (class thread_info) <stack_temporaries_enabled>: Now bool.
12464         <stack_temporaries>: Now a std::vector.
12465         (thread_stack_temporaries_enabled_p)
12466         (value_in_thread_stack_temporaries): Return bool.
12467
12468 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12469
12470         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12471         (getpkt_or_notif_sane_1): Likewise.
12472
12473 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12474
12475         * build-id.c (build_id_to_debug_bfd): Use std::string.
12476
12477 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12478
12479         * build-id.c (find_separate_debug_file_by_buildid): Return
12480         std::string.
12481         * build-id.h (find_separate_debug_file_by_buildid): Return
12482         std::string.
12483         * coffread.c (coff_symfile_read): Adjust to std::string.
12484         * elfread.c (elf_symfile_read): Adjust to std::string.
12485         * symfile.c (separate_debug_file_exists): Change parameter to
12486         std::string.
12487         (find_separate_debug_file): Return std::string.
12488         (find_separate_debug_file_by_debuglink): Return std::string.
12489         * symfile.h (find_separate_debug_file_by_debuglink): Return
12490         std::string.
12491
12492 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12493
12494         * common/xml-utils.c (xml_escape_text): Move code to...
12495         (xml_escape_text_append): ... this new function.
12496         * common/xml-utils.h (xml_escape_text_append): New declaration.
12497         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12498         New function.
12499         (_initialize_xml_utils): register test_xml_escape_text_append as
12500         a selftest.
12501
12502 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12503
12504         * defs.h: Remove MAX_REGISTER_SIZE.
12505         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12506         asserts.
12507         * python/py-unwind.c (pyuw_sniffer): Likewise.
12508
12509 2018-03-07  Tom Tromey  <tom@tromey.com>
12510
12511         * linux-tdep.c (linux_info_proc): Update.
12512         * target.h (struct target_ops) <to_fileio_readlink>: Return
12513         optional<string>.
12514         (target_fileio_readlink): Return optional<string>.
12515         * remote.c (remote_hostio_readlink): Return optional<string>.
12516         * inf-child.c (inf_child_fileio_readlink): Return
12517         optional<string>.
12518         * target.c (target_fileio_readlink): Return optional<string>.
12519
12520 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12521
12522         * regcache.c (cooked_read_test): Add riscv to the list of
12523         architectures that have a save_reggroup.
12524
12525 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12526
12527         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12528         value is not a dynamic class object.
12529
12530 2018-03-06  Tom Tromey  <tom@tromey.com>
12531
12532         * rust-exp.y: Formatting fixes.
12533
12534 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12535
12536         * riscv-tdep.c (riscv_register_name): Remove target description
12537         support.
12538         (riscv_gdbarch_init): Remove target description check.
12539
12540 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12541
12542         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12543         comment.
12544         * riscv-tdep.h: Likewise.
12545
12546 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12547
12548         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12549         (riscv_pseudo_register_write): Delete.
12550         (riscv_gdbarch_init): Remove all use of pseudo registers.
12551
12552 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12553
12554         * record-btrace.c (btrace_print_lines): Replace cleanup
12555         parameter with RAII equivalents.
12556         (btrace_insn_history): Replace cleanup with RAII equivalents.
12557         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12558         make_cleanup_ui_out_tuple_begin_end): Remove.
12559         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12560         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12561         make_cleanup_ui_out_list_begin_end): Remove.
12562
12563 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12564
12565         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12566         parameter types to std::vector.  Use bool.
12567         (record_btrace_wait): Replace VEC(tp_t) with
12568         std::vector<thread_info *>.
12569         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12570
12571 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12572
12573         * record-btrace.c (record_btrace_disable_callback): Remove.
12574         (struct scoped_btrace_disable): New.
12575         (record_btrace_open): Use scoped_btrace_disable.
12576
12577 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12578
12579         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12580         reading values from registers.
12581
12582 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12583
12584         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12585         where appropriate.
12586
12587 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12588
12589         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12590         change parameter type.  Use GDB's print functions, and use
12591         core_addr_to_string where appropriate.
12592         (riscv_push_dummy_call): Use core_addr_to_string where
12593         appropriate, update call to riscv_print_arg_location, and reindent
12594         a few lines.
12595         (riscv_return_value): Update call to riscv_print_arg_location.
12596
12597 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12598             Tim Newsome <tim@sifive.com>
12599             Albert Ou <a0u@eecs.berkeley.edu>
12600             Darius Rad <darius@bluespec.com>
12601
12602         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12603         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12604         (ALLDEPFILES): Add riscv-tdep.c
12605         * configure.tgt: Add riscv support.
12606         * riscv-tdep.c: New file.
12607         * riscv-tdep.h: New file.
12608         * NEWS: Mention new target.
12609         * MAINTAINERS: Add entry for riscv.
12610
12611 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12612
12613         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12614         fields within aggregates.
12615
12616 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12617
12618         * record-btrace.c (btrace_print_lines): Change type of flags to
12619         gdb_disassembly_flags.
12620
12621 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12622
12623         * fbsd-nat.c: Include "inf-ptrace.h".
12624         (USE_SIGTRAP_SIGINFO): Conditionally define.
12625         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12626         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12627         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12628         function.
12629         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12630         Likewise.
12631         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12632         Likewise.
12633         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12634         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12635         "supports_stopped_by_hw_breakpoint" target methods.
12636
12637 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12638
12639         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12640         * fbsd-nat.c (debug_fbsd_nat): New variable.
12641         (show_fbsd_nat_debug): New function.
12642         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12643         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12644
12645 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12646
12647         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12648         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12649         prototype.
12650         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12651         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12652         method.
12653
12654 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12655
12656         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12657         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12658
12659 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12660
12661         * charset.c (struct charset_vector): New.
12662         (charsets): Change type to charset_vector.
12663         (find_charset_names): Adjust.
12664         (add_one): Adjust.
12665         (_initialize_charset): Adjust.
12666
12667 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12668
12669         * progspace.h (struct program_space) <deleted_solibs>: Change
12670         type to std::vector<std::string>.
12671         * progspace.c (clear_program_space_solib_cache): Adjust.
12672         * breakpoint.c (print_solib_event): Adjust.
12673         (check_status_catch_solib): Adjust.
12674         * solib.c (update_solib_list): Adjust.
12675         * ui-out.h (class ui_out) <field_string>: New overload.
12676         * ui-out.c (ui_out::field_string): New overload.
12677
12678 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12679
12680         * progspace.h (struct program_space): Add constructor and
12681         destructor, initialize fields.
12682         (add_program_space): Remove.
12683         * progspace.c (add_program_space): Rename to...
12684         (program_space::program_space): ... this.
12685         (release_program_space): Rename to...
12686         (program_space::~program_space): ... this.
12687         (delete_program_space): Use delete to delete program_space.
12688         (initialize_progspace): Use new to allocate program_space.
12689         * inferior.c (add_inferior_with_spaces): Likewise.
12690         (clone_inferior_command): Likewise.
12691         * infrun.c (follow_fork_inferior): Likewise.
12692         (handle_vfork_child_exec_or_exit): Likewise.
12693
12694 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12695
12696         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12697         (delim_string_to_char_ptr_vec): Return std::vector of
12698         gdb::unique_xmalloc_ptr.
12699         (dirnames_to_char_ptr_vec_append): Take std::vector of
12700         gdb::unique_xmalloc_ptr.
12701         (dirnames_to_char_ptr_vec): Return std::vector of
12702         gdb::unique_xmalloc_ptr.
12703         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12704         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12705         (delim_string_to_char_ptr_vec): Return an std::vector of
12706         gdb::unique_xmalloc_ptr, adjust the code.
12707         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12708         gdb::unique_xmalloc_ptr, adjust the code.
12709         (dirnames_to_char_ptr_vec): Return an std::vector of
12710         gdb::unique_xmalloc_ptr, adjust the code.
12711         * auto-load.c (auto_load_safe_path_vec): Change type to
12712         std::vector of gdb::unique_xmalloc_ptr.
12713         (auto_load_expand_dir_vars): Return an std::vector of
12714         gdb::unique_xmalloc_ptr, adjust the code.
12715         (auto_load_safe_path_vec_update): Adjust.
12716         (filename_is_in_auto_load_safe_path_vec): Adjust.
12717         (auto_load_objfile_script_1): Adjust.
12718         * build-id.c (build_id_to_debug_bfd): Adjust.
12719         * linux-thread-db.c (thread_db_load_search): Adjust.
12720         * source.c (add_path): Adjust.
12721         (openp): Adjust.
12722         * symfile.c (find_separate_debug_file): Adjust.
12723         * utils.c (do_free_char_ptr_vec): Remove.
12724         (make_cleanup_free_char_ptr_vec): Remove.
12725
12726 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12727
12728         PR gdb/22907
12729         * common/pathstuff.c: Conditionally include "<windows.h>".
12730
12731 2018-03-01  Georg Sauthoff  <mail@georg.so>
12732
12733         PR gdb/22888
12734         * gcore.in: Quote variables and switch interpreter to bash.
12735
12736 2018-03-01  Tom Tromey  <tom@tromey.com>
12737
12738         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12739         assertion.  Add assertion for discriminant_index.
12740         (quirk_rust_enum): Use correct base type name in univariant case.
12741
12742 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12743
12744         * record.c (get_call_history_modifiers): Return a
12745         record_print_flags.
12746         (cmd_record_call_history): Adjust.
12747         * record-btrace.c (record_btrace_call_history): Adjust.
12748         (record_btrace_call_history_range): Adjust.
12749         (record_btrace_call_history_from): Adjust.
12750         * target-debug.h (target_debug_print_record_print_flags): New.
12751         * target-delegates.c: Re-generate.
12752         * target.c (target_call_history): Change flags type.
12753         (target_call_history_from): Likewise.
12754         (target_call_history_range): Likewise.
12755         * target.h (struct target_ops) <target_call_history>: Likewise.
12756         (target_call_history_from): Likewise.
12757         (target_call_history_range): Likewise.
12758
12759 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12760             Simon Marchi  <simon.marchi@polymtl.ca>
12761
12762         * common/common-utils.c: Include "sys/stat.h".
12763         (is_regular_file): Move here from "source.c"; change return
12764         type to "bool".
12765         * common/common-utils.h (is_regular_file): New prototype.
12766         * common/pathstuff.c (contains_dir_separator): New function.
12767         * common/pathstuff.h (contains_dir_separator): New prototype.
12768         * source.c: Don't include "sys/stat.h".
12769         (is_regular_file): Move to "common/common-utils.c".
12770
12771 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12772
12773         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12774         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12775         * auto-load.c: Include "common/pathstuff.h".
12776         * common/common-def.h (current_directory): Move here.
12777         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12778         function.
12779         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12780         prototype.
12781         * common/pathstuff.c: New file.
12782         * common/pathstuff.h: New file.
12783         * compile/compile.c: Include "common/pathstuff.h".
12784         * defs.h (current_directory): Move to "common/common-defs.h".
12785         * dwarf2read.c: Include "common/pathstuff.h".
12786         * exec.c: Likewise.
12787         * guile/scm-safe-call.c: Likewise.
12788         * linux-thread-db.c: Likewise.
12789         * main.c: Likewise.
12790         * nto-tdep.c: Likewise.
12791         * objfiles.c: Likewise.
12792         * source.c: Likewise.
12793         * symtab.c: Likewise.
12794         * utils.c: Include "common/pathstuff.h".
12795         (gdb_realpath): Move to "common/pathstuff.c".
12796         (gdb_realpath_keepfile): Likewise.
12797         (gdb_abspath): Likewise.
12798         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12799         (gdb_realpath_keepfile): Likewise.
12800         (gdb_abspath): Likewise.
12801
12802 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12803
12804         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12805         wildcard process pid for super_resume for kernels with a
12806         specific bug.
12807
12808 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12809
12810         * compile/compile.c (get_args): Add additional comments
12811         explaining function.
12812
12813 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12814             Tom Tromey  <tom@tromey.com>
12815
12816         * target.h (memory_write_request_s): Remove typedef.  Don't define
12817         VEC.
12818         (target_write_memory_blocks): Change argument to std::vector.
12819         (struct memory_write_request): Add constructor.
12820         * target-memory.c (compare_block_starting_address): Return bool.
12821         Change argument types.
12822         (claim_memory): Change arguments to use std::vector.
12823         (split_regular_and_flash_blocks, blocks_to_erase)
12824         (compute_garbled_blocks): Likewise.
12825         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12826         (target_write_memory_blocks): Change argument to std::vector.
12827         * symfile.c (struct load_section_data): Add constructor and
12828         destructor.  Use std::vector for "requests".
12829         (struct load_progress_data): Add initializers.
12830         (load_section_callback): Update.  Use "new".
12831         (clear_memory_write_data): Remove.
12832         (generic_load): Update.
12833
12834 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12835
12836         * arch/aarch64.h: Use common/tdesc.h.
12837
12838 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12839
12840         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12841         architecture with a 64-bit ABI.
12842
12843 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12844
12845         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12846         ahead of target description loading.
12847
12848 2018-02-26  Tom Tromey  <tom@tromey.com>
12849
12850         * stack.c (backtrace_command_1): Update.
12851         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12852         of "flags".
12853         * python/py-framefilter.c (py_print_frame)
12854         (gdbpy_apply_frame_filter): Change type of "flags".
12855         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12856         of "flags".
12857         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12858         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12859         * extension.h (enum frame_filter_flag): Rename from
12860         frame_filter_flags.
12861         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12862         (apply_ext_lang_frame_filter): Change type of "flags".
12863         * extension.c (apply_ext_lang_frame_filter): Change type of
12864         "flags".
12865         * extension-priv.h (struct extension_language_ops)
12866         <apply_frame_filter>: Change type of "flags".
12867
12868 2018-02-26  Tom Tromey  <tom@tromey.com>
12869
12870         PR python/16497:
12871         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12872         off-by-one in py_end computation.
12873         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12874         PRINT_MORE_FRAMES.
12875         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12876         constant.
12877
12878 2018-02-26  Tom Tromey  <tom@tromey.com>
12879
12880         * dwarf2read.c (struct variant_field): New.
12881         (struct nextfield) <variant>: New field.
12882         (dwarf2_add_field): Handle DW_TAG_variant_part.
12883         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12884         discriminated union.
12885         (read_structure_type): Handle DW_TAG_variant_part.
12886         (handle_struct_member_die): New function, extracted from
12887         process_structure_scope.  Handle DW_TAG_variant.
12888         (process_structure_scope): Handle discriminated unions.  Call
12889         handle_struct_member_die.
12890
12891 2018-02-26  Tom Tromey  <tom@tromey.com>
12892
12893         * rust-lang.h (rust_last_path_segment): Declare.
12894         * rust-lang.c (rust_last_path_segment): Now public.  Change
12895         contract.
12896         (struct disr_info): Remove.
12897         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12898         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12899         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12900         (rust_enum_p, rust_enum_variant): New function.
12901         (rust_underscore_fields): Remove "offset" parameter.
12902         (rust_print_enum): New function.
12903         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12904         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12905         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12906         enums.
12907         (rust_internal_print_type): New function, from rust_print_type.
12908         Remove enum code.
12909         (rust_print_type): Call rust_internal_print_type.
12910         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12911         Update enum handling.
12912         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12913         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12914         (rust_union_quirks): New functions.
12915         (process_full_comp_unit, process_full_type_unit): Call
12916         rust_union_quirks.
12917         (process_structure_scope): Update rust_unions if necessary.
12918
12919 2018-02-26  Tom Tromey  <tom@tromey.com>
12920
12921         * value.h (value_union_variant): Declare.
12922         * valops.c (value_union_variant): New function.
12923         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
12924         (struct discriminant_info): New.
12925         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
12926         enumerator.
12927         (struct main_type) <flag_discriminated_union>: New field.
12928
12929 2018-02-26  Tom Tromey  <tom@tromey.com>
12930
12931         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12932         unittests/unpack-selftests.c.
12933         * unittests/unpack-selftests.c: New file.
12934         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
12935
12936 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12937
12938         * dwarf2read.c (struct partial_die_info) <read>: New method.
12939         (read_partial_die): Remove the declaration.
12940         (load_partial_dies): Update.
12941         (partial_die_info::partial_die_info):
12942         (read_partial_die): Change it to partial_die_info::read.
12943
12944 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12945
12946         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
12947         (fixup_partial_die): Remove declaration.
12948         (scan_partial_symbols): Update.
12949         (partial_die_parent_scope): Likewise.
12950         (partial_die_full_name): Likewise.
12951         (fixup_partial_die): Change it to partial_die_info::fixup.
12952
12953 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12954
12955         * dwarf2read.c (read_partial_die): Update the declaration.
12956         (load_partial_dies): Caller update.
12957         (read_partial_die): Remove one argument abbrev_len.
12958
12959 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12960
12961         * dwarf2read.c (struct partial_die_info): Add ctor, delete
12962         assignment operator.
12963         (load_partial_dies): Use ctor and copy ctor.
12964         (read_partial_die): Update.
12965         (dwarf2_cu::find_partial_die): Use ctor.
12966
12967 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12968
12969         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12970         (find_partial_die_in_comp_unit): Change it to
12971         dwarf2_cu::find_partial_die.
12972         (find_partial_die): Update.
12973
12974 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12975
12976         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12977         is NULL.
12978
12979 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12980
12981         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12982
12983 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12984
12985         * arch/amd64.h: Use common/tdesc.h.
12986         * arch/i386.c: Likewise.
12987         * arch/i386.h: Likewise.
12988         * arch/tic6x.c: Likewise.
12989         * arch/tdesc.h: Move file from here...
12990         * common/tdesc.h: ...to here.
12991         * features/aarch64-core.c: Regenerate.
12992         * features/aarch64-fpu.c: Regenerate.
12993         * features/i386/32bit-avx.c: Regenerate.
12994         * features/i386/32bit-avx512.c: Regenerate.
12995         * features/i386/32bit-core.c: Regenerate.
12996         * features/i386/32bit-linux.c: Regenerate.
12997         * features/i386/32bit-mpx.c: Regenerate.
12998         * features/i386/32bit-pkeys.c: Regenerate.
12999         * features/i386/32bit-sse.c: Regenerate.
13000         * features/i386/64bit-avx.c: Regenerate.
13001         * features/i386/64bit-avx512.c: Regenerate.
13002         * features/i386/64bit-core.c: Regenerate.
13003         * features/i386/64bit-linux.c: Regenerate.
13004         * features/i386/64bit-mpx.c: Regenerate.
13005         * features/i386/64bit-pkeys.c: Regenerate.
13006         * features/i386/64bit-segments.c: Regenerate.
13007         * features/i386/64bit-sse.c: Regenerate.
13008         * features/i386/x32-core.c: Regenerate.
13009         * features/tic6x-c6xp.c: Regenerate.
13010         * features/tic6x-core.c: Regenerate.
13011         * features/tic6x-gp.c: Regenerate.
13012         * target-descriptions.c: Use common/tdesc.h.
13013         * target-descriptions.h: Likewise.
13014
13015 2018-02-24  Tom Tromey  <tom@tromey.com>
13016
13017         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13018         (try_thread_db_load_from_dir, thread_db_load_search): Use
13019         std::string.
13020         (info_auto_load_libthread_db_compare): Return bool.  Change
13021         argument types.
13022         (info_auto_load_libthread_db): Use std::vector, std::string.
13023         Remove cleanups.
13024
13025 2018-02-24  Tom Tromey  <tom@tromey.com>
13026
13027         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13028         std::string.
13029         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13030         std::string*.
13031         * gdbarch.c: Rebuild.
13032         * gdbarch.h: Rebuild.
13033         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13034         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13035         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13036         std::string*.
13037
13038 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13039
13040         * gdbtypes.h (sect_offset): Change type to uint64_t.
13041         (sect_offset_str): New function.
13042         * dwarf2read.c (create_addrmap_from_aranges): Use
13043         sect_offset_str.
13044         (error_check_comp_unit_head): Likewise.
13045         (create_debug_type_hash_table): Likewise.
13046         (read_cutu_die_from_dwo): Likewise.
13047         (init_cutu_and_read_dies): Likewise.
13048         (init_cutu_and_read_dies_no_follow): Likewise.
13049         (process_psymtab_comp_unit_reader): Likewise.
13050         (partial_die_parent_scope): Likewise.
13051         (peek_die_abbrev): Likewise.
13052         (process_queue): Likewise.
13053         (dwarf2_physname): Likewise.
13054         (read_namespace_alias): Likewise.
13055         (read_import_statement): Likewise.
13056         (create_dwo_cu_reader): Likewise.
13057         (create_cus_hash_table): Likewise.
13058         (lookup_dwo_cutu): Likewise.
13059         (inherit_abstract_dies): Likewise.
13060         (read_func_scope): Likewise.
13061         (read_call_site_scope): Likewise.
13062         (dwarf2_add_member_fn): Likewise.
13063         (read_common_block): Likewise.
13064         (read_module_type): Likewise.
13065         (read_typedef): Likewise.
13066         (read_subrange_type): Likewise.
13067         (load_partial_dies): Likewise.
13068         (read_partial_die): Likewise.
13069         (find_partial_die): Likewise.
13070         (read_str_index): Likewise.
13071         (dwarf2_string_attr): Likewise.
13072         (build_error_marker_type): Likewise.
13073         (lookup_die_type): Likewise.
13074         (dump_die_shallow): Likewise.
13075         (follow_die_ref): Likewise.
13076         (dwarf2_fetch_die_loc_sect_off): Likewise.
13077         (dwarf2_fetch_constant_bytes): Likewise.
13078         (follow_die_sig): Likewise.
13079         (get_signatured_type): Likewise.
13080         (get_DW_AT_signature_type): Likewise.
13081         (dwarf2_find_containing_comp_unit): Likewise.
13082         (set_die_type): Likewise.
13083
13084 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13085
13086         * arch/aarch64.c: Include "common-defs.h".
13087         * arch/amd64.c: Likewise.
13088         * arch/i386.c: Likewise.
13089
13090 2018-02-21  Tom Tromey  <tom@tromey.com>
13091
13092         * value.h: (extract_field_op): Update.
13093         * eval.c (extract_field_op): Return a const char *.
13094         * expression.h (parse_expression_for_completion): Update.
13095         * completer.c (complete_expression): Update.
13096         (add_struct_fields): Make fieldname const.
13097         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13098         (mark_completion_tag, parse_exp_in_context_1): Update.
13099         (parse_expression_for_completion): Change "name" to
13100         unique_xmalloc_ptr*.
13101
13102 2018-02-21  Tom Tromey  <tom@tromey.com>
13103
13104         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13105
13106 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13107
13108         * avr-tdep.c (avr_read_pc): Change parameter type to
13109         readable_regcache.
13110         * gdbarch.sh (read_pc): Likewise.
13111         * gdbarch.c: Re-generated.
13112         * gdbarch.h: Re-generated.
13113         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13114         readable_regcache.
13115         * ia64-tdep.c (ia64_read_pc): Likewise.
13116         * mips-tdep.c (mips_read_pc): Likewise.
13117         * spu-tdep.c (spu_read_pc): Likewise.
13118
13119 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13120
13121         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13122         * regcache-dump.c: New file.
13123         * regcache.c: Move register_dump to regcache-dump.c.
13124         (maintenance_print_registers): Likewise.
13125         (maintenance_print_raw_registers): Likewise.
13126         (maintenance_print_cooked_registers): Likewise.
13127         (maintenance_print_register_groups): Likewise.
13128         (maintenance_print_remote_registers): Likewise.
13129         (_initialize_regcache): Likewise.
13130         * regcache.h (register_dump): Moved from regcache.c.
13131
13132 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13133
13134         * regcache.c (regcache::regcache): Update.
13135         (regcache::invalidate): Move it to detached_regcache::invalidate.
13136         (get_thread_arch_aspace_regcache): Update.
13137         (regcache::raw_update): Update.
13138         (regcache::cooked_read): Remove some code.
13139         (regcache::cooked_read_value): Likewise.
13140         (regcache::raw_write): Remove assert on m_readonly_p.
13141         (regcache::raw_supply_integer): Move it to
13142         detached_regcache::raw_supply_integer.
13143         (regcache::raw_supply_zeroed): Likewise.
13144         * regcache.h (detached_regcache) <raw_supply_integer>: New
13145         declaration.
13146         <raw_supply_zeroed, invalidate>: Likewise.
13147         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13148         <invalidate>: Likewise.
13149         <m_readonly_p>: Removed.
13150
13151 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13152
13153         * infcmd.c (get_return_value): Let stop_regs point to
13154         get_current_regcache.
13155         * regcache.c (regcache::regcache): Remove.
13156         (register_dump_reg_buffer): New class.
13157         (regcache_print): Adjust.
13158         * regcache.h (regcache): Remove constructors.
13159
13160 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13161
13162         * regcache.c (class register_dump): New class.
13163         (register_dump_regcache, register_dump_none): New class.
13164         (register_dump_remote, register_dump_groups): New class.
13165         (regcache_print): Update.
13166         * regcache.h (regcache_dump_what): Move it to regcache.c.
13167         (regcache) <dump>: Remove.
13168
13169 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13170
13171         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13172          reg_buffer_rw *.
13173         (jit_unwind_reg_set_impl): Call raw_supply.
13174         (jit_frame_sniffer): Use reg_buffer_rw.
13175         * record-full.c (record_full_core_regbuf): Change its type.
13176         (record_full_core_open_1): Use reg_buffer_rw.
13177         (record_full_close): Likewise.
13178         (record_full_core_fetch_registers): Use regcache->raw_supply.
13179         (record_full_core_store_registers): Likewise.
13180         * regcache.c (regcache::get_register_status): Move it to
13181         reg_buffer.
13182         (regcache_raw_set_cached_value): Remove.
13183         (regcache::raw_set_cached_value): Remove.
13184         (regcache::raw_write): Call raw_supply.
13185         (regcache::raw_supply): Move it to reg_buffer_rw.
13186         * regcache.h (regcache_raw_set_cached_value): Remove.
13187         (reg_buffer_rw): New class.
13188
13189 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13190
13191         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13192         readonly_detached_regcache.
13193         (dummy_frame_prev_register): Use regcache->cooked_read.
13194         * frame.c (frame_save_as_regcache): Change return type.
13195         (frame_pop): Update.
13196         * frame.h (frame_save_as_regcache): Update declaration.
13197         * inferior.h (get_infcall_suspend_state_regcache): Update
13198         declaration.
13199         * infrun.c (infcall_suspend_state) <registers>: use
13200         readonly_detached_regcache.
13201         (save_infcall_suspend_state): Don't use regcache_dup.
13202         (get_infcall_suspend_state_regcache): Change return type.
13203         * linux-fork.c (struct fork_info) <savedregs>: Change to
13204         readonly_detached_regcache.
13205         <pc>: New field.
13206         (fork_save_infrun_state): Don't use regcache_dup.
13207         (info_checkpoints_command): Adjust.
13208         * mi/mi-main.c (register_changed_p): Update declaration.
13209         (mi_cmd_data_list_changed_registers): Use
13210         readonly_detached_regcache.
13211         (register_changed_p): Change parameter type to
13212         readonly_detached_regcache.
13213         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13214         readonly_detached_regcache.
13215         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13216         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13217         New.
13218         (regcache::save): Move it to reg_buffer.
13219         (regcache::restore): Change parameter type.
13220         (regcache_dup): Remove.
13221         * regcache.h (reg_buffer) <save>: New method.
13222         (readonly_detached_regcache): New class.
13223         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13224         readonly_detached_regcache.
13225         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13226
13227 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13228
13229         * frame.c (frame_save_as_regcache): Use regcache method save.
13230         (frame_pop): Use regcache method restore.
13231         * infrun.c (restore_infcall_suspend_state): Likewise.
13232         * linux-fork.c (fork_load_infrun_state): Likewise.
13233         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13234         save.
13235         * regcache.c (regcache_save): Remove.
13236         (regcache::restore): More asserts.
13237         (regcache_cpy): Remove.
13238         * regcache.h (regcache_save): Remove the declaration.
13239         (regcache::restore): Move from private to public.
13240         Remove the friend declaration of regcache_cpy.
13241         (regcache_cpy): Remove declaration.
13242
13243 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13244
13245         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13246         parameter type to 'readable_regcache *'.
13247         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13248         * arm-tdep.c (arm_neon_quad_read): Likewise.
13249         (arm_pseudo_read): Likewise.
13250         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13251         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13252         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13253         * gdbarch.c: Re-generated.
13254         * gdbarch.h: Re-generated.
13255         * gdbarch.sh (pseudo_register_read): Change parameter type to
13256         'readable_regcache *'.
13257         (pseudo_register_read_value): Likewise.
13258         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13259         (h8300_pseudo_register_read): Likewise.
13260         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13261         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13262         (i386_pseudo_register_read_into_value): Likewise.
13263         (i386_pseudo_register_read_value): Likewise.
13264         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13265         declaration.
13266         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13267         * m32c-tdep.c (m32c_raw_read): Likewise.
13268         (m32c_read_flg): Likewise.
13269         (m32c_banked_register): Likewise.
13270         (m32c_banked_read): Likewise.
13271         (m32c_sb_read): Likewise.
13272         (m32c_part_read): Likewise.
13273         (m32c_cat_read): Likewise.
13274         (m32c_r3r2r1r0_read): Likewise.
13275         (m32c_pseudo_register_read): Likewise.
13276         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13277         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13278         (mep_pseudo_cr64_read): Likewise.
13279         (mep_pseudo_register_read): Likewise.
13280         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13281         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13282         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13283         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13284         (regcache::cooked_read): Likewise.
13285         (regcache::cooked_read_value): Likewise.
13286         (regcache_cooked_read_signed):
13287         (regcache::cooked_read): Likewise.
13288         * regcache.h (readable_regcache): New class.
13289         (regcache): Inherit readable_regcache.  Move some methods to
13290         readable_regcache.
13291         * rl78-tdep.c (rl78_pseudo_register_read): Change
13292         parameter type to 'readable_regcache *'.
13293         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13294         (e500_pseudo_register_read): Change parameter type to
13295         'readable_regcache *'.
13296         (dfp_pseudo_register_read): Likewise.
13297         (vsx_pseudo_register_read): Likewise.
13298         (efpr_pseudo_register_read): Likewise.
13299         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13300         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13301         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13302         (sh64_pseudo_register_read): Likewise.
13303         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13304         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13305         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13306         (spu_pseudo_register_read): Likewise.
13307         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13308         (xtensa_pseudo_register_read): Likewise.
13309
13310 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13311
13312         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13313         (regcache::arch): Move it to reg_buffer::arch.
13314         (regcache::register_buffer): Likewise.
13315         (regcache::assert_regnum): Likewise.
13316         (regcache::num_raw_registers): Likewise.
13317         * regcache.h (reg_buffer): New class.
13318         (regcache): Inherit reg_buffer.
13319
13320 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13321
13322         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13323         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13324
13325 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13326
13327         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13328
13329 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13330
13331         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13332         (SFILES): Remove common/*.c files.
13333         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13334         * common/common.host: Add common reference.
13335         * configure.ac: Likewise.
13336         * configure: Regenerate.
13337
13338 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13339
13340         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13341         (block_initialize_namespace): Use new.
13342         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13343         (dwarf2_free_objfile): Use delete.
13344         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13345         (copy_type_recursive): Use new.
13346         * gdb_obstack.h (allocate_on_obstack): New.
13347
13348 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13349
13350         PR gdb/22849
13351         * inferior.c (exit_inferior_1): Reset inf->control.
13352
13353 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13354
13355         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13356         declaration.
13357
13358 2018-02-14  Pedro Alves  <palves@redhat.com>
13359
13360         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13361         frame_cleanup_after_sniffer on exception.
13362
13363 2018-02-14  Tom Tromey  <tom@tromey.com>
13364
13365         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13366         const.
13367         (solib_bfd_open): Make pathname const.
13368         * solib.c (solib_bfd_open): Make pathname const.
13369         * solib-spu.c (spu_bfd_fopen): Make name const.
13370         (spu_bfd_open): Make pathname const.
13371         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13372         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13373
13374 2018-02-14  Tom Tromey  <tom@tromey.com>
13375
13376         * symfile.c (symfile_bfd_open): Update.
13377         * source.h (openp, source_full_path_of, find_and_open_source):
13378         Change argument type to unique_xmalloc_ptr.
13379         * source.c (openp): Take a unique_xmalloc_ptr.
13380         (source_full_path_of, find_and_open_source): Likewise.
13381         (open_source_file, symtab_to_fullname): Update.
13382         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13383         unique_xmalloc_ptr.
13384         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13385         (exec_file_find): Update.
13386         * psymtab.c (psymtab_to_fullname): Update.
13387         * nto-tdep.h (nto_find_and_open_solib): Update.
13388         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13389         unique_xmalloc_ptr.
13390         * exec.c (exec_file_attach): Update.
13391         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13392         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13393
13394 2018-02-14  Tom Tromey  <tom@tromey.com>
13395
13396         * solib.c: Include source.h.
13397         * nto-tdep.c: Include source.h.
13398         * mi/mi-cmd-env.c: Include source.h.
13399         * infcmd.c: Include source.h.
13400         * exec.c: Include source.h.
13401         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13402         (add_path, directory_switch, source_path, init_source_path): Move
13403         declarations...
13404         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13405         (add_path, directory_switch, source_path, init_source_path):
13406         ...here.
13407
13408 2018-02-14  Tom Tromey  <tom@tromey.com>
13409
13410         * solist.h (exec_file_find, solib_find): Return
13411         unique_xmalloc_ptr.
13412         (solib_bfd_fopen): Take a const char *.
13413         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13414         (exec_file_find, solib_find): Likewise.
13415         (solib_bfd_fopen): Do not take ownership of "pathname".
13416         (solib_bfd_open): Use unique_xmalloc_ptr.
13417         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13418         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13419         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13420         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13421
13422 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13423
13424         * ada-lang.c (name_match_type_from_name): Remove reference to
13425         ada_name_for_lookup in function's documentation.
13426         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13427
13428 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13429
13430         * defs.h (enum openp_flags): New enum.
13431         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13432         Move to enum openp_flags.
13433         (openp_flags): New enum flags.
13434         (openp): Change parameter type to openp_flags.
13435         * source.c (openp): Change parameter type to openp_flags.
13436         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13437         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13438
13439 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13440
13441         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13442         per-command.
13443
13444 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13445
13446         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13447         into...
13448         (class dwarf2_queue_guard): ...the destructor of this new class.
13449         (dw2_do_instantiate_symtab): Create instance of the new class
13450         dwarf2_queue_guard, remove cleanup.
13451
13452 2018-02-09  Tom Tromey  <tom@tromey.com>
13453
13454         * source.c (find_source_lines): Don't reference past the end of
13455         the vector.
13456
13457 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13458
13459         * remote.c (remote_btrace_maybe_reopen): Change error message.
13460         * btrace.c (btrace_enable): Likewise.
13461         (parse_xml_btrace): Likewise.
13462         (parse_xml_btrace_conf): Likewise.
13463
13464 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13465
13466         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13467         (linux_enable_pt, linux_enable_bts): Call
13468         diagnose_perf_event_open_fail.
13469
13470 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13471
13472         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13473         Remove parameter and change return type.  Update callers.  Move it.
13474         (linux_enable_bts, linux_enable_pt): Improve error message.
13475         (linux_enable_pt): Remove zero buffer size check.
13476         (linux_enable_btrace): Improve error messages.  Remove NULL return
13477         check.
13478
13479 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13480
13481         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13482         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13483         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13484         (linux_supports_pt, linux_supports_btrace): Remove.
13485         (linux_enable_bts): Call cpu_supports_bts.
13486         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13487         * remote.c (remote_supports_btrace): Remove.
13488         (init_remote_ops): Remove remote_supports_btrace.
13489         * target-delegates.c: Regenerated.
13490         * target.c (target_supports_btrace): Remove.
13491         * target.h (target_ops) <to_supports_btrace>: Remove
13492         (target_supports_btrace): Remove.
13493         * x86-linux-nat.c (x86_linux_create_target): Remove
13494         linux_supports_btrace.
13495
13496 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13497
13498         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13499         btrace failed.
13500         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13501         exception and use message in own exception.
13502
13503 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13504
13505         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13506         (perf_event_pt_event_type): Use gdb_file_up.
13507         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13508         scoped_fd, and scoped_mmap.
13509
13510 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13511
13512         * common/scoped_mmap.h: New.
13513         * unittests/scoped_mmap-selftest.c: New.
13514         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13515         unittests/scoped_mmap-selftest.c.
13516
13517 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13518
13519         * common/scoped_fd.h: New.
13520         * unittests/scoped_fd-selftest.c: New.
13521         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13522         unittests/scoped_fd-selftest.c.
13523
13524 2018-02-09  Tom Tromey  <tom@tromey.com>
13525
13526         * auto-load.c (auto_load_section_scripts): Use
13527         gdb::unique_xmalloc_ptr.
13528
13529 2018-02-09  Tom Tromey  <tom@tromey.com>
13530
13531         * auto-load.c (execute_script_contents): Use std::string.
13532
13533 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13534
13535         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13536         Python function, rather than a new command.
13537
13538 2018-02-08  Tom Tromey  <tom@tromey.com>
13539
13540         * solib.c (solib_find_1): Use std::string.
13541         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13542
13543 2018-02-08  Tom Tromey  <tom@tromey.com>
13544
13545         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13546
13547 2018-02-08  Tom Tromey  <tom@tromey.com>
13548
13549         * source.c (find_source_lines): Use gdb::def_vector.
13550
13551 2018-02-08  Tom Tromey  <tom@tromey.com>
13552
13553         * macrocmd.c (struct temporary_macro_definition): New.
13554         (macro_define_command): Use temporary_macro_definition.  Remove
13555         cleanups.
13556         (free_macro_definition_ptr): Remove.
13557
13558 2018-02-08  Tom Tromey  <tom@tromey.com>
13559
13560         * macroexp.c (maybe_expand): Use std::string.
13561
13562 2018-02-08  Tom Tromey  <tom@tromey.com>
13563
13564         * macroexp.c (struct macro_buffer): Add initializers for some
13565         members.
13566         (init_buffer, init_shared_buffer, free_buffer)
13567         (free_buffer_return_text): Remove.
13568         (macro_buffer): New constructors.
13569         (~macro_buffer): New destructor.
13570         (macro_buffer::set_shared): New method.
13571         (macro_buffer::resize_buffer, macro_buffer::appendc)
13572         (macro_buffer::appendmem): Now methods, not free functions.
13573         (set_token, append_tokens_without_splicing, stringify)
13574         (macro_stringify): Update.
13575         (gather_arguments): Change return type.  Remove argc_p argument,
13576         add args_ptr argument.  Use std::vector.
13577         (substitute_args): Remove argc argument.  Accept std::vector.
13578         (expand): Update.  Use std::vector.
13579         (scan, macro_expand, macro_expand_next): Update.
13580
13581 2018-02-08  Tom Tromey  <tom@tromey.com>
13582
13583         * symtab.c (default_collect_symbol_completion_matches_break_on):
13584         Use unique_xmalloc_ptr.
13585         * macroscope.h: (sal_macro_scope, user_macro_scope)
13586         (default_macro_scope): Return unique_xmalloc_ptr.
13587         * macroscope.c (sal_macro_scope, user_macro_scope)
13588         (default_macro_scope): Return unique_xmalloc_ptr.
13589         * macroexp.h (macro_expand, macro_expand_once): Return
13590         unique_xmalloc_ptr.
13591         * macroexp.c (macro_expand, macro_expand_once): Return
13592         unique_xmalloc_ptr.
13593         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13594         (info_macro_command, info_macros_command): Use
13595         unique_xmalloc_ptr.
13596         * compile/compile-c-support.c (write_macro_definitions): Use
13597         unique_xmalloc_ptr.
13598         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13599
13600 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13601
13602         * value.c (value_static_field): Assign field type instead of
13603         containing type when returning an optimized out value.
13604
13605 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13606
13607         * ft32-tdep.c (ft32_read_pc): Remove.
13608         (ft32_write_pc): Remove.
13609         (ft32_gdbarch_init): Update.
13610         * m32r-tdep.c (m32r_read_pc): Remove.
13611         (m32r_gdbarch_init): Update.
13612         * mep-tdep.c (mep_read_pc): Remove.
13613         (mep_gdbarch_init): Update.
13614         * microblaze-tdep.c (microblaze_write_pc): Remove.
13615         (microblaze_gdbarch_init): Update.
13616         * mn10300-tdep.c (mn10300_read_pc): Remove.
13617         (mn10300_write_pc): Remove.
13618         (mn10300_gdbarch_init): Update.
13619         * moxie-tdep.c (moxie_read_pc): Remove.
13620         (moxie_write_pc): Remove.
13621         (moxie_gdbarch_init): Update.
13622
13623 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13624
13625         * expprint.c (print_subexp_standard): Handle
13626         OP_F77_UNDETERMINED_ARGLIST.
13627         (dump_subexp_body_standard): Likewise.
13628
13629 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13630
13631         * target-descriptions.c (tdesc_element_visitor) Add empty
13632         implementations.
13633         (tdesc_type): Move make_gdb_type from here.
13634         (tdesc_type_builtin): Likewise.
13635         (tdesc_type_vector): Likewise.
13636         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13637         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13638         (make_gdb_type_union): Likewise.
13639         (make_gdb_type_flags): Likewise.
13640         (make_gdb_type_enum): Likewise.
13641         (make_gdb_type): New function.
13642         (tdesc_register_type): Use static make_gdb_type.
13643
13644 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13645
13646         * infcmd.c (default_print_one_register_info): Align natural-format
13647         column values consistently one under another.
13648         (pad_to_column): New function.
13649
13650 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13651
13652         * dwarf2read.c (dwarf2_physname): Move commment.
13653
13654 2018-02-01  Leszek Swirski  <leszeks@google.com>
13655
13656         * varobj.c (varobj_formatted_print_options): Allow recursive
13657         pretty printing if pretty printing is enabled.
13658
13659 2018-02-01  Leszek Swirski  <leszeks@google.com>
13660
13661         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13662         names after a structop as a filename.
13663
13664 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13665
13666         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13667         (arm_record_coproc_data_proc): Likewise.
13668
13669 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13670
13671         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13672
13673 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13674
13675         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13676         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13677
13678 2018-01-31  Pedro Alves  <palves@redhat.com>
13679
13680         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13681         * inflow.c (child_terminal_save_inferior): Wrap reference to
13682         tcgetpgrp in HAVE_TERMIOS_H.
13683         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13684         _WIN32.
13685         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13686         always iterate over all inferiors.
13687         (gdbsim_cntrl_c): Adjust.
13688         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13689
13690 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13691
13692         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13693         index type is objfile-owned if the element type is as well.
13694
13695 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13696
13697         GDB 8.1 released.
13698
13699 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13700
13701         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13702         "features/s390x-linux64.c".
13703         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13704         s390_linux32 and s390x_linux64.
13705         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13706         default tdesc.
13707         * s390-tdep.c: Include "features/s390-linux32.c" and
13708         "features/s390x-linux64.c".
13709         (s390_tdesc_valid): Add check for tdesc_has_registers.
13710         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13711         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13712         tdesc_s390x_linux64.
13713         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13714         tdesc_s390x_linux64 to...
13715         * s390-tdep.h: ...here.
13716
13717 2018-01-30  Pedro Alves  <palves@redhat.com>
13718
13719         PR gdb/13211
13720         * config.in, configure: Regenerate.
13721         * configure.ac: Check for getpgid.
13722         * go32-nat.c (go32_pass_ctrlc): New.
13723         (go32_target): Install it.
13724         * inf-child.c (inf_child_target): Install
13725         child_terminal_save_inferior, child_pass_ctrlc and
13726         child_interrupt.
13727         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13728         (inf_ptrace_target): No longer install it.
13729         * infcmd.c (interrupt_target_1): Adjust.
13730         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13731         (child_interrupt): Declare.
13732         (inferior::terminal_state): New.
13733         * inflow.c (struct terminal_info): Update comments.
13734         (inferior_process_group): Delete.
13735         (terminal_is_ours): Delete.
13736         (gdb_tty_state): New.
13737         (child_terminal_init): Adjust.
13738         (is_gdb_terminal, sharing_input_terminal_1)
13739         (sharing_input_terminal): New functions.
13740         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13741         Set the process's actual process group in the foreground if
13742         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13743         mark terminal as the inferior's if not sharing GDB's terminal.
13744         Don't check attach_flag.
13745         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13746         pass down a target_terminal_state.
13747         (child_terminal_save_inferior): New, factored out from ...
13748         (child_terminal_ours_1): ... this.  Handle
13749         target_terminal_state::is_ours_for_output.
13750         (child_interrupt, child_pass_ctrlc): New.
13751         (inflow_inferior_exit): Clear the inferior's terminal_state.
13752         (copy_terminal_info): Copy the inferior's terminal state.
13753         (_initialize_inflow): Remove reference to terminal_is_ours.
13754         * inflow.h (inferior_process_group): Delete.
13755         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13756         * procfs.c (procfs_target): Don't install procfs_interrupt.
13757         (procfs_interrupt): Delete.
13758         * remote.c (remote_serial_quit_handler): Adjust.
13759         (remote_interrupt): Remove ptid parameter.  Adjust.
13760         * target-delegates.c: Regenerate.
13761         * target.c: Include "terminal.h".
13762         (target_terminal::terminal_state): Rename to ...
13763         (target_terminal::m_terminal_state): ... this.
13764         (target_terminal::init): Adjust.
13765         (target_terminal::inferior): Adjust to per-inferior
13766         terminal_state.
13767         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13768         (target_terminal::ours, target_terminal::ours_for_output): Use
13769         target_terminal_is_ours_kind.
13770         (target_interrupt): Remove ptid parameter.  Adjust.
13771         (default_target_pass_ctrlc): Adjust.
13772         * target.h (target_ops::to_terminal_save_inferior): New field.
13773         (target_ops::to_interrupt): Remove ptid_t parameter.
13774         (target_interrupt): Remove ptid_t parameter.  Update comment.
13775         (target_pass_ctrlc): Update comment.
13776         * target/target.h (target_terminal_state): New scoped enum,
13777         factored out of ...
13778         (target_terminal::terminal_state): ... here.
13779         (target_terminal::inferior): Update comments.
13780         (target_terminal::restore_inferior): New.
13781         (target_terminal::is_inferior, target_terminal::is_ours)
13782         (target_terminal::is_ours_for_output): Adjust.
13783         (target_terminal::scoped_restore_terminal_state): Adjust to
13784         rename, and call restore_inferior() instead of inferior().
13785         (target_terminal::scoped_restore_terminal_state::m_state): Change
13786         type.
13787         (target_terminal::terminal_state): Rename to ...
13788         (target_terminal::m_terminal_state): ... this and change type.
13789
13790 2018-01-30  Pedro Alves  <palves@redhat.com>
13791
13792         * linux-nat.c (wait_for_signal): New function.
13793         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13794         directly.
13795         (async_terminal_is_ours)
13796         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13797         (linux_nat_add_target): Don't override
13798         to_terminal_inferior/to_terminal_ours.
13799
13800 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13801
13802         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13803
13804 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13805
13806         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13807         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13808         dwarf2_per_objfile_free here.
13809         (dwarf2_per_objfile_free): Remove.
13810         (_initialize_dwarf2_read): Don't register
13811         dwarf2_per_objfile_free as a registry cleanup.
13812
13813 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13814
13815         Avoid compilation errors in MinGW native builds
13816
13817         The error is triggered by including python-internal.h, and the
13818         error message is:
13819
13820              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13821                       from build-gnulib/import/math.h:27,
13822                       from d:/usr/Python26/include/pyport.h:235,
13823                       from d:/usr/Python26/include/Python.h:58,
13824                       from python/python-internal.h:94,
13825                       from python/py-arch.c:24:
13826              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13827         using ::hypot;
13828                 ^~~~~
13829
13830         This happens because Python headers define 'hypot' to expand t
13831         '_hypot' in the Windows builds.
13832         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13833         'hypoth'.  This avoids a compilation error.
13834
13835 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13836
13837         * MAINTAINERS (Write After Approval): Fix ordering.
13838
13839 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13840
13841         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13842
13843 2018-01-26  Alan Modra  <amodra@gmail.com>
13844
13845         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13846         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13847         Remove nop.  Make const.  Comment.
13848         (powerpc32_plt_stub_so_2): New.
13849         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13850         Correct count.  Update uses.
13851         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13852         Move common code reading PLT entry word.  Correct
13853         powerpc32_plt_stub PLT address calculation.
13854         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13855         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13856         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13857         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13858         (ppc64_standard_linkage8): Likewise.
13859         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13860         Correct insns description.
13861         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13862
13863 2018-01-24  Pedro Alves  <palves@redhat.com>
13864
13865         GCC PR libstdc++/83906
13866         * gdbtypes.c (operator==(const dynamic_prop &,
13867         const dynamic_prop &)): New.
13868         (operator==(const range_bounds &, const range_bounds &)): New.
13869         (check_types_equal): Use them instead of memcmp.
13870         * gdbtypes.h (operator==(const dynamic_prop &,
13871         const dynamic_prop &)): Declare.
13872         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13873         (operator==(const range_bounds &, const range_bounds &)): Declare.
13874         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13875
13876 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13877
13878         * s390-linux-tdep.c (s390_record_address_mask)
13879         (s390_record_calc_disp_common, s390_record_calc_disp)
13880         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13881         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13882         (s390_process_record): Move to s390-tdep.c.
13883         (s390_linux_init_abi_any): Adjust.
13884         * s390-tdep.c (s390_record_address_mask)
13885         (s390_record_calc_disp_common, s390_record_calc_disp)
13886         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13887         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13888         (s390_process_record): Moved from s390-linux-tdep.c
13889         (s390_gdbarch_init): Adjust.
13890
13891 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13892
13893         * s390-linux-nat.c (s390-tdep.h): New include.
13894         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13895         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13896         (ALLDEPFILES): Add s390-tdep.c.
13897         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13898         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13899         * s390-tdep.h: ...this.  New file.
13900         * s390-linux-tdep.c (s390-tdep.h): New include.
13901         (_initialize_s390_tdep): Rename to...
13902         (_initialize_s390_linux_tdep): ...this and adjust.
13903         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13904         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13905         s390-tdep.h.
13906         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13907         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13908         (s390_is_partial_instruction, s390_software_single_step)
13909         (is_non_branch_ril, s390_displaced_step_copy_insn)
13910         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13911         (s390_prologue_data, s390_addr, s390_store, s390_load)
13912         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13913         (s390_register_call_saved, s390_guess_tracepoint_registers)
13914         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13915         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13916         (s390_pseudo_register_name, s390_pseudo_register_type)
13917         (s390_pseudo_register_read, s390_pseudo_register_write)
13918         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13919         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13920         (s390_addr_bits_remove, s390_address_class_type_flags)
13921         (s390_address_class_type_flags_to_name)
13922         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
13923         (s390_function_arg_float, s390_function_arg_vector)
13924         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
13925         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
13926         (s390_frame_align, s390_register_return_value, s390_return_value)
13927         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
13928         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
13929         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
13930         (s390_trad_frame_prev_register, s390_unwind_cache)
13931         (s390_prologue_frame_unwind_cache)
13932         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
13933         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
13934         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
13935         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
13936         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
13937         (s390_frame_base_address, s390_local_base_address)
13938         (s390_frame_base, s390_gcc_target_options)
13939         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
13940         (s390_validate_reg_range, s390_tdesc_valid)
13941         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
13942         * s390-tdep.c: ...this.  New file.
13943
13944 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13945
13946         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
13947         (s390_process_record, s390_gdbarch_tdep_alloc)
13948         (s390_linux_init_abi_any): Use/set new hook.
13949
13950 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13951
13952         * s390-linux-tdep.c (osabi.h): New include.
13953         (s390_linux_init_abi_31, s390_linux_init_abi_64)
13954         (s390_linux_init_abi_any): New functions.
13955         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
13956
13957 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13958
13959         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
13960         tdesc_has_registers check
13961
13962 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13963
13964         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13965         (s390_validate_reg_range): New macro.
13966         (s390_gdbarch_init): Adjust.
13967
13968 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13969
13970         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13971         (s390_gdbarch_tdep_alloc): Adjust.
13972         (s390_gdbarch_init): Adjust.
13973
13974 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13975
13976         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13977         <have_tdb>: Change type to bool.
13978         (s390_gdbarch_tdep_alloc): Adjust.
13979         (s390_gdbarch_init): Adjust.
13980
13981 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13982
13983         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13984         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13985         (s390_gdbarch_tdep_alloc): New function.
13986         (s390_gdbarch_init): Allocate tdep at start and use its fields
13987         instead of separate variables.
13988
13989 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13990
13991         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13992         when looking for cached gdbarch and add comment for remaining.
13993
13994 2018-01-22  Pedro Alves  <palves@redhat.com>
13995             Sergio Durigan Junior  <sergiodj@redhat.com>
13996
13997         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13998         case.
13999
14000 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14001
14002         * MAINTAINERS: Update my company e-mail address.
14003
14004 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14005
14006         * regcache.c (cooked_write_test): New function.
14007         (_initialize_regcache): Register the test.
14008
14009 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14010
14011         * ia64-tdep.c (ia64_pseudo_register_read): Call
14012         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14013         * m32c-tdep.c (m32c_cat_read): Likewise.
14014         (m32c_r3r2r1r0_read): Likewise.
14015         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14016         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14017
14018 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14019
14020         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14021         method raw_read instead of regcache_raw_read.
14022         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14023         * arm-tdep.c (arm_neon_quad_read): Likewise.
14024         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14025         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14026         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14027         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14028         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14029         (i386_pseudo_register_read_into_value): Likewise.
14030         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14031         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14032         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14033         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14034         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14035         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14036         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14037         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14038         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14039
14040 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14041
14042         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14043         * configure.tgt: Remove target mt.
14044         * mt-tdep.c: Remove.
14045         * regcache.c (cooked_read_test): Remove the check for mt.
14046
14047 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14048
14049         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14050         instead of gdbarch_pseudo_register_read_value.
14051
14052 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14053
14054         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14055         language is Ada.
14056
14057 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14058
14059         * linespec.c (create_sals_line_offset): Remove code that preserved
14060         the symtab_and_line's line number.
14061
14062 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14063
14064         * varobj.c (varobj_create): Don't set valid_block when creating a
14065         floating varobj.
14066
14067 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14068
14069         * varobj.c (varobj_create): Remove out of date comment.
14070
14071 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14072
14073         PR mi/20395
14074         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14075         updating innermost block.
14076         * parse.c (innermost_block_tracker::update): Take extra type
14077         parameter, and check types match before updating innermost block.
14078         (write_dollar_variable): Update innermost block for registers.
14079         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14080         (innermost_block_tracker::innermost_block_tracker): Initialise
14081         m_types member.
14082         (innermost_block_tracker::reset): Take type parameter.
14083         (innermost_block_tracker::update): Take type parameter, and pass
14084         type through as needed.
14085         (innermost_block_tracker::m_types): New member.
14086         * varobj.c (varobj_create): Pass type when reseting innermost
14087         block.
14088
14089 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14090
14091         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14092         * ada-lang.c (resolve_subexp): Likewise.
14093         * breakpoint.c (set_breakpoint_condition) Likewise.
14094         (watch_command_1) Likewise.
14095         * c-exp.y (variable): Likewise.
14096         * d-exp.y (PrimaryExpression): Likewise.
14097         * f-exp.y (variable): Likewise.
14098         * go-exp.y (variable): Likewise.
14099         * m2-exp.y (variable): Likewise.
14100         * objfiles.c (objfile::~objfile): Likewise.
14101         * p-exp.y (variable): Likewise.
14102         * parse.c (innermost_block): Change type.
14103         * parser-defs.h (class innermost_block_tracker): New.
14104         (innermost_block): Change to innermost_block_tracker.
14105         * printcmd.c (display_command): Switch to innermost_block API.
14106         (do_one_display): Likewise.
14107         * rust-exp.y (do_one_display): Likewise.
14108         * symfile.c (clear_symtab_users): Likewise.
14109         * varobj.c (varobj_create): Switch to innermost_block API, replace
14110         use of innermost_block with block stored on varobj object.
14111
14112 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14113
14114         * expression.h (innermost_block): Remove declaration.
14115         * varobj.c: Add 'parser-defs.h' include.
14116
14117 2018-01-19  Tom Tromey  <tom@tromey.com>
14118
14119         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14120         symbols in the static and global blocks.
14121
14122 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14123
14124         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14125         gdb_ptrace.h, and move including gdb_wait.h ...
14126         * nat/linux-ptrace.h: ... to here.
14127
14128 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14129
14130         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14131         inf_ptrace_detach_success.
14132         (inf_ptrace_detach_success): Add inferior parameter, use it
14133         instead of inferior_ptid, pass it to detach_inferior.
14134         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14135         parameter.
14136         * inferior.c (detach_inferior): Add overload that takes an
14137         inferior object.
14138         * inferior.h (detach_inferior): Likewise.
14139         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14140         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14141         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14142
14143 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14144
14145         * target.h (struct target_ops) <to_detach>: Add inferior
14146         parameter.
14147         (target_detach): Likewise.
14148         * target.c (dispose_inferior): Pass inferior down.
14149         (target_detach): Pass inferior down.  Assert that it is equal to
14150         the current inferior.
14151         * aix-thread.c (aix_thread_detach): Pass inferior down.
14152         * corefile.c (core_file_command): Pass current_inferior() down.
14153         * corelow.c (core_detach): Add inferior parameter.
14154         * darwin-nat.c (darwin_detach): Likewise.
14155         * gnu-nat.c (gnu_detach): Likewise.
14156         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14157         * infcmd.c (detach_command): Pass current_inferior() down to
14158         target_detach.
14159         * infrun.c (follow_fork_inferior): Pass parent_inf to
14160         target_detach.
14161         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14162         target_detach.
14163         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14164         * linux-thread-db.c (thread_db_detach): Likewise.
14165         * nto-procfs.c (procfs_detach): Likewise.
14166         * procfs.c (procfs_detach): Likewise.
14167         * record.c (record_detach): Likewise.
14168         * record.h (struct inferior): Forward-declare.
14169         (record_detach): Add inferior parameter.
14170         * remote-sim.c (gdbsim_detach): Likewise.
14171         * remote.c (remote_detach_1): Likewise.
14172         (remote_detach): Likewise.
14173         (extended_remote_detach): Likewise.
14174         * sol-thread.c (sol_thread_detach): Likewise.
14175         * target-debug.h (target_debug_print_inferior_p): New macro.
14176         * target-delegates.c: Re-generate.
14177         * top.c (kill_or_detach): Pass inferior down to target_detach.
14178         * windows-nat.c (windows_detach): Add inferior parameter.
14179
14180 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14181
14182         * target.h (struct target_ops) <to_detach>: Remove args
14183         parameter.
14184         (target_detach): Likewise.
14185         * target.c (dispose_inferior): Adjust.
14186         (target_detach): Remove args parameter, adjust.
14187         * aix-thread.c (aix_thread_detach): Adjust.
14188         * corefile.c (core_file_command): Adjust.
14189         * corelow.c (core_detach): Adjust.
14190         * darwin-nat.c (darwin_detach): Adjust.
14191         * gnu-nat.c (gnu_detach): Adjust.
14192         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14193         * infcmd.c (detach_command): Adjust
14194         * infrun.c (follow_fork_inferior): Adjust.
14195         (handle_vfork_child_exec_or_exit): Adjust.
14196         * linux-fork.c (linux_fork_detach): Remove args parameter.
14197         * linux-fork.h (linux_fork_detach): Likewise.
14198         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14199         * linux-thread-db.c (thread_db_detach): Likewise.
14200         * nto-procfs.c (procfs_detach): Likewise.
14201         * procfs.c (procfs_detach): Likewise.
14202         (do_detach): Remove signo parameter.
14203         * record.c (record_detach): Remove args parameter.
14204         * record.h (record_detach): Likewise.
14205         * remote-sim.c (gdbsim_detach): Likewise.
14206         * remote.c (remote_detach_1): Likewise.
14207         (remote_detach): Likewise.
14208         (extended_remote_detach): Likewise.
14209         * sol-thread.c (sol_thread_detach): Likewise.
14210         * target-delegates.c: Re-generate.
14211         * top.c (struct qt_args) <args>: Remove field.
14212         (kill_or_detach): Don't pass args.
14213         (quit_force): Don't set args.
14214         * windows-nat.c (windows_detach): Remove args parameter.
14215
14216 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14217
14218         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14219         (arm_linux_init_abi): Install it.
14220
14221 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14222
14223         * osabi.c (gdb_osabi_names): Extend the regexp for
14224         arm-linux-gnueabihf.
14225
14226 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14227
14228         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14229         m_abbrevs.
14230         (abbrev_table::add_abbrev): Update.
14231         (abbrev_table::lookup_abbrev): Update.
14232
14233 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14234
14235         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14236
14237 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14238
14239         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14240         to "std::string".
14241
14242 2018-01-17  Tom Tromey  <tom@tromey.com>
14243
14244         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14245
14246 2018-01-17  Tom Tromey  <tom@tromey.com>
14247
14248         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14249         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14250         (create_array_type_with_stride): Update.
14251         * dwarf2read.c (set_die_type): Update.
14252
14253 2018-01-17  Tom Tromey  <tom@tromey.com>
14254
14255         * dwarf2read.c (delayed_method_info): Remove typedef.
14256         (dwarf2_cu::method_info): Now a std::vector.
14257         (add_to_method_list): Update.
14258         (free_delayed_list): Remove.
14259         (compute_delayed_physnames): Update.
14260         (process_full_comp_unit, process_full_type_unit): Clear the method
14261         list.  Remove cleanups.
14262         (psymtab_include_file_name): Add name_holder parameter.  Use
14263         unique_xmalloc_ptr.
14264         (dwarf_decode_lines): Update.
14265
14266 2018-01-17  Tom Tromey  <tom@tromey.com>
14267             Simon Marchi  <simon.marchi@ericsson.com>
14268
14269         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14270         (dwarf2_per_objfile::free_cached_comp_units)
14271         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14272         (init_cutu_and_read_dies_no_follow): Update.
14273         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14274         (dwarf2_cu::~dwarf2_cu): New.
14275         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14276         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14277
14278 2018-01-17  Tom Tromey  <tom@tromey.com>
14279             Simon Marchi  <simon.marchi@ericsson.com>
14280
14281         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14282         (struct die_reader_specs) <abbrev_table>: New member.
14283         (struct abbrev_table): Add constructor.
14284         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14285         <abbrev_obstack>: Now an auto_obstack.
14286         (abbrev_table_up): New typedef.
14287         (init_cu_die_reader): Add abbrev_table parameter.
14288         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14289         Add result_dwo_abbrev_table.
14290         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14291         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14292         Update.
14293         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14294         parameter.
14295         (skip_children): Update.
14296         (abbrev_table::alloc_abbrev): Rename from
14297         abbrev_table_alloc_abbrev.
14298         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14299         (abbrev_table::lookup_abbrev): Rename from
14300         abbrev_table_lookup_abbrev.
14301         (abbrev_table_read_table): Return abbrev_table_up.
14302         (abbrev_table_free, abbrev_table_free_cleanup)
14303         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14304         (load_partial_dies): Update.
14305
14306 2018-01-17  Tom Tromey  <tom@tromey.com>
14307
14308         * dwarf2read.c (dwarf2_compute_name): Update comment.
14309         (read_func_scope, read_variable): Update.
14310         (new_symbol): Remove.
14311         (new_symbol_full): Rename to new_symbol.
14312
14313 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14314
14315         PR gdb/16577
14316         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14317         a warning instead of throwing an error, set section size to 0 and return
14318         NULL.
14319         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14320
14321 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14322
14323         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14324         std::string.
14325         (linux_ptrace_attach_fail_reason_string): Likewise.
14326         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14327         Likewise.
14328         (linux_ptrace_attach_fail_reason_string): Likewise.
14329         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14330
14331 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14332
14333         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14334
14335 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14336
14337         PR gdb/21559
14338         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14339         checking for fs_base/gs_base fields in struct user_regs_struct.
14340         * configure: Regenerate.
14341
14342 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14343
14344         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14345         function.
14346         (aarch64_linux_init_abi): Install it to gdbarch hook
14347         gcc_target_options.
14348
14349 2018-01-15  Pedro Alves  <palves@redhat.com>
14350
14351         * common/signals-state-save-restore.c
14352         (save_original_signals_state): Fix typos.
14353
14354 2017-01-12  Tom Tromey  <tom@tromey.com>
14355             Sergio Durigan Junior  <sergiodj@redhat.com>
14356
14357         * Makefile.in (install-only): Install gdb-add-index.
14358
14359 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14360
14361         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14362
14363 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14364
14365         * infrun.c (keep_going_pass_signal): Clear step-over info when
14366         insert_breakpoints fails.
14367
14368 2018-01-11  Pedro Alves  <palves@redhat.com>
14369
14370         PR gdb/22583
14371         * infrun.c (resume): Rename to ...
14372         (resume_1): ... this.
14373         (resume): Reimplement as wrapper around resume_1.
14374
14375 2018-01-11  Pedro Alves  <palves@redhat.com>
14376
14377         PR remote/22597
14378         * remote.c (remote_parse_stop_reply): Default to the last-set
14379         general thread instead of to 'magic_null_ptid'.
14380
14381 2018-01-10  Pedro Alves  <palves@redhat.com>
14382
14383         * language.h (language_get_symbol_name_matcher): Rename ...
14384         (get_symbol_name_matcher): ... this.
14385         * language.c (language_get_symbol_name_matcher): Ditto.
14386         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14387         callers adjusted.
14388
14389 2018-01-10  Pedro Alves  <palves@redhat.com>
14390
14391         PR gdb/22670
14392         * dwarf2read.c
14393         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14394         Adjust to use language_get_symbol_name_matcher instead of
14395         language_defn::la_get_symbol_name_matcher.
14396         * language.c (language_get_symbol_name_matcher): If in Ada mode
14397         and the lookup name is a verbatim match, return Ada's matcher.
14398         * language.h (language_get_symbol_name_matcher): Adjust comment.
14399         (ada_lookup_name_info::verbatim_p):: New method.
14400
14401 2018-01-10  Pedro Alves  <palves@redhat.com>
14402
14403         PR gdb/22670
14404         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14405         minsym's language is language_auto or language_cplus, pass down
14406         language_ada instead.
14407         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14408
14409 2018-01-10  Pedro Alves  <palves@redhat.com>
14410
14411         PR gdb/22670
14412         * minsyms.c (linkage_name_str): New function.
14413         (iterate_over_minimal_symbols): Use it.
14414
14415 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14416
14417         * NEWS: Document that 'info proc' now works on FreeBSD.
14418
14419 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14420
14421         * configure.ac: Check for kinfo_getfile in libutil.
14422         * configure: Regenerate.
14423         * config.in: Regenerate.
14424         * fbsd-nat.c: Include "fbsd-tdep.h".
14425         (fbsd_fetch_cmdline): New.
14426         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14427         rather than calling error.
14428         (fbsd_info_proc): New.
14429         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14430         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14431         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14432
14433 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14434
14435         * fbsd-nat.c (struct free_deleter): Remove.
14436         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14437
14438 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14439
14440         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14441         NULL for an empty pathname.
14442
14443 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14444
14445         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14446         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14447         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14448         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14449         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14450         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14451         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14452         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14453         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14454         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14455         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14456         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14457         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14458         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14459         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14460
14461 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14462
14463         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14464         (gnu_xfer_auxv): New function.
14465         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14466         TARGET_OBJECT_AUXV.
14467
14468 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14469             Simon Marchi  <simon.marchi@ericsson.com>
14470
14471         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14472         common/selftest.c.
14473         (COMMON_OBS): Remove selftest.o.
14474         * configure.ac: Append selftest-arch.c and common/selftest.c to
14475         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14476         * configure: Re-generated.
14477         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14478         GDB_SELF_TEST.
14479         (maintenance_info_selftests): Likewise.
14480
14481 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14482
14483         * ada-valprint.c (val_print_packed_array_elements): Use
14484         proper number of elements when printing an array indexed
14485         by an enumeration type.
14486
14487 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14488
14489         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14490         (dw2_get_file_names_reader): Adjust.
14491         (lookup_dwo_signatured_type): Adjust.
14492         (lookup_dwp_signatured_type): Adjust.
14493         (lookup_signatured_type): Adjust.
14494         (create_type_unit_group): Adjust.
14495         (get_type_unit_group): Adjust.
14496         (process_psymtab_comp_unit_reader): Adjust.
14497         (build_type_psymtabs_reader): Adjust.
14498         (scan_partial_symbols): Adjust.
14499         (add_partial_symbol): Adjust.
14500         (add_partial_subprogram): Adjust.
14501         (peek_die_abbrev): Adjust.
14502         (fixup_go_packaging): Adjust.
14503         (process_imported_unit_die): Adjust.
14504         (dwarf2_compute_name): Adjust.
14505         (dwarf2_physname): Adjust.
14506         (read_import_statement): Adjust.
14507         (handle_DW_AT_stmt_list): Adjust.
14508         (read_file_scope): Adjust.
14509         (read_func_scope): Adjust.
14510         (read_lexical_block_scope): Adjust.
14511         (read_call_site_scope): Adjust.
14512         (read_variable): Adjust.
14513         (dwarf2_rnglists_process): Adjust.
14514         (dwarf2_ranges_process): Adjust.
14515         (dwarf2_ranges_read): Adjust.
14516         (dwarf2_get_pc_bounds): Adjust.
14517         (dwarf2_record_block_ranges): Adjust.
14518         (dwarf2_add_field): Adjust.
14519         (dwarf2_add_member_fn): Adjust.
14520         (read_structure_type): Adjust.
14521         (process_structure_scope): Adjust.
14522         (read_enumeration_type): Adjust.
14523         (read_array_type): Adjust.
14524         (mark_common_block_symbol_computed): Adjust.
14525         (read_common_block): Adjust.
14526         (read_namespace_type): Adjust.
14527         (read_namespace): Adjust.
14528         (read_module_type): Adjust.
14529         (read_tag_pointer_type): Adjust.
14530         (read_tag_ptr_to_member_type): Adjust.
14531         (read_tag_string_type): Adjust.
14532         (read_subroutine_type): Adjust.
14533         (read_typedef): Adjust.
14534         (read_base_type): Adjust.
14535         (attr_to_dynamic_prop): Adjust.
14536         (read_subrange_type): Adjust.
14537         (read_unspecified_type): Adjust.
14538         (dwarf2_read_abbrevs): Adjust.
14539         (load_partial_dies): Adjust.
14540         (read_partial_die): Adjust.
14541         (find_partial_die): Adjust.
14542         (guess_partial_die_structure_name): Adjust.
14543         (fixup_partial_die): Adjust.
14544         (read_attribute_value): Adjust.
14545         (read_addr_index): Adjust.
14546         (read_addr_index_from_leb128): Adjust.
14547         (read_str_index): Adjust.
14548         (dwarf2_string_attr): Adjust.
14549         (get_debug_line_section): Adjust.
14550         (dwarf_decode_line_header): Adjust.
14551         (lnp_state_machine::check_line_address): Adjust.
14552         (dwarf_decode_lines_1): Adjust.
14553         (dwarf_decode_lines): Adjust.
14554         (dwarf2_start_symtab): Adjust.
14555         (var_decode_location): Adjust.
14556         (new_symbol_full): Adjust.
14557         (dwarf2_const_value_data): Adjust.
14558         (dwarf2_const_value_attr): Adjust.
14559         (dwarf2_const_value): Adjust.
14560         (die_type): Adjust.
14561         (die_containing_type): Adjust.
14562         (build_error_marker_type): Adjust.
14563         (lookup_die_type): Adjust.
14564         (guess_full_die_structure_name): Adjust.
14565         (anonymous_struct_prefix): Adjust.
14566         (determine_prefix): Adjust.
14567         (dwarf2_name): Adjust.
14568         (follow_die_ref_or_sig): Adjust.
14569         (follow_die_offset): Adjust.
14570         (follow_die_ref): Adjust.
14571         (follow_die_sig_1): Adjust.
14572         (follow_die_sig): Adjust.
14573         (get_signatured_type): Adjust.
14574         (get_DW_AT_signature_type): Adjust.
14575         (decode_locdesc): Adjust.
14576         (dwarf_decode_macros): Adjust.
14577         (cu_debug_loc_section): Adjust.
14578         (fill_in_loclist_baton): Adjust.
14579         (dwarf2_symbol_mark_computed): Adjust.
14580         (init_one_comp_unit): Don't assign
14581         dwarf2_cu::dwarf2_per_objfile.
14582         (set_die_type): Adjust.
14583
14584 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14585
14586         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14587         <dwarf2_per_objfile>: New field.
14588         (dwarf2_per_objfile): Remove global.
14589         (get_dwarf2_per_objfile): New function.
14590         (set_dwarf2_per_objfile): New function.
14591         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14592         dwarf2_per_objfile.
14593         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14594         (read_abbrev_offset): Likewise.
14595         (read_indirect_string): Likewise.
14596         (read_indirect_line_string): Likewise.
14597         (read_indirect_string_at_offset): Likewise.
14598         (read_indirect_string_from_dwz): Likewise.
14599         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14600         dwarf2_per_objfile.
14601         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14602         (create_all_comp_units): Change objfile parameter to
14603         dwarf2_per_objfile.
14604         (create_all_type_units): Likewise.
14605         (process_queue): Add dwarf2_per_objfile parameter.
14606         (read_and_check_comp_unit_head): Likewise.
14607         (lookup_dwo_unit_in_dwp): Likewise.
14608         (get_dwp_file): Likewise.
14609         (process_cu_includes): Likewise.
14610         (struct free_dwo_file_cleanup_data): New struct.
14611         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14612         set_dwarf2_per_objfile.
14613         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14614         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14615         context, adjust calls.
14616         (dw2_instantiate_symtab): Likewise.
14617         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14618         (dw2_get_cu): Likewise.
14619         (create_cu_from_index_list): Change objfile parameter to
14620         dwarf2_per_objfile.
14621         (create_cus_from_index_list): Get dwarf2_per_objfile from
14622         context, adjust calls.
14623         (create_cus_from_index): Likewise.
14624         (create_signatured_type_table_from_index): Change objfile
14625         parameter to dwarf2_per_objfile.
14626         (create_signatured_type_table_from_debug_names): Change objfile
14627         parameter to dwarf2_per_objfile.
14628         (create_addrmap_from_index): Likewise.
14629         (create_addrmap_from_aranges): Likewise.
14630         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14631         (dw2_setup): Remove.
14632         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14633         context.
14634         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14635         get_dwarf2_per_objfile.
14636         (dw2_forget_cached_source_info): Likewise.
14637         (dw2_map_symtabs_matching_filename): Likewise.
14638         (struct dw2_symtab_iterator) <index>: Remove.
14639         <dwarf2_per_objfile>: New field.
14640         (dw2_symtab_iter_init): Replace index parameter with
14641         dwarf2_per_objfile.
14642         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14643         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14644         (dw2_print_stats): Likewise.
14645         (dw2_dump): Likewise.
14646         (dw2_expand_symtabs_for_function): Likewise.
14647         (dw2_expand_all_symtabs): Likewise.
14648         (dw2_expand_symtabs_with_fullname): Likewise.
14649         (dw2_expand_marked_cus): Replace index and objfile parameters
14650         with dwarf2_per_objfile.
14651         (dw_expand_symtabs_matching_file_matcher): Add
14652         dwarf2_per_objfile parameter and adjust calls.
14653         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14654         adjust calls.
14655         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14656         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14657         adjust calls.
14658         (create_cus_from_debug_names_list): Replace objfile parameter
14659         with dwarf2_per_objfile and adjust calls.
14660         (create_cus_from_debug_names): Likewise.
14661         (dwarf2_read_debug_names): Likewise.
14662         (mapped_debug_names::namei_to_name): Adjust call.
14663         (dw2_debug_names_iterator::next): Likewise.
14664         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14665         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14666         (dw2_debug_names_dump): Likewise.
14667         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14668         (dw2_debug_names_expand_symtabs_matching): Likewise.
14669         (dwarf2_initialize_objfile): Likewise.
14670         (dwarf2_build_psymtabs): Likewise.
14671         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14672         this_cu.
14673         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14674         (read_and_check_comp_unit_head): Likewise.
14675         (read_abbrev_offset): Likewise.
14676         (create_debug_type_hash_table): Likewise.
14677         (create_debug_types_hash_table): Likewise.
14678         (create_all_type_units): Replace objfile parameter with
14679         dwarf2_per_objfile.
14680         (add_type_unit): Add dwarf2_per_objfile parameter.
14681         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14682         with dwarf2_per_objfile.
14683         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14684         (lookup_dwp_signatured_type): Likewise.
14685         (lookup_signatured_type): Likewise.
14686         (read_cutu_die_from_dwo): Likewise.
14687         (init_tu_and_read_dwo_dies): Likewise.
14688         (init_cutu_and_read_dies): Likewise.
14689         (init_cutu_and_read_dies_no_follow): Likewise.
14690         (allocate_type_unit_groups_table): Add objfile parameter.
14691         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14692         (get_type_unit_group): Likewise.
14693         (process_psymtab_comp_unit): Update call.
14694         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14695         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14696         (print_tu_stats): Likewise.
14697         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14698         in void* parameter.
14699         (build_type_psymtabs): Change objfile parameter to
14700         dwarf2_per_objfile.
14701         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14702         passed in void* parameter.
14703         (process_skeletonless_type_units): Change objfile parameter to
14704         dwarf2_per_objfile.
14705         (set_partial_user): Likewise.
14706         (dwarf2_build_psymtabs_hard): Likewise.
14707         (read_comp_units_from_section): Likewise.
14708         (create_all_comp_units): Likewise.
14709         (scan_partial_symbols): Update calls.
14710         (add_partial_symbol): Likewise.
14711         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14712         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14713         (process_queue): Add dwarf2_per_objfile parameter.
14714         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14715         (compute_compunit_symtab_includes): Likewise.
14716         (process_cu_includes): Add dwarf2_per_objfile parameter.
14717         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14718         (process_full_type_unit): Likewise.
14719         (process_imported_unit_die): Update call.
14720         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14721         (read_file_scope): Likewise.
14722         (allocate_dwo_file_hash_table): Add objfile parameter.
14723         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14724         (create_cus_hash_table): Likewise.
14725         (create_dwp_hash_table): Likewise.
14726         (create_dwo_unit_in_dwp_v1): Likewise.
14727         (create_dwp_v2_section): Likewise.
14728         (create_dwo_unit_in_dwp_v2): Likewise.
14729         (lookup_dwo_unit_in_dwp): Likewise.
14730         (try_open_dwop_file): Likewise.
14731         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14732         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14733         cleanup to include a reference to dwarf2_per_objfile.
14734         (open_dwp_file): Add dwarf2_per_objfile parameter.
14735         (open_and_init_dwp_file): Likewise.
14736         (get_dwp_file): Likewise.
14737         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14738         (queue_and_load_all_dwo_tus): Update call.
14739         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14740         data.
14741         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14742         (dwarf2_ranges_process): Likewise.
14743         (dwarf2_get_pc_bounds): Likewise.
14744         (mark_common_block_symbol_computed): Likewise.
14745         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14746         (dwarf2_read_abbrevs): Update call.
14747         (read_partial_die): Use dwarf2_per_objfile from cu.
14748         (find_partial_die): Likewise.
14749         (fixup_partial_die): Likewise.
14750         (read_attribute_value): Likewise.
14751         (read_indirect_string_at_offset_from): Add objfile parameter.
14752         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14753         parameter.
14754         (read_indirect_string_from_dwz): Add objfile parameter.
14755         (read_indirect_string): Add objfile parameter.
14756         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14757         (read_addr_index): Use dwarf2_per_objfile from cu.
14758         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14759         call dw2_setup.
14760         (read_str_index): Use dwarf2_per_objfile from cu.
14761         (get_debug_line_section): Likewise.
14762         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14763         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14764         (new_symbol_full): Use dwarf2_per_objfile from cu.
14765         (build_error_marker_type): Likewise.
14766         (lookup_die_type): Likewise.
14767         (determine_prefix): Likewise.
14768         (follow_die_offset): Likewise.
14769         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14770         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14771         (dwarf2_fetch_die_type_sect_off): Likewise.
14772         (dwarf2_get_die_type): Likewise.
14773         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14774         (get_signatured_type): Likewise.
14775         (get_DW_AT_signature_type): Likewise.
14776         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14777         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14778         (cu_debug_loc_section): Likewise.
14779         (fill_in_loclist_baton): Likewise.
14780         (dwarf2_symbol_mark_computed): Likewise.
14781         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14782         dwarf2_per_objfile.
14783         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14784         parameter.
14785         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14786         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14787         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14788         (set_die_type): Use dwarf2_free_objfile from cu.
14789         (get_die_type_at_offset): Likewise.
14790         (dwarf2_per_objfile_free): Don't assign global variable.
14791         (debug_names) <constructor>: Add dwarf2_per_objfile
14792         parameter, update m_debugstrlookup construction.
14793         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14794         parameter.
14795         <m_dwarf2_per_objfile>: New field.
14796         <lookup>: Use m_dwarf2_per_objfile.
14797         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14798         (psyms_seen_size): Likewise.
14799         (write_gdbindex): Replace objfile parameter with
14800         dwarf2_per_objfile.
14801         (write_debug_names): Likewise.
14802         (write_psymtabs_to_index): Likewise.
14803         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14804         calls.
14805
14806 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14807
14808         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14809         <dwarf2_per_objfile>: New field.
14810         (struct dwarf2_per_cu_data) <objfile>: Remove.
14811         <dwarf2_per_objfile>: New field.
14812         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14813         of objfile.
14814         (create_signatured_type_table_from_index): Likewise.
14815         (create_debug_type_hash_table): Likewise.
14816         (fill_in_sig_entry_from_dwo_entry): Likewise.
14817         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14818         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14819         objfile.
14820         (create_partial_symtab): Access objfile through
14821         dwarf2_per_objfile.
14822         (process_psymtab_comp_unit_reader): Likewise.
14823         (read_comp_units_from_section): Likewise.
14824         (scan_partial_symbols): Likewise.
14825         (add_partial_symbol): Likewise.
14826         (add_partial_subprogram): Likewise.
14827         (peek_die_abbrev): Likewise.
14828         (fixup_go_packaging): Likewise.
14829         (process_full_comp_unit): Likewise.
14830         (process_full_type_unit): Likewise.
14831         (process_imported_unit_die): Likewise.
14832         (dwarf2_compute_name): Likewise.
14833         (dwarf2_physname): Likewise.
14834         (read_import_statement): Likewise.
14835         (create_cus_hash_table): Assign dwarf2_physname instead of
14836         objfile.
14837         (read_func_scope): Access objfile through dwarf2_per_objfile.
14838         (read_lexical_block_scope): Likewise.
14839         (read_call_site_scope): Likewise.
14840         (read_variable): Likewise.
14841         (dwarf2_rnglists_process): Likewise.
14842         (dwarf2_ranges_process): Likewise.
14843         (dwarf2_ranges_read): Likewise.
14844         (dwarf2_record_block_ranges): Likewise.
14845         (dwarf2_add_field): Likewise.
14846         (dwarf2_add_member_fn): Likewise.
14847         (read_structure_type): Likewise.
14848         (process_structure_scope): Likewise.
14849         (read_enumeration_type): Likewise.
14850         (read_array_type): Likewise.
14851         (read_common_block): Likewise.
14852         (read_namespace_type): Likewise.
14853         (read_namespace): Likewise.
14854         (read_module_type): Likewise.
14855         (read_tag_pointer_type): Likewise.
14856         (read_tag_ptr_to_member_type): Likewise.
14857         (read_tag_string_type): Likewise.
14858         (read_subroutine_type): Likewise.
14859         (read_typedef): Likewise.
14860         (read_base_type): Likewise.
14861         (attr_to_dynamic_prop): Likewise.
14862         (read_subrange_type): Likewise.
14863         (read_unspecified_type): Likewise.
14864         (load_partial_dies): Likewise.
14865         (read_partial_die): Likewise.
14866         (find_partial_die): Likewise.
14867         (guess_partial_die_structure_name): Likewise.
14868         (fixup_partial_die): Likewise.
14869         (read_attribute_value): Likewise.
14870         (read_addr_index_from_leb128): Likewise.
14871         (dwarf2_read_addr_index): Likewise.
14872         (dwarf2_string_attr): Likewise.
14873         (lnp_state_machine::check_line_address): Likewise.
14874         (dwarf_decode_lines_1): Likewise.
14875         (dwarf_decode_lines): Likewise.
14876         (dwarf2_start_symtab): Likewise.
14877         (var_decode_location): Likewise.
14878         (new_symbol_full): Likewise.
14879         (dwarf2_const_value_data): Likewise.
14880         (dwarf2_const_value_attr): Likewise.
14881         (dwarf2_const_value): Likewise.
14882         (die_type): Likewise.
14883         (die_containing_type): Likewise.
14884         (lookup_die_type): Likewise.
14885         (guess_full_die_structure_name): Likewise.
14886         (anonymous_struct_prefix): Likewise.
14887         (dwarf2_name): Likewise.
14888         (follow_die_ref_or_sig): Likewise.
14889         (follow_die_offset): Likewise.
14890         (follow_die_ref): Likewise.
14891         (dwarf2_fetch_die_loc_sect_off): Likewise.
14892         (dwarf2_fetch_constant_bytes): Likewise.
14893         (dwarf2_fetch_die_type_sect_off): Likewise.
14894         (dwarf2_get_die_type): Likewise.
14895         (follow_die_sig): Likewise.
14896         (decode_locdesc): Likewise.
14897         (dwarf2_per_cu_objfile): Likewise.
14898         (dwarf2_per_cu_text_offset): Likewise.
14899         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14900         objfile.
14901         (set_die_type): Access objfile through
14902         dwarf2_per_objfile.
14903
14904 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14905
14906         * valprint.c (converted_character_d): Remove typedef.
14907         (DEF_VEC_O (converted_character_d)): Remove.
14908         (count_next_character): Use std::vector.
14909         (print_converted_chars_to_obstack): Likewise.
14910         (generic_printstr): Likewise.
14911
14912 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14913
14914         * xml-support.h (struct gdb_xml_value): Add constructor.
14915         <value>: Change type to unique_xmalloc_ptr.
14916         (gdb_xml_value_s): Remove typedef.
14917         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14918         (gdb_xml_element_start_handler): Change parameter type to
14919         std::vector.
14920         (xml_find_attribute): Likewise.
14921         * xml-support.c (xml_find_attribute): Change parameter type to
14922         std::vector and adjust.
14923         (gdb_xml_values_cleanup): Remove.
14924         (gdb_xml_parser::start_element): Adjust to std::vector.
14925         (xinclude_start_include): Change paraeter type to std::vector
14926         and adjust.
14927         * btrace.c (check_xml_btrace_version): Likewise.
14928         (parse_xml_btrace_block): Likewise.
14929         (parse_xml_btrace_pt_config_cpu): Likewise.
14930         (parse_xml_btrace_pt): Likewise.
14931         (parse_xml_btrace_conf_bts): Likewise.
14932         (parse_xml_btrace_conf_pt): Likewise.
14933         * memory-map.c (memory_map_start_memory): Likewise.
14934         (memory_map_start_property): Likewise.
14935         * osdata.c (osdata_start_osdata): Likewise.
14936         (osdata_start_item): Likewise.
14937         (osdata_start_column): Likewise.
14938         * remote.c (start_thread): Likewise.
14939         * solib-aix.c (library_list_start_library): Likewise.
14940         (library_list_start_list): Likewise.
14941         * solib-svr4.c (library_list_start_library): Likewise.
14942         (svr4_library_list_start_list): Likewise.
14943         * solib-target.c (library_list_start_segment): Likewise.
14944         (library_list_start_section): Likewise.
14945         (library_list_start_library): Likewise.
14946         (library_list_start_list): Likewise.
14947         * tracepoint.c (traceframe_info_start_memory): Likewise.
14948         (traceframe_info_start_tvar): Likewise.
14949         * xml-syscall.c (syscall_start_syscall): Likewise.
14950         * xml-tdesc.c (tdesc_start_target): Likewise.
14951         (tdesc_start_feature): Likewise.
14952         (tdesc_start_reg): Likewise.
14953         (tdesc_start_union): Likewise.
14954         (tdesc_start_struct): Likewise.
14955         (tdesc_start_flags): Likewise.
14956         (tdesc_start_enum): Likewise.
14957         (tdesc_start_field): Likewise.
14958         (tdesc_start_enum_value): Likewise.
14959         (tdesc_start_vector): Likewise.
14960
14961 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14962
14963         * extension.h (struct xmethod_worker) <clone>: Remove.
14964         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14965         Remove.
14966         (python_xmethod_worker::clone): Remove.
14967         * valops.c (find_overload_match): Use std::move instead of
14968         clone.
14969
14970 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14971
14972         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14973         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14974         <free_xmethod_worker_data>: Remove.
14975         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14976         <get_xmethod_arg_types>: Remove.
14977         <get_xmethod_result_type>: Remove.
14978         <invoke_xmethod>: Remove.
14979         * extension.c (new_xmethod_worker): Remove.
14980         (clone_xmethod_worker): Remove.
14981         (get_matching_xmethod_workers): Return void, pass std::vector by
14982         pointer.
14983         (get_xmethod_arg_types): Rename to...
14984         (xmethod_worker::get_arg_types): ... this, and adjust.
14985         (get_xmethod_result_type): Rename to...
14986         (xmethod_worker::get_result_type): ... this, and adjust.
14987         (invoke_xmethod): Remove.
14988         (free_xmethod_worker): Remove.
14989         (free_xmethod_worker_vec): Remove.
14990         * extension.h (enum ext_lang_rc): Move here from
14991         extension-priv.h.
14992         (struct xmethod_worker): Add constructor and destructor.
14993         <data>: Remove.
14994         <value>: Remove.
14995         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14996         virtual pure methods.
14997         <get_arg_types, get_result_type>: New methods.
14998         (xmethod_worker_ptr): Remove typedef.
14999         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15000         (xmethod_worker_vec): Remove typedef.
15001         (xmethod_worker_up): New typedef.
15002         (invoke_xmethod): Remove.
15003         (clone_xmethod_worker): Remove.
15004         (free_xmethod_worker): Remove.
15005         (free_xmethod_worker_vec): Remove.
15006         (get_xmethod_arg_types): Remove.
15007         (get_xmethod_result_type): Remove.
15008         * valops.c (find_method_list): Use std::vector, don't use
15009         intermediate vector.
15010         (value_find_oload_method_list): Use std::vector.
15011         (find_overload_match): Use std::vector.
15012         (find_oload_champ): Use std::vector.
15013         * value.c (value_free): Use operator delete.
15014         (value_of_xmethod): Rename to...
15015         (value_from_xmethod): ... this.  Don't assign
15016         xmethod_worker::value, take rvalue-reference.
15017         (result_type_of_xmethod): Adjust.
15018         (call_xmethod): Adjust.
15019         * value.h: Include extension.h.
15020         (struct xmethod_worker): Don't forward-declare.
15021         (value_of_xmethod): Rename to...
15022         (value_from_xmethod): ... this, take rvalue-reference.
15023         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15024         (struct python_xmethod_worker): ... this, add constructor and
15025         destructor.
15026         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15027         (gdbpy_free_xmethod_worker_data): Rename to...
15028         (python_xmethod_worker::~python_xmethod_worker): ... this and
15029         adjust.
15030         (gdbpy_clone_xmethod_worker_data): Rename to...
15031         (python_xmethod_worker::clone): ... this and adjust.
15032         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15033         temporary vector.
15034         (gdbpy_get_xmethod_arg_types): Rename to...
15035         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15036         (gdbpy_get_xmethod_result_type): Rename to...
15037         (python_xmethod_worker::do_get_result_type): ... this and
15038         adjust.
15039         (gdbpy_invoke_xmethod): Rename to...
15040         (python_xmethod_worker::invoke): ... this and adjust.
15041         (new_python_xmethod_worker): Rename to...
15042         (python_xmethod_worker::python_xmethod_worker): ... this and
15043         adjust.
15044         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15045         Remove.
15046         (gdbpy_free_xmethod_worker_data): Remove.
15047         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15048         (gdbpy_get_xmethod_arg_types): Remove.
15049         (gdbpy_get_xmethod_result_type): Remove.
15050         (gdbpy_invoke_xmethod): Remove.
15051         * python/python.c (python_extension_ops): Remove obsolete
15052         callbacks.
15053
15054 2018-01-05  Pedro Alves  <palves@redhat.com>
15055
15056         PR gdb/18653
15057         * common/signals-state-save-restore.c
15058         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15059         find a custom handler preinstalled, instead of internal erroring.
15060         But only warn if !quiet.
15061         * common/signals-state-save-restore.h
15062         (save_original_signals_state): New parameter 'quiet'.
15063         * main.c (captured_main_1): Move save_original_signals_state call
15064         after option handling, and pass QUIET.
15065
15066 2018-01-05  Pedro Alves  <palves@redhat.com>
15067
15068         * spu-tdep.c (spu_catch_start): Pass
15069         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15070
15071 2018-01-05  Pedro Alves  <palves@redhat.com>
15072
15073         PR gdb/22670
15074         * ada-lang.c (literal_symbol_name_matcher): New function.
15075         (ada_get_symbol_name_matcher): Use it for
15076         symbol_name_match_type::SEARCH_NAME.
15077         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15078         it down instead of assuming symbol_name_match_type::FULL.
15079         * block.h (block_lookup_symbol): New parameter 'match_type'.
15080         * c-valprint.c (print_unpacked_pointer): Use
15081         lookup_symbol_search_name instead of lookup_symbol.
15082         * compile/compile-object-load.c (get_out_value_type): Pass down
15083         symbol_name_match_type::SEARCH_NAME.
15084         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15085         symbol_name_match_type::FULL.
15086         * cp-support.c (cp_get_symbol_name_matcher): Handle
15087         symbol_name_match_type::SEARCH_NAME.
15088         * infrun.c (insert_exception_resume_breakpoint): Use
15089         lookup_symbol_search_name.
15090         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15091         * psymtab.c (maintenance_check_psymtabs): Use
15092         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15093         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15094         SYMBOL_SEARCH_NAME.
15095         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15096         if symbol_name_match_type::SEARCH_NAME.
15097         (lookup_symbol_in_language): Pass down
15098         symbol_name_match_type::FULL.
15099         (lookup_symbol_search_name): New.
15100         (lookup_language_this): Pass down
15101         symbol_name_match_type::SEARCH_NAME.
15102         (lookup_symbol_aux, lookup_local_symbol): New parameter
15103         'match_type'.  Pass it down.
15104         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15105         (lookup_symbol_search_name): New declaration.
15106         (lookup_symbol_in_block): New 'match_type' parameter.
15107
15108 2018-01-05  Pedro Alves  <palves@redhat.com>
15109
15110         PR gdb/22670
15111         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15112         ada_lookup_symbol.
15113         (ada_lookup_symbol): Reimplement in terms of
15114         ada_lookup_symbol_list, bits factored out from
15115         ada_lookup_encoded_symbol.
15116
15117 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15118
15119         * ada-exp.y (write_object_renaming): When subscripting an array
15120         using a symbol as the index, pass the block in call to
15121         ada_lookup_encoded_symbol when looking that symbol up.
15122
15123 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15124
15125         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15126         TYPE_INDEX_TYPE.
15127
15128 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15129
15130         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15131         the case where VALUE_LVAL (val0) is not lval_memory.
15132
15133 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15134
15135         * ada-valprint.c (print_optional_low_bound): Handle
15136         character-indexed array printing like boolean-indexed array
15137         printing.
15138
15139 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15140
15141         * NEWS: Create a new section for the next release branch.
15142         Rename the section of the current branch, now that it has
15143         been cut.
15144
15145 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15146
15147         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15148         * version.in: Bump version to 8.1.50.DATE-git.
15149
15150 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15151
15152         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15153         Add field.
15154         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15155         Add field.
15156         (default_exception_support_info) <catch_handlers_sym>: Add field.
15157         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15158         (ada_exception_name_addr_1): Add "catch handlers" handling.
15159         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15160         Update all callers.
15161         (create_excep_cond_exprs) <ex>: Add parameter.
15162         (re_set_exception): Update create_excep_cond_exprs call.
15163         (print_it_exception, print_one_exception, print_mention_exception)
15164         (print_recreate_exception): Add "catch handler" handling.
15165         (allocate_location_catch_handlers, re_set_catch_handlers)
15166         (check_status_catch_handlers, print_it_catch_handlers)
15167         (print_one_catch_handlers, print_mention_catch_handlers)
15168         (print_recreate_catch_handlers): New function.
15169         (catch_handlers_breakpoint_ops): New variable.
15170         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15171         Add parameter.  Add "catch handler" handling.
15172         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15173         Add "catch handler" handling.
15174         (ada_exception_catchpoint_cond_string): Add "catch handler"
15175         handling.
15176         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15177         call.
15178         (catch_ada_handlers_command): New function.
15179         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15180         operations structure.
15181         (_initialize_ada_language): Add "catch handlers" command entry.
15182         * NEWS: Document "catch handlers" feature.
15183
15184 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15185
15186         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15187         account when creating the array type of the slice.
15188         (ada_value_slice): Likewise.
15189
15190 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15191
15192         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15193         New enum value.
15194         (create_array_type_with_stride): Add byte_stride_prop parameter.
15195         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15196         New parameter.  Update all callers in this file.
15197         (array_type_has_dynamic_stride): New function.
15198         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15199         of arrays with dynamic byte strides.
15200         * dwarf2read.c (read_array_type): Add support for dynamic
15201         DW_AT_byte_stride attributes.
15202
15203 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15204
15205         * dwarf2read.c (read_unspecified_type): Treat
15206         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15207
15208 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15209
15210         Update copyright year range in all GDB files.
15211
15212 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15213
15214         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15215         and gdb/testsuite/gdb.base/step-line.c.
15216
15217 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15218
15219         * copyright.py (main): Dump the contents of
15220         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15221         even if BY_HAND is empty.
15222
15223 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15224
15225         * top.c (print_gdb_version): Update Copyright year in version
15226         message.
15227
15228 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15229
15230         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15231
15232 For older changes see ChangeLog-2017.
15233 \f
15234 Local Variables:
15235 mode: change-log
15236 left-margin: 8
15237 fill-column: 74
15238 version-control: never
15239 coding: utf-8
15240 End: