Move mkdir_recursive to common/filestuff.c
[external/binutils.git] / gdb / ChangeLog
1 2018-10-27  Tom Tromey  <tom@tromey.com>
2
3         * unittests/mkdir-recursive-selftests.c: New file.
4         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5         unittests/mkdir-recursive-selftests.c.
6         * dwarf-index-cache.c (mkdir_recursive): Move to
7         common/filestuff.c.
8         (index_cache::store): Check return value of mkdir_recursive.
9         (create_dir_and_check, test_mkdir_recursive): Move to new file.
10         (_initialize_index_cache): Don't register test.
11         * common/filestuff.h (mkdir_recursive): Declare.
12         * common/filestuff.c (mkdir_recursive): Move from
13         dwarf-index-cache.c.  Return bool.
14
15 2018-10-27  Tom Tromey  <tom@tromey.com>
16
17         * dwarf-index-write.c (write_psymtabs_to_index): Move
18         make_temp_filename to common/pathstuff.c.
19         * common/pathstuff.h (make_temp_filename): Declare.
20         * common/pathstuff.c (make_temp_filename): New function, moved
21         from dwarf-index-write.c.
22
23 2018-10-27  Tom Tromey  <tom@tromey.com>
24
25         * procfs.c (procfs_target::create_inferior): Use get_shell.
26         * cli/cli-cmds.c (shell_escape): Use get_shell.
27         * windows-nat.c (windows_nat_target::create_inferior): Use
28         get_shell.
29         * common/pathstuff.c (get_shell): New function.
30         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
31         (fork_inferior): Use get_shell.
32         * common/pathstuff.h (get_shell): Declare.
33
34 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
35
36         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
37
38 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
39
40         * stack.c (print_variable_and_value_data): Add preg and treg.
41         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
42         and update callers.
43         (print_frame_arg_vars): Likewise.
44         (prepare_reg): New function.
45         (info_locals_command): Extract info print args and use them.
46         (info_args_command): Likewise.
47         (_initialize_stack): Modify on-line help.
48         * symtab.c (treg_matches_sym_type_name): New function.
49         (search_symbols): New arg t_regexp.
50         (symtab_symbol_info): New args quiet, regexp, t_regexp.
51         (info_variables_command): Extract info print args and use them.
52         (info_functions_command): Likewise.
53         (info_types_command): Update call to symtab_symbol_info.
54         (_initialize_symtab): Modify on-line help.
55         * symtab.h (treg_matches_sym_type_name): New function.
56         (search_symbols): New t_regexp arg.
57
58 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
59
60         * cli-utils.c (extract_arg_maybe_quoted): New function.
61         (extract_info_print_args): New function.
62         (info_print_args_help): New function.
63         (report_unrecognized_option_error): New function.
64         * cli-utils.h (extract_arg_maybe_quoted): New function.
65         (extract_info_print_args): New function.
66         (info_print_args_help): New function.
67         (report_unrecognized_option_error): New function.
68
69 2018-10-26  Tom Tromey  <tom@tromey.com>
70
71         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
72         (compute_compunit_symtab_includes): Update.
73         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
74         (compunit_symtab_ptr): Likewise.
75
76 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
77
78         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
79         default_print_auxv_entry for specific tag values.
80
81 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
82
83         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
84
85 2018-10-26  Jim Wilson  <jimw@sifive.com>
86
87         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
88         (riscv_linux_sigframe_init): Declare.
89         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
90         (riscv_linux_sigframe): New.
91         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
92         (riscv_linux_sigframe_init): Define.
93         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
94
95         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
96         (riscv_isa_flen): Likewise.  Drop static.
97         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
98         (riscv_isa_flen): Likewise.  Declare.
99
100 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
101             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
102
103         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
104         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
105         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
106         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
107         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
108         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
109         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
110         Define.
111         (struct ppc_linux_features) <htm>: New field.
112         (ppc_linux_no_features): Add initializer for htm field.
113         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
114         new tdescs.
115         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
116         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
117         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
118         Define if not already defined.
119         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
120         and rs6000/powerpc-isa207-htm-vsx64l.
121         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
122         rs6000/powerpc-isa207-htm-vsx64l.xml.
123         * features/rs6000/power-htm-spr.xml: New file.
124         * features/rs6000/power-htm-core.xml: New file.
125         * features/rs6000/power64-htm-core.xml: New file.
126         * features/rs6000/power-htm-fpu.xml: New file.
127         * features/rs6000/power-htm-altivec.xml: New file.
128         * features/rs6000/power-htm-vsx.xml: New file.
129         * features/rs6000/power-htm-ppr.xml: New file.
130         * features/rs6000/power-htm-dscr.xml: New file.
131         * features/rs6000/power-htm-tar.xml: New file.
132         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
133         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
134         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
135         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
136         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
137         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
138         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
139         fetch_regset with HTM regsets.
140         (store_register, store_ppc_registers): Call store_regset with HTM
141         regsets.
142         (ppc_linux_nat_target::read_description): Set htm field in the
143         features struct if needed.
144         * ppc-linux-tdep.c: Include
145         features/rs6000/powerpc-isa207-htm-vsx32l.c and
146         features/rs6000/powerpc-isa207-htm-vsx64l.c.
147         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
148         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
149         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
150         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
151         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
152         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
153         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
154         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
155         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
156         (ppc32_linux_ctarregset): New globals.
157         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
158         (ppc_linux_collect_core_cpgrregset): New function.
159         (ppc_linux_iterate_over_regset_sections): Call back with the htm
160         regsets.
161         (ppc_linux_core_read_description): Check if the tm spr section is
162         present and set htm in the features struct.
163         (_initialize_ppc_linux_tdep): Call
164         initialize_tdesc_powerpc_isa207_htm_vsx32l and
165         initialize_tdesc_powerpc_isa207_htm_vsx64l.
166         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
167         Declare.
168         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
169         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
170         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
171         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
172         New fields.
173         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
174         Likewise.
175         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
176         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
177         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
178         New enum fields.
179         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
180         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
181         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
182         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
183         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
184         <PPC_CTAR_REGNUM>: Likewise.
185         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
186         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
187         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
188         (IS_CEFP_PSEUDOREG): Define.
189         (rs6000_register_name): Hide the upper halves of checkpointed VSX
190         registers.  Return names for the checkpointed DFP, VSX, and EFP
191         pseudo registers.
192         (rs6000_pseudo_register_type): Remove initial assert and raise an
193         internal error in the else clause instead.  Return types for the
194         checkpointed DFP, VSX, and EFP pseudo registers.
195         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
196         checkpointed DFP pseudo registers.
197         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
198         checkpointed VSX pseudo registers.
199         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
200         from efpr_pseudo_register_read and
201         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
202         registers.
203         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
204         Handle checkpointed DFP, VSX, and EFP registers.
205         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
206         (efp_ax_pseudo_register_collect): New functions.
207         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
208         register logic to new functions.  Handle checkpointed DFP, VSX,
209         and EFP pseudo registers.
210         (rs6000_gdbarch_init): Look for and validate the htm features.
211         Include checkpointed DFP, VSX and EFP pseudo-registers.
212         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
213         HTM registers.
214
215 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
216
217         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
218         without altivec or fpu.
219
220 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
221             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
222
223         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
224         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
225         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
226         Define if not already defined.
227         * features/rs6000/power-ebb.xml: New file.
228         * features/rs6000/power-linux-pmu.xml: New file.
229         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
230         features.
231         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
232         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
233         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
234         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
235         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
236         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
237         fetch_regset with ebb and pmu regsets.
238         (store_register, store_ppc_registers): Call store_regset with ebb
239         and pmu regsets.
240         (ppc_linux_nat_target::read_description): Set isa207 field in the
241         features struct if ebb and pmu are avaiable.
242         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
243         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
244         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
245         and pmu regsets.
246         (ppc_linux_core_read_description): Check if the pmu section is
247         present and set isa207 in the features struct.
248         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
249         (ppc32_linux_pmuregset): Declare.
250         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
251         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
252         <ppc_sier_regnum>: New field.
253         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
254         New enum values.
255         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
256         values.
257         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
258         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
259         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
260         ebb and pmu features.
261
262 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
263             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
264
265         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
266         (tdesc_powerpc_isa207_vsx64l): Declare.
267         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
268         (struct ppc_linux_features) <isa207>: New field.
269         (ppc_linux_no_features): Add initializer for isa207 field.
270         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
271         new tdescs.
272         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
273         (NT_PPC_TAR): Define if not already defined.
274         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
275         rs6000/powerpc-isa207-vsx64l.
276         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
277         rs6000/powerpc-isa207-vsx64l.xml.
278         * features/rs6000/power-tar.xml: New file.
279         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
280         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
281         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
282         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
283         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
284         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
285         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
286         fetch_regset with the TAR regset.
287         (store_register, store_ppc_registers): Call store_regset with the
288         TAR regset.
289         (ppc_linux_nat_target::read_description): Set isa207 field in the
290         features struct if needed.
291         * ppc-linux-tdep.c: Include
292         features/rs6000/powerpc-isa207-vsx32l.c and
293         features/rs6000/powerpc-isa207-vsx64l.c.
294         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
295         (ppc_linux_iterate_over_regset_sections): Call back with the tar
296         regset.
297         (ppc_linux_core_read_description): Check if the tar section is
298         present and set isa207 in the features struct.
299         (_initialize_ppc_linux_tdep): Call
300         initialize_tdesc_powerpc_isa207_vsx32l and
301         initialize_tdesc_powerpc_isa207_vsx64l.
302         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
303         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
304         (enum) <PPC_TAR_REGNUM>: New enum value.
305         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
306         feature.
307         (ppc_process_record_op31): Record changes to TAR.
308
309 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
310             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
311
312         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
313         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
314         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
315         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
316         (struct ppc_linux_features) <ppr_dscr>: New field.
317         (ppc_linux_no_features): Add initializer for ppr_dscr field.
318         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
319         new tdescs.
320         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
321         Define if not already defined.
322         * features/Makefile (WHICH): Add
323         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
324         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
325         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
326         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
327         * features/rs6000/power-dscr.xml: New file.
328         * features/rs6000/power-ppr.xml: New file.
329         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
330         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
331         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
332         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
333         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
334         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
335         * ppc-linux-nat.c: Include <sys/uio.h>.
336         (fetch_regset, store_regset, check_regset): New functions.
337         (fetch_register, fetch_ppc_registers): Call fetch_regset with
338         DSCR and PPR regsets.
339         (store_register, store_ppc_registers): Call store_regset with
340         DSCR and PPR regsets.
341         (ppc_linux_get_hwcap2): New function.
342         (ppc_linux_nat_target::read_description): Call
343         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
344         features struct if needed.
345         * ppc-linux-tdep.c: Include
346         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
347         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
348         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
349         (ppc32_linux_dscrregset): New globals.
350         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
351         and dscr regsets.
352         (ppc_linux_core_read_description): Check if the ppr and dscr
353         sections are present and set ppr_dscr in the features struct.
354         (_initialize_ppc_linux_tdep): Call
355         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
356         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
357         * ppc-linux-tdep.h (ppc32_linux_pprregset)
358         (ppc32_linux_dscrregset): Declare.
359         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
360         <ppc_dscr_regnum>: New field.
361         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
362         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
363         and dscr features.
364         (ppc_process_record_op31): Record changes to PPR and DSCR.
365
366 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
367
368         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
369         second initializer line for the have_* variables.  Initialize
370         have_fpu to 0 instead of 1.
371
372 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
373
374         * arch/ppc-linux-common.c (ppc_linux_match_description):
375         Parenthesize tdesc assignements and indent them properly.
376
377 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
378
379         * ppc-linux-nat.c (fetch_register): Change if statement to else
380         if.
381         (store_register): Likewise.
382
383 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
384
385         * rs6000-tdep.c: Remove reggroups.h include.
386         (rs6000_pseudo_register_reggroup_p): Remove.
387         (rs6000_gdbarch_init): Remove call to
388         set_tdesc_pseudo_register_reggroup_p.
389
390 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
391
392         * reggroups.c (default_register_reggroup_p): Return true for
393         decfloat registers and float_reggroup.
394
395 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
396
397         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
398         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
399         ppc_linux_collect_vrregset by regcache_collect_regset.
400
401 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
402
403         * linux-tdep.c (linux_collect_regset_section_cb): Use
404         std::vector<gdb_byte> instead of char * and malloc for buf.
405         Remove xfree.
406
407 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
408
409         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
410         symtab_start instead of always using language_unknown.
411
412 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
413
414         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
415         READ_P parameter, catch and ignore register access errors from
416         either the old or new MISA location.
417         (riscv_has_feature): Update call to riscv_read_misa_reg.
418
419 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
420
421         * python/py-function.c (convert_values_to_python): Return
422         gdbpy_ref<>.  Add header comment.
423         (fnpy_call): Adjust.
424
425 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
426
427         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
428         (cmdpy_completer_handle_brkchars): Adjust.
429         (cmdpy_completer): Adjust.
430
431 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
432
433         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
434         Pass correct regnum to raw_supply_zeroed.
435
436 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
437
438         * regcache.c (cooked_read_test): Add CSKY to the list of
439         architectures with a save_reggroup
440
441 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
442
443         PR gdb/23368
444         * infrun.c (follow_exec): In the follow_exec_mode_new case,
445         transfer terminal state from old new new inferior.
446         * terminal.h (swap_terminal_info): New function.
447         * inflow.c (swap_terminal_info): New function.
448
449 2018-10-23  Tom Tromey  <tom@tromey.com>
450
451         * record-btrace.c (get_thread_current_frame_id): Rename from
452         get_thread_current_frame.  Return a frame_id.
453         (record_btrace_start_replaying): Update.
454
455 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
456
457         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
458         for CSRs.
459
460 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
461
462         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
463         have_nonsteppable_watchpoint attribute to 1.
464
465 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
466
467         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
468         register names.
469         (struct register_alias): Rename to...
470         (struct riscv_register_alias): ...this, and update comment.
471         (riscv_register_aliases): Update type, and alias names.  Remove
472         CSR names from this list.
473         (riscv_register_name): Use riscv_gdb_reg_names for int and float
474         register names.  Add an extra assertion.
475         (riscv_is_regnum_a_named_csr): New function.
476         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
477
478 2018-10-22  Jim Wilson  <jimw@sifive.com>
479
480         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
481         FP reg smaller than FP reg size, and fill with -1 instead of 0.
482
483         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
484         (riscv_register_type): Use them.
485         (riscv_print_one_register_info): Handle union of floats same as float.
486         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
487         riscv_fpreg_q_type fields.
488
489 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
490
491         * gdbarch.sh (gdbarch_num_cooked_regs): New.
492         * gdbarch.h: Re-generate.
493         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
494         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
495         * eval.c (evaluate_subexp_standard): Likewise.
496         * findvar.c (value_of_register): Likewise.
497         (value_of_register_lazy): Likewise.
498         (address_from_register): Likewise.
499         * frame.c (get_frame_register_bytes): Likewise.
500         * gdbarch-selftests.c (register_to_value_test): Likewise.
501         * h8300-tdep.c (h8300_register_type): Likewise.
502         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
503         (i386_svr4_reg_to_regnum): Likewise.
504         * infcmd.c (default_print_registers_info): Likewise.
505         (registers_info): Likewise.
506         (print_vector_info): Likewise.
507         (default_print_float_info): Likewise.
508         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
509         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
510         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
511         (mi_cmd_data_list_changed_registers): Likewise.
512         (mi_cmd_data_list_register_values): Likewise.
513         (mi_cmd_data_write_register_values): Likewise.
514         (mi_cmd_trace_frame_collected): Likewise.
515         * mips-tdep.c (print_gp_register_row): Likewise.
516         (mips_print_registers_info): Likewise.
517         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
518         * regcache.c (init_regcache_descr): Likewise.
519         (register_size): Likewise.
520         (register_dump::dump): Likewise.
521         (cooked_read_test): Likewise.
522         (cooked_write_test): Likewise.
523         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
524         (rs6000_gdbarch_init): Likewise.
525         * stabsread.c (stab_reg_to_regnum): Likewise.
526         * stack.c (info_frame_command): Likewise.
527         * target-descriptions.c (tdesc_register_name): Likewise.
528         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
529         * tui/tui-regs.c (tui_show_register_group): Likewise.
530         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
531         (user_reg_map_regnum_to_name): Likewise.
532         (value_of_user_reg): Likewise.
533         (maintenance_print_user_registers): Likewise.
534         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
535         (xtensa_register_name): Likewise.
536         (xtensa_register_type): Likewise.
537         (xtensa_reg_to_regnum): Likewise.
538         (xtensa_pseudo_register_read): Likewise.
539         (xtensa_pseudo_register_write): Likewise.
540
541 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
542
543         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
544         correctly-sized buffer with raw_read.
545         (amd64_pseudo_register_write): Use correctly-sized buffer for
546         raw_read/raw_write.
547
548 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
549
550         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
551         in add_prefix_cmd of set print type.
552
553 2018-10-19  Tom Tromey  <tom@tromey.com>
554
555         PR tui/18388:
556         * NEWS: Mention tabset deprecation.
557         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
558         (update_tab_width): New function.
559         (tui_set_tab_width, tui_show_tab_width): New functions.
560         (tui_set_tab_width_command): Use update_tab_width.
561         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
562         Add new "set tui tab-width" command.
563         * tui/tui-source.c (tui_set_source_content): Update.
564         * tui/tui-disasm.c (tui_set_disassem_content): Update.
565         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
566         Don't declare.
567         (tui_tab_width): Declare.
568         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
569         (tui_set_default_tab_len): Remove.
570
571 2018-10-19  Tom Tromey  <tom@tromey.com>
572
573         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
574         (key_is_backspace, tui_getc): Don't declare.
575         * tui/tui-io.c (key_is_start_sequence): Now static.
576         (key_is_end_sequence, key_is_backspace): Remove.
577         (tui_getc): Now static.
578
579 2018-10-19  Tom Tromey  <tom@tromey.com>
580
581         * symfile.c (reread_symbols): Clear "static_links".
582
583 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
584
585         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
586         define.
587         (aarch64_linux_sigframe_init): Extra boundary checks.
588
589 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
590
591         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
592         the possibly non-existent tdesc type 'vec128', but the type of raw
593         register v16 instead.
594
595 2018-10-19  Gary Benson <gbenson@redhat.com>
596
597         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
598
599 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
600
601         PR cli/23785
602         * cli/cli-dump.c (restore_binary_file): Check if "file" is
603         NULL.
604
605 2018-10-17  Paul Koning  <paul_koning@dell.com>
606
607         * charset.c (convert_between_encodings): Fix unsigned overflow.
608
609 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
610
611         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
612         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
613         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
614         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
615         New functions.
616         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
617         and fbsd_info_proc_mappings_header.
618         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
619         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
620         New.
621
622 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
623
624         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
625         Solaris Maintainer.
626
627 2018-10-15  Tom Tromey  <tom@tromey.com>
628
629         * tui/tui.c (strcat_to_buf): Remove casts.
630         * tui/tui-winsource.c (tui_show_source_line)
631         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
632         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
633         * tui/tui-windata.c (tui_first_data_item_displayed)
634         (tui_delete_data_content_windows, tui_erase_data_content)
635         (tui_display_all_data, tui_display_data_from)
636         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
637         * tui/tui-win.c (tui_set_win_height)
638         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
639         casts.
640         * tui/tui-win.c (tui_resize_all): Remove casts.
641         (tui_scroll_backward_command, tui_set_focus)
642         (tui_set_tab_width_command): Likewise.
643         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
644         * tui/tui-regs.c (tui_show_register_group): Remove cast.
645         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
646         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
647         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
648         Remove casts.
649
650 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
651
652         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
653         AArch64/ARM maintainer.
654
655 2018-10-11  Gary Benson <gbenson@redhat.com>
656
657         * interps.h (interp::m_name): Make private and mutable.
658         * interps.c (interp::~interp): Free m_name.
659
660 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
661             Simon Marchi <simark@simark.ca>
662
663         * README (`configure' options): Add documentation for new
664         "--enable-unit-tests" option.
665         * acinclude.m4: Include "selftest.m4".
666         * configure: Regenerate.
667         * configure.ac: Use "GDB_AC_SELFTEST".
668         * maint.c (maintenance_selftest): Update message informing
669         that selftests have been disabled.
670         (maintenance_info_selftests): Likewise.
671         * selftest.m4: New file.
672
673 2018-10-10  Gary Benson <gbenson@redhat.com>
674
675         * remote.c (remote_target::remote_send_printf): Add
676         missing va_end found by Coverity.
677
678 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
679
680         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
681
682 2018-10-09  Tom Tromey  <tom@tromey.com>
683
684         * configure: Rebuild.
685         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
686         * NEWS: Update --enable-ubsan documentation.
687
688 2018-10-09  Gary Benson <gbenson@redhat.com>
689
690         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
691         found by Coverity.
692
693 2018-10-08  Tom Tromey  <tom@tromey.com>
694
695         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
696         variable.
697         (riscv_fbsd_init_abi): Likewise.
698
699 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
700         * valops.c (value_struct_elt_for_reference): Rename local variable
701         to work around the shadowing a previous local warning.
702
703 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
704
705         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
706         * NEWS: Mention new FreeBSD/riscv native configuration.
707         * configure.host: Add riscv*-*-freebsd*.
708         * configure.nat: Likewise.
709         * riscv-fbsd-nat.c: New file.
710
711 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
712
713         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
714         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
715         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
716         * NEWS: Mention new FreeBSD/riscv target.
717         * configure.tgt: Add riscv*-*-freebsd*.
718         * riscv-fbsd-tdep.c: New file.
719         * riscv-fbsd-tdep.h: New file.
720
721 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
722
723         * regcache.h (struct regcache_map_entry): Note that this type can
724         be used with traditional frame caches.
725         * trad-frame.c (trad_frame_set_reg_regmap): New.
726         * trad-frame.h (trad_frame_set_reg_regmap): New.
727
728 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
729
730         PR c++/16841
731         * valops.c (get_virtual_base_offset): New function.
732         (value_struct_elt_for_reference): Use it to get virtual base offset
733         and add it in calculating class member address.
734
735 2018-10-08   John Darrington <john@darrington.wattle.id.au>
736
737     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
738       (check_producer): Check if the producer is codewarrior.
739       (producer_is_codewarrior): New function.
740       (lnp_state_machine::record_line): Ignore is_stmt flag for records
741        produced by codewarrior.
742       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
743
744 2018-10-06  Tom Tromey  <tom@tromey.com>
745
746         PR python/19399:
747         * python/py-inferior.c: Add "architecture" entry.
748         (infpy_architecture): New function.
749
750 2018-10-06  Tom Tromey  <tom@tromey.com>
751
752         PR python/21765:
753         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
754         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
755         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
756         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
757
758 2018-10-06  Tom Tromey  <tom@tromey.com>
759
760         PR build/17077:
761         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
762         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
763         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
764         #include.
765
766 2018-10-06  Tom Tromey  <tom@tromey.com>
767
768         * python/py-breakpoint.c (bppy_get_location): Handle a
769         bp_breakpoint without a location.
770
771 2018-10-06  Tom Tromey  <tom@tromey.com>
772
773         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
774         (_RegEx): Reformat help text.
775         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
776         (AnyCallerIs, AnyCallerMatches): Reformat help text.
777         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
778         text.
779         * python/lib/gdb/command/xmethods.py (InfoXMethod)
780         (EnableXMethod, DisableXMethod): Remove help indentation.
781         Capitalize meta-syntactic variables.
782         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
783         (EnableUnwinder, DisableUnwinder): Remove help indentation.
784         Capitalize meta-syntactic variables.
785         * python/lib/gdb/command/explore.py (ExploreCommand)
786         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
787         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
788         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
789         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
790         Remove help indentation.
791         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
792         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
793         (DisableFrameFilter, SetFrameFilterPriority)
794         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
795
796 2018-10-06  Tom Tromey  <tom@tromey.com>
797
798         PR tui/28819:
799         * tui/tui-io.c (gdb_wgetch): New function.
800         (tui_mld_getc, tui_getc): Use it.
801
802 2018-10-05  Tom Tromey  <tom@tromey.com>
803
804         * sol-thread.c (sol_thread_target::wait): Rename inner
805         "save_ptid".
806
807 2018-10-04  Tom Tromey  <tom@tromey.com>
808
809         * configure: Rebuild.
810         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
811
812 2018-10-04  Tom Tromey  <tom@tromey.com>
813
814         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
815         declaration of "block".
816
817 2018-10-04  Tom Tromey  <tom@tromey.com>
818
819         * common/filestuff.c (fdwalk): Remove inner declaration of
820         "result".
821
822 2018-10-04  Tom Tromey  <tom@tromey.com>
823
824         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
825         "structs_addr" and hoist declaration.
826
827 2018-10-04  Tom Tromey  <tom@tromey.com>
828
829         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
830         variable "size".
831
832 2018-10-04  Tom Tromey  <tom@tromey.com>
833
834         * mdebugread.c (parse_partial_symbols): Use std::string.
835
836 2018-10-04  Tom Tromey  <tom@tromey.com>
837
838         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
839         * p-valprint.c (pascal_val_print): Split inner "i" variable.
840         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
841         header.
842         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
843         more inner scope.
844         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
845         * varobj.c (varobj_update): Rename inner "newobj",
846         "type_changed".
847         * valprint.c (generic_emit_char): Rename inner "buf".
848         * valops.c (find_overload_match): Rename inner "temp".
849         (value_struct_elt_for_reference): Declare "v" in more inner
850         scope.
851         * v850-tdep.c (v850_push_dummy_call): Rename "len".
852         * unittests/array-view-selftests.c (run_tests): Rename inner
853         "vec".
854         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
855         header.
856         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
857         "tsv" in more inner scope.
858         (print_one_static_tracepoint_marker): Rename inner
859         "tuple_emitter".
860         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
861         (tic6x_push_dummy_call): Don't redeclare "addr".
862         * target-float.c: Declare "dto" lower.
863         * symtab.c (lookup_local_symbol): Rename inner "sym".
864         (find_pc_sect_line): Rename inner "pc".
865         * stack.c (print_frame): Don't redeclare "gdbarch".
866         (return_command): Rename inner "gdbarch".
867         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
868         "sp".
869         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
870         header.
871         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
872         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
873         scope.
874         * remote.c (remote_target::update_thread_list): Don't redeclare
875         "tp".
876         (remote_target::process_initial_stop_replies): Rename inner
877         "thread".
878         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
879         (remote_target::wait_as): Don't redeclare "stop_reply".
880         (remote_target::get_thread_local_address): Rename inner
881         "result".
882         (remote_target::get_tib_address): Likewise.
883
884         * regcache.c (cooked_read_test): Rename "regnum".
885         * record-btrace.c (cmd_record_btrace_start): Rename inner
886         "exception".
887         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
888         loop header.
889         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
890         header.
891         (ppu2spu_sniffer): Rename inner "buf".
892         * parse.c (operator_check_standard): Rename inner "type",
893         "objfile".
894         * p-valprint.c (pascal_val_print): Introduce new scope for
895         "low_bound", "high_bound".
896         * p-exp.y (yylex): Declare "i" in loop header.
897         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
898         Lower declaration of "s".
899         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
900         header.
901         (nios2_push_dummy_call): Rename "len".
902         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
903         "buf".
904         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
905         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
906         (linux_xfer_osdata_modules): Likewise.
907         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
908         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
909         (mips_o64_push_dummy_call): Likewise.
910         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
911         "op".
912         * mi/mi-main.c (list_available_thread_groups): Rename inner
913         "tuple_emitter".
914         (mi_cmd_data_read_memory): Rename inner "opts".
915         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
916         "tuple_emitter".
917         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
918         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
919         more inner scope.
920         (parse_partial_symbols): Rename inner "pst", "p", "name"
921         * main.c (captured_main_1): Rename inner "i"s.
922         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
923         "oso2".
924         * linux-tdep.c (linux_info_proc): Rename inner "filename".
925         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
926         * infrun.c (handle_no_resumed): Don't redeclare "thread".
927         (handle_signal_stop): Rename inner "gdbarch".
928         (handle_command): Declare "signum" in loop header.
929         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
930         "status".
931         (examine_prologue): Rename inner "sol" and "sof".
932         (ia64_extract_return_value): Rename inner "val".  Declare another
933         "val" in a more inner scope.
934         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
935         inner scope.
936         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
937         "except".
938         * findvar.c (default_read_var_value): Don't redeclare "addr".
939         * f-exp.y (yylex): Declare "i" in loop header.
940         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
941         Rename inner "type", "expect_type".
942         (evaluate_subexp_for_sizeof): Rename inner "pc".
943         * elfread.c (elf_symfile_read): Rename inner "abfd".
944         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
945         "bytes_read".
946         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
947         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
948         (dwarf_decode_line_header): Rename inner "lh".
949         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
950         "offset".  Declare "i" in loop header.
951         (disassemble_dwarf_expression): Rename inner "addr_size".
952         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
953         inner "result".
954         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
955         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
956         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
957         "inner_list_emitter".
958         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
959         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
960         declaration in a block.
961         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
962         * cp-valprint.c (cp_print_value_fields): Don't redeclare
963         "obstack_final_size".
964         * cp-support.c (inspect_type): Declare "i" in loop header.
965         * compile/compile.c (compile_instance::insert_symbol_error):
966         Rename inner "e".
967         * common/agent.c (agent_run_command): Remove inner "ret"
968         declaration.
969         * coffread.c (coff_symfile_read): Rename inner "name".
970         (coff_symfile_read): Rename inner "abfd".
971         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
972         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
973         "high".
974         * c-exp.y (lex_one_token): Move "len" declaration lower.
975         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
976         "gdbarch".
977         (create_exception_master_breakpoint): Likewise.  Don't redeclare
978         "b".
979         (watch_command_1): Declare "mark" later.
980         (clear_command): Don't shadow "a" or "b".
981         (delete_command): Rename inner "b".
982         (delete_trace_command): Likewise.
983         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
984         "op".
985         (arm_gdbarch_init): Remove inner "e_flags".
986         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
987         "offset" in inner blocks.
988
989 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
990
991         * dwarf-index-write.c (file_write): Don't write if the vector is
992         empty.
993
994 2018-10-05  Tom de Vries  <tdevries@suse.de>
995
996         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
997         PyArg_ParseTuple call.
998
999 2018-10-05  Tom de Vries  <tdevries@suse.de>
1000
1001         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1002         PyArg_ParseTuple call.
1003
1004 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1005
1006         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1007         to avoid exceeding 80 characters per line limit.
1008
1009 2018-10-04  Tom Tromey  <tom@tromey.com>
1010
1011         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1012         (reread_symbols): Update.
1013         * complaints.h (clear_complaints): Remove argument.
1014         * complaints.c (enum complaint_series): Remove.
1015         (series): Remove global.
1016         (complaint_internal): Update.
1017         (clear_complaints): Remove argument.
1018
1019 2018-10-04  Tom Tromey  <tom@tromey.com>
1020
1021         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1022         debugging symbols" message if there is a separate debug objfile.
1023
1024 2018-10-04  Tom Tromey  <tom@tromey.com>
1025
1026         PR cli/19551:
1027         * symfile.c (symbol_file_add_with_addrs): Update output.
1028         * psymtab.c (require_partial_symbols): Update output.
1029
1030 2018-10-04  Tom Tromey  <tom@tromey.com>
1031
1032         PR cli/22234:
1033         * complaints.c: Emit \n.
1034
1035 2018-10-04  Tom Tromey  <tom@tromey.com>
1036
1037         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1038         (separate_debug_file_exists, find_separate_debug_file)
1039         (add_symbol_file_command, reread_symbols, allocate_symtab)
1040         (allocate_compunit_symtab): Use filtered printing, not
1041         unfiltered.
1042         * psymtab.c (require_partial_symbols, dump_psymtab)
1043         (allocate_psymtab): Use filtered printing, not unfiltered.
1044
1045 2018-10-04  Tom Tromey  <tom@tromey.com>
1046
1047         * complaints.c (complaint_internal): Correctly check complaint
1048         count.
1049
1050 2018-10-04  Tom Tromey  <tom@tromey.com>
1051
1052         * complaints.h (struct complaints): Remove declaration.
1053         * complaints.c (clear_complaints): Remove an unused variable.
1054
1055 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1056
1057         * MAINTAINERS (Write After Approval): Add self.
1058
1059 2018-10-03  Tom Tromey  <tom@tromey.com>
1060
1061         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1062         "buffer_contents".
1063         * coffread.c (coff_symtab_read): Initialize "newobj".
1064
1065 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1066
1067         * dwarf2read.c (read_func_scope): Remove struct keyword in
1068         range-based for.
1069
1070 2018-10-03  Tom Tromey  <tom@tromey.com>
1071
1072         * README: Mention --enable-ubsan.
1073         * NEWS: Mention --enable-ubsan.
1074         * acinclude.m4: Include sanitize.m4.
1075         * configure: Rebuild.
1076         * configure.ac: Call AM_GDB_UBSAN.
1077         * sanitize.m4: New file.
1078
1079 2018-10-03  Tom Tromey  <tom@tromey.com>
1080
1081         * expression.h (enum exp_opcode): Use uint8_t as base type.
1082         * expprint.c (op_name): Handle invalid opcodes.
1083
1084 2018-10-03  Tom Tromey  <tom@tromey.com>
1085
1086         * parse.c (prefixify_expression): Add assert.
1087         (parse_exp_in_context_1): Throw exception if the expression is
1088         empty.
1089
1090 2018-10-03  Tom Tromey  <tom@tromey.com>
1091
1092         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1093
1094 2018-10-03  Tom Tromey  <tom@tromey.com>
1095
1096         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1097
1098 2018-10-03  Tom Tromey  <tom@tromey.com>
1099
1100         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1101         unsigned.
1102
1103 2018-10-03  Tom Tromey  <tom@tromey.com>
1104
1105         * findvar.c (extract_integer): Do work in an unsigned type.
1106
1107 2018-10-03  Tom Tromey  <tom@tromey.com>
1108
1109         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1110         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1111         base type.
1112         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1113         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1114         type.
1115         * c-lang.h (enum c_string_type_values): Use unsigned as base
1116         type.
1117         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1118
1119 2018-10-03  Tom Tromey  <tom@tromey.com>
1120
1121         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1122         <~dwarf2_frame_state_reg_info>: Update.
1123         <dwarf2_frame_state_reg_info>: Update.
1124         <alloc_regs>: Add assertion.  Update.
1125         <reg>: Now a std::vector.
1126         <num_regs>: Remove.
1127         <swap>: Update.
1128         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1129         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1130
1131 2018-10-03  Tom Tromey  <tom@tromey.com>
1132
1133         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1134
1135 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1136
1137         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1138
1139 2018-10-02  Tom Tromey  <tom@tromey.com>
1140
1141         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1142
1143 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1144
1145         * NEWS: Mention changed commands.
1146         * ser-uds.c: New file.
1147         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1148         * configure: Regenerate.
1149         * Makefile.in: Add new file.
1150         * serial.c (serial_open): Check if filename is a socket
1151           and lookup the appropriate interface accordingly.
1152
1153 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1154
1155         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1156         define.
1157         (AARCH64_EXTRA_MAGIC): Likewise.
1158         (AARCH64_FPSIMD_MAGIC): Likewise.
1159         (AARCH64_SVE_MAGIC): Likewise.
1160         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1161         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1162         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1163         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1164         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1165         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1166         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1167         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1168         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1169         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1170         (read_aarch64_ctx): Add function.
1171         (aarch64_linux_sigframe_init): Detect FP registers.
1172
1173 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1174
1175         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1176         (AARCH64_D0_REGNUM): Likewise.
1177         (AARCH64_S0_REGNUM): Likewise.
1178         (AARCH64_H0_REGNUM): Likewise.
1179         (AARCH64_B0_REGNUM): Likewise.
1180         (AARCH64_SVE_V0_REGNUM): Likewise.
1181         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1182         (AARCH64_D0_REGNUM): Likewise.
1183         (AARCH64_S0_REGNUM): Likewise.
1184         (AARCH64_H0_REGNUM): Likewise.
1185         (AARCH64_B0_REGNUM): Likewise.
1186         (AARCH64_SVE_V0_REGNUM): Likewise.
1187
1188 2018-10-01  Gary Benson <gbenson@redhat.com>
1189
1190         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1191         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1192         prfpregset_t instead of gdb_prfpregset_t.
1193         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1194         * configure, config.in: Rebuild.
1195
1196 2018-10-01  Gary Benson <gbenson@redhat.com>
1197
1198         * common/gdb_proc_service.h: New file, factored out from...
1199         * gdb_proc_service.h: Moved common code to the above file.
1200         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1201
1202 2018-10-01  Gary Benson <gbenson@redhat.com>
1203
1204         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1205         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1206
1207 2018-10-01  Gary Benson <gbenson@redhat.com>
1208
1209         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1210         (AC_CHECK_HEADERS): Check for linux/elf.h.
1211         * configure, config.in: Rebuild.
1212         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1213         doesn't define elf_fpregset_t.
1214
1215 2018-10-01  Gary Benson <gbenson@redhat.com>
1216
1217         * gdb_proc_service.h: Whitespace change.
1218
1219 2018-10-01  Tom Tromey  <tom@tromey.com>
1220
1221         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1222         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1223         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1224
1225 2018-10-01  Tom Tromey  <tom@tromey.com>
1226
1227         * README: Minor change.
1228
1229 2018-09-30  Pedro Alves  <palves@redhat.com>
1230
1231         * darwin-nat-info.c (darwin_debug_regions_recurse)
1232         (info_mach_exceptions_command): Remove unused local variables.
1233         * darwin-nat.c (darwin_decode_notify_message)
1234         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1235         (darwin_stop_inferior, darwin_setup_exceptions)
1236         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1237         (darwin_nat_target::attach, darwin_nat_target::detach)
1238         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1239         local variables.
1240         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1241         variables.
1242
1243 2018-09-29  Tom Tromey  <tom@tromey.com>
1244
1245         * README: Remove some leftover text.
1246
1247 2018-09-29  Tom Tromey  <tom@tromey.com>
1248
1249         * PROBLEMS: Rewrite.
1250         * README: Update.
1251
1252 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1253
1254         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1255         case with explicit breakpoint kind.
1256         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1257         'additional_info' and related logic.
1258         (riscv_debug_breakpoints): New variable.
1259         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1260         instruction to determine the breakpoint kind.
1261         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1262         flag.  Update description of 'set/show riscv
1263         use-compressed-breakpoints' flag.
1264
1265 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1266
1267         (NEWS): Mention changes to frame related commands.
1268         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1269         (add_prefix_cmd_suppress_notification): New function.
1270         (add_com_suppress_notification): Call
1271         add_cmd_suppress_notification.
1272         * command.h (add_cmd_suppress_notification): Declare.
1273         (add_prefix_cmd_suppress_notification): Declare.
1274         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1275         (parse_frame_specification): Moved from stack.c, with
1276         simplification to handle a single argument.
1277         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1278         switch to the selected frame.  Add a header comment.
1279         * stack.c: Remove 'safe-ctype.h' include.
1280         (find_frame_for_function): Add declaration.
1281         (find_frame_for_address): New function.
1282         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1283         (frame_selection_by_function_completer): New function.
1284         (info_frame_command): Rename to...
1285         (info_frame_command_core): ...this, and update parameter types.
1286         (select_frame_command): Rename to...
1287         (select_frame_command_core): ...this, and update parameter types.
1288         (frame_command): Rename to...
1289         (frame_command_core): ...this, and update parameter types.
1290         (class frame_command_helper): New class to wrap implementations of
1291         frame related sub-commands.
1292         (frame_apply_cmd_list): New static global.
1293         (frame_cmd_list): Make static.
1294         (select_frame_cmd_list): New global for sub-commands.
1295         (info_frame_cmd_list): New global for sub-commands.
1296         (_initialize_stack): Register sub-commands for 'frame',
1297         'select-frame', and 'info frame'.  Update 'frame apply' commands
1298         to use frame_apply_cmd_list.  Move function local static
1299         frame_apply_list to file static frame_apply_cmd_list for
1300         consistency.
1301         * stack.h (select_frame_command): Delete declarationn.
1302         (select_frame_for_mi): Declare new function.
1303
1304 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1305
1306         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1307         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1308         and NOP.
1309
1310 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1311
1312         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1313
1314 2018-09-26  Tom Tromey  <tom@tromey.com>
1315
1316         * valops.c (auto_abandon): Remove dead code.
1317
1318 2018-09-26  Tom Tromey  <tom@tromey.com>
1319
1320         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1321
1322 2018-09-24  Tom Tromey  <tom@tromey.com>
1323
1324         * common/pathstuff.c (get_standard_cache_dir): Make
1325         "xdg_cache_home" and "home" const.
1326         * top.c (init_history): Make "tmpenv" const.
1327         * main.c (get_init_files): Make "homedir" const.
1328
1329 2018-09-23  Tom Tromey  <tom@tromey.com>
1330
1331         PR python/18852:
1332         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1333
1334 2018-09-23  Tom Tromey  <tom@tromey.com>
1335
1336         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1337         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1338         * python/python-internal.h (gdbpy_handle_exception): Declare.
1339         * python/py-utils.c (gdbpy_handle_exception): New function.
1340
1341 2018-09-23  Tom Tromey  <tom@tromey.com>
1342
1343         PR python/17284:
1344         * python/py-type.c (typy_template_argument): Check for negative
1345         argument number.
1346
1347 2018-09-23  Tom Tromey  <tom@tromey.com>
1348
1349         PR python/14062:
1350         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1351
1352 2018-09-23  Tom Tromey  <tom@tromey.com>
1353
1354         PR python/18170:
1355         * python/py-value.c (valpy_int): Allow conversion from pointer
1356         type.
1357
1358 2018-09-23  Tom Tromey  <tom@tromey.com>
1359
1360         PR python/20126:
1361         * python/py-value.c (valpy_int): Respect type sign.
1362
1363 2018-09-23  Tom Tromey  <tom@tromey.com>
1364
1365         PR python/18352;
1366         * python/py-value.c (valpy_float): Allow conversions from int or
1367         char.
1368         (valpy_int, valpy_long): Allow conversions from float.
1369
1370 2018-09-23  Tom Tromey  <tom@tromey.com>
1371
1372         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1373         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1374
1375 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1376
1377         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1378         __sighndlr.
1379         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1380
1381 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1382
1383         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1384         target_terminal::ours().
1385
1386 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1387
1388         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1389         of vl to ULONGEST.
1390
1391 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1392
1393         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1394         redundant condition.
1395
1396 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1397
1398         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1399
1400         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1401         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1402         * sol-thread.c (ps_pdmodel): Don't guard definition.
1403
1404         * procfs.c: Fix formatting.
1405
1406         * procfs.c (sysset_t_alloc): Remove.
1407         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1408         (procfs_debug_inferior): Likewise.
1409         (procfs_set_exec_trap): Likewise.
1410         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1411         (proc_set_traced_sysexit): Likewise.
1412
1413         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1414         (dead_procinfo): Likewise.
1415         (proc_warn): Likewise.
1416         (proc_error): Likewise.
1417         (proc_get_LDT_entry): Likewise.
1418         (do_attach): Likewise.
1419         (procfs_target::pid_to_str): Likewise.
1420         (iterate_over_mappings): Likewise.
1421
1422         * procfs.c (create_procinfo): Fix ARI warning.
1423         (proc_get_status): Likewise.
1424         (proc_stop_process): Likewise.
1425         (proc_run_process): Likewise.
1426         (proc_kill): Likewise.
1427         (proc_get_LDT_entry): Likewise.
1428         (procfs_find_LDT_entry): Likewise.
1429         (proc_update_threads): Likewise.
1430         (proc_iterate_over_threads): Likewise.
1431         (do_attach): Likewise.
1432         (procfs_xfer_memory): Likewise.
1433         (invalidate_cache): Likewise.
1434         (procfs_target::resume): Likewise.
1435         (procfs_init_inferior): Likewise.
1436         (procfs_set_exec_trap): Likewise.
1437         (procfs_target::thread_alive): Likewise.
1438         (procfs_target::pid_to_exec_file): Likewise.
1439         (iterate_over_mappings): Likewise.
1440         (procfs_target::make_corefile_notes): Likewise.
1441         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1442
1443         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1444         (procfs_find_LDT_entry): Likewise.
1445         * sol-thread.c (ps_lgetLDT): Likewise.
1446
1447 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1448
1449         PR tdep/17903
1450         * procfs.c (procfs_target): Declare pid_to_exec_file.
1451         (procfs_target::pid_to_exec_file): New.
1452
1453 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1454
1455         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1456         renaming.
1457         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1458         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1459
1460 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1461
1462         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1463         (supply_fpregset, fill_fpregset): Move ...
1464         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1465         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1466         Remove references to ioctl-based procfs.
1467         Include <sys/reg.h>.
1468         Remove PR_MODEL_NATIVE guards.
1469         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1470         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1471
1472 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1473
1474         PR gdb/20981:
1475         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1476         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1477         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1478
1479 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1480
1481         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1482         (fbsd_print_sockaddr_in6): Likewise.
1483
1484 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1485             Chris January  <chris.january@arm.com>
1486
1487         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1488         (evaluate_subexp_standard): Return a dummy type when
1489         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1490         OP_F77_UNDETERMINED_ARGLIST case.
1491         * expression.h (enum noside): Update comment.
1492
1493 2018-09-19  George Vasick <george.vasick@oracle.com>
1494
1495         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1496
1497 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1498             April Chin <april.chin@oracle.com>
1499             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1500
1501         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1502         uint_t lwpid_t.
1503         (create_procinfo): Print pids in /proc without leading zeros.
1504
1505 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1506
1507         * nios2-tdep.c (nios2_gcc_target_options): New.
1508         (nios2_gdb_arch_init): Install new hook.
1509
1510 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1511
1512         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1513         New file.
1514         * update-gnulib.sh: Apply patch.
1515         * configure: Re-generate.
1516
1517 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1518
1519         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1520         description.  Make "info proc" command descriptions more
1521         consistent.
1522
1523 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1524
1525         * NEWS: Mention 'info proc files' command.
1526
1527 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1528
1529         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1530         descriptors for IP_FILES and IP_ALL.
1531
1532 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1533
1534         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1535         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1536         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1537         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1538         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1539         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1540         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1541         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1542         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1543         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1544         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1545         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1546         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1547         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1548         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1549         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1550         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1551         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1552         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1553         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1554         (struct fbsd_sockaddr_un): New types.
1555         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1556         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1557         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1558         (fbsd_core_info_proc_files): New functions.
1559         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1560         IP_ALL.
1561         * fbsd-tdep.h (fbsd_info_proc_files_header)
1562         (fbsd_info_proc_files_entry): New.
1563
1564 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1565
1566         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1567         * infcmd.c (info_proc_cmd_files): New function.
1568         (_initialize_infcmd): Register 'info proc files' command.
1569
1570 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1571
1572         * gnulib/aclocal-m4-deps.mk: Re-generate.
1573         * gnulib/aclocal.m4: Re-generate.
1574         * gnulib/config.in: Re-generate.
1575         * gnulib/configure: Re-generate.
1576         * gnulib/import/Makefile.am: Re-generate.
1577         * gnulib/import/Makefile.in: Re-generate.
1578         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1579         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1580         * gnulib/import/arpa_inet.in.h: New file.
1581         * gnulib/import/inet_ntop.c: New file.
1582         * gnulib/import/m4/arpa_inet_h.m4: New file.
1583         * gnulib/import/m4/inet_ntop.m4: New file.
1584         * gnulib/import/m4/netinet_in_h.m4: New file.
1585         * gnulib/import/m4/socklen.m4: New file.
1586         * gnulib/import/m4/sockpfaf.m4: New file.
1587         * gnulib/import/m4/stdalign.m4: New file.
1588         * gnulib/import/m4/sys_uio_h.m4: New file.
1589         * gnulib/import/netinet_in.in.h: New file.
1590         * gnulib/import/stdalign.in.h: New file.
1591         * gnulib/import/sys_socket.c: New file.
1592         * gnulib/import/sys_socket.in.h: New file.
1593         * gnulib/import/sys_uio.in.h: New file.
1594         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1595         module.
1596
1597 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1598
1599         * gnulib/aclocal-m4-deps.mk: New file.
1600         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1601         deterministically.
1602
1603 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1604
1605         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1606         KVE_PATH.
1607
1608 2018-09-18  Tom Tromey  <tom@tromey.com>
1609
1610         * compile/compile-object-load.c (struct
1611         link_hash_table_cleanup_data): Add constructor and destructor.
1612         Use DISABLE_COPY_AND_ASSIGN.
1613         (~link_hash_table_cleanup_data): Rename from
1614         link_hash_table_free.  Now a destructor.
1615         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1616
1617 2018-09-18  Tom Tromey  <tom@tromey.com>
1618
1619         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1620         * compile/compile-object-load.c (struct munmap_list): Move to
1621         header file.
1622         (munmap_list::add): Rename from munmap_list_add; rewrite.
1623         (munmap_list::~munmap_list): Rename from munmap_list_free.
1624         (munmap_listp_free_cleanup): Remove.
1625         (compile_object_load): Update.
1626         * compile/compile-object-load.h (struct munmap_list): Move from
1627         compile-object-load.c.  Rewrite.
1628
1629 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1630
1631         * aarch64-tdep.c (pass_in_v): Use register size.
1632         (aarch64_extract_return_value): Likewise.
1633         (aarch64_store_return_value): Likewise.
1634
1635 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1636
1637         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1638         rlim_t.
1639
1640 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1641
1642         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1643         Fix short help line.
1644
1645 2018-09-17  Tom Tromey  <tom@tromey.com>
1646
1647         PR python/20445:
1648         * configure: Rebuild.
1649         * configure.ac: Conditionally use -DNDEBUG for Python.
1650
1651 2018-09-17  Tom Tromey  <tom@tromey.com>
1652
1653         * configure: Rebuild.
1654         * configure.ac: Use gmp as a library dependency when checking for
1655         mpfr.
1656
1657 2018-09-17  Pedro Alves  <palves@redhat.com>
1658
1659         * python/py-inferior.c (find_inferior_object): Delete.
1660
1661 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1662
1663         * compile/compile-cplus-types.c
1664         (compile_cplus_instance::enter_scope): Don't use new_scope after
1665         std::move.
1666
1667 2018-09-17  Tom Tromey  <tom@tromey.com>
1668
1669         * common/pathstuff.c (get_standard_cache_dir): Use
1670         ~/Library/Caches on macOS.
1671         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1672
1673 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1674
1675         PR python/23669
1676         * breakpoint.c (commands_cmd_element): New.
1677         (_initialize_breakpoint): Assign commands_cmd_element.
1678         * breakpoint.h (commands_cmd_element): New.
1679         * cli/cli-script.c (while_cmd_element, if_command,
1680         define_cmd_element): New.
1681         (command_name_equals): Remove.
1682         (process_next_line): Compare commands by pointer, not by name.
1683         (_initialize_cli_script): Assign the various cmd_list_element
1684         variables.
1685         * compile/compile.c (compile_cmd_element): New.
1686         (_initialize_compile): Assign compile_cmd_element.
1687         * compile/compile.h (compile_cmd_element): New.
1688         * guile/guile.c (guile_cmd_element): New.
1689         (install_gdb_commands): Assign guile_cmd_element.
1690         * guile/guile.h (guile_cmd_element): New.
1691         * python/python.c (python_cmd_element): New.
1692         (_initialize_python): Assign python_cmd_element.
1693         * python/python.h (python_cmd_element): New.
1694         * tracepoint.c (while_stepping_cmd_element): New.
1695         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1696         * tracepoint.h (while_stepping_cmd_element): New.
1697
1698 2018-09-17  Tom Tromey  <tom@tromey.com>
1699
1700         * infrun.c (save_infcall_suspend_state): Return
1701         infcall_suspend_state_up.
1702         (save_infcall_control_state): Return infcall_control_state_up.
1703         * inferior.h (save_infcall_suspend_state)
1704         (save_infcall_control_state): Declare later.  Return unique
1705         pointers.
1706
1707 2018-09-17  Tom Tromey  <tom@tromey.com>
1708
1709         * infrun.c (struct stop_context): Declare constructor,
1710         destructor, "changed" method.
1711         (stop_context::stop_context): Rename from save_stop_context.
1712         (stop_context::~stop_context): Rename from
1713         release_stop_context_cleanup.
1714         (normal_stop): Update.
1715         (stop_context::changed): Rename from stop_context_changed.  Return
1716         bool.
1717
1718 2018-09-17  Tom Tromey  <tom@tromey.com>
1719
1720         * inferior.h (struct infcall_suspend_state_deleter): New.
1721         (infcall_suspend_state_up): New typedef.
1722         (struct infcall_control_state_deleter): New.
1723         (infcall_control_state_up): New typedef.
1724         (make_cleanup_restore_infcall_suspend_state)
1725         (make_cleanup_restore_infcall_control_state): Don't declare.
1726         * infcall.c (call_function_by_hand_dummy): Update.
1727         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1728         (make_cleanup_restore_infcall_suspend_state): Remove.
1729         (do_restore_infcall_control_state_cleanup)
1730         (make_cleanup_restore_infcall_control_state): Remove.
1731
1732 2018-09-17  Tom Tromey  <tom@tromey.com>
1733
1734         * gdbthread.h (struct thread_control_state): Add initializer.
1735         (class thread_info) <control>: Remove initializer.
1736         * inferior.h (struct inferior_control_state): Add initializer.
1737         (class inferior) <control>: Remove initializer.
1738         (exit_inferior_1): Update.
1739         * infrun.c (struct infcall_control_state): Add constructors.
1740         (save_infcall_control_state): Use new.
1741         (restore_infcall_control_state, discard_infcall_control_state):
1742         Use delete.
1743
1744 2018-09-17  Tom Tromey  <tom@tromey.com>
1745
1746         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1747         unique_ptr.
1748         <siginfo_data>: Now a unique_xmalloc_ptr.
1749         (save_infcall_suspend_state, restore_infcall_suspend_state)
1750         (discard_infcall_suspend_state)
1751         (get_infcall_suspend_state_regcache): Update.
1752
1753 2018-09-17  Tom Tromey  <tom@tromey.com>
1754
1755         * gdbthread.h (struct thread_suspend_state): Add initializers.
1756         (class thread_info) <suspend>: Remove initializer.
1757         * infrun.c (struct infcall_suspend_state): Add initializers.
1758         (save_infcall_suspend_state): Use new.
1759         (discard_infcall_suspend_state): Use delete.
1760
1761 2018-09-16  Tom Tromey  <tom@tromey.com>
1762
1763         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1764         Remove.
1765         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1766         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1767         (py_varobj_iter_new): Likewise.
1768         (py_varobj_get_iterator): Use gdbpy_ref.
1769
1770 2018-09-16  Tom Tromey  <tom@tromey.com>
1771
1772         * python/py-threadevent.c (py_get_event_thread): Simplify.
1773         * python/py-inferior.c (infpy_thread_from_thread_handle):
1774         Return immediately after calling thread_to_thread_object.  Use
1775         Py_RETURN_NONE.
1776         (thread_to_thread_object): Set the exception on a NULL return.
1777
1778 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1779
1780         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1781
1782 2018-09-16  Tom Tromey  <tom@tromey.com>
1783
1784         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1785         Remove.
1786
1787 2018-09-16  Tom Tromey  <tom@tromey.com>
1788
1789         * python/python-internal.h (thread_to_thread_object): Change
1790         return type.
1791         * python/py-inferior.c (thread_to_thread_object): Return a new
1792         reference.
1793         (infpy_thread_from_thread_handle): Update.
1794         * python/py-infthread.c (gdbpy_selected_thread): Update.
1795         * python/py-stopevent.c (create_stop_event_object): Update.
1796         * python/py-threadevent.c (py_get_event_thread): Return a new
1797         reference.
1798         (py_get_event_thread): Update.
1799         * python/py-event.h (py_get_event_thread): Change return type.
1800         * python/py-continueevent.c (create_continue_event_object):
1801         Update.
1802
1803 2018-09-16  Tom Tromey  <tom@tromey.com>
1804
1805         * python/py-progspace.c (pspy_get_objfiles): Update.
1806         * python/python-internal.h (objfile_to_objfile_object): Change
1807         return type.
1808         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1809         Update.
1810         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1811         Update.
1812         * python/python.c (gdbpy_get_current_objfile): Update.
1813         (gdbpy_objfiles): Update.
1814         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1815         Update.
1816         (objfile_to_objfile_object): Return a new reference.
1817         * python/py-symtab.c (stpy_get_objfile): Update.
1818         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1819         Update.
1820
1821 2018-09-16  Tom Tromey  <tom@tromey.com>
1822
1823         * python/py-inferior.c (infpy_get_progspace): Update.
1824         * python/python-internal.h (pspace_to_pspace_object): Change
1825         return type.
1826         * python/py-newobjfileevent.c
1827         (create_clear_objfiles_event_object): Update.
1828         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1829         Update.
1830         * python/python.c (gdbpy_get_current_progspace): Update.
1831         (gdbpy_progspaces): Update.
1832         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1833         reference.
1834         * python/py-objfile.c (objfpy_get_progspace): Update.
1835         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1836         Update.
1837
1838 2018-09-16  Tom Tromey  <tom@tromey.com>
1839
1840         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1841         (solib_name, block_for_pc, find_pc_line): New functions.
1842         (execute_unwinders): Update.
1843         * python/py-block.c (gdbpy_block_for_pc): Remove.
1844         * python/py-inferior.c (infpy_get_progspace): New function.
1845         (inferior_object_getset) <progspace>: Add.
1846         * python/py-progspace.c (pspy_objfiles): Rewrite.
1847         (pspy_solib_name, pspy_block_for_pc)
1848         (pspy_find_pc_line, pspy_is_valid): New functions.
1849         (progspace_object_methods): Add entries for solib_name,
1850         block_for_pc, find_pc_line, is_valid.
1851         * python/python-internal.h (gdbpy_block_for_pc)
1852         (build_objfiles_list): Don't declare.
1853         * python/python.c: Don't include solib.h.
1854         (gdbpy_solib_name, gdbpy_find_pc_line)
1855         (gdbpy_get_current_progspace, build_objfiles_list)
1856         (gdbpy_objfiles): Remove.
1857         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1858         solib_name, find_pc_line>: Remove entries.
1859
1860 2018-09-16  Tom Tromey  <tom@tromey.com>
1861
1862         * top.c (new_ui_command): Use GNU style for metasyntactic
1863         variables.
1864         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1865         variables.
1866         * maint.c (maintenance_translate_address): Remove "<>" around
1867         text.
1868         * interps.c (interpreter_exec_cmd): Use GNU style for
1869         metasyntactic variables.
1870         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1871         metasyntactic variables.
1872         * tracepoint.c (tfind_range_command): Use GNU style for
1873         metasyntactic variables.
1874         (tfind_outside_command): Likewise.
1875         (_initialize_tracepoint): Likewise.
1876         * remote.c (extended_remote_target::create_inferior): Use GNU
1877         style for metasyntactic variables.
1878         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1879         metasyntactic variables.
1880         (adi_assign_command): Likewise.
1881
1882 2018-09-16  Tom Tromey  <tom@tromey.com>
1883
1884         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1885         metasyntactic variables.  Print message if no disassembler options
1886         are available.
1887
1888 2018-09-15  Tom Tromey  <tom@tromey.com>
1889
1890         * infcmd.c (get_inferior_args): Return const char *.
1891         * inferior.h (get_inferior_args): Return type now const.
1892         * linux-tdep.c (linux_fill_prpsinfo): Update.
1893         * procfs.c (procfs_target::make_corefile_notes): Update.
1894
1895 2018-09-07  Tom Tromey  <tom@tromey.com>
1896
1897         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1898         inside the TRY.
1899
1900 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1901
1902         * nios2-tdep.c (nios2_type_align): New.
1903         (nios2_gdb_arch_init): Install type_align hook.
1904
1905 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1906
1907         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1908         type that is neither object file owned, nor gdbarch owned.
1909         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1910         gdbarch is non-NULL.
1911         (alloc_type_instance): Allocate non-objfile owned types on the
1912         gdbarch obstack.
1913         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1914         using TYPE_ALLOC to ensure memory is allocated on the correct
1915         obstack.
1916         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1917         obstack, or the gdbarch obstack.
1918         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1919
1920 2018-09-14  Tom Tromey  <tom@tromey.com>
1921
1922         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1923         block.
1924
1925 2018-09-14  Tom Tromey  <tom@tromey.com>
1926
1927         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1928
1929 2018-09-13  Tom Tromey  <tom@tromey.com>
1930
1931         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1932         static.
1933
1934 2018-09-13  Tom Tromey  <tom@tromey.com>
1935
1936         * exec.c (try_open_exec_file): Use std::string.
1937
1938 2018-09-13  Tom Tromey  <tom@tromey.com>
1939
1940         * utils.h (gdb_bfd_errmsg): Return std::string.
1941         * exec.c (exec_file_attach): Update.
1942         * compile/compile-object-load.c (compile_object_load): Update.
1943         * utils.c (gdb_bfd_errmsg): Return std::string.
1944
1945 2018-09-13  Tom Tromey  <tom@tromey.com>
1946
1947         * procfs.c (struct procinfo_deleter): New.
1948         (procinfo_up): New typedef.
1949         (do_destroy_procinfo_cleanup): Remove.
1950         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1951
1952 2018-09-13  Tom Tromey  <tom@tromey.com>
1953
1954         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1955
1956 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1957 2018-09-13  Tom Tromey  <tom@tromey.com>
1958
1959         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1960         (pspy_get_objfiles): New function.
1961         (progspace_object_methods): New.
1962         (pspace_object_type): Add tp_methods callback.
1963         * python/python-internal.h (build_objfiles_list): New
1964         declaration.
1965         * python/python.c (build_objfiles_list): New function.
1966         (gdbpy_objfiles): Implement using build_objfiles_list.
1967         * NEWS: Mention the Progspace.objfiles method.
1968
1969 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1970
1971         * python/py-inferior.c (infpy_get_progspace): New function.
1972         (inferior_object_getset): Add progspace property.
1973         * NEWS: Mention the new property.
1974
1975 2018-09-13  Tom Tromey  <tom@tromey.com>
1976
1977         PR rust/23650:
1978         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1979
1980 2018-09-13  Tom Tromey  <tom@tromey.com>
1981
1982         PR rust/23626:
1983         * rust-lang.c (rust_enum_variant): Now static.
1984         (rust_empty_enum_p): New function.
1985         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1986         Handle empty enum.
1987
1988 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1989
1990         * python/py-inferior.c (infpy_repr): New.
1991         (inferior_object_type): Register infpy_repr.
1992         * python/py-objfile.c (objfpy_repr): New.
1993         (objfile_object_type): Register objfpy_repr.
1994
1995 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1996
1997         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1998
1999 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2000
2001         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2002         typo.
2003
2004 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2005
2006         * common/common-utils.c: Don't include '<sys/stat.h>'.
2007         (is_regular_file): Move to...
2008         * common/filestuff.c (is_regular_file): ... here.
2009         * common/common-utils.h (is_regular_file): Move to...
2010         * common/filestuff.h (is_regular_file): ... here.
2011
2012 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2013
2014         * skip.c (debug_skip): New variable.
2015         (skiplist_entry::do_skip_file_p): Add debug output.
2016         (skiplist_entry::do_skip_gfile_p): Likewise.
2017         (skiplist_entry::skip_function_p): Likewise.
2018         (_initialize_step_skip): Create debug command.
2019         * NEWS: Mention set/show debug skip.
2020
2021 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2022
2023         * darwin-nat.c (should_disable_startup_with_shell):
2024         New function.
2025         (darwin_nat_target::create_inferior): Add call.
2026
2027 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2028
2029         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2030         inf_port, msg_state>: Initialize.
2031         (struct darwin_thread_info) <signaled, single_step>: Change
2032         type and initialize.
2033         (struct darwin_thread_info) <event>: Initialize.
2034
2035 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2036
2037         PR gdb/23555
2038         PR gdb/23558
2039         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2040         guesses.
2041
2042 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2043
2044         Revert:
2045         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2046
2047         PR gdb/23555
2048         PR gdb/23558
2049         * gnulib/aclocal.m4: Regenerate.
2050         * gnulib/config.in: Regenerate.
2051         * gnulib/configure: Regenerate.
2052         * gnulib/import/Makefile.am: Update.
2053         * gnulib/import/Makefile.in: Update.
2054         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2055         * gnulib/import/_Noreturn.h: ... this.
2056         * gnulib/import/alloca.in.h: Update.
2057         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2058         * gnulib/import/arg-nonnull.h: ... this.
2059         * gnulib/import/assure.h: Update.
2060         * gnulib/import/at-func.c: Update.
2061         * gnulib/import/basename-lgpl.c: Update.
2062         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2063         * gnulib/import/c++defs.h: ... this.
2064         * gnulib/import/canonicalize-lgpl.c: Update.
2065         * gnulib/import/cdefs.h: Update.
2066         * gnulib/import/chdir-long.c: Update.
2067         * gnulib/import/chdir-long.h: Update.
2068         * gnulib/import/cloexec.c: Update.
2069         * gnulib/import/cloexec.h: Update.
2070         * gnulib/import/close.c: Update.
2071         * gnulib/import/closedir.c: Update.
2072         * gnulib/import/config.charset: Update.
2073         * gnulib/import/dirent-private.h: Update.
2074         * gnulib/import/dirent.in.h: Update.
2075         * gnulib/import/dirfd.c: Update.
2076         * gnulib/import/dirname-lgpl.c: Update.
2077         * gnulib/import/dirname.h: Update.
2078         * gnulib/import/dosname.h: Update.
2079         * gnulib/import/dup-safer-flag.c: Update.
2080         * gnulib/import/dup-safer.c: Update.
2081         * gnulib/import/dup.c: Update.
2082         * gnulib/import/dup2.c: Update.
2083         * gnulib/import/errno.in.h: Update.
2084         * gnulib/import/error.c: Update.
2085         * gnulib/import/error.h: Update.
2086         * gnulib/import/exitfail.c: Update.
2087         * gnulib/import/exitfail.h: Update.
2088         * gnulib/import/extra/update-copyright: Update.
2089         * gnulib/import/fchdir.c: Update.
2090         * gnulib/import/fcntl.c: Update.
2091         * gnulib/import/fcntl.in.h: Update.
2092         * gnulib/import/fd-hook.c: Update.
2093         * gnulib/import/fd-hook.h: Update.
2094         * gnulib/import/fd-safer-flag.c: Update.
2095         * gnulib/import/fd-safer.c: Update.
2096         * gnulib/import/fdopendir.c: Update.
2097         * gnulib/import/filename.h: Update.
2098         * gnulib/import/filenamecat-lgpl.c: Update.
2099         * gnulib/import/filenamecat.h: Update.
2100         * gnulib/import/flexmember.h: Update.
2101         * gnulib/import/float+.h: Update.
2102         * gnulib/import/float.c: Update.
2103         * gnulib/import/float.in.h: Update.
2104         * gnulib/import/fnmatch.c: Update.
2105         * gnulib/import/fnmatch.in.h: Update.
2106         * gnulib/import/fnmatch_loop.c: Update.
2107         * gnulib/import/fpucw.h: Update.
2108         * gnulib/import/frexp.c: Update.
2109         * gnulib/import/frexpl.c: Update.
2110         * gnulib/import/fstat.c: Update.
2111         * gnulib/import/fstatat.c: Update.
2112         * gnulib/import/getcwd-lgpl.c: Update.
2113         * gnulib/import/getcwd.c: Update.
2114         * gnulib/import/getdtablesize.c: Update.
2115         * gnulib/import/getlogin_r.c: Update.
2116         * gnulib/import/getprogname.c: Update.
2117         * gnulib/import/getprogname.h: Update.
2118         * gnulib/import/gettext.h: Update.
2119         * gnulib/import/gettimeofday.c: Update.
2120         * gnulib/import/glob-libc.h: Update.
2121         * gnulib/import/glob.c: Update.
2122         * gnulib/import/glob.in.h: Update.
2123         * gnulib/import/glob_internal.h: Update.
2124         * gnulib/import/glob_pattern_p.c: Update.
2125         * gnulib/import/globfree.c: Update.
2126         * gnulib/import/hard-locale.c: Update.
2127         * gnulib/import/hard-locale.h: Update.
2128         * gnulib/import/intprops.h: Update.
2129         * gnulib/import/inttypes.in.h: Update.
2130         * gnulib/import/isnan.c: Update.
2131         * gnulib/import/isnand-nolibm.h: Update.
2132         * gnulib/import/isnand.c: Update.
2133         * gnulib/import/isnanl-nolibm.h: Update.
2134         * gnulib/import/isnanl.c: Update.
2135         * gnulib/import/itold.c: Update.
2136         * gnulib/import/libc-config.h: Update.
2137         * gnulib/import/limits.in.h: Update.
2138         * gnulib/import/localcharset.c: Update.
2139         * gnulib/import/localcharset.h: Update.
2140         * gnulib/import/localtime-buffer.c: Update.
2141         * gnulib/import/localtime-buffer.h: Update.
2142         * gnulib/import/lstat.c: Update.
2143         * gnulib/import/m4/00gnulib.m4: Update.
2144         * gnulib/import/m4/__inline.m4: Update.
2145         * gnulib/import/m4/absolute-header.m4: Update.
2146         * gnulib/import/m4/alloca.m4: Update.
2147         * gnulib/import/m4/builtin-expect.m4: Update.
2148         * gnulib/import/m4/canonicalize.m4: Update.
2149         * gnulib/import/m4/chdir-long.m4: Update.
2150         * gnulib/import/m4/close.m4: Update.
2151         * gnulib/import/m4/closedir.m4: Update.
2152         * gnulib/import/m4/configmake.m4: Update.
2153         * gnulib/import/m4/d-ino.m4: Update.
2154         * gnulib/import/m4/d-type.m4: Update.
2155         * gnulib/import/m4/dirent_h.m4: Update.
2156         * gnulib/import/m4/dirfd.m4: Update.
2157         * gnulib/import/m4/dirname.m4: Update.
2158         * gnulib/import/m4/double-slash-root.m4: Update.
2159         * gnulib/import/m4/dup.m4: Update.
2160         * gnulib/import/m4/dup2.m4: Update.
2161         * gnulib/import/m4/eealloc.m4: Update.
2162         * gnulib/import/m4/environ.m4: Update.
2163         * gnulib/import/m4/errno_h.m4: Update.
2164         * gnulib/import/m4/error.m4: Update.
2165         * gnulib/import/m4/exponentd.m4: Update.
2166         * gnulib/import/m4/exponentl.m4: Update.
2167         * gnulib/import/m4/extensions.m4: Update.
2168         * gnulib/import/m4/extern-inline.m4: Update.
2169         * gnulib/import/m4/fchdir.m4: Update.
2170         * gnulib/import/m4/fcntl-o.m4: Update.
2171         * gnulib/import/m4/fcntl.m4: Update.
2172         * gnulib/import/m4/fcntl_h.m4: Update.
2173         * gnulib/import/m4/fdopendir.m4: Update.
2174         * gnulib/import/m4/filenamecat.m4: Update.
2175         * gnulib/import/m4/flexmember.m4: Update.
2176         * gnulib/import/m4/float_h.m4: Update.
2177         * gnulib/import/m4/fnmatch.m4: Update.
2178         * gnulib/import/m4/fnmatch_h.m4: Update.
2179         * gnulib/import/m4/fpieee.m4: Update.
2180         * gnulib/import/m4/frexp.m4: Update.
2181         * gnulib/import/m4/frexpl.m4: Update.
2182         * gnulib/import/m4/fstat.m4: Update.
2183         * gnulib/import/m4/fstatat.m4: Update.
2184         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2185         * gnulib/import/m4/getcwd-path-max.m4: Update.
2186         * gnulib/import/m4/getcwd.m4: Update.
2187         * gnulib/import/m4/getdtablesize.m4: Update.
2188         * gnulib/import/m4/getlogin.m4: Update.
2189         * gnulib/import/m4/getlogin_r.m4: Update.
2190         * gnulib/import/m4/getpagesize.m4: Update.
2191         * gnulib/import/m4/getprogname.m4: Update.
2192         * gnulib/import/m4/gettimeofday.m4: Update.
2193         * gnulib/import/m4/glibc21.m4: Update.
2194         * gnulib/import/m4/glob.m4: Update.
2195         * gnulib/import/m4/glob_h.m4: Update.
2196         * gnulib/import/m4/gnulib-cache.m4: Update.
2197         * gnulib/import/m4/gnulib-common.m4: Update.
2198         * gnulib/import/m4/gnulib-comp.m4: Update.
2199         * gnulib/import/m4/gnulib-tool.m4: Update.
2200         * gnulib/import/m4/hard-locale.m4: Update.
2201         * gnulib/import/m4/include_next.m4: Update.
2202         * gnulib/import/m4/inttypes-pri.m4: Update.
2203         * gnulib/import/m4/inttypes.m4: Update.
2204         * gnulib/import/m4/isnand.m4: Update.
2205         * gnulib/import/m4/isnanl.m4: Update.
2206         * gnulib/import/m4/largefile.m4: Update.
2207         * gnulib/import/m4/limits-h.m4: Update.
2208         * gnulib/import/m4/localcharset.m4: Update.
2209         * gnulib/import/m4/locale-fr.m4: Update.
2210         * gnulib/import/m4/locale-ja.m4: Update.
2211         * gnulib/import/m4/locale-zh.m4: Update.
2212         * gnulib/import/m4/localtime-buffer.m4: Update.
2213         * gnulib/import/m4/longlong.m4: Update.
2214         * gnulib/import/m4/lstat.m4: Update.
2215         * gnulib/import/m4/malloc.m4: Update.
2216         * gnulib/import/m4/malloca.m4: Update.
2217         * gnulib/import/m4/math_h.m4: Update.
2218         * gnulib/import/m4/mbrtowc.m4: Update.
2219         * gnulib/import/m4/mbsinit.m4: Update.
2220         * gnulib/import/m4/mbsrtowcs.m4: Update.
2221         * gnulib/import/m4/mbstate_t.m4: Update.
2222         * gnulib/import/m4/memchr.m4: Update.
2223         * gnulib/import/m4/memmem.m4: Update.
2224         * gnulib/import/m4/mempcpy.m4: Update.
2225         * gnulib/import/m4/memrchr.m4: Update.
2226         * gnulib/import/m4/mkdir.m4: Update.
2227         * gnulib/import/m4/mkstemp.m4: Update.
2228         * gnulib/import/m4/mmap-anon.m4: Update.
2229         * gnulib/import/m4/mode_t.m4: Update.
2230         * gnulib/import/m4/msvc-inval.m4: Update.
2231         * gnulib/import/m4/msvc-nothrow.m4: Update.
2232         * gnulib/import/m4/multiarch.m4: Update.
2233         * gnulib/import/m4/nocrash.m4: Update.
2234         * gnulib/import/m4/off_t.m4: Update.
2235         * gnulib/import/m4/onceonly.m4: Update.
2236         * gnulib/import/m4/open-cloexec.m4: Update.
2237         * gnulib/import/m4/open.m4: Update.
2238         * gnulib/import/m4/openat.m4: Update.
2239         * gnulib/import/m4/opendir.m4: Update.
2240         * gnulib/import/m4/pathmax.m4: Update.
2241         * gnulib/import/m4/rawmemchr.m4: Update.
2242         * gnulib/import/m4/readdir.m4: Update.
2243         * gnulib/import/m4/readlink.m4: Update.
2244         * gnulib/import/m4/realloc.m4: Update.
2245         * gnulib/import/m4/rename.m4: Update.
2246         * gnulib/import/m4/rewinddir.m4: Update.
2247         * gnulib/import/m4/rmdir.m4: Update.
2248         * gnulib/import/m4/save-cwd.m4: Update.
2249         * gnulib/import/m4/secure_getenv.m4: Update.
2250         * gnulib/import/m4/setenv.m4: Update.
2251         * gnulib/import/m4/signal_h.m4: Update.
2252         * gnulib/import/m4/ssize_t.m4: Update.
2253         * gnulib/import/m4/stat-time.m4: Update.
2254         * gnulib/import/m4/stat.m4: Update.
2255         * gnulib/import/m4/std-gnu11.m4: Update.
2256         * gnulib/import/m4/stdbool.m4: Update.
2257         * gnulib/import/m4/stddef_h.m4: Update.
2258         * gnulib/import/m4/stdint.m4: Update.
2259         * gnulib/import/m4/stdio_h.m4: Update.
2260         * gnulib/import/m4/stdlib_h.m4: Update.
2261         * gnulib/import/m4/strchrnul.m4: Update.
2262         * gnulib/import/m4/strdup.m4: Update.
2263         * gnulib/import/m4/strerror.m4: Update.
2264         * gnulib/import/m4/string_h.m4: Update.
2265         * gnulib/import/m4/strstr.m4: Update.
2266         * gnulib/import/m4/strtok_r.m4: Update.
2267         * gnulib/import/m4/sys_socket_h.m4: Update.
2268         * gnulib/import/m4/sys_stat_h.m4: Update.
2269         * gnulib/import/m4/sys_time_h.m4: Update.
2270         * gnulib/import/m4/sys_types_h.m4: Update.
2271         * gnulib/import/m4/tempname.m4: Update.
2272         * gnulib/import/m4/time_h.m4: Update.
2273         * gnulib/import/m4/unistd-safer.m4: Update.
2274         * gnulib/import/m4/unistd_h.m4: Update.
2275         * gnulib/import/m4/warn-on-use.m4: Update.
2276         * gnulib/import/m4/wchar_h.m4: Update.
2277         * gnulib/import/m4/wchar_t.m4: Update.
2278         * gnulib/import/m4/wctype_h.m4: Update.
2279         * gnulib/import/m4/wint_t.m4: Update.
2280         * gnulib/import/malloc.c: Update.
2281         * gnulib/import/malloc/scratch_buffer.h: Update.
2282         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2283         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2284         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2285         * gnulib/import/malloca.c: Update.
2286         * gnulib/import/malloca.h: Update.
2287         * gnulib/import/malloca.valgrind: Update.
2288         * gnulib/import/math.in.h: Update.
2289         * gnulib/import/mbrtowc.c: Update.
2290         * gnulib/import/mbsinit.c: Update.
2291         * gnulib/import/mbsrtowcs-impl.h: Update.
2292         * gnulib/import/mbsrtowcs-state.c: Update.
2293         * gnulib/import/mbsrtowcs.c: Update.
2294         * gnulib/import/memchr.c: Update.
2295         * gnulib/import/memmem.c: Update.
2296         * gnulib/import/mempcpy.c: Update.
2297         * gnulib/import/memrchr.c: Update.
2298         * gnulib/import/mkdir.c: Update.
2299         * gnulib/import/mkstemp.c: Update.
2300         * gnulib/import/msvc-inval.c: Update.
2301         * gnulib/import/msvc-inval.h: Update.
2302         * gnulib/import/msvc-nothrow.c: Update.
2303         * gnulib/import/msvc-nothrow.h: Update.
2304         * gnulib/import/open.c: Update.
2305         * gnulib/import/openat-die.c: Update.
2306         * gnulib/import/openat-priv.h: Update.
2307         * gnulib/import/openat-proc.c: Update.
2308         * gnulib/import/openat.c: Update.
2309         * gnulib/import/openat.h: Update.
2310         * gnulib/import/opendir.c: Update.
2311         * gnulib/import/pathmax.h: Update.
2312         * gnulib/import/pipe-safer.c: Update.
2313         * gnulib/import/rawmemchr.c: Update.
2314         * gnulib/import/readdir.c: Update.
2315         * gnulib/import/readlink.c: Update.
2316         * gnulib/import/realloc.c: Update.
2317         * gnulib/import/ref-add.sin: Update.
2318         * gnulib/import/ref-del.sin: Update.
2319         * gnulib/import/rename.c: Update.
2320         * gnulib/import/rewinddir.c: Update.
2321         * gnulib/import/rmdir.c: Update.
2322         * gnulib/import/same-inode.h: Update.
2323         * gnulib/import/save-cwd.c: Update.
2324         * gnulib/import/save-cwd.h: Update.
2325         * gnulib/import/scratch_buffer.h: Update.
2326         * gnulib/import/secure_getenv.c: Update.
2327         * gnulib/import/setenv.c: Update.
2328         * gnulib/import/signal.in.h: Update.
2329         * gnulib/import/stat-time.c: Update.
2330         * gnulib/import/stat-time.h: Update.
2331         * gnulib/import/stat-w32.c: Update.
2332         * gnulib/import/stat-w32.h: Update.
2333         * gnulib/import/stat.c: Update.
2334         * gnulib/import/stdbool.in.h: Update.
2335         * gnulib/import/stddef.in.h: Update.
2336         * gnulib/import/stdint.in.h: Update.
2337         * gnulib/import/stdio.in.h: Update.
2338         * gnulib/import/stdlib.in.h: Update.
2339         * gnulib/import/str-two-way.h: Update.
2340         * gnulib/import/strchrnul.c: Update.
2341         * gnulib/import/strdup.c: Update.
2342         * gnulib/import/streq.h: Update.
2343         * gnulib/import/strerror-override.c: Update.
2344         * gnulib/import/strerror-override.h: Update.
2345         * gnulib/import/strerror.c: Update.
2346         * gnulib/import/string.in.h: Update.
2347         * gnulib/import/stripslash.c: Update.
2348         * gnulib/import/strnlen1.c: Update.
2349         * gnulib/import/strnlen1.h: Update.
2350         * gnulib/import/strstr.c: Update.
2351         * gnulib/import/strtok_r.c: Update.
2352         * gnulib/import/sys_stat.in.h: Update.
2353         * gnulib/import/sys_time.in.h: Update.
2354         * gnulib/import/sys_types.in.h: Update.
2355         * gnulib/import/tempname.c: Update.
2356         * gnulib/import/tempname.h: Update.
2357         * gnulib/import/time.in.h: Update.
2358         * gnulib/import/unistd--.h: Update.
2359         * gnulib/import/unistd-safer.h: Update.
2360         * gnulib/import/unistd.in.h: Update.
2361         * gnulib/import/unsetenv.c: Update.
2362         * gnulib/import/verify.h: Update.
2363         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2364         * gnulib/import/wchar.in.h: Update.
2365         * gnulib/import/wctype.in.h: Update.
2366         * gnulib/import/xalloc-oversized.h: Update.
2367         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2368         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2369
2370 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2371
2372         * record-btrace.c (get_thread_current_frame): Remove
2373         old_inferior_ptid.
2374
2375 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2376
2377         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2378         with check_tag to 1 if and only if the type is tagged and the
2379         component being searched cannot been found in the current
2380         view. Otherwise, always call ada_to_fixed_type with
2381         check_tag to 0.
2382
2383 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2384
2385         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2386         declaration.
2387         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2388         * ada-varobj.c (ada_varobj_get_number_of_children,
2389         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2390
2391 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2392
2393         * ada-valprint.c (ada_value_print): Use type instead of
2394         enclosing type.
2395
2396 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2397
2398         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2399         an array of access to unconstrained array.
2400
2401 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2402
2403         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2404         (ada_check_typedef): Use it.
2405
2406 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2407
2408         * ada-varobj.c (ada_varobj_describe_struct_child)
2409         (ada_varobj_describe_child): Handle union case like struct one.
2410
2411 2018-09-10  Tom Tromey  <tom@tromey.com>
2412
2413         PR python/18380:
2414         * python/python.c (_initialize_python): Make example in "python"
2415         help work in Python 3.
2416
2417 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2418
2419         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2420         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2421         $(EXEEXT) to the script, as it is not a program.
2422
2423 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2424
2425         * python/py-prettyprint.c (pretty_print_one_value): Return
2426         gdbpy_ref<>.
2427         (print_string_repr): Adjust.
2428         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2429         * python/python-internal.h (apply_varobj_pretty_printer): Return
2430         gdbpy_ref<>.
2431         * varobj.c (varobj_value_get_print_value): Adjust.
2432
2433 2018-09-08  Tom Tromey  <tom@tromey.com>
2434
2435         PR python/16047:
2436         * python/py-prettyprint.c (pretty_print_one_value): Check for
2437         to_string method.
2438
2439 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2440
2441         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2442         replace_operator_with_call.
2443
2444 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2445
2446         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2447
2448 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2449
2450         * ada-typeprint.c (print_range): Print the bounds using TYPE
2451         rather than its TYPE_TARGET_TYPE.
2452
2453 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2454
2455         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2456         call to ada_to_fixed_value_create.
2457
2458 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2459
2460         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2461
2462 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2463
2464         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2465         by calls to error.
2466
2467 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2468
2469         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2470         Move update of loop variable "fi".
2471
2472 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2473
2474         * ada-lang.c (value_assign_to_component): In the case of
2475         big-endian targets, extract the bits of the given VAL
2476         using an src_offset of zero if container is not a scalar.
2477
2478 2018-09-06  Simon Ser  <contact@emersion.fr>
2479
2480         PR gdb/23105
2481         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2482         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2483         * fbsd-tdep.c (fbsd_make_note_desc): New.
2484         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2485         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2486         * target.h (enum target_object) Add FreeBSD-specific
2487         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2488
2489 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2490
2491         * compile/compile-c.h (generate_c_for_variable_locations):
2492         Change reference to pointer.
2493         * compile/compile-c-support.c (compile_program) <compute>:
2494         Likewise.
2495         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2496         (generate_c_for_for_one_variable): Likewise
2497         (generate_c_for_variable_locations): Likewise
2498         * compile/compile-c-types.c (compile_c_instance::convert_type):
2499         Likewise
2500         * compile/compile-cplus-symbols.c (convert_one_symbol):
2501         std::move the scope passed to enter_scope.
2502         * compile/compile-cplus-types.c
2503         (compile_cplus_instance::enter_scope): Make parameter
2504         rvalue-reference.
2505         (compile_cplus_instance::new_scope): Change reference to
2506         pointer.
2507         (compile_cplus_instance::convert_type): Likewise
2508         (compile_cplus_convert_typedef): std::move the scope passed to
2509         enter_scope.
2510         (compile_cplus_convert_struct_or_union): Likewise.
2511         (compile_cplus_convert_enum): Likewise.
2512         (compile_cplus_convert_namespace): Likewise.
2513         * compile/compile-cplus.h (compile_cplus_instance)
2514         <enter_scope>: Make parameter rvalue-reference.
2515         * compile/compile-internal.h (compile_instance)
2516         <get_cached_type>: Likewise
2517         * compile/compile-loc2c.c (push): Likewise
2518         (pushf): Likewise
2519         (unary): Likewise
2520         (binary): Likewise
2521         (print_label): Likewise
2522         (pushf_register_address): Likewise
2523         (pushf_register): Likewise
2524         (do_compile_dwarf_expr_to_c): Likewise
2525         (compile_dwarf_expr_to_c): Likewise
2526         (compile_dwarf_bounds_to_c): Likewise
2527         * compile/compile.c (compile_instance::get_cached_type):
2528         Likewise
2529         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2530         (compile_dwarf_bounds_to_c): Likewise
2531         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2532         (dwarf2_compile_property_to_c): Likewise
2533         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2534         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2535         Likewise
2536
2537 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2538
2539         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2540         * tui/tui-data.c (init_content_element): Don't initialize it.
2541
2542 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2543
2544         * tui/tui-data.h (struct tui_win_info)
2545         <detail::opaque>: Remove.
2546         * tui/tui-data.c (init_win_info): Remove assignment.
2547
2548 2018-09-05  Tom Tromey  <tom@tromey.com>
2549
2550         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2551         -Wformat-nonliteral.
2552         * target-float.c (host_float_ops<T>::to_string)
2553         (host_float_ops<T>::from_string): Use
2554         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2555         * configure: Rebuild.
2556
2557 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2558
2559         * printcmd.c (printf_c_string): Use
2560         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2561         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2562
2563 2018-09-05  Tom Tromey  <tom@tromey.com>
2564
2565         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2566
2567 2018-09-05  Tom de Vries  <tdevries@suse.de>
2568
2569         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2570         with resolve_abstract_p == true.
2571         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2572         defaulting to false. Propagate resolve_abstract_p to
2573         dwarf2_fetch_die_loc_sect_off.
2574         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2575         parameter, defaulting to false.
2576         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2577         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2578         parameter.
2579         * dwarf2read.h (struct die_info): Forward-declare.
2580         (die_info_ptr): New typedef.
2581         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2582
2583 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2584
2585         GDB 8.2 released.
2586
2587 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2588             Pedro Alves  <palves@redhat.com>
2589
2590         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2591         "aclocal-m4-deps.mk".  Include file here.
2592         $(srcdir)/aclocal.m4: Add "configure.ac".
2593         * gnulib/aclocal-m4-deps.mk: New file.
2594         * gnulib/update-gnulib.sh: Automatically update
2595         "aclocal-m4-deps.mk".
2596
2597 2018-09-04  Tom Tromey  <tom@tromey.com>
2598
2599         * configure: Rebuild.
2600         * configure.ac: Remove multi-ice code.
2601
2602 2018-09-04  Tom Tromey  <tom@tromey.com>
2603
2604         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2605         (ada-exp.o): Update.
2606
2607 2018-09-04  Tom Tromey  <tom@tromey.com>
2608
2609         * Makefile.in (printcmd.o, target-float.o): Remove.
2610         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2611
2612 2018-09-04  Tom Tromey  <tom@tromey.com>
2613
2614         * gnulib/Makefile.in: Remove obsolete comment.
2615         * Makefile.in: Remove obsolete comment.
2616
2617 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2618
2619         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2620         line with '+'.
2621
2622 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2623
2624         * riscv-tdep.c: Add 'prologue-value.h' include.
2625         (struct riscv_unwind_cache): New struct.
2626         (riscv_debug_unwinder): New global.
2627         (riscv_scan_prologue): Update arguments, capture register details
2628         from prologue scan.
2629         (riscv_skip_prologue): Reformat arguments line, move end of
2630         prologue calculation into riscv_scan_prologue.
2631         (riscv_frame_cache): Update return type, create
2632         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2633         details.
2634         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2635         (riscv_frame_prev_register): Use the trad_frame within the
2636         riscv_unwind_cache.
2637         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2638         flag.
2639
2640 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2641
2642         * trad-frame.h (trad_frame_set_realreg): Declare.
2643         (trad_frame_set_addr): Declare.
2644         * trad-frame.c (trad_frame_set_realreg): Define new function.
2645         (trad_frame_set_addr): Define new function.
2646         (trad_frame_set_reg_realreg): Use new function.
2647         (trad_frame_set_reg_addr): Use new function.
2648
2649 2018-09-01  Keith Seitz  <keiths@redhat.com>
2650
2651         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2652         pulongest instead of "%lld".
2653         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2654         ATTRIBUTE_UNUSED.
2655
2656 2018-08-31  Tom Tromey  <tom@tromey.com>
2657
2658         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2659         variant part type.
2660
2661 2018-08-31  Pedro Alves  <palves@redhat.com>
2662
2663         * gdbarch.h: Regenerate.
2664
2665 2018-08-31  Pedro Alves  <palves@redhat.com>
2666
2667         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2668         * target.h (Hardware watchpoint interfaces): Describe
2669         continuable/steppable/non-steppable watchpoints.
2670         * gdbarch.h, gdbarch.c: Regenerate.
2671
2672 2018-08-31  Pedro Alves  <palves@redhat.com>
2673
2674         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2675         Delete.
2676         * s390-linux-nat.c
2677         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2678         * target.h (target_ops::have_continuable_watchpoint): Delete.
2679         (target_have_continuable_watchpoint): Delete.
2680         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2681         * target-delegates.c: Regenerate.
2682
2683 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2684
2685         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2686         the files present in "gnulib/import/m4/".
2687
2688 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2689
2690         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2691         c.sw, c.swsp, and c.sdsp.
2692
2693 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2694
2695         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2696         (riscv_read_misa_reg): Don't cache value read into inferior data.
2697         (riscv_new_inferior_data): Delete.
2698         (riscv_inferior_data_cleanup): Delete.
2699         (riscv_inferior_data): Delete.
2700         (riscv_invalidate_inferior_data): Delete.
2701         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2702
2703 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2704
2705         * compile/compile-cplus-types.c
2706         (compile_cplus_instance::leave_scope): Take the address of scope
2707         object.
2708         (compile_cplus_instance::convert_qualified_base): Compare quals
2709         to 0.
2710
2711 2018-08-30  Keith Seitz  <keiths@redhat.com>
2712
2713         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2714         Use "%s" and host_address_to_string instead of "%p" in printf.
2715
2716 2018-08-29  Keith Seitz  <keiths@redhat.com>
2717
2718         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2719         and compile-cplus-types.c.
2720         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2721         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2722         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2723         Declare.
2724         * compile/compile-c-support.c: Include compile-cplus.h.
2725         (load_libcompile): Templatize.
2726         (get_compile_context): "New" function.
2727         (c_get_compile_context): Use get_compile_context.
2728         (cplus_get_compile_context): New function.
2729         (cplus_push_user_expression, cplus_pop_user_expression)
2730         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2731         (cplus_compute_program): Define new structs/functions.
2732         * compile/compile-cplus-symmbols.c: New file.
2733         * compile/compile-cplus-types.c: New file.
2734         * compile/compile-cplus.h: New file.
2735         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2736         Declare.
2737         * compile/compile-object-load.c (get_out_value_type): Use
2738         strncmp_iw when comparing symbol names.
2739         (compile_object_load): Add mst_bss and mst_data.
2740         * compile/compile.c (_initialize_compile): Remove
2741         -Wno-implicit-function-declaration from `compile_args'.
2742         * compile/gcc-cp-plugin.h: New file.
2743         * NEWS: Mention C++ compile support and new debug options.
2744
2745 2018-08-29  Keith Seitz  <keiths@redhat.com>
2746
2747         * linespec.c (collect_info::add_symbol): Make virtual.
2748         (struct symbol_searcher_collect_info): New struct.
2749         (symbol_searcher::find_all_symbols): New method.
2750         * symtab.h (class symbol_searcher): New class.
2751
2752 2018-08-29  Keith Seitz  <keiths@redhat.com>
2753
2754         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2755         Change to vector of block_symbol.  Update all users.
2756         (struct collect_info) <symbols>: Likewise.
2757         (collect_info::add_symbol): Take block_symbol as argument.
2758         Update all callers.
2759         (decode_compound_collector) <m_symbols>: Change type to vector
2760         of block_symbol.  Update all users.
2761         (decode_compound_collector::operator ()): Change parameter type
2762         to block_symbol.
2763         (find_method, find_function_symbols, find_linespec_symbols)
2764         (find_label_symbols_in_block, find_label_symbols): Change symbol
2765         vectors to block_symbol vectors.
2766         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2767         block_symbol.
2768
2769 2018-08-29  Keith Seitz  <keiths@redhat.com>
2770
2771         * linespec.c (symbolp): Remove typedef and VEC definitions.
2772         (bound_minimal_symbol_d): Likewise.
2773
2774 2018-08-29  Keith Seitz  <keiths@redhat.com>
2775
2776         * linespec.c (decode_compound_collector::decode_compound_collector):
2777         Remove initialization for `m_symtabs'.
2778         (decode_compound_collector::release_symbols): Change return type
2779         to std::vector.  Update all callers.
2780         (class decode_compound_collector) <m_symbols>: Change type to
2781         std::vector.
2782         (lookup_prefix_sym): Change return type to std::vector.  Update all
2783         callers.
2784         (compare_symbols): Remove.
2785         (std_compare_symbols): Rename to `compare_symbols'.
2786         (find_method): Change `sym_classes' parameter to std::vector.
2787         Update all callers.  Use std::sort to sort sym_classes.
2788         (find_linespec_symbols): Remove cleanup.
2789
2790 2018-08-29  Keith Seitz  <keiths@redhat.com>
2791
2792         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2793         std::vector.  Update all users.
2794         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2795         (struct collect_info) <minimal_symbols>: Likewise.
2796         (compare_msymbols): Return bool.  Change parameters to const
2797         bound_minimal_symbol references.
2798         (find_method, find_function_symbols, find_linespec_symbols): Change
2799         `minsyms' parameter to std::vector.  Update all callers.
2800
2801 2018-08-29  Keith Seitz  <keiths@redhat.com>
2802
2803         * linespec.c (struct linespec) <label_symbols>: Change type to
2804         std::vector.  Update all users.
2805         (find_label_symbols_in_block): Change `result' parameter to
2806         std::vector.  Update all callers.
2807         (find_label_symbols): Return std::vector.  Update all callers.
2808
2809 2018-08-29  Keith Seitz  <keiths@redhat.com>
2810
2811         * linespec.c (struct linespec) <function_symbols>: Change type to
2812         std::vector.  Update all users.
2813         (struct collect_info) <function_symbols>: Likewise.
2814         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2815         (std_compare_symbols): New function.
2816         (find_method, find_function_symbols, find_linespec_symbols)
2817         (find_label_symbols_in_block): Change `symbols' parameter to
2818         std::vector.  Update all callers.
2819         (find_label_symbols): Likewise for `function_symbols' and
2820         `label_funcs_ret'.
2821
2822 2018-08-29  Keith Seitz  <keiths@redhat.com>
2823
2824         * linespec.c (symtab_vector_up): Define.
2825         (struct linespec) <file_symtabs>: Change type to std::vector *.
2826         Update all uses.
2827         (struct collect_info) <file_symtabs>: Likewise.
2828         (collect_symtabs_from_filename): Return symtab_vector_up.
2829         Update all callers.
2830         (decode_objc): Remove cleanup.
2831         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2832         (symtab_collector::release_symtabs): Return symtab_vector_up.
2833         Update all callers.
2834         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2835         Update all users.
2836         (collect_symtabs_from_filename, symtabs_from_filename): Return
2837         symtab_vector_up.  Update all callers.
2838
2839 2018-08-29  Tom Tromey  <tom@tromey.com>
2840
2841         * csky-tdep.c (csky_analyze_prologue): Use
2842         core_addr_to_string_nz.
2843
2844 2018-08-29  Tom Tromey  <tom@tromey.com>
2845
2846         * windows-nat.c (struct xlate_exception) <them>: Change type to
2847         DWORD.
2848         (xlate): Fix formatting.  Remove last entry.
2849         (struct xlate_exception, xlate): Comment out.
2850         (windows_nat_target::resume): Use ranged for.
2851
2852 2018-08-29  Jim Wilson  <jimw@sifive.com>
2853
2854         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2855         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2856         of NT_PRFPREG.
2857         (riscv_linux_nat_target::store_registers): Likewise.
2858
2859 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2860
2861         PR gdb/23555
2862         PR gdb/23558
2863         * gnulib/aclocal.m4: Regenerate.
2864         * gnulib/config.in: Regenerate.
2865         * gnulib/configure: Regenerate.
2866         * gnulib/import/Makefile.am: Update.
2867         * gnulib/import/Makefile.in: Update.
2868         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2869         * gnulib/import/_Noreturn.h: ... this.
2870         * gnulib/import/alloca.in.h: Update.
2871         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2872         * gnulib/import/arg-nonnull.h: ... this.
2873         * gnulib/import/assure.h: Update.
2874         * gnulib/import/at-func.c: Update.
2875         * gnulib/import/basename-lgpl.c: Update.
2876         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2877         * gnulib/import/c++defs.h: ... this.
2878         * gnulib/import/canonicalize-lgpl.c: Update.
2879         * gnulib/import/cdefs.h: Update.
2880         * gnulib/import/chdir-long.c: Update.
2881         * gnulib/import/chdir-long.h: Update.
2882         * gnulib/import/cloexec.c: Update.
2883         * gnulib/import/cloexec.h: Update.
2884         * gnulib/import/close.c: Update.
2885         * gnulib/import/closedir.c: Update.
2886         * gnulib/import/config.charset: Update.
2887         * gnulib/import/dirent-private.h: Update.
2888         * gnulib/import/dirent.in.h: Update.
2889         * gnulib/import/dirfd.c: Update.
2890         * gnulib/import/dirname-lgpl.c: Update.
2891         * gnulib/import/dirname.h: Update.
2892         * gnulib/import/dosname.h: Update.
2893         * gnulib/import/dup-safer-flag.c: Update.
2894         * gnulib/import/dup-safer.c: Update.
2895         * gnulib/import/dup.c: Update.
2896         * gnulib/import/dup2.c: Update.
2897         * gnulib/import/errno.in.h: Update.
2898         * gnulib/import/error.c: Update.
2899         * gnulib/import/error.h: Update.
2900         * gnulib/import/exitfail.c: Update.
2901         * gnulib/import/exitfail.h: Update.
2902         * gnulib/import/extra/update-copyright: Update.
2903         * gnulib/import/fchdir.c: Update.
2904         * gnulib/import/fcntl.c: Update.
2905         * gnulib/import/fcntl.in.h: Update.
2906         * gnulib/import/fd-hook.c: Update.
2907         * gnulib/import/fd-hook.h: Update.
2908         * gnulib/import/fd-safer-flag.c: Update.
2909         * gnulib/import/fd-safer.c: Update.
2910         * gnulib/import/fdopendir.c: Update.
2911         * gnulib/import/filename.h: Update.
2912         * gnulib/import/filenamecat-lgpl.c: Update.
2913         * gnulib/import/filenamecat.h: Update.
2914         * gnulib/import/flexmember.h: Update.
2915         * gnulib/import/float+.h: Update.
2916         * gnulib/import/float.c: Update.
2917         * gnulib/import/float.in.h: Update.
2918         * gnulib/import/fnmatch.c: Update.
2919         * gnulib/import/fnmatch.in.h: Update.
2920         * gnulib/import/fnmatch_loop.c: Update.
2921         * gnulib/import/fpucw.h: Update.
2922         * gnulib/import/frexp.c: Update.
2923         * gnulib/import/frexpl.c: Update.
2924         * gnulib/import/fstat.c: Update.
2925         * gnulib/import/fstatat.c: Update.
2926         * gnulib/import/getcwd-lgpl.c: Update.
2927         * gnulib/import/getcwd.c: Update.
2928         * gnulib/import/getdtablesize.c: Update.
2929         * gnulib/import/getlogin_r.c: Update.
2930         * gnulib/import/getprogname.c: Update.
2931         * gnulib/import/getprogname.h: Update.
2932         * gnulib/import/gettext.h: Update.
2933         * gnulib/import/gettimeofday.c: Update.
2934         * gnulib/import/glob-libc.h: Update.
2935         * gnulib/import/glob.c: Update.
2936         * gnulib/import/glob.in.h: Update.
2937         * gnulib/import/glob_internal.h: Update.
2938         * gnulib/import/glob_pattern_p.c: Update.
2939         * gnulib/import/globfree.c: Update.
2940         * gnulib/import/hard-locale.c: Update.
2941         * gnulib/import/hard-locale.h: Update.
2942         * gnulib/import/intprops.h: Update.
2943         * gnulib/import/inttypes.in.h: Update.
2944         * gnulib/import/isnan.c: Update.
2945         * gnulib/import/isnand-nolibm.h: Update.
2946         * gnulib/import/isnand.c: Update.
2947         * gnulib/import/isnanl-nolibm.h: Update.
2948         * gnulib/import/isnanl.c: Update.
2949         * gnulib/import/itold.c: Update.
2950         * gnulib/import/libc-config.h: Update.
2951         * gnulib/import/limits.in.h: Update.
2952         * gnulib/import/localcharset.c: Update.
2953         * gnulib/import/localcharset.h: Update.
2954         * gnulib/import/localtime-buffer.c: Update.
2955         * gnulib/import/localtime-buffer.h: Update.
2956         * gnulib/import/lstat.c: Update.
2957         * gnulib/import/m4/00gnulib.m4: Update.
2958         * gnulib/import/m4/__inline.m4: Update.
2959         * gnulib/import/m4/absolute-header.m4: Update.
2960         * gnulib/import/m4/alloca.m4: Update.
2961         * gnulib/import/m4/builtin-expect.m4: Update.
2962         * gnulib/import/m4/canonicalize.m4: Update.
2963         * gnulib/import/m4/chdir-long.m4: Update.
2964         * gnulib/import/m4/close.m4: Update.
2965         * gnulib/import/m4/closedir.m4: Update.
2966         * gnulib/import/m4/configmake.m4: Update.
2967         * gnulib/import/m4/d-ino.m4: Update.
2968         * gnulib/import/m4/d-type.m4: Update.
2969         * gnulib/import/m4/dirent_h.m4: Update.
2970         * gnulib/import/m4/dirfd.m4: Update.
2971         * gnulib/import/m4/dirname.m4: Update.
2972         * gnulib/import/m4/double-slash-root.m4: Update.
2973         * gnulib/import/m4/dup.m4: Update.
2974         * gnulib/import/m4/dup2.m4: Update.
2975         * gnulib/import/m4/eealloc.m4: Update.
2976         * gnulib/import/m4/environ.m4: Update.
2977         * gnulib/import/m4/errno_h.m4: Update.
2978         * gnulib/import/m4/error.m4: Update.
2979         * gnulib/import/m4/exponentd.m4: Update.
2980         * gnulib/import/m4/exponentl.m4: Update.
2981         * gnulib/import/m4/extensions.m4: Update.
2982         * gnulib/import/m4/extern-inline.m4: Update.
2983         * gnulib/import/m4/fchdir.m4: Update.
2984         * gnulib/import/m4/fcntl-o.m4: Update.
2985         * gnulib/import/m4/fcntl.m4: Update.
2986         * gnulib/import/m4/fcntl_h.m4: Update.
2987         * gnulib/import/m4/fdopendir.m4: Update.
2988         * gnulib/import/m4/filenamecat.m4: Update.
2989         * gnulib/import/m4/flexmember.m4: Update.
2990         * gnulib/import/m4/float_h.m4: Update.
2991         * gnulib/import/m4/fnmatch.m4: Update.
2992         * gnulib/import/m4/fnmatch_h.m4: Update.
2993         * gnulib/import/m4/fpieee.m4: Update.
2994         * gnulib/import/m4/frexp.m4: Update.
2995         * gnulib/import/m4/frexpl.m4: Update.
2996         * gnulib/import/m4/fstat.m4: Update.
2997         * gnulib/import/m4/fstatat.m4: Update.
2998         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2999         * gnulib/import/m4/getcwd-path-max.m4: Update.
3000         * gnulib/import/m4/getcwd.m4: Update.
3001         * gnulib/import/m4/getdtablesize.m4: Update.
3002         * gnulib/import/m4/getlogin.m4: Update.
3003         * gnulib/import/m4/getlogin_r.m4: Update.
3004         * gnulib/import/m4/getpagesize.m4: Update.
3005         * gnulib/import/m4/getprogname.m4: Update.
3006         * gnulib/import/m4/gettimeofday.m4: Update.
3007         * gnulib/import/m4/glibc21.m4: Update.
3008         * gnulib/import/m4/glob.m4: Update.
3009         * gnulib/import/m4/glob_h.m4: Update.
3010         * gnulib/import/m4/gnulib-cache.m4: Update.
3011         * gnulib/import/m4/gnulib-common.m4: Update.
3012         * gnulib/import/m4/gnulib-comp.m4: Update.
3013         * gnulib/import/m4/gnulib-tool.m4: Update.
3014         * gnulib/import/m4/hard-locale.m4: Update.
3015         * gnulib/import/m4/include_next.m4: Update.
3016         * gnulib/import/m4/inttypes-pri.m4: Update.
3017         * gnulib/import/m4/inttypes.m4: Update.
3018         * gnulib/import/m4/isnand.m4: Update.
3019         * gnulib/import/m4/isnanl.m4: Update.
3020         * gnulib/import/m4/largefile.m4: Update.
3021         * gnulib/import/m4/limits-h.m4: Update.
3022         * gnulib/import/m4/localcharset.m4: Update.
3023         * gnulib/import/m4/locale-fr.m4: Update.
3024         * gnulib/import/m4/locale-ja.m4: Update.
3025         * gnulib/import/m4/locale-zh.m4: Update.
3026         * gnulib/import/m4/localtime-buffer.m4: Update.
3027         * gnulib/import/m4/longlong.m4: Update.
3028         * gnulib/import/m4/lstat.m4: Update.
3029         * gnulib/import/m4/malloc.m4: Update.
3030         * gnulib/import/m4/malloca.m4: Update.
3031         * gnulib/import/m4/math_h.m4: Update.
3032         * gnulib/import/m4/mbrtowc.m4: Update.
3033         * gnulib/import/m4/mbsinit.m4: Update.
3034         * gnulib/import/m4/mbsrtowcs.m4: Update.
3035         * gnulib/import/m4/mbstate_t.m4: Update.
3036         * gnulib/import/m4/memchr.m4: Update.
3037         * gnulib/import/m4/memmem.m4: Update.
3038         * gnulib/import/m4/mempcpy.m4: Update.
3039         * gnulib/import/m4/memrchr.m4: Update.
3040         * gnulib/import/m4/mkdir.m4: Update.
3041         * gnulib/import/m4/mkstemp.m4: Update.
3042         * gnulib/import/m4/mmap-anon.m4: Update.
3043         * gnulib/import/m4/mode_t.m4: Update.
3044         * gnulib/import/m4/msvc-inval.m4: Update.
3045         * gnulib/import/m4/msvc-nothrow.m4: Update.
3046         * gnulib/import/m4/multiarch.m4: Update.
3047         * gnulib/import/m4/nocrash.m4: Update.
3048         * gnulib/import/m4/off_t.m4: Update.
3049         * gnulib/import/m4/onceonly.m4: Update.
3050         * gnulib/import/m4/open-cloexec.m4: Update.
3051         * gnulib/import/m4/open.m4: Update.
3052         * gnulib/import/m4/openat.m4: Update.
3053         * gnulib/import/m4/opendir.m4: Update.
3054         * gnulib/import/m4/pathmax.m4: Update.
3055         * gnulib/import/m4/rawmemchr.m4: Update.
3056         * gnulib/import/m4/readdir.m4: Update.
3057         * gnulib/import/m4/readlink.m4: Update.
3058         * gnulib/import/m4/realloc.m4: Update.
3059         * gnulib/import/m4/rename.m4: Update.
3060         * gnulib/import/m4/rewinddir.m4: Update.
3061         * gnulib/import/m4/rmdir.m4: Update.
3062         * gnulib/import/m4/save-cwd.m4: Update.
3063         * gnulib/import/m4/secure_getenv.m4: Update.
3064         * gnulib/import/m4/setenv.m4: Update.
3065         * gnulib/import/m4/signal_h.m4: Update.
3066         * gnulib/import/m4/ssize_t.m4: Update.
3067         * gnulib/import/m4/stat-time.m4: Update.
3068         * gnulib/import/m4/stat.m4: Update.
3069         * gnulib/import/m4/std-gnu11.m4: Update.
3070         * gnulib/import/m4/stdbool.m4: Update.
3071         * gnulib/import/m4/stddef_h.m4: Update.
3072         * gnulib/import/m4/stdint.m4: Update.
3073         * gnulib/import/m4/stdio_h.m4: Update.
3074         * gnulib/import/m4/stdlib_h.m4: Update.
3075         * gnulib/import/m4/strchrnul.m4: Update.
3076         * gnulib/import/m4/strdup.m4: Update.
3077         * gnulib/import/m4/strerror.m4: Update.
3078         * gnulib/import/m4/string_h.m4: Update.
3079         * gnulib/import/m4/strstr.m4: Update.
3080         * gnulib/import/m4/strtok_r.m4: Update.
3081         * gnulib/import/m4/sys_socket_h.m4: Update.
3082         * gnulib/import/m4/sys_stat_h.m4: Update.
3083         * gnulib/import/m4/sys_time_h.m4: Update.
3084         * gnulib/import/m4/sys_types_h.m4: Update.
3085         * gnulib/import/m4/tempname.m4: Update.
3086         * gnulib/import/m4/time_h.m4: Update.
3087         * gnulib/import/m4/unistd-safer.m4: Update.
3088         * gnulib/import/m4/unistd_h.m4: Update.
3089         * gnulib/import/m4/warn-on-use.m4: Update.
3090         * gnulib/import/m4/wchar_h.m4: Update.
3091         * gnulib/import/m4/wchar_t.m4: Update.
3092         * gnulib/import/m4/wctype_h.m4: Update.
3093         * gnulib/import/m4/wint_t.m4: Update.
3094         * gnulib/import/malloc.c: Update.
3095         * gnulib/import/malloc/scratch_buffer.h: Update.
3096         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3097         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3098         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3099         * gnulib/import/malloca.c: Update.
3100         * gnulib/import/malloca.h: Update.
3101         * gnulib/import/malloca.valgrind: Update.
3102         * gnulib/import/math.in.h: Update.
3103         * gnulib/import/mbrtowc.c: Update.
3104         * gnulib/import/mbsinit.c: Update.
3105         * gnulib/import/mbsrtowcs-impl.h: Update.
3106         * gnulib/import/mbsrtowcs-state.c: Update.
3107         * gnulib/import/mbsrtowcs.c: Update.
3108         * gnulib/import/memchr.c: Update.
3109         * gnulib/import/memmem.c: Update.
3110         * gnulib/import/mempcpy.c: Update.
3111         * gnulib/import/memrchr.c: Update.
3112         * gnulib/import/mkdir.c: Update.
3113         * gnulib/import/mkstemp.c: Update.
3114         * gnulib/import/msvc-inval.c: Update.
3115         * gnulib/import/msvc-inval.h: Update.
3116         * gnulib/import/msvc-nothrow.c: Update.
3117         * gnulib/import/msvc-nothrow.h: Update.
3118         * gnulib/import/open.c: Update.
3119         * gnulib/import/openat-die.c: Update.
3120         * gnulib/import/openat-priv.h: Update.
3121         * gnulib/import/openat-proc.c: Update.
3122         * gnulib/import/openat.c: Update.
3123         * gnulib/import/openat.h: Update.
3124         * gnulib/import/opendir.c: Update.
3125         * gnulib/import/pathmax.h: Update.
3126         * gnulib/import/pipe-safer.c: Update.
3127         * gnulib/import/rawmemchr.c: Update.
3128         * gnulib/import/readdir.c: Update.
3129         * gnulib/import/readlink.c: Update.
3130         * gnulib/import/realloc.c: Update.
3131         * gnulib/import/ref-add.sin: Update.
3132         * gnulib/import/ref-del.sin: Update.
3133         * gnulib/import/rename.c: Update.
3134         * gnulib/import/rewinddir.c: Update.
3135         * gnulib/import/rmdir.c: Update.
3136         * gnulib/import/same-inode.h: Update.
3137         * gnulib/import/save-cwd.c: Update.
3138         * gnulib/import/save-cwd.h: Update.
3139         * gnulib/import/scratch_buffer.h: Update.
3140         * gnulib/import/secure_getenv.c: Update.
3141         * gnulib/import/setenv.c: Update.
3142         * gnulib/import/signal.in.h: Update.
3143         * gnulib/import/stat-time.c: Update.
3144         * gnulib/import/stat-time.h: Update.
3145         * gnulib/import/stat-w32.c: Update.
3146         * gnulib/import/stat-w32.h: Update.
3147         * gnulib/import/stat.c: Update.
3148         * gnulib/import/stdbool.in.h: Update.
3149         * gnulib/import/stddef.in.h: Update.
3150         * gnulib/import/stdint.in.h: Update.
3151         * gnulib/import/stdio.in.h: Update.
3152         * gnulib/import/stdlib.in.h: Update.
3153         * gnulib/import/str-two-way.h: Update.
3154         * gnulib/import/strchrnul.c: Update.
3155         * gnulib/import/strdup.c: Update.
3156         * gnulib/import/streq.h: Update.
3157         * gnulib/import/strerror-override.c: Update.
3158         * gnulib/import/strerror-override.h: Update.
3159         * gnulib/import/strerror.c: Update.
3160         * gnulib/import/string.in.h: Update.
3161         * gnulib/import/stripslash.c: Update.
3162         * gnulib/import/strnlen1.c: Update.
3163         * gnulib/import/strnlen1.h: Update.
3164         * gnulib/import/strstr.c: Update.
3165         * gnulib/import/strtok_r.c: Update.
3166         * gnulib/import/sys_stat.in.h: Update.
3167         * gnulib/import/sys_time.in.h: Update.
3168         * gnulib/import/sys_types.in.h: Update.
3169         * gnulib/import/tempname.c: Update.
3170         * gnulib/import/tempname.h: Update.
3171         * gnulib/import/time.in.h: Update.
3172         * gnulib/import/unistd--.h: Update.
3173         * gnulib/import/unistd-safer.h: Update.
3174         * gnulib/import/unistd.in.h: Update.
3175         * gnulib/import/unsetenv.c: Update.
3176         * gnulib/import/verify.h: Update.
3177         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3178         * gnulib/import/wchar.in.h: Update.
3179         * gnulib/import/wctype.in.h: Update.
3180         * gnulib/import/xalloc-oversized.h: Update.
3181         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3182         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3183
3184 2018-08-16  Gary Benson <gbenson@redhat.com>
3185
3186         PR gdb/13000:
3187         * gdb/main.c (captured_main_1): Exit with nonzero status
3188         in batch mode if the last command to be executed failed.
3189         * NEWS: Mention the above.
3190
3191 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3192
3193         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3194         end of warning message.
3195
3196 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3197
3198         PR gdb/22943:
3199         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3200         (aarch64_extract_return_value): Use
3201         aapcs_is_vfp_call_or_return_candidate.
3202         (aarch64_return_in_memory): Likewise.
3203         (aarch64_store_return_value): Likewise.
3204
3205 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3206
3207         * aarch64-tdep.c
3208         (aapcs_is_vfp_call_or_return_candidate): Make static
3209         (pass_in_v_or_stack): Remove function.
3210         (pass_in_v_vfp_candidate): New function.
3211         (aarch64_push_dummy_call): Check for float register candidates.
3212
3213 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3214
3215         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3216         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3217         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3218
3219 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3220
3221         PR build/23399
3222         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3223         (struct ipa_sym_addresses): Rename to...
3224         (struct ipa_sym_addresses_common): ... this.
3225         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3226
3227 2018-08-28  Tom Tromey  <tom@tromey.com>
3228
3229         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3230         (token_fifo): Now a std::vector.
3231         (yylex, c_parse): Update.
3232         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3233         (token_fifo): Now a std::vector.
3234         (yylex, d_parse): Update.
3235         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3236         (token_fifo): Now a std::vector.
3237         (yylex, go_parse): Update.
3238
3239 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3240
3241         * parser-defs.h (struct type_stack) <elements>: Change type to
3242         std::vector<union type_stack_elt>.
3243         <depth, size>: Remove.
3244         * parse.c (parse_exp_in_context_1): Adjust.
3245         (type_stack_reserve): Remove.
3246         (check_type_stack_depth): Remove.
3247         (insert_into_type_stack): Adjust to std::vector.
3248         (insert_type): Likewise.
3249         (push_type): Likewise.
3250         (push_type_int): Likewise.
3251         (insert_type_address_space): Likewise.
3252         (pop_type): Likewise.
3253         (pop_type_int): Likewise.
3254         (pop_typelist): Likewise.
3255         (pop_type_stack): Likewise.
3256         (append_type_stack): Likewise.
3257         (push_type_stack): Likewise.
3258         (get_type_stack): Likewise.
3259         (type_stack_cleanup): Likewise.
3260         (push_typelist): Likewise.
3261         (follow_types): Likewise.
3262         (_initialize_parse): Likewise.
3263
3264 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3265
3266         * NEWS: Mention csky target.
3267
3268 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3269             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3270             Don Breazeal  <donb@codesourcery.com>
3271
3272         * csky-linux-tdep.c: New file.
3273         * csky-tdep.c: Likewise.
3274         * csky-tdep.h: Likewise.
3275         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3276         csky-tdep.o.
3277         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3278         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3279         * configure.tgt: Add csky support.
3280
3281 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3282
3283         * python/py-framefilter.c (py_print_frame): Print frame architecture
3284         when printing on an MI output.
3285
3286 2018-08-27  Tom Tromey  <tom@tromey.com>
3287
3288         PR build/23087:
3289         * configure: Rebuild.
3290         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3291
3292 2018-08-27  Tom Tromey  <tom@tromey.com>
3293
3294         * aarch64-linux-tdep.c
3295         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3296         casts to int.
3297
3298 2018-08-27  Tom Tromey  <tom@tromey.com>
3299
3300         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3301         unsigned.
3302         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3303         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3304         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3305         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3306         unsigned.
3307
3308 2018-08-27  Tom Tromey  <tom@tromey.com>
3309
3310         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3311         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3312
3313 2018-08-27  Tom Tromey  <tom@tromey.com>
3314
3315         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3316         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3317         ULONGEST_MAX.
3318         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3319         ULONGEST_MAX.
3320         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3321         ULONGEST_MAX.
3322         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3323         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3324         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3325         ULONGEST_MAX.
3326         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3327         (ppc64_linux_sigaction_tramp_frame)
3328         (ppc32_linux_sighandler_tramp_frame)
3329         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3330         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3331         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3332         * mn10300-linux-tdep.c (am33_linux_sigframe)
3333         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3334         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3335         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3336         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3337         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3338         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3339         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3340         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3341         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3342         * microblaze-linux-tdep.c
3343         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3344         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3345         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3346         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3347         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3348         * common/common-types.h (ULONGEST_MAX): New define.
3349         (CORE_ADDR_MAX): Fix formatting.
3350         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3351         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3352         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3353         (arm_linux_rt_sigreturn_tramp_frame)
3354         (arm_eabi_linux_sigreturn_tramp_frame)
3355         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3356         (thumb2_eabi_linux_sigreturn_tramp_frame)
3357         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3358         (arm_linux_restart_syscall_tramp_frame)
3359         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3360         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3361         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3362         ULONGEST_MAX.
3363         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3364
3365 2018-08-27  Tom Tromey  <tom@tromey.com>
3366
3367         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3368         CORE_ADDR_MAX.
3369         * mips-tdep.c (mips_deal_with_atomic_sequence)
3370         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3371         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3372         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3373         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3374         CORE_ADDR_MAX.
3375         * aarch64-tdep.c (aarch64_software_single_step): Use
3376         CORE_ADDR_MAX.
3377
3378 2018-08-27  Tom Tromey  <tom@tromey.com>
3379
3380         * linespec.c (complete_linespec_component): Add cast to "char".
3381         * completer.c (completion_tracker::build_completion_result): Add
3382         cast to "char".
3383
3384 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3385
3386         * solist.h (struct solist, struct target_so_ops): Fix
3387         indentation.
3388
3389 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3390
3391         * ada-tasks.c (ada_task_info_s): Remove typedef.
3392         (DEF_VEC_O(ada_task_info_s)): Remove.
3393         (struct ada_tasks_inferior_data): Initialize fields.
3394         <task_list>: Make an std::vector.
3395         (get_ada_tasks_inferior_data): Allocate with new.
3396         (ada_get_task_number): Adjust.
3397         (get_task_number_from_id): Likewise.
3398         (valid_task_id): Likewise.
3399         (ada_get_task_info_from_ptid): Likewise.
3400         (iterate_over_live_ada_tasks): Likewise.
3401         (add_ada_task): Likewise.
3402         (read_known_tasks): Likewise.
3403         (ada_build_task_list): Likewise.
3404         (print_ada_task_info): Likewise.
3405         (info_task): Likewise.
3406         (task_command_1): Likewise.
3407
3408 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3409
3410         * ada-lang.c (add_angle_brackets): Return std::string.
3411
3412 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3413
3414         * python/py-threadevent.c (py_get_event_thread): Initialize
3415         pythread.
3416
3417 2018-08-24  Pedro Alves  <palves@redhat.com>
3418
3419         * python/py-bpevent.c (create_breakpoint_event_object): Use
3420         copy-initialization.
3421         * python/py-continueevent.c (emit_continue_event): Use
3422         copy-initialization.
3423         * python/py-exitedevent.c (create_exited_event_object): Return a
3424         gdbpy_ref<>.
3425         (emit_exited_event): Use copy-initialization.
3426         * python/py-inferior.c (python_new_inferior)
3427         (python_inferior_deleted, add_thread_object): Use
3428         copy-initialization.
3429         * python/py-infevents.c (create_inferior_call_event_object)
3430         (create_register_changed_event_object)
3431         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3432         (emit_inferior_call_event, emit_memory_changed_event)
3433         (emit_register_changed_event): Use copy-initialization.
3434         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3435         Return a gdbpy_ref<>.
3436         (emit_new_objfile_event): Use copy-initialization.
3437         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3438         (emit_clear_objfiles_event): Use copy-initialization.
3439         * python/py-signalevent.c (create_signal_event_object): Use
3440         copy-initialization.
3441         * python/py-threadevent.c (create_thread_event_object): Use
3442         copy-initialization.
3443
3444 2018-08-24  Pedro Alves  <palves@redhat.com>
3445             Simon Marchi  <simon.marchi@ericsson.com>
3446
3447         PR gdb/23379
3448         * python/py-continueevent.c: Include "gdbthread.h".
3449         (create_continue_event_object): Add intro comment.  Add 'ptid'
3450         parameter.  Use it to find thread to pass to
3451         create_thread_event_object.
3452         (emit_continue_event): Pass PTID down to
3453         create_continue_event_object.
3454         * python/py-event.h (py_get_event_thread): Declare.
3455         (create_thread_event_object): Remove default from 'thread'
3456         parameter.
3457         * python/py-stopevent.c (create_stop_event_object): Use
3458         py_get_event_thread.
3459         * python/py-threadevent.c (get_event_thread): Rename to ...
3460         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3461         and use it to find the thread.
3462         (create_thread_event_object): Assert that THREAD isn't null.
3463         Don't find the event thread here.
3464
3465 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3466
3467         * block.h (blockrange, blockranges): New struct declarations.
3468         (struct block): Add new field named `ranges'.
3469         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3470         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3471         macros for accessing ranges in struct block.
3472         (make_blockranges): New declaration.
3473         block.c (make_blockranges): New function.
3474         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3475         for block.
3476         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3477         * blockframe.c (cache_pc_function_block): New static global.
3478         (clear_pc_function_cache): Clear cache_pc_function_block.
3479         (find_pc_partial_function): Move comment to symtab.h.  Add
3480         support for non-contiguous blocks.
3481         * cli/cli-cmds.c (block.h): Include.
3482         (print_disassembly): Handle printing of non-contiguous blocks.
3483         (disassemble_current_function): Likewise.
3484         (disassemble_command): Likewise.
3485
3486         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3487         BLOCK_START.
3488         * blockframe.c (get_pc_function_start): Likewise.
3489         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3490         (gcc_symbol_address): Likewise.
3491         * compile/compile-object-run.c (compile_object_run): Likewise.
3492         * compile/compile.c (get_expr_block_and_pc): Likewise.
3493         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3494         (func_addr_to_tail_call_list): Likewise.
3495         * findvar.c (default_read_var_value): Likewise.
3496         * inline-frame.c (inline_frame_this_id): Likewise.
3497         (skip-inline_frames): Likewise.
3498         * infcmd.c (until_next_command): Likewise.
3499         * linespec.c (convert_linespec_to_sals): Likewise.
3500         * parse.c (parse_exp_in_context_1): Likewise.
3501         * printcmd.c (build_address_symbolic): likewise.
3502         (info_address_command): Likewise.
3503         symtab.c (find_function_start_sal): Likewise.
3504         (skip_prologue_sal): Likewise.
3505         (find_function_alias_target): Likewise.
3506         (find_gnu_ifunc): Likewise.
3507         * stack.c (find_frame_funname): Likewise.
3508         * symtab.c (fixup_symbol_section): Likewise.
3509         (find_function_start_sal): Likewise.
3510         (skip_prologue_sal): Likewsie.
3511         (find_function_alias_target): Likewise.
3512         (find_gnu_ifunc): Likewise.
3513         * tracepoint.c (info_scope_command): Likewise.
3514         * value.c (value_fn_field): Likewise.
3515
3516         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3517         in place of find_pc_partial_function.
3518         * blockframe.c (find_function_entry_range_from_pc): New function.
3519         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3520         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3521         for each range in a block.
3522
3523
3524 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3525
3526         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3527         incrementation.
3528
3529 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3530
3531         * solib-svr4.c (read_program_headers_from_bfd): Return
3532         gdb::optional<gdb::byte_vector>.
3533         (svr4_exec_displacement): Adjust.
3534
3535 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3536
3537         * solib-svr4.c (read_program_header): Return
3538         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3539         (find_program_interpreter): Return
3540         gdb::optional<gdb::byte_vector>.
3541         (scan_dyntag_auxv): Adjust.
3542         (enable_break): Adjust.
3543         (svr4_exec_displacement): Adjust.
3544
3545 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3546
3547         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3548         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3549
3550 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3551
3552         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3553         string_vprintf.
3554         * guile/scm-utils.c (gdbscm_printf): Likewise.
3555         * serial.c (serial_printf): Likewise.
3556         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3557
3558 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3559
3560         * stack.c (print_frame): Print frame architecture when printing on
3561         an MI output.
3562         * NEWS: Mention new "arch" attribute in frame output.
3563
3564 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3565
3566         * arch/aarch64.h (aarch64_regnum): Update comment.
3567
3568 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3569
3570         * NEWS: Add SVE to 8.2 section.
3571
3572 2018-08-21  Pedro Alves  <palves@redhat.com>
3573
3574         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3575         out from gdbscm_parse_function_args.
3576         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3577         gdbscm_parse_function_args_1.
3578
3579 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3580
3581         PR gdb/17816
3582         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3583         operator.
3584
3585 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3586
3587         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3588
3589 2018-08-19  Michael Spang  <spang@google.com>
3590
3591         PR gdb/11786
3592         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3593         for PT_TLS segments.
3594
3595 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3596
3597         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3598         dwarf_variable_value.
3599         * dwarf2-frame.c (class dwarf_expr_executor):
3600         Add override for dwarf_variable_value.
3601         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3602         (class symbol_needs_eval_context): Likewise.
3603         (indirect_synthetic_pointer): Add forward declaration.
3604         (sect_variable_value): New function.
3605         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3606         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3607         for DW_OP_GNU_variable_value.
3608
3609 2018-08-16  Tom Tromey  <tom@tromey.com>
3610
3611         * top.c (read_command_file): Update.
3612         (command_line_input): Remove "repeat" argument.
3613         * ada-lang.c (get_selections): Update.
3614         * linespec.c (decode_line_2): Update.
3615         * defs.h (command_line_input): Remove argument.
3616         * cli/cli-script.c (read_next_line): Update.
3617         * python/py-gdb-readline.c: Update.
3618
3619 2018-08-17  Tom Tromey  <tom@tromey.com>
3620
3621         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3622         command_line_input.
3623
3624 2018-08-15  Tom Tromey  <tom@tromey.com>
3625
3626         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3627
3628 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3629
3630         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3631         If used, use find_pc_partial_function to find address range
3632         to disassemble.
3633         * mi/mi-main.c (mi_cmd_list_features): Report
3634         "data-disassemble-a-option" feature.
3635         * NEWS: Mention new -data-disassemble option -a.
3636
3637 2018-08-13  Tom Tromey  <tom@tromey.com>
3638
3639         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3640
3641 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3642
3643         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3644         (aarch64_linux_collect_sve_regset): Likewise.
3645         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3646         * regcache.h (regcache_map_entry_size): New function.
3647
3648 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3649
3650         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3651         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3652         (SVE_HEADER_VL_LENGTH): Likewise.
3653         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3654         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3655         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3656         (SVE_HEADER_SIZE_OFFSET): Likewise.
3657         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3658         (SVE_HEADER_VL_OFFSET): Likewise.
3659         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3660         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3661         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3662         (SVE_HEADER_SIZE): Likewise.
3663         (aarch64_linux_core_read_vq): Add function.
3664         (aarch64_linux_core_read_description): Check for SVE section.
3665
3666 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3667
3668         * aarch64-fbsd-tdep.c
3669         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3670         collect_size.
3671         * aarch64-linux-tdep.c
3672         (aarch64_linux_iterate_over_regset_sections): Likewise.
3673         * alpha-linux-tdep.c
3674         (alpha_linux_iterate_over_regset_sections):
3675         * alpha-nbsd-tdep.c
3676         (alphanbsd_iterate_over_regset_sections): Likewise.
3677         * amd64-fbsd-tdep.c
3678         (amd64fbsd_iterate_over_regset_sections): Likewise.
3679         * amd64-linux-tdep.c
3680         (amd64_linux_iterate_over_regset_sections): Likewise.
3681         * arm-bsd-tdep.c
3682         (armbsd_iterate_over_regset_sections): Likewise.
3683         * arm-fbsd-tdep.c
3684         (arm_fbsd_iterate_over_regset_sections): Likewise.
3685         * arm-linux-tdep.c
3686         (arm_linux_iterate_over_regset_sections): Likewise.
3687         * corelow.c (get_core_registers_cb): Likewise.
3688         (core_target::fetch_registers): Likewise.
3689         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3690         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3691         * gdbarch.h (void): Regenerate.
3692         * gdbarch.sh: Add supply_size and collect_size.
3693         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3694         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3695         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3696         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3697         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3698         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3699         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3700         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3701         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3702         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3703         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3704         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3705         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3706         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3707         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3708         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3709         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3710         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3711         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3712         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3713         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3714         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3715         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3716         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3717         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3718         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3719         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3720         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3721         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3722         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3723
3724 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3725
3726         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3727         with string_printf.
3728
3729 2018-08-10  Keith Seitz  <keiths@redhat.com>
3730
3731         * compile/compile-c-support.c (add_code_header, add_code_footer):
3732         Move into policy class.
3733         (c_push_user_expression, pop_user_expression_nop)
3734         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3735         (compile_program): New host class.
3736         (c_compile_program): New typedef.
3737         (c_compute_porgram): Use c_compile_program.
3738
3739 2018-08-10  Keith Seitz  <keiths@redhat.com>
3740
3741         * compile/compile-internal.h (compile_instance::~compile_instance):
3742         Remove calls to htab_delete.
3743         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3744         * compile.c (compile_instance::compile_instance): Initialize
3745         htab unique pointers.
3746         (compile_instance::get_cached_type, compile_instance::insert_type)
3747         (compile_instance::error_symbol_once): Update for unique_ptr.
3748
3749 2018-08-10  Keith Seitz  <keiths@redhat.com>
3750
3751         * compile/compile-c-symbols.c (struct symbol_error)
3752         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3753         (compile_instance::insert_symbol_error)
3754         (compile_instance::error_symbol_once): Move to ...
3755         * compile/compile.c: ... here.
3756
3757 2018-08-10  Keith Seitz  <keiths@redhat.com>
3758
3759         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3760         instead of `new_compile_instance'.
3761         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3762         Update description.
3763         If the symbol error map is not initialized, create it.
3764         (generate_c_for_for_one_symbol): Do not check/initialize
3765         the symbol error map.
3766         * compile/compile-c-types.c (compile_c_instance): Make a class.
3767         Update all callers.
3768         (compile_instance::compile_instance): Initialize the type cache.
3769         (get_cached_type): New function.
3770         (insert_type): Update description.
3771         (compile_c_instance::m_default_cflags): Define.
3772         (convert_type): Update description.  Use get_cached_type.
3773         (delete_instance): Moved to destructor.
3774         (new_compile_instance): Moved to constructor.
3775         * compile/compile-c.h (compile_c_instance): Make class inheriting
3776         from compile_instance.
3777         <base>: Remove field.
3778         <type_map, symbol_err_map>: Move to base class.
3779         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3780         * compile/compile-internal.h (compile_instance): Make class.
3781         <type_map_t, symbol_err_map_t>: Define.
3782         <fe>: Rename to `m_gcc_fe'.
3783         <scope, block, gcc_target_options>: Add `m_' prefix.
3784         <m_type_map, m_symbol_err_map>: New fields, moved from
3785         compile_c_instance.
3786         <destroy>: Remove.
3787         (convert_type, new_compile_instance): Remove.
3788         * compile/compile.c (cleanup_compile_instance): Remove.
3789         (compile_to_object): Use unique_ptr to eliminate cleanups.
3790         (compile_instance::set_print_callback, compile_instance::version)
3791         (compile_instance::set_verbose)
3792         (compile_instance::set_driver_filename)
3793         (compile_instance::set_triplet_regexp)
3794         (compile_instance::set_arguments)
3795         (compile_instance::set_source_file)
3796         (compile_instance::compile): Define.
3797
3798 2018-08-10  Keith Seitz  <keiths@redhat.com>
3799
3800         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3801         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3802         gcc-c-fe.def to define C plugin.
3803         (delete_instance): Delete `c_plugin'.
3804         (new_compile_instance): Initialize `c_plugin'.
3805         * compile/compile-c.h: Include gcc_c_plugin.h.
3806         (struct compile_c_instance) <c_plugin>: New member.
3807         * gcc-c-plugin.h: New file.
3808         Update all callers with API change.
3809
3810 2018-08-10  Keith Seitz  <keiths@redhat.com>
3811
3812         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3813         (HFILES_NO_SRCDIR): ... to here.
3814         Add compile-internal.h and compile-c.h.
3815         * compile/compile-c-support.c: Include compile-c.h.
3816         * compile/compile-c-symbols.c: Include compile-c.h.
3817         (generate_c_for_variable_locations): Update comment.
3818         * compile/compile-c-types.c: Include compile-c.h.
3819         * compile/compile-c.h: New file -- moved C language declarations
3820         from other files here.
3821         * compile/compile-internal.h: Do not include hashtab.h or
3822         common/enum-flags.h.
3823         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3824         (gcc_convert_symbol, gcc_symbol_address)
3825         (generate_c_for_variable_locations, c_get_mode_for_size)
3826         (c_get_range_decl_name): Definitions moved to compile-c.h.
3827         * compile/compile-loc2c.c: Include compile-c.h.
3828
3829 2018-08-10  Keith Seitz  <keiths@redhat.com>
3830
3831         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3832         (c_symbol_substitution_name): ... this.
3833         Update all callers.
3834
3835 2018-08-10  Keith Seitz  <keiths@redhat.com>
3836
3837         * compile/compile-c-support.c (c_compute_program): Use
3838         unique_xmalloc_ptr to eliminate cleanup.
3839         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3840         Return a unique_xmalloc_ptr and eliminate cleanup.
3841         * compile/compile-internal.h (generate_c_for_variable_locations):
3842         Return unique_xmalloc_ptr and update description.
3843
3844 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3845
3846         * corelow.c (core_target::get_core_register_section): Rename
3847         min_size to section_min_size.
3848
3849 2018-08-09  Jim Wilson  <jimw@sifive.com>
3850
3851         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3852         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3853         * NEWS: Mention new GNU/Linux RISC-V target.
3854         * configure.host: Add riscv*-*-linux*.
3855         * configure.nat: Add riscv*.
3856         * configure.tgt: Add riscv*-*-linux*.
3857         * riscv-linux-nat.c: New file.
3858         * riscv-linux-tdep.c: New file.
3859
3860 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3861
3862         * infrun.c (resume): Make static, add forward declaration.
3863         (proceed): Update header comment.
3864         * infrun.h (resume): Delete declaration.
3865
3866 2018-08-09  Tom Tromey  <tom@tromey.com>
3867
3868         * riscv-tdep.h: Minor formatting fixes.
3869
3870 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3871
3872         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3873         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3874         (test_mkdir_recursive): Likewise.
3875         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3876
3877 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3878
3879         * valarith.c (value_subscripted_rvalue): If an array is not in
3880         memory, and we don't know the upper bound, then we can't know that
3881         the requested element exists or not.
3882
3883 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3884
3885         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3886         (target_options_to_string): Add comment.
3887
3888 2018-08-08  Tom Tromey  <tom@tromey.com>
3889
3890         * unittests/scoped_mmap-selftests.c: Check result of "write".
3891
3892 2018-08-08  Jim Wilson  <jimw@sifive.com>
3893
3894         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3895         (decode_register_index_short): New.
3896         (decode_j_type_insn, decode_cj_type_insn): New.
3897         (decode_b_type_insn, decode_cb_type_insn): New.
3898         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3899         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3900         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3901         is_c_sw_insn instead of is_sw_insn.
3902         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3903         (riscv_software_single_step): New.
3904         * riscv-tdep.h (riscv_software_single_step): Declare.
3905
3906         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3907         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3908
3909 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3910
3911         PR gdb/18050:
3912         * target.c (dispose_inferior): Don't dispose of inferiors that are
3913         already killed.
3914
3915 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3916
3917         * remote.c (remote_target::download_tracepoint): Change char* to
3918         const char*.
3919
3920 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3921
3922         * target.h (target_options_to_string): Return an std::string.
3923         * target.c (str_comma_list_concat_elem): Return void, use
3924         std::string.
3925         (do_option): Likewise.
3926         (target_options_to_string): Return an std::string.
3927         * linux-nat.c (linux_nat_target::wait): Adjust.
3928         * target-debug.h (target_debug_print_options): Adjust.
3929
3930 2018-08-07  Tom Tromey  <tom@tromey.com>
3931
3932         * Makefile.in (CPPFLAGS): New variable.
3933         (INTERNAL_CPPFLAGS): Use it.
3934
3935 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3936
3937         * NEWS: Mention the index cache.
3938
3939 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3940
3941         * common/pathstuff.h (get_standard_cache_dir): New.
3942         * common/pathstuff.c (get_standard_cache_dir): New.
3943         * build-id.h (build_id_to_string): New.
3944         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3945         DEBUG_STR_SUFFIX): Move to here.
3946         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3947         DEBUG_STR_SUFFIX): Move from there.
3948         (write_psymtabs_to_index): Make non-static, add basename
3949         parameter.  Write to temporary files, rename when done.
3950         (save_gdb_index_command): Adjust call to
3951         write_psymtabs_to_index.
3952         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3953         field.
3954         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3955         (get_gdb_index_contents_from_cache): New.
3956         (get_gdb_index_contents_from_cache_dwz): New.
3957         (dwarf2_initialize_objfile): Read index from cache.
3958         (dwarf2_build_psymtabs): Save to index.
3959         * dwarf-index-cache.h: New file.
3960         * dwarf-index-cache.c: New file.
3961         * dwarf-index-write.h: New file.
3962
3963 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3964
3965         * gnulib/aclocal.m4: Re-generate.
3966         * gnulib/config.in: Re-generate.
3967         * gnulib/configure: Re-generate.
3968         * gnulib/import/Makefile.am: Re-generate.
3969         * gnulib/import/Makefile.in: Re-generate.
3970         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3971         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3972         * gnulib/import/m4/mkdir.m4: New file.
3973         * gnulib/import/mkdir.c: New file.
3974         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3975         module.
3976
3977 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3978
3979         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3980         * common/scoped_mmap.c: New file.
3981         * common/scoped_mmap.h (destroy): New method.
3982         (~scoped_mmap, reset): Use destroy.
3983         (scoped_mmap): New move constructor.
3984         (mmap_file): New declaration.
3985         * unittests/scoped_mmap-selftests.c (test_normal,
3986         test_invalid_filename, run_tests): New functions.
3987         (_initialize_scoped_mmap_selftests): Register selftest.
3988
3989 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3990
3991         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3992         (read_gdb_index_from_buffer): ... this.  Remove section
3993         parameter, add buffer parameter.
3994         (get_gdb_index_contents_ftype,
3995         get_gdb_index_contents_dwz_ftype): New typedefs.
3996         (dwarf2_read_gdb_index): Add callback parameters to get the
3997         index contents.
3998         (get_gdb_index_contents_from_section): New.
3999         (dwarf2_initialize_objfile): Update call to
4000         dwarf2_read_gdb_index.
4001
4002 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4003
4004         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4005         (gdb_open_cloexec): Likewise.
4006         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4007         (commandline_from_pid): Likewise.
4008         (linux_xfer_osdata_threads): Likewise.
4009         (linux_xfer_osdata_fds): Likewise.
4010         * ada-lang.c (is_package_name): Likewise.
4011         * auxv.c (procfs_xfer_auxv): Likewise.
4012         * breakpoint.c (print_one_breakpoint_location): Use
4013         uiout::field_fmt.
4014         (print_one_catch_solib): Use string_printf.
4015         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4016         (add_pe_forwarded_sym): Likewise.
4017         * dwarf2read.c (create_type_unit_group): Likewise.
4018         (build_error_marker_type): Likewise.
4019         * infcall.c (get_function_name): Likewise.
4020         * valprint.c (print_converted_chars_to_obstack): Likewise.
4021         * xtensa-tdep.c (xtensa_register_type): Likewise.
4022
4023 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4024
4025         * remote.c (remote_target::download_tracepoint): Fix format
4026         string errors.
4027
4028 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4029
4030         * tracefile.c: Include common/byte-vector.h.
4031         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4032         with trace_regblock_size if needed.  Update uses of buf.
4033
4034 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4035
4036         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4037         std::vector<unsigned char>.
4038         * tracepoint.c (collection_list::collection_list): Remove
4039         m_regs_mask initializer from initializer list.  Resize
4040         m_regs_mask using the largest remote register number.
4041         (collection_list::add_remote_register): Remove size check on
4042         m_regs_mask.  Use at to access element.
4043         (collection_list::stringify): Change type of temp_buf to
4044         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4045         stringify the register mask.  Use pack_hex_byte for the register
4046         mask.
4047
4048 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4049
4050         * tracepoint.h (class collection_list) <add_register>: Remove.
4051         <add_remote_register, add_ax_registers, add_local_register>:
4052         Declare.
4053         <add_memrange>: Add scope parameter.
4054         * tracepoint.c (encode_actions_1): Likewise.
4055         (collection_list::add_register): Rename to ...
4056         (collection_list::add_remote_register): ... this.  Update
4057         comment.
4058         (collection_list::add_ax_registers, add_local_register): New
4059         methods.
4060         (collection_list::add_memrange): Add scope parameter.  Call
4061         add_local_register instead of add_register.
4062         (finalize_tracepoint_aexpr): New function.
4063         (collection_list::collect_symbol): Update calls to add_memrange.
4064         Call add_local_register instead of add_register.  Call
4065         add_ax_registers.  Call finalize_tracepoint_aexpr.
4066         (encode_actions_1): Get remote regnos for $reg action.  Call
4067         add_remote_register, add_ax_registers, and add_local_register.
4068         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4069         (validate_actionline): Call finalize_tracepoint_aexpr.
4070
4071 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4072
4073         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4074         Replace array buf with gdb::char_vector buf, of size
4075         get_remote_packet_size ().  Replace references to buf and
4076         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4077         and xsnprintf with snprintf.  Raise errors if the buffer is too
4078         small.
4079
4080 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4081
4082         * remote.c (remote_target::download_tracepoint): Fix the has_more
4083         predicate in the QTDP action list iteration.
4084
4085 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4086
4087         * remote.c (remote_target::download_tracepoint): Fix indentation
4088         in for block.
4089
4090 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4091
4092         * proc-api.c (_initialize_proc_api): Remove c, unused.
4093         * procfs.c (procfs_init_inferior): Remove signals, unused.
4094         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4095         unused.
4096
4097 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4098             Andrew Burgess  <andrew.burgess@embecosm.com>
4099
4100         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4101         'W_STOPCODE (0)' as this could be ambiguous.
4102
4103 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4104
4105         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4106         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4107         "ai_socktype").
4108
4109 2018-08-02  Tom Tromey  <tom@tromey.com>
4110
4111         PR symtab/16842.
4112         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4113         symbols.
4114         (process_structure_scope): Likewise.
4115
4116 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4117
4118         PR gdb/22629:
4119         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4120         kill inferior.
4121
4122 2018-08-02  Tom Tromey  <tom@tromey.com>
4123
4124         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4125         (darwin_suspend_inferior, darwin_resume_inferior)
4126         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4127         (darwin_check_new_threads): Check result of get_darwin_inferior.
4128
4129 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4130
4131         GDB 8.1.1 released.
4132
4133 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4134
4135         * varobj.c (varobj_get_path_expr_parent): Report an error if
4136         parent is a dynamic varobj.
4137
4138 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4139
4140         * gnulib/aclocal.m4: Re-generate.
4141         * gnulib/config.in: Re-generate.
4142         * gnulib/configure: Re-generate.
4143         * gnulib/import/Makefile.in: Re-generate.
4144         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4145         * gnulib/import/m4/onceonly.m4: Re-generate.
4146
4147 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4148
4149         * target-descriptions.c (struct xml_test_tdesc): New.
4150         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4151         (record_xml_tdesc): Update.
4152         (maintenance_check_xml_descriptions): Update.
4153         * target-descriptions.h (record_xml_tdesc): Update comment.
4154
4155 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4156
4157         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4158         checking array bounds are defined.
4159
4160 2018-07-30  Tom Tromey  <tom@tromey.com>
4161
4162         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4163         irreflexivity violation.
4164
4165 2018-07-30  Tom Tromey  <tom@tromey.com>
4166
4167         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4168         * value.c (unpack_long): Remove lint code.
4169         * valops.c (value_ind): Remove lint code.
4170         * valarith.c (value_x_binop, value_x_unop, value_equal)
4171         (value_pos): Remove lint code.
4172
4173 2018-07-28  Tom de Vries  <tdevries@suse.de>
4174
4175         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4176         with undefined upper bound as <optimized out>.
4177
4178 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4179
4180         * gcore.in: Rename variable "name" to "prefix".  Expand
4181         "usage" text.
4182
4183 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4184
4185         * windows-nat.c (windows_nat_target::create_inferior): Update to
4186         call close() in global namespace.
4187
4188 2018-07-26  Tom Tromey  <tom@tromey.com>
4189
4190         * dwarf-index-write.c (add_address_entry): Don't add objfile
4191         offsets.
4192         * dbxread.c (find_stab_function): Rename from
4193         find_stab_function_addr.  Return a bound_minimal_symbol.
4194         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4195         Don't add objfile offsets.
4196         (end_psymtab): Use raw_text_low, raw_text_high,
4197         MSYMBOL_VALUE_RAW_ADDRESS.
4198         (read_ofile_symtab): Update.
4199         (process_one_symbol): Update.
4200         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4201         offsets.
4202         (dw2_relocate): Remove.
4203         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4204         searching addrmap.
4205         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4206         Update.
4207         (process_psymtab_comp_unit_reader, add_partial_symbol)
4208         (add_partial_subprogram, dwarf2_ranges_read): Update.
4209         (load_partial_dies): Update.
4210         (add_address_entry): Don't add objfile offsets.
4211         (dwarf2_build_include_psymtabs): Update.
4212         (create_addrmap_from_aranges): Don't add objfile offsets.
4213         (dw2_find_pc_sect_compunit_symtab): Update.
4214         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4215         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4216         Update.
4217         (parse_partial_symbols): Don't add objfile offsets.  Use
4218         raw_text_low, raw_text_high.  Update.
4219         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4220         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4221         or call 'relocate' quick function.  Clear psymbol_map.
4222         * psympriv.h (struct partial_symbol) <address>: Add section
4223         offset.
4224         <set_unrelocated_address>: Rename from set_address.
4225         <raw_text_low, raw_text_high>: New methods.
4226         <text_low, text_high>: Add objfile parameter.
4227         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4228         set_unrelocated_address.
4229         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4230         (find_pc_psymbol): Update.
4231         (fixup_psymbol_section, relocate_psymtabs): Remove.
4232         (dump_psymtab, psym_functions): Update.
4233         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4234         parameter.
4235         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4236         (start_psymtab_common): Update.
4237         * symfile-debug.c (debug_qf_relocate): Remove.
4238         (debug_sym_quick_functions): Update.
4239         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4240         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4241         Update.
4242
4243 2018-07-26  Tom Tromey  <tromey@redhat.com>
4244
4245         * dbxread.c (end_psymtab): Use text_high_valid and
4246         text_low_valid.
4247         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4248         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4249         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4250         Update comment.
4251         <text_low_valid, text_high_valid>: New fields.
4252         <set_text_low, set_text_high>: Update.
4253         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4254
4255 2018-07-26  Tom Tromey  <tom@tromey.com>
4256
4257         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4258         Update.
4259         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4260         textlow and texthigh fields.
4261         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4262         Update.
4263         * mdebugread.c (parse_lines, parse_partial_symbols)
4264         (psymtab_to_symtab_1): Update.
4265         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4266         Rename fields.  Update comment.  Now private.
4267         <text_low, text_high, set_text_low, set_text_high>: New methods.
4268         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4269         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4270         (start_psymtab_common, maintenance_info_psymtabs)
4271         (maintenance_check_psymtabs): Update.
4272         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4273         texthigh fields.
4274         (scan_xcoff_symtab): Update.
4275
4276 2018-07-26  Tom Tromey  <tromey@redhat.com>
4277
4278         * psympriv.h (struct partial_symbol) <unrelocated_address,
4279         address, set_address>: New methods.
4280         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4281         (fixup_psymbol_section, relocate_psymtabs): Update.
4282         (print_partial_symbols): Add 'objfile' parameter.  Update.
4283         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4284         Update.
4285
4286 2018-07-26  Tom Tromey  <tom@tromey.com>
4287
4288         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4289         (debug_names::write_psymbols): Update.
4290         * psympriv.h (struct partial_symbol): Derive from
4291         general_symbol_info.
4292         <obj_section>: New method.
4293         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4294         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4295         (find_pc_sect_psymbol, fixup_psymbol_section)
4296         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4297         (print_partial_symbols, recursively_search_psymtabs)
4298         (compare_psymbols, psymbol_hash, psymbol_compare)
4299         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4300         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4301
4302 2018-07-26  Tom Tromey  <tromey@redhat.com>
4303
4304         * dbxread.c (end_psymtab): Remove dead code.
4305
4306 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4307
4308         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4309         DWARF unwinders are disabled.
4310         * dwarf2-frame.c: Add dwarf2read.h include.
4311         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4312         disabled.
4313         (dwarf2_frame_unwinders_enabled_p): Define.
4314         (show_dwarf_unwinders_enabled_p): New function.
4315         (_initialize_dwarf2_frame): Register switch to control DWARF
4316         unwinder use.
4317         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4318         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4319         (show_dwarf_cmdlist): Remove static keyword.
4320         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4321         (show_dwarf_cmdlist): Declare.
4322         * NEWS: Document new feature.
4323
4324 2018-07-26  Tom de Vries  <tdevries@suse.de>
4325
4326         PR breakpoints/23366
4327         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4328
4329 2018-07-26  Tom de Vries  <tdevries@suse.de>
4330
4331         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4332         DW_AT_count can't be translated to a dynamic prop.
4333
4334 2018-07-25  Tom de Vries  <tdevries@suse.de>
4335
4336         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4337         try/catch.
4338
4339 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4340
4341         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4342
4343 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4344
4345         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4346
4347 2018-07-24  Keith Seitz  <keiths@redhat.comt
4348
4349         PR symtab/23010
4350         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4351         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4352         instead of add_symbol_to_list.
4353         (read_file_scope): Call prepare_one_comp_unit before reading
4354         any other DIEs.
4355
4356 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4357
4358         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4359
4360 2018-07-24  Tom Tromey  <tom@tromey.com>
4361
4362         * utils.c (malloc, realloc, free): Don't declare.
4363         * configure, config.in: Rebuild.
4364         * configure.ac: Don't check for declarations of free, malloc, or
4365         realloc.
4366
4367 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4368
4369         * aarch64-linux-nat.c
4370         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4371         variable.
4372         * arm-linux-nat.c (fetch_regs): Likewise.
4373         (store_regs): Likewise.
4374         (fetch_vfp_regs): Likewise.
4375         (store_vfp_regs): Likewise.
4376         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4377         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4378         (arm_linux_nat_target::insert_watchpoint): Likewise.
4379         (arm_linux_nat_target::remove_watchpoint): Likewise.
4380         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4381         Likewise.
4382         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4383         Likewise.
4384         * ppc-linux-nat.c (fetch_register): Likewise.
4385         (fetch_all_gp_regs): Likewise.
4386         (fetch_ppc_registers): Likewise.
4387         (store_all_gp_regs): Likewise.
4388         (store_ppc_registers): Likewise.
4389         (hwdebug_insert_point): Likewise.
4390         (can_use_watchpoint_cond_accel): Likewise.
4391         * remote-sim.c (gdb_os_write_stdout): Likewise.
4392
4393 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4394             Tom Tromey  <tom@tromey.com>
4395
4396         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4397         test for it.
4398         * configure: Rebuild.
4399
4400 2018-07-22  Tom Tromey  <tom@tromey.com>
4401
4402         * regformats/regdat.sh: Define xmltarget_${name} inside
4403         #ifndef IN_PROCESS_AGENT.
4404
4405 2018-07-22  Tom Tromey  <tom@tromey.com>
4406
4407         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4408
4409 2018-07-22  Tom Tromey  <tom@tromey.com>
4410
4411         * symfile.c (reread_symbols): Notify iter, not objfile.
4412
4413 2018-07-22  Tom Tromey  <tom@tromey.com>
4414
4415         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4416         Use arch_ops.
4417         (ravenscar_thread_target::prepare_to_store): Likewise.
4418
4419 2018-07-22  Tom Tromey  <tom@tromey.com>
4420
4421         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4422         unused variable.  Call value_fetch_lazy when needed.
4423         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4424         Remove unused variable.  Call value_fetch_lazy when needed.
4425
4426 2018-07-22  Tom Tromey  <tom@tromey.com>
4427
4428         * m32c-tdep.c (mark_dma): Return void.
4429         (make_regs): Remove unused declarations.
4430
4431 2018-07-22  Tom Tromey  <tom@tromey.com>
4432
4433         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4434         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4435         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4436         bkscm_get_valid_block_smob_arg_unsafe for effect.
4437
4438 2018-07-22  Tom Tromey  <tom@tromey.com>
4439
4440         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4441         value_type.
4442
4443 2018-07-22  Tom Tromey  <tom@tromey.com>
4444
4445         * windows-nat.c (saved_context): Conditionally define.
4446         * remote.c (remote_target::remote_btrace_maybe_reopen):
4447         Conditionally declare "warned".
4448         * inflow.c (sigquit_ours): Conditionally define.
4449         (new_tty): Move "tty" declaration inside #if.
4450         * guile/guile.c (guile_datadir): Conditionally define.
4451         * charset.c (set_be_le_names): Move some declarations inside #if.
4452         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4453         #if.
4454         (parse_xml_btrace_conf): Likewise.
4455
4456 2018-07-22  Tom Tromey  <tom@tromey.com>
4457
4458         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4459
4460 2018-07-22  Tom Tromey  <tom@tromey.com>
4461
4462         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4463         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4464         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4465         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4466         * stack.c (frame_apply_level_command): Remove unused variable.
4467         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4468         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4469         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4470         unused variable.
4471         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4472         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4473         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4474         variable.
4475         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4476         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4477         variable.
4478         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4479         Remove unused variable.
4480         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4481         variable.
4482         * common/tdesc.c (print_xml_feature::visit): Remove unused
4483         variable.
4484         * compile/compile-object-load.c (store_regs): Remove unused
4485         variables.
4486         * complaints.c (clear_complaints): Remove unused variable.
4487         * corelow.c (core_target_open): Remove unused variable.
4488         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4489         variable.
4490         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4491         variable.
4492         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4493         variable.
4494         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4495         variable.
4496         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4497         variable.
4498         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4499         variable.
4500         * ia64-tdep.c (examine_prologue): Remove unused variable.
4501         * infcall.c (run_inferior_call): Remove unused variable.
4502         * inferior.c (exit_inferior): Remove unused variable.
4503         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4504         * linespec.c (decode_line_2): Remove unused variable.
4505         * linux-nat.c (super_close): Remove.
4506         * linux-tdep.c (linux_info_proc): Remove unused variable.
4507         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4508         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4509         Remove unused variable.
4510         * parse.c (find_minsym_type_and_address): Remove unused variable.
4511         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4512         variable.
4513         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4514         variable.
4515         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4516         variables.
4517         * record-btrace.c (record_btrace_target::store_registers): Remove
4518         unused variable.
4519         (cmd_show_record_btrace_cpu): Remove unused variable.
4520         * riscv-tdep.c (riscv_register_reggroup_p)
4521         (riscv_push_dummy_call, riscv_return_value): Remove unused
4522         variable.
4523         * rust-exp.y (literal): Remove unused variable.
4524         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4525         unused variable.
4526         <STRUCTOP_ANONYMOUS>: Likewise.
4527         * s390-linux-tdep.c (s390_linux_init_abi_31)
4528         (s390_linux_init_abi_64): Remove unused variable.
4529         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4530         (file_select_thread, net_windows_open, _initialize_ser_windows):
4531         Remove unused variables.
4532         * symtab.c (find_pc_sect_line): Remove unused variable.
4533         * target-memory.c (compute_garbled_blocks): Remove unused
4534         variable.
4535         (target_write_memory_blocks): Remove unused variable.
4536         * target.c (target_stack::unpush): Remove unused variables.
4537         * tracepoint.c (start_tracing, all_tracepoint_actions)
4538         (merge_uploaded_trace_state_variables)
4539         (print_one_static_tracepoint_marker): Remove unused variable.
4540         * unittests/basic_string_view/element_access/char/1.cc (test01):
4541         Remove unused variable.
4542         * windows-nat.c (windows_continue, windows_add_all_dlls)
4543         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4544         Remove unused variables.
4545
4546 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4547
4548         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4549         attr_profile in HAVE_ELF.
4550         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4551         HAVE_ELF.
4552
4553 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4554
4555         * frame.c (frame_register_unwind): Change parameter name.
4556         (frame_unwind_register): Likewise.
4557         (frame_unwind_register_value): Likewise.
4558         (frame_unwind_register_signed): Likewise.
4559         (frame_unwind_register_unsigned): Likewise.
4560         * frame.h (frame_register_unwind): Likewise.
4561         (frame_unwind_register): Likewise.
4562         (frame_unwind_register_value): Likewise.
4563         (frame_unwind_register_signed): Likewise.
4564         (frame_unwind_register_unsigned): Likewise.
4565         (frame_unwind_arch): Likewise.
4566
4567 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4568
4569         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4570         ISA maintenance.
4571
4572 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4573
4574         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4575         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4576         hand.
4577
4578 2018-07-20  Keith Seitz  <keiths@redhat.com>
4579
4580         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4581         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4582         m_compunit_symtab, m_language>: Add "m_" prefix.
4583         Update all uses.
4584         * buildsym.c: Update all uses.
4585
4586 2018-07-20  Tom Tromey  <tom@tromey.com>
4587
4588         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4589         * buildsym.h (record_line_ftype): Remove typedef.
4590
4591 2018-07-20  Tom Tromey  <tom@tromey.com>
4592
4593         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4594         (end_expandable_symtab): Likewise.
4595         (end_symtab_get_static_block): Likewise.
4596         (end_symtab_from_static_block): Likewise.
4597         * buildsym-legacy.c (augment_type_symtab): Remove.
4598         (end_expandable_symtab): Remove.
4599         (end_symtab_get_static_block): Remove.
4600         (end_symtab_from_static_block): Remove.
4601
4602 2018-07-20  Tom Tromey  <tom@tromey.com>
4603
4604         * dwarf2read.c: Include buildsym.h.
4605         (struct dwarf2_cu) <builder>: New method.
4606         (fixup_go_packaging): Update.
4607         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4608         use scoped_free_pendings.
4609         (using_directives): Add "cu" parameter, remove "language".
4610         (read_import_statement, setup_type_unit_groups, )
4611         (read_func_scope, read_lexical_block_scope)
4612         (dwarf2_record_block_ranges, read_namespace): Update.
4613         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4614         (lnp_state_machine::handle_end_sequence): Update.
4615         (class lnp_state_machine) <m_cu>: New member.
4616         <m_record_line_callback>: Remove.
4617         <m_currently_recording_lines>: New member.
4618         (lnp_state_machine::handle_set_file): Update.
4619         (noop_record_line): Remove.
4620         (dwarf_record_line_p): Add cu parameter.
4621         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4622         (lnp_state_machine::record_line)
4623         (lnp_state_machine::lnp_state_machine)
4624         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4625         (dwarf_decode_lines): Update.
4626         (dwarf2_start_subfile): Add cu parameter.
4627         (dwarf2_start_symtab, new_symbol): Update.
4628         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4629         Remove dwarf2_per_objfile parameter.
4630         (dwarf_decode_macros): Update.
4631
4632 2018-07-20  Tom Tromey  <tom@tromey.com>
4633
4634         * stabsread.c (define_symbol): Update.
4635         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4636         * dwarf2read.c (new_symbol): Update.
4637         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4638         * cp-namespace.c: Include buildsym.h.
4639         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4640         * buildsym-legacy.c (get_buildsym_compunit): New function.
4641
4642 2018-07-20  Tom Tromey  <tom@tromey.com>
4643
4644         * xcoffread.c: Include buildsym-legacy.h.
4645         * windows-nat.c: Include buildsym-legacy.h.
4646         * stabsread.c: Include buildsym-legacy.h.
4647         * mdebugread.c: Include buildsym-legacy.h.
4648         * buildsym-legacy.h: New file.
4649         * buildsym-legacy.c: New file, from buildsym.c.
4650         * go32-nat.c: Include buildsym-legacy.h.
4651         * dwarf2read.c: Include buildsym-legacy.h.
4652         * dbxread.c: Include buildsym-legacy.h.
4653         * cp-namespace.c: Include buildsym-legacy.h.
4654         * coffread.c: Include buildsym-legacy.h.
4655         * buildsym.h: Move some contents to buildsym-legacy.h.
4656         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4657         buildsym-legacy.c.
4658         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4659
4660 2018-07-20  Tom Tromey  <tom@tromey.com>
4661
4662         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4663         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4664         (buildsym_compunit::buildsym_compunit)
4665         (buildsym_compunit::~buildsym_compunit)
4666         (buildsym_compunit::get_macro_table): Define.
4667
4668 2018-07-20  Tom Tromey  <tom@tromey.com>
4669
4670         * buildsym.c (reset_symtab_globals): Remove.
4671         (buildsym_compunit::end_symtab_from_static_block): Update.
4672         (buildsym_compunit::augment_type_symtab): Update.
4673         (end_symtab_from_static_block): Call free_buildsym_compunit.
4674         (augment_type_symtab, end_symtab, end_expandable_symtab):
4675         Likewise.
4676
4677 2018-07-20  Tom Tromey  <tom@tromey.com>
4678
4679         * arch-utils.c: Do not include buildsym.h.
4680         * mipsread.c: Do not include buildsym.h.
4681         * machoread.c: Do not include buildsym.h.
4682         * elfread.c: Do not include buildsym.h.
4683
4684 2018-07-20  Tom Tromey  <tom@tromey.com>
4685
4686         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4687         initialization.
4688         (buildsym_compunit): Add new constructor.
4689         (struct buildsym_compunit) <get_last_source_file, finish_block,
4690         record_block_range, start_subfile, patch_subfile_names,
4691         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4692         set_last_source_start_addr, get_last_source_start_addr,
4693         get_local_using_directives, set_local_using_directives,
4694         get_global_using_directives, outermost_context_p,
4695         get_current_context_stack, get_context_stack_depth,
4696         get_current_subfile, get_local_symbols, get_file_symbols,
4697         get_global_symbols, record_debugformat, record_producer,
4698         push_context, pop_context, end_symtab_get_static_block,
4699         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4700         New public methods.
4701         <record_pending_block, finish_block_internal, make_blockvector,
4702         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4703         private methods.
4704         Update all users.
4705
4706 2018-05-22  Tom Tromey  <tom@tromey.com>
4707
4708         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4709         parameter.
4710         (finish_block_internal): Update.
4711
4712 2018-07-20  Tom Tromey  <tom@tromey.com>
4713
4714         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4715         parameter.
4716         (finish_block_internal): Update.
4717
4718 2018-07-20  Tom Tromey  <tom@tromey.com>
4719
4720         * buildsym.h (EXTERN): Don't define or undef.
4721         * buildsym.c (EXTERN): Don't define.
4722
4723 2018-07-20  Tom Tromey  <tom@tromey.com>
4724
4725         * buildsym.c: Remove TODO comment.
4726
4727 2018-07-20  Tom Tromey  <tom@tromey.com>
4728
4729         * coffread.c (coff_symtab_read): Update.
4730         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4731         (xcoff_new_init): Update.
4732         * mipsread.c (mipscoff_new_init): Update.
4733         * mdebugread.c (mdebug_build_psymtabs): Update.
4734         * elfread.c (elf_new_init): Update.
4735         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4736         Update.
4737         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4738         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4739         (stabsect_build_psymtabs): Update.
4740         * buildsym.h (buildsym_init): Don't declare.
4741         * buildsym.c: Update comment.
4742         (prepare_for_building): Remove.
4743         (start_symtab, restart_symtab): Update.
4744         (reset_symtab_globals): Update comment.
4745         (buildsym_init): Remove.
4746
4747 2018-07-20  Tom Tromey  <tom@tromey.com>
4748
4749         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4750         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4751         (read_enum_type, common_block_start, common_block_end)
4752         (cleanup_undefined_types_1, finish_global_stabs): Update.
4753         * mdebugread.c (psymtab_to_symtab_1): Update.
4754         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4755         (read_lexical_block_scope, new_symbol): Update.
4756         * dbxread.c (process_one_symbol): Update.
4757         * coffread.c (coff_symtab_read, process_coff_symbol)
4758         (coff_read_enum_type): Update.
4759         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4760         declare.
4761         (get_local_symbols, get_file_symbols, get_global_symbols): New
4762         functions.
4763         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4764         m_global_symbols.
4765         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4766         (~scoped_free_pendings): Update.
4767         (finish_block, prepare_for_building, reset_symtab_globals)
4768         (end_symtab_get_static_block, end_symtab_with_blockvector)
4769         (augment_type_symtab, push_context): Update.
4770         (get_local_symbols, get_file_symbols, get_global_symbols): New
4771         functions.
4772         (buildsym_init): Update.
4773
4774 2018-07-20  Tom Tromey  <tom@tromey.com>
4775
4776         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4777         (process_full_type_unit): Likewise.
4778         (dwarf2_start_symtab): Set list_in_scope.
4779
4780 2018-07-20  Tom Tromey  <tom@tromey.com>
4781
4782         * dwarf2read.c (process_psymtab_comp_unit_reader)
4783         (build_type_psymtabs_reader): Do not set list_in_scope.
4784
4785 2018-07-20  Tom Tromey  <tom@tromey.com>
4786
4787         * buildsym.c (free_pendings): Remove.
4788         (add_symbol_to_list, scoped_free_pendings)
4789         (finish_block_internal, buildsym_init): Update.
4790
4791 2018-07-20  Tom Tromey  <tom@tromey.com>
4792
4793         * xcoffread.c (read_xcoff_symtab): Update.
4794         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4795         Update.
4796         * dbxread.c (process_one_symbol): Update.
4797         * coffread.c (coff_symtab_read): Update.
4798         * buildsym.h (finish_block): Update.
4799         * buildsym.c (finish_block): Remove "listhead" argument.
4800         (end_symtab_get_static_block): Update.
4801
4802 2018-07-20  Tom Tromey  <tom@tromey.com>
4803
4804         * buildsym.h (class scoped_free_pendings): Remove constructor.
4805         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4806         method.
4807         <m_pending_block_obstack, m_pending_blocks>: New members.
4808         (pending_block_obstack, pending_blocks): Remove.
4809         (scoped_free_pendings::scoped_free_pendings): Default.
4810         (~scoped_free_pendings): Update.
4811         (free_pending_blocks): Remove.
4812         (finish_block_internal, record_pending_block, make_blockvector)
4813         (end_symtab_get_static_block, augment_type_symtab, push_context)
4814         (buildsym_init): Update.
4815
4816 2018-07-20  Tom Tromey  <tom@tromey.com>
4817
4818         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4819         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4820         members.
4821         (pending_addrmap, pending_addrmap_obstack)
4822         (pending_addrmap_interesting): Remove.
4823         (scoped_free_pendings, record_block_range, make_blockvector)
4824         (prepare_for_building, reset_symtab_globals, buildsym_init):
4825         Update.
4826
4827 2018-07-20  Tom Tromey  <tom@tromey.com>
4828
4829         * xcoffread.c (process_linenos): Update.
4830         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4831         * mdebugread.c (psymtab_to_symtab_1): Update.
4832         * dwarf2read.c (setup_type_unit_groups)
4833         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4834         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4835         * dbxread.c (process_one_symbol): Update.
4836         * coffread.c (coff_symtab_read, enter_linenos)
4837         (process_coff_symbol): Update.
4838         * buildsym.h (current_subfile): Don't declare.
4839         (get_current_subfile): Declare.
4840         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4841         member.
4842         (start_subfile, free_buildsym_compunit, push_subfile)
4843         (prepare_for_building, start_symtab): Update.
4844         (get_current_subfile): New function.
4845
4846 2018-07-20  Tom Tromey  <tom@tromey.com>
4847
4848         * coffread.c (coff_symtab_read): Update.
4849         * xcoffread.c (read_xcoff_symtab): Update.
4850         * dwarf2read.c (new_symbol): Update.
4851         (read_func_scope, read_lexical_block_scope): Update.
4852         * dbxread.c (process_one_symbol): Update.
4853         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4854         (outermost_context_p): Remove macro.
4855         (outermost_context_p, get_current_context_stack)
4856         (get_context_stack_depth): Declare.
4857         (pop_context): Return struct context_stack.
4858         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4859         member.
4860         (context_stack_size): Remove.
4861         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4862         (prepare_for_building, end_symtab_get_static_block)
4863         (augment_type_symtab, push_context): Update.
4864         (pop_context): Return struct context_stack.
4865         (outermost_context_p, get_current_context_stack)
4866         (get_context_stack_depth): New functions.
4867         (buildsym_init): Update.
4868
4869 2018-07-20  Tom Tromey  <tom@tromey.com>
4870
4871         * rust-exp.y: Now a pure parser.  Update all rules.
4872         (%union): Move earlier.
4873         (current_parser, work_obstack): Remove globals.
4874         (rust_parser, ~rust_parser): Update.
4875         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4876         lex_character, lex_number, lex_string, lex_identifier,
4877         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4878         convert_name, convert_params_to_expression,
4879         convert_ast_to_expression, ast_basic_type, ast_operation,
4880         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4881         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4882         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4883         ast_array_type, ast_slice_type, ast_reference_type,
4884         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4885         (rust_parse): Update.
4886         (rustyyerror, rustyylex): Add parser parameter.
4887         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4888         (rust_lex_stringish_test, rust_lex_test_sequence)
4889         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4890         (rust_lex_test_push_back, rust_lex_tests): Update.
4891
4892 2018-07-19  Pedro Alves  <palves@redhat.com>
4893
4894         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4895         gdb::unique_xmalloc_ptr.
4896         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4897         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4898         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4899         copy-initialization.
4900         * guile/scm-pretty-print.c (ppscm_print_children): Use
4901         gdb::unique_xmalloc_ptr instead of cleanups.
4902         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4903         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4904         gdb::unique_xmalloc_ptr.
4905         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4906         Adjust to use gdb::unique_xmalloc_ptr.
4907         * guile/scm-utils.c (extract_arg): Adjust.
4908         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4909         gdb::unique_xmalloc_ptr instead of a cleanup.
4910
4911 2018-07-19  Tom Tromey  <tom@tromey.com>
4912
4913         * utils.c (do_value_free_to_mark)
4914         (make_cleanup_value_free_to_mark): Remove.
4915         * utils.h (make_cleanup_value_free_to_mark): Remove.
4916
4917 2018-07-19  Pedro Alves  <palves@redhat.com>
4918
4919         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4920         forwarding reference.
4921
4922 2018-07-18  Pedro Alves  <palves@redhat.com>
4923
4924         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4925         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4926         cleanup.
4927
4928 2018-07-18  Pedro Alves  <palves@redhat.com>
4929
4930         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4931         exceptions.
4932         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4933         (gdbscm_wrap): New.
4934         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4935         directly instead of a cleanup.
4936         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4937         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4938         (vlscm_binop_gdbthrow): New, factored out from ...
4939         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4940         (vlscm_rich_compare): Use gdbscm_wrap.
4941         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4942         instead of a cleanup.
4943         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4944         cleanup.
4945         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4946         Use xfree directly instead of a cleanup.
4947         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4948         Adjust to use gdbscm_wrap and scoped_value_mark.
4949         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4950         (gdbscm_value_address, gdbscm_value_dereference)
4951         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4952         scoped_value_mark.
4953         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4954         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4955         scoped_value_mark.
4956         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4957         gdbscm_wrap and scoped_value_mark.
4958         (gdbscm_value_to_string): Use xfree directly instead of a
4959         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4960         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4961         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4962         scoped_value_mark.
4963         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4964         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4965         scoped_value_mark.
4966         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4967         gdbscm_wrap.
4968
4969 2018-07-18  Tom de Vries  <tdevries@suse.de>
4970
4971         * findvar.c (default_read_var_value): Also resolve dynamic type for
4972         LOC_OPTIMIZED_OUT vars.
4973
4974 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4975
4976         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4977         decoding.
4978
4979 2018-07-17  Tom Tromey  <tom@tromey.com>
4980
4981         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4982         (compute_enum_list, pascm_set_param_value_x)
4983         (gdbscm_parameter_value): Update.
4984         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4985         (gdbscm_scm_to_host_string): Update.
4986         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4987         Update.
4988         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4989         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4990         * guile/scm-string.c (gdbscm_scm_to_string): Return
4991         unique_xmalloc_ptr.
4992         (gdbscm_scm_to_host_string): Likewise.
4993
4994 2018-07-17  Tom Tromey  <tom@tromey.com>
4995
4996         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4997         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4998         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4999         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5000         unique_xmalloc_ptr.
5001
5002 2018-07-17  Tom Tromey  <tom@tromey.com>
5003
5004         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5005         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5006         Update.
5007         * guile/scm-cmd.c (cmdscm_function): Update.
5008         * guile/scm-pretty-print.c
5009         (ppscm_print_exception_unless_memory_error): Update.
5010         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5011         Return unique_xmalloc_ptr.
5012
5013 2018-07-17  Tom Tromey  <tom@tromey.com>
5014
5015         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5016         Use string_printf.
5017
5018 2018-07-17  Jim Wilson  <jimw@sifive.com>
5019
5020         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5021         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5022         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5023         unecessary braces after EF_RISCV_RVC test.  Delete call to
5024         set_gdbarch_decr_pc_after_break.
5025
5026         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5027         RISCV_LAST_FP_REGNUM + 1.
5028         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5029
5030 2018-07-17  Tom Tromey  <tom@tromey.com>
5031
5032         * configure.ac: Remove --disable-gdbcli.
5033         * configure: Rebuild.
5034         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5035         (SUBDIR_CLI_CFLAGS): Remove.
5036         (SFILES): Use SUBDIR_CLI_SRCS.
5037         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5038
5039 2018-07-17  Tom Tromey  <tom@tromey.com>
5040
5041         PR gdb/18624:
5042         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5043
5044 2018-07-16  Jim Wilson  <jimw@sifive.com>
5045
5046         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5047
5048 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5049
5050         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5051         variable.
5052         (libunwind_frame_sniffer): Likewise.
5053         (libunwind_frame_prev_register): Likewise.
5054         (libunwind_sigtramp_frame_sniffer): Likewise.
5055         * ia64-tdep.c (ia64_access_reg): Likewise.
5056         (ia64_access_rse_reg): Likewise.
5057         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5058         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5059
5060 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5061
5062         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5063
5064 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5065
5066         * remote-sim.c (gdbsim_target::close,
5067         gdbsim_target::mourn_inferior): Remove unused variables.
5068
5069 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5070
5071         * ia64-tdep.c (ktab_buf): New global.
5072         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5073         (get_kernel_table): Adjust.
5074
5075 2018-07-16  Tom Tromey  <tom@tromey.com>
5076
5077         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5078         * dwarf2read.c (using_directives, new_symbol): Use
5079         outermost_context_p.
5080         * dbxread.c (process_one_symbol): Use outermost_context_p.
5081         * coffread.c (coff_symtab_read): Use outermost_context_p.
5082
5083 2018-07-16  Tom Tromey  <tom@tromey.com>
5084
5085         * dwarf2read.c (using_directives, read_func_scope)
5086         (read_lexical_block_scope): Update.
5087         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5088         * buildsym.h (local_using_directives, global_using_directives):
5089         Don't declare.
5090         (get_local_using_directives, set_local_using_directives)
5091         (get_global_using_directives): Declare.
5092         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5093         m_global_using_directives>: New members.
5094         (finish_block_internal, prepare_for_building)
5095         (reset_symtab_globals, end_symtab_get_static_block)
5096         (push_context): Update.
5097         (get_local_using_directives, set_local_using_directives)
5098         (get_global_using_directives): New functions.
5099         (buildsym_init): Update.
5100
5101 2018-07-16  Tom Tromey  <tom@tromey.com>
5102
5103         * xcoffread.c (xcoff_initial_scan): Don't call
5104         free_pending_blocks.
5105         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5106         * buildsym.h (class scoped_free_pendings): Add constructor.
5107         (free_pending_blocks): Don't declare.
5108         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5109         (free_pending_blocks): Now static.
5110
5111 2018-07-16  Tom Tromey  <tom@tromey.com>
5112
5113         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5114         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5115         member.
5116         (struct subfile_stack): Remove.
5117         (subfile_stack): Remove.
5118         (push_subfile, pop_subfile, buildsym_init): Update.
5119
5120 2018-07-16  Tom Tromey  <tom@tromey.com>
5121
5122         * buildsym.c (push_subfile): Use gdb_assert.
5123         (pop_subfile): Use gdb_assert.
5124
5125 2018-07-16  Tom Tromey  <tom@tromey.com>
5126
5127         * buildsym.h (merge_symbol_lists): Remove.
5128         * buildsym.c (merge_symbol_lists): Remove.
5129
5130 2018-07-16  Tom Tromey  <tom@tromey.com>
5131
5132         * stabsread.c (scan_file_globals): Update comment.
5133         * stabsread.h (scan_file_globals): Move from buildsym.h.
5134         * buildsym.h (scan_file_globals): Move to stabsread.h.
5135
5136 2018-07-16  Tom Tromey  <tom@tromey.com>
5137
5138         * xcoffread.c (xcoff_new_init): Update.
5139         * mipsread.c (mipscoff_new_init): Update.
5140         * mdebugread.c (mdebug_build_psymtabs): Update.
5141         * elfread.c (elf_new_init): Update.
5142         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5143         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5144         * buildsym.h (buildsym_new_init): Don't declare.
5145         * buildsym.c (buildsym_new_init): Remove.
5146
5147 2018-07-16  Tom Tromey  <tom@tromey.com>
5148
5149         * stabsread.h (within_function): Move from buildsym.h.
5150         * stabsread.c (start_stabs): Clear within_function.
5151         * coffread.c (coff_start_symtab): Clear within_function.
5152         * buildsym.h (within_function): Move to stabsread.h.
5153         * buildsym.c (prepare_for_building): Update.
5154
5155 2018-07-16  Tom Tromey  <tom@tromey.com>
5156
5157         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5158         * dwarf2read.c (dwarf2_start_symtab): Don't set
5159         processing_gcc_compilation.
5160         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5161
5162 2018-07-16  Tom Tromey  <tom@tromey.com>
5163
5164         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5165         (next_symbol_text_func): Move from buildsym.h.
5166         * stabsread.c (hashname): Move from buildsym.c.
5167         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5168         (next_symbol_text_func, hashname): Move to stabsread.h.
5169         * buildsym.c: Don't include bcache.h
5170         (hashname): Move to stasbread.c.
5171
5172 2018-07-16  Tom Tromey  <tom@tromey.com>
5173
5174         * buildsym.h (context_stack_size): Don't declare.
5175         * buildsym.c (context_stack_size): New global.
5176
5177 2018-07-16  Tom Tromey  <tom@tromey.com>
5178
5179         * dbxread.c (processing_acc_compilation): New global.
5180         * buildsym.h (processing_acc_compilation): Don't declare.
5181
5182 2018-07-16  Tom Tromey  <tom@tromey.com>
5183
5184         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5185         * dbxread.c (read_ofile_symtab): Update.
5186         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5187         * buildsym.h (last_source_start_addr): Remove.
5188         (set_last_source_start_addr, get_last_source_start_addr):
5189         Declare.
5190         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5191         parameter.
5192         (struct buildsym_compunit) <m_last_source_start_addr>: New
5193         member.
5194         (prepare_for_building): Remove start_addr parameter.
5195         (start_symtab, restart_symtab, end_symtab_get_static_block)
5196         (end_symtab_with_blockvector): Update.
5197         (set_last_source_start_addr, get_last_source_start_addr): New
5198         functions.
5199
5200 2018-07-16  Tom Tromey  <tom@tromey.com>
5201
5202         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5203         member.
5204         (have_line_numbers): Remove.
5205         (record_line, prepare_for_building, end_symtab_get_static_block)
5206         (augment_type_symtab): Update.
5207
5208 2018-07-16  Tom Tromey  <tom@tromey.com>
5209
5210         * buildsym.c (~buildsym_compunit): Free the macro table.
5211         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5212         methods.
5213         <m_pending_macros>: New member.
5214         (pending_macros): Remove.
5215         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5216         (reset_symtab_globals, end_symtab_get_static_block)
5217         (end_symtab_with_blockvector, augment_type_symtab)
5218         (buildsym_init): Update.
5219
5220 2018-07-16  Tom Tromey  <tom@tromey.com>
5221
5222         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5223         parameter.
5224         (buildsym_compunit::set_last_source_file): New method.
5225         <m_last_source_file>: New member.
5226         (prepare_for_building): Remove "name" parameter.
5227         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5228         (last_source_file): Remove.
5229         (set_last_source_file, get_last_source_file): Update.
5230
5231 2018-07-16  Tom Tromey  <tom@tromey.com>
5232
5233         * buildsym.c (prepare_for_building): Add assert.
5234
5235 2018-07-16  Tom Tromey  <tom@tromey.com>
5236
5237         * buildsym.c (~buildsym_compunit): Update.
5238         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5239         (start_subfile, patch_subfile_names)
5240         (end_symtab_with_blockvector): Update.
5241
5242 2018-07-16  Tom Tromey  <tom@tromey.com>
5243
5244         * buildsym.c (struct buildsym_compunit): Add constructor,
5245         destructor, initializers.
5246         (start_buildsym_compunit): Remove.
5247         (free_buildsym_compunit): Use "delete".
5248         (start_symtab, restart_symtab): Use "new".
5249
5250 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5251
5252         * symfile.c (set_objfile_default_section_offset): Remove struct
5253         keyword.
5254
5255 2018-07-14  Stafford Horne  <shorne@gmail.com>
5256
5257         * (Responsible Maintainers): Add myself as or1k maintainer.
5258
5259 2018-07-13  Tom Tromey  <tom@tromey.com>
5260
5261         * symfile.c (set_objfile_default_section_offset): Use extra braces
5262         around initializer.
5263
5264 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5265
5266         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5267         non-branching basr.
5268
5269 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5270
5271         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5272         unittests/cli-utils-selftests.c
5273         * unittests/cli-utils-selftests.c: New file.
5274
5275 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5276
5277         * NEWS: Mention new commands. Mention change to 'thread apply'.
5278
5279 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5280
5281         * thread.c (thr_try_catch_cmd): New function.
5282         (thread_apply_all_command): Handle qcs flags.
5283         (thread_apply_command): Handle qcs flags.
5284         (taas_command): New function.
5285         (tfaas_command): New function.
5286         (_initialize_thread): Update to setup the new commands 'taas
5287         and 'tfaas'. Change doc string for 'thread apply'.
5288
5289 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5290
5291         * stack.c: (trailing_outermost_frame): New function, mostly
5292         extracted from backtrace_command_1.
5293         (leading_innermost_frame): New function.
5294         (backtrace_command_1): Update to call trailing_outermost_frame.
5295         (frame_apply_command_count): New function.
5296         (frame_apply_level_command): New function.
5297         (frame_apply_all_command): New function.
5298         (frame_apply_command): New function.
5299         (faas_command): New function.
5300         (frame_cmd_list): New variable.
5301         (_initialize_stack): Update to setup the new commands 'frame apply'
5302         and 'faas'.
5303
5304 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5305
5306         * cli-utils.c (number_or_range_parser::get_number): Only handle
5307         numbers or convenience var as numbers.
5308         (parse_flags): New function.
5309         (parse_flags_qcs): New function.
5310         (number_or_range_parser::finished): Ensure parsing end is detected
5311         before end of string.
5312         * cli-utils.h (parse_flags): New function.
5313         (parse_flags_qcs): New function.
5314         (number_or_range_parser): Remove m_finished bool.
5315         (number_or_range_parser::skip_range): Set m_in_range to false.
5316
5317 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5318
5319         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5320         on Windows.
5321
5322 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5323             Jan Kratochvil  <jan.kratochvil@redhat.com>
5324             Paul Fertser  <fercerpav@gmail.com>
5325             Tsutomu Seki  <sekiriki@gmail.com>
5326             Pedro Alves  <palves@redhat.com>
5327
5328         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5329         'unittests/parse-connection-spec-selftests.c'.
5330         (COMMON_SFILES): Add 'common/netstuff.c'.
5331         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5332         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5333         * common/netstuff.c: New file.
5334         * common/netstuff.h: New file.
5335         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5336         (wait_for_connect): Update comment.  New parameter
5337         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5338         Use 'sock' directly instead of 'scb->fd'.
5339         (try_connect): New function, with code from 'net_open'.
5340         (net_open): Rewrite main loop to deal with multiple
5341         sockets/addresses.  Handle IPv6-style hostnames; implement
5342         support for IPv6 connections.
5343         * unittests/parse-connection-spec-selftests.c: New file.
5344
5345 2018-07-11  Pedro Alves  <palves@redhat.com>
5346
5347         PR gdb/23377
5348         * remote.c (remote_target::remote_detach_pid): Call
5349         set_current_process.
5350
5351 2018-07-11  Pedro Alves  <palves@redhat.com>
5352
5353         * h8300-tdep.c (h8300_gdbarch_init): Remove
5354         set_gdbarch_ecoff_reg_to_regnum calls.
5355
5356 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5357
5358         PR c++/23373
5359         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5360         offsets/sizes for static members of a class/struct.
5361
5362 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5363
5364         * target-descriptions.c (tdesc_register_bitsize): Rename.
5365         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5366         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5367         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5368
5369 2018-07-10  Tom Tromey  <tom@tromey.com>
5370
5371         * breakpoint.c (moribund_locations): Now static and a
5372         std::vector.
5373         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5374         (build_bpstat_chain, update_global_location_list)
5375         (breakpoint_retire_moribund): Update.
5376         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5377         VEC.
5378
5379 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5380
5381         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5382         (riscv_register_reggroup_p): Use new function, remove unneeded
5383         parenthesis.
5384         (riscv_push_dummy_call): Extend assert to compare against xlen or
5385         flen based on register type.
5386
5387 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5388
5389         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5390
5391 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5392
5393         * remote.c (show_hardware_watchpoint_limit): New function.
5394         (show_hardware_watchpoint_length_limit): New function.
5395         (show_hardware_breakpoint_limit): New function.
5396         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5397         where appropriate, update help text.
5398
5399 2018-07-09  Tom Tromey  <tom@tromey.com>
5400
5401         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5402         (CLIBS): Don't mention NAT_CLIBS.
5403
5404 2018-07-09  Tom Tromey  <tom@tromey.com>
5405
5406         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5407         (LIBGDB_OBS, clean mostlyclean): Update.
5408         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5409
5410 2018-07-09  Tom Tromey  <tom@tromey.com>
5411
5412         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5413         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5414         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5415
5416 2018-07-09  Tom Tromey  <tom@tromey.com>
5417
5418         * Makefile.in (ALLDEPFILES): Remove exec.c.
5419         (COMMON_OBS): Remove exec.o.
5420         (COMMON_SFILES): Add exec.c.
5421
5422 2018-07-09  Tom Tromey  <tom@tromey.com>
5423
5424         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5425
5426 2018-07-09  Tom Tromey  <tom@tromey.com>
5427
5428         * Makefile.in (clean mostlyclean): Remove stamp-version.
5429         (version.c): Depend on stamp-version.
5430         (stamp-version): New rule, from version.c rule.
5431
5432 2018-07-09  Tom Tromey  <tom@tromey.com>
5433
5434         * Makefile.in (init.c): Depend on stamp-init.
5435         (stamp-init): New rule, from init.c rule.
5436         (clean mostlyclean): Remove stamp-init.
5437
5438 2018-07-09  Tom Tromey  <tom@tromey.com>
5439
5440         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5441         SUBDIR_GCC_COMPILE_SRCS.
5442
5443 2018-07-09  Tom Tromey  <tom@tromey.com>
5444
5445         * Makefile.in (init.c): Remove some unused sed rules.
5446
5447 2018-07-09  Tom Tromey  <tom@tromey.com>
5448
5449         * Makefile.in (TSOBS): Remove.
5450         (INIT_FILES): Update.
5451         (LIBGDB_OBS): Update.
5452         (COMMON_SFILES): Add inflow.c.
5453         (SFILES): Remove inflow.c.
5454
5455 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5456
5457         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5458
5459 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5460
5461         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5462         get_saveloc_name, is_signal_frame_name, step_name,
5463         init_remote_name, create_addr_space_name,
5464         destroy_addr_space_name, search_unwind_table_name,
5465         find_dyn_list_name): Constify.
5466
5467 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5468
5469         * darwin-nat.c (darwin_pthread_kill): New function.
5470         (darwin_resume_thread): Use darwin_pthread_kill.
5471
5472 2018-07-05  Tom de Vries  <tdevries@suse.de>
5473
5474         * macroexp.c (macro_buffer) <operator=>: New member function.
5475
5476 2018-07-04  Tom Tromey  <tom@tromey.com>
5477
5478         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5479
5480 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5481
5482         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5483         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5484         * maint.c: Likewise.
5485         * top.c: Likewise.
5486
5487 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5488
5489         * NEWS: Create a new section for the next release branch.
5490         Rename the section of the current branch, now that it has
5491         been cut.
5492
5493 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5494
5495         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5496         * version.in: Bump version to 8.2.50.DATE-git.
5497
5498 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5499             Pedro Alves  <palves@redhat.com>
5500
5501         * linux-nat.c (linux_init_ptrace): Rename to ...
5502         (linux_init_ptrace_procfs): ... this.  Call
5503         linux_proc_init_warnings.
5504         (linux_nat_target::post_attach)
5505         (linux_nat_target::post_startup_inferior): Adjust.
5506         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5507         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5508
5509 2018-07-04  Tom de Vries  <tdevries@suse.de>
5510
5511         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5512         check ...
5513         (read_comp_unit_head): ... here.
5514
5515 2018-07-03  Tom Tromey  <tom@tromey.com>
5516
5517         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5518         (stop_tracing, tstatus_command)
5519         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5520         (print_one_static_tracepoint_marker): Update.
5521         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5522         std::vector.
5523         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5524         VEC.
5525         (all_tracepoints, static_tracepoints_here): Return std::vector.
5526
5527 2018-07-03  Tom Tromey  <tom@tromey.com>
5528
5529         * common/ptid.c (ptid_equal): Remove.
5530         * common/ptid.h (ptid_equal): Don't declare.
5531         * ada-tasks.c: Update.
5532         * breakpoint.c: Update.
5533         * common/agent.c: Update.
5534         * corelow.c: Update.
5535         * darwin-nat-info.c: Update.
5536         * darwin-nat.c: Update.
5537         * dcache.c: Update.
5538         * dtrace-probe.c: Update.
5539         * dummy-frame.c: Update.
5540         * fbsd-nat.c: Update.
5541         * frame.c: Update.
5542         * gdbthread.h: Update.
5543         * gnu-nat.c: Update.
5544         * go32-nat.c: Update.
5545         * inf-loop.c: Update.
5546         * inf-ptrace.c: Update.
5547         * infcall.c: Update.
5548         * infcmd.c: Update.
5549         * inflow.c: Update.
5550         * infrun.c: Update.
5551         * linux-fork.c: Update.
5552         * linux-nat.c: Update.
5553         * linux-thread-db.c: Update.
5554         * mi/mi-cmd-var.c: Update.
5555         * mi/mi-interp.c: Update.
5556         * mi/mi-main.c: Update.
5557         * nto-procfs.c: Update.
5558         * ppc-linux-tdep.c: Update.
5559         * procfs.c: Update.
5560         * python/py-inferior.c: Update.
5561         * python/py-record-btrace.c: Update.
5562         * python/py-record.c: Update.
5563         * ravenscar-thread.c: Update.
5564         * regcache.c: Update.
5565         * remote-sim.c: Update.
5566         * remote.c: Update.
5567         * sol-thread.c: Update.
5568         * solib.c: Update.
5569         * target.c: Update.
5570         * tui/tui-stack.c: Update.
5571         * varobj.c: Update.
5572         * windows-nat.c: Update.
5573         * windows-tdep.c: Update.
5574
5575 2018-07-03  Tom Tromey  <tom@tromey.com>
5576
5577         * common/ptid.c (ptid_match): Remove.
5578         * common/ptid.h (ptid_match): Don't declare.
5579         * fbsd-nat.c: Update.
5580         * infcmd.c: Update.
5581         * infrun.c: Update.
5582         * linux-nat.c: Update.
5583         * record-btrace.c: Update.
5584         * regcache.c: Update.
5585         * remote.c: Update.
5586
5587 2018-07-03  Tom Tromey  <tom@tromey.com>
5588
5589         * common/ptid.c (ptid_tid_p): Remove.
5590         * common/ptid.h (ptid_tid_p): Don't declare.
5591         * sol-thread.c: Update.
5592
5593 2018-07-03  Tom Tromey  <tom@tromey.com>
5594
5595         * common/ptid.c (ptid_lwp_p): Remove.
5596         * common/ptid.h (ptid_lwp_p): Don't declare.
5597         * fbsd-nat.c: Update.
5598         * linux-nat.c: Update.
5599         * nat/linux-procfs.c: Update.
5600         * nat/x86-linux-dregs.c: Update.
5601         * sol-thread.c: Update.
5602
5603 2018-07-03  Tom Tromey  <tom@tromey.com>
5604
5605         * common/ptid.c (ptid_is_pid): Remove.
5606         * common/ptid.h (ptid_is_pid): Don't declare.
5607         * infrun.c: Update.
5608         * linux-nat.c: Update.
5609         * mi/mi-interp.c: Update.
5610         * remote.c: Update.
5611         * thread.c: Update.
5612
5613 2018-07-03  Tom Tromey  <tom@tromey.com>
5614
5615         * common/ptid.c (ptid_get_tid): Remove.
5616         * common/ptid.h (ptid_get_tid): Don't declare.
5617         * ada-tasks.c: Update.
5618         * aix-thread.c: Update.
5619         * bsd-uthread.c: Update.
5620         * darwin-nat.c: Update.
5621         * fbsd-nat.c: Update.
5622         * i386-darwin-nat.c: Update.
5623         * infrun.c: Update.
5624         * linux-tdep.c: Update.
5625         * nto-procfs.c: Update.
5626         * ppc-ravenscar-thread.c: Update.
5627         * python/py-infthread.c: Update.
5628         * ravenscar-thread.c: Update.
5629         * sol-thread.c: Update.
5630         * sparc-ravenscar-thread.c: Update.
5631         * windows-nat.c: Update.
5632
5633 2018-07-03  Tom Tromey  <tom@tromey.com>
5634
5635         * common/ptid.c (ptid_get_lwp): Remove.
5636         * common/ptid.h (ptid_get_lwp): Don't declare.
5637         * aarch64-linux-nat.c: Update.
5638         * ada-tasks.c: Update.
5639         * aix-thread.c: Update.
5640         * amd64-linux-nat.c: Update.
5641         * arm-linux-nat.c: Update.
5642         * corelow.c: Update.
5643         * fbsd-nat.c: Update.
5644         * fbsd-tdep.c: Update.
5645         * gnu-nat.c: Update.
5646         * i386-cygwin-tdep.c: Update.
5647         * i386-gnu-nat.c: Update.
5648         * i386-linux-nat.c: Update.
5649         * ia64-linux-nat.c: Update.
5650         * inf-ptrace.c: Update.
5651         * infrun.c: Update.
5652         * linux-fork.c: Update.
5653         * linux-nat.c: Update.
5654         * linux-tdep.c: Update.
5655         * linux-thread-db.c: Update.
5656         * mips-linux-nat.c: Update.
5657         * nat/aarch64-linux-hw-point.c: Update.
5658         * nat/aarch64-linux.c: Update.
5659         * nat/linux-btrace.c: Update.
5660         * nat/linux-osdata.c: Update.
5661         * nat/linux-procfs.c: Update.
5662         * nat/x86-linux-dregs.c: Update.
5663         * obsd-nat.c: Update.
5664         * ppc-fbsd-nat.c: Update.
5665         * ppc-linux-nat.c: Update.
5666         * procfs.c: Update.
5667         * python/py-infthread.c: Update.
5668         * ravenscar-thread.c: Update.
5669         * remote.c: Update.
5670         * s390-linux-nat.c: Update.
5671         * sol-thread.c: Update.
5672         * sol2-tdep.c: Update.
5673         * spu-linux-nat.c: Update.
5674         * x86-linux-nat.c: Update.
5675         * xtensa-linux-nat.c: Update.
5676
5677 2018-07-03  Tom Tromey  <tom@tromey.com>
5678
5679         * common/ptid.c (ptid_get_pid): Remove.
5680         * common/ptid.h (ptid_get_pid): Don't declare.
5681         * aarch64-linux-nat.c: Update.
5682         * ada-lang.c: Update.
5683         * aix-thread.c: Update.
5684         * alpha-bsd-nat.c: Update.
5685         * amd64-fbsd-nat.c: Update.
5686         * amd64-linux-nat.c: Update.
5687         * arm-linux-nat.c: Update.
5688         * arm-nbsd-nat.c: Update.
5689         * auxv.c: Update.
5690         * break-catch-syscall.c: Update.
5691         * breakpoint.c: Update.
5692         * bsd-uthread.c: Update.
5693         * corelow.c: Update.
5694         * ctf.c: Update.
5695         * darwin-nat.c: Update.
5696         * fbsd-nat.c: Update.
5697         * fbsd-tdep.c: Update.
5698         * gcore.c: Update.
5699         * gnu-nat.c: Update.
5700         * hppa-nbsd-nat.c: Update.
5701         * hppa-obsd-nat.c: Update.
5702         * i386-fbsd-nat.c: Update.
5703         * ia64-linux-nat.c: Update.
5704         * inf-ptrace.c: Update.
5705         * infcmd.c: Update.
5706         * inferior.c: Update.
5707         * inferior.h: Update.
5708         * inflow.c: Update.
5709         * infrun.c: Update.
5710         * linux-fork.c: Update.
5711         * linux-nat.c: Update.
5712         * linux-tdep.c: Update.
5713         * linux-thread-db.c: Update.
5714         * m68k-bsd-nat.c: Update.
5715         * mi/mi-interp.c: Update.
5716         * mi/mi-main.c: Update.
5717         * mips-linux-nat.c: Update.
5718         * mips-nbsd-nat.c: Update.
5719         * mips64-obsd-nat.c: Update.
5720         * nat/aarch64-linux-hw-point.c: Update.
5721         * nat/aarch64-linux.c: Update.
5722         * nat/linux-btrace.c: Update.
5723         * nat/linux-osdata.c: Update.
5724         * nat/linux-procfs.c: Update.
5725         * nat/x86-linux-dregs.c: Update.
5726         * nto-procfs.c: Update.
5727         * obsd-nat.c: Update.
5728         * ppc-linux-nat.c: Update.
5729         * ppc-nbsd-nat.c: Update.
5730         * ppc-obsd-nat.c: Update.
5731         * proc-service.c: Update.
5732         * procfs.c: Update.
5733         * python/py-inferior.c: Update.
5734         * python/py-infthread.c: Update.
5735         * ravenscar-thread.c: Update.
5736         * record.c: Update.
5737         * remote-sim.c: Update.
5738         * remote.c: Update.
5739         * rs6000-nat.c: Update.
5740         * s390-linux-nat.c: Update.
5741         * sh-nbsd-nat.c: Update.
5742         * sol-thread.c: Update.
5743         * sparc-nat.c: Update.
5744         * sparc64-tdep.c: Update.
5745         * spu-linux-nat.c: Update.
5746         * spu-tdep.c: Update.
5747         * target-debug.h: Update.
5748         * target.c: Update.
5749         * thread.c: Update.
5750         * tid-parse.c: Update.
5751         * tracefile-tfile.c: Update.
5752         * vax-bsd-nat.c: Update.
5753         * windows-nat.c: Update.
5754         * x86-linux-nat.c: Update.
5755         * x86-nat.c: Update.
5756
5757 2018-07-03  Tom Tromey  <tom@tromey.com>
5758
5759         * common/ptid.c (pid_to_ptid): Remove.
5760         * common/ptid.h (pid_to_ptid): Don't declare.
5761         * aix-thread.c: Update.
5762         * arm-linux-nat.c: Update.
5763         * common/ptid.c: Update.
5764         * common/ptid.h: Update.
5765         * corelow.c: Update.
5766         * ctf.c: Update.
5767         * darwin-nat.c: Update.
5768         * fbsd-nat.c: Update.
5769         * fork-child.c: Update.
5770         * gnu-nat.c: Update.
5771         * go32-nat.c: Update.
5772         * inf-ptrace.c: Update.
5773         * infcmd.c: Update.
5774         * inferior.c: Update.
5775         * infrun.c: Update.
5776         * linux-fork.c: Update.
5777         * linux-nat.c: Update.
5778         * nat/aarch64-linux-hw-point.c: Update.
5779         * nat/fork-inferior.c: Update.
5780         * nat/x86-linux-dregs.c: Update.
5781         * nto-procfs.c: Update.
5782         * obsd-nat.c: Update.
5783         * procfs.c: Update.
5784         * progspace.c: Update.
5785         * remote.c: Update.
5786         * rs6000-nat.c: Update.
5787         * s390-linux-nat.c: Update.
5788         * sol-thread.c: Update.
5789         * spu-linux-nat.c: Update.
5790         * target.c: Update.
5791         * top.c: Update.
5792         * tracefile-tfile.c: Update.
5793         * windows-nat.c: Update.
5794
5795 2018-07-03  Tom Tromey  <tom@tromey.com>
5796
5797         * common/ptid.h (ptid_build): Don't declare.
5798         * common/ptid.c (ptid_build): Remove.
5799         * aix-thread.c: Update.
5800         * bsd-kvm.c: Update.
5801         * bsd-uthread.c: Update.
5802         * common/agent.c: Update.
5803         * common/ptid.c: Update.
5804         * common/ptid.h: Update.
5805         * corelow.c: Update.
5806         * darwin-nat.c: Update.
5807         * fbsd-nat.c: Update.
5808         * gnu-nat.c: Update.
5809         * linux-fork.c: Update.
5810         * linux-nat.c: Update.
5811         * linux-thread-db.c: Update.
5812         * nat/linux-osdata.c: Update.
5813         * nat/linux-procfs.c: Update.
5814         * nto-procfs.c: Update.
5815         * obsd-nat.c: Update.
5816         * proc-service.c: Update.
5817         * procfs.c: Update.
5818         * ravenscar-thread.c: Update.
5819         * remote-sim.c: Update.
5820         * remote.c: Update.
5821         * sol-thread.c: Update.
5822         * target.c: Update.
5823         * windows-nat.c: Update.
5824
5825 2018-07-03  Tom Tromey  <tom@tromey.com>
5826
5827         * infrun.c (follow_exec): Use exit_inferior_silent.
5828         * inferior.c (exit_inferior_num_silent): Remove.
5829         * inferior.h (exit_inferior_num_silent): Don't declare.
5830
5831 2018-07-03  Tom Tromey  <tom@tromey.com>
5832
5833         PR cli/23340:
5834         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5835         inferior_ptid on error.
5836
5837 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5838             Simon Marchi  <simon.marchi@polymtl.ca>
5839
5840         PR tdep/8282
5841         * disasm.h (gdb_disassembler): Add
5842         `m_disassembler_options_holder'. member
5843         * disasm.c (get_all_disassembler_options): New function.
5844         (gdb_disassembler::gdb_disassembler): Use it.
5845         (gdb_buffered_insn_length_init_dis): Likewise.
5846         (gdb_buffered_insn_length): Adjust accordingly.
5847         (set_disassembler_options): Handle options with arguments.
5848         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5849         line if showing options with descriptions.
5850         (disassembler_options_completer): Adapt to using the
5851         `disasm_options_and_args_t' structure.
5852         * mips-tdep.c (mips_disassembler_options): New variable.
5853         (mips_disassembler_options_o32): Likewise.
5854         (mips_disassembler_options_n32): Likewise.
5855         (mips_disassembler_options_n64): Likewise.
5856         (gdb_print_insn_mips): Don't set `disassembler_options'.
5857         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5858         functions.
5859         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5860         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5861         `gdbarch_disassembler_options_implicit' and
5862         `gdbarch_valid_disassembler_options'.
5863         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5864         `disasm_options_and_args_t' structure.
5865         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5866         method.
5867         (valid_disassembler_options): Switch from `disasm_options_t' to
5868         the `disasm_options_and_args_t' structure.
5869         * NEWS: Document `set disassembler-options' support for the MIPS
5870         target.
5871         * gdbarch.h: Regenerate.
5872         * gdbarch.c: Regenerate.
5873
5874 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5875
5876         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5877
5878 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5879
5880         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5881         parameter in call to amd64_target_description.
5882         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5883         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5884         (amd64fbsd_init_abi): Likewise.
5885         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5886         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5887         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5888         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5889
5890 2018-06-29  Pedro Alves  <palves@redhat.com>
5891
5892         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5893         "segments" parameter.
5894         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5895         (_initialize_amd64_tdep): Update call to
5896         amd64_create_target_description.
5897         (amd64_target_description): Add "segments" parameter.  Adjust
5898         the implementation to use it.
5899         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5900         call to amd64_create_target_description.
5901         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5902         * gdb/arch/amd64.h (amd64_create_target_description): Add
5903         "segments" register.
5904         * gdb/arch/amd64.c (amd64_create_target_description): Add
5905         "segments" parameter.  Call create_feature_i386_64bit_segments
5906         only if SEGMENTS is true.
5907         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5908         call to amd64_create_target_description.
5909
5910 2018-06-29  Pedro Alves  <palves@redhat.com>
5911
5912         * thread.c (thread_target_id_str): New, factored out from ...
5913         (print_thread_info_1): ... here.  Use it to compute the max
5914         "Target Id" column width.
5915
5916 2018-06-29  Pedro Alves  <palves@redhat.com>
5917
5918         * remote.c (remote_target::extra_thread_info): Delete
5919         'display_buf' and 'n' locals.  from the cache, regardless of
5920         packet mechanims is in use.  Use cache for qThreadExtra and qP
5921         methods too.
5922
5923 2018-06-29  Pedro Alves  <palves@redhat.com>
5924
5925         * blockframe.c (find_pc_sect_containing_function): New function.
5926         * breakpoint.c (print_breakpoint_location): Don't call
5927         find_pc_sect_function.
5928         * linespec.c (create_sals_line_offset): Record the location's
5929         symbol in the sal.
5930         * linespec.c (convert_address_location_to_sals): Fill in sal's
5931         symbol with find_pc_sect_containing_function.
5932         * symtab.c (find_function_start_sal): Rename to ...
5933         (find_function_start_sal_1): ... this.
5934         (find_function_start_sal): Reimplement as wrapper around
5935         find_function_start_sal_1, and use
5936         find_pc_sect_containing_function to fill in the sal's symbol.
5937         (find_function_start_sal(symbol*, bool)): Adjust.
5938         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5939         comments.
5940         (find_pc_sect_containing_function): Declare.
5941
5942 2018-06-29  Pedro Alves  <palves@redhat.com>
5943
5944         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5945         true if the the location has no symbol.
5946
5947 2018-06-28  Tom Tromey  <tom@tromey.com>
5948
5949         * NEWS: Mention --enable-codesign.
5950         * silent-rules.mk (ECHO_SIGN): New variable.
5951         * configure.ac: Add --enable-codesign.
5952         * configure: Rebuild.
5953         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5954         (gdb$(EXEEXT)): Optionally invoke codesign.
5955
5956 2018-06-28  Pedro Alves  <palves@redhat.com>
5957
5958         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5959         comments.
5960         (switch_to_thread_no_regs): Adjust comment.
5961         * infcmd.c (stop_pc): Delete.
5962         (post_create_inferior, info_program_command): Replace references
5963         to stop_pc with references to thread_info->suspend.stop_pc.
5964         * inferior.h (stop_pc): Delete declaration.
5965         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5966         (handle_inferior_event_1, handle_signal_stop)
5967         (process_event_stop_test, keep_going_stepped_thread)
5968         (handle_step_into_function, handle_step_into_function_backward)
5969         (print_stop_location): Replace references to stop_pc with
5970         references to thread_info->suspend.stop_pc.
5971         (struct infcall_suspend_state) <stop_pc>: Delete field.
5972         (save_infcall_suspend_state, restore_infcall_suspend_state):
5973         Remove references to inf_stat->stop_pc.
5974         * linux-fork.c (fork_load_infrun_state): Likewise.
5975         * record-btrace.c (record_btrace_set_replay): Likewise.
5976         * record-full.c (record_full_goto_entry): Likewise.
5977         * remote.c (print_one_stopped_thread): Likewise.
5978         * target.c (target_resume): Extend comment.
5979         * thread.c (set_executing_thread): New.
5980         (set_executing): Use it.
5981         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5982         Remove references to stop_pc.
5983
5984 2018-06-28  Pedro Alves  <palves@redhat.com>
5985
5986         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5987         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5988
5989 2018-06-28  Tom Tromey  <tom@tromey.com>
5990
5991         * coffread.c (coff_symfile_finish): Update.
5992         * xcoffread.c (xcoff_symfile_finish): Update.
5993         * elfread.c (elf_symfile_finish): Update.
5994         * symfile.h (dwarf2_free_objfile): Don't declare.
5995         * dwarf2read.c (_initialize_dwarf2_read): Use
5996         register_objfile_data_with_cleanup.
5997         (dwarf2_free_objfile): Now static.  Change signature.
5998
5999 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6000
6001         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6002         option "-o" to add-symbol-file-load to add an offset to each
6003         section's load address.
6004         * symfile.c (set_objfile_default_section_offset): New function.
6005
6006 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6007
6008         * symfile.c (add_symbol_file_command): Make sure that sections
6009         with the same name are sorted in the same order.
6010
6011 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6012
6013         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6014         require the second argument.  If omitted, load sections at the
6015         addresses specified in the file.
6016
6017 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6018
6019         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6020         (_initialize_symfile): Add option "-o" to symbol-file to add an
6021         offset to each section of the symbol file.
6022
6023 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6024
6025         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6026
6027 2018-06-27  Tom Tromey  <tom@tromey.com>
6028
6029         * stack.c (_initialize_stack): Update "func" help text.
6030
6031 2018-06-27  Tom Tromey  <tom@tromey.com>
6032
6033         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6034         std::vector.
6035         (unwind_infopy_str, pyuw_create_unwind_info)
6036         (unwind_infopy_add_saved_register, pyuw_sniffer)
6037         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6038         Update.
6039         (struct saved_reg): Add constructor.
6040         <value>: Now a gdbpy_ref<>.
6041
6042 2018-06-27  Tom Tromey  <tom@tromey.com>
6043
6044         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6045
6046 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6047
6048         * gdb-gdb.py.in: Format using autopep8.
6049
6050 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6051
6052         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6053         (type_lookup_function): Recognize CORE_ADDR values.
6054
6055 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6056
6057         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6058         print tag_name.
6059
6060 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6061
6062         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6063         <__lt__>: Add.
6064
6065 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6066
6067         * gdb-gdb.py: Move to...
6068         * gdb-gdb.py.in: ... here.
6069         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6070         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6071         dependencies.
6072         (distclean): Remove gdb-gdb.py when cleaning.
6073         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6074         * configure: Re-generate.
6075
6076 2018-06-27  Pedro Alves  <palves@redhat.com>
6077
6078         * proc-service.c (get_ps_regcache): New.
6079         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6080         (ps_lsetfpregs): Use it.
6081
6082 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6083
6084         PR gdb/21695
6085         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6086         (dwarf_decode_lines_1): Adjust.
6087
6088 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6089
6090         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6091         override.
6092         <info_proc>: Likewise.
6093
6094 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6095
6096         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6097         to windows_fetch_one_register, and only handle the case of
6098         fetching one register.  Move the code that reloads the context
6099         and iterates over all registers if R is negative to...
6100         (windows_nat_target::fetch_registers): ... here.
6101         (do_windows_store_inferior_registers): Rename to
6102         windows_store_one_register, and only handle the case of storing
6103         one register.  Move the code that handles the case where r is
6104         negative to...
6105         (windows_nat_target::store_registers) ... here.
6106
6107 2018-06-26  Tom Tromey  <tom@tromey.com>
6108
6109         PR rust/22574:
6110         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6111         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6112         Update.
6113         (rust_internal_print_type): Add podata parameter.
6114         (rust_print_type): Update.
6115
6116 2018-06-26  Tom Tromey  <tom@tromey.com>
6117
6118         * typeprint.h (struct print_offset_data) <update, finish,
6119         maybe_print_hole>: New methods.
6120         <indentation>: New constant.
6121         * typeprint.c (print_offset_data::indentation): Define.
6122         (print_offset_data::maybe_print_hole, print_offset_data::update)
6123         (print_offset_data::finish): Move from c-typeprint.c and rename.
6124         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6125         (print_spaces_filtered_with_print_options): Update.
6126         (c_print_type_union_field_offset, maybe_print_hole)
6127         (c_print_type_struct_field_offset): Move to typeprint.c and
6128         rename.
6129         (c_type_print_base_struct_union): Update.
6130
6131 2018-06-25  Pedro Alves  <palves@redhat.com>
6132
6133         * gdbthread.h (thread_info_ref, delete_thread)
6134         (delete_thread_silent, first_thread_of_inferior)
6135         (any_thread_of_inferior, switch_to_thread)
6136         (enable_thread_stack_temporaries)
6137         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6138         (get_last_thread_stack_temporary)
6139         (value_in_thread_stack_temporaries, can_access_registers_thread):
6140         Spell out "struct thread_info" instead of just "thread_info".
6141         * inferior.h (notice_new_inferior): Likewise.
6142
6143 2018-06-25  Pedro Alves  <palves@redhat.com>
6144
6145         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6146         pass thread_info pointer to delete_thread.
6147         (windows_nat_target::detach): Pass inferior pointer to
6148         detach_inferior.
6149         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6150         delete_thread.
6151         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6152         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6153         and pass a thread_info pointer to delete_thread.
6154         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6155         pass thread_info pointer to delete_thread.
6156         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6157         delete_thread_silent call.
6158         * procfs.c (procfs_target::detach): Pass inferior pointer to
6159         detach_inferior.
6160         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6161         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6162         delete_thread_silent call.
6163         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6164         pass thread_info pointer to delete_thread.
6165         (windows_nat_target::detach): Pass inferior pointer to
6166         delete_inferior.
6167
6168 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6169
6170         * regcache.c (readable_regcache::read_part): Fix asserts.
6171         (reg_buffer::raw_collect_part): New function.
6172         (regcache::write_part): Fix asserts.
6173         (reg_buffer::raw_supply_part): New function.
6174         (regcache::transfer_regset_register): New helper function.
6175         (regcache::transfer_regset): Call new functions.
6176         (regcache_supply_regset): Use gdb_byte*.
6177         (regcache::supply_regset): Likewise.
6178         (regcache_collect_regset): Likewise.
6179         (regcache::collect_regset): Likewise.
6180         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6181         (reg_buffer::raw_supply_part): Likewise.
6182         (regcache::transfer_regset_register): Likewise.
6183         (regcache::transfer_regset): Use gdb_byte*.
6184
6185 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6186
6187         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6188
6189 2018-06-21  Pedro Alves  <palves@redhat.com>
6190
6191         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6192         instead of a ptid_t.  All callers adjusted.
6193         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6194         adjusted.
6195         (print_ada_task_info, display_current_task_id, task_command_1):
6196         Adjust.
6197         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6198         inferior_thread.
6199         (breakpoint_kind): Adjust.
6200         (remove_breakpoints_pid): Rename to ...
6201         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6202         pointer.  All callers adjusted.
6203         (bpstat_clear_actions): Use inferior_thread.
6204         (get_bpstat_thread): New.
6205         (bpstat_do_actions): Use it.
6206         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6207         to take a thread_info pointer.  All callers adjusted.
6208         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6209         (breakpoint_re_set_thread): Use inferior_thread.
6210         * breakpoint.h (struct inferior): Forward declare.
6211         (bpstat_stop_status): Update.
6212         (remove_breakpoints_pid): Delete.
6213         (remove_breakpoints_inf): New.
6214         * bsd-uthread.c (bsd_uthread_target::wait)
6215         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6216         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6217         (maint_btrace_packet_history_cmd)
6218         (maint_btrace_clear_packet_history_cmd): Adjust.
6219         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6220         inferior_thread.
6221         * cli/cli-interp.c: Include "inferior.h".
6222         * common/refcounted-object.h (struct
6223         refcounted_object_ref_policy): New.
6224         * compile/compile-object-load.c: Include gdbthread.h.
6225         (store_regs): Use inferior_thread.
6226         * corelow.c (core_target::close): Use current_inferior.
6227         (core_target_open): Adjust to use first_thread_of_inferior and use
6228         the current inferior.
6229         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6230         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6231         <thread>: ... this new field.  All references adjusted.
6232         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6233         Take a thread_info pointer instead of a ptid_t.
6234         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6235         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6236         thread_info pointer instead of a ptid_t.
6237         * elfread.c: Include "inferior.h".
6238         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6239         Use inferior_thread.
6240         * eval.c (evaluate_subexp): Likewise.
6241         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6242         inferior_thread.
6243         * gdb_proc_service.h (struct thread_info): Forward declare.
6244         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6245         <thread>: ... this new field.  All references adjusted.
6246         * gdbarch.h, gdbarch.c: Regenerate.
6247         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6248         'thread' parameter.  All implementations and callers adjusted.
6249         * gdbthread.h (thread_info) <set_running>: New method.
6250         (delete_thread, delete_thread_silent): Take a thread_info pointer
6251         instead of a ptid.
6252         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6253         (first_thread_of_process): Delete, replaced by ...
6254         (first_thread_of_inferior): ... this new function.  All callers
6255         adjusted.
6256         (any_live_thread_of_process): Delete, replaced by ...
6257         (any_live_thread_of_inferior): ... this new function.  All callers
6258         adjusted.
6259         (switch_to_thread, switch_to_no_thread): Declare.
6260         (is_executing): Delete.
6261         (enable_thread_stack_temporaries): Update comment.
6262         <enable_thread_stack_temporaries>: Take a thread_info pointer
6263         instead of a ptid_t.  Incref the thread.
6264         <~enable_thread_stack_temporaries>: Decref the thread.
6265         <m_ptid>: Delete
6266         <m_thr>: New.
6267         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6268         (get_last_thread_stack_temporary)
6269         (value_in_thread_stack_temporaries, can_access_registers_thread):
6270         Take a thread_info pointer instead of a ptid_t.  All callers
6271         adjusted.
6272         * infcall.c (get_call_return_value): Use inferior_thread.
6273         (run_inferior_call): Work with thread pointers instead of ptid_t.
6274         (call_function_by_hand_dummy): Work with thread pointers instead
6275         of ptid_t.  Use thread_info_ref.
6276         * infcmd.c (proceed_thread_callback): Access thread's state
6277         directly.
6278         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6279         access thread's state directly.
6280         (continue_command): Use inferior_thread.
6281         (info_program_command): Use find_thread_ptid and access thread
6282         state directly.
6283         (proceed_after_attach_callback): Use thread state directly.
6284         (notice_new_inferior): Take a thread_info pointer instead of a
6285         ptid_t.  All callers adjusted.
6286         (exit_inferior): Take an inferior pointer instead of a pid.  All
6287         callers adjusted.
6288         (exit_inferior_silent): New.
6289         (detach_inferior): Delete.
6290         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6291         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6292         (detach_inferior_command, kill_inferior_command): Use
6293         find_inferior_id instead of valid_gdb_inferior_id and
6294         gdb_inferior_id_to_pid.
6295         (inferior_command): Use inferior and thread pointers.
6296         * inferior.h (struct thread_info): Forward declare.
6297         (notice_new_inferior): Take a thread_info pointer instead of a
6298         ptid_t.  All callers adjusted.
6299         (detach_inferior): Delete declaration.
6300         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6301         instead of a pid.  All callers adjusted.
6302         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6303         (valid_gdb_inferior_id): Delete.
6304         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6305         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6306         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6307         ...
6308         <inf>: ... this new field.
6309         <step_ptid>: Delete, replaced by ...
6310         <step_thread>: ... this new field.
6311         (get_displaced_stepping_state): Take an inferior pointer instead
6312         of a pid.  All callers adjusted.
6313         (displaced_step_in_progress_any_inferior): Adjust.
6314         (displaced_step_in_progress_thread): Take a thread pointer instead
6315         of a ptid_t.  All callers adjusted.
6316         (displaced_step_in_progress, add_displaced_stepping_state): Take
6317         an inferior pointer instead of a pid.  All callers adjusted.
6318         (get_displaced_step_closure_by_addr): Adjust.
6319         (remove_displaced_stepping_state): Take an inferior pointer
6320         instead of a pid.  All callers adjusted.
6321         (displaced_step_prepare_throw, displaced_step_prepare)
6322         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6323         All callers adjusted.
6324         (start_step_over): Adjust.
6325         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6326         displaced step queue.
6327         (do_target_resume): Adjust.
6328         (fetch_inferior_event): Use inferior_thread.
6329         (context_switch, get_inferior_stop_soon): Take an
6330         execution_control_state pointer instead of a ptid_t.  All callers
6331         adjusted.
6332         (switch_to_thread_cleanup): Delete.
6333         (stop_all_threads): Use scoped_restore_current_thread.
6334         * inline-frame.c: Include "gdbthread.h".
6335         (inline_state) <inline_state>: Take a thread pointer instead of a
6336         ptid_t.  All callers adjusted.
6337         <ptid>: Delete, replaced by ...
6338         <thread>: ... this new field.
6339         (find_inline_frame_state): Take a thread pointer instead of a
6340         ptid_t.  All callers adjusted.
6341         (skip_inline_frames, step_into_inline_frame)
6342         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6343         pointer instead of a ptid_t.  All callers adjusted.
6344         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6345         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6346         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6347         pointers directly.
6348         * linux-nat.c (get_detach_signal): Likewise.
6349         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6350         (thread_db_notice_clone): Adjust.
6351         (thread_db_find_new_threads_silently)
6352         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6353         a thread pointer instead of a ptid_t.  All callers adjusted.
6354         * mi/mi-cmd-var.c: Include "inferior.h".
6355         (mi_cmd_var_update_iter): Update to use thread pointers.
6356         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6357         inferior directly.
6358         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6359         out to ...
6360         (mi_output_running): ... this new function.
6361         (mi_on_resume_1): Adjust to use it.
6362         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6363         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6364         directly.
6365         (interrupt_thread_callback): : Adjust to use thread and inferior
6366         pointers.
6367         * proc-service.c: Include "gdbthread.h".
6368         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6369         * progspace-and-thread.c: Include "inferior.h".
6370         * progspace.c: Include "inferior.h".
6371         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6372         hold a reference to an inferior_object.
6373         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6374         inferior_thread.
6375         * python/py-inferior.c (struct inferior_object): Give the type a
6376         tag name instead of a typedef.
6377         (python_on_normal_stop): No need to check if the current thread is
6378         listed.
6379         (inferior_to_inferior_object): Change return type to
6380         inferior_object.  All callers adjusted.
6381         (find_thread_object): Delete, bits factored out to ...
6382         (thread_to_thread_object): ... this new function.
6383         * python/py-infthread.c (create_thread_object): Use
6384         inferior_to_inferior_object.
6385         (thpy_is_stopped): Use thread pointer directly.
6386         (gdbpy_selected_thread): Use inferior_thread.
6387         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6388         field, replaced with ...
6389         <thread>: ... this new field.  All users adjusted.
6390         (btpy_insn_or_gap_new): Drop const.
6391         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6392         callers adjusted.
6393         * python/py-record.c: Include "gdbthread.h".
6394         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6395         a ptid_t.  All callers adjusted.
6396         (gdbpy_current_recording): Use inferior_thread.
6397         * python/py-record.h (recpy_record_object) <ptid>: Delete
6398         field, replaced with ...
6399         <thread>: ... this new field.  All users adjusted.
6400         (recpy_element_object) <ptid>: Delete
6401         field, replaced with ...
6402         <thread>: ... this new field.  All users adjusted.
6403         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6404         a ptid_t.  All callers adjusted.
6405         * python/py-threadevent.c: Include "gdbthread.h".
6406         (get_event_thread): Use thread_to_thread_object.
6407         * python/python-internal.h (struct inferior_object): Forward
6408         declare.
6409         (find_thread_object, find_inferior_object): Delete declarations.
6410         (thread_to_thread_object, inferior_to_inferior_object): New
6411         declarations.
6412         * record-btrace.c: Include "inferior.h".
6413         (require_btrace_thread): Use inferior_thread.
6414         (record_btrace_frame_sniffer)
6415         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6416         (get_thread_current_frame): Use scoped_restore_current_thread and
6417         switch_to_thread.
6418         (get_thread_current_frame): Use thread pointer directly.
6419         (record_btrace_replay_at_breakpoint): Use thread's inferior
6420         pointer directly.
6421         * record-full.c: Include "inferior.h".
6422         * regcache.c: Include "gdbthread.h".
6423         (get_thread_arch_regcache): Use the inferior's address space
6424         directly.
6425         (get_thread_regcache, registers_changed_thread): New.
6426         * regcache.h (get_thread_regcache(thread_info *thread)): New
6427         overload.
6428         (registers_changed_thread): New.
6429         (remote_target) <remote_detach_1>: Swap order of parameters.
6430         (remote_add_thread): <remote_add_thread>: Return the new thread.
6431         (get_remote_thread_info(ptid_t)): New overload.
6432         (remote_target::remote_notice_new_inferior): Use thread pointers
6433         directly.
6434         (remote_target::process_initial_stop_replies): Use
6435         thread_info::set_running.
6436         (remote_target::remote_detach_1, remote_target::detach)
6437         (extended_remote_target::detach): Adjust.
6438         * stack.c (frame_show_address): Use inferior_thread.
6439         * target-debug.h (target_debug_print_thread_info_pp): New.
6440         * target-delegates.c: Regenerate.
6441         * target.c (default_thread_address_space): Delete.
6442         (memory_xfer_partial_1): Use current_inferior.
6443         (target_detach): Use current_inferior.
6444         (target_thread_address_space): Delete.
6445         (generic_mourn_inferior): Use current_inferior.
6446         * target.h (struct target_ops) <thread_address_space>: Delete.
6447         (target_thread_address_space): Delete.
6448         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6449         pointers directly.
6450         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6451         thread pointer instead of a ptid_t.  Adjust all callers.
6452         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6453         (first_thread_of_process): Delete, replaced by ...
6454         (first_thread_of_inferior): ... this new function.  All callers
6455         adjusted.
6456         (any_thread_of_process): Rename to ...
6457         (any_thread_of_inferior): ... this, and take an inferior pointer.
6458         (any_live_thread_of_process): Rename to ...
6459         (any_live_thread_of_inferior): ... this, and take an inferior
6460         pointer.
6461         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6462         (value_in_thread_stack_temporaries)
6463         (get_last_thread_stack_temporary): Take a thread pointer instead
6464         of a ptid_t.  Adjust all callers.
6465         (thread_info::set_running): New.
6466         (validate_registers_access): Use inferior_thread.
6467         (can_access_registers_ptid): Rename to ...
6468         (can_access_registers_thread): ... this, and take a thread
6469         pointer.
6470         (print_thread_info_1): Adjust to compare thread pointers instead
6471         of ptids.
6472         (switch_to_no_thread, switch_to_thread): Make extern.
6473         (scoped_restore_current_thread::~scoped_restore_current_thread):
6474         Use m_thread pointer directly.
6475         (scoped_restore_current_thread::scoped_restore_current_thread):
6476         Use inferior_thread.
6477         (thread_command): Use thread pointer directly.
6478         (thread_num_make_value_helper): Use inferior_thread.
6479         * top.c (execute_command): Use inferior_thread.
6480         * tui/tui-interp.c: Include "inferior.h".
6481         * varobj.c (varobj_create): Use inferior_thread.
6482         (value_of_root_1): Use find_thread_global_id instead of
6483         global_thread_id_to_ptid.
6484
6485 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6486
6487         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6488         possible.
6489         (regcache::write_part): Likewise.
6490         (readable_regcache::cooked_read_part): Update comment.
6491         (readable_regcache::cooked_write_part): Likewise.
6492         * regcache.h: (readable_regcache::read_part): Likewise.
6493         (regcache::write_part): Likewise.
6494
6495 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6496             Dirk Schubert  <dirk.schubert@arm.com>
6497
6498         * aarch64-linux-nat.c (post_attach): New.
6499         (aarch64_linux_nat_target::post_attach): Override post_attach to
6500         record the number of hardware debug registers.
6501
6502 2018-06-20  Tom Tromey  <tom@tromey.com>
6503
6504         * python/py-param.c (add_setshow_generic): Make parameters const.
6505         (parmpy_init): Update.
6506
6507 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6508
6509         * regcache.h (regcache_cooked_read_ftype): Rename to...
6510         (register_read_ftype): ...this, change type to function_view.
6511         (class reg_buffer) <save>: Remove src parameter.
6512         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6513         parameter non-const in first overload.  Remove src parameter in
6514         second overload.
6515         * regcache.c (do_cooked_read): Remove.
6516         (readonly_detached_regcache::readonly_detached_regcache): Make
6517         parameter non-const, adjust call to other constructor.
6518         (reg_buffer::save): Remove src parameter.
6519         * frame.c (do_frame_register_read): Remove.
6520         (frame_save_as_regcache): Use lambda function.
6521         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6522         parameter to ppu2spu_data *.
6523         (ppu2spu_sniffer): Use lambda function.
6524
6525 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6526
6527         * record-full.c (record_full_target::insert_breakpoint): Remove
6528         "struct" keyword, add const.
6529
6530 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6531
6532         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6533         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6534         * configure.ac: Remove AC_PREREQ, add missing quoting.
6535         * gnulib/configure.ac: Modernize usage of
6536         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6537         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6538         (AUTOMAKE_VERSION): Bump to 1.15.1.
6539         * configure: Re-generate.
6540         * config.in: Re-generate.
6541         * aclocal.m4: Re-generate.
6542         * gnulib/aclocal.m4: Re-generate.
6543         * gnulib/config.in: Re-generate.
6544         * gnulib/configure: Re-generate.
6545         * gnulib/import/Makefile.in: Re-generate.
6546
6547 2018-06-19  Pedro Alves  <palves@redhat.com>
6548
6549         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6550         (lookup_minimal_symbol_by_pc_section): ... here with
6551         gdb_assert_not_reached added.
6552
6553 2018-06-19  Pedro Alves  <palves@redhat.com>
6554
6555         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6556         parameter with a block parameter.  Compare location's block symbol
6557         with the frame's block instead of addresses.
6558         (skip_inline_frames): Pass the current block instead of the
6559         frame's address.  Break out as soon as we determine the frame
6560         should not be skipped.
6561
6562 2018-06-18  Tom Tromey  <tom@tromey.com>
6563
6564         * solib-aix.c (solib_aix_get_section_offsets): Return
6565         unique_xmalloc_ptr.
6566         (solib_aix_solib_create_inferior_hook): Update.
6567
6568 2018-06-18  Tom Tromey  <tom@tromey.com>
6569
6570         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6571
6572 2018-06-18  Tom Tromey  <tom@tromey.com>
6573
6574         * solib-frv.c (frv_relocate_main_executable): Use
6575         unique_xmalloc_ptr.
6576         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6577         unique_xmalloc_ptr.
6578
6579 2018-06-18  Tom Tromey  <tom@tromey.com>
6580
6581         * objfiles.h (inhibit_section_map_updates): Update.
6582         (resume_section_map_updates, resume_section_map_updates_cleanup):
6583         Remove.
6584         * solib-svr4.c (svr4_handle_solib_event): Update.
6585         * objfiles.c (inhibit_section_map_updates): Return
6586         scoped_restore_tmpl<int>.
6587         (resume_section_map_updates, resume_section_map_updates_cleanup):
6588         Remove.
6589
6590 2018-06-18  Tom Tromey  <tom@tromey.com>
6591
6592         * valprint.h (read_string): Update.
6593         * valprint.c (read_string): Change type of "buffer".
6594         (val_print_string): Update.
6595         * python/py-value.c (valpy_string): Update.
6596         * language.h (struct language_defn) <la_get_string>: Change
6597         type of "buffer".
6598         (default_get_string, c_get_string): Update.
6599         * language.c (default_get_string): Change type of "buffer".
6600         * guile/scm-value.c (gdbscm_value_to_string): Update.
6601         * c-lang.c (c_get_string): Change type of "buffer".
6602
6603 2018-06-18  Tom Tromey  <tom@tromey.com>
6604
6605         * ser-mingw.c (struct pipe_state_destroyer): New.
6606         (pipe_state_up): New typedef.
6607         (cleanup_pipe_state): Remove.
6608         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6609
6610 2018-06-18  Tom Tromey  <tom@tromey.com>
6611
6612         * rust-lang.h (rust_yyerror): Don't declare.
6613         * rust-lang.c (rust_language_defn): Update.
6614         * rust-exp.y (yyerror): Now static.
6615         * parse.c (parse_exp_in_context_1): Update.
6616         * p-lang.h (p_yyerror): Don't declare.
6617         * p-lang.c (p_language_defn): Update.
6618         * p-exp.y (yyerror): Now static.
6619         * opencl-lang.c (opencl_language_defn): Update.
6620         * objc-lang.c (objc_language_defn): Update.
6621         * m2-lang.h (m2_yyerror): Don't declare.
6622         * m2-lang.c (m2_language_defn): Update.
6623         * m2-exp.y (yyerror): Now static.
6624         * language.h (struct language_defn) <la_error>: Remove.
6625         * language.c (unk_lang_error): Remove.
6626         (unknown_language_defn, auto_language_defn): Remove.
6627         * go-lang.h (go_yyerror): Don't declare.
6628         * go-lang.c (go_language_defn): Update.
6629         * go-exp.y (yyerror): Now static.
6630         * f-lang.h (f_yyerror): Don't declare.
6631         * f-lang.c (f_language_defn): Update.
6632         * f-exp.y (yyerror): Now static.
6633         * d-lang.h (d_yyerror): Don't declare.
6634         * d-lang.c (d_language_defn): Update.
6635         * d-exp.y (yyerror): Now static.
6636         * c-lang.h (c_yyerror): Don't declare.
6637         * c-lang.c (c_language_defn, cplus_language_defn)
6638         (asm_language_defn, minimal_language_defn): Update.
6639         * c-exp.y (yyerror): Now static.
6640         * ada-lang.h (ada_yyerror): Don't declare.
6641         * ada-lang.c (ada_language_defn): Update.
6642         * ada-exp.y (yyerror): Now static.
6643
6644 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6645
6646         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6647         (store_sveregs_to_thread): Likewise.
6648         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6649         (aarch64_linux_store_inferior_registers): Likewise.
6650         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6651         function.
6652         (aarch64_sve_regs_copy_to_regcache): Likewise.
6653         (aarch64_sve_regs_copy_from_regcache): Likewise.
6654         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6655         declaration.
6656         (aarch64_sve_regs_copy_to_regcache): Likewise.
6657         (aarch64_sve_regs_copy_from_regcache): Likewise.
6658         (sve_context): Structure from Linux headers.
6659         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6660         (SVE_SIG_ZREG_SIZE): Likewise.
6661         (SVE_SIG_PREG_SIZE): Likewise.
6662         (SVE_SIG_FFR_SIZE): Likewise.
6663         (SVE_SIG_REGS_OFFSET): Likewise.
6664         (SVE_SIG_ZREGS_OFFSET): Likewise.
6665         (SVE_SIG_ZREG_OFFSET): Likewise.
6666         (SVE_SIG_ZREGS_SIZE): Likewise.
6667         (SVE_SIG_PREGS_OFFSET): Likewise.
6668         (SVE_SIG_PREG_OFFSET): Likewise.
6669         (SVE_SIG_PREGS_SIZE): Likewise.
6670         (SVE_SIG_FFR_OFFSET): Likewise.
6671         (SVE_SIG_REGS_SIZE): Likewise.
6672         (SVE_SIG_CONTEXT_SIZE): Likewise.
6673         (SVE_PT_REGS_MASK): Likewise.
6674         (SVE_PT_REGS_FPSIMD): Likewise.
6675         (SVE_PT_REGS_SVE): Likewise.
6676         (SVE_PT_VL_INHERIT): Likewise.
6677         (SVE_PT_VL_ONEXEC): Likewise.
6678         (SVE_PT_REGS_OFFSET): Likewise.
6679         (SVE_PT_FPSIMD_OFFSET): Likewise.
6680         (SVE_PT_FPSIMD_SIZE): Likewise.
6681         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6682         (SVE_PT_SVE_PREG_SIZE): Likewise.
6683         (SVE_PT_SVE_FFR_SIZE): Likewise.
6684         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6685         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6686         (__SVE_SIG_TO_PT): Likewise.
6687         (SVE_PT_SVE_OFFSET): Likewise.
6688         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6689         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6690         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6691         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6692         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6693         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6694         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6695         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6696         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6697         (SVE_PT_SVE_SIZE): Likewise.
6698         (SVE_PT_SIZE): Likewise.
6699         (HAS_SVE_STATE): New define.
6700
6701 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6702
6703         * nat/aarch64-sve-linux-sigcontext.h: New file.
6704         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6705         new files.
6706         (SVE_VQ_MIN): Likewise.
6707         (SVE_VQ_MAX): Likewise.
6708         (SVE_VL_MIN): Likewise.
6709         (SVE_VL_MAX): Likewise.
6710         (SVE_NUM_ZREGS): Likewise.
6711         (SVE_NUM_PREGS): Likewise.
6712         (sve_vl_valid): Likewise.
6713         (struct user_sve_header): Likewise.
6714
6715 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6716             Richard Bunt <Richard.Bunt@arm.com>
6717
6718         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6719         was requested by GDB.
6720
6721 2018-06-15  Tom de Vries  <tdevries@suse.de>
6722
6723         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6724
6725 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6726
6727         * gnulib/update-gnulib.sh: Print expected versions of
6728         autoconf/aclocal.
6729
6730 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6731
6732         * arch-utils.c (default_type_align): Use type_length_units.
6733         * gdbtypes.c (type_align): Use type_length_units.
6734
6735 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6736
6737         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6738         of 'define' command.
6739
6740 2018-06-14  Tom de Vries  <tdevries@suse.de>
6741
6742         PR cli/22573
6743         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6744         get_no_prettyformat_print_options.
6745
6746 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6747
6748         * sparc-nat.h: Include target.h.
6749         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6750         <fetch_registers>: Remove this argument in function call.
6751         <store_registers>: Remove this argument in function call, remove
6752         extra semicolon.
6753         <low_forget_process>: Call sparc64_forget_process instead of
6754         sparc_forget_process.
6755
6756 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6757
6758         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6759         (procfs_target::make_corefile_notes): Adjust to new
6760         target_read_alloc return type.
6761
6762 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6763             Stephen Roberts  <stephen.roberts@arm.com>
6764
6765         PR gdb/22882
6766         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6767         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6768         Move should_notify_stop local into more inner scope.
6769
6770 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6771             Stephen Roberts  <stephen.roberts@arm.com>
6772
6773         PR gdb/22882
6774         * infrun.c (resume_1): Add call to mark_async_event_handler.
6775
6776 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6777
6778         * infrun.c (do_target_wait): Change old version of $pc printed.
6779
6780 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6781
6782         * dwarf2read.c (read_index_from_section): Rename to...
6783         (read_gdb_index_from_section): ... this, update all callers.
6784         (dwarf2_read_index): Rename to...
6785         (dwarf2_read_gdb_index): ... this, update all callers.
6786
6787 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6788
6789         * gdb/hppa-linux-nat.c
6790         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6791         hppa_linux_nat_target::fetch_registers.
6792
6793 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6794
6795         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6796         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6797         (AARCH64_DWARF_SVE_FFR): Likewise.
6798         (AARCH64_DWARF_SVE_P0): Likewise.
6799         (AARCH64_DWARF_SVE_Z0): Likewise.
6800
6801 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6802
6803         * common/common-regcache.h (raw_compare): New function.
6804         * regcache.c (regcache::raw_compare): Likewise.
6805         * regcache.h (regcache::raw_compare): New declaration.
6806
6807 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6808
6809         * common/common-regcache.h (reg_buffer_common): New structure.
6810         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6811         (reg_buffer::raw_supply): Likewise.
6812         (reg_buffer::raw_supply_integer): Likewise.
6813         (reg_buffer::raw_supply_zeroed): Likewise.
6814         (reg_buffer::raw_collect): Likewise.
6815         (reg_buffer::raw_collect_integer): Likewise.
6816         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6817         (reg_buffer::raw_supply): Likewise.
6818         (reg_buffer::raw_supply_integer): Likewise.
6819         (reg_buffer::raw_supply_zeroed): Likewise.
6820         (reg_buffer::raw_collect): Likewise.
6821         (reg_buffer::raw_collect_integer): Likewise.
6822
6823 2018-06-10  Tom Tromey  <tom@tromey.com>
6824
6825         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6826         (class remote_state) <stop_reply_queue>: Now std::vector.
6827         (remote_state::~remote_state)
6828         (remote_target::stop_reply_queue_length): Update.
6829         (struct queue_iter_param, remove_child_of_pending_fork)
6830         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6831         (check_pending_event_prevents_wildcard_vcont_callback)
6832         (remove_stop_reply_for_inferior)
6833         (remove_stop_reply_of_remote_state)
6834         (remote_notif_remove_once_on_match)
6835         (stop_reply_match_ptid_and_ws)
6836         (remote_kill_child_of_pending_fork): Remove.
6837         (remote_target::remove_new_fork_children)
6838         (remote_target::check_pending_events_prevent_wildcard_vcont)
6839         (remote_target::discard_pending_stop_replies)
6840         (remote_target::discard_pending_stop_replies_in_queue)
6841         (remote_target::remote_notif_remove_queued_reply)
6842         (remote_target::queued_stop_reply)
6843         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6844         (remote_target::wait, remote_target::kill_new_fork_children)
6845         (remote_target::async): Update.
6846
6847 2018-06-10  Tom Tromey  <tom@tromey.com>
6848
6849         * record-full.c (record_full_arch_list_cleanups): Remove.
6850         (record_full_message): Use try/catch.
6851         (record_full_wait_cleanups): Remove.
6852         (record_full_wait_1): Use try/catch.
6853         (record_full_restore): Likewise.
6854
6855 2018-06-10  Tom Tromey  <tom@tromey.com>
6856
6857         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6858         declare VEC.  Add constructor.
6859         <in_target_beneath>: Now bool.
6860         (record_full_breakpoints): Now a std::vector, static.
6861         (record_full_sync_record_breakpoints)
6862         (record_full_init_record_breakpoints)
6863         (record_full_target::insert_breakpoint)
6864         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6865
6866 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6867
6868         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6869         * serial.c (serial_interface_lookup): Remove struct keyword.
6870
6871 2018-06-10  Tom Tromey  <tom@tromey.com>
6872
6873         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6874         method.
6875         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6876         a method.
6877         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6878         method.
6879         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6880         "beneath" as a method.
6881         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6882         Use "beneath" as a method.
6883
6884 2018-06-10  Tom Tromey  <tom@tromey.com>
6885
6886         * tracefile.c (struct trace_file_writer_deleter): New.
6887         <operator()>: Rename from trace_file_writer_xfree.
6888         (trace_file_writer_up): New typedef.
6889         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6890
6891 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6892
6893         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6894         <m_registers, m_register_status>: Change type to
6895         std::unique_ptr.
6896         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6897         XCNEWVEC.
6898
6899 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6900
6901         * common/common-regcache.h (enum register_status): Add
6902         underlying type "signed char".
6903         * regcache.h (reg_buffer) <m_register_status>: Change type to
6904         register_status *.
6905         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6906         register_status instead of signed char.
6907         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6908         (reg_buffer::get_register_status): Remove cast.
6909         (readable_regcache::raw_read): Remove cast.
6910         (readable_regcache::cooked_read): Remove cast.
6911
6912 2018-06-09  Tom Tromey  <tom@tromey.com>
6913
6914         * source.c (reverse_search_command, forward_search_command): Use
6915         scoped_fd.
6916
6917 2018-06-09  Tom Tromey  <tom@tromey.com>
6918
6919         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6920         (serial_ops_list): Now static, std::vector.
6921         (serial_interface_lookup, serial_add_interface): Update.
6922
6923 2018-06-09  Tom Tromey  <tom@tromey.com>
6924
6925         * dwarf2read.c (process_cu_includes): Update.
6926         (process_full_comp_unit): Update.
6927         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6928         std::vector.
6929
6930 2018-06-08  Paul Koning  <paul_koning@dell.com>
6931
6932         PR gdb/23252
6933
6934         * python/python.c (do_start_initialization):
6935         Avoid call to internal Python API.
6936         (init__gdb_module): New function.
6937
6938 2018-06-08  Gary Benson <gbenson@redhat.com>
6939
6940         * linux-thread-db.c (valprint.h): New include.
6941         (struct check_thread_db_info): New structure.
6942         (check_thread_db_on_load, tdb_testinfo): New static globals.
6943         (check_thread_db, check_thread_db_callback): New functions.
6944         (try_thread_db_load_1): Run integrity checks if requested.
6945         (maintenance_check_libthread_db): New function.
6946         (_initialize_thread_db): Register "maint check libthread-db"
6947         and "maint set/show check-libthread-db".
6948         * NEWS: Mention the above new commands.
6949
6950 2018-06-08  Tom Tromey  <tom@tromey.com>
6951
6952         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6953         now a method.
6954
6955 2018-06-08  Tom Tromey  <tom@tromey.com>
6956
6957         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6958
6959 2018-06-08  Tom Tromey  <tom@tromey.com>
6960
6961         * common/btrace-common.h (struct btrace_data): Add constructor,
6962         destructor, move assignment operator.
6963         <empty, clear, fini>: New methods.
6964         <format>: Initialize.
6965         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6966         (btrace_data_empty): Don't declare.
6967         * common/btrace-common.c (btrace_data_init): Remove.
6968         (btrace_data::fini): Rename from btrace_data_fini.
6969         (btrace_data::empty): Rename from btrace_data_empty.
6970         (btrace_data::clear): Rename from btrace_data_clear.  Return
6971         bool.
6972         * btrace.h (make_cleanup_btrace_data): Don't declare.
6973         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6974         (parse_xml_btrace): Update.
6975         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6976         (maint_btrace_clear_packet_history_cmd): Update.
6977
6978 2018-06-07  Pedro Alves  <palves@redhat.com>
6979
6980         * target.h (target_ops) <beneath>: Now a method.  All references
6981         updated.
6982         (class target_stack): New.
6983         * target.c (g_target_stack): New.
6984         (g_current_top_target): Delete.
6985         (current_top_target): Get the top target out of g_target_stack.
6986         (target_stack::push, target_stack::unpush): New.
6987         (push_target, unpush_target): Reimplement.
6988         (target_is_pushed): Reimplement in terms of g_target_stack.
6989         (target_ops::beneath, target_stack::find_beneath): New.
6990
6991 2018-06-07  Pedro Alves  <palves@redhat.com>
6992
6993         * target.h (find_target_beneath): Delete declaration.
6994         * target.c (find_target_beneath): Delete definition.
6995         * aix-thread.c: All callers of find_target_beneath adjusted to
6996         call target_ops::beneath instead.
6997         * bsd-uthread.c: Likewise.
6998         * linux-thread-db.c: Likewise.
6999         * ravenscar-thread.c: Likewise.
7000         * sol-thread.c: Likewise.
7001         * spu-multiarch.c: Likewise.
7002
7003 2018-06-07  Pedro Alves  <palves@redhat.com>
7004
7005         * target.h (target_ops) <beneath>: Now a method.  All references
7006         updated.
7007         (target_ops) <m_beneath>: New.
7008         * target.c (target_ops::beneath): New.
7009         * corelow.c: Adjust all references to target_ops::beneath.
7010         * linux-thread-db.c: Likewise.
7011         * make-target-delegates: Likewise.
7012         * record-btrace.c: Likewise.
7013         * record-full.c: Likewise.
7014         * remote.c: Likewise.
7015         * target.c: Likewise.
7016         * target-delegates.c: Regenerate.
7017
7018 2018-06-07  Pedro Alves  <palves@redhat.com>
7019
7020         * target.h (target_stack): Delete.
7021         (current_top_target): Declare function.
7022         * target.c (target_stack): Delete.
7023         (g_current_top_target): New.
7024         (current_top_target): New function.
7025         * auxv.c: Use current_top_target instead of target_stack
7026         throughout.
7027         * avr-tdep.c: Likewise.
7028         * breakpoint.c: Likewise.
7029         * corefile.c: Likewise.
7030         * elfread.c: Likewise.
7031         * eval.c: Likewise.
7032         * exceptions.c: Likewise.
7033         * frame.c: Likewise.
7034         * gdbarch-selftests.c: Likewise.
7035         * gnu-v3-abi.c: Likewise.
7036         * ia64-tdep.c: Likewise.
7037         * ia64-vms-tdep.c: Likewise.
7038         * infcall.c: Likewise.
7039         * infcmd.c: Likewise.
7040         * infrun.c: Likewise.
7041         * linespec.c: Likewise.
7042         * linux-tdep.c: Likewise.
7043         * minsyms.c: Likewise.
7044         * ppc-linux-nat.c: Likewise.
7045         * ppc-linux-tdep.c: Likewise.
7046         * procfs.c: Likewise.
7047         * regcache.c: Likewise.
7048         * remote.c: Likewise.
7049         * rs6000-tdep.c: Likewise.
7050         * s390-linux-nat.c: Likewise.
7051         * s390-tdep.c: Likewise.
7052         * solib-aix.c: Likewise.
7053         * solib-darwin.c: Likewise.
7054         * solib-dsbt.c: Likewise.
7055         * solib-spu.c: Likewise.
7056         * solib-svr4.c: Likewise.
7057         * solib-target.c: Likewise.
7058         * sparc-tdep.c: Likewise.
7059         * sparc64-tdep.c: Likewise.
7060         * spu-tdep.c: Likewise.
7061         * symfile.c: Likewise.
7062         * symtab.c: Likewise.
7063         * target-descriptions.c: Likewise.
7064         * target-memory.c: Likewise.
7065         * target.c: Likewise.
7066         * target.h: Likewise.
7067         * tracefile-tfile.c: Likewise.
7068         * tracepoint.c: Likewise.
7069         * valops.c: Likewise.
7070         * valprint.c: Likewise.
7071         * value.c: Likewise.
7072         * windows-tdep.c: Likewise.
7073         * mi/mi-main.c: Likewise.
7074
7075 2018-06-07  Tom Tromey  <tom@tromey.com>
7076
7077         * valprint.h (build_address_symbolic): Declare.
7078         * printcmd.c (print_address_symbolic): Update.
7079         (build_address_symbolic): Change "name" and "filename" to
7080         std::string.
7081         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7082         Update.
7083         * defs.h (build_address_symbolic): Remove declaration.
7084
7085 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7086
7087         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7088         (aarch64_vnv_type): Add function.
7089         (aarch64_pseudo_register_name): Add V regs for SVE.
7090         (aarch64_pseudo_register_type): Likewise.
7091         (aarch64_pseudo_register_reggroup_p): Likewise.
7092         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7093         (aarch64_pseudo_read_value): Add V regs for SVE.
7094         (aarch64_pseudo_write_2): Use V0 offset for SVE
7095         (aarch64_pseudo_write): Add V regs for SVE.
7096         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7097
7098 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7099
7100         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7101         (sve_vl_from_vq): Likewise.
7102
7103 2018-06-05  Tom Tromey  <tom@tromey.com>
7104
7105         * cli/cli-cmds.c (show_version): Update.
7106         * top.c (print_gdb_version): Add "interactive" parameter.
7107         Update.
7108         * main.c (captured_main_1): Update.
7109         * top.h (print_gdb_version): Add "interactive" parameter and a
7110         comment.
7111
7112 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7113
7114         * common/enum-flags.h: Add trailing semicolon to example in
7115         comment.
7116
7117 2018-06-05  Tom Tromey  <tom@tromey.com>
7118
7119         PR cli/12326:
7120         * NEWS: Add entry about pager.
7121         * utils.c (pagination_disabled_for_command): New global.
7122         (prompt_for_continue): Allow "c" response to prompt.
7123         (reinitialize_more_filter): Clear
7124         pagination_disabled_for_command.
7125         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7126
7127 2018-06-04  Tom Tromey  <tom@tromey.com>
7128
7129         * ada-lang.h (ada_lookup_symbol_list): Update.
7130         * ada-lang.c (resolve_subexp): Update.
7131         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7132         parameter.
7133         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7134         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7135         results parameter to std::vector.
7136         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7137         Update.
7138         * ada-exp.y (block_lookup): Update.
7139         (select_possible_type_sym): Change type of syms.  Remove nsyms
7140         parameter.
7141         (write_var_or_type, write_name_assoc): Update.
7142
7143 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7144
7145         * windows-nat.c (windows_nat_target::xfer_partial): Return
7146         TARGET_XFER_E_IO if we need to delegate to the target beneath
7147         but BENEATH is NULL.
7148
7149 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7150
7151         * Makefile.in (config.status): Add configure.nat as a
7152         dependency.
7153
7154 2018-06-04  Tom Tromey  <tom@tromey.com>
7155
7156         * cp-name-parser.y (cpname_state): Add method declarations.
7157         (HANDLE_QUAL): Update.
7158         (cpname_state::d_grab, cpname_state::fill_comp)
7159         (cpname_state::make_operator, cpname_state::make_dtor)
7160         (cpname_state::make_builtin_type, cpname_state::make_name)
7161         (cpname_state::d_qualify, cpname_state::d_int_type)
7162         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7163         (%union): Move earlier.
7164
7165 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7166
7167         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7168
7169 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7170
7171         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7172         (aarch64_pseudo_write_1): Likewise.
7173         (aarch64_pseudo_read_value): Use helper.
7174         (aarch64_pseudo_write): Likewise.
7175
7176 2018-06-04  Pedro Alves  <palves@redhat.com>
7177
7178         * darwin-nat.c (darwin_ops): Delete.
7179         (darwin_attach_pid): Use get_native_target.
7180
7181 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7182
7183         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7184         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7185
7186 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7187
7188         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7189         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7190         (aarch64_gdbarch_init): Check for SVE.
7191         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7192
7193 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7194
7195         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7196         * aarch64-tdep.h (aarch64_read_description): Likewise.
7197         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7198         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7199         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7200         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7201         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7202
7203 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7204
7205         * value.c (value_fetch_lazy_bitfield): New.
7206         (value_fetch_lazy_memory): New.
7207         (value_fetch_lazy_register): New.
7208         (value_fetch_lazy): Factor out to smaller functions.
7209
7210 2018-06-01  Tom Tromey  <tom@tromey.com>
7211
7212         * cp-name-parser.y (backslashable, represented): Now const.
7213
7214 2018-06-01  Tom Tromey  <tom@tromey.com>
7215
7216         * cp-name-parser.y: Include parser-defs.h.
7217         (parser_fprintf): Remove declaration.
7218
7219 2018-06-01  Tom Tromey  <tom@tromey.com>
7220
7221         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7222         %parse-param.
7223         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7224         (global_result): Remove globals.
7225         (struct cpname_state): New.
7226         (yyparse): Don't declare.
7227         (yylex, yyerror): Move declarations after %union.
7228         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7229         (make_name): Add state parameter.
7230         Update all callers.
7231         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7232         parameter.
7233         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7234         Update.
7235         (yylex): Add lvalp, state parameters.
7236         (yyerror): Add state parameter.
7237         (cp_demangled_name_to_comp): Update.
7238
7239 2018-06-01  Tom Tromey  <tom@tromey.com>
7240
7241         * cp-name-parser.y (parser_fprintf): Declare.
7242         (GDB_YY_REMAP_PREFIX): Define.
7243         Include yy-remap.h.  Don't redefine yy* identifiers.
7244
7245 2018-06-01  Tom Tromey  <tom@tromey.com>
7246
7247         * python/py-type.c (typy_legacy_template_argument): Update.
7248         * cp-support.h (cp_demangled_name_to_comp): Update.
7249         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7250         parameter to be a "std::string *".
7251         (main): Update.
7252
7253 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7254
7255         * ada-lex.l: Include "diagnostics.h" instead of
7256         "common/diagnostics.h".
7257         * unittests/environ-selftests.c: Likewise.
7258         * common/diagnostics.h: Moved to ../include.
7259
7260 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7261
7262         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7263         to language_mode_manual while calling breakpoint_re_set_one.
7264
7265 2018-06-01  Tom Tromey  <tom@tromey.com>
7266
7267         * valops.c (value_cast_structs, destructor_name_p): Update.
7268         * symtab.c (gdb_mangle_name): Update.
7269         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7270         Update.
7271         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7272         (pascal_object_print_value_fields, pascal_object_print_value):
7273         Update.
7274         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7275         * linespec.c (find_methods): Update.
7276         * gdbtypes.h (type_name_no_tag): Remove.
7277         (type_name_or_error): Rename from type_name_no_tag_or_error.
7278         * gdbtypes.c (type_name_no_tag): Remove.
7279         (type_name_or_error): Rename from type_name_no_tag_or_error.
7280         (lookup_struct_elt_type, check_typedef): Update.
7281         * expprint.c (print_subexp_standard): Update.
7282         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7283         * d-namespace.c (d_lookup_nested_symbol): Update.
7284         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7285         (cp_print_class_member): Update.
7286         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7287         * completer.c (add_struct_fields): Update.
7288         * c-typeprint.c (cp_type_print_derivation_info)
7289         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7290         Update.
7291         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7292         (ada_prefer_type, ada_is_exception_sym): Update.
7293
7294 2018-06-01  Tom Tromey  <tom@tromey.com>
7295
7296         * valops.c (enum_constant_from_type, value_namespace_elt)
7297         (value_maybe_namespace_elt): Update.
7298         * valarith.c (find_size_for_pointer_math): Update.
7299         * target-descriptions.c (make_gdb_type): Update.
7300         * symmisc.c (print_symbol): Update.
7301         * stabsread.c (define_symbol, read_type)
7302         (complain_about_struct_wipeout, add_undefined_type)
7303         (cleanup_undefined_types_1): Update.
7304         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7305         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7306         (rust_internal_print_type, rust_composite_type)
7307         (rust_evaluate_funcall, rust_evaluate_subexp)
7308         (rust_inclusive_range_type_p): Update.
7309         * python/py-type.c (typy_get_tag): Update.
7310         * p-typeprint.c (pascal_type_print_base): Update.
7311         * mdebugread.c (parse_symbol, parse_type): Update.
7312         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7313         Update.
7314         * guile/scm-type.c (gdbscm_type_tag): Update.
7315         * go-lang.c (sixg_string_p): Update.
7316         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7317         Update.
7318         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7319         (TYPE_TAG_NAME): Remove.
7320         * gdbtypes.c (type_name_no_tag): Simplify.
7321         (check_typedef, check_types_equal, recursive_dump_type)
7322         (copy_type_recursive, arch_composite_type): Update.
7323         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7324         in summary mode when needed.
7325         * eval.c (evaluate_funcall): Update.
7326         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7327         (process_structure_scope, read_enumeration_type)
7328         (read_namespace_type, read_module_type, determine_prefix): Update.
7329         * cp-support.c (inspect_type): Update.
7330         * coffread.c (process_coff_symbol, decode_base_type): Update.
7331         * c-varobj.c (c_is_path_expr_parent): Update.
7332         * c-typeprint.c (c_type_print_base_struct_union): Update.
7333         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7334         summary when using C language.
7335         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7336         (gen_maybe_namespace_elt): Update.
7337         * ada-lang.c (ada_type_name): Simplify.
7338         (empty_record, ada_template_to_fixed_record_type_1)
7339         (template_to_static_fixed_type)
7340         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7341
7342 2018-06-01  Tom Tromey  <tom@tromey.com>
7343
7344         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7345         c_print_type.
7346         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7347         (c_print_type): Update.
7348         (c_print_type): New overload.
7349         (c_type_print_varspec_prefix, c_type_print_args)
7350         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7351         (c_type_print_base_struct_union, c_type_print_base_1)
7352         (cp_type_print_method_args): Add "language" parameter.
7353         (c_type_print_base): Update.
7354         * c-lang.h (c_print_type): Add new overload.
7355
7356 2018-06-01  Tom Tromey  <tom@tromey.com>
7357
7358         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7359         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7360
7361 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7362
7363         * aarch64-tdep.c (aarch64_sve_register_names): New const
7364         var.
7365         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7366         (AARCH64_SVE_Z_REGS_NUM): New define.
7367         (AARCH64_SVE_P_REGS_NUM): Likewise.
7368         (AARCH64_SVE_NUM_REGS): Likewise.
7369
7370 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7371
7372         * nat/linux-ptrace.h [__alpha__]
7373         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7374         definitions.
7375
7376 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7377
7378         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7379         the endianness selected.
7380         * NEWS: Document `set endian auto' mode operation update.
7381
7382 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7383
7384         * Makefile.in: Add new header.
7385         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7386         (sve_vl_from_vg): Likewise.
7387         (sve_vq_from_vl): Likewise.
7388         (sve_vl_from_vq): Likewise.
7389         (sve_vq_from_vg): Likewise.
7390         (sve_vg_from_vq): Likewise.
7391         * configure.nat: Add new c file.
7392         * nat/aarch64-sve-linux-ptrace.c: New file.
7393         * nat/aarch64-sve-linux-ptrace.h: New file.
7394
7395 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7396
7397         * aarch64-linux-nat.c (aarch64_linux_read_description):
7398         Add parmeter zero.
7399         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7400         Likewise.
7401         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7402         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7403         (aarch64_gdbarch_init): Add parmeter zero.
7404         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7405         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7406         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7407         parmeter.
7408         * doc/gdb.texinfo: Describe SVE feature
7409         * features/aarch64-sve.c: New file.
7410
7411 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7412
7413         PR gdb/23210
7414         * gdbarch.sh (significant_addr_bit): Default to zero when
7415         not set by target architecture.
7416         * gdbarch.c: Re-generated.
7417         * utils.c (address_significant): Update.
7418
7419 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7420
7421         * stack.c (func_command): Remove trailing newline in call to error.
7422
7423 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7424
7425         * regcache.h (regcache_raw_collect): Remove, update callers to
7426         use regcache::raw_collect.
7427         * regcache.c (regcache_raw_collect): Remove.
7428
7429 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7430
7431         * regcache.h (regcache_raw_supply): Remove, update callers to
7432         use detached_regcache::raw_supply.
7433         * regcache.c (regcache_raw_supply): Remove.
7434
7435 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7436
7437         * regcache.h (regcache_cooked_write_part): Remove, update
7438         callers to use regcache::cooked_write_part.
7439         * regcache.c (regcache_cooked_write_part): Remove.
7440
7441 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7442
7443         * regcache.h (regcache_cooked_read_part): Remove, update callers
7444         to use readable_regcache::cooked_read_part.
7445         * regcache.c (regcache_cooked_read_part): Remove.
7446
7447 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7448
7449         * regcache.h (regcache_cooked_read_value): Remove, update
7450         callers to use readable_regcache::cooked_read_value.
7451         * regcache.c (regcache_cooked_read_value): Remove.
7452
7453 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7454
7455         * regcache.h (regcache_cooked_write): Remove, update callers to
7456         use regcache::cooked_write.
7457         * regcache.c (regcache_cooked_write): Remove.
7458
7459 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7460
7461         * regcache.h (regcache_invalidate): Remove, update callers to
7462         use detached_regcache::invalidate instead.
7463         * regcache.c (regcache_invalidate): Remove.
7464
7465 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7466
7467         * regcache.h (regcache_raw_write_part): Remove, update callers
7468         to use regcache::raw_write_part instead.
7469         * regcache.c (regcache_raw_write_part): Remove.
7470
7471 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7472
7473         * regcache.h (regcache_raw_read_part): Remove, update callers to
7474         use readable_regcache::raw_read_part instead.
7475         * regcache.c (regcache_raw_read_part): Remove.
7476
7477 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7478
7479         * regcache.h (regcache_cooked_read): Remove, update callers to
7480         use readable_regcache::cooked_read instead.
7481         * regcache.c (regcache_cooked_read): Remove.
7482
7483 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7484
7485         * regcache.h (regcache_raw_write): Remove, update callers to use
7486         regcache::raw_write instead.
7487         * regcache.c (regcache_raw_write): Remove.
7488
7489 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7490
7491         * regcache.h (regcache_raw_read): Remove, update callers to use
7492         readable_regcache::raw_read instead.
7493         * regcache.c (regcache_raw_read): Remove.
7494
7495 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7496
7497         * regcache.h (regcache_raw_update): Remove, update callers to
7498         use readable_regcache::raw_update instead.
7499         * regcache.c (regcache_raw_update): Remove.
7500
7501 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7502
7503         * regcache.h (regcache_register_status): Remove, update callers
7504         to use reg_buffer::get_register_status directly instead.
7505         * regcache.c (regcache_register_status): Remove.
7506
7507 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7508
7509         * regcache.h (regcache_get_ptid): Remove, update all callers to
7510         call regcache::ptid instead.
7511         * regcache.c (regcache_get_ptid): Remove.
7512
7513 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7514
7515         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7516
7517 2018-05-30  Pedro Alves  <palves@redhat.com>
7518
7519         * common/common-exceptions.h (exception_rethrow): Use
7520         ATTRIBUTE_NORETURN.
7521
7522 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7523
7524         * breakpoint.c (print_solib_event, check_status_catch_solib):
7525         Remove struct keyword in range-based for loops.
7526         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7527         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7528         Likewise.
7529         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7530         Likewise.
7531         * symfile.c (addr_info_make_relative): Likewise.
7532         * thread.c (value_in_thread_stack_temporaries): Likewise.
7533
7534 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7535
7536         PR gdb/16841
7537         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7538         aggregate type to get its real type before accessing it.
7539
7540 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7541
7542         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7543         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7544         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7545         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7546         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7547         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7548         * printcmd.c (info_address_command): Likewise.
7549
7550 2018-05-29  Tom Tromey  <tom@tromey.com>
7551
7552         * windows-nat.c (handle_exception): Update fall-through comment.
7553
7554 2018-05-29  Tom Tromey  <tom@tromey.com>
7555
7556         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7557         (struct program_space) <added_solibs>: Now a std::vector.
7558         * breakpoint.c (print_solib_event): Update.
7559         (check_status_catch_solib): Update.
7560         * progspace.c (clear_program_space_solib_cache): Update.
7561         * solib.c (update_solib_list): Update.
7562
7563 2018-05-29  Tom Tromey  <tom@tromey.com>
7564
7565         * python/py-type.c (typy_richcompare): Update.
7566         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7567         * gdbtypes.h (types_deeply_equal): Return bool.
7568         (types_equal): Likewise.
7569         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7570         declare VEC.
7571         (check_types_equal): Change worklist to std::vector.  Return
7572         bool.
7573         (struct type_equality_entry): Add constructor.
7574         (compare_maybe_null_strings): Return bool.
7575         (check_types_worklist): Return bool.  Change worklist to
7576         std::vector.
7577         (types_deeply_equal): Use std::vector.
7578         (types_equal): Return bool.
7579         (compare_maybe_null_strings): Simplify.
7580
7581 2018-05-29  Tom Tromey  <tom@tromey.com>
7582
7583         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7584
7585 2018-05-29  Tom Tromey  <tom@tromey.com>
7586
7587         * objc-lang.h: Don't include cp-support.h.
7588         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7589         declare VEC.
7590
7591 2018-05-27  Tom Tromey  <tom@tromey.com>
7592
7593         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7594
7595 2018-05-25  Tom Tromey  <tom@tromey.com>
7596
7597         * value.c (value::location): Initialize.
7598
7599 2018-05-25  Tom Tromey  <tom@tromey.com>
7600
7601         * dbxread.c (init_bincl_list): Remove.
7602         (bincl_list): Now a std::vector.
7603         (bincls_allocated, next_bincl): Remove.
7604         (free_bincl_list, do_free_bincl_list_cleanup)
7605         (make_cleanup_free_bincl_list): Remove.
7606         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7607         unique_xmalloc_ptr.
7608         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7609         (struct header_file_location): Add constructor.
7610         (add_bincl_to_list): Remove.
7611
7612 2018-05-25  Tom Tromey  <tom@tromey.com>
7613
7614         * tui/tui.c (tui_enable): Update.
7615         * mi/mi-interp.c (mi_interp::init): Update.
7616         * interps.h (class interp) <name>: New method.
7617         <m_name>: Rename from name.
7618         (~scoped_restore_interp): Update.
7619         * interps.c (interp::interp): Update.
7620         (interp_add, interp_set, interp_lookup_existing)
7621         (current_interp_named_p): Update.
7622
7623 2018-05-25  Tom Tromey  <tom@tromey.com>
7624
7625         * interps.c (interp_name): Remove.
7626         * mi/mi-interp.c (mi_interp::init): Update.
7627         * interps.h (interp_name): Remove.
7628         (~scoped_restore_interp): Update.
7629         * tui/tui.c (tui_enable): Update.
7630
7631 2018-05-25  Tom Tromey  <tom@tromey.com>
7632
7633         * utils.c (fputs_maybe_filtered): Update.
7634         * linespec.c (decode_line_full): Update.
7635         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7636         (mi_print_breakpoint_for_event, mi_solib_loaded)
7637         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7638         (mi_user_selected_context_changed): Update.
7639         * mi/mi-main.c (mi_execute_command): Update.
7640         * cli/cli-script.c (execute_control_command): Update.
7641         * python/python.c (execute_gdb_command): Update.
7642         * solib.c (info_sharedlibrary_command): Update.
7643         * interps.c (interp_ui_out): Remove.
7644         * interps.h (interp_ui_out): Remove.
7645
7646 2018-05-25  Tom Tromey  <tom@tromey.com>
7647
7648         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7649         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7650         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7651
7652 2018-05-25  Tom Tromey  <tom@tromey.com>
7653
7654         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7655         * interps.c (interp_exec): Use scoped_restore.
7656
7657 2018-05-25  Tom Tromey  <tom@tromey.com>
7658
7659         * remote.c (remote_target::remote_file_get): Use
7660         gdb::byte_vector.
7661         (remote_target::remote_file_put): Likewise.
7662
7663 2018-05-25  Tom Tromey  <tom@tromey.com>
7664
7665         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7666         a std::string.
7667         (get_pe_section_index, add_pe_exported_sym): Update.
7668         (read_pe_exported_syms): Use gdb::def_vector.
7669
7670 2018-05-25  Tom Tromey  <tom@tromey.com>
7671
7672         * frame.c (remove_prev_frame): Remove.
7673         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7674
7675 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7676
7677         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7678         Remove prototypes.
7679         * mips-linux-nat.c (supply_fpregset): Always call
7680         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7681         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7682         `mips_fill_fpregset'.
7683         * mips-linux-tdep.c (mips_supply_fpregset)
7684         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7685         (mips_fill_fpregset_wrapper): Remove functions.
7686         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7687         (mips_linux_fpregset): Remove variable.
7688         (mips_linux_iterate_over_regset_sections): Use
7689         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7690         (mips_linux_o32_sigframe_init): Remove comment.
7691
7692 2018-05-25  Pedro Alves  <palves@redhat.com>
7693
7694         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7695         (struct readahead_cache, struct packet_reg, struct
7696         remote_arch_state, class remote_state): Move higher up in the
7697         file.
7698         (remote_target::m_remote_state): Now an object instead of a pointer.
7699         (remote_target::get_remote_state): Adjust.
7700
7701 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7702
7703         * stack.c (select_and_print_frame): Delete.
7704         (struct function_bounds): Move struct within function.
7705         (func_command): Most content moved into new function
7706         find_frame_for_function, use new function, print result, add
7707         function comment.
7708         (find_frame_for_function): New function, now returns a result.
7709
7710 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7711
7712         * stack.c (iterate_over_block_arg_vars): Fix comment.
7713         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7714
7715 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7716
7717         PR gdb/23203
7718         * frame.c
7719         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7720         Define.
7721         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7722         Define.
7723         * frame.h (class scoped_restore_selected_frame): New class.
7724         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7725         of any exception, use scoped_restore_selected_frame to restore the
7726         frame instead.
7727
7728 2018-05-24  Pedro Alves  <palves@redhat.com>
7729
7730         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7731         override.
7732
7733 2018-05-23  Tom Tromey  <tom@tromey.com>
7734
7735         * complaints.c (struct complaints): Remove.
7736         (symfile_complaint_book): Remove.
7737         (series): New global.
7738         (complaint_internal): Update.
7739         (clear_complaints): Update.
7740
7741 2018-05-23  Tom Tromey  <tom@tromey.com>
7742
7743         * complaints.c (counters): New global.
7744         (struct complain): Remove.
7745         (struct complaints) <root>: Remove.
7746         (complaint_sentinel): Remove.
7747         (symfile_complaint_book): Update.
7748         (find_complaint) Remove.
7749         (complaint_internal, clear_complaints): Update.
7750
7751 2018-05-23  Tom Tromey  <tom@tromey.com>
7752
7753         * complaints.c (struct complain) <file, line>: Remove.
7754         (find_complaint): Remove file, line parameters.
7755         (complaint_internal): Update.
7756
7757 2018-05-23  Tom Tromey  <tom@tromey.com>
7758
7759         * complaints.c (vcomplaint): Remove.
7760         (complaint_internal) Merge in contents of vcomplaint.
7761
7762 2018-05-23  Tom Tromey  <tom@tromey.com>
7763
7764         * complaints.c (struct complaints) <explanation>: Remove.
7765         (symfile_explanations): Remove.
7766         (symfile_complaint_book): Update.
7767         (vcomplaint): Update.
7768         (struct explanation): Remove.
7769
7770 2018-05-23  Tom Tromey  <tom@tromey.com>
7771
7772         * complaints.c (symfile_complaints): Remove.
7773         (complaint_internal): Remove "complaints" parameter.
7774         (clear_complaints, vcomplaint): Remove "c" parameter.
7775         (get_complaints): Remove.
7776         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7777         (dwarf2_debug_line_missing_file_complaint)
7778         (dwarf2_debug_line_missing_end_sequence_complaint)
7779         (dwarf2_complex_location_expr_complaint)
7780         (dwarf2_const_value_length_mismatch_complaint)
7781         (dwarf2_section_buffer_overflow_complaint)
7782         (dwarf2_macro_malformed_definition_complaint)
7783         (dwarf2_invalid_attrib_class_complaint)
7784         (create_addrmap_from_index, dw2_symtab_iter_next)
7785         (dw2_expand_marked_cus)
7786         (dw2_debug_names_iterator::find_vec_in_debug_names)
7787         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7788         (create_debug_type_hash_table, init_cutu_and_read_dies)
7789         (partial_die_parent_scope, add_partial_enumeration)
7790         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7791         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7792         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7793         (create_cus_hash_table, create_dwp_hash_table)
7794         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7795         (dwarf2_rnglists_process, dwarf2_ranges_process)
7796         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7797         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7798         (handle_struct_member_die, process_structure_scope)
7799         (read_array_type, read_common_block, read_module_type)
7800         (read_tag_pointer_type, read_typedef, read_base_type)
7801         (read_subrange_type, load_partial_dies, partial_die_info::read)
7802         (partial_die_info::read, partial_die_info::read)
7803         (partial_die_info::read, read_checked_initial_length_and_offset)
7804         (dwarf2_string_attr, read_formatted_entries)
7805         (dwarf_decode_line_header)
7806         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7807         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7808         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7809         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7810         (get_signatured_type, get_DW_AT_signature_type)
7811         (decode_locdesc, file_file_name, consume_improper_spaces)
7812         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7813         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7814         (dwarf2_symbol_mark_computed, set_die_type)
7815         (read_attribute_value): Update.
7816         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7817         Update.
7818         * dbxread.c (unknown_symtype_complaint)
7819         (lbrac_mismatch_complaint, repeated_header_complaint)
7820         (set_namestring, function_outside_compilation_unit_complaint)
7821         (read_dbx_symtab, process_one_symbol): Update.
7822         * gdbtypes.c (stub_noname_complaint): Update.
7823         * windows-nat.c (handle_unload_dll): Update.
7824         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7825         (decode_base_type): Update.
7826         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7827         (eb_complaint, record_include_begin, record_include_end)
7828         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7829         (process_xcoff_symbol, read_symbol)
7830         (function_outside_compilation_unit_complaint)
7831         (scan_xcoff_symtab): Update.
7832         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7833         * buildsym.c (finish_block_internal, make_blockvector)
7834         (end_symtab_get_static_block, augment_type_symtab): Update.
7835         * dtrace-probe.c (dtrace_process_dof)
7836         (dtrace_static_probe_ops::get_probes): Update.
7837         * complaints.h (struct complaint): Don't declare.
7838         (symfile_complaints): Remove.
7839         (complaint_internal): Remove "complaints" parameter.
7840         (complaint): Likewise.
7841         (clear_complaints): Likewise.
7842         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7843         (reread_symbols): Update.
7844         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7845         (dwarf2_frame_cache, decode_frame_entry): Update.
7846         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7847         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7848         (info_selectors_command): Update.
7849         * macrotab.c (macro_include, check_for_redefinition)
7850         (macro_undef): Update.
7851         * objfiles.c (filter_overlapping_sections): Update.
7852         * stabsread.c (invalid_cpp_abbrev_complaint)
7853         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7854         (define_symbol, error_type, read_type, rs6000_builtin_type)
7855         (stabs_method_name_from_physname, read_member_functions)
7856         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7857         (attach_fields_to_type, complain_about_struct_wipeout)
7858         (read_range_type, read_args, common_block_start)
7859         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7860         Update.
7861         * mdebugread.c (index_complaint, unknown_ext_complaint)
7862         (basic_type_complaint, bad_tag_guess_complaint)
7863         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7864         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7865         (parse_procedure, parse_lines)
7866         (function_outside_compilation_unit_complaint)
7867         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7868         (bad_tag_guess_complaint, reg_value_complaint): Update.
7869         * cp-support.c (demangled_name_complaint): Update.
7870         * macroscope.c (sal_macro_scope): Update.
7871         * dwarf-index-write.c (class debug_names): Update.
7872
7873 2018-05-23  Tom Tromey  <tom@tromey.com>
7874
7875         * complaints.c (clear_complaints): Remove "noisy" parameter.
7876         * complaints.h (clear_complaints): Update.
7877         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7878         (reread_symbols): Update.
7879
7880 2018-05-23  Tom Tromey  <tom@tromey.com>
7881
7882         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7883         SUBSEQUENT_MESSAGE.
7884         (vcomplaint, clear_complaints): Update.
7885         (symfile_explanations): Remove some messages.
7886
7887 2018-05-23  Tom Tromey  <tom@tromey.com>
7888
7889         * complaints.c (internal_complaint): Remove.
7890         * complaints.h (internal_complaint): Remove.
7891
7892 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7893
7894         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7895
7896 2018-05-22  Pedro Alves  <palves@redhat.com>
7897
7898         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7899         (remote_fileio_badfd, remote_fileio_return_errno)
7900         (remote_fileio_return_success, remote_fileio_func_open)
7901         (remote_fileio_func_open, remote_fileio_func_close)
7902         (remote_fileio_func_read, remote_fileio_func_write)
7903         (remote_fileio_func_lseek, remote_fileio_func_rename)
7904         (remote_fileio_func_unlink, remote_fileio_func_stat)
7905         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7906         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7907         remote_target parameter.
7908         (remote_fio_func_map) <func>: Add remote_target parameter.
7909         (do_remote_fileio_request, remote_fileio_request):
7910         * remote-fileio.h (remote_fileio_request):
7911         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7912         remote_target parameter.
7913         (remote_notif_process, handle_notification): Adjust to pass down
7914         the remote.
7915         (remote_notif_state_allocate): Add remote_target parameter.  Save
7916         it.
7917         * remote-notif.h (struct remote_target): Forward declare.
7918         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7919         remote_target parameter.
7920         (struct remote_notif_state) <remote>: New field.
7921         (remote_notif_ack, remote_notif_parse): Add remote_target
7922         parameter.
7923         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7924         remote_target parameter.
7925         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7926         (threads_listing_context, rmt_thread_action, protocol_feature)
7927         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7928         (packet_result, struct threads_listing_context, remote_state):
7929         Move definitions and declarations higher up.
7930         (remote_target) <~remote_target>: Declare.
7931         (remote_download_command_source, remote_file_put, remote_file_get)
7932         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7933         (remote_hostio_pread_vFile, remote_hostio_send_command)
7934         (remote_hostio_set_filesystem, remote_hostio_open)
7935         (remote_hostio_close, remote_hostio_unlink, remote_state)
7936         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7937         (get_memory_write_packet_size, get_memory_read_packet_size)
7938         (append_pending_thread_resumptions, remote_detach_1)
7939         (append_resumption, remote_resume_with_vcont)
7940         (add_current_inferior_and_thread, wait_ns, wait_as)
7941         (process_stop_reply, remote_notice_new_inferior)
7942         (process_initial_stop_replies, remote_add_thread)
7943         (btrace_sync_conf, remote_btrace_maybe_reopen)
7944         (remove_new_fork_children, kill_new_fork_children)
7945         (discard_pending_stop_replies, stop_reply_queue_length)
7946         (check_pending_events_prevent_wildcard_vcont)
7947         (discard_pending_stop_replies_in_queue, stop_reply)
7948         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7949         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7950         (remote_interrupt_as, remote_interrupt_ns)
7951         (remote_get_noisy_reply, remote_query_attached)
7952         (remote_add_inferior, remote_current_thread, get_current_thread)
7953         (set_thread, set_general_thread, set_continue_thread)
7954         (set_general_process, write_ptid)
7955         (remote_unpack_thread_info_response, remote_get_threadinfo)
7956         (parse_threadlist_response, remote_get_threadlist)
7957         (remote_threadlist_iterator, remote_get_threads_with_ql)
7958         (remote_get_threads_with_qxfer)
7959         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7960         (get_offsets, remote_check_symbols, remote_supported_packet)
7961         (remote_query_supported, remote_packet_size)
7962         (remote_serial_quit_handler, remote_detach_pid)
7963         (remote_vcont_probe, remote_resume_with_hc)
7964         (send_interrupt_sequence, interrupt_query)
7965         (remote_notif_get_pending_events, fetch_register_using_p)
7966         (send_g_packet, process_g_packet, fetch_registers_using_g)
7967         (store_register_using_P, store_registers_using_G)
7968         (set_remote_traceframe, check_binary_download)
7969         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7970         (remote_xfer_live_readonly_partial, remote_read_bytes)
7971         (remote_send_printf, remote_flash_write, readchar)
7972         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7973         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7974         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7975         (extended_remote_disable_randomization, extended_remote_run)
7976         (send_environment_packet, extended_remote_environment_support)
7977         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7978         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7979         (packet_command): Now methods of ...
7980         (remote_target): ... this class.
7981         (m_remote_state) <remote_target>: New field.
7982         (struct remote_state) <stop_reply_queue,
7983         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7984         fields.
7985         (remote_state::remote_state): Allocate stop_reply_queue.
7986         (remote_state): Delete global.
7987         (get_remote_state_raw): Delete.
7988         (remote_target::get_remote_state): Allocate m_remote_state on
7989         demand.
7990         (get_current_remote_target): New.
7991         (remote_ops, extended_remote_ops): Delete.
7992         (wait_forever_enabled_p, remote_async_inferior_event_token):
7993         Delete, moved to struct remote_state.
7994         (remote_target::close): Delete self.  Destruction bits split to
7995         ...
7996         (remote_target::~remote_target): ... this.
7997         (show_memory_packet_size): Adjust to use
7998         get_current_remote_target.
7999         (struct protocol_feature) <func>: Add remote_target parameter.
8000         All callers adjusted.
8001         (curr_quit_handler_target): New.
8002         (remote_serial_quit_handler): Reimplement.
8003         (remote_target::open_1): Adjust to use get_current_remote_target.
8004         Heap-allocate remote_target/extended_remote_target instances.
8005         (vcont_builder::vcont_builder): Add remote_target parameter, and
8006         save it in m_remote.  All callers adjusted.
8007         (vcont_builder::m_remote): New field.
8008         (vcont_builder::restart, vcont_builder::flush)
8009         (vcont_builder::push_action): Use it.
8010         (remote_target::commit_resume): Use it.
8011         (struct queue_iter_param) <remote>: New field.
8012         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8013         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8014         (check_pending_event_prevents_wildcard_vcont_callback)
8015         (remote_target::check_pending_events_prevent_wildcard_vcont)
8016         (remote_target::discard_pending_stop_replies)
8017         (remote_target::discard_pending_stop_replies_in_queue)
8018         (remote_target::remote_notif_remove_queued_reply): Fill in
8019         'remote' field.
8020         (remote_notif_get_pending_events): New.
8021         (remote_target::readchar, remote_target::remote_serial_write):
8022         Save/restore curr_quit_handler_target.
8023         (putpkt): New.
8024         (kill_new_fork_children): Fill in 'remote' field.
8025         (packet_command): Use get_current_remote_target, defer to
8026         remote_target method of same name.
8027         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8028         parameter, and save it in m_remote.  All callers adjusted.
8029         (scoped_remote_fd::release): Use m_remote.
8030         (scoped_remote_fd::m_remote): New field.
8031         (remote_file_put, remote_file_get, remote_file_delete): Use
8032         get_current_remote_target, defer to remote_target method of same
8033         name.
8034         (remote_btrace_reset): Add remote_state paremeter.  Update all
8035         callers.
8036         (remote_async_inferior_event_handler). Pass down 'data'.
8037         (remote_new_objfile): Use get_current_remote_target.
8038         (remote_target::vcont_r_supported): New.
8039         (set_range_stepping): Use get_current_remote_target and
8040         remote_target::vcont_r_supported.
8041         (_initialize_remote): Don't allocate 'remote_state' and
8042         'stop_reply_queue' globals.
8043         * remote.h (struct remote_target): Forward declare.
8044         (getpkt, putpkt, remote_notif_get_pending_events): Add
8045         'remote_target' parameter.
8046
8047 2018-05-22  Pedro Alves  <palves@redhat.com>
8048
8049         * remote.c (vcont_builder): Now a class.  Make all data members
8050         private.
8051         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8052         Declare methods.
8053         (vcont_builder_restart): Rename to ...
8054         (vcont_builder::restart): ... this.
8055         (vcont_builder_flush): Rename to ...
8056         (vcont_builder::flush): ... this.
8057         (vcont_builder_push_action): Rename to ...
8058         (vcont_builder::push_action): ... this.
8059         (remote_target::commit_resume): Adjust.
8060
8061 2018-05-22  Pedro Alves  <palves@redhat.com>
8062
8063         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8064         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8065         (get_fixed_memory_packet_size): New.
8066         (get_memory_packet_size): Use it.
8067         (set_memory_packet_size): Don't override the config size with
8068         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8069         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8070         Don't refer to get_memory_packet_size if not connected to a remote
8071         target.  Show "(default)" if configured size is 0.
8072
8073 2018-05-22  Pedro Alves  <palves@redhat.com>
8074
8075         * remote.c (remote_target::mourn_inferior): Move
8076         discard_pending_stop_replies call here from ...
8077         (_initialize_remote): ... here.
8078
8079 2018-05-22  Pedro Alves  <palves@redhat.com>
8080
8081         * remote.c (compare_section_command): Remove set_general_process
8082         call.
8083
8084 2018-05-22  Pedro Alves  <palves@redhat.com>
8085
8086         * remote.c (struct packet_reg, struct remote_arch_state):
8087         Move higher up in the file.
8088         (remote_state) <m_arch_states>: Store remote_arch_state values
8089         instead of remote_arch_state pointers.
8090         (remote_state::get_remote_arch_state): Adjust.
8091
8092 2018-05-22  Pedro Alves  <palves@redhat.com>
8093
8094         * remote.c: Include <unordered_map>.
8095         (remote_state): Now a class.
8096         (remote_state) <get_remote_arch_state>: Declare method.
8097         <get_remote_arch_state>: New field.
8098         (remote_arch_state) <remote_arch_state>: Declare ctor.
8099         <regs>: Now a unique_ptr.
8100         (remote_gdbarch_data_handle): Delete.
8101         (get_remote_arch_state): Delete.
8102         (remote_state::get_remote_arch_state): New.
8103         (get_remote_state): Adjust to call remote_state's
8104         get_remote_arch_state method.
8105         (init_remote_state): Delete, bits factored out to ...
8106         (remote_arch_state::remote_arch_state): ... this new method.
8107         (get_remote_packet_size, get_memory_packet_size)
8108         (process_g_packet, remote_target::fetch_registers)
8109         (remote_target::prepare_to_store, store_registers_using_G)
8110         (remote_target::store_registers, remote_target::get_trace_status):
8111         Adjust to call remote_state's method.
8112         (_initialize_remote): Remove reference to
8113         remote_gdbarch_data_handle.
8114
8115 2018-05-22  Pedro Alves  <palves@redhat.com>
8116
8117         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8118         pread>: New method declarations.
8119         (remote_target::open_1): Adjust.
8120         (readahead_cache_invalidate): Rename to ...
8121         (readahead_cache::invalidate): ... this, and adjust to be a class
8122         method.
8123         (readahead_cache_invalidate_fd): Rename to ...
8124         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8125         class method.
8126         (remote_hostio_pwrite): Adjust.
8127         (remote_hostio_pread_from_cache): Rename to ...
8128         (readahead_cache::pread): ... this, and adjust to be a class
8129         method.
8130         (remote_hostio_close): Adjust.
8131
8132 2018-05-22  Pedro Alves  <palves@redhat.com>
8133
8134         * remote.c (remote_hostio_close_cleanup): Delete.
8135         (class scoped_remote_fd): New.
8136         (remote_file_put, remote_file_get): Use it.
8137
8138 2018-05-22  Pedro Alves  <palves@redhat.com>
8139
8140         (struct vCont_action_support): Use bool and initialize all fields.
8141         (struct readahead_cache): Initialize all fields.
8142         (remote_state): Use bool and initialize all fields.
8143         (remote_state::remote_state, remote_state::~remote_state): New.
8144         (new_remote_state): Delete.
8145         (_initialize_remote): Use new to allocate remote_state.
8146
8147 2018-05-22  Pedro Alves  <palves@redhat.com>
8148             張俊芝  <zjz@zjz.name>
8149
8150         PR gdb/22973
8151         * c-exp.y: Include "c-support.h".
8152         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8153         of tolower.  Use c_ident_is_alpha to scan names.
8154         * c-lang.c: Include "c-support.h".
8155         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8156         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8157         * c-support.h: New file, with bits factored out from ...
8158         * cp-name-parser.y: ... this file.
8159         Include "c-support.h".
8160         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8161         c-support.h and renamed.
8162         (symbol_end, yylex): Adjust.
8163
8164 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8165
8166         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8167         parameter type to CORE_ADDR.
8168         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8169         parameter type in declaration to CORE_ADDR.
8170         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8171         target_auxv_search to get AT_HWCAP and use the result to get the
8172         target description.
8173         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8174         to CORE_ADDR. Remove the cast of the return value to unsigned
8175         long. Fix error predicate of target_auxv_search.
8176         (ppc_linux_nat_target::read_description): Change the type of the
8177         hwcap variable to CORE_ADDR.
8178
8179 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8180
8181         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8182         if the size of fpscr is larger than 32 bits.
8183
8184 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8185
8186         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8187         (ppc32_linux_vsxregmap): New global.
8188         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8189         regcache_supply_regset, and regcache_collect_regset.
8190         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8191         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8192         (fetch_vsx_register, store_vsx_register): Remove.
8193         (fetch_vsx_registers): Add regno parameter. Get regset using
8194         ppc_linux_vsxregset. Use regset to supply registers.
8195         (store_vsx_registers): Add regno parameter. Get regset using
8196         ppc_linux_vsxregset. Use regset to collect registers.
8197         (fetch_register): Call fetch_vsx_registers instead of
8198         fetch_vsx_register.
8199         (store_register): Call store_vsx_registers instead of
8200         store_vsx_register.
8201         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8202         new regno parameter.
8203         (store_ppc_registers): Call store_vsx_registers with -1 for the
8204         new regno parameter.
8205         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8206         (ppc_collect_vsxregset): Remove.
8207
8208 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8209
8210         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8211         offset fields.
8212         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8213         for vector register offset fields.
8214         (ppc64_fbsd_reg_offsets): Likewise.
8215         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8216         to vector register offset fields.
8217         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8218         to vector register offset fields.
8219         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8220         vector register offset fields.
8221         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8222         initializers for vector register offset fields.
8223         (rs6000_aix64_reg_offsets): Likewise.
8224         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8225         (ppc_supply_vrregset): Remove.
8226         (ppc_collect_vrregset): Remove.
8227         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8228         (ppc_linux_vrregset) : New function.
8229         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8230         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8231         (ppc32_linux_vrregset): Remove.
8232         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8233         and use result instead of ppc32_linux_vrregset.
8234         (ppc32_linux_reg_offsets): Remove initializers for vector register
8235         offset fields.
8236         (ppc64_linux_reg_offsets): Likewise.
8237         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8238         * ppc-linux-nat.c: Include regset.h.
8239         (gdb_vrregset_t): Adjust comment to account for little-endian
8240         mode.
8241         (supply_vrregset, fill_vrregset): Remove.
8242         (fetch_altivec_register, store_altivec_register): Remove.
8243         (fetch_altivec_registers): Add regno parameter. Get regset using
8244         ppc_linux_vrregset. Use regset to supply registers.
8245         (store_altivec_registers): Add regno parameter. Get regset using
8246         ppc_linux_vrregset. Use regset to collect registers.
8247         (fetch_register): Call fetch_altivec_registers instead of
8248         fetch_altivec_register.
8249         (store_register): Call store_altivec_registers instead of
8250         store_altivec_register.
8251         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8252         the new regno parameter.
8253         (store_ppc_registers): Call store_altivec_registers with -1 for
8254         the new regno parameter.
8255
8256 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8257
8258         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8259         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8260         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8261         (gdb_vrregset_t): Change array type size to
8262         PPC_LINUX_SIZEOF_VRREGSET.
8263         (gdb_vsxregset_t): Change array type size to
8264         PPC_LINUX_SIZEOF_VSXREGSET.
8265         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8266         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8267         PPC_LINUX_SIZEOF_VSXREGSET.
8268
8269 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8270
8271         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8272         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8273         nat/ppc-linux.c.
8274         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8275         ppc_linux_target_wordsize with tid.
8276         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8277         wordsize with tid.
8278         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8279         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8280         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8281         tid parameter. Remove static specifier.
8282         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8283         (ppc_linux_target_wordsize): New declaration.
8284
8285 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8286
8287         * arch/ppc-linux-common.c: New file.
8288         * arch/ppc-linux-common.h: New file.
8289         * arch/ppc-linux-tdesc.h: New file.
8290         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8291         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8292         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8293         arch/ppc-linux-tdesc.h.
8294         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8295         arch/ppc-linux-tdesc.h.
8296         (ppc_linux_nat_target::read_description): Remove target
8297         description matching code. Fill a ppc_linux_features struct and
8298         call ppc_linux_match_description with it. Move comment about ISA
8299         2.05 to ppc-linux-common.c.
8300         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8301         arch/ppc-linux-tdesc.h.
8302         (ppc_linux_core_read_description): Remove target description
8303         matching code. Fill a ppc_linux_features struct and call
8304         ppc_linux_match_description with it.
8305         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8306         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8307         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8308         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8309         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8310         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8311         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8312         (tdesc_powerpc_e500l): Remove.
8313
8314 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8315
8316         * ada-lang.c (catch_assert_command): Pass empty string instead
8317         of NULL for excep_string argument.
8318
8319 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8320
8321         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8322         the width of the requested register exceeds the width of the
8323         `ptrace' data type.
8324
8325 2018-05-21  Tom Tromey  <tom@tromey.com>
8326
8327         * printcmd.c (output_command): Remove.
8328         (output_command_const): Rename to output_command.
8329         * valprint.h (output_command): Rename from output_command_const.
8330         * tracepoint.c (trace_dump_actions): Call output_command.
8331
8332 2018-05-21  Tom Tromey  <tom@tromey.com>
8333
8334         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8335         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8336         * ada-lang.h (create_ada_exception_catchpoint): Update.
8337         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8338         std::string.
8339         (create_excep_cond_exprs, ~ada_catchpoint)
8340         (should_stop_exception, print_one_exception)
8341         (print_mention_exception, print_recreate_exception): Update.
8342         (ada_get_next_arg): Remove.
8343         (catch_ada_exception_command_split): Use std::string.  Change type
8344         of "excep_string", "cond_string".
8345         (catch_ada_exception_command): Update.
8346         (create_ada_exception_catchpoint): Change type of excep_string.
8347         (ada_exception_sal): Remove excep_string parameter.
8348         (~ada_catchpoint): Remove.
8349
8350 2018-05-21  Tom Tromey  <tom@tromey.com>
8351
8352         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8353         cleanup.
8354
8355 2018-05-21  Tom Tromey  <tom@tromey.com>
8356
8357         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8358         Return unique_xmalloc_ptr.
8359         (print_it_exception): Update.
8360
8361 2018-05-21  Tom Tromey  <tom@tromey.com>
8362
8363         * tracepoint.c (trace_dump_actions): Use std::string.
8364
8365 2018-05-21  Tom Tromey  <tom@tromey.com>
8366
8367         * symfile.c (reread_symbols): Use std::string for original_name.
8368
8369 2018-05-21  Tom Tromey  <tom@tromey.com>
8370
8371         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8372         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8373         constructor.
8374
8375 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8376
8377         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8378         instance to...
8379         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8380         * objfiles.c (get_objfile_bfd_data): Allocate
8381         objfile_per_bfd_storage with obstack_new when allocating on
8382         obstack.
8383
8384 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8385
8386         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8387         OBSTACK_ZALLOC.
8388         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8389         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8390         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8391         (add_pending): Likewise.
8392         (parse_symbol): Likewise.
8393         (parse_partial_symbols): Likewise.
8394         (psymtab_to_symtab_1): Likewise.
8395         (new_psymtab): Likewise.
8396         (elfmdebug_build_psymtabs): Likewise.
8397         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8398         * objfiles.c (get_objfile_bfd_data): Likewise.
8399         (objfile_register_static_link): Likewise.
8400         * psymtab.c (allocate_psymtab): Likewise.
8401         * stabsread.c (read_member_functions): Likewise.
8402         * xcoffread.c (xcoff_end_psymtab): Likewise.
8403
8404 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8405
8406         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8407         compiler supports std::is_trivially_constructible.
8408         * common/poison.h: Include obstack.h.
8409         (IsMallocable): Define to is_trivially_constructible if the
8410         compiler supports it, define to true_type otherwise.
8411         (xobnew): New.
8412         (XOBNEW): Redefine.
8413         (xobnewvec): New.
8414         (XOBNEWVEC): Redefine.
8415         * gdb_obstack.h (obstack_zalloc): New.
8416         (OBSTACK_ZALLOC): Redefine.
8417         (obstack_calloc): New.
8418         (OBSTACK_CALLOC): Redefine.
8419         (obstack_new): New.
8420         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8421         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8422         gdbarch.c.
8423         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8424         obstack_calloc/obstack_zalloc.
8425         (gdbarch_obstack_zalloc): Remove.
8426         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8427
8428 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8429
8430         * stack.c (backtrace_command_1): Remove useless variable int i.
8431
8432 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8433
8434         * stack.c (print_frame_info): Fix comment.
8435
8436 2018-05-18  Tom Tromey  <tom@tromey.com>
8437
8438         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8439         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8440         (~dwarf2_per_objfile): Update
8441         (dwarf2_get_dwz_file): Use new.
8442         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8443         unique_ptr.
8444
8445 2018-05-18  Tom Tromey  <tom@tromey.com>
8446
8447         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8448         unique_ptr.
8449         * dwarf2read.c (struct dwp_file): Add constructor and
8450         initializers.
8451         (open_and_init_dwp_file): Return a unique_ptr.
8452         (dwarf2_per_objfile, create_dwp_hash_table)
8453         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8454         (lookup_dwo_unit_in_dwp): Update.
8455         (open_and_init_dwp_file, get_dwp_file): Update.
8456
8457 2018-05-18  Tom Tromey  <tom@tromey.com>
8458
8459         * dwarf2read.c (dwarf2_per_objfile): Update.
8460         (struct mapped_index): Add initializers.
8461         (dwarf2_read_index): Use new.
8462         (dw2_symtab_iter_init): Update.
8463         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8464         unique_ptr.
8465
8466 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8467
8468         * dwarf2read.c (mapped_index) <total_size>: Remove.
8469
8470 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8471
8472         * unittests/format_pieces-selftests.c (test_format_specifier):
8473         Add ARI comments.
8474
8475 2018-05-18  Tom Tromey  <tom@tromey.com>
8476
8477         * c-typeprint.c (maybe_print_hole): New function.
8478         (c_print_type_struct_field_offset): Update.
8479         (c_type_print_base_struct_union): Call maybe_print_hole.
8480
8481 2018-05-17  Keith Seitz  <keiths@redhat.com>
8482
8483         * breakpoint.c (build_bpstat_chain): New function, moved from
8484         bpstat_stop_status.
8485         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8486         If no stop chain is passed, call build_bpstat_chain to build it.
8487         * breakpoint.h (build_bpstat_chain): Declare.
8488         (bpstat_stop_status): Move documentation here from breakpoint.c.
8489         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8490         build the stop chain and pass it to skip_inline_frames.
8491         Pass this stop chain to bpstat_stop_status.
8492         * inline-frame.c: Include breakpoint.h.
8493         (stopped_by_user_bp_inline_frame): New function.
8494         (skip_inline_frames): Add parameter `stop_chain'.
8495         Move documention to inline-frame.h.
8496         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8497         whether the frame should be elided.
8498         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8499         Add moved documentation and update for new parameter.
8500
8501 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8502
8503         PR cli/14975
8504         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8505         unittests/format_pieces-selftests.c.
8506         * common/format.h (format_piece) <operator==>: New.
8507         (format_pieces) <operator[]>: Remove.
8508         * common/format.c (format_pieces::format_pieces): Handle \e.
8509         * unittests/format_pieces-selftests.c: New.
8510
8511 2018-05-17  Tom Tromey  <tom@tromey.com>
8512
8513         PR symtab/23010:
8514         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8515         (dw2_instantiate_symtab): Add skip_partial parameter.
8516         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8517         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8518         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8519         (dw2_expand_symtabs_matching_one)
8520         (dw2_find_pc_sect_compunit_symtab)
8521         (dw2_debug_names_lookup_symbol)
8522         (dw2_debug_names_expand_symtabs_for_function): Update.
8523         (init_cutu_and_read_dies): Add skip_partial parameter.
8524         (process_psymtab_comp_unit, build_type_psymtabs_1)
8525         (process_skeletonless_type_unit, load_partial_comp_unit)
8526         (psymtab_to_symtab_1): Update.
8527         (load_full_comp_unit): Add skip_partial parameter.
8528         (process_imported_unit_die, dwarf2_read_addr_index)
8529         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8530         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8531         (read_signatured_type): Update.
8532
8533 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8534
8535         * value.c (release_value): Remove unused variable.
8536         (record_latest_value): Likewise.
8537         (access_value_history): Likewise.
8538         (preserve_values): Likewise.
8539
8540 2018-05-17  Tom Tromey  <tom@tromey.com>
8541
8542         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8543         Initialize.
8544
8545 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8546
8547         PR gdb/22286
8548         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8549         Also handle registers whose width is not a multiple of
8550         PTRACE_TYPE_RET.
8551         (linux_nat_trad_target::store_register): Likewise.
8552
8553 2018-05-16  Tom Tromey  <tom@tromey.com>
8554
8555         * gdbcore.h (core_bfd): Redefine.
8556         * corelow.c (core_target::close): Update.
8557         (core_target_open): Update.
8558         * progspace.h (struct program_space) <cbfd>: Now a
8559         gdb_bfd_ref_ptr.
8560
8561 2018-05-16  Tom Tromey  <tom@tromey.com>
8562
8563         PR cli/19551:
8564         * symfile-add-flags.h (enum symfile_add_flags)
8565         <SYMFILE_NOT_FILENAME>: New constant.
8566         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8567         objfile name from BFD.
8568         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8569         * minidebug.c (find_separate_debug_file_in_section): Put
8570         ".gnu_debugdata" into BFD's file name.
8571
8572 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8573
8574         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8575         Remove.
8576
8577 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8578
8579         PR binutils/21446
8580         * aarch64-tdep.c (aarch64_analyze_prologue,
8581         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8582         Indicate not interested in errors.
8583
8584 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8585
8586         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8587         Supply the MIPS_ZERO_REGNUM register.
8588
8589 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8590
8591         * mips-tdep.c (mask_address_var): Make variable static.
8592
8593 2018-05-14  Tom Tromey  <tom@tromey.com>
8594
8595         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8596
8597 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8598
8599         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8600         FXSAVE_ADDR for the mxcsr register.
8601
8602 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8603
8604         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8605
8606 2018-05-11  Pedro Alves  <palves@redhat.com>
8607
8608         * corelow.c (core_target) <core_target>: No longer inline.
8609         Initialize m_core_gdbarch, m_core_vec and build the section table
8610         here.
8611         <~core_target>: New.
8612         <core_gdbarch, get_core_register_section>: New methods.
8613         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8614         factored out from ...
8615         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8616         (core_ops): Delete.
8617         (sniff_core_bfd): Add gdbarch parameter.
8618         (core_close): Delete, merged into ...
8619         (core_target::close): ... here.  Delete self.
8620         (core_close_cleanup): Delete.
8621         (core_target_open): Allocate a core_target on the heap.  Use a
8622         unique_ptr instead of a cleanup.  Bits moved into the core_target
8623         ctor.  Adjust to use core_target methods instead of globals.
8624         (get_core_register_section): Rename to ...
8625         (core_target::get_core_register_section): ... this and adjust.
8626         (struct get_core_registers_cb_data): New.
8627         (get_core_registers_cb): Use it.  Use bool.
8628         (core_target::fetch_registers, core_target::files_info)
8629         (core_target::xfer_partial, core_target::read_description)
8630         (core_target::pid_to, core_target::thread_name): Adjust to
8631         reference class fields instead of globals.
8632         * target.h (struct target_ops_deleter, target_ops_up): New.
8633
8634 2018-05-11  Pedro Alves  <palves@redhat.com>
8635
8636         * corefile.c (core_file_command): Move to corelow.c.
8637         * corelow.c (the_core_target): Delete.
8638         (core_file_command): Moved from corefile.c.  Check exec_bfd
8639         instead of the_core_target.  Use target_detach instead of calling
8640         into the_core_target directly.
8641         (maybe_say_no_core_file_now): New.
8642         (core_target::detach): Use it.
8643         (_initialize_corelow): Remove references to the_core_target.
8644         * gdbcore.h (the_core_target): Delete.
8645
8646 2018-05-11  Tom Tromey  <tromey@redhat.com>
8647             Pedro Alves  <palves@redhat.com>
8648
8649         * corefile.c (core_bfd): Remove.
8650         * gdbcore.h (core_bfd): Now a macro.
8651         * progspace.h (struct program_space) <cbfd>: New field.
8652
8653 2018-05-11  Tom Tromey  <tom@tromey.com>
8654
8655         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8656         gdb::def_vector.
8657
8658 2018-05-10  Tom Tromey  <tom@tromey.com>
8659
8660         * configure: Rebuild.
8661         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8662
8663 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8664
8665         PR server/23158:
8666         * regformats/regdat.sh: Adjust script, following the addition
8667         of the new expedite_regs parameter to init_target_desc.
8668
8669 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8670     
8671         PR gdb/23127
8672         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8673         set_gdbarch_significant_addr_bit.
8674         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8675         set_gdbarch_significant_addr_bit.
8676         * utils.c (address_significant): Update to sign extend addr.
8677
8678 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8679
8680         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8681         (xtensa_linux_init_abi): Limit tdep->num_regs by
8682         tdep->num_nopriv_regs.
8683         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8684         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8685         not initialized.
8686
8687 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8688
8689         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8690
8691 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8692
8693         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8694         (I387_MXCSR_INIT_VAL): New constant.
8695         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8696         buffer if it was supplied by the inferior.
8697         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8698         (i387_xsave_get_clear_bv): New function.
8699         (i387_supply_xsave): Only read x87 control registers from the
8700         xsave buffer if the feature is enabled, and the state will have
8701         been written, otherwise, provide a suitable default.
8702         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8703         including x87 control registers.  Update control registers if they
8704         have changed from the default value, and mark features as enabled
8705         as required.
8706         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8707
8708 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8709
8710         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8711
8712 2018-05-07  Tom Tromey  <tom@tromey.com>
8713
8714         * configure: Rebuild.
8715         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8716
8717 2018-05-07  Tom Tromey  <tom@tromey.com>
8718
8719         PR tdep/20362:
8720         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8721         bit.  Use correct value for VDIV.
8722
8723 2018-05-04  Tom Tromey  <tom@tromey.com>
8724
8725         * configure: Rebuild.
8726         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8727
8728 2018-05-04  Tom Tromey  <tom@tromey.com>
8729
8730         * linux-record.c (record_linux_system_call) <case
8731         RECORD_SYS_RECVFROM>: Add "break".
8732
8733 2018-05-04  Tom Tromey  <tom@tromey.com>
8734
8735         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8736         Add missing "break".
8737         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8738         Add missing "break".
8739
8740 2018-05-04  Tom Tromey  <tom@tromey.com>
8741
8742         * rs6000-tdep.c (ppc_process_record_op4)
8743         (ppc_process_record_op63): Add fall-through comment.
8744
8745 2018-05-04  Tom Tromey  <tom@tromey.com>
8746
8747         * i386-tdep.c (i386_process_record): Add fall-through comment.
8748
8749 2018-05-04  Tom Tromey  <tom@tromey.com>
8750
8751         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8752         comment.
8753
8754 2018-05-04  Tom Tromey  <tom@tromey.com>
8755
8756         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8757         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8758         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8759         comment.
8760         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8761         comment.
8762         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8763         comment.
8764
8765 2018-05-04  Tom Tromey  <tom@tromey.com>
8766
8767         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8768
8769 2018-05-04  Tom Tromey  <tom@tromey.com>
8770
8771         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8772         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8773         * symfile.c (section_is_mapped): Fix fall-through comment.
8774         * stabsread.c (define_symbol, read_member_functions): Fix
8775         fall-through comment.
8776         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8777         comment.
8778         * remote.c (remote_wait_as): Fix fall-through comment.
8779         * p-exp.y (yylex): Fix fall-through comment.
8780         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8781         comment.
8782         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8783         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8784         * jv-exp.y (yylex): Fix fall-through comment.
8785         * go-exp.y (lex_one_token): Fix fall-through comment.
8786         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8787         fall-through comment.
8788         * f-exp.y (yylex): Fix fall-through comment.
8789         * dwarf2read.c (process_die): Fix fall-through comments.
8790         * dbxread.c (process_one_symbol): Fix fall-through comment.
8791         * d-exp.y (lex_one_token): Fix fall-through comment.
8792         * cp-name-parser.y (yylex): Fix fall-through comment.
8793         * coffread.c (coff_symtab_read): Fix fall-through comment.
8794         * c-exp.y (lex_one_token): Fix fall-through comment.
8795         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8796         comment.
8797         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8798         comment.
8799
8800 2018-05-04  Tom Tromey  <tom@tromey.com>
8801
8802         PR python/22730:
8803         * NEWS: Mention gdb.execute change.
8804         * gdbcmd.h (execute_control_command): Don't declare.
8805         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8806         execute_control_commands, execute_control_commands_to_string.
8807         * cli/cli-script.h (execute_control_commands)
8808         (execute_control_commands_to_string): Declare.
8809         (execute_control_command): Add from_tty parameter.
8810         * cli/cli-script.c (execute_control_commands)
8811         (execute_control_commands_to_string): New functions.
8812         (execute_user_command): Use execute_control_commands.
8813         (execute_control_command_1): Add "from_tty" parameter.  Update.
8814         (execute_control_command): Likewise.
8815
8816 2018-05-04  Tom Tromey  <tom@tromey.com>
8817
8818         PR python/22731:
8819         * NEWS: Mention that breakpoint commands are writable.
8820         * python/py-breakpoint.c (bppy_set_commands): New function.
8821         (breakpoint_object_getset) <"commands">: Use it.
8822
8823 2018-05-04  Tom Tromey  <tom@tromey.com>
8824
8825         * tracepoint.c (actions_command): Update.
8826         * mi/mi-cmd-break.c (mi_command_line_array)
8827         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8828         (mi_read_next_line): Remove.
8829         (mi_cmd_break_commands): Update.
8830         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8831         function_view.
8832         * cli/cli-script.c (get_command_line): Update.
8833         (process_next_line): Use function_view.  Constify.
8834         (recurse_read_control_structure, read_command_lines)
8835         (read_command_lines_1): Change argument types to function_view.
8836         (do_define_command, document_command): Update.
8837         * breakpoint.h (check_tracepoint_command): Don't declare.
8838         * breakpoint.c (check_tracepoint_command): Remove.
8839         (commands_command_1, create_tracepoint_from_upload): Update.
8840
8841 2018-05-04  Tom Tromey  <tom@tromey.com>
8842
8843         PR gdb/11750:
8844         * cli/cli-script.h (enum command_control_type) <define_control>:
8845         New constant.
8846         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8847         (build_command_line, execute_control_command_1)
8848         (process_next_line): Likewise.
8849         (do_define_command): New function, extracted from define_command.
8850         (define_command): Use it.
8851
8852 2018-05-04  Tom Tromey  <tom@tromey.com>
8853
8854         * tracepoint.c (actions_command): Update.
8855         * cli/cli-script.h (read_command_lines): Update.
8856         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8857         (MAX_TMPBUF): Remove define.
8858         (define_command): Use string_printf.
8859         (document_command): Likewise.
8860         * breakpoint.c (commands_command_1): Update.
8861
8862 2018-05-04  Tom Tromey  <tom@tromey.com>
8863
8864         * top.c (execute_command): Update.
8865         * cli/cli-script.h (print_command_lines): Now varargs.
8866         * cli/cli-script.c (print_command_lines): Now varargs.
8867         (execute_control_command_1) <case while_control, case if_control>:
8868         Update.
8869
8870 2018-05-04  Tom Tromey  <tom@tromey.com>
8871
8872         * tracepoint.c (all_tracepoint_actions): Rename from
8873         all_tracepoint_actions_and_cleanup.  Change return type.
8874         (actions_command, encode_actions_1, encode_actions)
8875         (trace_dump_actions, tdump_command): Update.
8876         * remote.c (remote_download_command_source): Update.
8877         * python/python.c (gdbpy_eval_from_control_command)
8878         (python_command, python_interactive_command): Update.
8879         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8880         * guile/guile.c (guile_command)
8881         (gdbscm_eval_from_control_command, guile_command): Update.
8882         * compile/compile.c (compile_code_command)
8883         (compile_print_command, compile_to_object): Update.
8884         * cli/cli-script.h (struct command_lines_deleter): New.
8885         (counted_command_line): New typedef.
8886         (struct command_line): Add constructor, destructor.
8887         <body_list>: Remove.
8888         <body_list_0, body_list_1>: New members.
8889         (command_line_up): Remove typedef.
8890         (read_command_lines, read_command_lines_1, get_command_line):
8891         Update.
8892         (copy_command_lines): Don't declare.
8893         * cli/cli-script.c (build_command_line): Use "new".
8894         (get_command_line): Return counted_command_line.
8895         (print_command_lines, execute_user_command)
8896         (execute_control_command_1, while_command, if_command): Update.
8897         (realloc_body_list): Remove.
8898         (process_next_line, recurse_read_control_structure): Update.
8899         (read_command_lines, read_command_lines_1): Return counted_command_line.
8900         (free_command_lines): Use "delete".
8901         (copy_command_lines): Remove.
8902         (define_command, document_command, show_user_1): Update.
8903         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8904         a counted_command_line.
8905         * breakpoint.h (counted_command_line): Remove typedef.
8906         (breakpoint_set_commands): Update.
8907         * breakpoint.c (check_no_tracepoint_commands)
8908         (validate_commands_for_breakpoint): Update.
8909         (breakpoint_set_commands): Change commands to be a
8910         counted_command_line.
8911         (commands_command_1, update_dprintf_command_list)
8912         (create_tracepoint_from_upload): Update.
8913
8914 2018-05-04  Tom Tromey  <tom@tromey.com>
8915
8916         * cli/cli-decode.h (cmd_list_element): New constructor.
8917         (~cmd_list_element): New destructor.
8918         (struct cmd_list_element): Add initializers.
8919         * cli/cli-decode.c (do_add_cmd): Use "new".
8920         (delete_cmd): Use "delete".
8921
8922 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8923             Pedro Alves <palves@redhat.com>
8924
8925         PR breakpoints/19806 and support for PR external/20207.
8926         * NEWS: Mention Aarch64 watchpoint improvements.
8927         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8928         watchpoints and PR external/20207 watchpoints.
8929         * nat/aarch64-linux-hw-point.c
8930         (kernel_supports_any_contiguous_range): New.
8931         (aarch64_watchpoint_offset): New.
8932         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8933         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8934         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8935         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8936         next_addr_orig_p.  Support PR external/20207 watchpoints.
8937         (aarch64_downgrade_regs): New.
8938         (aarch64_dr_state_insert_one_point): New parameters offset and
8939         addr_orig.
8940         (aarch64_dr_state_remove_one_point): Likewise.
8941         (aarch64_handle_breakpoint): Update caller.
8942         (aarch64_handle_aligned_watchpoint): Likewise.
8943         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8944         aligned_offset.
8945         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8946         aarch64_downgrade_regs.
8947         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8948         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8949         (DR_CONTROL_MASK): ... this.
8950         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8951         (unsigned int aarch64_watchpoint_offset): New prototype.
8952         (aarch64_linux_set_debug_regs): Remove const from state.
8953         * utils.c (align_up, align_down): Move to ...
8954         * common/common-utils.c (align_up, align_down): ... here.
8955         * utils.h (align_up, align_down): Move to ...
8956         * common/common-utils.h (align_up, align_down): ... here.
8957
8958 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8959
8960         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8961         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8962         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8963         Re-implement to match the ABI as summarized in GCC's
8964         gcc/config/sparc/sparc.c.  All callers updated.
8965         (sparc32_store_arguments): Remove assertion.
8966
8967 2018-05-04  Tom Tromey  <tom@tromey.com>
8968
8969         * printcmd.c: Don't include tui.h.
8970         (decode_format): Use skip_spaces.
8971
8972 2018-05-04  Tom Tromey  <tom@tromey.com>
8973
8974         PR gdb/22619:
8975         * printcmd.c (last_count): New global.
8976         (x_command): Use saved count when repeating.
8977
8978 2018-05-04  Tom Tromey  <tom@tromey.com>
8979
8980         * nto-procfs.c (do_closedir_cleanup): Remove.
8981         (procfs_pidlist): Use gdb_dir_up.
8982         * procfs.c (do_closedir_cleanup): Remove.
8983         (proc_update_threads): Use gdb_dir_up.
8984         * common/filestuff.h (struct gdb_dir_deleter): New.
8985         (gdb_dir_up): New typedef.
8986
8987 2018-05-04  Tom Tromey  <tom@tromey.com>
8988
8989         * ada-lang.c (print_mention_exception): Use std::string.
8990
8991 2018-05-04  Tom Tromey  <tom@tromey.com>
8992
8993         * ada-lang.c (create_excep_cond_exprs): Update.
8994         (ada_exception_catchpoint_cond_string): Use std::string.
8995
8996 2018-05-04  Tom Tromey  <tom@tromey.com>
8997
8998         * ada-lang.c (xget_renaming_scope): Return std::string.
8999         (old_renaming_is_invisible): Update.
9000
9001 2018-05-04  Tom Tromey  <tom@tromey.com>
9002
9003         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9004         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9005
9006 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9007
9008         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9009
9010 2018-05-04  Tom Tromey  <tom@tromey.com>
9011
9012         * remote.c (remote_query_supported_append): Change type.
9013         (remote_check_symbols): Update.
9014
9015 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9016
9017         PR gdb/11420
9018         * configure.ac: Prepend libpython.
9019         * python/python-config.py: Likewise.
9020         * configure: Regenerate.
9021
9022 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9023
9024         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9025
9026 2018-05-03  Pedro Alves  <palves@redhat.com>
9027
9028         * s390-linux-nat.c
9029         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9030         override.  Write 'true' instead of '1'.
9031         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9032         declaration.
9033
9034 2018-05-02  Pedro Alves  <palves@redhat.com>
9035
9036         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9037         add_inf_child_target.
9038         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9039         add_inf_child_target.
9040         * aix-thread.c (aix_thread_target_info): New.
9041         (aix_thread_target) <shortname, longname, doc>: Delete.
9042         <info>: New.
9043         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9044         add_inf_child_target.
9045         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9046         add_inf_child_target.
9047         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9048         add_inf_child_target.
9049         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9050         add_inf_child_target.
9051         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9052         add_inf_child_target.
9053         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9054         add_inf_child_target.
9055         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9056         add_inf_child_target.
9057         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9058         add_inf_child_target.
9059         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9060         add_inf_child_target.
9061         * bfd-target.c (target_bfd_target_info): New.
9062         (target_bfd) <shortname, longname, doc>: Delete.
9063         <info>: New.
9064         * bsd-kvm.c (bsd_kvm_target_info): New.
9065         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9066         <info>: New.
9067         (bsd_kvm_target::open): Rename to ...
9068         (bsd_kvm_target_open): ... this.  Adjust.
9069         * bsd-uthread.c (bsd_uthread_target_info): New.
9070         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9071         <info>: New.
9072         * corefile.c (core_file_command): Adjust.
9073         * corelow.c (core_target_info): New.
9074         (core_target) <shortname, longname, doc>: Delete.
9075         <info>: New.
9076         (core_target::open): Rename to ...
9077         (core_target_open): ... this.  Adjust.
9078         * ctf.c (ctf_target_info): New.
9079         (ctf_target) <shortname, longname, doc>: Delete.
9080         <info>: New.
9081         (ctf_target::open): Rename to ...
9082         (ctf_target_open): ... this.
9083         (_initialize_ctf): Adjust.
9084         * exec.c (exec_target_info): New.
9085         (exec_target) <shortname, longname, doc>: Delete.
9086         <info>: New.
9087         (exec_target::open): Rename to ...
9088         (exec_target_open): ... this.
9089         * gdbcore.h (core_target_open): Declare.
9090         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9091         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9092         add_inf_child_target.
9093         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9094         add_inf_child_target.
9095         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9096         add_inf_child_target.
9097         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9098         add_inf_child_target.
9099         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9100         add_inf_child_target.
9101         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9102         add_inf_child_target.
9103         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9104         add_inf_child_target.
9105         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9106         add_inf_child_target.
9107         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9108         add_inf_child_target.
9109         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9110         add_inf_child_target.
9111         * inf-child.c (inf_child_target_info): New.
9112         (inf_child_target::info): New.
9113         (inf_child_open_target): Remove 'target' parameter.  Use
9114         get_native_target instead.
9115         (inf_child_target::open): Delete.
9116         (add_inf_child_target): New.
9117         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9118         Delete.
9119         <info>: New.
9120         (add_inf_child_target): Declare.
9121         (inf_child_open_target): Declare.
9122         * linux-thread-db.c (thread_db_target_info): New.
9123         (thread_db_target) <shortname, longname, doc>: Delete.
9124         <info>: New.
9125         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9126         add_inf_child_target.
9127         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9128         add_inf_child_target.
9129         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9130         add_inf_child_target.
9131         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9132         add_inf_child_target.
9133         * make-target-delegates (print_class): Adjust.
9134         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9135         add_inf_child_target.
9136         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9137         add_inf_child_target.
9138         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9139         add_inf_child_target.
9140         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9141         add_inf_child_target.
9142         * nto-procfs.c (nto_native_target_info): New.
9143         (nto_procfs_target_native) <shortname, longname, doc>:
9144         Delete.
9145         <info>: New.
9146         (nto_procfs_target_info): New.
9147         (nto_procfs_target_procfs) <shortname, longname, doc>:
9148         Delete.
9149         <info>: New.
9150         (init_procfs_targets): Adjust.
9151         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9152         add_inf_child_target.
9153         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9154         add_inf_child_target.
9155         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9156         add_inf_child_target.
9157         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9158         add_inf_child_target.
9159         * ravenscar-thread.c (ravenscar_target_info): New.
9160         (ravenscar_thread_target) <shortname, longname, doc>:
9161         Delete.
9162         <info>: New.
9163         * record-btrace.c (record_btrace_target_info):
9164         (record_btrace_target) <shortname, longname, doc>: Delete.
9165         <info>: New.
9166         (record_btrace_target::open): Rename to ...
9167         (record_btrace_target_open): ... this.  Adjust.
9168         * record-full.c (record_longname, record_doc): New.
9169         (record_full_base_target) <shortname, longname, doc>: Delete.
9170         <info>: New.
9171         (record_full_target_info): New.
9172         (record_full_target): <shortname>: Delete.
9173         <info>: New.
9174         (record_full_core_open_1, record_full_open_1): Update comments.
9175         (record_full_base_target::open): Rename to ...
9176         (record_full_open): ... this.
9177         (cmd_record_full_restore): Update.
9178         (_initialize_record_full): Update.
9179         * remote-sim.c (remote_sim_target_info): New.
9180         (gdbsim_target) <shortname, longname, doc>: Delete.
9181         <info>: New.
9182         (gdbsim_target::open): Rename to ...
9183         (gdbsim_target_open): ... this.
9184         (_initialize_remote_sim): Adjust.
9185         * remote.c (remote_doc): New.
9186         (remote_target_info): New.
9187         (remote_target) <shortname, longname, doc>: Delete.
9188         <info>: New.
9189         (extended_remote_target_info): New.
9190         (extended_remote_target) <shortname, longname, doc>: Delete.
9191         <info>: New.
9192         (remote_target::open_1): Make static.  Adjust.
9193         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9194         * s390-linux-nat.c (_initialize_s390_nat): Use
9195         add_inf_child_target.
9196         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9197         add_inf_child_target.
9198         * sol-thread.c (thread_db_target_info): New.
9199         (sol_thread_target) <shortname, longname, doc>: Delete.
9200         <info>: New.
9201         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9202         add_inf_child_target.
9203         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9204         add_inf_child_target.
9205         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9206         add_inf_child_target.
9207         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9208         add_inf_child_target.
9209         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9210         add_inf_child_target.
9211         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9212         add_inf_child_target.
9213         * spu-linux-nat.c (_initialize_spu_nat): Use
9214         add_inf_child_target.
9215         * spu-multiarch.c (spu_multiarch_target_info): New.
9216         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9217         <info>: New.
9218         * target-delegates.c: Regenerate.
9219         * target.c: Include <unordered_map>.
9220         (target_ops_p): Delete.
9221         (DEF_VEC_P(target_ops_p)): Delete.
9222         (target_factories): New.
9223         (test_target_info): New.
9224         (test_target_ops::info): New.
9225         (open_target): Adjust to use target_factories.
9226         (add_target_with_completer): Rename to ...
9227         (add_target): ... this.  Change prototype.  Register target_info
9228         and open callback in target_factories.  Register target_info in
9229         command context instead of target_ops.
9230         (add_target): Delete old implementation.
9231         (add_deprecated_target_alias): Change prototype.  Adjust.
9232         (the_native_target): New.
9233         (set_native_target, get_native_target): New.
9234         (find_default_run_target): Use the_native_target.
9235         (find_attach_target, find_run_target): Simplify.
9236         (target_ops::open): Delete.
9237         (dummy_target_info): New.
9238         (dummy_target::shortname, dummy_target::longname)
9239         (dummy_target::doc): Delete.
9240         (dummy_target::info): New.
9241         (debug_target::shortname, debug_target::longname)
9242         (debug_target::doc): Delete.
9243         (debug_target::info): New.
9244         * target.h (struct target_info): New.
9245         (target_ops::~target_ops): Add comment.
9246         (target_ops::info): New.
9247         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9248         longer virtual.  Implement in terms of target_info.
9249         (set_native_target, get_native_target): Declare.
9250         (target_open_ftype): New.
9251         (add_target, add_target_with_completer)
9252         (add_deprecated_target_alias): Change prototype.
9253         (test_target) <shortname, longname, doc>: Delete.
9254         <info>: New.
9255         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9256         add_inf_child_target.
9257         * tracefile-tfile.c (tfile_target_info): New.
9258         (tfile_target) <shortname, longname, doc>: Delete.
9259         <info>: New.
9260         (tfile_target::open): Rename to ...
9261         (tfile_target_open): ... this.
9262         (_initialize_tracefile_tfile): Adjust.
9263         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9264         add_inf_child_target.
9265         * windows-nat.c (_initialize_windows_nat): Use
9266         add_inf_child_target.
9267         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9268         add_inf_child_target.
9269
9270 2018-05-02  Pedro Alves  <palves@redhat.com>
9271
9272         * linux-nat.h (linux_nat_target) <low_new_thread,
9273         low_delete_thread, low_new_fork, low_forget_process,
9274         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9275         New virtual methods.
9276         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9277         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9278         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9279         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9280         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9281         Delete.
9282         * linux-fork.c (delete_fork): Adjust to call low method.
9283         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9284         (linux_nat_new_fork, linux_nat_forget_process_hook)
9285         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9286         (linux_nat_status_is_event):
9287         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9288         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9289         to call low method.
9290         (sigtrap_is_event): Rename to ...
9291         (linux_nat_target::low_status_is_event): ... this.
9292         (linux_nat_set_status_is_event): Delete.
9293         (save_stop_reason, linux_nat_wait_1)
9294         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9295         low methods.
9296         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9297         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9298         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9299         (linux_nat_set_prepare_to_resume): Delete.
9300         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9301         low virtual methods.
9302         * amd64-linux-nat.c: Likewise.
9303         * arm-linux-nat.c: Likewise.
9304         * i386-linux-nat.c: Likewise.
9305         * ia64-linux-nat.c: Likewise.
9306         * mips-linux-nat.c: Likewise.
9307         * ppc-linux-nat.c: Likewise.
9308         * s390-linux-nat.c: Likewise.
9309         * sparc64-linux-nat.c: Likewise.
9310         * x86-linux-nat.c: Likewise.
9311         * x86-linux-nat.h: Include "nat/x86-linux.h".
9312         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9313         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9314         Override methods.
9315
9316 2018-05-02  Pedro Alves  <palves@redhat.com>
9317
9318         * target.h (target_ops)
9319         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9320         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9321         stopped_by_watchpoint, have_continuable_watchpoint,
9322         stopped_data_address, watchpoint_addr_within_range,
9323         can_accel_watchpoint_condition, can_run, thread_alive,
9324         has_all_memory, has_memory, has_stack, has_registers,
9325         has_execution, can_async_p, is_async_p, supports_non_stop,
9326         always_non_stop_p, can_execute_reverse, supports_multi_process,
9327         supports_enable_disable_tracepoint,
9328         supports_disable_randomization, supports_string_tracing,
9329         supports_evaluation_of_breakpoint_conditions,
9330         can_run_breakpoint_commands, filesystem_is_local,
9331         can_download_tracepoint, get_trace_state_variable_value,
9332         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9333         record_is_replaying, record_will_replay,
9334         augmented_libraries_svr4_read>: Adjust to return bool.
9335         * aarch64-linux-nat.c: All implementations adjusted.
9336         * aix-thread.c: All implementations adjusted.
9337         * arm-linux-nat.c: All implementations adjusted.
9338         * breakpoint.c: All implementations adjusted.
9339         * bsd-kvm.c: All implementations adjusted.
9340         * bsd-uthread.c: All implementations adjusted.
9341         * corelow.c: All implementations adjusted.
9342         * ctf.c: All implementations adjusted.
9343         * darwin-nat.c: All implementations adjusted.
9344         * darwin-nat.h: All implementations adjusted.
9345         * exec.c: All implementations adjusted.
9346         * fbsd-nat.c: All implementations adjusted.
9347         * fbsd-nat.h: All implementations adjusted.
9348         * gnu-nat.c: All implementations adjusted.
9349         * gnu-nat.h: All implementations adjusted.
9350         * go32-nat.c: All implementations adjusted.
9351         * ia64-linux-nat.c: All implementations adjusted.
9352         * inf-child.c: All implementations adjusted.
9353         * inf-child.h: All implementations adjusted.
9354         * inf-ptrace.c: All implementations adjusted.
9355         * inf-ptrace.h: All implementations adjusted.
9356         * linux-nat.c: All implementations adjusted.
9357         * linux-nat.h: All implementations adjusted.
9358         * mips-linux-nat.c: All implementations adjusted.
9359         * nto-procfs.c: All implementations adjusted.
9360         * ppc-linux-nat.c: All implementations adjusted.
9361         * procfs.c: All implementations adjusted.
9362         * ravenscar-thread.c: All implementations adjusted.
9363         * record-btrace.c: All implementations adjusted.
9364         * record-full.c: All implementations adjusted.
9365         * remote-sim.c: All implementations adjusted.
9366         * remote.c: All implementations adjusted.
9367         * s390-linux-nat.c: All implementations adjusted.
9368         * sol-thread.c: All implementations adjusted.
9369         * spu-multiarch.c: All implementations adjusted.
9370         * target-delegates.c: All implementations adjusted.
9371         * target.c: All implementations adjusted.
9372         * target.h: All implementations adjusted.
9373         * tracefile-tfile.c: All implementations adjusted.
9374         * tracefile.c: All implementations adjusted.
9375         * tracefile.h: All implementations adjusted.
9376         * windows-nat.c: All implementations adjusted.
9377         * x86-linux-nat.h: All implementations adjusted.
9378         * x86-nat.h: All implementations adjusted.
9379
9380 2018-05-02  Pedro Alves  <palves@redhat.com>
9381
9382         * make-target-delegates (scan_target_h): Don't trim lines here.
9383         Replace sequences of tabs and/or whitespace with a single
9384         whitespace.
9385         (top level, parsing methods): Trim each line before processing it
9386         here.
9387
9388 2018-05-02  Pedro Alves  <palves@redhat.com>
9389             John Baldwin  <jhb@freebsd.org>
9390
9391         * target.h (enum strata) <debug_stratum>: New.
9392         (struct target_ops) <all delegation methods>: Replace by C++
9393         virtual methods, and drop "to_" prefix.  All references updated
9394         throughout.
9395         <to_shortname, to_longname, to_doc, to_data,
9396         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9397         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9398         virtual methods.  All references updated throughout.
9399         <can_attach, supports_terminal_ours, can_create_inferior,
9400         get_thread_control_capabilities, attach_no_wait>: New
9401         virtual methods.
9402         <insert_breakpoint, remove_breakpoint>: Now
9403         TARGET_DEFAULT_NORETURN methods.
9404         <info_proc>: Now returns bool.
9405         <to_magic>: Delete.
9406         (OPS_MAGIC): Delete.
9407         (current_target): Delete.  All references replaced by references
9408         to ...
9409         (target_stack): ... this.  New.
9410         (target_shortname, target_longname): Adjust.
9411         (target_can_run): Now a function declaration.
9412         (default_child_has_all_memory, default_child_has_memory)
9413         (default_child_has_stack, default_child_has_registers)
9414         (default_child_has_execution): Remove target_ops parameter.
9415         (complete_target_initialization): Delete.
9416         (memory_breakpoint_target): New template class.
9417         (test_target_ops): Refactor as a C++ class with virtual methods.
9418         * make-target-delegates (NAME_PART): Tighten.
9419         (POINTER_PART, CP_SYMBOL): New.
9420         (SIMPLE_RETURN_PART): Reimplement.
9421         (VEC_RETURN_PART): Expect less.
9422         (RETURN_PART, VIRTUAL_PART): New.
9423         (METHOD): Adjust to C++ virtual methods.
9424         (scan_target_h): Remove reference to C99.
9425         (dname): Output "target_ops::" prefix.
9426         (write_function_header): Adjust to output a C++ class method.
9427         (write_declaration): New.
9428         (write_delegator): Adjust to output a C++ class method.
9429         (tdname): Output "dummy_target::" prefix.
9430         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9431         method.
9432         (tdefault_names, debug_names): Delete.
9433         (return_types, tdefaults, styles, argtypes_array): New.
9434         (top level): All methods are delegators.
9435         (print_class): New.
9436         (top level): Print dummy_target and debug_target classes.
9437         * target-delegates.c: Regenerate.
9438         * target-debug.h (target_debug_print_enum_info_proc_what)
9439         (target_debug_print_thread_control_capabilities)
9440         (target_debug_print_thread_info_p): New.
9441         * target.c (dummy_target): Delete.
9442         (the_dummy_target, the_debug_target): New.
9443         (target_stack): Now extern.
9444         (set_targetdebug): Push/unpush debug target.
9445         (default_child_has_all_memory, default_child_has_memory)
9446         (default_child_has_stack, default_child_has_registers)
9447         (default_child_has_execution): Remove target_ops parameter.
9448         (complete_target_initialization): Delete.
9449         (add_target_with_completer): No longer call
9450         complete_target_initialization.
9451         (target_supports_terminal_ours): Use regular delegation.
9452         (update_current_target): Delete.
9453         (push_target): No longer check magic number.  Don't call
9454         update_current_target.
9455         (unpush_target): Don't call update_current_target.
9456         (target_is_pushed): No longer check magic number.
9457         (target_require_runnable): Skip for all stratums over
9458         process_stratum.
9459         (target_ops::info_proc): New.
9460         (target_info_proc): Use find_target_at and
9461         find_default_run_target.
9462         (target_supports_disable_randomization): Use regular delegation.
9463         (target_get_osdata): Use find_target_at.
9464         (target_ops::open, target_ops::close, target_ops::can_attach)
9465         (target_ops::attach, target_ops::can_create_inferior)
9466         (target_ops::create_inferior, target_ops::can_run)
9467         (target_can_run): New.
9468         (default_fileio_target): Use regular delegation.
9469         (target_ops::fileio_open, target_ops::fileio_pwrite)
9470         (target_ops::fileio_pread, target_ops::fileio_fstat)
9471         (target_ops::fileio_close, target_ops::fileio_unlink)
9472         (target_ops::fileio_readlink): New.
9473         (target_fileio_open_1, target_fileio_unlink)
9474         (target_fileio_readlink): Always call the target method.  Handle
9475         FILEIO_ENOSYS.
9476         (return_zero, return_zero_has_execution): Delete.
9477         (init_dummy_target): Delete.
9478         (dummy_target::dummy_target, dummy_target::shortname)
9479         (dummy_target::longname, dummy_target::doc)
9480         (debug_target::debug_target, debug_target::shortname)
9481         (debug_target::longname, debug_target::doc): New.
9482         (target_supports_delete_record): Use regular delegation.
9483         (setup_target_debug): Delete.
9484         (maintenance_print_target_stack): Skip debug_stratum.
9485         (initialize_targets): Instantiate the_dummy_target and
9486         the_debug_target.
9487         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9488         use target_stack.
9489         (target_auxv_search, fprint_target_auxv): Adjust.
9490         (info_auxv_command): Adjust to use target_stack.
9491         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9492         * exceptions.c (print_flush): Handle a NULL target_stack.
9493         * regcache.c (target_ops_no_register): Refactor as class with
9494         virtual methods.
9495
9496         * exec.c (exec_target): New class.
9497         (exec_ops): Now an exec_target.
9498         (exec_open, exec_close_1, exec_get_section_table)
9499         (exec_xfer_partial, exec_files_info, exec_has_memory)
9500         (exec_make_note_section): Refactor as exec_target methods.
9501         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9502         Delete.
9503         (exec_target::find_memory_regions): New.
9504         (_initialize_exec): Don't call init_exec_ops.
9505         * gdbcore.h (exec_file_clear): Delete.
9506
9507         * corefile.c (core_target): Delete.
9508         (core_file_command): Adjust.
9509         * corelow.c (core_target): New class.
9510         (the_core_target): New.
9511         (core_close): Remove target_ops parameter.
9512         (core_close_cleanup): Adjust.
9513         (core_target::close): New.
9514         (core_open, core_detach, get_core_registers, core_files_info)
9515         (core_xfer_partial, core_thread_alive, core_read_description)
9516         (core_pid_to_str, core_thread_name, core_has_memory)
9517         (core_has_stack, core_has_registers, core_info_proc): Rework as
9518         core_target methods.
9519         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9520         (_initialize_corelow): Initialize the_core_target.
9521         * gdbcore.h (core_target): Delete.
9522         (the_core_target): New.
9523
9524         * ctf.c: (ctf_target): New class.
9525         (ctf_ops): Now a ctf_target.
9526         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9527         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9528         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9529         methods.
9530         (init_ctf_ops): Delete.
9531         (_initialize_ctf): Don't call it.
9532         * tracefile-tfile.c (tfile_target): New class.
9533         (tfile_ops): Now a tfile_target.
9534         (tfile_open, tfile_close, tfile_files_info)
9535         (tfile_get_tracepoint_status, tfile_trace_find)
9536         (tfile_fetch_registers, tfile_xfer_partial)
9537         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9538         Refactor as tfile_target methods.
9539         (tfile_xfer_partial_features): Remove target_ops parameter.
9540         (init_tfile_ops): Delete.
9541         (_initialize_tracefile_tfile): Don't call it.
9542         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9543         (tracefile_has_stack, tracefile_has_registers)
9544         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9545         tracefile_target methods.
9546         (init_tracefile_ops): Delete.
9547         (tracefile_target::tracefile_target): New.
9548         * tracefile.h: Include "target.h".
9549         (tracefile_target): New class.
9550         (init_tracefile_ops): Delete.
9551
9552         * spu-multiarch.c (spu_multiarch_target): New class.
9553         (spu_ops): Now a spu_multiarch_target.
9554         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9555         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9556         (spu_search_memory, spu_mourn_inferior): Refactor as
9557         spu_multiarch_target methods.
9558         (init_spu_ops): Delete.
9559         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9560         complete_target_initialization.
9561
9562         * ravenscar-thread.c (ravenscar_thread_target): New class.
9563         (ravenscar_ops): Now a ravenscar_thread_target.
9564         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9565         (ravenscar_thread_alive, ravenscar_pid_to_str)
9566         (ravenscar_fetch_registers, ravenscar_store_registers)
9567         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9568         (ravenscar_stopped_by_hw_breakpoint)
9569         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9570         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9571         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9572         methods.
9573         (init_ravenscar_thread_ops): Delete.
9574         (_initialize_ravenscar): Remove references to
9575         init_ravenscar_thread_ops and complete_target_initialization.
9576
9577         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9578         (bsd_uthread_target): New class.
9579         (bsd_uthread_ops): Now a bsd_uthread_target.
9580         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9581         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9582         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9583         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9584         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9585         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9586         (bsd_uthread_target): Delete function.
9587         (_initialize_bsd_uthread): Remove reference to
9588         complete_target_initialization.
9589
9590         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9591         (target_bfd): ... this new class.
9592         (target_bfd_xfer_partial, target_bfd_get_section_table)
9593         (target_bfd_close): Refactor as target_bfd methods.
9594         (target_bfd::~target_bfd): New.
9595         (target_bfd_reopen): Adjust.
9596         (target_bfd::close): New.
9597
9598         * record-btrace.c (record_btrace_target): New class.
9599         (record_btrace_ops): Now a record_btrace_target.
9600         (record_btrace_open, record_btrace_stop_recording)
9601         (record_btrace_disconnect, record_btrace_close)
9602         (record_btrace_async, record_btrace_info)
9603         (record_btrace_insn_history, record_btrace_insn_history_range)
9604         (record_btrace_insn_history_from, record_btrace_call_history)
9605         (record_btrace_call_history_range)
9606         (record_btrace_call_history_from, record_btrace_record_method)
9607         (record_btrace_is_replaying, record_btrace_will_replay)
9608         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9609         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9610         (record_btrace_store_registers, record_btrace_prepare_to_store)
9611         (record_btrace_to_get_unwinder)
9612         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9613         (record_btrace_commit_resume, record_btrace_wait)
9614         (record_btrace_stop, record_btrace_can_execute_reverse)
9615         (record_btrace_stopped_by_sw_breakpoint)
9616         (record_btrace_supports_stopped_by_sw_breakpoint)
9617         (record_btrace_stopped_by_hw_breakpoint)
9618         (record_btrace_supports_stopped_by_hw_breakpoint)
9619         (record_btrace_update_thread_list, record_btrace_thread_alive)
9620         (record_btrace_goto_begin, record_btrace_goto_end)
9621         (record_btrace_goto, record_btrace_stop_replaying_all)
9622         (record_btrace_execution_direction)
9623         (record_btrace_prepare_to_generate_core)
9624         (record_btrace_done_generating_core): Refactor as
9625         record_btrace_target methods.
9626         (init_record_btrace_ops): Delete.
9627         (_initialize_record_btrace): Remove reference to
9628         init_record_btrace_ops.
9629         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9630         the execution_direction global.
9631         (record_full_base_target, record_full_target)
9632         (record_full_core_target): New classes.
9633         (record_full_ops): Now a record_full_target.
9634         (record_full_core_ops): Now a record_full_core_target.
9635         (record_full_target::detach, record_full_target::disconnect)
9636         (record_full_core_target::disconnect)
9637         (record_full_target::mourn_inferior, record_full_target::kill):
9638         New.
9639         (record_full_open, record_full_close, record_full_async): Refactor
9640         as methods of the record_full_base_target class.
9641         (record_full_resume, record_full_commit_resume): Refactor
9642         as methods of the record_full_target class.
9643         (record_full_wait, record_full_stopped_by_watchpoint)
9644         (record_full_stopped_data_address)
9645         (record_full_stopped_by_sw_breakpoint)
9646         (record_full_supports_stopped_by_sw_breakpoint)
9647         (record_full_stopped_by_hw_breakpoint)
9648         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9649         methods of the record_full_base_target class.
9650         (record_full_store_registers, record_full_xfer_partial)
9651         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9652         Refactor as methods of the record_full_target class.
9653         (record_full_can_execute_reverse, record_full_get_bookmark)
9654         (record_full_goto_bookmark, record_full_execution_direction)
9655         (record_full_record_method, record_full_info, record_full_delete)
9656         (record_full_is_replaying, record_full_will_replay)
9657         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9658         (record_full_stop_replaying): Refactor as methods of the
9659         record_full_base_target class.
9660         (record_full_core_resume, record_full_core_kill)
9661         (record_full_core_fetch_registers)
9662         (record_full_core_prepare_to_store)
9663         (record_full_core_store_registers, record_full_core_xfer_partial)
9664         (record_full_core_insert_breakpoint)
9665         (record_full_core_remove_breakpoint)
9666         (record_full_core_has_execution): Refactor
9667         as methods of the record_full_core_target class.
9668         (record_full_base_target::supports_delete_record): New.
9669         (init_record_full_ops): Delete.
9670         (init_record_full_core_ops): Delete.
9671         (record_full_save): Refactor as method of the
9672         record_full_base_target class.
9673         (_initialize_record_full): Remove references to
9674         init_record_full_ops and init_record_full_core_ops.
9675
9676         * remote.c (remote_target, extended_remote_target): New classes.
9677         (remote_ops): Now a remote_target.
9678         (extended_remote_ops): Now an extended_remote_target.
9679         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9680         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9681         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9682         (remote_pass_signals, remote_set_syscall_catchpoint)
9683         (remote_program_signals, )
9684         (remote_thread_always_alive): Remove target_ops parameter.
9685         (remote_thread_alive, remote_thread_name)
9686         (remote_update_thread_list, remote_threads_extra_info)
9687         (remote_static_tracepoint_marker_at)
9688         (remote_static_tracepoint_markers_by_strid)
9689         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9690         (remote_open): Refactor as methods of remote_target.
9691         (extended_remote_open, extended_remote_detach)
9692         (extended_remote_attach, extended_remote_post_attach):
9693         (extended_remote_supports_disable_randomization)
9694         (extended_remote_create_inferior): : Refactor as method of
9695         extended_remote_target.
9696         (remote_set_permissions, remote_open_1, remote_detach)
9697         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9698         (remote_resume, remote_commit_resume, remote_stop)
9699         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9700         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9701         (remote_prepare_to_store, remote_store_registers)
9702         (remote_flash_erase, remote_flash_done, remote_files_info)
9703         (remote_kill, remote_mourn, remote_insert_breakpoint)
9704         (remote_remove_breakpoint, remote_insert_watchpoint)
9705         (remote_watchpoint_addr_within_range)
9706         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9707         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9708         (remote_supports_stopped_by_sw_breakpoint)
9709         (remote_stopped_by_hw_breakpoint)
9710         (remote_supports_stopped_by_hw_breakpoint)
9711         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9712         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9713         (remote_verify_memory): Refactor as methods of remote_target.
9714         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9715         parameter.
9716         (remote_xfer_partial, remote_get_memory_xfer_limit)
9717         (remote_search_memory, remote_rcmd, remote_memory_map)
9718         (remote_pid_to_str, remote_get_thread_local_address)
9719         (remote_get_tib_address, remote_read_description): Refactor as
9720         methods of remote_target.
9721         (remote_target::fileio_open, remote_target::fileio_pwrite)
9722         (remote_target::fileio_pread, remote_target::fileio_close): New.
9723         (remote_hostio_readlink, remote_hostio_fstat)
9724         (remote_filesystem_is_local, remote_can_execute_reverse)
9725         (remote_supports_non_stop, remote_supports_disable_randomization)
9726         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9727         (remote_supports_enable_disable_tracepoint)
9728         (remote_supports_string_tracing)
9729         (remote_can_run_breakpoint_commands, remote_trace_init)
9730         (remote_download_tracepoint, remote_can_download_tracepoint)
9731         (remote_download_trace_state_variable, remote_enable_tracepoint)
9732         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9733         (remote_trace_start, remote_get_trace_status)
9734         (remote_get_tracepoint_status, remote_trace_stop)
9735         (remote_trace_find, remote_get_trace_state_variable_value)
9736         (remote_save_trace_data, remote_get_raw_trace_data)
9737         (remote_set_disconnected_tracing, remote_core_of_thread)
9738         (remote_set_circular_trace_buffer, remote_traceframe_info)
9739         (remote_get_min_fast_tracepoint_insn_len)
9740         (remote_set_trace_buffer_size, remote_set_trace_notes)
9741         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9742         (remote_disable_btrace, remote_teardown_btrace)
9743         (remote_read_btrace, remote_btrace_conf)
9744         (remote_augmented_libraries_svr4_read, remote_load)
9745         (remote_pid_to_exec_file, remote_can_do_single_step)
9746         (remote_execution_direction, remote_thread_handle_to_thread_info):
9747         Refactor as methods of remote_target.
9748         (init_remote_ops, init_extended_remote_ops): Delete.
9749         (remote_can_async_p, remote_is_async_p, remote_async)
9750         (remote_thread_events, remote_upload_tracepoints)
9751         (remote_upload_trace_state_variables): Refactor as methods of
9752         remote_target.
9753         (_initialize_remote): Remove references to init_remote_ops and
9754         init_extended_remote_ops.
9755
9756         * remote-sim.c (gdbsim_target): New class.
9757         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9758         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9759         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9760         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9761         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9762         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9763         Refactor as methods of gdbsim_target.
9764         (gdbsim_ops): Now a gdbsim_target.
9765         (init_gdbsim_ops): Delete.
9766         (gdbsim_cntrl_c): Adjust.
9767         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9768
9769         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9770         (the_amd64_linux_nat_target): New.
9771         (amd64_linux_fetch_inferior_registers)
9772         (amd64_linux_store_inferior_registers): Refactor as methods of
9773         amd64_linux_nat_target.
9774         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9775         * i386-linux-nat.c: Don't include "linux-nat.h".
9776         (i386_linux_nat_target): New class.
9777         (the_i386_linux_nat_target): New.
9778         (i386_linux_fetch_inferior_registers)
9779         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9780         as methods of i386_linux_nat_target.
9781         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9782         * inf-child.c (inf_child_ops): Delete.
9783         (inf_child_fetch_inferior_registers)
9784         (inf_child_store_inferior_registers): Delete.
9785         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9786         methods of inf_child_target.
9787         (inf_child_target::supports_terminal_ours)
9788         (inf_child_target::terminal_init)
9789         (inf_child_target::terminal_inferior)
9790         (inf_child_target::terminal_ours_for_output)
9791         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9792         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9793         New.
9794         (inf_child_open, inf_child_disconnect, inf_child_close)
9795         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9796         (inf_child_post_startup_inferior, inf_child_can_run)
9797         (inf_child_pid_to_exec_file): Refactor as methods of
9798         inf_child_target.
9799         (inf_child_follow_fork): Delete.
9800         (inf_child_target::can_create_inferior)
9801         (inf_child_target::can_attach): New.
9802         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9803         (inf_child_target::has_stack, inf_child_target::has_registers)
9804         (inf_child_target::has_execution): New.
9805         (inf_child_fileio_open, inf_child_fileio_pwrite)
9806         (inf_child_fileio_pread, inf_child_fileio_fstat)
9807         (inf_child_fileio_close, inf_child_fileio_unlink)
9808         (inf_child_fileio_readlink, inf_child_use_agent)
9809         (inf_child_can_use_agent): Refactor as methods of
9810         inf_child_target.
9811         (return_zero, inf_child_target): Delete.
9812         (inf_child_target::inf_child_target): New.
9813         * inf-child.h: Include "target.h".
9814         (inf_child_target): Delete function prototype.
9815         (inf_child_target): New class.
9816         (inf_child_open_target, inf_child_mourn_inferior)
9817         (inf_child_maybe_unpush_target): Delete.
9818         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9819         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9820         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9821         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9822         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9823         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9824         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9825         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9826         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9827         methods of inf_ptrace_target.
9828         (inf_ptrace_target): Delete function.
9829         * inf-ptrace.h: Include "inf-child.h".
9830         (inf_ptrace_target): Delete function declaration.
9831         (inf_ptrace_target): New class.
9832         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9833         * linux-nat.c (linux_target): New.
9834         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9835         (linux_nat_target::~linux_nat_target): New.
9836         (linux_child_post_attach, linux_child_post_startup_inferior)
9837         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9838         (linux_child_remove_fork_catchpoint)
9839         (linux_child_insert_vfork_catchpoint)
9840         (linux_child_remove_vfork_catchpoint)
9841         (linux_child_insert_exec_catchpoint)
9842         (linux_child_remove_exec_catchpoint)
9843         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9844         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9845         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9846         (linux_nat_stopped_data_address)
9847         (linux_nat_stopped_by_sw_breakpoint)
9848         (linux_nat_supports_stopped_by_sw_breakpoint)
9849         (linux_nat_stopped_by_hw_breakpoint)
9850         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9851         (linux_nat_kill, linux_nat_mourn_inferior)
9852         (linux_nat_xfer_partial, linux_nat_thread_alive)
9853         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9854         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9855         (linux_child_static_tracepoint_markers_by_strid)
9856         (linux_nat_is_async_p, linux_nat_can_async_p)
9857         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9858         (linux_nat_supports_multi_process)
9859         (linux_nat_supports_disable_randomization, linux_nat_async)
9860         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9861         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9862         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9863         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9864         methods of linux_nat_target.
9865         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9866         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9867         parameter.
9868         (check_stopped_by_watchpoint): Adjust.
9869         (linux_xfer_partial): Delete.
9870         (linux_target_install_ops, linux_target, linux_nat_add_target):
9871         Delete.
9872         (linux_nat_target::linux_nat_target): New.
9873         * linux-nat.h: Include "inf-ptrace.h".
9874         (linux_nat_target): New.
9875         (linux_target, linux_target_install_ops, linux_nat_add_target):
9876         Delete function declarations.
9877         (linux_target): Declare global.
9878         * linux-thread-db.c (thread_db_target): New.
9879         (thread_db_target::thread_db_target): New.
9880         (thread_db_ops): Delete.
9881         (the_thread_db_target): New.
9882         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9883         (thread_db_update_thread_list, thread_db_pid_to_str)
9884         (thread_db_extra_thread_info)
9885         (thread_db_thread_handle_to_thread_info)
9886         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9887         (thread_db_resume): Refactor as methods of thread_db_target.
9888         (init_thread_db_ops): Delete.
9889         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9890         * x86-linux-nat.c: Don't include "linux-nat.h".
9891         (super_post_startup_inferior): Delete.
9892         (x86_linux_nat_target::~x86_linux_nat_target): New.
9893         (x86_linux_child_post_startup_inferior)
9894         (x86_linux_read_description, x86_linux_enable_btrace)
9895         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9896         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9897         methods of x86_linux_nat_target.
9898         (x86_linux_create_target): Delete.  Bits folded ...
9899         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9900         pointer.
9901         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9902         (x86_linux_nat_target): New class.
9903         (x86_linux_create_target): Delete.
9904         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9905         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9906         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9907         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9908         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9909         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9910         make extern.
9911         (x86_use_watchpoints): Delete.
9912         * x86-nat.h: Include "breakpoint.h" and "target.h".
9913         (x86_use_watchpoints): Delete.
9914         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9915         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9916         (x86_insert_watchpoint, x86_remove_watchpoint)
9917         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9918         (x86_stopped_by_hw_breakpoint): New declarations.
9919         (x86_nat_target): New template class.
9920
9921         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9922         (the_ppc_linux_nat_target): New.
9923         (ppc_linux_fetch_inferior_registers)
9924         (ppc_linux_can_use_hw_breakpoint)
9925         (ppc_linux_region_ok_for_hw_watchpoint)
9926         (ppc_linux_ranged_break_num_registers)
9927         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9928         (ppc_linux_insert_mask_watchpoint)
9929         (ppc_linux_remove_mask_watchpoint)
9930         (ppc_linux_can_accel_watchpoint_condition)
9931         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9932         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9933         (ppc_linux_watchpoint_addr_within_range)
9934         (ppc_linux_masked_watch_num_registers)
9935         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9936         (ppc_linux_read_description): Refactor as methods of
9937         ppc_linux_nat_target.
9938         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9939
9940         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9941         (procfs_target): New class.
9942         (the_procfs_target): New.
9943         (procfs_target): Delete function.
9944         (procfs_auxv_parse, procfs_attach, procfs_detach)
9945         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9946         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9947         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9948         (procfs_create_inferior, procfs_update_thread_list)
9949         (procfs_thread_alive, procfs_pid_to_str)
9950         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9951         (procfs_stopped_data_address, procfs_insert_watchpoint)
9952         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9953         (proc_find_memory_regions, procfs_info_proc)
9954         (procfs_make_note_section): Refactor as methods of procfs_target.
9955         (_initialize_procfs): Adjust.
9956         * sol-thread.c (sol_thread_target): New class.
9957         (sol_thread_ops): Now a sol_thread_target.
9958         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9959         (sol_thread_fetch_registers, sol_thread_store_registers)
9960         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9961         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9962         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9963         (init_sol_thread_ops): Delete.
9964         (_initialize_sol_thread): Adjust.  Remove references to
9965         init_sol_thread_ops and complete_target_initialization.
9966
9967         * windows-nat.c (windows_nat_target): New class.
9968         (windows_fetch_inferior_registers)
9969         (windows_store_inferior_registers, windows_resume, windows_wait)
9970         (windows_attach, windows_detach, windows_pid_to_exec_file)
9971         (windows_files_info, windows_create_inferior)
9972         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9973         (windows_close, windows_pid_to_str, windows_xfer_partial)
9974         (windows_get_tib_address, windows_get_ada_task_ptid)
9975         (windows_thread_name, windows_thread_alive): Refactor as
9976         windows_nat_target methods.
9977         (do_initial_windows_stuff): Adjust.
9978         (windows_target): Delete function.
9979         (_initialize_windows_nat): Adjust.
9980
9981         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9982         (darwin_mourn_inferior, darwin_kill_inferior)
9983         (darwin_create_inferior, darwin_attach, darwin_detach)
9984         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9985         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9986         (darwin_supports_multi_process): Refactor as darwin_nat_target
9987         methods.
9988         (darwin_resume_to, darwin_files_info): Delete.
9989         (_initialize_darwin_inferior): Rename to ...
9990         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9991         * darwin-nat.h: Include "inf-child.h".
9992         (darwin_nat_target): New class.
9993         (darwin_complete_target): Delete.
9994         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9995         (darwin_target): New.
9996         (i386_darwin_fetch_inferior_registers)
9997         (i386_darwin_store_inferior_registers): Refactor as methods of
9998         darwin_nat_target.
9999         (darwin_complete_target): Delete, with ...
10000         (_initialize_i386_darwin_nat): ... bits factored out here.
10001
10002         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10003         (the_alpha_linux_nat_target): New.
10004         (alpha_linux_register_u_offset): Refactor as
10005         alpha_linux_nat_target method.
10006         (_initialize_alpha_linux_nat): Adjust.
10007         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10008         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10009         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10010         methods of linux_nat_trad_target.
10011         (linux_trad_target): Delete.
10012         * linux-nat-trad.h (linux_trad_target): Delete function.
10013         (linux_nat_trad_target): New class.
10014         * mips-linux-nat.c (mips_linux_nat_target): New class.
10015         (super_fetch_registers, super_store_registers, super_close):
10016         Delete.
10017         (the_mips_linux_nat_target): New.
10018         (mips64_linux_regsets_fetch_registers)
10019         (mips64_linux_regsets_store_registers)
10020         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10021         (mips_linux_register_u_offset, mips_linux_read_description)
10022         (mips_linux_can_use_hw_breakpoint)
10023         (mips_linux_stopped_by_watchpoint)
10024         (mips_linux_stopped_data_address)
10025         (mips_linux_region_ok_for_hw_watchpoint)
10026         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10027         (mips_linux_close): Refactor as methods of mips_linux_nat.
10028         (_initialize_mips_linux_nat): Adjust to C++ification.
10029
10030         * aix-thread.c (aix_thread_target): New class.
10031         (aix_thread_ops): Now an aix_thread_target.
10032         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10033         (aix_thread_fetch_registers, aix_thread_store_registers)
10034         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10035         (aix_thread_thread_alive, aix_thread_pid_to_str)
10036         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10037         Refactor as methods of aix_thread_target.
10038         (init_aix_thread_ops): Delete.
10039         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10040         and complete_target_initialization.
10041         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10042         (rs6000_nat_target): New class.
10043         (the_rs6000_nat_target): New.
10044         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10045         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10046         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10047         (super_create_inferior): Delete.
10048         (_initialize_rs6000_nat): Adjust to C++ification.
10049
10050         * arm-linux-nat.c (arm_linux_nat_target): New class.
10051         (the_arm_linux_nat_target): New.
10052         (arm_linux_fetch_inferior_registers)
10053         (arm_linux_store_inferior_registers, arm_linux_read_description)
10054         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10055         (arm_linux_remove_hw_breakpoint)
10056         (arm_linux_region_ok_for_hw_watchpoint)
10057         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10058         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10059         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10060         arm_linux_nat_target.
10061         (_initialize_arm_linux_nat): Adjust to C++ification.
10062
10063         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10064         (the_aarch64_linux_nat_target): New.
10065         (aarch64_linux_fetch_inferior_registers)
10066         (aarch64_linux_store_inferior_registers)
10067         (aarch64_linux_child_post_startup_inferior)
10068         (aarch64_linux_read_description)
10069         (aarch64_linux_can_use_hw_breakpoint)
10070         (aarch64_linux_insert_hw_breakpoint)
10071         (aarch64_linux_remove_hw_breakpoint)
10072         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10073         (aarch64_linux_region_ok_for_hw_watchpoint)
10074         (aarch64_linux_stopped_data_address)
10075         (aarch64_linux_stopped_by_watchpoint)
10076         (aarch64_linux_watchpoint_addr_within_range)
10077         (aarch64_linux_can_do_single_step): Refactor as methods of
10078         aarch64_linux_nat_target.
10079         (super_post_startup_inferior): Delete.
10080         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10081
10082         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10083         (the_hppa_linux_nat_target): New.
10084         (hppa_linux_fetch_inferior_registers)
10085         (hppa_linux_store_inferior_registers): Refactor as methods of
10086         hppa_linux_nat_target.
10087         (_initialize_hppa_linux_nat): Adjust to C++ification.
10088
10089         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10090         (the_ia64_linux_nat_target): New.
10091         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10092         (ia64_linux_stopped_data_address)
10093         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10094         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10095         ia64_linux_nat_target methods.
10096         (super_xfer_partial): Delete.
10097         (_initialize_ia64_linux_nat): Adjust to C++ification.
10098
10099         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10100         (the_m32r_linux_nat_target): New.
10101         (m32r_linux_fetch_inferior_registers)
10102         (m32r_linux_store_inferior_registers): Refactor as
10103         m32r_linux_nat_target methods.
10104         (_initialize_m32r_linux_nat): Adjust to C++ification.
10105
10106         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10107         (the_m68k_linux_nat_target): New.
10108         (m68k_linux_fetch_inferior_registers)
10109         (m68k_linux_store_inferior_registers): Refactor as
10110         m68k_linux_nat_target methods.
10111         (_initialize_m68k_linux_nat): Adjust to C++ification.
10112
10113         * s390-linux-nat.c (s390_linux_nat_target): New class.
10114         (the_s390_linux_nat_target): New.
10115         (s390_linux_fetch_inferior_registers)
10116         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10117         (s390_insert_watchpoint, s390_remove_watchpoint)
10118         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10119         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10120         (s390_auxv_parse, s390_read_description): Refactor as methods of
10121         s390_linux_nat_target.
10122         (_initialize_s390_nat): Adjust to C++ification.
10123
10124         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10125         (the_sparc_linux_nat_target): New.
10126         (_initialize_sparc_linux_nat): Adjust to C++ification.
10127         * sparc-nat.c (sparc_fetch_inferior_registers)
10128         (sparc_store_inferior_registers): Remove target_ops parameter.
10129         * sparc-nat.h (sparc_fetch_inferior_registers)
10130         (sparc_store_inferior_registers): Remove target_ops parameter.
10131         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10132         (the_sparc64_linux_nat_target): New.
10133         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10134
10135         * spu-linux-nat.c (spu_linux_nat_target): New class.
10136         (the_spu_linux_nat_target): New.
10137         (spu_child_post_startup_inferior, spu_child_post_attach)
10138         (spu_child_wait, spu_fetch_inferior_registers)
10139         (spu_store_inferior_registers, spu_xfer_partial)
10140         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10141         methods.
10142         (_initialize_spu_nat): Adjust to C++ification.
10143
10144         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10145         (the_tilegx_linux_nat_target): New.
10146         (fetch_inferior_registers, store_inferior_registers):
10147         Refactor as methods.
10148         (_initialize_tile_linux_nat): Adjust to C++ification.
10149
10150         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10151         (the_xtensa_linux_nat_target): New.
10152         (xtensa_linux_fetch_inferior_registers)
10153         (xtensa_linux_store_inferior_registers): Refactor as
10154         xtensa_linux_nat_target methods.
10155         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10156
10157         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10158         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10159         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10160         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10161         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10162         (fbsd_stopped_by_sw_breakpoint)
10163         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10164         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10165         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10166         (fbsd_post_startup_inferior, fbsd_post_attach)
10167         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10168         (fbsd_set_syscall_catchpoint)
10169         (super_xfer_partial, super_resume, super_wait)
10170         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10171         (fbsd_handle_debug_trap): Remove target_ops parameter.
10172         (fbsd_nat_add_target): Delete.
10173         * fbsd-nat.h: Include "inf-ptrace.h".
10174         (fbsd_nat_add_target): Delete.
10175         (USE_SIGTRAP_SIGINFO): Define.
10176         (fbsd_nat_target): New class.
10177
10178         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10179         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10180         (amd64bsd_target): Delete.
10181         * amd64-bsd-nat.h: New file.
10182         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10183         "x86-bsd-nat.h".
10184         (amd64_fbsd_nat_target): New class.
10185         (the_amd64_fbsd_nat_target): New.
10186         (amd64fbsd_read_description): Refactor as method of
10187         amd64_fbsd_nat_target.
10188         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10189         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10190         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10191         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10192         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10193         (i386bsd_target): Delete.
10194         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10195         (i386bsd_fetch_inferior_registers)
10196         (i386bsd_store_inferior_registers): Declare.
10197         (i386_bsd_nat_target): New class.
10198         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10199         (the_i386_fbsd_nat_target): New.
10200         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10201         i386_fbsd_nat_target methods.
10202         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10203         (_initialize_i386fbsd_nat): Adjust to C++ification.
10204         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10205         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10206         (_initialize_x86_bsd_nat): Adjust to C++ification.
10207         * x86-bsd-nat.h: Include "x86-nat.h".
10208         (x86bsd_target): Delete declaration.
10209         (x86bsd_nat_target): New class.
10210
10211         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10212         (the_aarch64_fbsd_nat_target): New.
10213         (aarch64_fbsd_fetch_inferior_registers)
10214         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10215         aarch64_fbsd_nat_target.
10216         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10217         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10218         (the_alpha_bsd_nat_target): New.
10219         (alphabsd_fetch_inferior_registers)
10220         (alphabsd_store_inferior_registers): Refactor as
10221         alpha_bsd_nat_target methods.
10222         (_initialize_alphabsd_nat): Refactor as methods of
10223         alpha_bsd_nat_target.
10224         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10225         (the_amd64_nbsd_nat_target): New.
10226         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10227         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10228         (the_amd64_obsd_nat_target): New.
10229         (_initialize_amd64obsd_nat): Adjust to C++ification.
10230         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10231         (the_arm_fbsd_nat_target): New.
10232         (arm_fbsd_fetch_inferior_registers)
10233         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10234         (_initialize_arm_fbsd_nat): Refactor as methods of
10235         arm_fbsd_nat_target.
10236         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10237         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10238         (the_arm_netbsd_nat_target): New.
10239         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10240         arm_netbsd_nat_target.
10241         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10242         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10243         (the_hppa_nbsd_nat_target): New.
10244         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10245         hppa_nbsd_nat_target methods.
10246         (_initialize_hppanbsd_nat): Adjust to C++ification.
10247         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10248         (the_hppa_obsd_nat_target): New.
10249         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10250         methods of hppa_obsd_nat_target.
10251         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10252         add_target.
10253         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10254         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10255         add_target.
10256         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10257         (_initialize_i386obsd_nat): Use add_target.
10258         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10259         (the_m68k_bsd_nat_target): New.
10260         (m68kbsd_fetch_inferior_registers)
10261         (m68kbsd_store_inferior_registers): Refactor as methods of
10262         m68k_bsd_nat_target.
10263         (_initialize_m68kbsd_nat): Adjust to C++ification.
10264         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10265         (the_mips_fbsd_nat_target): New.
10266         (mips_fbsd_fetch_inferior_registers)
10267         (mips_fbsd_store_inferior_registers): Refactor as methods of
10268         mips_fbsd_nat_target.
10269         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10270         add_target.
10271         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10272         (the_mips_nbsd_nat_target): New.
10273         (mipsnbsd_fetch_inferior_registers)
10274         (mipsnbsd_store_inferior_registers): Refactor as methods of
10275         mips_nbsd_nat_target.
10276         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10277         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10278         (the_mips64_obsd_nat_target): New.
10279         (mips64obsd_fetch_inferior_registers)
10280         (mips64obsd_store_inferior_registers): Refactor as methods of
10281         mips64_obsd_nat_target.
10282         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10283         add_target.
10284         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10285         nbsd_nat_target.
10286         * nbsd-nat.h: Include "inf-ptrace.h".
10287         (nbsd_nat_target): New class.
10288         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10289         (obsd_wait): Refactor as methods of obsd_nat_target.
10290         (obsd_add_target): Delete.
10291         * obsd-nat.h: Include "inf-ptrace.h".
10292         (obsd_nat_target): New class.
10293         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10294         (the_ppc_fbsd_nat_target): New.
10295         (ppcfbsd_fetch_inferior_registers)
10296         (ppcfbsd_store_inferior_registers): Refactor as methods of
10297         ppc_fbsd_nat_target.
10298         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10299         add_target.
10300         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10301         (the_ppc_nbsd_nat_target): New.
10302         (ppcnbsd_fetch_inferior_registers)
10303         (ppcnbsd_store_inferior_registers): Refactor as methods of
10304         ppc_nbsd_nat_target.
10305         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10306         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10307         (the_ppc_obsd_nat_target): New.
10308         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10309         methods of ppc_obsd_nat_target.
10310         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10311         add_target.
10312         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10313         (the_sh_nbsd_nat_target): New.
10314         (shnbsd_fetch_inferior_registers)
10315         (shnbsd_store_inferior_registers): Refactor as methods of
10316         sh_nbsd_nat_target.
10317         (_initialize_shnbsd_nat): Adjust to C++ification.
10318         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10319         (inf_ptrace_xfer_partial): Delete.
10320         (sparc_xfer_partial, sparc_target): Delete.
10321         * sparc-nat.h (sparc_fetch_inferior_registers)
10322         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10323         (sparc_target): Delete function declaration.
10324         (sparc_target): New template class.
10325         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10326         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10327         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10328         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10329         add_target.
10330         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10331         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10332         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10333         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10334         add_target.
10335         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10336         (the_vax_bsd_nat_target): New.
10337         (vaxbsd_fetch_inferior_registers)
10338         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10339         methods.
10340         (_initialize_vaxbsd_nat): Adjust to C++ification.
10341
10342         * bsd-kvm.c (bsd_kvm_target): New class.
10343         (bsd_kvm_ops): Now a bsd_kvm_target.
10344         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10345         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10346         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10347         bsd_kvm_target.
10348         (bsd_kvm_return_one): Delete.
10349         (bsd_kvm_add_target): Adjust to C++ification.
10350
10351         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10352         (nto_procfs_target_procfs): New classes.
10353         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10354         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10355         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10356         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10357         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10358         (procfs_remove_hw_breakpoint, procfs_resume)
10359         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10360         (procfs_kill_inferior, procfs_store_registers)
10361         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10362         as methods of nto_procfs_target.
10363         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10364         (nto_native_ops): Delete.
10365         (procfs_open, procfs_native_open): Delete.
10366         (nto_native_ops): Now an nto_procfs_target_native.
10367         (init_procfs_targets): Adjust to C++ification.
10368         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10369         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10370         Refactor as methods of nto_procfs_target.
10371
10372         * go32-nat.c (go32_nat_target): New class.
10373         (the_go32_nat_target): New.
10374         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10375         (go32_store_registers, go32_xfer_partial, go32_files_info)
10376         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10377         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10378         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10379         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10380         (go32_target): Delete.
10381         (_initialize_go32_nat): Adjust to C++ification.
10382
10383         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10384         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10385         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10386         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10387         gnu_nat_target.
10388         (gnu_target): Delete.
10389         * gnu-nat.h (gnu_target): Delete.
10390         (gnu_nat_target): New class.
10391         * i386-gnu-nat.c (gnu_base_target): New.
10392         (i386_gnu_nat_target): New class.
10393         (the_i386_gnu_nat_target): New.
10394         (_initialize_i386gnu_nat): Adjust to C++ification.
10395
10396 2018-05-02  Pedro Alves  <palves@redhat.com>
10397
10398         * bfd-target.c (target_bfd_xclose): Rename to ...
10399         (target_bfd_close): ... this.
10400         (target_bfd_reopen): Adjust.
10401         * target.c (target_close): Remove references to to_xclose.
10402         * target.h (target_ops::to_xclose): Delete.
10403         (target_ops::to_close): Update comments.
10404
10405 2018-05-02  Pedro Alves  <palves@redhat.com>
10406
10407         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10408         "linux-nat.h".
10409         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10410         * inf-ptrace.c (inf_ptrace_register_u_offset)
10411         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10412         (inf_ptrace_store_register, inf_ptrace_store_registers)
10413         (inf_ptrace_trad_target): Move to ...
10414         * linux-nat-trad.c: ... this new file.
10415         * linux-nat-trad.h: New file.
10416         * linux-nat.c (linux_target_install_ops): Make extern.
10417         (linux_trad_target): Delete.
10418         * linux-nat.h (linux_trad_target): Delete declaration.
10419         (linux_target_install_ops): Declare.
10420         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10421         "linux-nat.h".
10422
10423 2018-05-02  Pedro Alves  <palves@redhat.com>
10424
10425         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10426         procfs_target/add_target here.
10427         * procfs.c (procfs_target): Make static.
10428         (_initialize_procfs): Call add_target here.
10429         * procfs.h (struct target_ops): Remove forward declaration.
10430         (procfs_target): Remove declaration.
10431         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10432
10433 2018-05-02  Pedro Alves  <palves@redhat.com>
10434
10435         * procfs.c (procfs_stopped_by_watchpoint)
10436         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10437         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10438         Forward declare.
10439         (procfs_use_watchpoints): Delete, move contents...
10440         (procfs_target): ... here.
10441         * procfs.h (procfs_use_watchpoints): Delete declaration.
10442         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10443         procfs_use_watchpoints.
10444         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10445         procfs_use_watchpoints.
10446
10447 2018-05-02  Tom Tromey  <tom@tromey.com>
10448
10449         PR python/20084:
10450         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10451         and var_zuinteger_unlimited.
10452         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10453         and PARAM_ZUINTEGER_UNLIMITED.
10454         (set_parameter_value): Handle var_zuinteger and
10455         var_zuinteger_unlimited.
10456         (add_setshow_generic): Likewise.
10457         (parmpy_init): Likewise.
10458
10459 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10460
10461         PR rust/23124
10462         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10463         pointer is not null before dereferencing it.
10464
10465 2018-04-30  Tom Tromey  <tom@tromey.com>
10466
10467         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10468         is_mi_like_p.
10469
10470 2018-04-30  Tom Tromey  <tom@tromey.com>
10471
10472         * breakpoint.c (mention): Remove use of is_mi_like_p.
10473         (print_mention_ranged_breakpoint): Likewise.
10474         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10475         of is_mi_like_p.
10476
10477 2018-04-30  Tom Tromey  <tom@tromey.com>
10478
10479         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10480
10481 2018-04-30  Tom Tromey  <tom@tromey.com>
10482
10483         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10484         (info_spu_event_command): Remove some uses of is_mi_like_p.
10485
10486 2018-04-30  Tom Tromey  <tom@tromey.com>
10487
10488         * python/py-framefilter.c (py_print_single_arg)
10489         (enumerate_locals, py_print_args, py_print_frame): Remove some
10490         uses of is_mi_like_p.
10491
10492 2018-04-30  Tom Tromey  <tom@tromey.com>
10493
10494         * ui-out.c: Update.
10495         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10496         * ui-out.h (ui_out::is_mi_like_p): Now const.
10497         (ui_out::do_is_mi_like_p): Now const.
10498         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10499
10500 2018-04-30  Tom Tromey  <tom@tromey.com>
10501
10502         * varobj.c (varobj_set_visualizer): Use new_reference.
10503         * python/python.c (gdbpy_decode_line): Use new_reference.
10504         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10505         new_reference.
10506
10507 2018-04-30  Tom Tromey  <tom@tromey.com>
10508
10509         * varobj.c (install_new_value): Use new_reference.
10510         * value.h (value_incref): Return void.  Swap intro comment with
10511         value_decref.
10512         * value.c (set_value_parent): Use new_reference.
10513         (value_incref): Return void.  Update intro comment.
10514         (release_value): Use new_reference.
10515         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10516
10517 2018-04-30  Tom Tromey  <tom@tromey.com>
10518
10519         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10520         * gdb_bfd.h (new_bfd_ref): Remove.
10521         (gdb_bfd_open): Update comment.
10522         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10523         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10524         (gdb_bfd_fdopenr): Use new_reference.
10525         * exec.c (exec_file_attach): Use new_reference.
10526
10527 2018-04-30  Tom Tromey  <tom@tromey.com>
10528
10529         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10530         method.
10531
10532 2018-04-30  Tom Tromey  <tom@tromey.com>
10533
10534         * jit.c (jit_read_code_entry): Use type_align.
10535         * i386-tdep.c (i386_gdbarch_init): Don't call
10536         set_gdbarch_long_long_align_bit.
10537         * gdbarch.sh: Remove long_long_align_bit.
10538         * gdbarch.c, gdbarch.h: Rebuild.
10539         * arc-tdep.c (arc_type_align): New function.
10540         (arc_gdbarch_init): Use arc_type_align.  Don't call
10541         set_gdbarch_long_long_align_bit.
10542
10543 2018-04-30  Tom Tromey  <tom@tromey.com>
10544
10545         * rust-lang.c (rust_type_alignment): Remove.
10546         (rust_composite_type): Use type_align.
10547
10548 2018-04-30  Tom Tromey  <tom@tromey.com>
10549
10550         * NEWS: Mention Type.align.
10551         * python/py-type.c (typy_get_alignof): New function.
10552         (type_object_getset): Add "alignof".
10553
10554 2018-04-30  Tom Tromey  <tom@tromey.com>
10555
10556         PR exp/17095:
10557         * NEWS: Update.
10558         * std-operator.def (UNOP_ALIGNOF): New operator.
10559         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10560         New.
10561         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10562         * c-lang.c (c_op_print_tab): Add alignof.
10563         * c-exp.y (ALIGNOF): New token.
10564         (exp): Add "ALIGNOF" production.
10565         (ident_tokens): Add _Alignof and alignof.
10566
10567 2018-04-30  Tom Tromey  <tom@tromey.com>
10568
10569         * i386-tdep.c (i386_type_align): New function.
10570         (i386_gdbarch_init): Update.
10571         * gdbarch.sh (type_align): New method.
10572         * gdbarch.c, gdbarch.h: Rebuild.
10573         * arch-utils.h (default_type_align): Declare.
10574         * arch-utils.c (default_type_align): New function.
10575         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10576         (struct type) <align_log2>: New field.
10577         <instance_flags>: Now a bitfield.
10578         (TYPE_RAW_ALIGN): New macro.
10579         (type_align, type_raw_align, set_type_align): Declare.
10580         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10581         functions.
10582         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10583         (get_alignment, maybe_set_alignment): New functions.
10584         (read_structure_type, read_enumeration_type, read_array_type)
10585         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10586         (read_subrange_type, read_base_type): Set type alignment.
10587
10588 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10589
10590         * dwarf2read.c (read_index_from_section): Use bool.
10591
10592 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10593
10594         PR gdb/22950
10595         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10596         with #ifdef.
10597
10598 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10599
10600         PR build/22873
10601         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10602         last step, and do it atomically.
10603
10604 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10605
10606         * compile/compile-c-types.c (convert_int, convert_float):
10607         Update for C FE v1.
10608
10609 2018-04-27  Tom Tromey  <tom@tromey.com>
10610
10611         PR rust/22545:
10612         * rust-lang.c (rust_inclusive_range_type_p): New function.
10613         (rust_range): Handle inclusive ranges.
10614         (rust_compute_range): Likewise.
10615         * rust-exp.y (struct rust_op) <inclusive>: New field.
10616         (DOTDOTEQ): New constant.
10617         (range_expr): Add "..=" productions.
10618         (operator_tokens): Add "..=" token.
10619         (ast_range): Add "inclusive" parameter.
10620         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10621         ranges.
10622         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10623         bounds values.
10624         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10625         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10626         Update comments.
10627         * expprint.c (print_subexp_standard): Handle new bounds values.
10628         (dump_subexp_body_standard): Likewise.
10629
10630 2018-04-27  Tom Tromey  <tom@tromey.com>
10631
10632         * configure: Rebuild.
10633         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10634         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10635         "OVERRIDE".
10636         (class symbol_needs_eval_context): Likewise.
10637         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10638         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10639         "virtual".
10640         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10641         "override".
10642         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10643         * aarch64-tdep.c (instruction_reader::read): Use "override".
10644         (instruction_reader_test::read): Likewise.
10645         * arm-tdep.c (instruction_reader::read): Use "override".
10646         (instruction_reader_thumb::read): Likewise.
10647
10648 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10649
10650         PR remote/9665
10651         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10652         instead of remote_send.
10653         (remote_send): Remove.
10654
10655 2018-04-26  Pedro Alves  <palves@redhat.com>
10656
10657         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10658         find_function_start_sal instead of find_pc_line.
10659
10660 2018-04-26  Pedro Alves  <palves@redhat.com>
10661
10662         * breakpoint.c (set_breakpoint_location_function): Handle
10663         mst_data_gnu_ifunc.
10664         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10665         * elfread.c (elf_symtab_read): Give data symbols with
10666         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10667         (elf_rel_plt_read): Update comment.
10668         * linespec.c (convert_linespec_to_sals): Handle
10669         mst_data_gnu_ifunc.
10670         (minsym_found): Handle mst_data_gnu_ifunc.
10671         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10672         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10673         * parse.c (find_minsym_type_and_address): Handle
10674         mst_data_gnu_ifunc.
10675         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10676         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10677         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10678         comment.
10679         <mst_data_gnu_ifunc>: New enumerator.
10680
10681 2018-04-26  Pedro Alves  <palves@redhat.com>
10682
10683         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10684         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10685         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10686         Handle it.
10687         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10688         (lookup_minimal_symbol_by_pc): Adjust.
10689         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10690         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10691         * minsyms.h (lookup_msym_prefer): New enum.
10692         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10693         parameter by a lookup_msym_prefer parameter.
10694
10695 2018-04-26  Pedro Alves  <palves@redhat.com>
10696
10697         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10698         ends in "@plt" instead of looking at the symbol's section.
10699
10700 2018-04-26  Pedro Alves  <palves@redhat.com>
10701
10702         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10703         all references.
10704         (find_pc_partial_function_gnu_ifunc): Rename to ...
10705         (find_pc_partial_function): ... this, and remove references to
10706         'is_gnu_ifunc_p'.
10707         (find_pc_partial_function): Delete old implementation.
10708         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10709
10710 2018-04-26  Pedro Alves  <palves@redhat.com>
10711
10712         * linespec.c (struct bound_minimal_symbol_search_key): New.
10713         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10714         skip first line if we found a GNU ifunc minimal symbol by name.
10715         (compare_msymbols): Change parameters to work with a destructured
10716         lhs minsym.
10717         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10718         functions.
10719
10720 2018-04-26  Pedro Alves  <palves@redhat.com>
10721
10722         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10723         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10724         address/name.
10725         (add_location_to_breakpoint): Store the minsym and the objfile in
10726         the breakpoint location.
10727         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10728         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10729         Record the minsym in the sal.
10730         * symtab.h (symtab_and_line) <msymbol>: New field.
10731
10732 2018-04-26  Pedro Alves  <palves@redhat.com>
10733
10734         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10735         unless we actually resolved the ifunc.
10736
10737 2018-04-26  Pedro Alves  <palves@redhat.com>
10738
10739         * c-exp.y (variable production): Prefer ifunc minsyms over
10740         regular function symbols.
10741         * symtab.c (find_gnu_ifunc): New function.
10742         * minsyms.h (lookup_msym_prefer): New enum.
10743         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10744         parameter by a lookup_msym_prefer parameter.
10745         * symtab.h (find_gnu_ifunc): New declaration.
10746
10747 2018-04-26  Pedro Alves  <palves@redhat.com>
10748
10749         * blockframe.c (find_gnu_ifunc_target_type): New function.
10750         (find_function_type): New.
10751         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10752         return a value with a memory address.
10753         (eval_call): For calls to GNU ifunc functions, try to find the
10754         type of the target function from the type that the resolver
10755         returns.
10756         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10757         symbols.
10758         * infcall.c (find_function_return_type): Delete.
10759         (find_function_addr): Add 'function_type' parameter.  For calls to
10760         GNU ifunc functions, try to find the type of the target function
10761         from the type that the resolver returns, and return it via
10762         FUNCTION_TYPE.
10763         (call_function_by_hand_dummy): Adjust to use the function type
10764         returned by find_function_addr.
10765         (find_function_addr): Add 'function_type' parameter and move
10766         description here.
10767         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10768         declarations.
10769
10770 2018-04-26  Pedro Alves  <palves@redhat.com>
10771
10772         * c-exp.y (variable production): Skip finding an alias for ifunc
10773         symbols.
10774
10775 2018-04-26  Pedro Alves  <palves@redhat.com>
10776
10777         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10778
10779 2018-04-25  Pedro Alves  <palves@redhat.com>
10780
10781         * infcmd.c (kill_command): Print the pid as string, not the whole
10782         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10783         message.
10784         * remote.c (remote_detach_1): Print the pid as string, not the
10785         whole thread's ptid.
10786
10787 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10788             Sergio Durigan Junior  <sergiodj@redhat.com>
10789             Pedro Alves  <palves@redhat.com>
10790
10791         * infcmd.c (kill_command): Print message when inferior has
10792         been killed.
10793         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10794         '1'.
10795         (add_inferior): Improve message printed when
10796         'print_inferior_events' is on.
10797         (exit_inferior): Remove message printed when
10798         'print_inferior_events' is on.
10799         (detach_inferior): Improve message printed when
10800         'print_inferior_events' is on.
10801         (initialize_inferiors): Use 'add_inferior_silent' to set
10802         'current_inferior_'.
10803         * inferior.h (print_inferior_events): Declare here as
10804         'extern'.
10805         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10806         '[Detaching...]' messages when 'print_inferior_events' is on.
10807         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10808         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10809         'Detaching after fork from child...', replace it by '... from
10810         parent...'.
10811         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10812         prefix/suffix when printing 'Detaching...' messages.  Print
10813         them when 'print_inferior_events' is on.
10814         * remote.c (remote_detach_1): Print message when detaching
10815         from inferior and '!is_fork_parent'.
10816
10817 2018-04-24  Tom Tromey  <tom@tromey.com>
10818
10819         * cli-out.h: Reindent.
10820
10821 2018-04-24  Tom Tromey  <tom@tromey.com>
10822
10823         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10824         (cli_ui_out::do_field_string): Use fputs_filtered.
10825         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10826
10827 2018-04-23  Tom Tromey  <tom@tromey.com>
10828
10829         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10830         gdb::unique_xmalloc_ptr.
10831
10832 2018-04-23  Tom Tromey  <tom@tromey.com>
10833
10834         * configure: Rebuild.
10835
10836 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10837
10838         PR gdb/23095
10839         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10840         prepare_for_testing.  Set normal_bp to r_debug_state if target
10841         is bsd.
10842
10843 2018-04-21  Pedro Alves  <palves@redhat.com>
10844             Rajendra SY  <rajendra.sy@gmail.com>
10845
10846         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10847         * remote.c (extended_remote_attach): In all-stop mode, mark the
10848         thread as executing.
10849
10850 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10851
10852         * thread.c (thread_apply_all_command): Fix comment.
10853         (thread_command): Fix comment.
10854
10855 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10856
10857         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10858         parameter.
10859         * features/aarch64-core.c (create_feature_aarch64_core):
10860         Regenerate.
10861         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10862         Likewise.
10863         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10864         Likewise.
10865         * features/i386/32bit-avx512.c
10866         (create_feature_i386_32bit_avx512): Likewise.
10867         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10868         Likewise.
10869         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10870         Likewise.
10871         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10872         Likewise.
10873         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10874         Likewise.
10875         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10876         Likewise.
10877         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10878         Likewise.
10879         * features/i386/64bit-avx512.c
10880         (create_feature_i386_64bit_avx512): Likewise.
10881         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10882         Likewise.
10883         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10884         Likewise.
10885         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10886         Likewise.
10887         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10888         Likewise.
10889         * features/i386/64bit-segments.c
10890         (create_feature_i386_64bit_segments): Likewise.
10891         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10892         Likewise.
10893         * features/i386/x32-core.c
10894         (create_feature_i386_x32_core): Likewise.
10895         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10896         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10897         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10898         * target-descriptions.c: In generated code, don't pass xml
10899         filename.
10900
10901 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10902
10903         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10904         (print_xml_feature::visit_post): Likewise.
10905         (print_xml_feature::visit): Likewise.
10906         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10907         (print_xml_feature): Add new class.
10908         * regformats/regdat.sh: Null xmltarget on feature targets.
10909         * target-descriptions.c (struct target_desc): Add xmltarget.
10910         (maintenance_check_tdesc_xml_convert): Add unittest function.
10911         (tdesc_get_features_xml): Add function to get xml.
10912         (maintenance_check_xml_descriptions): Test xml generation.
10913         * xml-tdesc.c (string_read_description_xml): Add function.
10914         * xml-tdesc.h (string_read_description_xml): Add declaration.
10915
10916 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10917
10918         * features/Makefile: Add feature marker to targets with new style
10919         target descriptions.
10920         * regformats/aarch64.dat: Regenerate.
10921         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10922         * regformats/i386/amd64-avx-linux.dat: Likewise.
10923         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10924         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10925         * regformats/i386/amd64-linux.dat: Likewise.
10926         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10927         * regformats/i386/amd64.dat: Likewise.
10928         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10929         * regformats/i386/i386-avx-linux.dat: Likewise.
10930         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10931         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10932         * regformats/i386/i386-linux.dat: Likewise.
10933         * regformats/i386/i386-mmx-linux.dat: Likewise.
10934         * regformats/i386/i386-mpx-linux.dat: Likewise.
10935         * regformats/i386/i386.dat: Likewise.
10936         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10937         * regformats/i386/x32-avx-linux.dat: Likewise.
10938         * regformats/i386/x32-linux.dat: Likewise.
10939         * regformats/tic6x-c62x-linux.dat: Likewise.
10940         * regformats/tic6x-c64x-linux.dat: Likewise.
10941         * regformats/tic6x-c64xp-linux.dat: Likewise.
10942         * regformats/regdat.sh: Parse feature marker.
10943
10944 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10945
10946         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10947         (tdesc_osabi_name): Likewise.
10948         * target-descriptions.c (tdesc_architecture_name): Add new
10949         function.
10950         (tdesc_osabi_name): Likewise.
10951
10952 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10953
10954         * common/tdesc.c (tdesc_predefined_type): Move to here.
10955         (tdesc_named_type): Likewise.
10956         (tdesc_create_vector): Likewise.
10957         (tdesc_create_struct): Likewise.
10958         (tdesc_set_struct_size): Likewise.
10959         (tdesc_create_union): Likewise.
10960         (tdesc_create_flags): Likewise.
10961         (tdesc_create_enum): Likewise.
10962         (tdesc_add_field): Likewise.
10963         (tdesc_add_typed_bitfield): Likewise.
10964         (tdesc_add_bitfield): Likewise.
10965         (tdesc_add_flag): Likewise.
10966         (tdesc_add_enum_value): Likewise.
10967         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10968         (struct tdesc_type_vector): Likewise.
10969         (struct tdesc_type_field): Likewise.
10970         (struct tdesc_type_with_fields): Likewise.
10971         (tdesc_create_enum): Add declaration.
10972         (tdesc_add_typed_bitfield): Likewise.
10973         (tdesc_add_enum_value): Likewise.
10974         * target-descriptions.c (tdesc_type_field): Move from here.
10975         (tdesc_type_builtin): Likewise.
10976         (tdesc_type_vector): Likewise.
10977         (tdesc_type_with_fields): Likewise.
10978         (tdesc_predefined_types): Likewise.
10979         (tdesc_named_type): Likewise.
10980         (tdesc_create_vector): Likewise.
10981         (tdesc_create_struct): Likewise.
10982         (tdesc_set_struct_size): Likewise.
10983         (tdesc_create_union): Likewise.
10984         (tdesc_create_flags): Likewise.
10985         (tdesc_create_enum): Likewise.
10986         (tdesc_add_field): Likewise.
10987         (tdesc_add_typed_bitfield): Likewise.
10988         (tdesc_add_bitfield): Likewise.
10989         (tdesc_add_flag): Likewise.
10990         (tdesc_add_enum_value): Likewise.
10991         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10992         (tdesc_add_typed_bitfield): Likewise.
10993         (tdesc_add_enum_value): Likewise.
10994
10995 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10996
10997         * common/tdesc.c (tdesc_feature::accept): Move to here.
10998         (tdesc_feature::operator==): Likewise.
10999         (tdesc_create_reg): Likewise.
11000         * common/tdesc.h (tdesc_type_kind): Likewise.
11001         (struct tdesc_type): Likewise.
11002         (struct tdesc_feature): Likewise.
11003         * regformats/regdat.sh: Create a feature.
11004         * target-descriptions.c (tdesc_type_kind): Move from here.
11005         (tdesc_type): Likewise.
11006         (tdesc_type_up): Likewise.
11007         (tdesc_feature): Likewise.
11008         (tdesc_create_reg): Likewise.
11009
11010 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11011
11012         * Makefile.in: Add arch/tdesc.c
11013         * common/tdesc.c: New file.
11014         * common/tdesc.h (tdesc_element_visitor): Move to here.
11015         (tdesc_element): Likewise.
11016         (tdesc_reg): Likewise.
11017         (tdesc_reg_up): Likewise.
11018         * regformats/regdef.h (reg): Add offset to constructors.
11019         * target-descriptions.c (tdesc_element_visitor): Move from here.
11020         (tdesc_element): Likewise.
11021         (tdesc_reg): Likewise.
11022         (tdesc_reg_up): Likewise.
11023
11024 2018-04-17  Tom Tromey  <tom@tromey.com>
11025
11026         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11027         discriminant field.
11028
11029 2018-04-17  Tom Tromey  <tom@tromey.com>
11030
11031         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11032
11033 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11034
11035         * symtab.c (print_symbol_info): Skip printing filename and line
11036         number when `last' is NULL.
11037         (symtab_symbol_info): Use empty string instead of NULL for first
11038         invocation of print_symbol_info.
11039         (rbreak_command): Pass NULL to `last' parameter of
11040         print_symbol_info.
11041
11042 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11043
11044         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11045         instead of nullptr.
11046
11047 2018-04-16  Pedro Alves  <palves@redhat.com>
11048
11049         * MAINTAINERS (sh): Remove.
11050         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11051         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11052         (ALLDEPFILES): Remove sh64-tdep.c.
11053         * NEWS: Mentions that support for SH-5/SH64 is removed.
11054         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11055         (sh*-*-openbsd*): Ditto.
11056         (sh64-*-elf*): Remove.
11057         (sh*): Remove.
11058         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11059         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11060         * sh-tdep.c: No longer include "sh64-tdep.h".
11061         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11062         * sh64-tdep.c, sh64-tdep.h: Remove files.
11063
11064 2018-04-16  Pedro Alves  <palves@redhat.com>
11065
11066         * MAINTAINERS: Remove m88k.
11067         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11068         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11069         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11070         * NEWS: Mention that support for m88k was removed.
11071         * configure.host (m88*-*-*): Remove support.
11072         * configure.nat (m88k-*-*): Remove support.
11073         * configure.tgt (m88*-*-openbsd*): Remove.
11074         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11075
11076 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11077
11078         * configure.tgt (x86_tobjs): New variable.
11079         (amd64_tobjs, i386_tobjs): Use it.
11080
11081 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11082
11083         * symtab.c (print_symbol_info): Precede the symbol definition by
11084         the line number when available.
11085         * NEWS: Advertise this enhancement.
11086
11087 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11088
11089         * NEWS (New options): announce set/show record btrace cpu.
11090         * btrace.c: Include record-btrace.h.
11091         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11092         the vendor is unknown.
11093         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11094         Maybe overwrite the btrace configuration's cpu.
11095         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11096         (btrace_fetch): Add cpu parameter.  Update callers.
11097         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11098         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11099         errata workarounds if the vendor is unknown.
11100         * python/py-record-btrace.c: Include record-btrace.h.
11101         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11102         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11103         * record-btrace.c (record_btrace_cpu_state_kind): New.
11104         (record_btrace_cpu): New.
11105         (set_record_btrace_cpu_cmdlist): New.
11106         (record_btrace_get_cpu): New.
11107         (require_btrace_thread, record_btrace_info)
11108         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11109         (cmd_set_record_btrace_cpu_none): New.
11110         (cmd_set_record_btrace_cpu_auto): New.
11111         (cmd_set_record_btrace_cpu): New.
11112         (cmd_show_record_btrace_cpu): New.
11113         (_initialize_record_btrace): Initialize set/show record btrace cpu
11114         commands.
11115         * record-btrace.h (record_btrace_get_cpu): New.
11116
11117 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11118
11119         * record.c (set_record_command): Fix typo in message.
11120
11121 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11122
11123         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11124
11125 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11126
11127         * infrun.c (process_event_stop_test): Call
11128         gdbarch_in_indirect_branch_thunk.
11129         * gdbarch.sh (in_indirect_branch_thunk): New.
11130         * gdbarch.c: Regenerated.
11131         * gdbarch.h: Regenerated.
11132         * x86-tdep.h: New.
11133         * x86-tdep.c: New.
11134         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11135         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11136         (ALLDEPFILES): Add x86-tdep.c.
11137         * arch-utils.h (default_in_indirect_branch_thunk): New.
11138         * arch-utils.c (default_in_indirect_branch_thunk): New.
11139         * i386-tdep: Include x86-tdep.h.
11140         (i386_in_indirect_branch_thunk): New.
11141         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11142         function.
11143         * amd64-tdep: Include x86-tdep.h.
11144         (amd64_in_indirect_branch_thunk): New.
11145         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11146
11147 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11148
11149         PR gdb/23053
11150         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11151         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11152         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11153         regression.
11154
11155 2018-04-12  Tom Tromey  <tom@tromey.com>
11156
11157         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11158         (rust_evaluate_subexp): Likewise.
11159
11160 2018-04-12  Pedro Alves  <palves@redhat.com>
11161
11162         * procfs.c (procfs_detach): Make forward declaration's prototype
11163         match definition's protototype.
11164         (proc_get_LDT_entry): Remove stale do_cleanups call.
11165
11166 2018-04-12  Pedro Alves  <palves@redhat.com>
11167
11168         * target.h (target_ops::to_has_exited): Delete.
11169         (target_has_exited): Delete.
11170         * target-delegates.c: Regenerate.
11171
11172 2018-04-11  Pedro Alves  <palves@redhat.com>
11173
11174         * target.c (fileio_fh_t::t): Add comment.
11175         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11176         (target_fileio_close): Handle a NULL target.
11177         (invalidate_fileio_fh): New.
11178         (target_close): Call it.
11179         * remote.c (remote_hostio_send_command): No longer check whether
11180         remote_desc is open.
11181
11182 2018-04-11  Pedro Alves  <palves@redhat.com>
11183
11184         * target.c (fileio_fh_t): Make it a named struct instead of a
11185         typedef.
11186         (fileio_fh_t::is_closed): New method.
11187         (DEF_VEC_O (fileio_fh_t)): Remove.
11188         (fileio_fhandles): Now a std::vector.
11189         (is_closed_fileio_fh): Delete.
11190         (acquire_fileio_fd): Adjust.  Rename parameters.
11191         (release_fileio_fd): Adjust.
11192         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11193         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11194         (target_fileio_close): Adjust.
11195
11196 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11197
11198         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11199         index.
11200
11201 2018-04-10  Pedro Alves  <palves@redhat.com>
11202
11203         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11204         (scoped_finish_thread_state): New class.
11205         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11206         cleanup.
11207         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11208         (fetch_inferior_event, normal_stop): Likewise.
11209         * thread.c (finish_thread_state_cleanup): Delete.
11210
11211 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11212             Pedro Alves  <palves@redhat.com>
11213
11214         * value.c: Include "selftest.h" and "common/array-view.h".
11215         (struct range) <operator ==>: New.
11216         (test_ranges_contain): New.
11217         (check_ranges_vector): New.
11218         (test_insert_into_bit_range_vector): New.
11219         (_initialize_values): Register selftests.
11220         * common/array-view.h (operator==, operator!=): New.
11221
11222 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11223
11224         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11225         an iterator.
11226         * inline-frame.c: Include <algorithm>.
11227         (struct inline_state): Add constructor.
11228         (inline_state_s): Remove.
11229         (DEF_VEC_O(inline_state_s)): Remove.
11230         (inline_states): Change type to std::vector.
11231         (find_inline_frame_state): Adjust to std::vector.
11232         (allocate_inline_frame_state): Remove.
11233         (clear_inline_frame_state): Adjust to std::vector.
11234         (skip_inline_frames): Adjust to std::vector.
11235
11236 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11237
11238         * tracepoint.h (struct trace_state_variable): Add constructor.
11239         <name>: Change type to std::string.
11240         * tracepoint.c (tsv_s): Remove.
11241         (DEF_VEC_O(tsv_s)): Remove.
11242         (tvariables): Change to std::vector.
11243         (create_trace_state_variable): Adjust to std::vector.
11244         (find_trace_state_variable): Likewise.
11245         (find_trace_state_variable_by_number): Likewise.
11246         (delete_trace_state_variable): Likewise.
11247         (trace_variable_command): Adjust to std::string.
11248         (delete_trace_variable_command): Likewise.
11249         (tvariables_info_1): Adjust to std::vector.
11250         (save_trace_state_variables): Likewise.
11251         (start_tracing): Likewise.
11252         (merge_uploaded_trace_state_variables): Adjust to std::vector
11253         and std::string.
11254         * target.h (struct target_ops)
11255         <to_download_trace_state_variable>: Pass reference to
11256         trace_state_variable.
11257         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11258         * target-delegates.c: Re-generate.
11259         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11260         (mi_tsv_deleted): Likewise.
11261         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11262         * remote.c (remote_download_trace_state_variable): Change
11263         pointer to reference and adjust.
11264         * make-target-delegates (parse_argtypes): Handle references.
11265         (write_function_header): Likewise.
11266         (munge_type): Likewise.
11267
11268 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11269
11270         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11271         string_view-selftests.c.
11272         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11273         testsuite.
11274         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11275         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11276         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11277         * unittests/basic_string_view/element_access/char/1.cc:
11278         Likewise.
11279         * unittests/basic_string_view/element_access/char/empty.cc:
11280         Likewise.
11281         * unittests/basic_string_view/element_access/char/front_back.cc:
11282         Likewise.
11283         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11284         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11285         Likewise.
11286         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11287         Likewise.
11288         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11289         Likewise.
11290         * unittests/basic_string_view/operations/compare/char/1.cc:
11291         Likewise.
11292         * unittests/basic_string_view/operations/compare/char/13650.cc:
11293         Likewise.
11294         * unittests/basic_string_view/operations/copy/char/1.cc:
11295         Likewise.
11296         * unittests/basic_string_view/operations/data/char/1.cc:
11297         Likewise.
11298         * unittests/basic_string_view/operations/find/char/1.cc:
11299         Likewise.
11300         * unittests/basic_string_view/operations/find/char/2.cc:
11301         Likewise.
11302         * unittests/basic_string_view/operations/find/char/3.cc:
11303         Likewise.
11304         * unittests/basic_string_view/operations/find/char/4.cc:
11305         Likewise.
11306         * unittests/basic_string_view/operations/rfind/char/1.cc:
11307         Likewise.
11308         * unittests/basic_string_view/operations/rfind/char/2.cc:
11309         Likewise.
11310         * unittests/basic_string_view/operations/rfind/char/3.cc:
11311         Likewise.
11312         * unittests/basic_string_view/operations/substr/char/1.cc:
11313         Likewise.
11314         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11315         * unittests/string_view-selftests.c: New file.
11316
11317 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11318
11319         * unittests/basic_string_view/capacity/1.cc: New file.
11320         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11321         * unittests/basic_string_view/cons/char/1.cc: New file.
11322         * unittests/basic_string_view/cons/char/2.cc: New file.
11323         * unittests/basic_string_view/cons/char/3.cc: New file.
11324         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11325         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11326         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11327         * unittests/basic_string_view/element_access/char/1.cc: New file.
11328         * unittests/basic_string_view/element_access/char/2.cc: New file.
11329         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11330         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11331         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11332         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11333         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11334         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11335         * unittests/basic_string_view/include.cc: New file.
11336         * unittests/basic_string_view/inserters/char/1.cc: New file.
11337         * unittests/basic_string_view/inserters/char/2.cc: New file.
11338         * unittests/basic_string_view/inserters/char/3.cc: New file.
11339         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11340         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11341         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11342         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11343         * unittests/basic_string_view/literals/types.cc: New file.
11344         * unittests/basic_string_view/literals/values.cc: New file.
11345         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11346         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11347         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11348         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11349         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11350         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11351         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11352         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11353         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11354         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11355         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11356         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11357         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11358         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11359         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11360         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11361         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11362         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11363         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11364         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11365         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11366         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11367         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11368         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11369         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11370         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11371         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11372         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11373         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11374         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11375         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11376         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11377         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11378         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11379         * unittests/basic_string_view/operators/char/2.cc: New file.
11380         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11381         * unittests/basic_string_view/range_access/char/1.cc: New file.
11382         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11383         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11384         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11385         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11386         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11387         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11388         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11389         * unittests/basic_string_view/typedefs.cc: New file.
11390         * unittests/basic_string_view/types/1.cc: New file.
11391
11392 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11393
11394         * common/gdb_string_view.h: Remove libstdc++ implementation
11395         details, adjust to gdb reality.
11396         * common/gdb_string_view.tcc: Likewise.
11397         * cli/cli-script.c (struct string_view): Remove.
11398         (user_args) <m_args>: Change element type to gdb::string_view.
11399         (user_args::insert_args): Adjust.
11400
11401 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11402
11403         * common/gdb_string_view.h: New file.
11404         * common/gdb_string_view.tcc: New file.
11405
11406 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11407
11408         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11409         * configure: Re-generate.
11410
11411 2018-04-09  Pedro Alves  <palves@redhat.com>
11412
11413         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11414         (set_target_gdbarch): Call
11415         gdb::observers::architecture_changed.notify instead of
11416         observer_notify_architecture_changed.
11417
11418 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11419
11420         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11421         (do_restore_current_traceframe_cleanup): Remove.
11422         (restore_current_traceframe_cleanup_dtor): Remove.
11423         (make_cleanup_restore_current_traceframe): Remove.
11424         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11425         New.
11426         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11427         * infrun.c (fetch_inferior_event): Use
11428         scoped_restore_current_traceframe.
11429
11430 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11431
11432         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11433         Remove.
11434         <n_allocated_type_units>: Remove.
11435         <all_type_units>: Change to std::vector.
11436         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11437         to std::vector change.
11438         (dwarf2_per_objfile::get_cutu): Likewise.
11439         (dwarf2_per_objfile::get_tu): Likewise.
11440         (create_signatured_type_table_from_index): Likewise.
11441         (create_signatured_type_table_from_debug_names): Likewise.
11442         (dw2_symtab_iter_next): Likewise.
11443         (dw2_print_stats): Likewise.
11444         (dw2_expand_all_symtabs): Likewise.
11445         (dw2_expand_marked_cus): Likewise.
11446         (dw2_debug_names_iterator::next): Likewise.
11447         (dwarf2_initialize_objfile): Likewise.
11448         (add_signatured_type_cu_to_table): Likewise.
11449         (create_all_type_units): Likewise.
11450         (add_type_unit): Likewise.
11451         (struct tu_abbrev_offset): Add constructor.
11452         (build_type_psymtabs_1): Adjust to std::vector change.
11453         (print_tu_stats): Likewise.
11454         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11455         (write_debug_names): Likewise.
11456
11457 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11458
11459         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11460         Make an std::vector.
11461         <n_comp_units>: Remove.
11462         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11463         to std::vector change.
11464         (dwarf2_per_objfile::get_cutu): Likewise.
11465         (dwarf2_per_objfile::get_cu): Likewise.
11466         (create_cus_from_index): Likewise.
11467         (create_addrmap_from_index): Likewise.
11468         (create_addrmap_from_aranges): Likewise.
11469         (dwarf2_read_index): Likewise.
11470         (dw2_find_last_source_symtab): Likewise.
11471         (dw2_map_symtabs_matching_filename): Likewise.
11472         (dw2_symtab_iter_next): Likewise.
11473         (dw2_print_stats): Likewise.
11474         (dw2_expand_all_symtabs): Likewise.
11475         (dw2_expand_symtabs_with_fullname): Likewise.
11476         (dw2_expand_marked_cus): Likewise.
11477         (dw2_map_symbol_filenames): Likewise.
11478         (create_cus_from_debug_names): Likewise.
11479         (dwarf2_read_debug_names): Likewise.
11480         (dw2_debug_names_iterator::next): Likewise.
11481         (dwarf2_initialize_objfile): Likewise.
11482         (set_partial_user): Likewise.
11483         (dwarf2_build_psymtabs_hard): Likewise.
11484         (read_comp_units_from_section): Remove arguments, adjust to
11485         std::vector change.
11486         (create_all_comp_units): Adjust to std::vector and
11487         read_comp_units_from_section changes.
11488         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11489         change.
11490         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11491         (psyms_seen_size): Likewise.
11492         (write_gdbindex): Likewise.
11493         (write_debug_names): Likewise.
11494
11495 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11496
11497         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11498         with dwarf2_per_objfile.
11499         (create_cus_from_index): Likewise.
11500         (create_signatured_type_table_from_index): Likewise.
11501         (dwarf2_read_index): Likewise.
11502         (dwarf2_initialize_objfile): Likewise.
11503         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11504         per_cu rather than get_dwarf2_per_objfile.
11505
11506 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11507
11508         * dwarf2read.h (struct signatured_type): Forward declare.
11509         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11510         New methods.
11511         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11512         (dw2_get_cutu): ...this.
11513         (dwarf2_per_objfile::get_cu): Rename from...
11514         (dw2_get_cu): ...this.
11515         (dwarf2_per_objfile::get_tu): New.
11516         (create_addrmap_from_index): Adjust.
11517         (create_addrmap_from_aranges): Adjust.
11518         (dw2_find_last_source_symtab): Adjust.
11519         (dw2_map_symtabs_matching_filename): Adjust.
11520         (dw2_symtab_iter_next): Adjust.
11521         (dw2_print_stats): Adjust.
11522         (dw2_expand_all_symtabs): Adjust.
11523         (dw2_expand_symtabs_with_fullname): Adjust.
11524         (dw2_expand_marked_cus): Adjust.
11525         (dw_expand_symtabs_matching_file_matcher): Adjust.
11526         (dw2_map_symbol_filenames): Adjust.
11527         (dw2_debug_names_iterator::next): Adjust.
11528         (dwarf2_initialize_objfile): Adjust.
11529         (set_partial_user): Adjust.
11530         (dwarf2_build_psymtabs_hard): Adjust.
11531
11532 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11533
11534         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11535         Remove unused variables.
11536         (dw2_map_symtabs_matching_filename): Likewise.
11537         (dwarf2_record_block_ranges): Likewise.
11538         (dwarf2_read_addr_index): Likewise.
11539         (follow_die_offset): Likewise.
11540
11541 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11542
11543         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11544         to symbol_file_add_main.
11545
11546 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11547
11548         PR mi/22299
11549         * mi/mi-console.c (do_fputc_async_safe): New.
11550         (mi_console_file::write_async_safe): New.
11551         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11552         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11553         New.
11554         * ui-file.c (ui_file::putstrn): Adjust call to
11555         fputstrn_unfiltered.
11556         * utils.c (printchar): Replace do_fputs and do_fprintf
11557         parameters by do_fputc.
11558         (fputstr_filtered): Adjust call to printchar.
11559         (fputstr_unfiltered): Likewise.
11560         (fputstrn_filtered): Likewise.
11561         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11562         printchar.
11563         * utils.h (do_fputc_ftype): New typedef.
11564         (fputstrn_unfiltered): Add do_fputc parameter.
11565
11566 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11567
11568         * regformats/i386/i386-avx.dat: Remove.
11569
11570 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11571
11572         PR gdb/22979
11573         * amd64-tdep.c (amd64_none_init_abi): New function.
11574         (amd64_x32_none_init_abi): New function.
11575         (_initialize_amd64_tdep): Register handlers for x86-64 and
11576         x64_32 with GDB_OSABI_NONE.
11577         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11578         GDB_OSABI_NONE osabi.
11579
11580 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11581
11582         PR gdb/22980
11583         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11584         GDB_OSABI_NONE.
11585         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11586         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11587
11588 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11589
11590         * common/byte-vector.h (char_vector): New type.
11591         * target.h (target_read_alloc): Return
11592         gdb::optional<byte_vector>.
11593         (target_read_stralloc): Return gdb::optional<char_vector>.
11594         (target_get_osdata): Return gdb::optional<char_vector>.
11595         * target.c (target_read_alloc_1): Templatize.  Replacement
11596         manual memory management with vector.
11597         (target_read_alloc): Change return type, adjust.
11598         (target_read_stralloc): Change return type, adjust.
11599         (target_get_osdata): Change return type, adjust.
11600         * auxv.c (struct auxv_info) <length>: Remove.
11601         <data>: Change type to gdb::optional<byte_vector>.
11602         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11603         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11604         (target_auxv_search): Adjust.
11605         (fprint_target_auxv): Adjust.
11606         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11607         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11608         (linux_make_corefile_notes): Adjust.
11609         * osdata.c (get_osdata): Adjust.
11610         * remote.c (remote_get_threads_with_qxfer): Adjust.
11611         (remote_memory_map): Adjust.
11612         (remote_traceframe_info): Adjust.
11613         (btrace_read_config): Adjust.
11614         (remote_read_btrace): Adjust.
11615         (remote_pid_to_exec_file): Adjust.
11616         * solib-aix.c (solib_aix_get_library_list): Adjust.
11617         * solib-dsbt.c (decode_loadmap): Don't free buf.
11618         (dsbt_get_initial_loadmaps): Adjust.
11619         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11620         * solib-target.c (solib_target_current_sos): Adjust.
11621         * tracepoint.c (sdata_make_value): Adjust.
11622         * xml-support.c (xinclude_start_include): Adjust.
11623         (xml_fetch_content_from_file): Adjust.
11624         * xml-support.h (xml_fetch_another): Change return type.
11625         (xml_fetch_content_from_file): Change return type.
11626         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11627         * xml-tdesc.c (file_read_description_xml): Adjust.
11628         (fetch_available_features_from_target): Change return type.
11629         (target_fetch_description_xml): Adjust.
11630         (target_read_description_xml): Adjust.
11631
11632 2018-04-06  Tom Tromey  <tom@tromey.com>
11633
11634         * value.c (~value): Update.
11635         (struct value) <contents>: Now unique_xmalloc_ptr.
11636         (value_contents_bits_eq, allocate_value_contents)
11637         (value_contents_raw, value_contents_all_raw)
11638         (value_contents_for_printing, value_contents_for_printing_const)
11639         (set_value_enclosing_type): Update.
11640
11641 2018-04-06  Tom Tromey  <tom@tromey.com>
11642
11643         * value.c (range_s): Remove typedef, VEC.
11644         (struct range): Add operator<.
11645         (range_lessthan): Remove.
11646         (ranges_contain): Change type.
11647         (~value): Update.
11648         (struct value) <unavailable, optimized_out>: Now std::vector.
11649         (value_entirely_available)
11650         (value_entirely_covered_by_range_vector)
11651         (value_entirely_unavailable, value_entirely_optimized_out):
11652         Update.
11653         (insert_into_bit_range_vector): Change argument type.
11654         (find_first_range_overlap): Likewise.
11655         (struct ranges_and_idx, value_contents_bits_eq)
11656         (require_not_optimized_out, require_available): Update.
11657         (ranges_copy_adjusted): Change argument types.
11658         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11659
11660 2018-04-06  Tom Tromey  <tom@tromey.com>
11661
11662         * value.c (~value): Update.
11663         (struct value) <parent>: Now a value_ref_ptr.
11664         (value_parent, set_value_parent, value_address, value_copy):
11665         Update.
11666
11667 2018-04-06  Tom Tromey  <tom@tromey.com>
11668
11669         * value.c (struct value): Add constructor, destructor, and member
11670         initializers.
11671         (allocate_value_lazy, value_decref): Update.
11672
11673 2018-04-06  Tom Tromey  <tom@tromey.com>
11674
11675         * value.c (struct value) <released, next>: Remove.
11676         (all_values): Now a std::vector.
11677         (allocate_value_lazy): Update.
11678         (value_next): Remove.
11679         (value_mark, value_free_to_mark, release_value)
11680         (value_release_to_mark): Update.
11681
11682 2018-04-06  Tom Tromey  <tom@tromey.com>
11683
11684         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11685         (free_value_chain): Remove.
11686         * value.c (free_value_chain): Remove.
11687         (value_release_to_mark): Return a std::vector.
11688         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11689         std::vector.
11690         (check_condition): Update.
11691         * eval.c (fetch_subexp_value): Change "val_chain" to a
11692         std::vector.
11693         * breakpoint.c (update_watchpoint): Update.
11694         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11695
11696 2018-04-06  Tom Tromey  <tom@tromey.com>
11697
11698         * value.h (free_all_values): Remove.
11699         * value.c (free_all_values): Remove.
11700
11701 2018-04-06  Tom Tromey  <tom@tromey.com>
11702
11703         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11704         (value_history_chain, value_history_count): Remove.
11705         (value_history): New global.
11706         (record_latest_value, access_value_history, show_values)
11707         (preserve_values): Update.
11708
11709 2018-04-06  Tom Tromey  <tom@tromey.com>
11710
11711         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11712         * varobj.c (varobj_set_display_format, varobj_set_value)
11713         (install_default_visualizer, construct_visualizer)
11714         (install_new_value, ~varobj, varobj_get_value_type)
11715         (my_value_of_variable, varobj_editable_p): Update.
11716         * c-varobj.c (c_describe_child, c_value_of_variable)
11717         (cplus_number_of_children, cplus_describe_child): Update.
11718         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11719         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11720         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11721
11722 2018-04-06  Tom Tromey  <tom@tromey.com>
11723
11724         * printcmd.c (last_examine_address): Change type to
11725         value_ref_ptr.
11726         (do_examine, x_command): Update.
11727
11728 2018-04-06  Tom Tromey  <tom@tromey.com>
11729
11730         * value.c (release_value): Update.
11731         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11732         (struct bpstats) <val>: Now a value_ref_ptr.
11733         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11734         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11735         (~watchpoint, print_it_watchpoint, watch_command_1)
11736         (invalidate_bp_value_on_memory_change): Update.
11737
11738 2018-04-06  Tom Tromey  <tom@tromey.com>
11739
11740         * varobj.c (varobj_clear_saved_item)
11741         (update_dynamic_varobj_children, install_new_value, ~varobj):
11742         Update.
11743         * value.h (value_incref): Move declaration earlier.
11744         (value_decref): Rename from value_free.
11745         (struct value_ref_policy): New.
11746         (value_ref_ptr): New typedef.
11747         (struct value_deleter): Remove.
11748         (gdb_value_up): Remove typedef.
11749         (release_value): Change return type.
11750         (release_value_or_incref): Remove.
11751         * value.c (set_value_parent): Update.
11752         (value_incref): Change return type.
11753         (value_decref): Rename from value_free.
11754         (value_free_to_mark, free_all_values, free_value_chain): Update.
11755         (release_value): Return value_ref_ptr.
11756         (release_value_or_incref): Remove.
11757         (record_latest_value, set_internalvar, clear_internalvar):
11758         Update.
11759         * stack.c (info_frame_command): Don't call value_free.
11760         * python/py-value.c (valpy_dealloc, valpy_new)
11761         (value_to_value_object): Update.
11762         * printcmd.c (do_examine): Update.
11763         * opencl-lang.c (lval_func_free_closure): Update.
11764         * mi/mi-main.c (register_changed_p): Don't call value_free.
11765         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11766         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11767         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11768         value_free.
11769         * guile/scm-value.c (vlscm_free_value_smob)
11770         (vlscm_scm_from_value): Update.
11771         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11772         (frame_unwind_register_unsigned, get_frame_register_bytes)
11773         (put_frame_register_bytes): Don't call value_free.
11774         * findvar.c (address_from_register): Don't call value_free.
11775         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11776         * dwarf2loc.c (entry_data_value_free_closure)
11777         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11778         (dwarf2_evaluate_loc_desc_full): Update.
11779         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11780         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11781         (~watchpoint, watch_command_1)
11782         (invalidate_bp_value_on_memory_change): Update.
11783         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11784
11785 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11786
11787         PR gdb/23022
11788         * warning.m4: Add -Wno-error=deprecated-register.
11789         * configure: Re-generate.
11790
11791 2018-04-05  Tom Tromey  <tom@tromey.com>
11792
11793         * linespec.h: Remove include of "vec.h".
11794
11795 2018-04-05  Tom Tromey  <tom@tromey.com>
11796
11797         * linespec.c (typep): Remove typedef.
11798         (find_methods, find_superclass_methods): Take a std::vector.
11799         (find_method): Use std::vector.
11800
11801 2018-04-05  Tom Tromey  <tom@tromey.com>
11802
11803         * utils.c (compare_strings): Remove.
11804         * utils.h (compare_strings): Remove.
11805         * objc-lang.h (find_imps): Update.
11806         * objc-lang.c (find_methods): Take a std::vector.
11807         (uniquify_strings, find_imps): Likewise.
11808         * linespec.c (find_methods): Take a std::vector.
11809         (decode_objc): Use std::vector.
11810         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11811         a std::vector.
11812         (find_method, find_function_symbols): Use std::vector.
11813
11814 2018-04-05  Tom Tromey  <tom@tromey.com>
11815
11816         * completer.c (completion_tracker::completion_tracker): Remove
11817         cast.
11818         (completion_tracker::discard_completions): Likewise.
11819         * breakpoint.c (ambiguous_names_p): Remove cast.
11820         * ada-lang.c (_initialize_ada_language): Remove cast.
11821         * utils.h (streq): Update.
11822         (streq_hash): Add new declaration.
11823         * utils.c (streq): Return bool.
11824         (streq_hash): New function.
11825
11826 2018-04-05  Tom Tromey  <tom@tromey.com>
11827
11828         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11829         Remove a string copy.
11830
11831 2018-04-05  Tom Tromey  <tom@tromey.com>
11832
11833         * linespec.c (filter_results): Use std::vector.
11834         (decode_line_2, decode_line_full): Update.
11835
11836 2018-04-05  Tom Tromey  <tom@tromey.com>
11837
11838         * linespec.c (canonical_to_fullform): Return std::string.
11839         (filter_results): Update.
11840         (struct decode_line_2_item): Add constructor.
11841         <fullform, displayform>: Now std::string.
11842         (decode_line_2_compare_items): Now a std::sort comparator.
11843         (decode_line_2): Update.
11844
11845 2018-04-05  Tom Tromey  <tom@tromey.com>
11846
11847         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11848         (unexpected_linespec_error): Update.
11849         (linespec_parse_basic, parse_linespec): Update.
11850
11851 2018-04-05  Tom Tromey  <tom@tromey.com>
11852
11853         * linespec.c (linespec_parse_basic): Reindent.
11854
11855 2018-04-05  Tom Tromey  <tom@tromey.com>
11856
11857         * minsyms.h (iterate_over_minimal_symbols): Update.
11858         * minsyms.c (iterate_over_minimal_symbols): Take a
11859         gdb::function_view.
11860         * linespec.c (struct collect_minsyms): Remove.
11861         (compare_msyms): Now a std::sort comparator.
11862         (add_minsym): Add parameters.
11863         (search_minsyms_for_name): Update.  Use std::vector.
11864
11865 2018-04-03  Tom Tromey  <tom@tromey.com>
11866
11867         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11868         gdb::byte_vector.
11869
11870 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11871
11872         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11873
11874 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11875
11876         PR gdb/16959
11877         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11878         printing static type.
11879
11880 2018-04-01  Tom Tromey  <tom@tromey.com>
11881
11882         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11883         (rs6000_xfer_shared_libraries): Update.
11884
11885 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11886
11887         * common/gdb_vecs.h (char_ptr): Remove.
11888         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11889
11890 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11891
11892         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11893         with std::vector.
11894         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11895
11896 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11897
11898         * tracepoint.h (struct uploaded_tp): Initialize fields.
11899         <actions, step_actions, cmd_strings>: Change type to
11900         std::vector<char *>.
11901         * tracepoint.c (get_uploaded_tp): Allocate with new.
11902         (free_uploaded_tps): Free with delete.
11903         (parse_tracepoint_definition): Adjust to std::vector change.
11904         * breakpoint.c (read_uploaded_action): Likewise.
11905         (create_tracepoint_from_upload): Likewise.
11906         * ctf.c (ctf_write_uploaded_tp): Likewise.
11907         (SET_ARRAY_FIELD): Likewise.
11908         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11909
11910 2018-03-30  Tom Tromey  <tom@tromey.com>
11911
11912         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11913         std::unique_ptr.
11914         (svr4_keep_data_in_core): Update.
11915         (svr4_read_so_list): Update.
11916
11917 2018-03-30  Tom Tromey  <tom@tromey.com>
11918
11919         * windows-nat.c (handle_output_debug_string, handle_exception):
11920         Update.
11921         * target.h (target_read_string): Update.
11922         * target.c (target_read_string): Change "string" to
11923         unique_xmalloc_ptr.
11924         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11925         Update.
11926         * solib-frv.c (frv_current_sos): Update.
11927         * solib-dsbt.c (dsbt_current_sos): Update.
11928         * solib-darwin.c (darwin_current_sos): Update.
11929         * linux-thread-db.c (inferior_has_bug): Update.
11930         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11931         Update.  Remove alloca.
11932         * ada-lang.c (ada_main_name): Update.
11933
11934 2018-03-30  Tom Tromey  <tom@tromey.com>
11935
11936         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11937         (struct dwo_file_deleter): New.
11938         (dwo_file_up): New typedef.
11939         (open_and_init_dwo_file): Use dwo_file_up.
11940         (free_dwo_file_cleanup): Remove.
11941
11942 2018-03-30  Tom Tromey  <tom@tromey.com>
11943
11944         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11945         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11946
11947 2018-03-30  Tom Tromey  <tom@tromey.com>
11948
11949         * dwarf2read.c (class free_cached_comp_units): New class.
11950         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11951         (free_cached_comp_units): Remove function.
11952
11953 2018-03-30  Tom Tromey  <tom@tromey.com>
11954
11955         * utils.h (make_cleanup_unpush_target): Remove.
11956         * inf-ptrace.c (struct target_unpusher): New.
11957         (target_unpush_up) New typedef.
11958         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11959         target_unpush_up.
11960         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11961
11962 2018-03-27  Tom Tromey  <tom@tromey.com>
11963
11964         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11965
11966 2018-03-27  Pedro Alves  <palves@redhat.com>
11967             Tom Tromey  <tom@tromey.com>
11968
11969         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11970         destructor.  Now a class.
11971         (gdb_readline_wrapper_cleanup): Remove function.
11972         (gdb_readline_wrapper): Remove cleanups.
11973
11974 2018-03-27  Tom Tromey  <tom@tromey.com>
11975
11976         * typeprint.h (struct type_print_options) <local_typedefs,
11977         global_typedefs>: Remove "struct" keyword.
11978         (class typedef_hash_table): New class.
11979         (recursively_update_typedef_hash, add_template_parameters)
11980         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11981         (find_typedef_in_hash): Don't declare.
11982         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11983         (typedef_hash_table::recursively_update): Rename from
11984         recursively_update_typedef_hash.  Now a member.
11985         (typedef_hash_table::add_template_parameters): Rename from
11986         add_template_parameters.  Now a member.
11987         (typedef_hash_table::typedef_hash_table): Now a constructor;
11988         rename from create_typedef_hash.
11989         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11990         rename from free_typedef_hash.
11991         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11992         (do_free_global_table): Remove.
11993         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11994         from copy_type_recursive.
11995         (create_global_typedef_table): Remove.
11996         (typedef_hash_table::find_global_typedef): Now a member of
11997         typedef_hash_table.
11998         (typedef_hash_table::find_typedef): Rename from
11999         find_typedef_in_hash; now a member.
12000         (whatis_exp): Update.
12001         * extension.h (struct ext_lang_type_printers): Add constructor and
12002         destructor.
12003         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12004         declare.
12005         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12006         Now a constructor; rename from start_ext_lang_type_printers.
12007         (ext_lang_type_printers): Now a destructor; rename from
12008         free_ext_lang_type_printers.
12009         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12010         Update.
12011         (c_type_print_base_struct_union): Update.  Remove cleanups.
12012
12013 2018-03-27  Tom Tromey  <tom@tromey.com>
12014
12015         * dwarf-index-write.c: Include <cmath>.
12016
12017 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12018
12019         * NEWS: Add entry describing new "set|show varsize-limit" command.
12020         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12021         command.
12022         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12023         "set variable".
12024
12025 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12026
12027         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12028         dwarf-index-write.c
12029         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12030         * dwarf-index-common.c: New file.
12031         * dwarf-index-common.h: New file.
12032         * dwarf-index-write.c: New file.
12033         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12034         (struct dwarf2_section_info): Move from here.
12035         (dwarf2_section_info_def): Likewise.
12036         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12037         (offset_type): Likewise.
12038         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12039         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12040         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12041         (byte_swap): Likewise.
12042         (MAYBE_SWAP): Likewise.
12043         (dwarf2_per_cu_ptr): Likewise.
12044         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12045         (struct tu_stats): Likewise.
12046         (struct dwarf2_per_objfile): Likewise.
12047         (struct dwarf2_per_cu_data): Likewise.
12048         (struct signatured_type): Likewise.
12049         (sig_type_ptr): Likewise.
12050         (DEF_VEC_P (sig_type_ptr)): Likewise.
12051         (INDEX4_SUFFIX): Likewise.
12052         (INDEX5_SUFFIX): Likewise.
12053         (DEBUG_STR_SUFFIX): Likewise.
12054         (dwarf2_read_section): Make non-static.
12055         (mapped_index_string_hash): Move from here.
12056         (dwarf5_djb_hash): Likewise.
12057         (file_write): Likewise.
12058         (class data_buf): Likewise.
12059         (struct symtab_index_entry): Likewise.
12060         (struct mapped_symtab): Likewise.
12061         (find_slot): Likewise.
12062         (hash_expand): Likewise.
12063         (add_index_entry): Likewise.
12064         (uniquify_cu_indices): Likewise.
12065         (class c_str_view): Likewise.
12066         (class c_str_view_hasher): Likewise.
12067         (class vector_hasher): Likewise.
12068         (write_hash_table): Likewise.
12069         (psym_index_map): Likewise.
12070         (struct addrmap_index_data): Likewise.
12071         (add_address_entry): Likewise.
12072         (add_address_entry_worker): Likewise.
12073         (write_address_map): Likewise.
12074         (symbol_kind): Likewise.
12075         (write_psymbols): Likewise.
12076         (struct signatured_type_index_data): Likewise.
12077         (write_one_signatured_type): Likewise.
12078         (recursively_count_psymbols): Likewise.
12079         (recursively_write_psymbols): Likewise.
12080         (class debug_names): Likewise.
12081         (check_dwarf64_offsets): Likewise.
12082         (psyms_seen_size): Likewise.
12083         (write_gdbindex): Likewise.
12084         (write_debug_names): Likewise.
12085         (assert_file_size): Likewise.
12086         (write_psymtabs_to_index): Likewise.
12087         (save_gdb_index_command): Likewise.
12088         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12089         command.
12090         * dwarf2read.h: New file.
12091
12092 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12093
12094         PR gdb/22670
12095         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12096         symbol name if the CU's language stores symbol names in linkage
12097         format.
12098         * language.h (struct language_defn)
12099         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12100         all instances of this struct.
12101
12102 2018-03-26  Tom Tromey  <tom@tromey.com>
12103
12104         * stack.c (backtrace_command_1): Remove verbose code.
12105
12106 2018-03-26  Tom Tromey  <tom@tromey.com>
12107
12108         * python/py-framefilter.c (py_print_type): Don't catch
12109         exceptions.  Return void.
12110         (py_print_value): Likewise.
12111         (py_print_single_arg): Likewise.
12112         (enumerate_args): Don't catch exceptions.
12113         (py_print_args): Likewise.
12114         (py_print_frame): Likewise.
12115         (gdbpy_apply_frame_filter): Catch exceptions here.
12116
12117 2018-03-26  Tom Tromey  <tom@tromey.com>
12118
12119         * stack.c (_initialize_stack): Remove trailing newlines from help
12120         text.  Add "Usage" line to "backtrace" help.
12121
12122 2018-03-26  Tom Tromey  <tom@tromey.com>
12123
12124         PR python/16486:
12125         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12126
12127 2018-03-26  Tom Tromey  <tom@tromey.com>
12128
12129         * python/py-framefilter.c (py_print_single_arg): Return
12130         EXT_LANG_BT_ERROR from catch.
12131
12132 2018-03-26  Tom Tromey  <tom@tromey.com>
12133
12134         PR backtrace/15584:
12135         * stack.c (backtrace_command_1): Move some code into no-filters
12136         "if".
12137
12138 2018-03-26  Tom Tromey  <tom@tromey.com>
12139
12140         * python/py-framefilter.c (throw_quit_or_print_exception): New
12141         function.
12142         (gdbpy_apply_frame_filter): Use it.
12143
12144 2018-03-26  Tom Tromey  <tom@tromey.com>
12145
12146         PR cli/17716:
12147         * python/py-framefilter.c (py_print_type, py_print_value)
12148         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12149         RETURN_MASK_ERROR.
12150
12151 2018-03-26  Tom Tromey  <tom@tromey.com>
12152
12153         * python/py-framefilter.c (enumerate_args): Use
12154         gdb::unique_xmalloc_ptr.
12155
12156 2018-03-26  Tom Tromey  <tom@tromey.com>
12157
12158         * python/py-framefilter.c (py_print_frame): Return
12159         EXT_LANG_BT_OK.
12160         (gdbpy_apply_frame_filter): Update comment.
12161         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12162         Remove.
12163         <EXT_LANG_BT_NO_FILTERS>: Change value.
12164
12165 2018-03-26  Tom Tromey  <tom@tromey.com>
12166
12167         PR backtrace/15582:
12168         * stack.c (backtrace_command): Parse "hide" argument.
12169         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12170         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12171         constant.
12172
12173 2018-03-26  Tom Tromey  <tom@tromey.com>
12174
12175         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12176         add "flags".
12177         (backtrace_command): Remove "fulltrace", add "flags".
12178
12179 2018-03-26  Tom Tromey  <tom@tromey.com>
12180
12181         * stack.c (backtrace_command): Rewrite command line parsing.
12182
12183 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12184
12185         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12186
12187 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12188
12189         * filename-seen-cache.h: Add include guard.
12190
12191 2018-03-26  Keith Seitz  <keiths@redhat.com>
12192
12193         * symfile.c (place_section): Remove "struct" from section_addr_info
12194         in comment.
12195         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12196         "struct" keyword from section_addr_info.
12197
12198 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12199
12200         * regformats/regdef.h (reg): Add constructors.
12201
12202 2018-03-25  Pedro Alves  <palves@redhat.com>
12203
12204         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12205         if then/else bodies in var_func_name extraction.
12206
12207 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12208
12209         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12210         lookup_minimal_symbol() to find symbol entry.
12211         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12212
12213 2018-03-23  Keith Seitz  <keiths@redhat.com>
12214
12215         PR c++/22968
12216         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12217         nested type definitions for C++, too.
12218
12219 2018-03-23  Tom Tromey  <tom@tromey.com>
12220
12221         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12222         a typedef.
12223         (macho_register_oso): Remove.
12224         (macho_symtab_read): Take a std::vector.
12225         (oso_el_compare_name): Now a std::sort comparator.
12226         (macho_symfile_read_all_oso): Take a std::vector.
12227         (macho_symfile_read): Use std::vector.  Remove cleanups.
12228
12229 2018-03-22  Tom Tromey  <tom@tromey.com>
12230
12231         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12232         (record_full_goto_bookmark): Use std::string.
12233
12234 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12235
12236         PR tdep/18295
12237         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12238         a single mask.
12239
12240 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12241
12242         * rs6000-tdep.c (store_insn_p): New function.
12243         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12244         and cr_reg to their unshifted values. Use store_insn_p to
12245         match LR saves using either R1 or fdata->alloca_reg. Use
12246         store_insn_p to match CR saves. Set alloca_reg_offset
12247         when alloca_reg and framep are set. Remove lr_reg shift
12248         when assigning to fdata->lr_register.
12249
12250 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12251
12252         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12253         command line args instead of emitting a warning.
12254
12255 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12256
12257         * tracepoint.h (struct static_tracepoint_marker): Initialize
12258         fields, define default constructor, move constructor and move
12259         assignment, disable the rest.
12260         <str_id, extra>: Make std::string.
12261         (release_static_tracepoint_marker): Remove.
12262         (free_current_marker): Remove.
12263         * tracepoint.c (free_current_marker): Remove.
12264         (parse_static_tracepoint_marker_definition): Adjust to
12265         std::string, use new hex2str overload.
12266         (release_static_tracepoint_marker): Remove.
12267         (print_one_static_tracepoint_marker): Get marker by reference
12268         and adjust to std::string.
12269         (info_static_tracepoint_markers_command): Adjust to std::vector
12270         changes
12271         * target.h (static_tracepoint_marker_p): Remove typedef.
12272         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12273         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12274         bool.
12275         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12276         * target-debug.h
12277         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12278         (target_debug_print_std_vector_static_tracepoint_marker): New.
12279         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12280         to...
12281         (target_debug_print_static_tracepoint_marker_p): ... this.
12282         * target-delegates.c: Re-generate.
12283         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12284         Make std::string.
12285         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12286         (decode_static_tracepoint_spec): Adjust to std::vector.
12287         (tracepoint_print_one_detail): Adjust to std::string.
12288         (strace_marker_decode_location): Adjust to std::string.
12289         (update_static_tracepoint): Adjust to std::string, remove call
12290         to release_static_tracepoint_marker.
12291         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12292         Adjust to std::vector.
12293         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12294         (remote_static_tracepoint_markers_by_strid): Adjust to
12295         std::vector.
12296         * common/rsp-low.h (hex2str): New overload with explicit count
12297         of bytes.
12298         * common/rsp-low.c (hex2str): New overload with explicit count
12299         of bytes.
12300         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12301         (_initialize_rsp_low_selftests): Add test_hex2str test.
12302         * unittests/tracepoint-selftests.c
12303         (test_parse_static_tracepoint_marker_definition): Adjust to
12304         std::string.
12305
12306 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12307
12308         * tracepoint.c (parse_static_tracepoint_marker_definition):
12309         Consider case where the definition is followed by more
12310         definitions.
12311         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12312         tracepoint-selftests.c.
12313         * unittests/tracepoint-selftests.c: New.
12314
12315 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12316
12317         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12318         Carvalho.
12319
12320 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12321
12322         * symtab.c (find_pc_sect_line): fixed indentation.
12323
12324 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12325
12326         * symtab.c (find_pc_sect_line): now uses binary search.
12327
12328 2018-03-19  Tom Tromey  <tom@tromey.com>
12329
12330         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12331         "IDENT" production.
12332
12333 2018-03-19  Pedro Alves  <palves@redhat.com>
12334             Tom Tromey  <tom@tromey.com>
12335
12336         * unittests/observable-selftests.c: New file.
12337         * common/observable.h: New file.
12338         * observable.h: New file.
12339         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12340         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12341         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12342         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12343         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12344         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12345         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12346         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12347         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12348         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12349         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12350         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12351         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12352         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12353         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12354         tui/tui-interp.c, valops.c: Update all users.
12355         * tui/tui-hooks.c (tui_bp_created_observer)
12356         (tui_bp_deleted_observer, tui_bp_modified_observer)
12357         (tui_inferior_exit_observer, tui_before_prompt_observer)
12358         (tui_normal_stop_observer, tui_register_changed_observer):
12359         Remove.
12360         (tui_observers_token): New global.
12361         (attach_or_detach, tui_attach_detach_observers): New functions.
12362         (tui_install_hooks, tui_remove_hooks): Use
12363         tui_attach_detach_observers.
12364         * record-btrace.c (record_btrace_thread_observer): Remove.
12365         (record_btrace_thread_observer_token): New global.
12366         * observer.sh: Remove.
12367         * observer.c: Rename to observable.c.
12368         * observable.c (namespace gdb_observers): Define new objects.
12369         (observer_debug): Move into gdb_observers namespace.
12370         (struct observer, struct observer_list, xalloc_observer_list_node)
12371         (xfree_observer_list_node, generic_observer_attach)
12372         (generic_observer_detach, generic_observer_notify): Remove.
12373         (_initialize_observer): Update.
12374         Don't include observer.inc.
12375         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12376         (clean mostlyclean): Likewise.
12377         (observer.h, observer.inc): Remove targets.
12378         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12379         (COMMON_SFILES): Use observable.c, not observer.c.
12380         * .gitignore: Remove observer.h.
12381
12382 2018-03-18  Tom Tromey  <tom@tromey.com>
12383
12384         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12385         gdb::def_vector.
12386         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12387
12388 2018-03-17  Tom Tromey  <tom@tromey.com>
12389
12390         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12391
12392 2018-03-17  Tom Tromey  <tom@tromey.com>
12393
12394         * target.c (class scoped_target_fd): New.
12395         (target_fileio_close_cleanup): Remove.
12396         (target_fileio_read_alloc_1): Use scoped_target_fd.
12397
12398 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12399
12400         * silent-rules.mk: New.
12401         * Makefile.in: Include silent-rules.mk
12402         (srcdir, VPATH, top_srcdir): Move up.
12403         (COMPILE): Add ECHO_CXX.
12404         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12405         (init.c): Add ECHO_INIT_C.
12406         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12407         (version.c): Add ECHO_GEN.
12408         (printcmd.o): Add ECHO_CXX.
12409         (target-float.o): Add ECHO_CXX.
12410         (ada-exp.o): Add ECHO_CXX.
12411         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12412         (insight$(EXEEXT)): Add ECHO_CXXLD.
12413         * gnulib/configure.ac: Add AM_SILENT_RULES.
12414         * gnulib/aclocal.m4: Re-generate.
12415         * gnulib/configure: Re-generate.
12416         * gnulib/import/Makefile.in: Re-generate.
12417
12418 2018-03-16  Tom Tromey  <tom@tromey.com>
12419
12420         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12421         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12422         * utils.c (do_free_section_addr_info)
12423         (make_cleanup_free_section_addr_info): Remove.
12424         * symfile.h (struct other_sections): Add constructor.
12425         (struct section_addr_info): Remove.
12426         (section_addr_info): New typedef.
12427         (struct sym_fns) <sym_offsets>: Change type of parameter.
12428         (build_section_addr_info_from_objfile)
12429         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12430         (default_symfile_offsets, symbol_file_add)
12431         (symbol_file_add_from_bfd)
12432         (build_section_addr_info_from_section_table): Update.
12433         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12434         * symfile.c (alloc_section_addr_info): Remove.
12435         (build_section_addr_info_from_section_table): Change return type.
12436         Update.
12437         (build_section_addr_info_from_bfd)
12438         (build_section_addr_info_from_objfile): Likewise.
12439         (free_section_addr_info): Remove.
12440         (relative_addr_info_to_section_offsets): Change type of "addrs".
12441         (addrs_section_compar): Now a std::sort comparator.
12442         (addrs_section_sort): Change return type.
12443         (addr_info_make_relative): Change type of "addrs".  Update.
12444         (default_symfile_offsets, syms_from_objfile_1)
12445         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12446         (symbol_file_add_separate): Update.
12447         (symbol_file_add): Change type of "addrs".  Update.
12448         (add_symbol_file_command): Update.  Remove cleanups.
12449         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12450         cleanups.
12451         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12452         * solib.c (solib_read_symbols): Update.
12453         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12454         * machoread.c (macho_symfile_offsets): Update.
12455         * jit.c (jit_bfd_try_read_symtab): Update.
12456
12457 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12458
12459         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12460         unittests/utils-selftests.c.
12461         * unittests/utils-selftests.c: New file.
12462
12463 2018-03-14  Tom Tromey  <tom@tromey.com>
12464
12465         PR cli/14977:
12466         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12467         for NULL.
12468
12469 2018-03-14  Tom Tromey  <tom@tromey.com>
12470
12471         PR cli/19918:
12472         * printcmd.c (printf_pointer): Allow "-" in format.
12473
12474 2018-03-14  Tom Tromey  <tom@tromey.com>
12475
12476         * printcmd.c (_initialize_printcmd): Add usage to printf.
12477
12478 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12479
12480         * MAINTAINERS: Update my email address.
12481
12482 2018-03-13  Tom Tromey  <tom@tromey.com>
12483
12484         * machoread.c (macho_check_dsym): Change filenamep to a
12485         std::string*.
12486         (macho_symfile_read): Update.
12487         * symfile.c (load_command): Use std::string.
12488
12489 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12490
12491         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12492         to error message string.
12493         (riscv_register_name): Use xsnprintf instead of sprintf.
12494         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12495         internal_error.
12496         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12497         error.
12498         (riscv_push_dummy_call): Likewise.
12499
12500 2018-03-12  Tom Tromey  <tom@tromey.com>
12501
12502         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12503         Use gdb::byte_vector.
12504         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12505
12506 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12507
12508         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12509         parameter type to readable_regcache.
12510         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12511         the declaration.
12512
12513 2018-03-11  Tom Tromey  <tom@tromey.com>
12514
12515         * dwarf2read.c (struct nextfield): Add initializers.
12516         (struct nextfnfield): Remove.
12517         (struct fnfieldlist): Add initializers.  Remove "length" and
12518         "head", use std::vector.
12519         (struct decl_field_list): Remove.
12520         (struct field_info): Add initializers.
12521         <fields, baseclasses>: Now std::vector.
12522         <nbaseclasses, nfnfields, typedef_field_list_count,
12523         nested_types_list_count>: Remove.
12524         (dwarf2_add_field, dwarf2_add_type_defn)
12525         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12526         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12527         (process_structure_scope): Update.
12528
12529 2018-03-11  Tom Tromey  <tom@tromey.com>
12530
12531         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12532         for use by std::sort.
12533         (build_type_psymtabs_1): Use std::vector.
12534
12535 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12536
12537         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12538         and LIBMPFR in the printed configuration.
12539
12540 2018-03-08  Tom Tromey  <tom@tromey.com>
12541
12542         * source.c (get_filename_and_charpos): Use scoped_fd.
12543         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12544         (procfs_pidlist): Likewise.
12545         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12546         (iterate_over_mappings): Likewise.
12547
12548 2018-03-08  Tom Tromey  <tom@tromey.com>
12549
12550         * infcall.c (struct call_return_meta_info)
12551         <stack_temporaries_enabled>: Remove.
12552         (get_call_return_value, call_function_by_hand_dummy): Update.
12553         * thread.c (disable_thread_stack_temporaries): Remove.
12554         (enable_thread_stack_temporaries): Remove.
12555         (thread_stack_temporaries_enabled_p): Return bool.
12556         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12557         (get_last_thread_stack_temporary): Update.
12558         * eval.c (evaluate_subexp): Update.
12559         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12560         class, not a function.
12561         (value_ptr, value_vec): Remove typedefs.
12562         (class thread_info) <stack_temporaries_enabled>: Now bool.
12563         <stack_temporaries>: Now a std::vector.
12564         (thread_stack_temporaries_enabled_p)
12565         (value_in_thread_stack_temporaries): Return bool.
12566
12567 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12568
12569         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12570         (getpkt_or_notif_sane_1): Likewise.
12571
12572 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12573
12574         * build-id.c (build_id_to_debug_bfd): Use std::string.
12575
12576 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12577
12578         * build-id.c (find_separate_debug_file_by_buildid): Return
12579         std::string.
12580         * build-id.h (find_separate_debug_file_by_buildid): Return
12581         std::string.
12582         * coffread.c (coff_symfile_read): Adjust to std::string.
12583         * elfread.c (elf_symfile_read): Adjust to std::string.
12584         * symfile.c (separate_debug_file_exists): Change parameter to
12585         std::string.
12586         (find_separate_debug_file): Return std::string.
12587         (find_separate_debug_file_by_debuglink): Return std::string.
12588         * symfile.h (find_separate_debug_file_by_debuglink): Return
12589         std::string.
12590
12591 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12592
12593         * common/xml-utils.c (xml_escape_text): Move code to...
12594         (xml_escape_text_append): ... this new function.
12595         * common/xml-utils.h (xml_escape_text_append): New declaration.
12596         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12597         New function.
12598         (_initialize_xml_utils): register test_xml_escape_text_append as
12599         a selftest.
12600
12601 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12602
12603         * defs.h: Remove MAX_REGISTER_SIZE.
12604         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12605         asserts.
12606         * python/py-unwind.c (pyuw_sniffer): Likewise.
12607
12608 2018-03-07  Tom Tromey  <tom@tromey.com>
12609
12610         * linux-tdep.c (linux_info_proc): Update.
12611         * target.h (struct target_ops) <to_fileio_readlink>: Return
12612         optional<string>.
12613         (target_fileio_readlink): Return optional<string>.
12614         * remote.c (remote_hostio_readlink): Return optional<string>.
12615         * inf-child.c (inf_child_fileio_readlink): Return
12616         optional<string>.
12617         * target.c (target_fileio_readlink): Return optional<string>.
12618
12619 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12620
12621         * regcache.c (cooked_read_test): Add riscv to the list of
12622         architectures that have a save_reggroup.
12623
12624 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12625
12626         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12627         value is not a dynamic class object.
12628
12629 2018-03-06  Tom Tromey  <tom@tromey.com>
12630
12631         * rust-exp.y: Formatting fixes.
12632
12633 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12634
12635         * riscv-tdep.c (riscv_register_name): Remove target description
12636         support.
12637         (riscv_gdbarch_init): Remove target description check.
12638
12639 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12640
12641         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12642         comment.
12643         * riscv-tdep.h: Likewise.
12644
12645 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12646
12647         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12648         (riscv_pseudo_register_write): Delete.
12649         (riscv_gdbarch_init): Remove all use of pseudo registers.
12650
12651 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12652
12653         * record-btrace.c (btrace_print_lines): Replace cleanup
12654         parameter with RAII equivalents.
12655         (btrace_insn_history): Replace cleanup with RAII equivalents.
12656         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12657         make_cleanup_ui_out_tuple_begin_end): Remove.
12658         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12659         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12660         make_cleanup_ui_out_list_begin_end): Remove.
12661
12662 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12663
12664         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12665         parameter types to std::vector.  Use bool.
12666         (record_btrace_wait): Replace VEC(tp_t) with
12667         std::vector<thread_info *>.
12668         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12669
12670 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12671
12672         * record-btrace.c (record_btrace_disable_callback): Remove.
12673         (struct scoped_btrace_disable): New.
12674         (record_btrace_open): Use scoped_btrace_disable.
12675
12676 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12677
12678         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12679         reading values from registers.
12680
12681 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12682
12683         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12684         where appropriate.
12685
12686 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12687
12688         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12689         change parameter type.  Use GDB's print functions, and use
12690         core_addr_to_string where appropriate.
12691         (riscv_push_dummy_call): Use core_addr_to_string where
12692         appropriate, update call to riscv_print_arg_location, and reindent
12693         a few lines.
12694         (riscv_return_value): Update call to riscv_print_arg_location.
12695
12696 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12697             Tim Newsome <tim@sifive.com>
12698             Albert Ou <a0u@eecs.berkeley.edu>
12699             Darius Rad <darius@bluespec.com>
12700
12701         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12702         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12703         (ALLDEPFILES): Add riscv-tdep.c
12704         * configure.tgt: Add riscv support.
12705         * riscv-tdep.c: New file.
12706         * riscv-tdep.h: New file.
12707         * NEWS: Mention new target.
12708         * MAINTAINERS: Add entry for riscv.
12709
12710 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12711
12712         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12713         fields within aggregates.
12714
12715 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12716
12717         * record-btrace.c (btrace_print_lines): Change type of flags to
12718         gdb_disassembly_flags.
12719
12720 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12721
12722         * fbsd-nat.c: Include "inf-ptrace.h".
12723         (USE_SIGTRAP_SIGINFO): Conditionally define.
12724         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12725         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12726         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12727         function.
12728         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12729         Likewise.
12730         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12731         Likewise.
12732         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12733         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12734         "supports_stopped_by_hw_breakpoint" target methods.
12735
12736 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12737
12738         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12739         * fbsd-nat.c (debug_fbsd_nat): New variable.
12740         (show_fbsd_nat_debug): New function.
12741         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12742         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12743
12744 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12745
12746         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12747         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12748         prototype.
12749         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12750         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12751         method.
12752
12753 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12754
12755         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12756         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12757
12758 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12759
12760         * charset.c (struct charset_vector): New.
12761         (charsets): Change type to charset_vector.
12762         (find_charset_names): Adjust.
12763         (add_one): Adjust.
12764         (_initialize_charset): Adjust.
12765
12766 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12767
12768         * progspace.h (struct program_space) <deleted_solibs>: Change
12769         type to std::vector<std::string>.
12770         * progspace.c (clear_program_space_solib_cache): Adjust.
12771         * breakpoint.c (print_solib_event): Adjust.
12772         (check_status_catch_solib): Adjust.
12773         * solib.c (update_solib_list): Adjust.
12774         * ui-out.h (class ui_out) <field_string>: New overload.
12775         * ui-out.c (ui_out::field_string): New overload.
12776
12777 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12778
12779         * progspace.h (struct program_space): Add constructor and
12780         destructor, initialize fields.
12781         (add_program_space): Remove.
12782         * progspace.c (add_program_space): Rename to...
12783         (program_space::program_space): ... this.
12784         (release_program_space): Rename to...
12785         (program_space::~program_space): ... this.
12786         (delete_program_space): Use delete to delete program_space.
12787         (initialize_progspace): Use new to allocate program_space.
12788         * inferior.c (add_inferior_with_spaces): Likewise.
12789         (clone_inferior_command): Likewise.
12790         * infrun.c (follow_fork_inferior): Likewise.
12791         (handle_vfork_child_exec_or_exit): Likewise.
12792
12793 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12794
12795         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12796         (delim_string_to_char_ptr_vec): Return std::vector of
12797         gdb::unique_xmalloc_ptr.
12798         (dirnames_to_char_ptr_vec_append): Take std::vector of
12799         gdb::unique_xmalloc_ptr.
12800         (dirnames_to_char_ptr_vec): Return std::vector of
12801         gdb::unique_xmalloc_ptr.
12802         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12803         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12804         (delim_string_to_char_ptr_vec): Return an std::vector of
12805         gdb::unique_xmalloc_ptr, adjust the code.
12806         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12807         gdb::unique_xmalloc_ptr, adjust the code.
12808         (dirnames_to_char_ptr_vec): Return an std::vector of
12809         gdb::unique_xmalloc_ptr, adjust the code.
12810         * auto-load.c (auto_load_safe_path_vec): Change type to
12811         std::vector of gdb::unique_xmalloc_ptr.
12812         (auto_load_expand_dir_vars): Return an std::vector of
12813         gdb::unique_xmalloc_ptr, adjust the code.
12814         (auto_load_safe_path_vec_update): Adjust.
12815         (filename_is_in_auto_load_safe_path_vec): Adjust.
12816         (auto_load_objfile_script_1): Adjust.
12817         * build-id.c (build_id_to_debug_bfd): Adjust.
12818         * linux-thread-db.c (thread_db_load_search): Adjust.
12819         * source.c (add_path): Adjust.
12820         (openp): Adjust.
12821         * symfile.c (find_separate_debug_file): Adjust.
12822         * utils.c (do_free_char_ptr_vec): Remove.
12823         (make_cleanup_free_char_ptr_vec): Remove.
12824
12825 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12826
12827         PR gdb/22907
12828         * common/pathstuff.c: Conditionally include "<windows.h>".
12829
12830 2018-03-01  Georg Sauthoff  <mail@georg.so>
12831
12832         PR gdb/22888
12833         * gcore.in: Quote variables and switch interpreter to bash.
12834
12835 2018-03-01  Tom Tromey  <tom@tromey.com>
12836
12837         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12838         assertion.  Add assertion for discriminant_index.
12839         (quirk_rust_enum): Use correct base type name in univariant case.
12840
12841 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12842
12843         * record.c (get_call_history_modifiers): Return a
12844         record_print_flags.
12845         (cmd_record_call_history): Adjust.
12846         * record-btrace.c (record_btrace_call_history): Adjust.
12847         (record_btrace_call_history_range): Adjust.
12848         (record_btrace_call_history_from): Adjust.
12849         * target-debug.h (target_debug_print_record_print_flags): New.
12850         * target-delegates.c: Re-generate.
12851         * target.c (target_call_history): Change flags type.
12852         (target_call_history_from): Likewise.
12853         (target_call_history_range): Likewise.
12854         * target.h (struct target_ops) <target_call_history>: Likewise.
12855         (target_call_history_from): Likewise.
12856         (target_call_history_range): Likewise.
12857
12858 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12859             Simon Marchi  <simon.marchi@polymtl.ca>
12860
12861         * common/common-utils.c: Include "sys/stat.h".
12862         (is_regular_file): Move here from "source.c"; change return
12863         type to "bool".
12864         * common/common-utils.h (is_regular_file): New prototype.
12865         * common/pathstuff.c (contains_dir_separator): New function.
12866         * common/pathstuff.h (contains_dir_separator): New prototype.
12867         * source.c: Don't include "sys/stat.h".
12868         (is_regular_file): Move to "common/common-utils.c".
12869
12870 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12871
12872         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12873         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12874         * auto-load.c: Include "common/pathstuff.h".
12875         * common/common-def.h (current_directory): Move here.
12876         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12877         function.
12878         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12879         prototype.
12880         * common/pathstuff.c: New file.
12881         * common/pathstuff.h: New file.
12882         * compile/compile.c: Include "common/pathstuff.h".
12883         * defs.h (current_directory): Move to "common/common-defs.h".
12884         * dwarf2read.c: Include "common/pathstuff.h".
12885         * exec.c: Likewise.
12886         * guile/scm-safe-call.c: Likewise.
12887         * linux-thread-db.c: Likewise.
12888         * main.c: Likewise.
12889         * nto-tdep.c: Likewise.
12890         * objfiles.c: Likewise.
12891         * source.c: Likewise.
12892         * symtab.c: Likewise.
12893         * utils.c: Include "common/pathstuff.h".
12894         (gdb_realpath): Move to "common/pathstuff.c".
12895         (gdb_realpath_keepfile): Likewise.
12896         (gdb_abspath): Likewise.
12897         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12898         (gdb_realpath_keepfile): Likewise.
12899         (gdb_abspath): Likewise.
12900
12901 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12902
12903         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12904         wildcard process pid for super_resume for kernels with a
12905         specific bug.
12906
12907 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12908
12909         * compile/compile.c (get_args): Add additional comments
12910         explaining function.
12911
12912 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12913             Tom Tromey  <tom@tromey.com>
12914
12915         * target.h (memory_write_request_s): Remove typedef.  Don't define
12916         VEC.
12917         (target_write_memory_blocks): Change argument to std::vector.
12918         (struct memory_write_request): Add constructor.
12919         * target-memory.c (compare_block_starting_address): Return bool.
12920         Change argument types.
12921         (claim_memory): Change arguments to use std::vector.
12922         (split_regular_and_flash_blocks, blocks_to_erase)
12923         (compute_garbled_blocks): Likewise.
12924         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12925         (target_write_memory_blocks): Change argument to std::vector.
12926         * symfile.c (struct load_section_data): Add constructor and
12927         destructor.  Use std::vector for "requests".
12928         (struct load_progress_data): Add initializers.
12929         (load_section_callback): Update.  Use "new".
12930         (clear_memory_write_data): Remove.
12931         (generic_load): Update.
12932
12933 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12934
12935         * arch/aarch64.h: Use common/tdesc.h.
12936
12937 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12938
12939         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12940         architecture with a 64-bit ABI.
12941
12942 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12943
12944         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12945         ahead of target description loading.
12946
12947 2018-02-26  Tom Tromey  <tom@tromey.com>
12948
12949         * stack.c (backtrace_command_1): Update.
12950         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12951         of "flags".
12952         * python/py-framefilter.c (py_print_frame)
12953         (gdbpy_apply_frame_filter): Change type of "flags".
12954         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12955         of "flags".
12956         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12957         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12958         * extension.h (enum frame_filter_flag): Rename from
12959         frame_filter_flags.
12960         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12961         (apply_ext_lang_frame_filter): Change type of "flags".
12962         * extension.c (apply_ext_lang_frame_filter): Change type of
12963         "flags".
12964         * extension-priv.h (struct extension_language_ops)
12965         <apply_frame_filter>: Change type of "flags".
12966
12967 2018-02-26  Tom Tromey  <tom@tromey.com>
12968
12969         PR python/16497:
12970         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12971         off-by-one in py_end computation.
12972         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12973         PRINT_MORE_FRAMES.
12974         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12975         constant.
12976
12977 2018-02-26  Tom Tromey  <tom@tromey.com>
12978
12979         * dwarf2read.c (struct variant_field): New.
12980         (struct nextfield) <variant>: New field.
12981         (dwarf2_add_field): Handle DW_TAG_variant_part.
12982         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12983         discriminated union.
12984         (read_structure_type): Handle DW_TAG_variant_part.
12985         (handle_struct_member_die): New function, extracted from
12986         process_structure_scope.  Handle DW_TAG_variant.
12987         (process_structure_scope): Handle discriminated unions.  Call
12988         handle_struct_member_die.
12989
12990 2018-02-26  Tom Tromey  <tom@tromey.com>
12991
12992         * rust-lang.h (rust_last_path_segment): Declare.
12993         * rust-lang.c (rust_last_path_segment): Now public.  Change
12994         contract.
12995         (struct disr_info): Remove.
12996         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12997         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12998         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12999         (rust_enum_p, rust_enum_variant): New function.
13000         (rust_underscore_fields): Remove "offset" parameter.
13001         (rust_print_enum): New function.
13002         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13003         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13004         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13005         enums.
13006         (rust_internal_print_type): New function, from rust_print_type.
13007         Remove enum code.
13008         (rust_print_type): Call rust_internal_print_type.
13009         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13010         Update enum handling.
13011         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13012         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13013         (rust_union_quirks): New functions.
13014         (process_full_comp_unit, process_full_type_unit): Call
13015         rust_union_quirks.
13016         (process_structure_scope): Update rust_unions if necessary.
13017
13018 2018-02-26  Tom Tromey  <tom@tromey.com>
13019
13020         * value.h (value_union_variant): Declare.
13021         * valops.c (value_union_variant): New function.
13022         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13023         (struct discriminant_info): New.
13024         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13025         enumerator.
13026         (struct main_type) <flag_discriminated_union>: New field.
13027
13028 2018-02-26  Tom Tromey  <tom@tromey.com>
13029
13030         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13031         unittests/unpack-selftests.c.
13032         * unittests/unpack-selftests.c: New file.
13033         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13034
13035 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13036
13037         * dwarf2read.c (struct partial_die_info) <read>: New method.
13038         (read_partial_die): Remove the declaration.
13039         (load_partial_dies): Update.
13040         (partial_die_info::partial_die_info):
13041         (read_partial_die): Change it to partial_die_info::read.
13042
13043 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13044
13045         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13046         (fixup_partial_die): Remove declaration.
13047         (scan_partial_symbols): Update.
13048         (partial_die_parent_scope): Likewise.
13049         (partial_die_full_name): Likewise.
13050         (fixup_partial_die): Change it to partial_die_info::fixup.
13051
13052 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13053
13054         * dwarf2read.c (read_partial_die): Update the declaration.
13055         (load_partial_dies): Caller update.
13056         (read_partial_die): Remove one argument abbrev_len.
13057
13058 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13059
13060         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13061         assignment operator.
13062         (load_partial_dies): Use ctor and copy ctor.
13063         (read_partial_die): Update.
13064         (dwarf2_cu::find_partial_die): Use ctor.
13065
13066 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13067
13068         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13069         (find_partial_die_in_comp_unit): Change it to
13070         dwarf2_cu::find_partial_die.
13071         (find_partial_die): Update.
13072
13073 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13074
13075         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13076         is NULL.
13077
13078 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13079
13080         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13081
13082 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13083
13084         * arch/amd64.h: Use common/tdesc.h.
13085         * arch/i386.c: Likewise.
13086         * arch/i386.h: Likewise.
13087         * arch/tic6x.c: Likewise.
13088         * arch/tdesc.h: Move file from here...
13089         * common/tdesc.h: ...to here.
13090         * features/aarch64-core.c: Regenerate.
13091         * features/aarch64-fpu.c: Regenerate.
13092         * features/i386/32bit-avx.c: Regenerate.
13093         * features/i386/32bit-avx512.c: Regenerate.
13094         * features/i386/32bit-core.c: Regenerate.
13095         * features/i386/32bit-linux.c: Regenerate.
13096         * features/i386/32bit-mpx.c: Regenerate.
13097         * features/i386/32bit-pkeys.c: Regenerate.
13098         * features/i386/32bit-sse.c: Regenerate.
13099         * features/i386/64bit-avx.c: Regenerate.
13100         * features/i386/64bit-avx512.c: Regenerate.
13101         * features/i386/64bit-core.c: Regenerate.
13102         * features/i386/64bit-linux.c: Regenerate.
13103         * features/i386/64bit-mpx.c: Regenerate.
13104         * features/i386/64bit-pkeys.c: Regenerate.
13105         * features/i386/64bit-segments.c: Regenerate.
13106         * features/i386/64bit-sse.c: Regenerate.
13107         * features/i386/x32-core.c: Regenerate.
13108         * features/tic6x-c6xp.c: Regenerate.
13109         * features/tic6x-core.c: Regenerate.
13110         * features/tic6x-gp.c: Regenerate.
13111         * target-descriptions.c: Use common/tdesc.h.
13112         * target-descriptions.h: Likewise.
13113
13114 2018-02-24  Tom Tromey  <tom@tromey.com>
13115
13116         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13117         (try_thread_db_load_from_dir, thread_db_load_search): Use
13118         std::string.
13119         (info_auto_load_libthread_db_compare): Return bool.  Change
13120         argument types.
13121         (info_auto_load_libthread_db): Use std::vector, std::string.
13122         Remove cleanups.
13123
13124 2018-02-24  Tom Tromey  <tom@tromey.com>
13125
13126         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13127         std::string.
13128         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13129         std::string*.
13130         * gdbarch.c: Rebuild.
13131         * gdbarch.h: Rebuild.
13132         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13133         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13134         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13135         std::string*.
13136
13137 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13138
13139         * gdbtypes.h (sect_offset): Change type to uint64_t.
13140         (sect_offset_str): New function.
13141         * dwarf2read.c (create_addrmap_from_aranges): Use
13142         sect_offset_str.
13143         (error_check_comp_unit_head): Likewise.
13144         (create_debug_type_hash_table): Likewise.
13145         (read_cutu_die_from_dwo): Likewise.
13146         (init_cutu_and_read_dies): Likewise.
13147         (init_cutu_and_read_dies_no_follow): Likewise.
13148         (process_psymtab_comp_unit_reader): Likewise.
13149         (partial_die_parent_scope): Likewise.
13150         (peek_die_abbrev): Likewise.
13151         (process_queue): Likewise.
13152         (dwarf2_physname): Likewise.
13153         (read_namespace_alias): Likewise.
13154         (read_import_statement): Likewise.
13155         (create_dwo_cu_reader): Likewise.
13156         (create_cus_hash_table): Likewise.
13157         (lookup_dwo_cutu): Likewise.
13158         (inherit_abstract_dies): Likewise.
13159         (read_func_scope): Likewise.
13160         (read_call_site_scope): Likewise.
13161         (dwarf2_add_member_fn): Likewise.
13162         (read_common_block): Likewise.
13163         (read_module_type): Likewise.
13164         (read_typedef): Likewise.
13165         (read_subrange_type): Likewise.
13166         (load_partial_dies): Likewise.
13167         (read_partial_die): Likewise.
13168         (find_partial_die): Likewise.
13169         (read_str_index): Likewise.
13170         (dwarf2_string_attr): Likewise.
13171         (build_error_marker_type): Likewise.
13172         (lookup_die_type): Likewise.
13173         (dump_die_shallow): Likewise.
13174         (follow_die_ref): Likewise.
13175         (dwarf2_fetch_die_loc_sect_off): Likewise.
13176         (dwarf2_fetch_constant_bytes): Likewise.
13177         (follow_die_sig): Likewise.
13178         (get_signatured_type): Likewise.
13179         (get_DW_AT_signature_type): Likewise.
13180         (dwarf2_find_containing_comp_unit): Likewise.
13181         (set_die_type): Likewise.
13182
13183 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13184
13185         * arch/aarch64.c: Include "common-defs.h".
13186         * arch/amd64.c: Likewise.
13187         * arch/i386.c: Likewise.
13188
13189 2018-02-21  Tom Tromey  <tom@tromey.com>
13190
13191         * value.h: (extract_field_op): Update.
13192         * eval.c (extract_field_op): Return a const char *.
13193         * expression.h (parse_expression_for_completion): Update.
13194         * completer.c (complete_expression): Update.
13195         (add_struct_fields): Make fieldname const.
13196         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13197         (mark_completion_tag, parse_exp_in_context_1): Update.
13198         (parse_expression_for_completion): Change "name" to
13199         unique_xmalloc_ptr*.
13200
13201 2018-02-21  Tom Tromey  <tom@tromey.com>
13202
13203         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13204
13205 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13206
13207         * avr-tdep.c (avr_read_pc): Change parameter type to
13208         readable_regcache.
13209         * gdbarch.sh (read_pc): Likewise.
13210         * gdbarch.c: Re-generated.
13211         * gdbarch.h: Re-generated.
13212         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13213         readable_regcache.
13214         * ia64-tdep.c (ia64_read_pc): Likewise.
13215         * mips-tdep.c (mips_read_pc): Likewise.
13216         * spu-tdep.c (spu_read_pc): Likewise.
13217
13218 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13219
13220         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13221         * regcache-dump.c: New file.
13222         * regcache.c: Move register_dump to regcache-dump.c.
13223         (maintenance_print_registers): Likewise.
13224         (maintenance_print_raw_registers): Likewise.
13225         (maintenance_print_cooked_registers): Likewise.
13226         (maintenance_print_register_groups): Likewise.
13227         (maintenance_print_remote_registers): Likewise.
13228         (_initialize_regcache): Likewise.
13229         * regcache.h (register_dump): Moved from regcache.c.
13230
13231 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13232
13233         * regcache.c (regcache::regcache): Update.
13234         (regcache::invalidate): Move it to detached_regcache::invalidate.
13235         (get_thread_arch_aspace_regcache): Update.
13236         (regcache::raw_update): Update.
13237         (regcache::cooked_read): Remove some code.
13238         (regcache::cooked_read_value): Likewise.
13239         (regcache::raw_write): Remove assert on m_readonly_p.
13240         (regcache::raw_supply_integer): Move it to
13241         detached_regcache::raw_supply_integer.
13242         (regcache::raw_supply_zeroed): Likewise.
13243         * regcache.h (detached_regcache) <raw_supply_integer>: New
13244         declaration.
13245         <raw_supply_zeroed, invalidate>: Likewise.
13246         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13247         <invalidate>: Likewise.
13248         <m_readonly_p>: Removed.
13249
13250 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13251
13252         * infcmd.c (get_return_value): Let stop_regs point to
13253         get_current_regcache.
13254         * regcache.c (regcache::regcache): Remove.
13255         (register_dump_reg_buffer): New class.
13256         (regcache_print): Adjust.
13257         * regcache.h (regcache): Remove constructors.
13258
13259 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13260
13261         * regcache.c (class register_dump): New class.
13262         (register_dump_regcache, register_dump_none): New class.
13263         (register_dump_remote, register_dump_groups): New class.
13264         (regcache_print): Update.
13265         * regcache.h (regcache_dump_what): Move it to regcache.c.
13266         (regcache) <dump>: Remove.
13267
13268 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13269
13270         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13271          reg_buffer_rw *.
13272         (jit_unwind_reg_set_impl): Call raw_supply.
13273         (jit_frame_sniffer): Use reg_buffer_rw.
13274         * record-full.c (record_full_core_regbuf): Change its type.
13275         (record_full_core_open_1): Use reg_buffer_rw.
13276         (record_full_close): Likewise.
13277         (record_full_core_fetch_registers): Use regcache->raw_supply.
13278         (record_full_core_store_registers): Likewise.
13279         * regcache.c (regcache::get_register_status): Move it to
13280         reg_buffer.
13281         (regcache_raw_set_cached_value): Remove.
13282         (regcache::raw_set_cached_value): Remove.
13283         (regcache::raw_write): Call raw_supply.
13284         (regcache::raw_supply): Move it to reg_buffer_rw.
13285         * regcache.h (regcache_raw_set_cached_value): Remove.
13286         (reg_buffer_rw): New class.
13287
13288 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13289
13290         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13291         readonly_detached_regcache.
13292         (dummy_frame_prev_register): Use regcache->cooked_read.
13293         * frame.c (frame_save_as_regcache): Change return type.
13294         (frame_pop): Update.
13295         * frame.h (frame_save_as_regcache): Update declaration.
13296         * inferior.h (get_infcall_suspend_state_regcache): Update
13297         declaration.
13298         * infrun.c (infcall_suspend_state) <registers>: use
13299         readonly_detached_regcache.
13300         (save_infcall_suspend_state): Don't use regcache_dup.
13301         (get_infcall_suspend_state_regcache): Change return type.
13302         * linux-fork.c (struct fork_info) <savedregs>: Change to
13303         readonly_detached_regcache.
13304         <pc>: New field.
13305         (fork_save_infrun_state): Don't use regcache_dup.
13306         (info_checkpoints_command): Adjust.
13307         * mi/mi-main.c (register_changed_p): Update declaration.
13308         (mi_cmd_data_list_changed_registers): Use
13309         readonly_detached_regcache.
13310         (register_changed_p): Change parameter type to
13311         readonly_detached_regcache.
13312         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13313         readonly_detached_regcache.
13314         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13315         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13316         New.
13317         (regcache::save): Move it to reg_buffer.
13318         (regcache::restore): Change parameter type.
13319         (regcache_dup): Remove.
13320         * regcache.h (reg_buffer) <save>: New method.
13321         (readonly_detached_regcache): New class.
13322         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13323         readonly_detached_regcache.
13324         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13325
13326 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13327
13328         * frame.c (frame_save_as_regcache): Use regcache method save.
13329         (frame_pop): Use regcache method restore.
13330         * infrun.c (restore_infcall_suspend_state): Likewise.
13331         * linux-fork.c (fork_load_infrun_state): Likewise.
13332         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13333         save.
13334         * regcache.c (regcache_save): Remove.
13335         (regcache::restore): More asserts.
13336         (regcache_cpy): Remove.
13337         * regcache.h (regcache_save): Remove the declaration.
13338         (regcache::restore): Move from private to public.
13339         Remove the friend declaration of regcache_cpy.
13340         (regcache_cpy): Remove declaration.
13341
13342 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13343
13344         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13345         parameter type to 'readable_regcache *'.
13346         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13347         * arm-tdep.c (arm_neon_quad_read): Likewise.
13348         (arm_pseudo_read): Likewise.
13349         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13350         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13351         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13352         * gdbarch.c: Re-generated.
13353         * gdbarch.h: Re-generated.
13354         * gdbarch.sh (pseudo_register_read): Change parameter type to
13355         'readable_regcache *'.
13356         (pseudo_register_read_value): Likewise.
13357         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13358         (h8300_pseudo_register_read): Likewise.
13359         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13360         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13361         (i386_pseudo_register_read_into_value): Likewise.
13362         (i386_pseudo_register_read_value): Likewise.
13363         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13364         declaration.
13365         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13366         * m32c-tdep.c (m32c_raw_read): Likewise.
13367         (m32c_read_flg): Likewise.
13368         (m32c_banked_register): Likewise.
13369         (m32c_banked_read): Likewise.
13370         (m32c_sb_read): Likewise.
13371         (m32c_part_read): Likewise.
13372         (m32c_cat_read): Likewise.
13373         (m32c_r3r2r1r0_read): Likewise.
13374         (m32c_pseudo_register_read): Likewise.
13375         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13376         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13377         (mep_pseudo_cr64_read): Likewise.
13378         (mep_pseudo_register_read): Likewise.
13379         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13380         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13381         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13382         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13383         (regcache::cooked_read): Likewise.
13384         (regcache::cooked_read_value): Likewise.
13385         (regcache_cooked_read_signed):
13386         (regcache::cooked_read): Likewise.
13387         * regcache.h (readable_regcache): New class.
13388         (regcache): Inherit readable_regcache.  Move some methods to
13389         readable_regcache.
13390         * rl78-tdep.c (rl78_pseudo_register_read): Change
13391         parameter type to 'readable_regcache *'.
13392         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13393         (e500_pseudo_register_read): Change parameter type to
13394         'readable_regcache *'.
13395         (dfp_pseudo_register_read): Likewise.
13396         (vsx_pseudo_register_read): Likewise.
13397         (efpr_pseudo_register_read): Likewise.
13398         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13399         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13400         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13401         (sh64_pseudo_register_read): Likewise.
13402         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13403         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13404         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13405         (spu_pseudo_register_read): Likewise.
13406         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13407         (xtensa_pseudo_register_read): Likewise.
13408
13409 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13410
13411         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13412         (regcache::arch): Move it to reg_buffer::arch.
13413         (regcache::register_buffer): Likewise.
13414         (regcache::assert_regnum): Likewise.
13415         (regcache::num_raw_registers): Likewise.
13416         * regcache.h (reg_buffer): New class.
13417         (regcache): Inherit reg_buffer.
13418
13419 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13420
13421         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13422         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13423
13424 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13425
13426         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13427
13428 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13429
13430         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13431         (SFILES): Remove common/*.c files.
13432         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13433         * common/common.host: Add common reference.
13434         * configure.ac: Likewise.
13435         * configure: Regenerate.
13436
13437 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13438
13439         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13440         (block_initialize_namespace): Use new.
13441         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13442         (dwarf2_free_objfile): Use delete.
13443         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13444         (copy_type_recursive): Use new.
13445         * gdb_obstack.h (allocate_on_obstack): New.
13446
13447 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13448
13449         PR gdb/22849
13450         * inferior.c (exit_inferior_1): Reset inf->control.
13451
13452 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13453
13454         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13455         declaration.
13456
13457 2018-02-14  Pedro Alves  <palves@redhat.com>
13458
13459         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13460         frame_cleanup_after_sniffer on exception.
13461
13462 2018-02-14  Tom Tromey  <tom@tromey.com>
13463
13464         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13465         const.
13466         (solib_bfd_open): Make pathname const.
13467         * solib.c (solib_bfd_open): Make pathname const.
13468         * solib-spu.c (spu_bfd_fopen): Make name const.
13469         (spu_bfd_open): Make pathname const.
13470         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13471         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13472
13473 2018-02-14  Tom Tromey  <tom@tromey.com>
13474
13475         * symfile.c (symfile_bfd_open): Update.
13476         * source.h (openp, source_full_path_of, find_and_open_source):
13477         Change argument type to unique_xmalloc_ptr.
13478         * source.c (openp): Take a unique_xmalloc_ptr.
13479         (source_full_path_of, find_and_open_source): Likewise.
13480         (open_source_file, symtab_to_fullname): Update.
13481         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13482         unique_xmalloc_ptr.
13483         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13484         (exec_file_find): Update.
13485         * psymtab.c (psymtab_to_fullname): Update.
13486         * nto-tdep.h (nto_find_and_open_solib): Update.
13487         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13488         unique_xmalloc_ptr.
13489         * exec.c (exec_file_attach): Update.
13490         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13491         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13492
13493 2018-02-14  Tom Tromey  <tom@tromey.com>
13494
13495         * solib.c: Include source.h.
13496         * nto-tdep.c: Include source.h.
13497         * mi/mi-cmd-env.c: Include source.h.
13498         * infcmd.c: Include source.h.
13499         * exec.c: Include source.h.
13500         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13501         (add_path, directory_switch, source_path, init_source_path): Move
13502         declarations...
13503         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13504         (add_path, directory_switch, source_path, init_source_path):
13505         ...here.
13506
13507 2018-02-14  Tom Tromey  <tom@tromey.com>
13508
13509         * solist.h (exec_file_find, solib_find): Return
13510         unique_xmalloc_ptr.
13511         (solib_bfd_fopen): Take a const char *.
13512         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13513         (exec_file_find, solib_find): Likewise.
13514         (solib_bfd_fopen): Do not take ownership of "pathname".
13515         (solib_bfd_open): Use unique_xmalloc_ptr.
13516         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13517         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13518         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13519         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13520
13521 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13522
13523         * ada-lang.c (name_match_type_from_name): Remove reference to
13524         ada_name_for_lookup in function's documentation.
13525         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13526
13527 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13528
13529         * defs.h (enum openp_flags): New enum.
13530         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13531         Move to enum openp_flags.
13532         (openp_flags): New enum flags.
13533         (openp): Change parameter type to openp_flags.
13534         * source.c (openp): Change parameter type to openp_flags.
13535         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13536         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13537
13538 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13539
13540         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13541         per-command.
13542
13543 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13544
13545         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13546         into...
13547         (class dwarf2_queue_guard): ...the destructor of this new class.
13548         (dw2_do_instantiate_symtab): Create instance of the new class
13549         dwarf2_queue_guard, remove cleanup.
13550
13551 2018-02-09  Tom Tromey  <tom@tromey.com>
13552
13553         * source.c (find_source_lines): Don't reference past the end of
13554         the vector.
13555
13556 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13557
13558         * remote.c (remote_btrace_maybe_reopen): Change error message.
13559         * btrace.c (btrace_enable): Likewise.
13560         (parse_xml_btrace): Likewise.
13561         (parse_xml_btrace_conf): Likewise.
13562
13563 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13564
13565         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13566         (linux_enable_pt, linux_enable_bts): Call
13567         diagnose_perf_event_open_fail.
13568
13569 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13570
13571         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13572         Remove parameter and change return type.  Update callers.  Move it.
13573         (linux_enable_bts, linux_enable_pt): Improve error message.
13574         (linux_enable_pt): Remove zero buffer size check.
13575         (linux_enable_btrace): Improve error messages.  Remove NULL return
13576         check.
13577
13578 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13579
13580         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13581         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13582         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13583         (linux_supports_pt, linux_supports_btrace): Remove.
13584         (linux_enable_bts): Call cpu_supports_bts.
13585         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13586         * remote.c (remote_supports_btrace): Remove.
13587         (init_remote_ops): Remove remote_supports_btrace.
13588         * target-delegates.c: Regenerated.
13589         * target.c (target_supports_btrace): Remove.
13590         * target.h (target_ops) <to_supports_btrace>: Remove
13591         (target_supports_btrace): Remove.
13592         * x86-linux-nat.c (x86_linux_create_target): Remove
13593         linux_supports_btrace.
13594
13595 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13596
13597         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13598         btrace failed.
13599         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13600         exception and use message in own exception.
13601
13602 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13603
13604         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13605         (perf_event_pt_event_type): Use gdb_file_up.
13606         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13607         scoped_fd, and scoped_mmap.
13608
13609 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13610
13611         * common/scoped_mmap.h: New.
13612         * unittests/scoped_mmap-selftest.c: New.
13613         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13614         unittests/scoped_mmap-selftest.c.
13615
13616 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13617
13618         * common/scoped_fd.h: New.
13619         * unittests/scoped_fd-selftest.c: New.
13620         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13621         unittests/scoped_fd-selftest.c.
13622
13623 2018-02-09  Tom Tromey  <tom@tromey.com>
13624
13625         * auto-load.c (auto_load_section_scripts): Use
13626         gdb::unique_xmalloc_ptr.
13627
13628 2018-02-09  Tom Tromey  <tom@tromey.com>
13629
13630         * auto-load.c (execute_script_contents): Use std::string.
13631
13632 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13633
13634         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13635         Python function, rather than a new command.
13636
13637 2018-02-08  Tom Tromey  <tom@tromey.com>
13638
13639         * solib.c (solib_find_1): Use std::string.
13640         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13641
13642 2018-02-08  Tom Tromey  <tom@tromey.com>
13643
13644         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13645
13646 2018-02-08  Tom Tromey  <tom@tromey.com>
13647
13648         * source.c (find_source_lines): Use gdb::def_vector.
13649
13650 2018-02-08  Tom Tromey  <tom@tromey.com>
13651
13652         * macrocmd.c (struct temporary_macro_definition): New.
13653         (macro_define_command): Use temporary_macro_definition.  Remove
13654         cleanups.
13655         (free_macro_definition_ptr): Remove.
13656
13657 2018-02-08  Tom Tromey  <tom@tromey.com>
13658
13659         * macroexp.c (maybe_expand): Use std::string.
13660
13661 2018-02-08  Tom Tromey  <tom@tromey.com>
13662
13663         * macroexp.c (struct macro_buffer): Add initializers for some
13664         members.
13665         (init_buffer, init_shared_buffer, free_buffer)
13666         (free_buffer_return_text): Remove.
13667         (macro_buffer): New constructors.
13668         (~macro_buffer): New destructor.
13669         (macro_buffer::set_shared): New method.
13670         (macro_buffer::resize_buffer, macro_buffer::appendc)
13671         (macro_buffer::appendmem): Now methods, not free functions.
13672         (set_token, append_tokens_without_splicing, stringify)
13673         (macro_stringify): Update.
13674         (gather_arguments): Change return type.  Remove argc_p argument,
13675         add args_ptr argument.  Use std::vector.
13676         (substitute_args): Remove argc argument.  Accept std::vector.
13677         (expand): Update.  Use std::vector.
13678         (scan, macro_expand, macro_expand_next): Update.
13679
13680 2018-02-08  Tom Tromey  <tom@tromey.com>
13681
13682         * symtab.c (default_collect_symbol_completion_matches_break_on):
13683         Use unique_xmalloc_ptr.
13684         * macroscope.h: (sal_macro_scope, user_macro_scope)
13685         (default_macro_scope): Return unique_xmalloc_ptr.
13686         * macroscope.c (sal_macro_scope, user_macro_scope)
13687         (default_macro_scope): Return unique_xmalloc_ptr.
13688         * macroexp.h (macro_expand, macro_expand_once): Return
13689         unique_xmalloc_ptr.
13690         * macroexp.c (macro_expand, macro_expand_once): Return
13691         unique_xmalloc_ptr.
13692         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13693         (info_macro_command, info_macros_command): Use
13694         unique_xmalloc_ptr.
13695         * compile/compile-c-support.c (write_macro_definitions): Use
13696         unique_xmalloc_ptr.
13697         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13698
13699 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13700
13701         * value.c (value_static_field): Assign field type instead of
13702         containing type when returning an optimized out value.
13703
13704 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13705
13706         * ft32-tdep.c (ft32_read_pc): Remove.
13707         (ft32_write_pc): Remove.
13708         (ft32_gdbarch_init): Update.
13709         * m32r-tdep.c (m32r_read_pc): Remove.
13710         (m32r_gdbarch_init): Update.
13711         * mep-tdep.c (mep_read_pc): Remove.
13712         (mep_gdbarch_init): Update.
13713         * microblaze-tdep.c (microblaze_write_pc): Remove.
13714         (microblaze_gdbarch_init): Update.
13715         * mn10300-tdep.c (mn10300_read_pc): Remove.
13716         (mn10300_write_pc): Remove.
13717         (mn10300_gdbarch_init): Update.
13718         * moxie-tdep.c (moxie_read_pc): Remove.
13719         (moxie_write_pc): Remove.
13720         (moxie_gdbarch_init): Update.
13721
13722 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13723
13724         * expprint.c (print_subexp_standard): Handle
13725         OP_F77_UNDETERMINED_ARGLIST.
13726         (dump_subexp_body_standard): Likewise.
13727
13728 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13729
13730         * target-descriptions.c (tdesc_element_visitor) Add empty
13731         implementations.
13732         (tdesc_type): Move make_gdb_type from here.
13733         (tdesc_type_builtin): Likewise.
13734         (tdesc_type_vector): Likewise.
13735         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13736         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13737         (make_gdb_type_union): Likewise.
13738         (make_gdb_type_flags): Likewise.
13739         (make_gdb_type_enum): Likewise.
13740         (make_gdb_type): New function.
13741         (tdesc_register_type): Use static make_gdb_type.
13742
13743 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13744
13745         * infcmd.c (default_print_one_register_info): Align natural-format
13746         column values consistently one under another.
13747         (pad_to_column): New function.
13748
13749 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13750
13751         * dwarf2read.c (dwarf2_physname): Move commment.
13752
13753 2018-02-01  Leszek Swirski  <leszeks@google.com>
13754
13755         * varobj.c (varobj_formatted_print_options): Allow recursive
13756         pretty printing if pretty printing is enabled.
13757
13758 2018-02-01  Leszek Swirski  <leszeks@google.com>
13759
13760         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13761         names after a structop as a filename.
13762
13763 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13764
13765         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13766         (arm_record_coproc_data_proc): Likewise.
13767
13768 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13769
13770         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13771
13772 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13773
13774         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13775         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13776
13777 2018-01-31  Pedro Alves  <palves@redhat.com>
13778
13779         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13780         * inflow.c (child_terminal_save_inferior): Wrap reference to
13781         tcgetpgrp in HAVE_TERMIOS_H.
13782         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13783         _WIN32.
13784         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13785         always iterate over all inferiors.
13786         (gdbsim_cntrl_c): Adjust.
13787         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13788
13789 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13790
13791         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13792         index type is objfile-owned if the element type is as well.
13793
13794 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13795
13796         GDB 8.1 released.
13797
13798 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13799
13800         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13801         "features/s390x-linux64.c".
13802         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13803         s390_linux32 and s390x_linux64.
13804         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13805         default tdesc.
13806         * s390-tdep.c: Include "features/s390-linux32.c" and
13807         "features/s390x-linux64.c".
13808         (s390_tdesc_valid): Add check for tdesc_has_registers.
13809         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13810         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13811         tdesc_s390x_linux64.
13812         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13813         tdesc_s390x_linux64 to...
13814         * s390-tdep.h: ...here.
13815
13816 2018-01-30  Pedro Alves  <palves@redhat.com>
13817
13818         PR gdb/13211
13819         * config.in, configure: Regenerate.
13820         * configure.ac: Check for getpgid.
13821         * go32-nat.c (go32_pass_ctrlc): New.
13822         (go32_target): Install it.
13823         * inf-child.c (inf_child_target): Install
13824         child_terminal_save_inferior, child_pass_ctrlc and
13825         child_interrupt.
13826         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13827         (inf_ptrace_target): No longer install it.
13828         * infcmd.c (interrupt_target_1): Adjust.
13829         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13830         (child_interrupt): Declare.
13831         (inferior::terminal_state): New.
13832         * inflow.c (struct terminal_info): Update comments.
13833         (inferior_process_group): Delete.
13834         (terminal_is_ours): Delete.
13835         (gdb_tty_state): New.
13836         (child_terminal_init): Adjust.
13837         (is_gdb_terminal, sharing_input_terminal_1)
13838         (sharing_input_terminal): New functions.
13839         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13840         Set the process's actual process group in the foreground if
13841         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13842         mark terminal as the inferior's if not sharing GDB's terminal.
13843         Don't check attach_flag.
13844         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13845         pass down a target_terminal_state.
13846         (child_terminal_save_inferior): New, factored out from ...
13847         (child_terminal_ours_1): ... this.  Handle
13848         target_terminal_state::is_ours_for_output.
13849         (child_interrupt, child_pass_ctrlc): New.
13850         (inflow_inferior_exit): Clear the inferior's terminal_state.
13851         (copy_terminal_info): Copy the inferior's terminal state.
13852         (_initialize_inflow): Remove reference to terminal_is_ours.
13853         * inflow.h (inferior_process_group): Delete.
13854         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13855         * procfs.c (procfs_target): Don't install procfs_interrupt.
13856         (procfs_interrupt): Delete.
13857         * remote.c (remote_serial_quit_handler): Adjust.
13858         (remote_interrupt): Remove ptid parameter.  Adjust.
13859         * target-delegates.c: Regenerate.
13860         * target.c: Include "terminal.h".
13861         (target_terminal::terminal_state): Rename to ...
13862         (target_terminal::m_terminal_state): ... this.
13863         (target_terminal::init): Adjust.
13864         (target_terminal::inferior): Adjust to per-inferior
13865         terminal_state.
13866         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13867         (target_terminal::ours, target_terminal::ours_for_output): Use
13868         target_terminal_is_ours_kind.
13869         (target_interrupt): Remove ptid parameter.  Adjust.
13870         (default_target_pass_ctrlc): Adjust.
13871         * target.h (target_ops::to_terminal_save_inferior): New field.
13872         (target_ops::to_interrupt): Remove ptid_t parameter.
13873         (target_interrupt): Remove ptid_t parameter.  Update comment.
13874         (target_pass_ctrlc): Update comment.
13875         * target/target.h (target_terminal_state): New scoped enum,
13876         factored out of ...
13877         (target_terminal::terminal_state): ... here.
13878         (target_terminal::inferior): Update comments.
13879         (target_terminal::restore_inferior): New.
13880         (target_terminal::is_inferior, target_terminal::is_ours)
13881         (target_terminal::is_ours_for_output): Adjust.
13882         (target_terminal::scoped_restore_terminal_state): Adjust to
13883         rename, and call restore_inferior() instead of inferior().
13884         (target_terminal::scoped_restore_terminal_state::m_state): Change
13885         type.
13886         (target_terminal::terminal_state): Rename to ...
13887         (target_terminal::m_terminal_state): ... this and change type.
13888
13889 2018-01-30  Pedro Alves  <palves@redhat.com>
13890
13891         * linux-nat.c (wait_for_signal): New function.
13892         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13893         directly.
13894         (async_terminal_is_ours)
13895         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13896         (linux_nat_add_target): Don't override
13897         to_terminal_inferior/to_terminal_ours.
13898
13899 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13900
13901         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13902
13903 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13904
13905         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13906         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13907         dwarf2_per_objfile_free here.
13908         (dwarf2_per_objfile_free): Remove.
13909         (_initialize_dwarf2_read): Don't register
13910         dwarf2_per_objfile_free as a registry cleanup.
13911
13912 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13913
13914         Avoid compilation errors in MinGW native builds
13915
13916         The error is triggered by including python-internal.h, and the
13917         error message is:
13918
13919              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13920                       from build-gnulib/import/math.h:27,
13921                       from d:/usr/Python26/include/pyport.h:235,
13922                       from d:/usr/Python26/include/Python.h:58,
13923                       from python/python-internal.h:94,
13924                       from python/py-arch.c:24:
13925              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13926         using ::hypot;
13927                 ^~~~~
13928
13929         This happens because Python headers define 'hypot' to expand t
13930         '_hypot' in the Windows builds.
13931         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13932         'hypoth'.  This avoids a compilation error.
13933
13934 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13935
13936         * MAINTAINERS (Write After Approval): Fix ordering.
13937
13938 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13939
13940         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13941
13942 2018-01-26  Alan Modra  <amodra@gmail.com>
13943
13944         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13945         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13946         Remove nop.  Make const.  Comment.
13947         (powerpc32_plt_stub_so_2): New.
13948         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13949         Correct count.  Update uses.
13950         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13951         Move common code reading PLT entry word.  Correct
13952         powerpc32_plt_stub PLT address calculation.
13953         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13954         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13955         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13956         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13957         (ppc64_standard_linkage8): Likewise.
13958         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13959         Correct insns description.
13960         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13961
13962 2018-01-24  Pedro Alves  <palves@redhat.com>
13963
13964         GCC PR libstdc++/83906
13965         * gdbtypes.c (operator==(const dynamic_prop &,
13966         const dynamic_prop &)): New.
13967         (operator==(const range_bounds &, const range_bounds &)): New.
13968         (check_types_equal): Use them instead of memcmp.
13969         * gdbtypes.h (operator==(const dynamic_prop &,
13970         const dynamic_prop &)): Declare.
13971         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13972         (operator==(const range_bounds &, const range_bounds &)): Declare.
13973         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13974
13975 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13976
13977         * s390-linux-tdep.c (s390_record_address_mask)
13978         (s390_record_calc_disp_common, s390_record_calc_disp)
13979         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13980         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13981         (s390_process_record): Move to s390-tdep.c.
13982         (s390_linux_init_abi_any): Adjust.
13983         * s390-tdep.c (s390_record_address_mask)
13984         (s390_record_calc_disp_common, s390_record_calc_disp)
13985         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13986         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13987         (s390_process_record): Moved from s390-linux-tdep.c
13988         (s390_gdbarch_init): Adjust.
13989
13990 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13991
13992         * s390-linux-nat.c (s390-tdep.h): New include.
13993         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13994         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13995         (ALLDEPFILES): Add s390-tdep.c.
13996         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13997         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13998         * s390-tdep.h: ...this.  New file.
13999         * s390-linux-tdep.c (s390-tdep.h): New include.
14000         (_initialize_s390_tdep): Rename to...
14001         (_initialize_s390_linux_tdep): ...this and adjust.
14002         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14003         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14004         s390-tdep.h.
14005         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14006         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14007         (s390_is_partial_instruction, s390_software_single_step)
14008         (is_non_branch_ril, s390_displaced_step_copy_insn)
14009         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14010         (s390_prologue_data, s390_addr, s390_store, s390_load)
14011         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14012         (s390_register_call_saved, s390_guess_tracepoint_registers)
14013         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14014         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14015         (s390_pseudo_register_name, s390_pseudo_register_type)
14016         (s390_pseudo_register_read, s390_pseudo_register_write)
14017         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14018         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14019         (s390_addr_bits_remove, s390_address_class_type_flags)
14020         (s390_address_class_type_flags_to_name)
14021         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14022         (s390_function_arg_float, s390_function_arg_vector)
14023         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14024         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14025         (s390_frame_align, s390_register_return_value, s390_return_value)
14026         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14027         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14028         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14029         (s390_trad_frame_prev_register, s390_unwind_cache)
14030         (s390_prologue_frame_unwind_cache)
14031         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14032         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14033         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14034         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14035         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14036         (s390_frame_base_address, s390_local_base_address)
14037         (s390_frame_base, s390_gcc_target_options)
14038         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14039         (s390_validate_reg_range, s390_tdesc_valid)
14040         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14041         * s390-tdep.c: ...this.  New file.
14042
14043 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14044
14045         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14046         (s390_process_record, s390_gdbarch_tdep_alloc)
14047         (s390_linux_init_abi_any): Use/set new hook.
14048
14049 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14050
14051         * s390-linux-tdep.c (osabi.h): New include.
14052         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14053         (s390_linux_init_abi_any): New functions.
14054         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14055
14056 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14057
14058         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14059         tdesc_has_registers check
14060
14061 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14062
14063         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14064         (s390_validate_reg_range): New macro.
14065         (s390_gdbarch_init): Adjust.
14066
14067 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14068
14069         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14070         (s390_gdbarch_tdep_alloc): Adjust.
14071         (s390_gdbarch_init): Adjust.
14072
14073 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14074
14075         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14076         <have_tdb>: Change type to bool.
14077         (s390_gdbarch_tdep_alloc): Adjust.
14078         (s390_gdbarch_init): Adjust.
14079
14080 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14081
14082         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14083         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14084         (s390_gdbarch_tdep_alloc): New function.
14085         (s390_gdbarch_init): Allocate tdep at start and use its fields
14086         instead of separate variables.
14087
14088 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14089
14090         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14091         when looking for cached gdbarch and add comment for remaining.
14092
14093 2018-01-22  Pedro Alves  <palves@redhat.com>
14094             Sergio Durigan Junior  <sergiodj@redhat.com>
14095
14096         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14097         case.
14098
14099 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14100
14101         * MAINTAINERS: Update my company e-mail address.
14102
14103 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14104
14105         * regcache.c (cooked_write_test): New function.
14106         (_initialize_regcache): Register the test.
14107
14108 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14109
14110         * ia64-tdep.c (ia64_pseudo_register_read): Call
14111         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14112         * m32c-tdep.c (m32c_cat_read): Likewise.
14113         (m32c_r3r2r1r0_read): Likewise.
14114         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14115         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14116
14117 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14118
14119         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14120         method raw_read instead of regcache_raw_read.
14121         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14122         * arm-tdep.c (arm_neon_quad_read): Likewise.
14123         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14124         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14125         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14126         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14127         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14128         (i386_pseudo_register_read_into_value): Likewise.
14129         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14130         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14131         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14132         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14133         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14134         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14135         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14136         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14137         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14138
14139 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14140
14141         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14142         * configure.tgt: Remove target mt.
14143         * mt-tdep.c: Remove.
14144         * regcache.c (cooked_read_test): Remove the check for mt.
14145
14146 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14147
14148         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14149         instead of gdbarch_pseudo_register_read_value.
14150
14151 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14152
14153         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14154         language is Ada.
14155
14156 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14157
14158         * linespec.c (create_sals_line_offset): Remove code that preserved
14159         the symtab_and_line's line number.
14160
14161 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14162
14163         * varobj.c (varobj_create): Don't set valid_block when creating a
14164         floating varobj.
14165
14166 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14167
14168         * varobj.c (varobj_create): Remove out of date comment.
14169
14170 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14171
14172         PR mi/20395
14173         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14174         updating innermost block.
14175         * parse.c (innermost_block_tracker::update): Take extra type
14176         parameter, and check types match before updating innermost block.
14177         (write_dollar_variable): Update innermost block for registers.
14178         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14179         (innermost_block_tracker::innermost_block_tracker): Initialise
14180         m_types member.
14181         (innermost_block_tracker::reset): Take type parameter.
14182         (innermost_block_tracker::update): Take type parameter, and pass
14183         type through as needed.
14184         (innermost_block_tracker::m_types): New member.
14185         * varobj.c (varobj_create): Pass type when reseting innermost
14186         block.
14187
14188 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14189
14190         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14191         * ada-lang.c (resolve_subexp): Likewise.
14192         * breakpoint.c (set_breakpoint_condition) Likewise.
14193         (watch_command_1) Likewise.
14194         * c-exp.y (variable): Likewise.
14195         * d-exp.y (PrimaryExpression): Likewise.
14196         * f-exp.y (variable): Likewise.
14197         * go-exp.y (variable): Likewise.
14198         * m2-exp.y (variable): Likewise.
14199         * objfiles.c (objfile::~objfile): Likewise.
14200         * p-exp.y (variable): Likewise.
14201         * parse.c (innermost_block): Change type.
14202         * parser-defs.h (class innermost_block_tracker): New.
14203         (innermost_block): Change to innermost_block_tracker.
14204         * printcmd.c (display_command): Switch to innermost_block API.
14205         (do_one_display): Likewise.
14206         * rust-exp.y (do_one_display): Likewise.
14207         * symfile.c (clear_symtab_users): Likewise.
14208         * varobj.c (varobj_create): Switch to innermost_block API, replace
14209         use of innermost_block with block stored on varobj object.
14210
14211 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14212
14213         * expression.h (innermost_block): Remove declaration.
14214         * varobj.c: Add 'parser-defs.h' include.
14215
14216 2018-01-19  Tom Tromey  <tom@tromey.com>
14217
14218         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14219         symbols in the static and global blocks.
14220
14221 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14222
14223         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14224         gdb_ptrace.h, and move including gdb_wait.h ...
14225         * nat/linux-ptrace.h: ... to here.
14226
14227 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14228
14229         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14230         inf_ptrace_detach_success.
14231         (inf_ptrace_detach_success): Add inferior parameter, use it
14232         instead of inferior_ptid, pass it to detach_inferior.
14233         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14234         parameter.
14235         * inferior.c (detach_inferior): Add overload that takes an
14236         inferior object.
14237         * inferior.h (detach_inferior): Likewise.
14238         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14239         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14240         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14241
14242 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14243
14244         * target.h (struct target_ops) <to_detach>: Add inferior
14245         parameter.
14246         (target_detach): Likewise.
14247         * target.c (dispose_inferior): Pass inferior down.
14248         (target_detach): Pass inferior down.  Assert that it is equal to
14249         the current inferior.
14250         * aix-thread.c (aix_thread_detach): Pass inferior down.
14251         * corefile.c (core_file_command): Pass current_inferior() down.
14252         * corelow.c (core_detach): Add inferior parameter.
14253         * darwin-nat.c (darwin_detach): Likewise.
14254         * gnu-nat.c (gnu_detach): Likewise.
14255         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14256         * infcmd.c (detach_command): Pass current_inferior() down to
14257         target_detach.
14258         * infrun.c (follow_fork_inferior): Pass parent_inf to
14259         target_detach.
14260         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14261         target_detach.
14262         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14263         * linux-thread-db.c (thread_db_detach): Likewise.
14264         * nto-procfs.c (procfs_detach): Likewise.
14265         * procfs.c (procfs_detach): Likewise.
14266         * record.c (record_detach): Likewise.
14267         * record.h (struct inferior): Forward-declare.
14268         (record_detach): Add inferior parameter.
14269         * remote-sim.c (gdbsim_detach): Likewise.
14270         * remote.c (remote_detach_1): Likewise.
14271         (remote_detach): Likewise.
14272         (extended_remote_detach): Likewise.
14273         * sol-thread.c (sol_thread_detach): Likewise.
14274         * target-debug.h (target_debug_print_inferior_p): New macro.
14275         * target-delegates.c: Re-generate.
14276         * top.c (kill_or_detach): Pass inferior down to target_detach.
14277         * windows-nat.c (windows_detach): Add inferior parameter.
14278
14279 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14280
14281         * target.h (struct target_ops) <to_detach>: Remove args
14282         parameter.
14283         (target_detach): Likewise.
14284         * target.c (dispose_inferior): Adjust.
14285         (target_detach): Remove args parameter, adjust.
14286         * aix-thread.c (aix_thread_detach): Adjust.
14287         * corefile.c (core_file_command): Adjust.
14288         * corelow.c (core_detach): Adjust.
14289         * darwin-nat.c (darwin_detach): Adjust.
14290         * gnu-nat.c (gnu_detach): Adjust.
14291         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14292         * infcmd.c (detach_command): Adjust
14293         * infrun.c (follow_fork_inferior): Adjust.
14294         (handle_vfork_child_exec_or_exit): Adjust.
14295         * linux-fork.c (linux_fork_detach): Remove args parameter.
14296         * linux-fork.h (linux_fork_detach): Likewise.
14297         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14298         * linux-thread-db.c (thread_db_detach): Likewise.
14299         * nto-procfs.c (procfs_detach): Likewise.
14300         * procfs.c (procfs_detach): Likewise.
14301         (do_detach): Remove signo parameter.
14302         * record.c (record_detach): Remove args parameter.
14303         * record.h (record_detach): Likewise.
14304         * remote-sim.c (gdbsim_detach): Likewise.
14305         * remote.c (remote_detach_1): Likewise.
14306         (remote_detach): Likewise.
14307         (extended_remote_detach): Likewise.
14308         * sol-thread.c (sol_thread_detach): Likewise.
14309         * target-delegates.c: Re-generate.
14310         * top.c (struct qt_args) <args>: Remove field.
14311         (kill_or_detach): Don't pass args.
14312         (quit_force): Don't set args.
14313         * windows-nat.c (windows_detach): Remove args parameter.
14314
14315 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14316
14317         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14318         (arm_linux_init_abi): Install it.
14319
14320 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14321
14322         * osabi.c (gdb_osabi_names): Extend the regexp for
14323         arm-linux-gnueabihf.
14324
14325 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14326
14327         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14328         m_abbrevs.
14329         (abbrev_table::add_abbrev): Update.
14330         (abbrev_table::lookup_abbrev): Update.
14331
14332 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14333
14334         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14335
14336 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14337
14338         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14339         to "std::string".
14340
14341 2018-01-17  Tom Tromey  <tom@tromey.com>
14342
14343         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14344
14345 2018-01-17  Tom Tromey  <tom@tromey.com>
14346
14347         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14348         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14349         (create_array_type_with_stride): Update.
14350         * dwarf2read.c (set_die_type): Update.
14351
14352 2018-01-17  Tom Tromey  <tom@tromey.com>
14353
14354         * dwarf2read.c (delayed_method_info): Remove typedef.
14355         (dwarf2_cu::method_info): Now a std::vector.
14356         (add_to_method_list): Update.
14357         (free_delayed_list): Remove.
14358         (compute_delayed_physnames): Update.
14359         (process_full_comp_unit, process_full_type_unit): Clear the method
14360         list.  Remove cleanups.
14361         (psymtab_include_file_name): Add name_holder parameter.  Use
14362         unique_xmalloc_ptr.
14363         (dwarf_decode_lines): Update.
14364
14365 2018-01-17  Tom Tromey  <tom@tromey.com>
14366             Simon Marchi  <simon.marchi@ericsson.com>
14367
14368         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14369         (dwarf2_per_objfile::free_cached_comp_units)
14370         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14371         (init_cutu_and_read_dies_no_follow): Update.
14372         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14373         (dwarf2_cu::~dwarf2_cu): New.
14374         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14375         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14376
14377 2018-01-17  Tom Tromey  <tom@tromey.com>
14378             Simon Marchi  <simon.marchi@ericsson.com>
14379
14380         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14381         (struct die_reader_specs) <abbrev_table>: New member.
14382         (struct abbrev_table): Add constructor.
14383         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14384         <abbrev_obstack>: Now an auto_obstack.
14385         (abbrev_table_up): New typedef.
14386         (init_cu_die_reader): Add abbrev_table parameter.
14387         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14388         Add result_dwo_abbrev_table.
14389         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14390         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14391         Update.
14392         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14393         parameter.
14394         (skip_children): Update.
14395         (abbrev_table::alloc_abbrev): Rename from
14396         abbrev_table_alloc_abbrev.
14397         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14398         (abbrev_table::lookup_abbrev): Rename from
14399         abbrev_table_lookup_abbrev.
14400         (abbrev_table_read_table): Return abbrev_table_up.
14401         (abbrev_table_free, abbrev_table_free_cleanup)
14402         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14403         (load_partial_dies): Update.
14404
14405 2018-01-17  Tom Tromey  <tom@tromey.com>
14406
14407         * dwarf2read.c (dwarf2_compute_name): Update comment.
14408         (read_func_scope, read_variable): Update.
14409         (new_symbol): Remove.
14410         (new_symbol_full): Rename to new_symbol.
14411
14412 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14413
14414         PR gdb/16577
14415         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14416         a warning instead of throwing an error, set section size to 0 and return
14417         NULL.
14418         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14419
14420 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14421
14422         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14423         std::string.
14424         (linux_ptrace_attach_fail_reason_string): Likewise.
14425         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14426         Likewise.
14427         (linux_ptrace_attach_fail_reason_string): Likewise.
14428         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14429
14430 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14431
14432         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14433
14434 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14435
14436         PR gdb/21559
14437         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14438         checking for fs_base/gs_base fields in struct user_regs_struct.
14439         * configure: Regenerate.
14440
14441 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14442
14443         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14444         function.
14445         (aarch64_linux_init_abi): Install it to gdbarch hook
14446         gcc_target_options.
14447
14448 2018-01-15  Pedro Alves  <palves@redhat.com>
14449
14450         * common/signals-state-save-restore.c
14451         (save_original_signals_state): Fix typos.
14452
14453 2017-01-12  Tom Tromey  <tom@tromey.com>
14454             Sergio Durigan Junior  <sergiodj@redhat.com>
14455
14456         * Makefile.in (install-only): Install gdb-add-index.
14457
14458 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14459
14460         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14461
14462 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14463
14464         * infrun.c (keep_going_pass_signal): Clear step-over info when
14465         insert_breakpoints fails.
14466
14467 2018-01-11  Pedro Alves  <palves@redhat.com>
14468
14469         PR gdb/22583
14470         * infrun.c (resume): Rename to ...
14471         (resume_1): ... this.
14472         (resume): Reimplement as wrapper around resume_1.
14473
14474 2018-01-11  Pedro Alves  <palves@redhat.com>
14475
14476         PR remote/22597
14477         * remote.c (remote_parse_stop_reply): Default to the last-set
14478         general thread instead of to 'magic_null_ptid'.
14479
14480 2018-01-10  Pedro Alves  <palves@redhat.com>
14481
14482         * language.h (language_get_symbol_name_matcher): Rename ...
14483         (get_symbol_name_matcher): ... this.
14484         * language.c (language_get_symbol_name_matcher): Ditto.
14485         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14486         callers adjusted.
14487
14488 2018-01-10  Pedro Alves  <palves@redhat.com>
14489
14490         PR gdb/22670
14491         * dwarf2read.c
14492         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14493         Adjust to use language_get_symbol_name_matcher instead of
14494         language_defn::la_get_symbol_name_matcher.
14495         * language.c (language_get_symbol_name_matcher): If in Ada mode
14496         and the lookup name is a verbatim match, return Ada's matcher.
14497         * language.h (language_get_symbol_name_matcher): Adjust comment.
14498         (ada_lookup_name_info::verbatim_p):: New method.
14499
14500 2018-01-10  Pedro Alves  <palves@redhat.com>
14501
14502         PR gdb/22670
14503         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14504         minsym's language is language_auto or language_cplus, pass down
14505         language_ada instead.
14506         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14507
14508 2018-01-10  Pedro Alves  <palves@redhat.com>
14509
14510         PR gdb/22670
14511         * minsyms.c (linkage_name_str): New function.
14512         (iterate_over_minimal_symbols): Use it.
14513
14514 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14515
14516         * NEWS: Document that 'info proc' now works on FreeBSD.
14517
14518 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14519
14520         * configure.ac: Check for kinfo_getfile in libutil.
14521         * configure: Regenerate.
14522         * config.in: Regenerate.
14523         * fbsd-nat.c: Include "fbsd-tdep.h".
14524         (fbsd_fetch_cmdline): New.
14525         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14526         rather than calling error.
14527         (fbsd_info_proc): New.
14528         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14529         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14530         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14531
14532 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14533
14534         * fbsd-nat.c (struct free_deleter): Remove.
14535         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14536
14537 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14538
14539         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14540         NULL for an empty pathname.
14541
14542 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14543
14544         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14545         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14546         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14547         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14548         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14549         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14550         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14551         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14552         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14553         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14554         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14555         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14556         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14557         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14558         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14559
14560 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14561
14562         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14563         (gnu_xfer_auxv): New function.
14564         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14565         TARGET_OBJECT_AUXV.
14566
14567 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14568             Simon Marchi  <simon.marchi@ericsson.com>
14569
14570         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14571         common/selftest.c.
14572         (COMMON_OBS): Remove selftest.o.
14573         * configure.ac: Append selftest-arch.c and common/selftest.c to
14574         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14575         * configure: Re-generated.
14576         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14577         GDB_SELF_TEST.
14578         (maintenance_info_selftests): Likewise.
14579
14580 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14581
14582         * ada-valprint.c (val_print_packed_array_elements): Use
14583         proper number of elements when printing an array indexed
14584         by an enumeration type.
14585
14586 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14587
14588         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14589         (dw2_get_file_names_reader): Adjust.
14590         (lookup_dwo_signatured_type): Adjust.
14591         (lookup_dwp_signatured_type): Adjust.
14592         (lookup_signatured_type): Adjust.
14593         (create_type_unit_group): Adjust.
14594         (get_type_unit_group): Adjust.
14595         (process_psymtab_comp_unit_reader): Adjust.
14596         (build_type_psymtabs_reader): Adjust.
14597         (scan_partial_symbols): Adjust.
14598         (add_partial_symbol): Adjust.
14599         (add_partial_subprogram): Adjust.
14600         (peek_die_abbrev): Adjust.
14601         (fixup_go_packaging): Adjust.
14602         (process_imported_unit_die): Adjust.
14603         (dwarf2_compute_name): Adjust.
14604         (dwarf2_physname): Adjust.
14605         (read_import_statement): Adjust.
14606         (handle_DW_AT_stmt_list): Adjust.
14607         (read_file_scope): Adjust.
14608         (read_func_scope): Adjust.
14609         (read_lexical_block_scope): Adjust.
14610         (read_call_site_scope): Adjust.
14611         (read_variable): Adjust.
14612         (dwarf2_rnglists_process): Adjust.
14613         (dwarf2_ranges_process): Adjust.
14614         (dwarf2_ranges_read): Adjust.
14615         (dwarf2_get_pc_bounds): Adjust.
14616         (dwarf2_record_block_ranges): Adjust.
14617         (dwarf2_add_field): Adjust.
14618         (dwarf2_add_member_fn): Adjust.
14619         (read_structure_type): Adjust.
14620         (process_structure_scope): Adjust.
14621         (read_enumeration_type): Adjust.
14622         (read_array_type): Adjust.
14623         (mark_common_block_symbol_computed): Adjust.
14624         (read_common_block): Adjust.
14625         (read_namespace_type): Adjust.
14626         (read_namespace): Adjust.
14627         (read_module_type): Adjust.
14628         (read_tag_pointer_type): Adjust.
14629         (read_tag_ptr_to_member_type): Adjust.
14630         (read_tag_string_type): Adjust.
14631         (read_subroutine_type): Adjust.
14632         (read_typedef): Adjust.
14633         (read_base_type): Adjust.
14634         (attr_to_dynamic_prop): Adjust.
14635         (read_subrange_type): Adjust.
14636         (read_unspecified_type): Adjust.
14637         (dwarf2_read_abbrevs): Adjust.
14638         (load_partial_dies): Adjust.
14639         (read_partial_die): Adjust.
14640         (find_partial_die): Adjust.
14641         (guess_partial_die_structure_name): Adjust.
14642         (fixup_partial_die): Adjust.
14643         (read_attribute_value): Adjust.
14644         (read_addr_index): Adjust.
14645         (read_addr_index_from_leb128): Adjust.
14646         (read_str_index): Adjust.
14647         (dwarf2_string_attr): Adjust.
14648         (get_debug_line_section): Adjust.
14649         (dwarf_decode_line_header): Adjust.
14650         (lnp_state_machine::check_line_address): Adjust.
14651         (dwarf_decode_lines_1): Adjust.
14652         (dwarf_decode_lines): Adjust.
14653         (dwarf2_start_symtab): Adjust.
14654         (var_decode_location): Adjust.
14655         (new_symbol_full): Adjust.
14656         (dwarf2_const_value_data): Adjust.
14657         (dwarf2_const_value_attr): Adjust.
14658         (dwarf2_const_value): Adjust.
14659         (die_type): Adjust.
14660         (die_containing_type): Adjust.
14661         (build_error_marker_type): Adjust.
14662         (lookup_die_type): Adjust.
14663         (guess_full_die_structure_name): Adjust.
14664         (anonymous_struct_prefix): Adjust.
14665         (determine_prefix): Adjust.
14666         (dwarf2_name): Adjust.
14667         (follow_die_ref_or_sig): Adjust.
14668         (follow_die_offset): Adjust.
14669         (follow_die_ref): Adjust.
14670         (follow_die_sig_1): Adjust.
14671         (follow_die_sig): Adjust.
14672         (get_signatured_type): Adjust.
14673         (get_DW_AT_signature_type): Adjust.
14674         (decode_locdesc): Adjust.
14675         (dwarf_decode_macros): Adjust.
14676         (cu_debug_loc_section): Adjust.
14677         (fill_in_loclist_baton): Adjust.
14678         (dwarf2_symbol_mark_computed): Adjust.
14679         (init_one_comp_unit): Don't assign
14680         dwarf2_cu::dwarf2_per_objfile.
14681         (set_die_type): Adjust.
14682
14683 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14684
14685         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14686         <dwarf2_per_objfile>: New field.
14687         (dwarf2_per_objfile): Remove global.
14688         (get_dwarf2_per_objfile): New function.
14689         (set_dwarf2_per_objfile): New function.
14690         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14691         dwarf2_per_objfile.
14692         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14693         (read_abbrev_offset): Likewise.
14694         (read_indirect_string): Likewise.
14695         (read_indirect_line_string): Likewise.
14696         (read_indirect_string_at_offset): Likewise.
14697         (read_indirect_string_from_dwz): Likewise.
14698         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14699         dwarf2_per_objfile.
14700         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14701         (create_all_comp_units): Change objfile parameter to
14702         dwarf2_per_objfile.
14703         (create_all_type_units): Likewise.
14704         (process_queue): Add dwarf2_per_objfile parameter.
14705         (read_and_check_comp_unit_head): Likewise.
14706         (lookup_dwo_unit_in_dwp): Likewise.
14707         (get_dwp_file): Likewise.
14708         (process_cu_includes): Likewise.
14709         (struct free_dwo_file_cleanup_data): New struct.
14710         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14711         set_dwarf2_per_objfile.
14712         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14713         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14714         context, adjust calls.
14715         (dw2_instantiate_symtab): Likewise.
14716         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14717         (dw2_get_cu): Likewise.
14718         (create_cu_from_index_list): Change objfile parameter to
14719         dwarf2_per_objfile.
14720         (create_cus_from_index_list): Get dwarf2_per_objfile from
14721         context, adjust calls.
14722         (create_cus_from_index): Likewise.
14723         (create_signatured_type_table_from_index): Change objfile
14724         parameter to dwarf2_per_objfile.
14725         (create_signatured_type_table_from_debug_names): Change objfile
14726         parameter to dwarf2_per_objfile.
14727         (create_addrmap_from_index): Likewise.
14728         (create_addrmap_from_aranges): Likewise.
14729         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14730         (dw2_setup): Remove.
14731         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14732         context.
14733         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14734         get_dwarf2_per_objfile.
14735         (dw2_forget_cached_source_info): Likewise.
14736         (dw2_map_symtabs_matching_filename): Likewise.
14737         (struct dw2_symtab_iterator) <index>: Remove.
14738         <dwarf2_per_objfile>: New field.
14739         (dw2_symtab_iter_init): Replace index parameter with
14740         dwarf2_per_objfile.
14741         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14742         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14743         (dw2_print_stats): Likewise.
14744         (dw2_dump): Likewise.
14745         (dw2_expand_symtabs_for_function): Likewise.
14746         (dw2_expand_all_symtabs): Likewise.
14747         (dw2_expand_symtabs_with_fullname): Likewise.
14748         (dw2_expand_marked_cus): Replace index and objfile parameters
14749         with dwarf2_per_objfile.
14750         (dw_expand_symtabs_matching_file_matcher): Add
14751         dwarf2_per_objfile parameter and adjust calls.
14752         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14753         adjust calls.
14754         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14755         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14756         adjust calls.
14757         (create_cus_from_debug_names_list): Replace objfile parameter
14758         with dwarf2_per_objfile and adjust calls.
14759         (create_cus_from_debug_names): Likewise.
14760         (dwarf2_read_debug_names): Likewise.
14761         (mapped_debug_names::namei_to_name): Adjust call.
14762         (dw2_debug_names_iterator::next): Likewise.
14763         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14764         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14765         (dw2_debug_names_dump): Likewise.
14766         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14767         (dw2_debug_names_expand_symtabs_matching): Likewise.
14768         (dwarf2_initialize_objfile): Likewise.
14769         (dwarf2_build_psymtabs): Likewise.
14770         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14771         this_cu.
14772         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14773         (read_and_check_comp_unit_head): Likewise.
14774         (read_abbrev_offset): Likewise.
14775         (create_debug_type_hash_table): Likewise.
14776         (create_debug_types_hash_table): Likewise.
14777         (create_all_type_units): Replace objfile parameter with
14778         dwarf2_per_objfile.
14779         (add_type_unit): Add dwarf2_per_objfile parameter.
14780         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14781         with dwarf2_per_objfile.
14782         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14783         (lookup_dwp_signatured_type): Likewise.
14784         (lookup_signatured_type): Likewise.
14785         (read_cutu_die_from_dwo): Likewise.
14786         (init_tu_and_read_dwo_dies): Likewise.
14787         (init_cutu_and_read_dies): Likewise.
14788         (init_cutu_and_read_dies_no_follow): Likewise.
14789         (allocate_type_unit_groups_table): Add objfile parameter.
14790         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14791         (get_type_unit_group): Likewise.
14792         (process_psymtab_comp_unit): Update call.
14793         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14794         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14795         (print_tu_stats): Likewise.
14796         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14797         in void* parameter.
14798         (build_type_psymtabs): Change objfile parameter to
14799         dwarf2_per_objfile.
14800         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14801         passed in void* parameter.
14802         (process_skeletonless_type_units): Change objfile parameter to
14803         dwarf2_per_objfile.
14804         (set_partial_user): Likewise.
14805         (dwarf2_build_psymtabs_hard): Likewise.
14806         (read_comp_units_from_section): Likewise.
14807         (create_all_comp_units): Likewise.
14808         (scan_partial_symbols): Update calls.
14809         (add_partial_symbol): Likewise.
14810         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14811         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14812         (process_queue): Add dwarf2_per_objfile parameter.
14813         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14814         (compute_compunit_symtab_includes): Likewise.
14815         (process_cu_includes): Add dwarf2_per_objfile parameter.
14816         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14817         (process_full_type_unit): Likewise.
14818         (process_imported_unit_die): Update call.
14819         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14820         (read_file_scope): Likewise.
14821         (allocate_dwo_file_hash_table): Add objfile parameter.
14822         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14823         (create_cus_hash_table): Likewise.
14824         (create_dwp_hash_table): Likewise.
14825         (create_dwo_unit_in_dwp_v1): Likewise.
14826         (create_dwp_v2_section): Likewise.
14827         (create_dwo_unit_in_dwp_v2): Likewise.
14828         (lookup_dwo_unit_in_dwp): Likewise.
14829         (try_open_dwop_file): Likewise.
14830         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14831         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14832         cleanup to include a reference to dwarf2_per_objfile.
14833         (open_dwp_file): Add dwarf2_per_objfile parameter.
14834         (open_and_init_dwp_file): Likewise.
14835         (get_dwp_file): Likewise.
14836         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14837         (queue_and_load_all_dwo_tus): Update call.
14838         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14839         data.
14840         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14841         (dwarf2_ranges_process): Likewise.
14842         (dwarf2_get_pc_bounds): Likewise.
14843         (mark_common_block_symbol_computed): Likewise.
14844         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14845         (dwarf2_read_abbrevs): Update call.
14846         (read_partial_die): Use dwarf2_per_objfile from cu.
14847         (find_partial_die): Likewise.
14848         (fixup_partial_die): Likewise.
14849         (read_attribute_value): Likewise.
14850         (read_indirect_string_at_offset_from): Add objfile parameter.
14851         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14852         parameter.
14853         (read_indirect_string_from_dwz): Add objfile parameter.
14854         (read_indirect_string): Add objfile parameter.
14855         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14856         (read_addr_index): Use dwarf2_per_objfile from cu.
14857         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14858         call dw2_setup.
14859         (read_str_index): Use dwarf2_per_objfile from cu.
14860         (get_debug_line_section): Likewise.
14861         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14862         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14863         (new_symbol_full): Use dwarf2_per_objfile from cu.
14864         (build_error_marker_type): Likewise.
14865         (lookup_die_type): Likewise.
14866         (determine_prefix): Likewise.
14867         (follow_die_offset): Likewise.
14868         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14869         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14870         (dwarf2_fetch_die_type_sect_off): Likewise.
14871         (dwarf2_get_die_type): Likewise.
14872         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14873         (get_signatured_type): Likewise.
14874         (get_DW_AT_signature_type): Likewise.
14875         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14876         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14877         (cu_debug_loc_section): Likewise.
14878         (fill_in_loclist_baton): Likewise.
14879         (dwarf2_symbol_mark_computed): Likewise.
14880         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14881         dwarf2_per_objfile.
14882         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14883         parameter.
14884         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14885         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14886         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14887         (set_die_type): Use dwarf2_free_objfile from cu.
14888         (get_die_type_at_offset): Likewise.
14889         (dwarf2_per_objfile_free): Don't assign global variable.
14890         (debug_names) <constructor>: Add dwarf2_per_objfile
14891         parameter, update m_debugstrlookup construction.
14892         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14893         parameter.
14894         <m_dwarf2_per_objfile>: New field.
14895         <lookup>: Use m_dwarf2_per_objfile.
14896         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14897         (psyms_seen_size): Likewise.
14898         (write_gdbindex): Replace objfile parameter with
14899         dwarf2_per_objfile.
14900         (write_debug_names): Likewise.
14901         (write_psymtabs_to_index): Likewise.
14902         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14903         calls.
14904
14905 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14906
14907         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14908         <dwarf2_per_objfile>: New field.
14909         (struct dwarf2_per_cu_data) <objfile>: Remove.
14910         <dwarf2_per_objfile>: New field.
14911         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14912         of objfile.
14913         (create_signatured_type_table_from_index): Likewise.
14914         (create_debug_type_hash_table): Likewise.
14915         (fill_in_sig_entry_from_dwo_entry): Likewise.
14916         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14917         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14918         objfile.
14919         (create_partial_symtab): Access objfile through
14920         dwarf2_per_objfile.
14921         (process_psymtab_comp_unit_reader): Likewise.
14922         (read_comp_units_from_section): Likewise.
14923         (scan_partial_symbols): Likewise.
14924         (add_partial_symbol): Likewise.
14925         (add_partial_subprogram): Likewise.
14926         (peek_die_abbrev): Likewise.
14927         (fixup_go_packaging): Likewise.
14928         (process_full_comp_unit): Likewise.
14929         (process_full_type_unit): Likewise.
14930         (process_imported_unit_die): Likewise.
14931         (dwarf2_compute_name): Likewise.
14932         (dwarf2_physname): Likewise.
14933         (read_import_statement): Likewise.
14934         (create_cus_hash_table): Assign dwarf2_physname instead of
14935         objfile.
14936         (read_func_scope): Access objfile through dwarf2_per_objfile.
14937         (read_lexical_block_scope): Likewise.
14938         (read_call_site_scope): Likewise.
14939         (read_variable): Likewise.
14940         (dwarf2_rnglists_process): Likewise.
14941         (dwarf2_ranges_process): Likewise.
14942         (dwarf2_ranges_read): Likewise.
14943         (dwarf2_record_block_ranges): Likewise.
14944         (dwarf2_add_field): Likewise.
14945         (dwarf2_add_member_fn): Likewise.
14946         (read_structure_type): Likewise.
14947         (process_structure_scope): Likewise.
14948         (read_enumeration_type): Likewise.
14949         (read_array_type): Likewise.
14950         (read_common_block): Likewise.
14951         (read_namespace_type): Likewise.
14952         (read_namespace): Likewise.
14953         (read_module_type): Likewise.
14954         (read_tag_pointer_type): Likewise.
14955         (read_tag_ptr_to_member_type): Likewise.
14956         (read_tag_string_type): Likewise.
14957         (read_subroutine_type): Likewise.
14958         (read_typedef): Likewise.
14959         (read_base_type): Likewise.
14960         (attr_to_dynamic_prop): Likewise.
14961         (read_subrange_type): Likewise.
14962         (read_unspecified_type): Likewise.
14963         (load_partial_dies): Likewise.
14964         (read_partial_die): Likewise.
14965         (find_partial_die): Likewise.
14966         (guess_partial_die_structure_name): Likewise.
14967         (fixup_partial_die): Likewise.
14968         (read_attribute_value): Likewise.
14969         (read_addr_index_from_leb128): Likewise.
14970         (dwarf2_read_addr_index): Likewise.
14971         (dwarf2_string_attr): Likewise.
14972         (lnp_state_machine::check_line_address): Likewise.
14973         (dwarf_decode_lines_1): Likewise.
14974         (dwarf_decode_lines): Likewise.
14975         (dwarf2_start_symtab): Likewise.
14976         (var_decode_location): Likewise.
14977         (new_symbol_full): Likewise.
14978         (dwarf2_const_value_data): Likewise.
14979         (dwarf2_const_value_attr): Likewise.
14980         (dwarf2_const_value): Likewise.
14981         (die_type): Likewise.
14982         (die_containing_type): Likewise.
14983         (lookup_die_type): Likewise.
14984         (guess_full_die_structure_name): Likewise.
14985         (anonymous_struct_prefix): Likewise.
14986         (dwarf2_name): Likewise.
14987         (follow_die_ref_or_sig): Likewise.
14988         (follow_die_offset): Likewise.
14989         (follow_die_ref): Likewise.
14990         (dwarf2_fetch_die_loc_sect_off): Likewise.
14991         (dwarf2_fetch_constant_bytes): Likewise.
14992         (dwarf2_fetch_die_type_sect_off): Likewise.
14993         (dwarf2_get_die_type): Likewise.
14994         (follow_die_sig): Likewise.
14995         (decode_locdesc): Likewise.
14996         (dwarf2_per_cu_objfile): Likewise.
14997         (dwarf2_per_cu_text_offset): Likewise.
14998         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14999         objfile.
15000         (set_die_type): Access objfile through
15001         dwarf2_per_objfile.
15002
15003 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15004
15005         * valprint.c (converted_character_d): Remove typedef.
15006         (DEF_VEC_O (converted_character_d)): Remove.
15007         (count_next_character): Use std::vector.
15008         (print_converted_chars_to_obstack): Likewise.
15009         (generic_printstr): Likewise.
15010
15011 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15012
15013         * xml-support.h (struct gdb_xml_value): Add constructor.
15014         <value>: Change type to unique_xmalloc_ptr.
15015         (gdb_xml_value_s): Remove typedef.
15016         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15017         (gdb_xml_element_start_handler): Change parameter type to
15018         std::vector.
15019         (xml_find_attribute): Likewise.
15020         * xml-support.c (xml_find_attribute): Change parameter type to
15021         std::vector and adjust.
15022         (gdb_xml_values_cleanup): Remove.
15023         (gdb_xml_parser::start_element): Adjust to std::vector.
15024         (xinclude_start_include): Change paraeter type to std::vector
15025         and adjust.
15026         * btrace.c (check_xml_btrace_version): Likewise.
15027         (parse_xml_btrace_block): Likewise.
15028         (parse_xml_btrace_pt_config_cpu): Likewise.
15029         (parse_xml_btrace_pt): Likewise.
15030         (parse_xml_btrace_conf_bts): Likewise.
15031         (parse_xml_btrace_conf_pt): Likewise.
15032         * memory-map.c (memory_map_start_memory): Likewise.
15033         (memory_map_start_property): Likewise.
15034         * osdata.c (osdata_start_osdata): Likewise.
15035         (osdata_start_item): Likewise.
15036         (osdata_start_column): Likewise.
15037         * remote.c (start_thread): Likewise.
15038         * solib-aix.c (library_list_start_library): Likewise.
15039         (library_list_start_list): Likewise.
15040         * solib-svr4.c (library_list_start_library): Likewise.
15041         (svr4_library_list_start_list): Likewise.
15042         * solib-target.c (library_list_start_segment): Likewise.
15043         (library_list_start_section): Likewise.
15044         (library_list_start_library): Likewise.
15045         (library_list_start_list): Likewise.
15046         * tracepoint.c (traceframe_info_start_memory): Likewise.
15047         (traceframe_info_start_tvar): Likewise.
15048         * xml-syscall.c (syscall_start_syscall): Likewise.
15049         * xml-tdesc.c (tdesc_start_target): Likewise.
15050         (tdesc_start_feature): Likewise.
15051         (tdesc_start_reg): Likewise.
15052         (tdesc_start_union): Likewise.
15053         (tdesc_start_struct): Likewise.
15054         (tdesc_start_flags): Likewise.
15055         (tdesc_start_enum): Likewise.
15056         (tdesc_start_field): Likewise.
15057         (tdesc_start_enum_value): Likewise.
15058         (tdesc_start_vector): Likewise.
15059
15060 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15061
15062         * extension.h (struct xmethod_worker) <clone>: Remove.
15063         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15064         Remove.
15065         (python_xmethod_worker::clone): Remove.
15066         * valops.c (find_overload_match): Use std::move instead of
15067         clone.
15068
15069 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15070
15071         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15072         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15073         <free_xmethod_worker_data>: Remove.
15074         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15075         <get_xmethod_arg_types>: Remove.
15076         <get_xmethod_result_type>: Remove.
15077         <invoke_xmethod>: Remove.
15078         * extension.c (new_xmethod_worker): Remove.
15079         (clone_xmethod_worker): Remove.
15080         (get_matching_xmethod_workers): Return void, pass std::vector by
15081         pointer.
15082         (get_xmethod_arg_types): Rename to...
15083         (xmethod_worker::get_arg_types): ... this, and adjust.
15084         (get_xmethod_result_type): Rename to...
15085         (xmethod_worker::get_result_type): ... this, and adjust.
15086         (invoke_xmethod): Remove.
15087         (free_xmethod_worker): Remove.
15088         (free_xmethod_worker_vec): Remove.
15089         * extension.h (enum ext_lang_rc): Move here from
15090         extension-priv.h.
15091         (struct xmethod_worker): Add constructor and destructor.
15092         <data>: Remove.
15093         <value>: Remove.
15094         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15095         virtual pure methods.
15096         <get_arg_types, get_result_type>: New methods.
15097         (xmethod_worker_ptr): Remove typedef.
15098         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15099         (xmethod_worker_vec): Remove typedef.
15100         (xmethod_worker_up): New typedef.
15101         (invoke_xmethod): Remove.
15102         (clone_xmethod_worker): Remove.
15103         (free_xmethod_worker): Remove.
15104         (free_xmethod_worker_vec): Remove.
15105         (get_xmethod_arg_types): Remove.
15106         (get_xmethod_result_type): Remove.
15107         * valops.c (find_method_list): Use std::vector, don't use
15108         intermediate vector.
15109         (value_find_oload_method_list): Use std::vector.
15110         (find_overload_match): Use std::vector.
15111         (find_oload_champ): Use std::vector.
15112         * value.c (value_free): Use operator delete.
15113         (value_of_xmethod): Rename to...
15114         (value_from_xmethod): ... this.  Don't assign
15115         xmethod_worker::value, take rvalue-reference.
15116         (result_type_of_xmethod): Adjust.
15117         (call_xmethod): Adjust.
15118         * value.h: Include extension.h.
15119         (struct xmethod_worker): Don't forward-declare.
15120         (value_of_xmethod): Rename to...
15121         (value_from_xmethod): ... this, take rvalue-reference.
15122         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15123         (struct python_xmethod_worker): ... this, add constructor and
15124         destructor.
15125         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15126         (gdbpy_free_xmethod_worker_data): Rename to...
15127         (python_xmethod_worker::~python_xmethod_worker): ... this and
15128         adjust.
15129         (gdbpy_clone_xmethod_worker_data): Rename to...
15130         (python_xmethod_worker::clone): ... this and adjust.
15131         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15132         temporary vector.
15133         (gdbpy_get_xmethod_arg_types): Rename to...
15134         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15135         (gdbpy_get_xmethod_result_type): Rename to...
15136         (python_xmethod_worker::do_get_result_type): ... this and
15137         adjust.
15138         (gdbpy_invoke_xmethod): Rename to...
15139         (python_xmethod_worker::invoke): ... this and adjust.
15140         (new_python_xmethod_worker): Rename to...
15141         (python_xmethod_worker::python_xmethod_worker): ... this and
15142         adjust.
15143         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15144         Remove.
15145         (gdbpy_free_xmethod_worker_data): Remove.
15146         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15147         (gdbpy_get_xmethod_arg_types): Remove.
15148         (gdbpy_get_xmethod_result_type): Remove.
15149         (gdbpy_invoke_xmethod): Remove.
15150         * python/python.c (python_extension_ops): Remove obsolete
15151         callbacks.
15152
15153 2018-01-05  Pedro Alves  <palves@redhat.com>
15154
15155         PR gdb/18653
15156         * common/signals-state-save-restore.c
15157         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15158         find a custom handler preinstalled, instead of internal erroring.
15159         But only warn if !quiet.
15160         * common/signals-state-save-restore.h
15161         (save_original_signals_state): New parameter 'quiet'.
15162         * main.c (captured_main_1): Move save_original_signals_state call
15163         after option handling, and pass QUIET.
15164
15165 2018-01-05  Pedro Alves  <palves@redhat.com>
15166
15167         * spu-tdep.c (spu_catch_start): Pass
15168         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15169
15170 2018-01-05  Pedro Alves  <palves@redhat.com>
15171
15172         PR gdb/22670
15173         * ada-lang.c (literal_symbol_name_matcher): New function.
15174         (ada_get_symbol_name_matcher): Use it for
15175         symbol_name_match_type::SEARCH_NAME.
15176         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15177         it down instead of assuming symbol_name_match_type::FULL.
15178         * block.h (block_lookup_symbol): New parameter 'match_type'.
15179         * c-valprint.c (print_unpacked_pointer): Use
15180         lookup_symbol_search_name instead of lookup_symbol.
15181         * compile/compile-object-load.c (get_out_value_type): Pass down
15182         symbol_name_match_type::SEARCH_NAME.
15183         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15184         symbol_name_match_type::FULL.
15185         * cp-support.c (cp_get_symbol_name_matcher): Handle
15186         symbol_name_match_type::SEARCH_NAME.
15187         * infrun.c (insert_exception_resume_breakpoint): Use
15188         lookup_symbol_search_name.
15189         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15190         * psymtab.c (maintenance_check_psymtabs): Use
15191         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15192         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15193         SYMBOL_SEARCH_NAME.
15194         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15195         if symbol_name_match_type::SEARCH_NAME.
15196         (lookup_symbol_in_language): Pass down
15197         symbol_name_match_type::FULL.
15198         (lookup_symbol_search_name): New.
15199         (lookup_language_this): Pass down
15200         symbol_name_match_type::SEARCH_NAME.
15201         (lookup_symbol_aux, lookup_local_symbol): New parameter
15202         'match_type'.  Pass it down.
15203         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15204         (lookup_symbol_search_name): New declaration.
15205         (lookup_symbol_in_block): New 'match_type' parameter.
15206
15207 2018-01-05  Pedro Alves  <palves@redhat.com>
15208
15209         PR gdb/22670
15210         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15211         ada_lookup_symbol.
15212         (ada_lookup_symbol): Reimplement in terms of
15213         ada_lookup_symbol_list, bits factored out from
15214         ada_lookup_encoded_symbol.
15215
15216 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15217
15218         * ada-exp.y (write_object_renaming): When subscripting an array
15219         using a symbol as the index, pass the block in call to
15220         ada_lookup_encoded_symbol when looking that symbol up.
15221
15222 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15223
15224         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15225         TYPE_INDEX_TYPE.
15226
15227 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15228
15229         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15230         the case where VALUE_LVAL (val0) is not lval_memory.
15231
15232 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15233
15234         * ada-valprint.c (print_optional_low_bound): Handle
15235         character-indexed array printing like boolean-indexed array
15236         printing.
15237
15238 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15239
15240         * NEWS: Create a new section for the next release branch.
15241         Rename the section of the current branch, now that it has
15242         been cut.
15243
15244 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15245
15246         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15247         * version.in: Bump version to 8.1.50.DATE-git.
15248
15249 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15250
15251         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15252         Add field.
15253         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15254         Add field.
15255         (default_exception_support_info) <catch_handlers_sym>: Add field.
15256         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15257         (ada_exception_name_addr_1): Add "catch handlers" handling.
15258         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15259         Update all callers.
15260         (create_excep_cond_exprs) <ex>: Add parameter.
15261         (re_set_exception): Update create_excep_cond_exprs call.
15262         (print_it_exception, print_one_exception, print_mention_exception)
15263         (print_recreate_exception): Add "catch handler" handling.
15264         (allocate_location_catch_handlers, re_set_catch_handlers)
15265         (check_status_catch_handlers, print_it_catch_handlers)
15266         (print_one_catch_handlers, print_mention_catch_handlers)
15267         (print_recreate_catch_handlers): New function.
15268         (catch_handlers_breakpoint_ops): New variable.
15269         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15270         Add parameter.  Add "catch handler" handling.
15271         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15272         Add "catch handler" handling.
15273         (ada_exception_catchpoint_cond_string): Add "catch handler"
15274         handling.
15275         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15276         call.
15277         (catch_ada_handlers_command): New function.
15278         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15279         operations structure.
15280         (_initialize_ada_language): Add "catch handlers" command entry.
15281         * NEWS: Document "catch handlers" feature.
15282
15283 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15284
15285         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15286         account when creating the array type of the slice.
15287         (ada_value_slice): Likewise.
15288
15289 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15290
15291         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15292         New enum value.
15293         (create_array_type_with_stride): Add byte_stride_prop parameter.
15294         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15295         New parameter.  Update all callers in this file.
15296         (array_type_has_dynamic_stride): New function.
15297         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15298         of arrays with dynamic byte strides.
15299         * dwarf2read.c (read_array_type): Add support for dynamic
15300         DW_AT_byte_stride attributes.
15301
15302 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15303
15304         * dwarf2read.c (read_unspecified_type): Treat
15305         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15306
15307 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15308
15309         Update copyright year range in all GDB files.
15310
15311 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15312
15313         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15314         and gdb/testsuite/gdb.base/step-line.c.
15315
15316 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15317
15318         * copyright.py (main): Dump the contents of
15319         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15320         even if BY_HAND is empty.
15321
15322 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15323
15324         * top.c (print_gdb_version): Update Copyright year in version
15325         message.
15326
15327 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15328
15329         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15330
15331 For older changes see ChangeLog-2017.
15332 \f
15333 Local Variables:
15334 mode: change-log
15335 left-margin: 8
15336 fill-column: 74
15337 version-control: never
15338 coding: utf-8
15339 End: