Do not reopen temporary files
[external/binutils.git] / gdb / ChangeLog
1 2018-10-27  Tom Tromey  <tom@tromey.com>
2
3         * unittests/scoped_fd-selftests.c (test_to_file): New function.
4         (run_tests): Call test_to_file.
5         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
6         temporary files.
7         * common/scoped_fd.h (scoped_fd::to_file): New method.
8
9 2018-10-27  Tom Tromey  <tom@tromey.com>
10
11         * unittests/scoped_mmap-selftests.c (test_normal): Use
12         gdb_mkostemp_cloexec.
13         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
14         Use gdb_mkostemp_cloexec.
15         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
16         gnulib/config.in, gnulib/configure,
17         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
18         gnulib/import/m4/gnulib-cache.m4,
19         gnulib/import/m4/gnulib-comp.m4: Update.
20         * gnulib/import/m4/mkostemp.m4: New file.
21         * gnulib/import/m4/mkstemp.m4: Remove.
22         * gnulib/import/mkostemp.c: New file.
23         * gnulib/import/mkstemp.m4: Remove.
24         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
25         mkstemp, add mkostemp.  Apply new patch.
26         * gnulib/import/stdlib.in.h: Apply patch.
27         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
28         New file.
29         * dwarf-index-write.c (write_psymtabs_to_index): Use
30         gdb_mkostemp_cloexec.
31         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
32
33 2018-10-27  Tom Tromey  <tom@tromey.com>
34
35         * unittests/mkdir-recursive-selftests.c: New file.
36         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
37         unittests/mkdir-recursive-selftests.c.
38         * dwarf-index-cache.c (mkdir_recursive): Move to
39         common/filestuff.c.
40         (index_cache::store): Check return value of mkdir_recursive.
41         (create_dir_and_check, test_mkdir_recursive): Move to new file.
42         (_initialize_index_cache): Don't register test.
43         * common/filestuff.h (mkdir_recursive): Declare.
44         * common/filestuff.c (mkdir_recursive): Move from
45         dwarf-index-cache.c.  Return bool.
46
47 2018-10-27  Tom Tromey  <tom@tromey.com>
48
49         * dwarf-index-write.c (write_psymtabs_to_index): Move
50         make_temp_filename to common/pathstuff.c.
51         * common/pathstuff.h (make_temp_filename): Declare.
52         * common/pathstuff.c (make_temp_filename): New function, moved
53         from dwarf-index-write.c.
54
55 2018-10-27  Tom Tromey  <tom@tromey.com>
56
57         * procfs.c (procfs_target::create_inferior): Use get_shell.
58         * cli/cli-cmds.c (shell_escape): Use get_shell.
59         * windows-nat.c (windows_nat_target::create_inferior): Use
60         get_shell.
61         * common/pathstuff.c (get_shell): New function.
62         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
63         (fork_inferior): Use get_shell.
64         * common/pathstuff.h (get_shell): Declare.
65
66 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
67
68         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
69
70 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
71
72         * stack.c (print_variable_and_value_data): Add preg and treg.
73         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
74         and update callers.
75         (print_frame_arg_vars): Likewise.
76         (prepare_reg): New function.
77         (info_locals_command): Extract info print args and use them.
78         (info_args_command): Likewise.
79         (_initialize_stack): Modify on-line help.
80         * symtab.c (treg_matches_sym_type_name): New function.
81         (search_symbols): New arg t_regexp.
82         (symtab_symbol_info): New args quiet, regexp, t_regexp.
83         (info_variables_command): Extract info print args and use them.
84         (info_functions_command): Likewise.
85         (info_types_command): Update call to symtab_symbol_info.
86         (_initialize_symtab): Modify on-line help.
87         * symtab.h (treg_matches_sym_type_name): New function.
88         (search_symbols): New t_regexp arg.
89
90 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
91
92         * cli-utils.c (extract_arg_maybe_quoted): New function.
93         (extract_info_print_args): New function.
94         (info_print_args_help): New function.
95         (report_unrecognized_option_error): New function.
96         * cli-utils.h (extract_arg_maybe_quoted): New function.
97         (extract_info_print_args): New function.
98         (info_print_args_help): New function.
99         (report_unrecognized_option_error): New function.
100
101 2018-10-26  Tom Tromey  <tom@tromey.com>
102
103         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
104         (compute_compunit_symtab_includes): Update.
105         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
106         (compunit_symtab_ptr): Likewise.
107
108 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
109
110         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
111         default_print_auxv_entry for specific tag values.
112
113 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
114
115         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
116
117 2018-10-26  Jim Wilson  <jimw@sifive.com>
118
119         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
120         (riscv_linux_sigframe_init): Declare.
121         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
122         (riscv_linux_sigframe): New.
123         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
124         (riscv_linux_sigframe_init): Define.
125         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
126
127         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
128         (riscv_isa_flen): Likewise.  Drop static.
129         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
130         (riscv_isa_flen): Likewise.  Declare.
131
132 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
133             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
134
135         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
136         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
137         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
138         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
139         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
140         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
141         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
142         Define.
143         (struct ppc_linux_features) <htm>: New field.
144         (ppc_linux_no_features): Add initializer for htm field.
145         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
146         new tdescs.
147         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
148         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
149         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
150         Define if not already defined.
151         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
152         and rs6000/powerpc-isa207-htm-vsx64l.
153         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
154         rs6000/powerpc-isa207-htm-vsx64l.xml.
155         * features/rs6000/power-htm-spr.xml: New file.
156         * features/rs6000/power-htm-core.xml: New file.
157         * features/rs6000/power64-htm-core.xml: New file.
158         * features/rs6000/power-htm-fpu.xml: New file.
159         * features/rs6000/power-htm-altivec.xml: New file.
160         * features/rs6000/power-htm-vsx.xml: New file.
161         * features/rs6000/power-htm-ppr.xml: New file.
162         * features/rs6000/power-htm-dscr.xml: New file.
163         * features/rs6000/power-htm-tar.xml: New file.
164         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
165         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
166         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
167         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
168         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
169         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
170         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
171         fetch_regset with HTM regsets.
172         (store_register, store_ppc_registers): Call store_regset with HTM
173         regsets.
174         (ppc_linux_nat_target::read_description): Set htm field in the
175         features struct if needed.
176         * ppc-linux-tdep.c: Include
177         features/rs6000/powerpc-isa207-htm-vsx32l.c and
178         features/rs6000/powerpc-isa207-htm-vsx64l.c.
179         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
180         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
181         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
182         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
183         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
184         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
185         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
186         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
187         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
188         (ppc32_linux_ctarregset): New globals.
189         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
190         (ppc_linux_collect_core_cpgrregset): New function.
191         (ppc_linux_iterate_over_regset_sections): Call back with the htm
192         regsets.
193         (ppc_linux_core_read_description): Check if the tm spr section is
194         present and set htm in the features struct.
195         (_initialize_ppc_linux_tdep): Call
196         initialize_tdesc_powerpc_isa207_htm_vsx32l and
197         initialize_tdesc_powerpc_isa207_htm_vsx64l.
198         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
199         Declare.
200         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
201         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
202         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
203         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
204         New fields.
205         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
206         Likewise.
207         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
208         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
209         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
210         New enum fields.
211         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
212         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
213         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
214         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
215         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
216         <PPC_CTAR_REGNUM>: Likewise.
217         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
218         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
219         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
220         (IS_CEFP_PSEUDOREG): Define.
221         (rs6000_register_name): Hide the upper halves of checkpointed VSX
222         registers.  Return names for the checkpointed DFP, VSX, and EFP
223         pseudo registers.
224         (rs6000_pseudo_register_type): Remove initial assert and raise an
225         internal error in the else clause instead.  Return types for the
226         checkpointed DFP, VSX, and EFP pseudo registers.
227         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
228         checkpointed DFP pseudo registers.
229         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
230         checkpointed VSX pseudo registers.
231         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
232         from efpr_pseudo_register_read and
233         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
234         registers.
235         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
236         Handle checkpointed DFP, VSX, and EFP registers.
237         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
238         (efp_ax_pseudo_register_collect): New functions.
239         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
240         register logic to new functions.  Handle checkpointed DFP, VSX,
241         and EFP pseudo registers.
242         (rs6000_gdbarch_init): Look for and validate the htm features.
243         Include checkpointed DFP, VSX and EFP pseudo-registers.
244         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
245         HTM registers.
246
247 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
248
249         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
250         without altivec or fpu.
251
252 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
253             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
254
255         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
256         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
257         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
258         Define if not already defined.
259         * features/rs6000/power-ebb.xml: New file.
260         * features/rs6000/power-linux-pmu.xml: New file.
261         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
262         features.
263         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
264         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
265         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
266         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
267         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
268         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
269         fetch_regset with ebb and pmu regsets.
270         (store_register, store_ppc_registers): Call store_regset with ebb
271         and pmu regsets.
272         (ppc_linux_nat_target::read_description): Set isa207 field in the
273         features struct if ebb and pmu are avaiable.
274         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
275         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
276         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
277         and pmu regsets.
278         (ppc_linux_core_read_description): Check if the pmu section is
279         present and set isa207 in the features struct.
280         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
281         (ppc32_linux_pmuregset): Declare.
282         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
283         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
284         <ppc_sier_regnum>: New field.
285         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
286         New enum values.
287         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
288         values.
289         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
290         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
291         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
292         ebb and pmu features.
293
294 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
295             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
296
297         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
298         (tdesc_powerpc_isa207_vsx64l): Declare.
299         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
300         (struct ppc_linux_features) <isa207>: New field.
301         (ppc_linux_no_features): Add initializer for isa207 field.
302         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
303         new tdescs.
304         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
305         (NT_PPC_TAR): Define if not already defined.
306         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
307         rs6000/powerpc-isa207-vsx64l.
308         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
309         rs6000/powerpc-isa207-vsx64l.xml.
310         * features/rs6000/power-tar.xml: New file.
311         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
312         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
313         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
314         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
315         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
316         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
317         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
318         fetch_regset with the TAR regset.
319         (store_register, store_ppc_registers): Call store_regset with the
320         TAR regset.
321         (ppc_linux_nat_target::read_description): Set isa207 field in the
322         features struct if needed.
323         * ppc-linux-tdep.c: Include
324         features/rs6000/powerpc-isa207-vsx32l.c and
325         features/rs6000/powerpc-isa207-vsx64l.c.
326         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
327         (ppc_linux_iterate_over_regset_sections): Call back with the tar
328         regset.
329         (ppc_linux_core_read_description): Check if the tar section is
330         present and set isa207 in the features struct.
331         (_initialize_ppc_linux_tdep): Call
332         initialize_tdesc_powerpc_isa207_vsx32l and
333         initialize_tdesc_powerpc_isa207_vsx64l.
334         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
335         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
336         (enum) <PPC_TAR_REGNUM>: New enum value.
337         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
338         feature.
339         (ppc_process_record_op31): Record changes to TAR.
340
341 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
342             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
343
344         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
345         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
346         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
347         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
348         (struct ppc_linux_features) <ppr_dscr>: New field.
349         (ppc_linux_no_features): Add initializer for ppr_dscr field.
350         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
351         new tdescs.
352         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
353         Define if not already defined.
354         * features/Makefile (WHICH): Add
355         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
356         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
357         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
358         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
359         * features/rs6000/power-dscr.xml: New file.
360         * features/rs6000/power-ppr.xml: New file.
361         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
362         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
363         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
364         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
365         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
366         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
367         * ppc-linux-nat.c: Include <sys/uio.h>.
368         (fetch_regset, store_regset, check_regset): New functions.
369         (fetch_register, fetch_ppc_registers): Call fetch_regset with
370         DSCR and PPR regsets.
371         (store_register, store_ppc_registers): Call store_regset with
372         DSCR and PPR regsets.
373         (ppc_linux_get_hwcap2): New function.
374         (ppc_linux_nat_target::read_description): Call
375         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
376         features struct if needed.
377         * ppc-linux-tdep.c: Include
378         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
379         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
380         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
381         (ppc32_linux_dscrregset): New globals.
382         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
383         and dscr regsets.
384         (ppc_linux_core_read_description): Check if the ppr and dscr
385         sections are present and set ppr_dscr in the features struct.
386         (_initialize_ppc_linux_tdep): Call
387         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
388         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
389         * ppc-linux-tdep.h (ppc32_linux_pprregset)
390         (ppc32_linux_dscrregset): Declare.
391         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
392         <ppc_dscr_regnum>: New field.
393         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
394         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
395         and dscr features.
396         (ppc_process_record_op31): Record changes to PPR and DSCR.
397
398 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
399
400         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
401         second initializer line for the have_* variables.  Initialize
402         have_fpu to 0 instead of 1.
403
404 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
405
406         * arch/ppc-linux-common.c (ppc_linux_match_description):
407         Parenthesize tdesc assignements and indent them properly.
408
409 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
410
411         * ppc-linux-nat.c (fetch_register): Change if statement to else
412         if.
413         (store_register): Likewise.
414
415 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
416
417         * rs6000-tdep.c: Remove reggroups.h include.
418         (rs6000_pseudo_register_reggroup_p): Remove.
419         (rs6000_gdbarch_init): Remove call to
420         set_tdesc_pseudo_register_reggroup_p.
421
422 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
423
424         * reggroups.c (default_register_reggroup_p): Return true for
425         decfloat registers and float_reggroup.
426
427 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
428
429         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
430         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
431         ppc_linux_collect_vrregset by regcache_collect_regset.
432
433 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
434
435         * linux-tdep.c (linux_collect_regset_section_cb): Use
436         std::vector<gdb_byte> instead of char * and malloc for buf.
437         Remove xfree.
438
439 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
440
441         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
442         symtab_start instead of always using language_unknown.
443
444 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
445
446         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
447         READ_P parameter, catch and ignore register access errors from
448         either the old or new MISA location.
449         (riscv_has_feature): Update call to riscv_read_misa_reg.
450
451 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
452
453         * python/py-function.c (convert_values_to_python): Return
454         gdbpy_ref<>.  Add header comment.
455         (fnpy_call): Adjust.
456
457 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
458
459         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
460         (cmdpy_completer_handle_brkchars): Adjust.
461         (cmdpy_completer): Adjust.
462
463 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
464
465         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
466         Pass correct regnum to raw_supply_zeroed.
467
468 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
469
470         * regcache.c (cooked_read_test): Add CSKY to the list of
471         architectures with a save_reggroup
472
473 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
474
475         PR gdb/23368
476         * infrun.c (follow_exec): In the follow_exec_mode_new case,
477         transfer terminal state from old new new inferior.
478         * terminal.h (swap_terminal_info): New function.
479         * inflow.c (swap_terminal_info): New function.
480
481 2018-10-23  Tom Tromey  <tom@tromey.com>
482
483         * record-btrace.c (get_thread_current_frame_id): Rename from
484         get_thread_current_frame.  Return a frame_id.
485         (record_btrace_start_replaying): Update.
486
487 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
488
489         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
490         for CSRs.
491
492 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
493
494         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
495         have_nonsteppable_watchpoint attribute to 1.
496
497 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
498
499         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
500         register names.
501         (struct register_alias): Rename to...
502         (struct riscv_register_alias): ...this, and update comment.
503         (riscv_register_aliases): Update type, and alias names.  Remove
504         CSR names from this list.
505         (riscv_register_name): Use riscv_gdb_reg_names for int and float
506         register names.  Add an extra assertion.
507         (riscv_is_regnum_a_named_csr): New function.
508         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
509
510 2018-10-22  Jim Wilson  <jimw@sifive.com>
511
512         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
513         FP reg smaller than FP reg size, and fill with -1 instead of 0.
514
515         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
516         (riscv_register_type): Use them.
517         (riscv_print_one_register_info): Handle union of floats same as float.
518         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
519         riscv_fpreg_q_type fields.
520
521 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
522
523         * gdbarch.sh (gdbarch_num_cooked_regs): New.
524         * gdbarch.h: Re-generate.
525         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
526         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
527         * eval.c (evaluate_subexp_standard): Likewise.
528         * findvar.c (value_of_register): Likewise.
529         (value_of_register_lazy): Likewise.
530         (address_from_register): Likewise.
531         * frame.c (get_frame_register_bytes): Likewise.
532         * gdbarch-selftests.c (register_to_value_test): Likewise.
533         * h8300-tdep.c (h8300_register_type): Likewise.
534         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
535         (i386_svr4_reg_to_regnum): Likewise.
536         * infcmd.c (default_print_registers_info): Likewise.
537         (registers_info): Likewise.
538         (print_vector_info): Likewise.
539         (default_print_float_info): Likewise.
540         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
541         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
542         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
543         (mi_cmd_data_list_changed_registers): Likewise.
544         (mi_cmd_data_list_register_values): Likewise.
545         (mi_cmd_data_write_register_values): Likewise.
546         (mi_cmd_trace_frame_collected): Likewise.
547         * mips-tdep.c (print_gp_register_row): Likewise.
548         (mips_print_registers_info): Likewise.
549         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
550         * regcache.c (init_regcache_descr): Likewise.
551         (register_size): Likewise.
552         (register_dump::dump): Likewise.
553         (cooked_read_test): Likewise.
554         (cooked_write_test): Likewise.
555         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
556         (rs6000_gdbarch_init): Likewise.
557         * stabsread.c (stab_reg_to_regnum): Likewise.
558         * stack.c (info_frame_command): Likewise.
559         * target-descriptions.c (tdesc_register_name): Likewise.
560         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
561         * tui/tui-regs.c (tui_show_register_group): Likewise.
562         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
563         (user_reg_map_regnum_to_name): Likewise.
564         (value_of_user_reg): Likewise.
565         (maintenance_print_user_registers): Likewise.
566         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
567         (xtensa_register_name): Likewise.
568         (xtensa_register_type): Likewise.
569         (xtensa_reg_to_regnum): Likewise.
570         (xtensa_pseudo_register_read): Likewise.
571         (xtensa_pseudo_register_write): Likewise.
572
573 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
574
575         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
576         correctly-sized buffer with raw_read.
577         (amd64_pseudo_register_write): Use correctly-sized buffer for
578         raw_read/raw_write.
579
580 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
581
582         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
583         in add_prefix_cmd of set print type.
584
585 2018-10-19  Tom Tromey  <tom@tromey.com>
586
587         PR tui/18388:
588         * NEWS: Mention tabset deprecation.
589         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
590         (update_tab_width): New function.
591         (tui_set_tab_width, tui_show_tab_width): New functions.
592         (tui_set_tab_width_command): Use update_tab_width.
593         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
594         Add new "set tui tab-width" command.
595         * tui/tui-source.c (tui_set_source_content): Update.
596         * tui/tui-disasm.c (tui_set_disassem_content): Update.
597         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
598         Don't declare.
599         (tui_tab_width): Declare.
600         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
601         (tui_set_default_tab_len): Remove.
602
603 2018-10-19  Tom Tromey  <tom@tromey.com>
604
605         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
606         (key_is_backspace, tui_getc): Don't declare.
607         * tui/tui-io.c (key_is_start_sequence): Now static.
608         (key_is_end_sequence, key_is_backspace): Remove.
609         (tui_getc): Now static.
610
611 2018-10-19  Tom Tromey  <tom@tromey.com>
612
613         * symfile.c (reread_symbols): Clear "static_links".
614
615 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
616
617         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
618         define.
619         (aarch64_linux_sigframe_init): Extra boundary checks.
620
621 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
622
623         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
624         the possibly non-existent tdesc type 'vec128', but the type of raw
625         register v16 instead.
626
627 2018-10-19  Gary Benson <gbenson@redhat.com>
628
629         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
630
631 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
632
633         PR cli/23785
634         * cli/cli-dump.c (restore_binary_file): Check if "file" is
635         NULL.
636
637 2018-10-17  Paul Koning  <paul_koning@dell.com>
638
639         * charset.c (convert_between_encodings): Fix unsigned overflow.
640
641 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
642
643         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
644         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
645         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
646         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
647         New functions.
648         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
649         and fbsd_info_proc_mappings_header.
650         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
651         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
652         New.
653
654 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
655
656         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
657         Solaris Maintainer.
658
659 2018-10-15  Tom Tromey  <tom@tromey.com>
660
661         * tui/tui.c (strcat_to_buf): Remove casts.
662         * tui/tui-winsource.c (tui_show_source_line)
663         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
664         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
665         * tui/tui-windata.c (tui_first_data_item_displayed)
666         (tui_delete_data_content_windows, tui_erase_data_content)
667         (tui_display_all_data, tui_display_data_from)
668         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
669         * tui/tui-win.c (tui_set_win_height)
670         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
671         casts.
672         * tui/tui-win.c (tui_resize_all): Remove casts.
673         (tui_scroll_backward_command, tui_set_focus)
674         (tui_set_tab_width_command): Likewise.
675         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
676         * tui/tui-regs.c (tui_show_register_group): Remove cast.
677         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
678         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
679         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
680         Remove casts.
681
682 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
683
684         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
685         AArch64/ARM maintainer.
686
687 2018-10-11  Gary Benson <gbenson@redhat.com>
688
689         * interps.h (interp::m_name): Make private and mutable.
690         * interps.c (interp::~interp): Free m_name.
691
692 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
693             Simon Marchi <simark@simark.ca>
694
695         * README (`configure' options): Add documentation for new
696         "--enable-unit-tests" option.
697         * acinclude.m4: Include "selftest.m4".
698         * configure: Regenerate.
699         * configure.ac: Use "GDB_AC_SELFTEST".
700         * maint.c (maintenance_selftest): Update message informing
701         that selftests have been disabled.
702         (maintenance_info_selftests): Likewise.
703         * selftest.m4: New file.
704
705 2018-10-10  Gary Benson <gbenson@redhat.com>
706
707         * remote.c (remote_target::remote_send_printf): Add
708         missing va_end found by Coverity.
709
710 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
711
712         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
713
714 2018-10-09  Tom Tromey  <tom@tromey.com>
715
716         * configure: Rebuild.
717         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
718         * NEWS: Update --enable-ubsan documentation.
719
720 2018-10-09  Gary Benson <gbenson@redhat.com>
721
722         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
723         found by Coverity.
724
725 2018-10-08  Tom Tromey  <tom@tromey.com>
726
727         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
728         variable.
729         (riscv_fbsd_init_abi): Likewise.
730
731 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
732         * valops.c (value_struct_elt_for_reference): Rename local variable
733         to work around the shadowing a previous local warning.
734
735 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
736
737         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
738         * NEWS: Mention new FreeBSD/riscv native configuration.
739         * configure.host: Add riscv*-*-freebsd*.
740         * configure.nat: Likewise.
741         * riscv-fbsd-nat.c: New file.
742
743 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
744
745         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
746         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
747         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
748         * NEWS: Mention new FreeBSD/riscv target.
749         * configure.tgt: Add riscv*-*-freebsd*.
750         * riscv-fbsd-tdep.c: New file.
751         * riscv-fbsd-tdep.h: New file.
752
753 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
754
755         * regcache.h (struct regcache_map_entry): Note that this type can
756         be used with traditional frame caches.
757         * trad-frame.c (trad_frame_set_reg_regmap): New.
758         * trad-frame.h (trad_frame_set_reg_regmap): New.
759
760 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
761
762         PR c++/16841
763         * valops.c (get_virtual_base_offset): New function.
764         (value_struct_elt_for_reference): Use it to get virtual base offset
765         and add it in calculating class member address.
766
767 2018-10-08   John Darrington <john@darrington.wattle.id.au>
768
769     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
770       (check_producer): Check if the producer is codewarrior.
771       (producer_is_codewarrior): New function.
772       (lnp_state_machine::record_line): Ignore is_stmt flag for records
773        produced by codewarrior.
774       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
775
776 2018-10-06  Tom Tromey  <tom@tromey.com>
777
778         PR python/19399:
779         * python/py-inferior.c: Add "architecture" entry.
780         (infpy_architecture): New function.
781
782 2018-10-06  Tom Tromey  <tom@tromey.com>
783
784         PR python/21765:
785         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
786         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
787         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
788         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
789
790 2018-10-06  Tom Tromey  <tom@tromey.com>
791
792         PR build/17077:
793         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
794         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
795         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
796         #include.
797
798 2018-10-06  Tom Tromey  <tom@tromey.com>
799
800         * python/py-breakpoint.c (bppy_get_location): Handle a
801         bp_breakpoint without a location.
802
803 2018-10-06  Tom Tromey  <tom@tromey.com>
804
805         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
806         (_RegEx): Reformat help text.
807         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
808         (AnyCallerIs, AnyCallerMatches): Reformat help text.
809         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
810         text.
811         * python/lib/gdb/command/xmethods.py (InfoXMethod)
812         (EnableXMethod, DisableXMethod): Remove help indentation.
813         Capitalize meta-syntactic variables.
814         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
815         (EnableUnwinder, DisableUnwinder): Remove help indentation.
816         Capitalize meta-syntactic variables.
817         * python/lib/gdb/command/explore.py (ExploreCommand)
818         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
819         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
820         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
821         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
822         Remove help indentation.
823         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
824         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
825         (DisableFrameFilter, SetFrameFilterPriority)
826         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
827
828 2018-10-06  Tom Tromey  <tom@tromey.com>
829
830         PR tui/28819:
831         * tui/tui-io.c (gdb_wgetch): New function.
832         (tui_mld_getc, tui_getc): Use it.
833
834 2018-10-05  Tom Tromey  <tom@tromey.com>
835
836         * sol-thread.c (sol_thread_target::wait): Rename inner
837         "save_ptid".
838
839 2018-10-04  Tom Tromey  <tom@tromey.com>
840
841         * configure: Rebuild.
842         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
843
844 2018-10-04  Tom Tromey  <tom@tromey.com>
845
846         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
847         declaration of "block".
848
849 2018-10-04  Tom Tromey  <tom@tromey.com>
850
851         * common/filestuff.c (fdwalk): Remove inner declaration of
852         "result".
853
854 2018-10-04  Tom Tromey  <tom@tromey.com>
855
856         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
857         "structs_addr" and hoist declaration.
858
859 2018-10-04  Tom Tromey  <tom@tromey.com>
860
861         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
862         variable "size".
863
864 2018-10-04  Tom Tromey  <tom@tromey.com>
865
866         * mdebugread.c (parse_partial_symbols): Use std::string.
867
868 2018-10-04  Tom Tromey  <tom@tromey.com>
869
870         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
871         * p-valprint.c (pascal_val_print): Split inner "i" variable.
872         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
873         header.
874         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
875         more inner scope.
876         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
877         * varobj.c (varobj_update): Rename inner "newobj",
878         "type_changed".
879         * valprint.c (generic_emit_char): Rename inner "buf".
880         * valops.c (find_overload_match): Rename inner "temp".
881         (value_struct_elt_for_reference): Declare "v" in more inner
882         scope.
883         * v850-tdep.c (v850_push_dummy_call): Rename "len".
884         * unittests/array-view-selftests.c (run_tests): Rename inner
885         "vec".
886         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
887         header.
888         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
889         "tsv" in more inner scope.
890         (print_one_static_tracepoint_marker): Rename inner
891         "tuple_emitter".
892         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
893         (tic6x_push_dummy_call): Don't redeclare "addr".
894         * target-float.c: Declare "dto" lower.
895         * symtab.c (lookup_local_symbol): Rename inner "sym".
896         (find_pc_sect_line): Rename inner "pc".
897         * stack.c (print_frame): Don't redeclare "gdbarch".
898         (return_command): Rename inner "gdbarch".
899         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
900         "sp".
901         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
902         header.
903         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
904         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
905         scope.
906         * remote.c (remote_target::update_thread_list): Don't redeclare
907         "tp".
908         (remote_target::process_initial_stop_replies): Rename inner
909         "thread".
910         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
911         (remote_target::wait_as): Don't redeclare "stop_reply".
912         (remote_target::get_thread_local_address): Rename inner
913         "result".
914         (remote_target::get_tib_address): Likewise.
915
916         * regcache.c (cooked_read_test): Rename "regnum".
917         * record-btrace.c (cmd_record_btrace_start): Rename inner
918         "exception".
919         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
920         loop header.
921         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
922         header.
923         (ppu2spu_sniffer): Rename inner "buf".
924         * parse.c (operator_check_standard): Rename inner "type",
925         "objfile".
926         * p-valprint.c (pascal_val_print): Introduce new scope for
927         "low_bound", "high_bound".
928         * p-exp.y (yylex): Declare "i" in loop header.
929         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
930         Lower declaration of "s".
931         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
932         header.
933         (nios2_push_dummy_call): Rename "len".
934         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
935         "buf".
936         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
937         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
938         (linux_xfer_osdata_modules): Likewise.
939         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
940         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
941         (mips_o64_push_dummy_call): Likewise.
942         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
943         "op".
944         * mi/mi-main.c (list_available_thread_groups): Rename inner
945         "tuple_emitter".
946         (mi_cmd_data_read_memory): Rename inner "opts".
947         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
948         "tuple_emitter".
949         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
950         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
951         more inner scope.
952         (parse_partial_symbols): Rename inner "pst", "p", "name"
953         * main.c (captured_main_1): Rename inner "i"s.
954         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
955         "oso2".
956         * linux-tdep.c (linux_info_proc): Rename inner "filename".
957         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
958         * infrun.c (handle_no_resumed): Don't redeclare "thread".
959         (handle_signal_stop): Rename inner "gdbarch".
960         (handle_command): Declare "signum" in loop header.
961         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
962         "status".
963         (examine_prologue): Rename inner "sol" and "sof".
964         (ia64_extract_return_value): Rename inner "val".  Declare another
965         "val" in a more inner scope.
966         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
967         inner scope.
968         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
969         "except".
970         * findvar.c (default_read_var_value): Don't redeclare "addr".
971         * f-exp.y (yylex): Declare "i" in loop header.
972         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
973         Rename inner "type", "expect_type".
974         (evaluate_subexp_for_sizeof): Rename inner "pc".
975         * elfread.c (elf_symfile_read): Rename inner "abfd".
976         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
977         "bytes_read".
978         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
979         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
980         (dwarf_decode_line_header): Rename inner "lh".
981         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
982         "offset".  Declare "i" in loop header.
983         (disassemble_dwarf_expression): Rename inner "addr_size".
984         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
985         inner "result".
986         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
987         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
988         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
989         "inner_list_emitter".
990         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
991         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
992         declaration in a block.
993         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
994         * cp-valprint.c (cp_print_value_fields): Don't redeclare
995         "obstack_final_size".
996         * cp-support.c (inspect_type): Declare "i" in loop header.
997         * compile/compile.c (compile_instance::insert_symbol_error):
998         Rename inner "e".
999         * common/agent.c (agent_run_command): Remove inner "ret"
1000         declaration.
1001         * coffread.c (coff_symfile_read): Rename inner "name".
1002         (coff_symfile_read): Rename inner "abfd".
1003         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1004         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1005         "high".
1006         * c-exp.y (lex_one_token): Move "len" declaration lower.
1007         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1008         "gdbarch".
1009         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1010         "b".
1011         (watch_command_1): Declare "mark" later.
1012         (clear_command): Don't shadow "a" or "b".
1013         (delete_command): Rename inner "b".
1014         (delete_trace_command): Likewise.
1015         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1016         "op".
1017         (arm_gdbarch_init): Remove inner "e_flags".
1018         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1019         "offset" in inner blocks.
1020
1021 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1022
1023         * dwarf-index-write.c (file_write): Don't write if the vector is
1024         empty.
1025
1026 2018-10-05  Tom de Vries  <tdevries@suse.de>
1027
1028         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1029         PyArg_ParseTuple call.
1030
1031 2018-10-05  Tom de Vries  <tdevries@suse.de>
1032
1033         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1034         PyArg_ParseTuple call.
1035
1036 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1037
1038         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1039         to avoid exceeding 80 characters per line limit.
1040
1041 2018-10-04  Tom Tromey  <tom@tromey.com>
1042
1043         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1044         (reread_symbols): Update.
1045         * complaints.h (clear_complaints): Remove argument.
1046         * complaints.c (enum complaint_series): Remove.
1047         (series): Remove global.
1048         (complaint_internal): Update.
1049         (clear_complaints): Remove argument.
1050
1051 2018-10-04  Tom Tromey  <tom@tromey.com>
1052
1053         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1054         debugging symbols" message if there is a separate debug objfile.
1055
1056 2018-10-04  Tom Tromey  <tom@tromey.com>
1057
1058         PR cli/19551:
1059         * symfile.c (symbol_file_add_with_addrs): Update output.
1060         * psymtab.c (require_partial_symbols): Update output.
1061
1062 2018-10-04  Tom Tromey  <tom@tromey.com>
1063
1064         PR cli/22234:
1065         * complaints.c: Emit \n.
1066
1067 2018-10-04  Tom Tromey  <tom@tromey.com>
1068
1069         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1070         (separate_debug_file_exists, find_separate_debug_file)
1071         (add_symbol_file_command, reread_symbols, allocate_symtab)
1072         (allocate_compunit_symtab): Use filtered printing, not
1073         unfiltered.
1074         * psymtab.c (require_partial_symbols, dump_psymtab)
1075         (allocate_psymtab): Use filtered printing, not unfiltered.
1076
1077 2018-10-04  Tom Tromey  <tom@tromey.com>
1078
1079         * complaints.c (complaint_internal): Correctly check complaint
1080         count.
1081
1082 2018-10-04  Tom Tromey  <tom@tromey.com>
1083
1084         * complaints.h (struct complaints): Remove declaration.
1085         * complaints.c (clear_complaints): Remove an unused variable.
1086
1087 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1088
1089         * MAINTAINERS (Write After Approval): Add self.
1090
1091 2018-10-03  Tom Tromey  <tom@tromey.com>
1092
1093         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1094         "buffer_contents".
1095         * coffread.c (coff_symtab_read): Initialize "newobj".
1096
1097 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1098
1099         * dwarf2read.c (read_func_scope): Remove struct keyword in
1100         range-based for.
1101
1102 2018-10-03  Tom Tromey  <tom@tromey.com>
1103
1104         * README: Mention --enable-ubsan.
1105         * NEWS: Mention --enable-ubsan.
1106         * acinclude.m4: Include sanitize.m4.
1107         * configure: Rebuild.
1108         * configure.ac: Call AM_GDB_UBSAN.
1109         * sanitize.m4: New file.
1110
1111 2018-10-03  Tom Tromey  <tom@tromey.com>
1112
1113         * expression.h (enum exp_opcode): Use uint8_t as base type.
1114         * expprint.c (op_name): Handle invalid opcodes.
1115
1116 2018-10-03  Tom Tromey  <tom@tromey.com>
1117
1118         * parse.c (prefixify_expression): Add assert.
1119         (parse_exp_in_context_1): Throw exception if the expression is
1120         empty.
1121
1122 2018-10-03  Tom Tromey  <tom@tromey.com>
1123
1124         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1125
1126 2018-10-03  Tom Tromey  <tom@tromey.com>
1127
1128         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1129
1130 2018-10-03  Tom Tromey  <tom@tromey.com>
1131
1132         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1133         unsigned.
1134
1135 2018-10-03  Tom Tromey  <tom@tromey.com>
1136
1137         * findvar.c (extract_integer): Do work in an unsigned type.
1138
1139 2018-10-03  Tom Tromey  <tom@tromey.com>
1140
1141         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1142         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1143         base type.
1144         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1145         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1146         type.
1147         * c-lang.h (enum c_string_type_values): Use unsigned as base
1148         type.
1149         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1150
1151 2018-10-03  Tom Tromey  <tom@tromey.com>
1152
1153         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1154         <~dwarf2_frame_state_reg_info>: Update.
1155         <dwarf2_frame_state_reg_info>: Update.
1156         <alloc_regs>: Add assertion.  Update.
1157         <reg>: Now a std::vector.
1158         <num_regs>: Remove.
1159         <swap>: Update.
1160         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1161         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1162
1163 2018-10-03  Tom Tromey  <tom@tromey.com>
1164
1165         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1166
1167 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1168
1169         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1170
1171 2018-10-02  Tom Tromey  <tom@tromey.com>
1172
1173         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1174
1175 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1176
1177         * NEWS: Mention changed commands.
1178         * ser-uds.c: New file.
1179         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1180         * configure: Regenerate.
1181         * Makefile.in: Add new file.
1182         * serial.c (serial_open): Check if filename is a socket
1183           and lookup the appropriate interface accordingly.
1184
1185 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1186
1187         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1188         define.
1189         (AARCH64_EXTRA_MAGIC): Likewise.
1190         (AARCH64_FPSIMD_MAGIC): Likewise.
1191         (AARCH64_SVE_MAGIC): Likewise.
1192         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1193         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1194         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1195         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1196         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1197         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1198         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1199         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1200         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1201         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1202         (read_aarch64_ctx): Add function.
1203         (aarch64_linux_sigframe_init): Detect FP registers.
1204
1205 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1206
1207         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1208         (AARCH64_D0_REGNUM): Likewise.
1209         (AARCH64_S0_REGNUM): Likewise.
1210         (AARCH64_H0_REGNUM): Likewise.
1211         (AARCH64_B0_REGNUM): Likewise.
1212         (AARCH64_SVE_V0_REGNUM): Likewise.
1213         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1214         (AARCH64_D0_REGNUM): Likewise.
1215         (AARCH64_S0_REGNUM): Likewise.
1216         (AARCH64_H0_REGNUM): Likewise.
1217         (AARCH64_B0_REGNUM): Likewise.
1218         (AARCH64_SVE_V0_REGNUM): Likewise.
1219
1220 2018-10-01  Gary Benson <gbenson@redhat.com>
1221
1222         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1223         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1224         prfpregset_t instead of gdb_prfpregset_t.
1225         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1226         * configure, config.in: Rebuild.
1227
1228 2018-10-01  Gary Benson <gbenson@redhat.com>
1229
1230         * common/gdb_proc_service.h: New file, factored out from...
1231         * gdb_proc_service.h: Moved common code to the above file.
1232         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1233
1234 2018-10-01  Gary Benson <gbenson@redhat.com>
1235
1236         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1237         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1238
1239 2018-10-01  Gary Benson <gbenson@redhat.com>
1240
1241         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1242         (AC_CHECK_HEADERS): Check for linux/elf.h.
1243         * configure, config.in: Rebuild.
1244         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1245         doesn't define elf_fpregset_t.
1246
1247 2018-10-01  Gary Benson <gbenson@redhat.com>
1248
1249         * gdb_proc_service.h: Whitespace change.
1250
1251 2018-10-01  Tom Tromey  <tom@tromey.com>
1252
1253         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1254         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1255         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1256
1257 2018-10-01  Tom Tromey  <tom@tromey.com>
1258
1259         * README: Minor change.
1260
1261 2018-09-30  Pedro Alves  <palves@redhat.com>
1262
1263         * darwin-nat-info.c (darwin_debug_regions_recurse)
1264         (info_mach_exceptions_command): Remove unused local variables.
1265         * darwin-nat.c (darwin_decode_notify_message)
1266         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1267         (darwin_stop_inferior, darwin_setup_exceptions)
1268         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1269         (darwin_nat_target::attach, darwin_nat_target::detach)
1270         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1271         local variables.
1272         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1273         variables.
1274
1275 2018-09-29  Tom Tromey  <tom@tromey.com>
1276
1277         * README: Remove some leftover text.
1278
1279 2018-09-29  Tom Tromey  <tom@tromey.com>
1280
1281         * PROBLEMS: Rewrite.
1282         * README: Update.
1283
1284 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1285
1286         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1287         case with explicit breakpoint kind.
1288         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1289         'additional_info' and related logic.
1290         (riscv_debug_breakpoints): New variable.
1291         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1292         instruction to determine the breakpoint kind.
1293         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1294         flag.  Update description of 'set/show riscv
1295         use-compressed-breakpoints' flag.
1296
1297 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1298
1299         (NEWS): Mention changes to frame related commands.
1300         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1301         (add_prefix_cmd_suppress_notification): New function.
1302         (add_com_suppress_notification): Call
1303         add_cmd_suppress_notification.
1304         * command.h (add_cmd_suppress_notification): Declare.
1305         (add_prefix_cmd_suppress_notification): Declare.
1306         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1307         (parse_frame_specification): Moved from stack.c, with
1308         simplification to handle a single argument.
1309         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1310         switch to the selected frame.  Add a header comment.
1311         * stack.c: Remove 'safe-ctype.h' include.
1312         (find_frame_for_function): Add declaration.
1313         (find_frame_for_address): New function.
1314         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1315         (frame_selection_by_function_completer): New function.
1316         (info_frame_command): Rename to...
1317         (info_frame_command_core): ...this, and update parameter types.
1318         (select_frame_command): Rename to...
1319         (select_frame_command_core): ...this, and update parameter types.
1320         (frame_command): Rename to...
1321         (frame_command_core): ...this, and update parameter types.
1322         (class frame_command_helper): New class to wrap implementations of
1323         frame related sub-commands.
1324         (frame_apply_cmd_list): New static global.
1325         (frame_cmd_list): Make static.
1326         (select_frame_cmd_list): New global for sub-commands.
1327         (info_frame_cmd_list): New global for sub-commands.
1328         (_initialize_stack): Register sub-commands for 'frame',
1329         'select-frame', and 'info frame'.  Update 'frame apply' commands
1330         to use frame_apply_cmd_list.  Move function local static
1331         frame_apply_list to file static frame_apply_cmd_list for
1332         consistency.
1333         * stack.h (select_frame_command): Delete declarationn.
1334         (select_frame_for_mi): Declare new function.
1335
1336 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1337
1338         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1339         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1340         and NOP.
1341
1342 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1343
1344         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1345
1346 2018-09-26  Tom Tromey  <tom@tromey.com>
1347
1348         * valops.c (auto_abandon): Remove dead code.
1349
1350 2018-09-26  Tom Tromey  <tom@tromey.com>
1351
1352         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1353
1354 2018-09-24  Tom Tromey  <tom@tromey.com>
1355
1356         * common/pathstuff.c (get_standard_cache_dir): Make
1357         "xdg_cache_home" and "home" const.
1358         * top.c (init_history): Make "tmpenv" const.
1359         * main.c (get_init_files): Make "homedir" const.
1360
1361 2018-09-23  Tom Tromey  <tom@tromey.com>
1362
1363         PR python/18852:
1364         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1365
1366 2018-09-23  Tom Tromey  <tom@tromey.com>
1367
1368         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1369         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1370         * python/python-internal.h (gdbpy_handle_exception): Declare.
1371         * python/py-utils.c (gdbpy_handle_exception): New function.
1372
1373 2018-09-23  Tom Tromey  <tom@tromey.com>
1374
1375         PR python/17284:
1376         * python/py-type.c (typy_template_argument): Check for negative
1377         argument number.
1378
1379 2018-09-23  Tom Tromey  <tom@tromey.com>
1380
1381         PR python/14062:
1382         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1383
1384 2018-09-23  Tom Tromey  <tom@tromey.com>
1385
1386         PR python/18170:
1387         * python/py-value.c (valpy_int): Allow conversion from pointer
1388         type.
1389
1390 2018-09-23  Tom Tromey  <tom@tromey.com>
1391
1392         PR python/20126:
1393         * python/py-value.c (valpy_int): Respect type sign.
1394
1395 2018-09-23  Tom Tromey  <tom@tromey.com>
1396
1397         PR python/18352;
1398         * python/py-value.c (valpy_float): Allow conversions from int or
1399         char.
1400         (valpy_int, valpy_long): Allow conversions from float.
1401
1402 2018-09-23  Tom Tromey  <tom@tromey.com>
1403
1404         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1405         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1406
1407 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1408
1409         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1410         __sighndlr.
1411         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1412
1413 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1414
1415         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1416         target_terminal::ours().
1417
1418 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1419
1420         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1421         of vl to ULONGEST.
1422
1423 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1424
1425         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1426         redundant condition.
1427
1428 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1429
1430         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1431
1432         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1433         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1434         * sol-thread.c (ps_pdmodel): Don't guard definition.
1435
1436         * procfs.c: Fix formatting.
1437
1438         * procfs.c (sysset_t_alloc): Remove.
1439         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1440         (procfs_debug_inferior): Likewise.
1441         (procfs_set_exec_trap): Likewise.
1442         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1443         (proc_set_traced_sysexit): Likewise.
1444
1445         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1446         (dead_procinfo): Likewise.
1447         (proc_warn): Likewise.
1448         (proc_error): Likewise.
1449         (proc_get_LDT_entry): Likewise.
1450         (do_attach): Likewise.
1451         (procfs_target::pid_to_str): Likewise.
1452         (iterate_over_mappings): Likewise.
1453
1454         * procfs.c (create_procinfo): Fix ARI warning.
1455         (proc_get_status): Likewise.
1456         (proc_stop_process): Likewise.
1457         (proc_run_process): Likewise.
1458         (proc_kill): Likewise.
1459         (proc_get_LDT_entry): Likewise.
1460         (procfs_find_LDT_entry): Likewise.
1461         (proc_update_threads): Likewise.
1462         (proc_iterate_over_threads): Likewise.
1463         (do_attach): Likewise.
1464         (procfs_xfer_memory): Likewise.
1465         (invalidate_cache): Likewise.
1466         (procfs_target::resume): Likewise.
1467         (procfs_init_inferior): Likewise.
1468         (procfs_set_exec_trap): Likewise.
1469         (procfs_target::thread_alive): Likewise.
1470         (procfs_target::pid_to_exec_file): Likewise.
1471         (iterate_over_mappings): Likewise.
1472         (procfs_target::make_corefile_notes): Likewise.
1473         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1474
1475         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1476         (procfs_find_LDT_entry): Likewise.
1477         * sol-thread.c (ps_lgetLDT): Likewise.
1478
1479 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1480
1481         PR tdep/17903
1482         * procfs.c (procfs_target): Declare pid_to_exec_file.
1483         (procfs_target::pid_to_exec_file): New.
1484
1485 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1486
1487         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1488         renaming.
1489         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1490         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1491
1492 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1493
1494         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1495         (supply_fpregset, fill_fpregset): Move ...
1496         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1497         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1498         Remove references to ioctl-based procfs.
1499         Include <sys/reg.h>.
1500         Remove PR_MODEL_NATIVE guards.
1501         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1502         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1503
1504 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1505
1506         PR gdb/20981:
1507         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1508         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1509         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1510
1511 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1512
1513         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1514         (fbsd_print_sockaddr_in6): Likewise.
1515
1516 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1517             Chris January  <chris.january@arm.com>
1518
1519         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1520         (evaluate_subexp_standard): Return a dummy type when
1521         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1522         OP_F77_UNDETERMINED_ARGLIST case.
1523         * expression.h (enum noside): Update comment.
1524
1525 2018-09-19  George Vasick <george.vasick@oracle.com>
1526
1527         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1528
1529 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1530             April Chin <april.chin@oracle.com>
1531             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1532
1533         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1534         uint_t lwpid_t.
1535         (create_procinfo): Print pids in /proc without leading zeros.
1536
1537 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1538
1539         * nios2-tdep.c (nios2_gcc_target_options): New.
1540         (nios2_gdb_arch_init): Install new hook.
1541
1542 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1543
1544         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1545         New file.
1546         * update-gnulib.sh: Apply patch.
1547         * configure: Re-generate.
1548
1549 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1550
1551         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1552         description.  Make "info proc" command descriptions more
1553         consistent.
1554
1555 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1556
1557         * NEWS: Mention 'info proc files' command.
1558
1559 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1560
1561         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1562         descriptors for IP_FILES and IP_ALL.
1563
1564 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1565
1566         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1567         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1568         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1569         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1570         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1571         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1572         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1573         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1574         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1575         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1576         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1577         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1578         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1579         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1580         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1581         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1582         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1583         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1584         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1585         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1586         (struct fbsd_sockaddr_un): New types.
1587         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1588         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1589         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1590         (fbsd_core_info_proc_files): New functions.
1591         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1592         IP_ALL.
1593         * fbsd-tdep.h (fbsd_info_proc_files_header)
1594         (fbsd_info_proc_files_entry): New.
1595
1596 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1597
1598         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1599         * infcmd.c (info_proc_cmd_files): New function.
1600         (_initialize_infcmd): Register 'info proc files' command.
1601
1602 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1603
1604         * gnulib/aclocal-m4-deps.mk: Re-generate.
1605         * gnulib/aclocal.m4: Re-generate.
1606         * gnulib/config.in: Re-generate.
1607         * gnulib/configure: Re-generate.
1608         * gnulib/import/Makefile.am: Re-generate.
1609         * gnulib/import/Makefile.in: Re-generate.
1610         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1611         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1612         * gnulib/import/arpa_inet.in.h: New file.
1613         * gnulib/import/inet_ntop.c: New file.
1614         * gnulib/import/m4/arpa_inet_h.m4: New file.
1615         * gnulib/import/m4/inet_ntop.m4: New file.
1616         * gnulib/import/m4/netinet_in_h.m4: New file.
1617         * gnulib/import/m4/socklen.m4: New file.
1618         * gnulib/import/m4/sockpfaf.m4: New file.
1619         * gnulib/import/m4/stdalign.m4: New file.
1620         * gnulib/import/m4/sys_uio_h.m4: New file.
1621         * gnulib/import/netinet_in.in.h: New file.
1622         * gnulib/import/stdalign.in.h: New file.
1623         * gnulib/import/sys_socket.c: New file.
1624         * gnulib/import/sys_socket.in.h: New file.
1625         * gnulib/import/sys_uio.in.h: New file.
1626         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1627         module.
1628
1629 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1630
1631         * gnulib/aclocal-m4-deps.mk: New file.
1632         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1633         deterministically.
1634
1635 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1636
1637         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1638         KVE_PATH.
1639
1640 2018-09-18  Tom Tromey  <tom@tromey.com>
1641
1642         * compile/compile-object-load.c (struct
1643         link_hash_table_cleanup_data): Add constructor and destructor.
1644         Use DISABLE_COPY_AND_ASSIGN.
1645         (~link_hash_table_cleanup_data): Rename from
1646         link_hash_table_free.  Now a destructor.
1647         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1648
1649 2018-09-18  Tom Tromey  <tom@tromey.com>
1650
1651         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1652         * compile/compile-object-load.c (struct munmap_list): Move to
1653         header file.
1654         (munmap_list::add): Rename from munmap_list_add; rewrite.
1655         (munmap_list::~munmap_list): Rename from munmap_list_free.
1656         (munmap_listp_free_cleanup): Remove.
1657         (compile_object_load): Update.
1658         * compile/compile-object-load.h (struct munmap_list): Move from
1659         compile-object-load.c.  Rewrite.
1660
1661 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1662
1663         * aarch64-tdep.c (pass_in_v): Use register size.
1664         (aarch64_extract_return_value): Likewise.
1665         (aarch64_store_return_value): Likewise.
1666
1667 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1668
1669         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1670         rlim_t.
1671
1672 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1673
1674         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1675         Fix short help line.
1676
1677 2018-09-17  Tom Tromey  <tom@tromey.com>
1678
1679         PR python/20445:
1680         * configure: Rebuild.
1681         * configure.ac: Conditionally use -DNDEBUG for Python.
1682
1683 2018-09-17  Tom Tromey  <tom@tromey.com>
1684
1685         * configure: Rebuild.
1686         * configure.ac: Use gmp as a library dependency when checking for
1687         mpfr.
1688
1689 2018-09-17  Pedro Alves  <palves@redhat.com>
1690
1691         * python/py-inferior.c (find_inferior_object): Delete.
1692
1693 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1694
1695         * compile/compile-cplus-types.c
1696         (compile_cplus_instance::enter_scope): Don't use new_scope after
1697         std::move.
1698
1699 2018-09-17  Tom Tromey  <tom@tromey.com>
1700
1701         * common/pathstuff.c (get_standard_cache_dir): Use
1702         ~/Library/Caches on macOS.
1703         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1704
1705 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1706
1707         PR python/23669
1708         * breakpoint.c (commands_cmd_element): New.
1709         (_initialize_breakpoint): Assign commands_cmd_element.
1710         * breakpoint.h (commands_cmd_element): New.
1711         * cli/cli-script.c (while_cmd_element, if_command,
1712         define_cmd_element): New.
1713         (command_name_equals): Remove.
1714         (process_next_line): Compare commands by pointer, not by name.
1715         (_initialize_cli_script): Assign the various cmd_list_element
1716         variables.
1717         * compile/compile.c (compile_cmd_element): New.
1718         (_initialize_compile): Assign compile_cmd_element.
1719         * compile/compile.h (compile_cmd_element): New.
1720         * guile/guile.c (guile_cmd_element): New.
1721         (install_gdb_commands): Assign guile_cmd_element.
1722         * guile/guile.h (guile_cmd_element): New.
1723         * python/python.c (python_cmd_element): New.
1724         (_initialize_python): Assign python_cmd_element.
1725         * python/python.h (python_cmd_element): New.
1726         * tracepoint.c (while_stepping_cmd_element): New.
1727         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1728         * tracepoint.h (while_stepping_cmd_element): New.
1729
1730 2018-09-17  Tom Tromey  <tom@tromey.com>
1731
1732         * infrun.c (save_infcall_suspend_state): Return
1733         infcall_suspend_state_up.
1734         (save_infcall_control_state): Return infcall_control_state_up.
1735         * inferior.h (save_infcall_suspend_state)
1736         (save_infcall_control_state): Declare later.  Return unique
1737         pointers.
1738
1739 2018-09-17  Tom Tromey  <tom@tromey.com>
1740
1741         * infrun.c (struct stop_context): Declare constructor,
1742         destructor, "changed" method.
1743         (stop_context::stop_context): Rename from save_stop_context.
1744         (stop_context::~stop_context): Rename from
1745         release_stop_context_cleanup.
1746         (normal_stop): Update.
1747         (stop_context::changed): Rename from stop_context_changed.  Return
1748         bool.
1749
1750 2018-09-17  Tom Tromey  <tom@tromey.com>
1751
1752         * inferior.h (struct infcall_suspend_state_deleter): New.
1753         (infcall_suspend_state_up): New typedef.
1754         (struct infcall_control_state_deleter): New.
1755         (infcall_control_state_up): New typedef.
1756         (make_cleanup_restore_infcall_suspend_state)
1757         (make_cleanup_restore_infcall_control_state): Don't declare.
1758         * infcall.c (call_function_by_hand_dummy): Update.
1759         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1760         (make_cleanup_restore_infcall_suspend_state): Remove.
1761         (do_restore_infcall_control_state_cleanup)
1762         (make_cleanup_restore_infcall_control_state): Remove.
1763
1764 2018-09-17  Tom Tromey  <tom@tromey.com>
1765
1766         * gdbthread.h (struct thread_control_state): Add initializer.
1767         (class thread_info) <control>: Remove initializer.
1768         * inferior.h (struct inferior_control_state): Add initializer.
1769         (class inferior) <control>: Remove initializer.
1770         (exit_inferior_1): Update.
1771         * infrun.c (struct infcall_control_state): Add constructors.
1772         (save_infcall_control_state): Use new.
1773         (restore_infcall_control_state, discard_infcall_control_state):
1774         Use delete.
1775
1776 2018-09-17  Tom Tromey  <tom@tromey.com>
1777
1778         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1779         unique_ptr.
1780         <siginfo_data>: Now a unique_xmalloc_ptr.
1781         (save_infcall_suspend_state, restore_infcall_suspend_state)
1782         (discard_infcall_suspend_state)
1783         (get_infcall_suspend_state_regcache): Update.
1784
1785 2018-09-17  Tom Tromey  <tom@tromey.com>
1786
1787         * gdbthread.h (struct thread_suspend_state): Add initializers.
1788         (class thread_info) <suspend>: Remove initializer.
1789         * infrun.c (struct infcall_suspend_state): Add initializers.
1790         (save_infcall_suspend_state): Use new.
1791         (discard_infcall_suspend_state): Use delete.
1792
1793 2018-09-16  Tom Tromey  <tom@tromey.com>
1794
1795         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1796         Remove.
1797         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1798         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1799         (py_varobj_iter_new): Likewise.
1800         (py_varobj_get_iterator): Use gdbpy_ref.
1801
1802 2018-09-16  Tom Tromey  <tom@tromey.com>
1803
1804         * python/py-threadevent.c (py_get_event_thread): Simplify.
1805         * python/py-inferior.c (infpy_thread_from_thread_handle):
1806         Return immediately after calling thread_to_thread_object.  Use
1807         Py_RETURN_NONE.
1808         (thread_to_thread_object): Set the exception on a NULL return.
1809
1810 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1811
1812         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1813
1814 2018-09-16  Tom Tromey  <tom@tromey.com>
1815
1816         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1817         Remove.
1818
1819 2018-09-16  Tom Tromey  <tom@tromey.com>
1820
1821         * python/python-internal.h (thread_to_thread_object): Change
1822         return type.
1823         * python/py-inferior.c (thread_to_thread_object): Return a new
1824         reference.
1825         (infpy_thread_from_thread_handle): Update.
1826         * python/py-infthread.c (gdbpy_selected_thread): Update.
1827         * python/py-stopevent.c (create_stop_event_object): Update.
1828         * python/py-threadevent.c (py_get_event_thread): Return a new
1829         reference.
1830         (py_get_event_thread): Update.
1831         * python/py-event.h (py_get_event_thread): Change return type.
1832         * python/py-continueevent.c (create_continue_event_object):
1833         Update.
1834
1835 2018-09-16  Tom Tromey  <tom@tromey.com>
1836
1837         * python/py-progspace.c (pspy_get_objfiles): Update.
1838         * python/python-internal.h (objfile_to_objfile_object): Change
1839         return type.
1840         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1841         Update.
1842         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1843         Update.
1844         * python/python.c (gdbpy_get_current_objfile): Update.
1845         (gdbpy_objfiles): Update.
1846         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1847         Update.
1848         (objfile_to_objfile_object): Return a new reference.
1849         * python/py-symtab.c (stpy_get_objfile): Update.
1850         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1851         Update.
1852
1853 2018-09-16  Tom Tromey  <tom@tromey.com>
1854
1855         * python/py-inferior.c (infpy_get_progspace): Update.
1856         * python/python-internal.h (pspace_to_pspace_object): Change
1857         return type.
1858         * python/py-newobjfileevent.c
1859         (create_clear_objfiles_event_object): Update.
1860         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1861         Update.
1862         * python/python.c (gdbpy_get_current_progspace): Update.
1863         (gdbpy_progspaces): Update.
1864         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1865         reference.
1866         * python/py-objfile.c (objfpy_get_progspace): Update.
1867         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1868         Update.
1869
1870 2018-09-16  Tom Tromey  <tom@tromey.com>
1871
1872         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1873         (solib_name, block_for_pc, find_pc_line): New functions.
1874         (execute_unwinders): Update.
1875         * python/py-block.c (gdbpy_block_for_pc): Remove.
1876         * python/py-inferior.c (infpy_get_progspace): New function.
1877         (inferior_object_getset) <progspace>: Add.
1878         * python/py-progspace.c (pspy_objfiles): Rewrite.
1879         (pspy_solib_name, pspy_block_for_pc)
1880         (pspy_find_pc_line, pspy_is_valid): New functions.
1881         (progspace_object_methods): Add entries for solib_name,
1882         block_for_pc, find_pc_line, is_valid.
1883         * python/python-internal.h (gdbpy_block_for_pc)
1884         (build_objfiles_list): Don't declare.
1885         * python/python.c: Don't include solib.h.
1886         (gdbpy_solib_name, gdbpy_find_pc_line)
1887         (gdbpy_get_current_progspace, build_objfiles_list)
1888         (gdbpy_objfiles): Remove.
1889         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1890         solib_name, find_pc_line>: Remove entries.
1891
1892 2018-09-16  Tom Tromey  <tom@tromey.com>
1893
1894         * top.c (new_ui_command): Use GNU style for metasyntactic
1895         variables.
1896         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1897         variables.
1898         * maint.c (maintenance_translate_address): Remove "<>" around
1899         text.
1900         * interps.c (interpreter_exec_cmd): Use GNU style for
1901         metasyntactic variables.
1902         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1903         metasyntactic variables.
1904         * tracepoint.c (tfind_range_command): Use GNU style for
1905         metasyntactic variables.
1906         (tfind_outside_command): Likewise.
1907         (_initialize_tracepoint): Likewise.
1908         * remote.c (extended_remote_target::create_inferior): Use GNU
1909         style for metasyntactic variables.
1910         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1911         metasyntactic variables.
1912         (adi_assign_command): Likewise.
1913
1914 2018-09-16  Tom Tromey  <tom@tromey.com>
1915
1916         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1917         metasyntactic variables.  Print message if no disassembler options
1918         are available.
1919
1920 2018-09-15  Tom Tromey  <tom@tromey.com>
1921
1922         * infcmd.c (get_inferior_args): Return const char *.
1923         * inferior.h (get_inferior_args): Return type now const.
1924         * linux-tdep.c (linux_fill_prpsinfo): Update.
1925         * procfs.c (procfs_target::make_corefile_notes): Update.
1926
1927 2018-09-07  Tom Tromey  <tom@tromey.com>
1928
1929         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1930         inside the TRY.
1931
1932 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1933
1934         * nios2-tdep.c (nios2_type_align): New.
1935         (nios2_gdb_arch_init): Install type_align hook.
1936
1937 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1938
1939         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1940         type that is neither object file owned, nor gdbarch owned.
1941         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1942         gdbarch is non-NULL.
1943         (alloc_type_instance): Allocate non-objfile owned types on the
1944         gdbarch obstack.
1945         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1946         using TYPE_ALLOC to ensure memory is allocated on the correct
1947         obstack.
1948         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1949         obstack, or the gdbarch obstack.
1950         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1951
1952 2018-09-14  Tom Tromey  <tom@tromey.com>
1953
1954         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1955         block.
1956
1957 2018-09-14  Tom Tromey  <tom@tromey.com>
1958
1959         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1960
1961 2018-09-13  Tom Tromey  <tom@tromey.com>
1962
1963         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1964         static.
1965
1966 2018-09-13  Tom Tromey  <tom@tromey.com>
1967
1968         * exec.c (try_open_exec_file): Use std::string.
1969
1970 2018-09-13  Tom Tromey  <tom@tromey.com>
1971
1972         * utils.h (gdb_bfd_errmsg): Return std::string.
1973         * exec.c (exec_file_attach): Update.
1974         * compile/compile-object-load.c (compile_object_load): Update.
1975         * utils.c (gdb_bfd_errmsg): Return std::string.
1976
1977 2018-09-13  Tom Tromey  <tom@tromey.com>
1978
1979         * procfs.c (struct procinfo_deleter): New.
1980         (procinfo_up): New typedef.
1981         (do_destroy_procinfo_cleanup): Remove.
1982         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1983
1984 2018-09-13  Tom Tromey  <tom@tromey.com>
1985
1986         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1987
1988 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1989 2018-09-13  Tom Tromey  <tom@tromey.com>
1990
1991         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1992         (pspy_get_objfiles): New function.
1993         (progspace_object_methods): New.
1994         (pspace_object_type): Add tp_methods callback.
1995         * python/python-internal.h (build_objfiles_list): New
1996         declaration.
1997         * python/python.c (build_objfiles_list): New function.
1998         (gdbpy_objfiles): Implement using build_objfiles_list.
1999         * NEWS: Mention the Progspace.objfiles method.
2000
2001 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2002
2003         * python/py-inferior.c (infpy_get_progspace): New function.
2004         (inferior_object_getset): Add progspace property.
2005         * NEWS: Mention the new property.
2006
2007 2018-09-13  Tom Tromey  <tom@tromey.com>
2008
2009         PR rust/23650:
2010         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2011
2012 2018-09-13  Tom Tromey  <tom@tromey.com>
2013
2014         PR rust/23626:
2015         * rust-lang.c (rust_enum_variant): Now static.
2016         (rust_empty_enum_p): New function.
2017         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2018         Handle empty enum.
2019
2020 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2021
2022         * python/py-inferior.c (infpy_repr): New.
2023         (inferior_object_type): Register infpy_repr.
2024         * python/py-objfile.c (objfpy_repr): New.
2025         (objfile_object_type): Register objfpy_repr.
2026
2027 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2028
2029         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2030
2031 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2032
2033         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2034         typo.
2035
2036 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2037
2038         * common/common-utils.c: Don't include '<sys/stat.h>'.
2039         (is_regular_file): Move to...
2040         * common/filestuff.c (is_regular_file): ... here.
2041         * common/common-utils.h (is_regular_file): Move to...
2042         * common/filestuff.h (is_regular_file): ... here.
2043
2044 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2045
2046         * skip.c (debug_skip): New variable.
2047         (skiplist_entry::do_skip_file_p): Add debug output.
2048         (skiplist_entry::do_skip_gfile_p): Likewise.
2049         (skiplist_entry::skip_function_p): Likewise.
2050         (_initialize_step_skip): Create debug command.
2051         * NEWS: Mention set/show debug skip.
2052
2053 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2054
2055         * darwin-nat.c (should_disable_startup_with_shell):
2056         New function.
2057         (darwin_nat_target::create_inferior): Add call.
2058
2059 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2060
2061         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2062         inf_port, msg_state>: Initialize.
2063         (struct darwin_thread_info) <signaled, single_step>: Change
2064         type and initialize.
2065         (struct darwin_thread_info) <event>: Initialize.
2066
2067 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2068
2069         PR gdb/23555
2070         PR gdb/23558
2071         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2072         guesses.
2073
2074 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2075
2076         Revert:
2077         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2078
2079         PR gdb/23555
2080         PR gdb/23558
2081         * gnulib/aclocal.m4: Regenerate.
2082         * gnulib/config.in: Regenerate.
2083         * gnulib/configure: Regenerate.
2084         * gnulib/import/Makefile.am: Update.
2085         * gnulib/import/Makefile.in: Update.
2086         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2087         * gnulib/import/_Noreturn.h: ... this.
2088         * gnulib/import/alloca.in.h: Update.
2089         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2090         * gnulib/import/arg-nonnull.h: ... this.
2091         * gnulib/import/assure.h: Update.
2092         * gnulib/import/at-func.c: Update.
2093         * gnulib/import/basename-lgpl.c: Update.
2094         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2095         * gnulib/import/c++defs.h: ... this.
2096         * gnulib/import/canonicalize-lgpl.c: Update.
2097         * gnulib/import/cdefs.h: Update.
2098         * gnulib/import/chdir-long.c: Update.
2099         * gnulib/import/chdir-long.h: Update.
2100         * gnulib/import/cloexec.c: Update.
2101         * gnulib/import/cloexec.h: Update.
2102         * gnulib/import/close.c: Update.
2103         * gnulib/import/closedir.c: Update.
2104         * gnulib/import/config.charset: Update.
2105         * gnulib/import/dirent-private.h: Update.
2106         * gnulib/import/dirent.in.h: Update.
2107         * gnulib/import/dirfd.c: Update.
2108         * gnulib/import/dirname-lgpl.c: Update.
2109         * gnulib/import/dirname.h: Update.
2110         * gnulib/import/dosname.h: Update.
2111         * gnulib/import/dup-safer-flag.c: Update.
2112         * gnulib/import/dup-safer.c: Update.
2113         * gnulib/import/dup.c: Update.
2114         * gnulib/import/dup2.c: Update.
2115         * gnulib/import/errno.in.h: Update.
2116         * gnulib/import/error.c: Update.
2117         * gnulib/import/error.h: Update.
2118         * gnulib/import/exitfail.c: Update.
2119         * gnulib/import/exitfail.h: Update.
2120         * gnulib/import/extra/update-copyright: Update.
2121         * gnulib/import/fchdir.c: Update.
2122         * gnulib/import/fcntl.c: Update.
2123         * gnulib/import/fcntl.in.h: Update.
2124         * gnulib/import/fd-hook.c: Update.
2125         * gnulib/import/fd-hook.h: Update.
2126         * gnulib/import/fd-safer-flag.c: Update.
2127         * gnulib/import/fd-safer.c: Update.
2128         * gnulib/import/fdopendir.c: Update.
2129         * gnulib/import/filename.h: Update.
2130         * gnulib/import/filenamecat-lgpl.c: Update.
2131         * gnulib/import/filenamecat.h: Update.
2132         * gnulib/import/flexmember.h: Update.
2133         * gnulib/import/float+.h: Update.
2134         * gnulib/import/float.c: Update.
2135         * gnulib/import/float.in.h: Update.
2136         * gnulib/import/fnmatch.c: Update.
2137         * gnulib/import/fnmatch.in.h: Update.
2138         * gnulib/import/fnmatch_loop.c: Update.
2139         * gnulib/import/fpucw.h: Update.
2140         * gnulib/import/frexp.c: Update.
2141         * gnulib/import/frexpl.c: Update.
2142         * gnulib/import/fstat.c: Update.
2143         * gnulib/import/fstatat.c: Update.
2144         * gnulib/import/getcwd-lgpl.c: Update.
2145         * gnulib/import/getcwd.c: Update.
2146         * gnulib/import/getdtablesize.c: Update.
2147         * gnulib/import/getlogin_r.c: Update.
2148         * gnulib/import/getprogname.c: Update.
2149         * gnulib/import/getprogname.h: Update.
2150         * gnulib/import/gettext.h: Update.
2151         * gnulib/import/gettimeofday.c: Update.
2152         * gnulib/import/glob-libc.h: Update.
2153         * gnulib/import/glob.c: Update.
2154         * gnulib/import/glob.in.h: Update.
2155         * gnulib/import/glob_internal.h: Update.
2156         * gnulib/import/glob_pattern_p.c: Update.
2157         * gnulib/import/globfree.c: Update.
2158         * gnulib/import/hard-locale.c: Update.
2159         * gnulib/import/hard-locale.h: Update.
2160         * gnulib/import/intprops.h: Update.
2161         * gnulib/import/inttypes.in.h: Update.
2162         * gnulib/import/isnan.c: Update.
2163         * gnulib/import/isnand-nolibm.h: Update.
2164         * gnulib/import/isnand.c: Update.
2165         * gnulib/import/isnanl-nolibm.h: Update.
2166         * gnulib/import/isnanl.c: Update.
2167         * gnulib/import/itold.c: Update.
2168         * gnulib/import/libc-config.h: Update.
2169         * gnulib/import/limits.in.h: Update.
2170         * gnulib/import/localcharset.c: Update.
2171         * gnulib/import/localcharset.h: Update.
2172         * gnulib/import/localtime-buffer.c: Update.
2173         * gnulib/import/localtime-buffer.h: Update.
2174         * gnulib/import/lstat.c: Update.
2175         * gnulib/import/m4/00gnulib.m4: Update.
2176         * gnulib/import/m4/__inline.m4: Update.
2177         * gnulib/import/m4/absolute-header.m4: Update.
2178         * gnulib/import/m4/alloca.m4: Update.
2179         * gnulib/import/m4/builtin-expect.m4: Update.
2180         * gnulib/import/m4/canonicalize.m4: Update.
2181         * gnulib/import/m4/chdir-long.m4: Update.
2182         * gnulib/import/m4/close.m4: Update.
2183         * gnulib/import/m4/closedir.m4: Update.
2184         * gnulib/import/m4/configmake.m4: Update.
2185         * gnulib/import/m4/d-ino.m4: Update.
2186         * gnulib/import/m4/d-type.m4: Update.
2187         * gnulib/import/m4/dirent_h.m4: Update.
2188         * gnulib/import/m4/dirfd.m4: Update.
2189         * gnulib/import/m4/dirname.m4: Update.
2190         * gnulib/import/m4/double-slash-root.m4: Update.
2191         * gnulib/import/m4/dup.m4: Update.
2192         * gnulib/import/m4/dup2.m4: Update.
2193         * gnulib/import/m4/eealloc.m4: Update.
2194         * gnulib/import/m4/environ.m4: Update.
2195         * gnulib/import/m4/errno_h.m4: Update.
2196         * gnulib/import/m4/error.m4: Update.
2197         * gnulib/import/m4/exponentd.m4: Update.
2198         * gnulib/import/m4/exponentl.m4: Update.
2199         * gnulib/import/m4/extensions.m4: Update.
2200         * gnulib/import/m4/extern-inline.m4: Update.
2201         * gnulib/import/m4/fchdir.m4: Update.
2202         * gnulib/import/m4/fcntl-o.m4: Update.
2203         * gnulib/import/m4/fcntl.m4: Update.
2204         * gnulib/import/m4/fcntl_h.m4: Update.
2205         * gnulib/import/m4/fdopendir.m4: Update.
2206         * gnulib/import/m4/filenamecat.m4: Update.
2207         * gnulib/import/m4/flexmember.m4: Update.
2208         * gnulib/import/m4/float_h.m4: Update.
2209         * gnulib/import/m4/fnmatch.m4: Update.
2210         * gnulib/import/m4/fnmatch_h.m4: Update.
2211         * gnulib/import/m4/fpieee.m4: Update.
2212         * gnulib/import/m4/frexp.m4: Update.
2213         * gnulib/import/m4/frexpl.m4: Update.
2214         * gnulib/import/m4/fstat.m4: Update.
2215         * gnulib/import/m4/fstatat.m4: Update.
2216         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2217         * gnulib/import/m4/getcwd-path-max.m4: Update.
2218         * gnulib/import/m4/getcwd.m4: Update.
2219         * gnulib/import/m4/getdtablesize.m4: Update.
2220         * gnulib/import/m4/getlogin.m4: Update.
2221         * gnulib/import/m4/getlogin_r.m4: Update.
2222         * gnulib/import/m4/getpagesize.m4: Update.
2223         * gnulib/import/m4/getprogname.m4: Update.
2224         * gnulib/import/m4/gettimeofday.m4: Update.
2225         * gnulib/import/m4/glibc21.m4: Update.
2226         * gnulib/import/m4/glob.m4: Update.
2227         * gnulib/import/m4/glob_h.m4: Update.
2228         * gnulib/import/m4/gnulib-cache.m4: Update.
2229         * gnulib/import/m4/gnulib-common.m4: Update.
2230         * gnulib/import/m4/gnulib-comp.m4: Update.
2231         * gnulib/import/m4/gnulib-tool.m4: Update.
2232         * gnulib/import/m4/hard-locale.m4: Update.
2233         * gnulib/import/m4/include_next.m4: Update.
2234         * gnulib/import/m4/inttypes-pri.m4: Update.
2235         * gnulib/import/m4/inttypes.m4: Update.
2236         * gnulib/import/m4/isnand.m4: Update.
2237         * gnulib/import/m4/isnanl.m4: Update.
2238         * gnulib/import/m4/largefile.m4: Update.
2239         * gnulib/import/m4/limits-h.m4: Update.
2240         * gnulib/import/m4/localcharset.m4: Update.
2241         * gnulib/import/m4/locale-fr.m4: Update.
2242         * gnulib/import/m4/locale-ja.m4: Update.
2243         * gnulib/import/m4/locale-zh.m4: Update.
2244         * gnulib/import/m4/localtime-buffer.m4: Update.
2245         * gnulib/import/m4/longlong.m4: Update.
2246         * gnulib/import/m4/lstat.m4: Update.
2247         * gnulib/import/m4/malloc.m4: Update.
2248         * gnulib/import/m4/malloca.m4: Update.
2249         * gnulib/import/m4/math_h.m4: Update.
2250         * gnulib/import/m4/mbrtowc.m4: Update.
2251         * gnulib/import/m4/mbsinit.m4: Update.
2252         * gnulib/import/m4/mbsrtowcs.m4: Update.
2253         * gnulib/import/m4/mbstate_t.m4: Update.
2254         * gnulib/import/m4/memchr.m4: Update.
2255         * gnulib/import/m4/memmem.m4: Update.
2256         * gnulib/import/m4/mempcpy.m4: Update.
2257         * gnulib/import/m4/memrchr.m4: Update.
2258         * gnulib/import/m4/mkdir.m4: Update.
2259         * gnulib/import/m4/mkstemp.m4: Update.
2260         * gnulib/import/m4/mmap-anon.m4: Update.
2261         * gnulib/import/m4/mode_t.m4: Update.
2262         * gnulib/import/m4/msvc-inval.m4: Update.
2263         * gnulib/import/m4/msvc-nothrow.m4: Update.
2264         * gnulib/import/m4/multiarch.m4: Update.
2265         * gnulib/import/m4/nocrash.m4: Update.
2266         * gnulib/import/m4/off_t.m4: Update.
2267         * gnulib/import/m4/onceonly.m4: Update.
2268         * gnulib/import/m4/open-cloexec.m4: Update.
2269         * gnulib/import/m4/open.m4: Update.
2270         * gnulib/import/m4/openat.m4: Update.
2271         * gnulib/import/m4/opendir.m4: Update.
2272         * gnulib/import/m4/pathmax.m4: Update.
2273         * gnulib/import/m4/rawmemchr.m4: Update.
2274         * gnulib/import/m4/readdir.m4: Update.
2275         * gnulib/import/m4/readlink.m4: Update.
2276         * gnulib/import/m4/realloc.m4: Update.
2277         * gnulib/import/m4/rename.m4: Update.
2278         * gnulib/import/m4/rewinddir.m4: Update.
2279         * gnulib/import/m4/rmdir.m4: Update.
2280         * gnulib/import/m4/save-cwd.m4: Update.
2281         * gnulib/import/m4/secure_getenv.m4: Update.
2282         * gnulib/import/m4/setenv.m4: Update.
2283         * gnulib/import/m4/signal_h.m4: Update.
2284         * gnulib/import/m4/ssize_t.m4: Update.
2285         * gnulib/import/m4/stat-time.m4: Update.
2286         * gnulib/import/m4/stat.m4: Update.
2287         * gnulib/import/m4/std-gnu11.m4: Update.
2288         * gnulib/import/m4/stdbool.m4: Update.
2289         * gnulib/import/m4/stddef_h.m4: Update.
2290         * gnulib/import/m4/stdint.m4: Update.
2291         * gnulib/import/m4/stdio_h.m4: Update.
2292         * gnulib/import/m4/stdlib_h.m4: Update.
2293         * gnulib/import/m4/strchrnul.m4: Update.
2294         * gnulib/import/m4/strdup.m4: Update.
2295         * gnulib/import/m4/strerror.m4: Update.
2296         * gnulib/import/m4/string_h.m4: Update.
2297         * gnulib/import/m4/strstr.m4: Update.
2298         * gnulib/import/m4/strtok_r.m4: Update.
2299         * gnulib/import/m4/sys_socket_h.m4: Update.
2300         * gnulib/import/m4/sys_stat_h.m4: Update.
2301         * gnulib/import/m4/sys_time_h.m4: Update.
2302         * gnulib/import/m4/sys_types_h.m4: Update.
2303         * gnulib/import/m4/tempname.m4: Update.
2304         * gnulib/import/m4/time_h.m4: Update.
2305         * gnulib/import/m4/unistd-safer.m4: Update.
2306         * gnulib/import/m4/unistd_h.m4: Update.
2307         * gnulib/import/m4/warn-on-use.m4: Update.
2308         * gnulib/import/m4/wchar_h.m4: Update.
2309         * gnulib/import/m4/wchar_t.m4: Update.
2310         * gnulib/import/m4/wctype_h.m4: Update.
2311         * gnulib/import/m4/wint_t.m4: Update.
2312         * gnulib/import/malloc.c: Update.
2313         * gnulib/import/malloc/scratch_buffer.h: Update.
2314         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2315         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2316         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2317         * gnulib/import/malloca.c: Update.
2318         * gnulib/import/malloca.h: Update.
2319         * gnulib/import/malloca.valgrind: Update.
2320         * gnulib/import/math.in.h: Update.
2321         * gnulib/import/mbrtowc.c: Update.
2322         * gnulib/import/mbsinit.c: Update.
2323         * gnulib/import/mbsrtowcs-impl.h: Update.
2324         * gnulib/import/mbsrtowcs-state.c: Update.
2325         * gnulib/import/mbsrtowcs.c: Update.
2326         * gnulib/import/memchr.c: Update.
2327         * gnulib/import/memmem.c: Update.
2328         * gnulib/import/mempcpy.c: Update.
2329         * gnulib/import/memrchr.c: Update.
2330         * gnulib/import/mkdir.c: Update.
2331         * gnulib/import/mkstemp.c: Update.
2332         * gnulib/import/msvc-inval.c: Update.
2333         * gnulib/import/msvc-inval.h: Update.
2334         * gnulib/import/msvc-nothrow.c: Update.
2335         * gnulib/import/msvc-nothrow.h: Update.
2336         * gnulib/import/open.c: Update.
2337         * gnulib/import/openat-die.c: Update.
2338         * gnulib/import/openat-priv.h: Update.
2339         * gnulib/import/openat-proc.c: Update.
2340         * gnulib/import/openat.c: Update.
2341         * gnulib/import/openat.h: Update.
2342         * gnulib/import/opendir.c: Update.
2343         * gnulib/import/pathmax.h: Update.
2344         * gnulib/import/pipe-safer.c: Update.
2345         * gnulib/import/rawmemchr.c: Update.
2346         * gnulib/import/readdir.c: Update.
2347         * gnulib/import/readlink.c: Update.
2348         * gnulib/import/realloc.c: Update.
2349         * gnulib/import/ref-add.sin: Update.
2350         * gnulib/import/ref-del.sin: Update.
2351         * gnulib/import/rename.c: Update.
2352         * gnulib/import/rewinddir.c: Update.
2353         * gnulib/import/rmdir.c: Update.
2354         * gnulib/import/same-inode.h: Update.
2355         * gnulib/import/save-cwd.c: Update.
2356         * gnulib/import/save-cwd.h: Update.
2357         * gnulib/import/scratch_buffer.h: Update.
2358         * gnulib/import/secure_getenv.c: Update.
2359         * gnulib/import/setenv.c: Update.
2360         * gnulib/import/signal.in.h: Update.
2361         * gnulib/import/stat-time.c: Update.
2362         * gnulib/import/stat-time.h: Update.
2363         * gnulib/import/stat-w32.c: Update.
2364         * gnulib/import/stat-w32.h: Update.
2365         * gnulib/import/stat.c: Update.
2366         * gnulib/import/stdbool.in.h: Update.
2367         * gnulib/import/stddef.in.h: Update.
2368         * gnulib/import/stdint.in.h: Update.
2369         * gnulib/import/stdio.in.h: Update.
2370         * gnulib/import/stdlib.in.h: Update.
2371         * gnulib/import/str-two-way.h: Update.
2372         * gnulib/import/strchrnul.c: Update.
2373         * gnulib/import/strdup.c: Update.
2374         * gnulib/import/streq.h: Update.
2375         * gnulib/import/strerror-override.c: Update.
2376         * gnulib/import/strerror-override.h: Update.
2377         * gnulib/import/strerror.c: Update.
2378         * gnulib/import/string.in.h: Update.
2379         * gnulib/import/stripslash.c: Update.
2380         * gnulib/import/strnlen1.c: Update.
2381         * gnulib/import/strnlen1.h: Update.
2382         * gnulib/import/strstr.c: Update.
2383         * gnulib/import/strtok_r.c: Update.
2384         * gnulib/import/sys_stat.in.h: Update.
2385         * gnulib/import/sys_time.in.h: Update.
2386         * gnulib/import/sys_types.in.h: Update.
2387         * gnulib/import/tempname.c: Update.
2388         * gnulib/import/tempname.h: Update.
2389         * gnulib/import/time.in.h: Update.
2390         * gnulib/import/unistd--.h: Update.
2391         * gnulib/import/unistd-safer.h: Update.
2392         * gnulib/import/unistd.in.h: Update.
2393         * gnulib/import/unsetenv.c: Update.
2394         * gnulib/import/verify.h: Update.
2395         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2396         * gnulib/import/wchar.in.h: Update.
2397         * gnulib/import/wctype.in.h: Update.
2398         * gnulib/import/xalloc-oversized.h: Update.
2399         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2400         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2401
2402 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2403
2404         * record-btrace.c (get_thread_current_frame): Remove
2405         old_inferior_ptid.
2406
2407 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2408
2409         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2410         with check_tag to 1 if and only if the type is tagged and the
2411         component being searched cannot been found in the current
2412         view. Otherwise, always call ada_to_fixed_type with
2413         check_tag to 0.
2414
2415 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2416
2417         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2418         declaration.
2419         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2420         * ada-varobj.c (ada_varobj_get_number_of_children,
2421         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2422
2423 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2424
2425         * ada-valprint.c (ada_value_print): Use type instead of
2426         enclosing type.
2427
2428 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2429
2430         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2431         an array of access to unconstrained array.
2432
2433 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2434
2435         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2436         (ada_check_typedef): Use it.
2437
2438 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2439
2440         * ada-varobj.c (ada_varobj_describe_struct_child)
2441         (ada_varobj_describe_child): Handle union case like struct one.
2442
2443 2018-09-10  Tom Tromey  <tom@tromey.com>
2444
2445         PR python/18380:
2446         * python/python.c (_initialize_python): Make example in "python"
2447         help work in Python 3.
2448
2449 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2450
2451         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2452         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2453         $(EXEEXT) to the script, as it is not a program.
2454
2455 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2456
2457         * python/py-prettyprint.c (pretty_print_one_value): Return
2458         gdbpy_ref<>.
2459         (print_string_repr): Adjust.
2460         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2461         * python/python-internal.h (apply_varobj_pretty_printer): Return
2462         gdbpy_ref<>.
2463         * varobj.c (varobj_value_get_print_value): Adjust.
2464
2465 2018-09-08  Tom Tromey  <tom@tromey.com>
2466
2467         PR python/16047:
2468         * python/py-prettyprint.c (pretty_print_one_value): Check for
2469         to_string method.
2470
2471 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2472
2473         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2474         replace_operator_with_call.
2475
2476 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2477
2478         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2479
2480 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2481
2482         * ada-typeprint.c (print_range): Print the bounds using TYPE
2483         rather than its TYPE_TARGET_TYPE.
2484
2485 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2486
2487         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2488         call to ada_to_fixed_value_create.
2489
2490 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2491
2492         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2493
2494 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2495
2496         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2497         by calls to error.
2498
2499 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2500
2501         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2502         Move update of loop variable "fi".
2503
2504 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2505
2506         * ada-lang.c (value_assign_to_component): In the case of
2507         big-endian targets, extract the bits of the given VAL
2508         using an src_offset of zero if container is not a scalar.
2509
2510 2018-09-06  Simon Ser  <contact@emersion.fr>
2511
2512         PR gdb/23105
2513         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2514         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2515         * fbsd-tdep.c (fbsd_make_note_desc): New.
2516         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2517         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2518         * target.h (enum target_object) Add FreeBSD-specific
2519         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2520
2521 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2522
2523         * compile/compile-c.h (generate_c_for_variable_locations):
2524         Change reference to pointer.
2525         * compile/compile-c-support.c (compile_program) <compute>:
2526         Likewise.
2527         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2528         (generate_c_for_for_one_variable): Likewise
2529         (generate_c_for_variable_locations): Likewise
2530         * compile/compile-c-types.c (compile_c_instance::convert_type):
2531         Likewise
2532         * compile/compile-cplus-symbols.c (convert_one_symbol):
2533         std::move the scope passed to enter_scope.
2534         * compile/compile-cplus-types.c
2535         (compile_cplus_instance::enter_scope): Make parameter
2536         rvalue-reference.
2537         (compile_cplus_instance::new_scope): Change reference to
2538         pointer.
2539         (compile_cplus_instance::convert_type): Likewise
2540         (compile_cplus_convert_typedef): std::move the scope passed to
2541         enter_scope.
2542         (compile_cplus_convert_struct_or_union): Likewise.
2543         (compile_cplus_convert_enum): Likewise.
2544         (compile_cplus_convert_namespace): Likewise.
2545         * compile/compile-cplus.h (compile_cplus_instance)
2546         <enter_scope>: Make parameter rvalue-reference.
2547         * compile/compile-internal.h (compile_instance)
2548         <get_cached_type>: Likewise
2549         * compile/compile-loc2c.c (push): Likewise
2550         (pushf): Likewise
2551         (unary): Likewise
2552         (binary): Likewise
2553         (print_label): Likewise
2554         (pushf_register_address): Likewise
2555         (pushf_register): Likewise
2556         (do_compile_dwarf_expr_to_c): Likewise
2557         (compile_dwarf_expr_to_c): Likewise
2558         (compile_dwarf_bounds_to_c): Likewise
2559         * compile/compile.c (compile_instance::get_cached_type):
2560         Likewise
2561         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2562         (compile_dwarf_bounds_to_c): Likewise
2563         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2564         (dwarf2_compile_property_to_c): Likewise
2565         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2566         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2567         Likewise
2568
2569 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2570
2571         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2572         * tui/tui-data.c (init_content_element): Don't initialize it.
2573
2574 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2575
2576         * tui/tui-data.h (struct tui_win_info)
2577         <detail::opaque>: Remove.
2578         * tui/tui-data.c (init_win_info): Remove assignment.
2579
2580 2018-09-05  Tom Tromey  <tom@tromey.com>
2581
2582         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2583         -Wformat-nonliteral.
2584         * target-float.c (host_float_ops<T>::to_string)
2585         (host_float_ops<T>::from_string): Use
2586         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2587         * configure: Rebuild.
2588
2589 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2590
2591         * printcmd.c (printf_c_string): Use
2592         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2593         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2594
2595 2018-09-05  Tom Tromey  <tom@tromey.com>
2596
2597         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2598
2599 2018-09-05  Tom de Vries  <tdevries@suse.de>
2600
2601         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2602         with resolve_abstract_p == true.
2603         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2604         defaulting to false. Propagate resolve_abstract_p to
2605         dwarf2_fetch_die_loc_sect_off.
2606         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2607         parameter, defaulting to false.
2608         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2609         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2610         parameter.
2611         * dwarf2read.h (struct die_info): Forward-declare.
2612         (die_info_ptr): New typedef.
2613         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2614
2615 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2616
2617         GDB 8.2 released.
2618
2619 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2620             Pedro Alves  <palves@redhat.com>
2621
2622         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2623         "aclocal-m4-deps.mk".  Include file here.
2624         $(srcdir)/aclocal.m4: Add "configure.ac".
2625         * gnulib/aclocal-m4-deps.mk: New file.
2626         * gnulib/update-gnulib.sh: Automatically update
2627         "aclocal-m4-deps.mk".
2628
2629 2018-09-04  Tom Tromey  <tom@tromey.com>
2630
2631         * configure: Rebuild.
2632         * configure.ac: Remove multi-ice code.
2633
2634 2018-09-04  Tom Tromey  <tom@tromey.com>
2635
2636         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2637         (ada-exp.o): Update.
2638
2639 2018-09-04  Tom Tromey  <tom@tromey.com>
2640
2641         * Makefile.in (printcmd.o, target-float.o): Remove.
2642         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2643
2644 2018-09-04  Tom Tromey  <tom@tromey.com>
2645
2646         * gnulib/Makefile.in: Remove obsolete comment.
2647         * Makefile.in: Remove obsolete comment.
2648
2649 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2650
2651         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2652         line with '+'.
2653
2654 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2655
2656         * riscv-tdep.c: Add 'prologue-value.h' include.
2657         (struct riscv_unwind_cache): New struct.
2658         (riscv_debug_unwinder): New global.
2659         (riscv_scan_prologue): Update arguments, capture register details
2660         from prologue scan.
2661         (riscv_skip_prologue): Reformat arguments line, move end of
2662         prologue calculation into riscv_scan_prologue.
2663         (riscv_frame_cache): Update return type, create
2664         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2665         details.
2666         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2667         (riscv_frame_prev_register): Use the trad_frame within the
2668         riscv_unwind_cache.
2669         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2670         flag.
2671
2672 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2673
2674         * trad-frame.h (trad_frame_set_realreg): Declare.
2675         (trad_frame_set_addr): Declare.
2676         * trad-frame.c (trad_frame_set_realreg): Define new function.
2677         (trad_frame_set_addr): Define new function.
2678         (trad_frame_set_reg_realreg): Use new function.
2679         (trad_frame_set_reg_addr): Use new function.
2680
2681 2018-09-01  Keith Seitz  <keiths@redhat.com>
2682
2683         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2684         pulongest instead of "%lld".
2685         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2686         ATTRIBUTE_UNUSED.
2687
2688 2018-08-31  Tom Tromey  <tom@tromey.com>
2689
2690         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2691         variant part type.
2692
2693 2018-08-31  Pedro Alves  <palves@redhat.com>
2694
2695         * gdbarch.h: Regenerate.
2696
2697 2018-08-31  Pedro Alves  <palves@redhat.com>
2698
2699         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2700         * target.h (Hardware watchpoint interfaces): Describe
2701         continuable/steppable/non-steppable watchpoints.
2702         * gdbarch.h, gdbarch.c: Regenerate.
2703
2704 2018-08-31  Pedro Alves  <palves@redhat.com>
2705
2706         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2707         Delete.
2708         * s390-linux-nat.c
2709         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2710         * target.h (target_ops::have_continuable_watchpoint): Delete.
2711         (target_have_continuable_watchpoint): Delete.
2712         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2713         * target-delegates.c: Regenerate.
2714
2715 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2716
2717         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2718         the files present in "gnulib/import/m4/".
2719
2720 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2721
2722         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2723         c.sw, c.swsp, and c.sdsp.
2724
2725 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2726
2727         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2728         (riscv_read_misa_reg): Don't cache value read into inferior data.
2729         (riscv_new_inferior_data): Delete.
2730         (riscv_inferior_data_cleanup): Delete.
2731         (riscv_inferior_data): Delete.
2732         (riscv_invalidate_inferior_data): Delete.
2733         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2734
2735 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2736
2737         * compile/compile-cplus-types.c
2738         (compile_cplus_instance::leave_scope): Take the address of scope
2739         object.
2740         (compile_cplus_instance::convert_qualified_base): Compare quals
2741         to 0.
2742
2743 2018-08-30  Keith Seitz  <keiths@redhat.com>
2744
2745         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2746         Use "%s" and host_address_to_string instead of "%p" in printf.
2747
2748 2018-08-29  Keith Seitz  <keiths@redhat.com>
2749
2750         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2751         and compile-cplus-types.c.
2752         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2753         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2754         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2755         Declare.
2756         * compile/compile-c-support.c: Include compile-cplus.h.
2757         (load_libcompile): Templatize.
2758         (get_compile_context): "New" function.
2759         (c_get_compile_context): Use get_compile_context.
2760         (cplus_get_compile_context): New function.
2761         (cplus_push_user_expression, cplus_pop_user_expression)
2762         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2763         (cplus_compute_program): Define new structs/functions.
2764         * compile/compile-cplus-symmbols.c: New file.
2765         * compile/compile-cplus-types.c: New file.
2766         * compile/compile-cplus.h: New file.
2767         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2768         Declare.
2769         * compile/compile-object-load.c (get_out_value_type): Use
2770         strncmp_iw when comparing symbol names.
2771         (compile_object_load): Add mst_bss and mst_data.
2772         * compile/compile.c (_initialize_compile): Remove
2773         -Wno-implicit-function-declaration from `compile_args'.
2774         * compile/gcc-cp-plugin.h: New file.
2775         * NEWS: Mention C++ compile support and new debug options.
2776
2777 2018-08-29  Keith Seitz  <keiths@redhat.com>
2778
2779         * linespec.c (collect_info::add_symbol): Make virtual.
2780         (struct symbol_searcher_collect_info): New struct.
2781         (symbol_searcher::find_all_symbols): New method.
2782         * symtab.h (class symbol_searcher): New class.
2783
2784 2018-08-29  Keith Seitz  <keiths@redhat.com>
2785
2786         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2787         Change to vector of block_symbol.  Update all users.
2788         (struct collect_info) <symbols>: Likewise.
2789         (collect_info::add_symbol): Take block_symbol as argument.
2790         Update all callers.
2791         (decode_compound_collector) <m_symbols>: Change type to vector
2792         of block_symbol.  Update all users.
2793         (decode_compound_collector::operator ()): Change parameter type
2794         to block_symbol.
2795         (find_method, find_function_symbols, find_linespec_symbols)
2796         (find_label_symbols_in_block, find_label_symbols): Change symbol
2797         vectors to block_symbol vectors.
2798         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2799         block_symbol.
2800
2801 2018-08-29  Keith Seitz  <keiths@redhat.com>
2802
2803         * linespec.c (symbolp): Remove typedef and VEC definitions.
2804         (bound_minimal_symbol_d): Likewise.
2805
2806 2018-08-29  Keith Seitz  <keiths@redhat.com>
2807
2808         * linespec.c (decode_compound_collector::decode_compound_collector):
2809         Remove initialization for `m_symtabs'.
2810         (decode_compound_collector::release_symbols): Change return type
2811         to std::vector.  Update all callers.
2812         (class decode_compound_collector) <m_symbols>: Change type to
2813         std::vector.
2814         (lookup_prefix_sym): Change return type to std::vector.  Update all
2815         callers.
2816         (compare_symbols): Remove.
2817         (std_compare_symbols): Rename to `compare_symbols'.
2818         (find_method): Change `sym_classes' parameter to std::vector.
2819         Update all callers.  Use std::sort to sort sym_classes.
2820         (find_linespec_symbols): Remove cleanup.
2821
2822 2018-08-29  Keith Seitz  <keiths@redhat.com>
2823
2824         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2825         std::vector.  Update all users.
2826         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2827         (struct collect_info) <minimal_symbols>: Likewise.
2828         (compare_msymbols): Return bool.  Change parameters to const
2829         bound_minimal_symbol references.
2830         (find_method, find_function_symbols, find_linespec_symbols): Change
2831         `minsyms' parameter to std::vector.  Update all callers.
2832
2833 2018-08-29  Keith Seitz  <keiths@redhat.com>
2834
2835         * linespec.c (struct linespec) <label_symbols>: Change type to
2836         std::vector.  Update all users.
2837         (find_label_symbols_in_block): Change `result' parameter to
2838         std::vector.  Update all callers.
2839         (find_label_symbols): Return std::vector.  Update all callers.
2840
2841 2018-08-29  Keith Seitz  <keiths@redhat.com>
2842
2843         * linespec.c (struct linespec) <function_symbols>: Change type to
2844         std::vector.  Update all users.
2845         (struct collect_info) <function_symbols>: Likewise.
2846         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2847         (std_compare_symbols): New function.
2848         (find_method, find_function_symbols, find_linespec_symbols)
2849         (find_label_symbols_in_block): Change `symbols' parameter to
2850         std::vector.  Update all callers.
2851         (find_label_symbols): Likewise for `function_symbols' and
2852         `label_funcs_ret'.
2853
2854 2018-08-29  Keith Seitz  <keiths@redhat.com>
2855
2856         * linespec.c (symtab_vector_up): Define.
2857         (struct linespec) <file_symtabs>: Change type to std::vector *.
2858         Update all uses.
2859         (struct collect_info) <file_symtabs>: Likewise.
2860         (collect_symtabs_from_filename): Return symtab_vector_up.
2861         Update all callers.
2862         (decode_objc): Remove cleanup.
2863         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2864         (symtab_collector::release_symtabs): Return symtab_vector_up.
2865         Update all callers.
2866         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2867         Update all users.
2868         (collect_symtabs_from_filename, symtabs_from_filename): Return
2869         symtab_vector_up.  Update all callers.
2870
2871 2018-08-29  Tom Tromey  <tom@tromey.com>
2872
2873         * csky-tdep.c (csky_analyze_prologue): Use
2874         core_addr_to_string_nz.
2875
2876 2018-08-29  Tom Tromey  <tom@tromey.com>
2877
2878         * windows-nat.c (struct xlate_exception) <them>: Change type to
2879         DWORD.
2880         (xlate): Fix formatting.  Remove last entry.
2881         (struct xlate_exception, xlate): Comment out.
2882         (windows_nat_target::resume): Use ranged for.
2883
2884 2018-08-29  Jim Wilson  <jimw@sifive.com>
2885
2886         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2887         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2888         of NT_PRFPREG.
2889         (riscv_linux_nat_target::store_registers): Likewise.
2890
2891 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2892
2893         PR gdb/23555
2894         PR gdb/23558
2895         * gnulib/aclocal.m4: Regenerate.
2896         * gnulib/config.in: Regenerate.
2897         * gnulib/configure: Regenerate.
2898         * gnulib/import/Makefile.am: Update.
2899         * gnulib/import/Makefile.in: Update.
2900         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2901         * gnulib/import/_Noreturn.h: ... this.
2902         * gnulib/import/alloca.in.h: Update.
2903         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2904         * gnulib/import/arg-nonnull.h: ... this.
2905         * gnulib/import/assure.h: Update.
2906         * gnulib/import/at-func.c: Update.
2907         * gnulib/import/basename-lgpl.c: Update.
2908         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2909         * gnulib/import/c++defs.h: ... this.
2910         * gnulib/import/canonicalize-lgpl.c: Update.
2911         * gnulib/import/cdefs.h: Update.
2912         * gnulib/import/chdir-long.c: Update.
2913         * gnulib/import/chdir-long.h: Update.
2914         * gnulib/import/cloexec.c: Update.
2915         * gnulib/import/cloexec.h: Update.
2916         * gnulib/import/close.c: Update.
2917         * gnulib/import/closedir.c: Update.
2918         * gnulib/import/config.charset: Update.
2919         * gnulib/import/dirent-private.h: Update.
2920         * gnulib/import/dirent.in.h: Update.
2921         * gnulib/import/dirfd.c: Update.
2922         * gnulib/import/dirname-lgpl.c: Update.
2923         * gnulib/import/dirname.h: Update.
2924         * gnulib/import/dosname.h: Update.
2925         * gnulib/import/dup-safer-flag.c: Update.
2926         * gnulib/import/dup-safer.c: Update.
2927         * gnulib/import/dup.c: Update.
2928         * gnulib/import/dup2.c: Update.
2929         * gnulib/import/errno.in.h: Update.
2930         * gnulib/import/error.c: Update.
2931         * gnulib/import/error.h: Update.
2932         * gnulib/import/exitfail.c: Update.
2933         * gnulib/import/exitfail.h: Update.
2934         * gnulib/import/extra/update-copyright: Update.
2935         * gnulib/import/fchdir.c: Update.
2936         * gnulib/import/fcntl.c: Update.
2937         * gnulib/import/fcntl.in.h: Update.
2938         * gnulib/import/fd-hook.c: Update.
2939         * gnulib/import/fd-hook.h: Update.
2940         * gnulib/import/fd-safer-flag.c: Update.
2941         * gnulib/import/fd-safer.c: Update.
2942         * gnulib/import/fdopendir.c: Update.
2943         * gnulib/import/filename.h: Update.
2944         * gnulib/import/filenamecat-lgpl.c: Update.
2945         * gnulib/import/filenamecat.h: Update.
2946         * gnulib/import/flexmember.h: Update.
2947         * gnulib/import/float+.h: Update.
2948         * gnulib/import/float.c: Update.
2949         * gnulib/import/float.in.h: Update.
2950         * gnulib/import/fnmatch.c: Update.
2951         * gnulib/import/fnmatch.in.h: Update.
2952         * gnulib/import/fnmatch_loop.c: Update.
2953         * gnulib/import/fpucw.h: Update.
2954         * gnulib/import/frexp.c: Update.
2955         * gnulib/import/frexpl.c: Update.
2956         * gnulib/import/fstat.c: Update.
2957         * gnulib/import/fstatat.c: Update.
2958         * gnulib/import/getcwd-lgpl.c: Update.
2959         * gnulib/import/getcwd.c: Update.
2960         * gnulib/import/getdtablesize.c: Update.
2961         * gnulib/import/getlogin_r.c: Update.
2962         * gnulib/import/getprogname.c: Update.
2963         * gnulib/import/getprogname.h: Update.
2964         * gnulib/import/gettext.h: Update.
2965         * gnulib/import/gettimeofday.c: Update.
2966         * gnulib/import/glob-libc.h: Update.
2967         * gnulib/import/glob.c: Update.
2968         * gnulib/import/glob.in.h: Update.
2969         * gnulib/import/glob_internal.h: Update.
2970         * gnulib/import/glob_pattern_p.c: Update.
2971         * gnulib/import/globfree.c: Update.
2972         * gnulib/import/hard-locale.c: Update.
2973         * gnulib/import/hard-locale.h: Update.
2974         * gnulib/import/intprops.h: Update.
2975         * gnulib/import/inttypes.in.h: Update.
2976         * gnulib/import/isnan.c: Update.
2977         * gnulib/import/isnand-nolibm.h: Update.
2978         * gnulib/import/isnand.c: Update.
2979         * gnulib/import/isnanl-nolibm.h: Update.
2980         * gnulib/import/isnanl.c: Update.
2981         * gnulib/import/itold.c: Update.
2982         * gnulib/import/libc-config.h: Update.
2983         * gnulib/import/limits.in.h: Update.
2984         * gnulib/import/localcharset.c: Update.
2985         * gnulib/import/localcharset.h: Update.
2986         * gnulib/import/localtime-buffer.c: Update.
2987         * gnulib/import/localtime-buffer.h: Update.
2988         * gnulib/import/lstat.c: Update.
2989         * gnulib/import/m4/00gnulib.m4: Update.
2990         * gnulib/import/m4/__inline.m4: Update.
2991         * gnulib/import/m4/absolute-header.m4: Update.
2992         * gnulib/import/m4/alloca.m4: Update.
2993         * gnulib/import/m4/builtin-expect.m4: Update.
2994         * gnulib/import/m4/canonicalize.m4: Update.
2995         * gnulib/import/m4/chdir-long.m4: Update.
2996         * gnulib/import/m4/close.m4: Update.
2997         * gnulib/import/m4/closedir.m4: Update.
2998         * gnulib/import/m4/configmake.m4: Update.
2999         * gnulib/import/m4/d-ino.m4: Update.
3000         * gnulib/import/m4/d-type.m4: Update.
3001         * gnulib/import/m4/dirent_h.m4: Update.
3002         * gnulib/import/m4/dirfd.m4: Update.
3003         * gnulib/import/m4/dirname.m4: Update.
3004         * gnulib/import/m4/double-slash-root.m4: Update.
3005         * gnulib/import/m4/dup.m4: Update.
3006         * gnulib/import/m4/dup2.m4: Update.
3007         * gnulib/import/m4/eealloc.m4: Update.
3008         * gnulib/import/m4/environ.m4: Update.
3009         * gnulib/import/m4/errno_h.m4: Update.
3010         * gnulib/import/m4/error.m4: Update.
3011         * gnulib/import/m4/exponentd.m4: Update.
3012         * gnulib/import/m4/exponentl.m4: Update.
3013         * gnulib/import/m4/extensions.m4: Update.
3014         * gnulib/import/m4/extern-inline.m4: Update.
3015         * gnulib/import/m4/fchdir.m4: Update.
3016         * gnulib/import/m4/fcntl-o.m4: Update.
3017         * gnulib/import/m4/fcntl.m4: Update.
3018         * gnulib/import/m4/fcntl_h.m4: Update.
3019         * gnulib/import/m4/fdopendir.m4: Update.
3020         * gnulib/import/m4/filenamecat.m4: Update.
3021         * gnulib/import/m4/flexmember.m4: Update.
3022         * gnulib/import/m4/float_h.m4: Update.
3023         * gnulib/import/m4/fnmatch.m4: Update.
3024         * gnulib/import/m4/fnmatch_h.m4: Update.
3025         * gnulib/import/m4/fpieee.m4: Update.
3026         * gnulib/import/m4/frexp.m4: Update.
3027         * gnulib/import/m4/frexpl.m4: Update.
3028         * gnulib/import/m4/fstat.m4: Update.
3029         * gnulib/import/m4/fstatat.m4: Update.
3030         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3031         * gnulib/import/m4/getcwd-path-max.m4: Update.
3032         * gnulib/import/m4/getcwd.m4: Update.
3033         * gnulib/import/m4/getdtablesize.m4: Update.
3034         * gnulib/import/m4/getlogin.m4: Update.
3035         * gnulib/import/m4/getlogin_r.m4: Update.
3036         * gnulib/import/m4/getpagesize.m4: Update.
3037         * gnulib/import/m4/getprogname.m4: Update.
3038         * gnulib/import/m4/gettimeofday.m4: Update.
3039         * gnulib/import/m4/glibc21.m4: Update.
3040         * gnulib/import/m4/glob.m4: Update.
3041         * gnulib/import/m4/glob_h.m4: Update.
3042         * gnulib/import/m4/gnulib-cache.m4: Update.
3043         * gnulib/import/m4/gnulib-common.m4: Update.
3044         * gnulib/import/m4/gnulib-comp.m4: Update.
3045         * gnulib/import/m4/gnulib-tool.m4: Update.
3046         * gnulib/import/m4/hard-locale.m4: Update.
3047         * gnulib/import/m4/include_next.m4: Update.
3048         * gnulib/import/m4/inttypes-pri.m4: Update.
3049         * gnulib/import/m4/inttypes.m4: Update.
3050         * gnulib/import/m4/isnand.m4: Update.
3051         * gnulib/import/m4/isnanl.m4: Update.
3052         * gnulib/import/m4/largefile.m4: Update.
3053         * gnulib/import/m4/limits-h.m4: Update.
3054         * gnulib/import/m4/localcharset.m4: Update.
3055         * gnulib/import/m4/locale-fr.m4: Update.
3056         * gnulib/import/m4/locale-ja.m4: Update.
3057         * gnulib/import/m4/locale-zh.m4: Update.
3058         * gnulib/import/m4/localtime-buffer.m4: Update.
3059         * gnulib/import/m4/longlong.m4: Update.
3060         * gnulib/import/m4/lstat.m4: Update.
3061         * gnulib/import/m4/malloc.m4: Update.
3062         * gnulib/import/m4/malloca.m4: Update.
3063         * gnulib/import/m4/math_h.m4: Update.
3064         * gnulib/import/m4/mbrtowc.m4: Update.
3065         * gnulib/import/m4/mbsinit.m4: Update.
3066         * gnulib/import/m4/mbsrtowcs.m4: Update.
3067         * gnulib/import/m4/mbstate_t.m4: Update.
3068         * gnulib/import/m4/memchr.m4: Update.
3069         * gnulib/import/m4/memmem.m4: Update.
3070         * gnulib/import/m4/mempcpy.m4: Update.
3071         * gnulib/import/m4/memrchr.m4: Update.
3072         * gnulib/import/m4/mkdir.m4: Update.
3073         * gnulib/import/m4/mkstemp.m4: Update.
3074         * gnulib/import/m4/mmap-anon.m4: Update.
3075         * gnulib/import/m4/mode_t.m4: Update.
3076         * gnulib/import/m4/msvc-inval.m4: Update.
3077         * gnulib/import/m4/msvc-nothrow.m4: Update.
3078         * gnulib/import/m4/multiarch.m4: Update.
3079         * gnulib/import/m4/nocrash.m4: Update.
3080         * gnulib/import/m4/off_t.m4: Update.
3081         * gnulib/import/m4/onceonly.m4: Update.
3082         * gnulib/import/m4/open-cloexec.m4: Update.
3083         * gnulib/import/m4/open.m4: Update.
3084         * gnulib/import/m4/openat.m4: Update.
3085         * gnulib/import/m4/opendir.m4: Update.
3086         * gnulib/import/m4/pathmax.m4: Update.
3087         * gnulib/import/m4/rawmemchr.m4: Update.
3088         * gnulib/import/m4/readdir.m4: Update.
3089         * gnulib/import/m4/readlink.m4: Update.
3090         * gnulib/import/m4/realloc.m4: Update.
3091         * gnulib/import/m4/rename.m4: Update.
3092         * gnulib/import/m4/rewinddir.m4: Update.
3093         * gnulib/import/m4/rmdir.m4: Update.
3094         * gnulib/import/m4/save-cwd.m4: Update.
3095         * gnulib/import/m4/secure_getenv.m4: Update.
3096         * gnulib/import/m4/setenv.m4: Update.
3097         * gnulib/import/m4/signal_h.m4: Update.
3098         * gnulib/import/m4/ssize_t.m4: Update.
3099         * gnulib/import/m4/stat-time.m4: Update.
3100         * gnulib/import/m4/stat.m4: Update.
3101         * gnulib/import/m4/std-gnu11.m4: Update.
3102         * gnulib/import/m4/stdbool.m4: Update.
3103         * gnulib/import/m4/stddef_h.m4: Update.
3104         * gnulib/import/m4/stdint.m4: Update.
3105         * gnulib/import/m4/stdio_h.m4: Update.
3106         * gnulib/import/m4/stdlib_h.m4: Update.
3107         * gnulib/import/m4/strchrnul.m4: Update.
3108         * gnulib/import/m4/strdup.m4: Update.
3109         * gnulib/import/m4/strerror.m4: Update.
3110         * gnulib/import/m4/string_h.m4: Update.
3111         * gnulib/import/m4/strstr.m4: Update.
3112         * gnulib/import/m4/strtok_r.m4: Update.
3113         * gnulib/import/m4/sys_socket_h.m4: Update.
3114         * gnulib/import/m4/sys_stat_h.m4: Update.
3115         * gnulib/import/m4/sys_time_h.m4: Update.
3116         * gnulib/import/m4/sys_types_h.m4: Update.
3117         * gnulib/import/m4/tempname.m4: Update.
3118         * gnulib/import/m4/time_h.m4: Update.
3119         * gnulib/import/m4/unistd-safer.m4: Update.
3120         * gnulib/import/m4/unistd_h.m4: Update.
3121         * gnulib/import/m4/warn-on-use.m4: Update.
3122         * gnulib/import/m4/wchar_h.m4: Update.
3123         * gnulib/import/m4/wchar_t.m4: Update.
3124         * gnulib/import/m4/wctype_h.m4: Update.
3125         * gnulib/import/m4/wint_t.m4: Update.
3126         * gnulib/import/malloc.c: Update.
3127         * gnulib/import/malloc/scratch_buffer.h: Update.
3128         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3129         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3130         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3131         * gnulib/import/malloca.c: Update.
3132         * gnulib/import/malloca.h: Update.
3133         * gnulib/import/malloca.valgrind: Update.
3134         * gnulib/import/math.in.h: Update.
3135         * gnulib/import/mbrtowc.c: Update.
3136         * gnulib/import/mbsinit.c: Update.
3137         * gnulib/import/mbsrtowcs-impl.h: Update.
3138         * gnulib/import/mbsrtowcs-state.c: Update.
3139         * gnulib/import/mbsrtowcs.c: Update.
3140         * gnulib/import/memchr.c: Update.
3141         * gnulib/import/memmem.c: Update.
3142         * gnulib/import/mempcpy.c: Update.
3143         * gnulib/import/memrchr.c: Update.
3144         * gnulib/import/mkdir.c: Update.
3145         * gnulib/import/mkstemp.c: Update.
3146         * gnulib/import/msvc-inval.c: Update.
3147         * gnulib/import/msvc-inval.h: Update.
3148         * gnulib/import/msvc-nothrow.c: Update.
3149         * gnulib/import/msvc-nothrow.h: Update.
3150         * gnulib/import/open.c: Update.
3151         * gnulib/import/openat-die.c: Update.
3152         * gnulib/import/openat-priv.h: Update.
3153         * gnulib/import/openat-proc.c: Update.
3154         * gnulib/import/openat.c: Update.
3155         * gnulib/import/openat.h: Update.
3156         * gnulib/import/opendir.c: Update.
3157         * gnulib/import/pathmax.h: Update.
3158         * gnulib/import/pipe-safer.c: Update.
3159         * gnulib/import/rawmemchr.c: Update.
3160         * gnulib/import/readdir.c: Update.
3161         * gnulib/import/readlink.c: Update.
3162         * gnulib/import/realloc.c: Update.
3163         * gnulib/import/ref-add.sin: Update.
3164         * gnulib/import/ref-del.sin: Update.
3165         * gnulib/import/rename.c: Update.
3166         * gnulib/import/rewinddir.c: Update.
3167         * gnulib/import/rmdir.c: Update.
3168         * gnulib/import/same-inode.h: Update.
3169         * gnulib/import/save-cwd.c: Update.
3170         * gnulib/import/save-cwd.h: Update.
3171         * gnulib/import/scratch_buffer.h: Update.
3172         * gnulib/import/secure_getenv.c: Update.
3173         * gnulib/import/setenv.c: Update.
3174         * gnulib/import/signal.in.h: Update.
3175         * gnulib/import/stat-time.c: Update.
3176         * gnulib/import/stat-time.h: Update.
3177         * gnulib/import/stat-w32.c: Update.
3178         * gnulib/import/stat-w32.h: Update.
3179         * gnulib/import/stat.c: Update.
3180         * gnulib/import/stdbool.in.h: Update.
3181         * gnulib/import/stddef.in.h: Update.
3182         * gnulib/import/stdint.in.h: Update.
3183         * gnulib/import/stdio.in.h: Update.
3184         * gnulib/import/stdlib.in.h: Update.
3185         * gnulib/import/str-two-way.h: Update.
3186         * gnulib/import/strchrnul.c: Update.
3187         * gnulib/import/strdup.c: Update.
3188         * gnulib/import/streq.h: Update.
3189         * gnulib/import/strerror-override.c: Update.
3190         * gnulib/import/strerror-override.h: Update.
3191         * gnulib/import/strerror.c: Update.
3192         * gnulib/import/string.in.h: Update.
3193         * gnulib/import/stripslash.c: Update.
3194         * gnulib/import/strnlen1.c: Update.
3195         * gnulib/import/strnlen1.h: Update.
3196         * gnulib/import/strstr.c: Update.
3197         * gnulib/import/strtok_r.c: Update.
3198         * gnulib/import/sys_stat.in.h: Update.
3199         * gnulib/import/sys_time.in.h: Update.
3200         * gnulib/import/sys_types.in.h: Update.
3201         * gnulib/import/tempname.c: Update.
3202         * gnulib/import/tempname.h: Update.
3203         * gnulib/import/time.in.h: Update.
3204         * gnulib/import/unistd--.h: Update.
3205         * gnulib/import/unistd-safer.h: Update.
3206         * gnulib/import/unistd.in.h: Update.
3207         * gnulib/import/unsetenv.c: Update.
3208         * gnulib/import/verify.h: Update.
3209         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3210         * gnulib/import/wchar.in.h: Update.
3211         * gnulib/import/wctype.in.h: Update.
3212         * gnulib/import/xalloc-oversized.h: Update.
3213         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3214         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3215
3216 2018-08-16  Gary Benson <gbenson@redhat.com>
3217
3218         PR gdb/13000:
3219         * gdb/main.c (captured_main_1): Exit with nonzero status
3220         in batch mode if the last command to be executed failed.
3221         * NEWS: Mention the above.
3222
3223 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3224
3225         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3226         end of warning message.
3227
3228 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3229
3230         PR gdb/22943:
3231         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3232         (aarch64_extract_return_value): Use
3233         aapcs_is_vfp_call_or_return_candidate.
3234         (aarch64_return_in_memory): Likewise.
3235         (aarch64_store_return_value): Likewise.
3236
3237 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3238
3239         * aarch64-tdep.c
3240         (aapcs_is_vfp_call_or_return_candidate): Make static
3241         (pass_in_v_or_stack): Remove function.
3242         (pass_in_v_vfp_candidate): New function.
3243         (aarch64_push_dummy_call): Check for float register candidates.
3244
3245 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3246
3247         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3248         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3249         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3250
3251 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3252
3253         PR build/23399
3254         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3255         (struct ipa_sym_addresses): Rename to...
3256         (struct ipa_sym_addresses_common): ... this.
3257         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3258
3259 2018-08-28  Tom Tromey  <tom@tromey.com>
3260
3261         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3262         (token_fifo): Now a std::vector.
3263         (yylex, c_parse): Update.
3264         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3265         (token_fifo): Now a std::vector.
3266         (yylex, d_parse): Update.
3267         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3268         (token_fifo): Now a std::vector.
3269         (yylex, go_parse): Update.
3270
3271 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3272
3273         * parser-defs.h (struct type_stack) <elements>: Change type to
3274         std::vector<union type_stack_elt>.
3275         <depth, size>: Remove.
3276         * parse.c (parse_exp_in_context_1): Adjust.
3277         (type_stack_reserve): Remove.
3278         (check_type_stack_depth): Remove.
3279         (insert_into_type_stack): Adjust to std::vector.
3280         (insert_type): Likewise.
3281         (push_type): Likewise.
3282         (push_type_int): Likewise.
3283         (insert_type_address_space): Likewise.
3284         (pop_type): Likewise.
3285         (pop_type_int): Likewise.
3286         (pop_typelist): Likewise.
3287         (pop_type_stack): Likewise.
3288         (append_type_stack): Likewise.
3289         (push_type_stack): Likewise.
3290         (get_type_stack): Likewise.
3291         (type_stack_cleanup): Likewise.
3292         (push_typelist): Likewise.
3293         (follow_types): Likewise.
3294         (_initialize_parse): Likewise.
3295
3296 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3297
3298         * NEWS: Mention csky target.
3299
3300 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3301             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3302             Don Breazeal  <donb@codesourcery.com>
3303
3304         * csky-linux-tdep.c: New file.
3305         * csky-tdep.c: Likewise.
3306         * csky-tdep.h: Likewise.
3307         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3308         csky-tdep.o.
3309         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3310         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3311         * configure.tgt: Add csky support.
3312
3313 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3314
3315         * python/py-framefilter.c (py_print_frame): Print frame architecture
3316         when printing on an MI output.
3317
3318 2018-08-27  Tom Tromey  <tom@tromey.com>
3319
3320         PR build/23087:
3321         * configure: Rebuild.
3322         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3323
3324 2018-08-27  Tom Tromey  <tom@tromey.com>
3325
3326         * aarch64-linux-tdep.c
3327         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3328         casts to int.
3329
3330 2018-08-27  Tom Tromey  <tom@tromey.com>
3331
3332         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3333         unsigned.
3334         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3335         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3336         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3337         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3338         unsigned.
3339
3340 2018-08-27  Tom Tromey  <tom@tromey.com>
3341
3342         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3343         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3344
3345 2018-08-27  Tom Tromey  <tom@tromey.com>
3346
3347         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3348         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3349         ULONGEST_MAX.
3350         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3351         ULONGEST_MAX.
3352         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3353         ULONGEST_MAX.
3354         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3355         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3356         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3357         ULONGEST_MAX.
3358         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3359         (ppc64_linux_sigaction_tramp_frame)
3360         (ppc32_linux_sighandler_tramp_frame)
3361         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3362         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3363         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3364         * mn10300-linux-tdep.c (am33_linux_sigframe)
3365         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3366         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3367         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3368         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3369         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3370         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3371         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3372         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3373         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3374         * microblaze-linux-tdep.c
3375         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3376         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3377         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3378         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3379         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3380         * common/common-types.h (ULONGEST_MAX): New define.
3381         (CORE_ADDR_MAX): Fix formatting.
3382         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3383         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3384         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3385         (arm_linux_rt_sigreturn_tramp_frame)
3386         (arm_eabi_linux_sigreturn_tramp_frame)
3387         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3388         (thumb2_eabi_linux_sigreturn_tramp_frame)
3389         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3390         (arm_linux_restart_syscall_tramp_frame)
3391         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3392         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3393         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3394         ULONGEST_MAX.
3395         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3396
3397 2018-08-27  Tom Tromey  <tom@tromey.com>
3398
3399         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3400         CORE_ADDR_MAX.
3401         * mips-tdep.c (mips_deal_with_atomic_sequence)
3402         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3403         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3404         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3405         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3406         CORE_ADDR_MAX.
3407         * aarch64-tdep.c (aarch64_software_single_step): Use
3408         CORE_ADDR_MAX.
3409
3410 2018-08-27  Tom Tromey  <tom@tromey.com>
3411
3412         * linespec.c (complete_linespec_component): Add cast to "char".
3413         * completer.c (completion_tracker::build_completion_result): Add
3414         cast to "char".
3415
3416 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3417
3418         * solist.h (struct solist, struct target_so_ops): Fix
3419         indentation.
3420
3421 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3422
3423         * ada-tasks.c (ada_task_info_s): Remove typedef.
3424         (DEF_VEC_O(ada_task_info_s)): Remove.
3425         (struct ada_tasks_inferior_data): Initialize fields.
3426         <task_list>: Make an std::vector.
3427         (get_ada_tasks_inferior_data): Allocate with new.
3428         (ada_get_task_number): Adjust.
3429         (get_task_number_from_id): Likewise.
3430         (valid_task_id): Likewise.
3431         (ada_get_task_info_from_ptid): Likewise.
3432         (iterate_over_live_ada_tasks): Likewise.
3433         (add_ada_task): Likewise.
3434         (read_known_tasks): Likewise.
3435         (ada_build_task_list): Likewise.
3436         (print_ada_task_info): Likewise.
3437         (info_task): Likewise.
3438         (task_command_1): Likewise.
3439
3440 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3441
3442         * ada-lang.c (add_angle_brackets): Return std::string.
3443
3444 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3445
3446         * python/py-threadevent.c (py_get_event_thread): Initialize
3447         pythread.
3448
3449 2018-08-24  Pedro Alves  <palves@redhat.com>
3450
3451         * python/py-bpevent.c (create_breakpoint_event_object): Use
3452         copy-initialization.
3453         * python/py-continueevent.c (emit_continue_event): Use
3454         copy-initialization.
3455         * python/py-exitedevent.c (create_exited_event_object): Return a
3456         gdbpy_ref<>.
3457         (emit_exited_event): Use copy-initialization.
3458         * python/py-inferior.c (python_new_inferior)
3459         (python_inferior_deleted, add_thread_object): Use
3460         copy-initialization.
3461         * python/py-infevents.c (create_inferior_call_event_object)
3462         (create_register_changed_event_object)
3463         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3464         (emit_inferior_call_event, emit_memory_changed_event)
3465         (emit_register_changed_event): Use copy-initialization.
3466         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3467         Return a gdbpy_ref<>.
3468         (emit_new_objfile_event): Use copy-initialization.
3469         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3470         (emit_clear_objfiles_event): Use copy-initialization.
3471         * python/py-signalevent.c (create_signal_event_object): Use
3472         copy-initialization.
3473         * python/py-threadevent.c (create_thread_event_object): Use
3474         copy-initialization.
3475
3476 2018-08-24  Pedro Alves  <palves@redhat.com>
3477             Simon Marchi  <simon.marchi@ericsson.com>
3478
3479         PR gdb/23379
3480         * python/py-continueevent.c: Include "gdbthread.h".
3481         (create_continue_event_object): Add intro comment.  Add 'ptid'
3482         parameter.  Use it to find thread to pass to
3483         create_thread_event_object.
3484         (emit_continue_event): Pass PTID down to
3485         create_continue_event_object.
3486         * python/py-event.h (py_get_event_thread): Declare.
3487         (create_thread_event_object): Remove default from 'thread'
3488         parameter.
3489         * python/py-stopevent.c (create_stop_event_object): Use
3490         py_get_event_thread.
3491         * python/py-threadevent.c (get_event_thread): Rename to ...
3492         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3493         and use it to find the thread.
3494         (create_thread_event_object): Assert that THREAD isn't null.
3495         Don't find the event thread here.
3496
3497 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3498
3499         * block.h (blockrange, blockranges): New struct declarations.
3500         (struct block): Add new field named `ranges'.
3501         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3502         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3503         macros for accessing ranges in struct block.
3504         (make_blockranges): New declaration.
3505         block.c (make_blockranges): New function.
3506         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3507         for block.
3508         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3509         * blockframe.c (cache_pc_function_block): New static global.
3510         (clear_pc_function_cache): Clear cache_pc_function_block.
3511         (find_pc_partial_function): Move comment to symtab.h.  Add
3512         support for non-contiguous blocks.
3513         * cli/cli-cmds.c (block.h): Include.
3514         (print_disassembly): Handle printing of non-contiguous blocks.
3515         (disassemble_current_function): Likewise.
3516         (disassemble_command): Likewise.
3517
3518         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3519         BLOCK_START.
3520         * blockframe.c (get_pc_function_start): Likewise.
3521         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3522         (gcc_symbol_address): Likewise.
3523         * compile/compile-object-run.c (compile_object_run): Likewise.
3524         * compile/compile.c (get_expr_block_and_pc): Likewise.
3525         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3526         (func_addr_to_tail_call_list): Likewise.
3527         * findvar.c (default_read_var_value): Likewise.
3528         * inline-frame.c (inline_frame_this_id): Likewise.
3529         (skip-inline_frames): Likewise.
3530         * infcmd.c (until_next_command): Likewise.
3531         * linespec.c (convert_linespec_to_sals): Likewise.
3532         * parse.c (parse_exp_in_context_1): Likewise.
3533         * printcmd.c (build_address_symbolic): likewise.
3534         (info_address_command): Likewise.
3535         symtab.c (find_function_start_sal): Likewise.
3536         (skip_prologue_sal): Likewise.
3537         (find_function_alias_target): Likewise.
3538         (find_gnu_ifunc): Likewise.
3539         * stack.c (find_frame_funname): Likewise.
3540         * symtab.c (fixup_symbol_section): Likewise.
3541         (find_function_start_sal): Likewise.
3542         (skip_prologue_sal): Likewsie.
3543         (find_function_alias_target): Likewise.
3544         (find_gnu_ifunc): Likewise.
3545         * tracepoint.c (info_scope_command): Likewise.
3546         * value.c (value_fn_field): Likewise.
3547
3548         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3549         in place of find_pc_partial_function.
3550         * blockframe.c (find_function_entry_range_from_pc): New function.
3551         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3552         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3553         for each range in a block.
3554
3555
3556 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3557
3558         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3559         incrementation.
3560
3561 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3562
3563         * solib-svr4.c (read_program_headers_from_bfd): Return
3564         gdb::optional<gdb::byte_vector>.
3565         (svr4_exec_displacement): Adjust.
3566
3567 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3568
3569         * solib-svr4.c (read_program_header): Return
3570         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3571         (find_program_interpreter): Return
3572         gdb::optional<gdb::byte_vector>.
3573         (scan_dyntag_auxv): Adjust.
3574         (enable_break): Adjust.
3575         (svr4_exec_displacement): Adjust.
3576
3577 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3578
3579         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3580         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3581
3582 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3583
3584         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3585         string_vprintf.
3586         * guile/scm-utils.c (gdbscm_printf): Likewise.
3587         * serial.c (serial_printf): Likewise.
3588         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3589
3590 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3591
3592         * stack.c (print_frame): Print frame architecture when printing on
3593         an MI output.
3594         * NEWS: Mention new "arch" attribute in frame output.
3595
3596 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3597
3598         * arch/aarch64.h (aarch64_regnum): Update comment.
3599
3600 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3601
3602         * NEWS: Add SVE to 8.2 section.
3603
3604 2018-08-21  Pedro Alves  <palves@redhat.com>
3605
3606         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3607         out from gdbscm_parse_function_args.
3608         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3609         gdbscm_parse_function_args_1.
3610
3611 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3612
3613         PR gdb/17816
3614         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3615         operator.
3616
3617 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3618
3619         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3620
3621 2018-08-19  Michael Spang  <spang@google.com>
3622
3623         PR gdb/11786
3624         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3625         for PT_TLS segments.
3626
3627 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3628
3629         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3630         dwarf_variable_value.
3631         * dwarf2-frame.c (class dwarf_expr_executor):
3632         Add override for dwarf_variable_value.
3633         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3634         (class symbol_needs_eval_context): Likewise.
3635         (indirect_synthetic_pointer): Add forward declaration.
3636         (sect_variable_value): New function.
3637         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3638         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3639         for DW_OP_GNU_variable_value.
3640
3641 2018-08-16  Tom Tromey  <tom@tromey.com>
3642
3643         * top.c (read_command_file): Update.
3644         (command_line_input): Remove "repeat" argument.
3645         * ada-lang.c (get_selections): Update.
3646         * linespec.c (decode_line_2): Update.
3647         * defs.h (command_line_input): Remove argument.
3648         * cli/cli-script.c (read_next_line): Update.
3649         * python/py-gdb-readline.c: Update.
3650
3651 2018-08-17  Tom Tromey  <tom@tromey.com>
3652
3653         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3654         command_line_input.
3655
3656 2018-08-15  Tom Tromey  <tom@tromey.com>
3657
3658         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3659
3660 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3661
3662         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3663         If used, use find_pc_partial_function to find address range
3664         to disassemble.
3665         * mi/mi-main.c (mi_cmd_list_features): Report
3666         "data-disassemble-a-option" feature.
3667         * NEWS: Mention new -data-disassemble option -a.
3668
3669 2018-08-13  Tom Tromey  <tom@tromey.com>
3670
3671         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3672
3673 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3674
3675         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3676         (aarch64_linux_collect_sve_regset): Likewise.
3677         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3678         * regcache.h (regcache_map_entry_size): New function.
3679
3680 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3681
3682         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3683         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3684         (SVE_HEADER_VL_LENGTH): Likewise.
3685         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3686         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3687         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3688         (SVE_HEADER_SIZE_OFFSET): Likewise.
3689         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3690         (SVE_HEADER_VL_OFFSET): Likewise.
3691         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3692         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3693         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3694         (SVE_HEADER_SIZE): Likewise.
3695         (aarch64_linux_core_read_vq): Add function.
3696         (aarch64_linux_core_read_description): Check for SVE section.
3697
3698 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3699
3700         * aarch64-fbsd-tdep.c
3701         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3702         collect_size.
3703         * aarch64-linux-tdep.c
3704         (aarch64_linux_iterate_over_regset_sections): Likewise.
3705         * alpha-linux-tdep.c
3706         (alpha_linux_iterate_over_regset_sections):
3707         * alpha-nbsd-tdep.c
3708         (alphanbsd_iterate_over_regset_sections): Likewise.
3709         * amd64-fbsd-tdep.c
3710         (amd64fbsd_iterate_over_regset_sections): Likewise.
3711         * amd64-linux-tdep.c
3712         (amd64_linux_iterate_over_regset_sections): Likewise.
3713         * arm-bsd-tdep.c
3714         (armbsd_iterate_over_regset_sections): Likewise.
3715         * arm-fbsd-tdep.c
3716         (arm_fbsd_iterate_over_regset_sections): Likewise.
3717         * arm-linux-tdep.c
3718         (arm_linux_iterate_over_regset_sections): Likewise.
3719         * corelow.c (get_core_registers_cb): Likewise.
3720         (core_target::fetch_registers): Likewise.
3721         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3722         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3723         * gdbarch.h (void): Regenerate.
3724         * gdbarch.sh: Add supply_size and collect_size.
3725         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3726         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3727         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3728         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3729         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3730         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3731         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3732         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3733         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3734         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3735         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3736         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3737         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3738         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3739         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3740         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3741         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3742         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3743         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3744         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3745         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3746         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3747         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3748         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3749         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3750         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3751         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3752         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3753         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3754         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3755
3756 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3757
3758         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3759         with string_printf.
3760
3761 2018-08-10  Keith Seitz  <keiths@redhat.com>
3762
3763         * compile/compile-c-support.c (add_code_header, add_code_footer):
3764         Move into policy class.
3765         (c_push_user_expression, pop_user_expression_nop)
3766         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3767         (compile_program): New host class.
3768         (c_compile_program): New typedef.
3769         (c_compute_porgram): Use c_compile_program.
3770
3771 2018-08-10  Keith Seitz  <keiths@redhat.com>
3772
3773         * compile/compile-internal.h (compile_instance::~compile_instance):
3774         Remove calls to htab_delete.
3775         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3776         * compile.c (compile_instance::compile_instance): Initialize
3777         htab unique pointers.
3778         (compile_instance::get_cached_type, compile_instance::insert_type)
3779         (compile_instance::error_symbol_once): Update for unique_ptr.
3780
3781 2018-08-10  Keith Seitz  <keiths@redhat.com>
3782
3783         * compile/compile-c-symbols.c (struct symbol_error)
3784         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3785         (compile_instance::insert_symbol_error)
3786         (compile_instance::error_symbol_once): Move to ...
3787         * compile/compile.c: ... here.
3788
3789 2018-08-10  Keith Seitz  <keiths@redhat.com>
3790
3791         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3792         instead of `new_compile_instance'.
3793         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3794         Update description.
3795         If the symbol error map is not initialized, create it.
3796         (generate_c_for_for_one_symbol): Do not check/initialize
3797         the symbol error map.
3798         * compile/compile-c-types.c (compile_c_instance): Make a class.
3799         Update all callers.
3800         (compile_instance::compile_instance): Initialize the type cache.
3801         (get_cached_type): New function.
3802         (insert_type): Update description.
3803         (compile_c_instance::m_default_cflags): Define.
3804         (convert_type): Update description.  Use get_cached_type.
3805         (delete_instance): Moved to destructor.
3806         (new_compile_instance): Moved to constructor.
3807         * compile/compile-c.h (compile_c_instance): Make class inheriting
3808         from compile_instance.
3809         <base>: Remove field.
3810         <type_map, symbol_err_map>: Move to base class.
3811         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3812         * compile/compile-internal.h (compile_instance): Make class.
3813         <type_map_t, symbol_err_map_t>: Define.
3814         <fe>: Rename to `m_gcc_fe'.
3815         <scope, block, gcc_target_options>: Add `m_' prefix.
3816         <m_type_map, m_symbol_err_map>: New fields, moved from
3817         compile_c_instance.
3818         <destroy>: Remove.
3819         (convert_type, new_compile_instance): Remove.
3820         * compile/compile.c (cleanup_compile_instance): Remove.
3821         (compile_to_object): Use unique_ptr to eliminate cleanups.
3822         (compile_instance::set_print_callback, compile_instance::version)
3823         (compile_instance::set_verbose)
3824         (compile_instance::set_driver_filename)
3825         (compile_instance::set_triplet_regexp)
3826         (compile_instance::set_arguments)
3827         (compile_instance::set_source_file)
3828         (compile_instance::compile): Define.
3829
3830 2018-08-10  Keith Seitz  <keiths@redhat.com>
3831
3832         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3833         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3834         gcc-c-fe.def to define C plugin.
3835         (delete_instance): Delete `c_plugin'.
3836         (new_compile_instance): Initialize `c_plugin'.
3837         * compile/compile-c.h: Include gcc_c_plugin.h.
3838         (struct compile_c_instance) <c_plugin>: New member.
3839         * gcc-c-plugin.h: New file.
3840         Update all callers with API change.
3841
3842 2018-08-10  Keith Seitz  <keiths@redhat.com>
3843
3844         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3845         (HFILES_NO_SRCDIR): ... to here.
3846         Add compile-internal.h and compile-c.h.
3847         * compile/compile-c-support.c: Include compile-c.h.
3848         * compile/compile-c-symbols.c: Include compile-c.h.
3849         (generate_c_for_variable_locations): Update comment.
3850         * compile/compile-c-types.c: Include compile-c.h.
3851         * compile/compile-c.h: New file -- moved C language declarations
3852         from other files here.
3853         * compile/compile-internal.h: Do not include hashtab.h or
3854         common/enum-flags.h.
3855         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3856         (gcc_convert_symbol, gcc_symbol_address)
3857         (generate_c_for_variable_locations, c_get_mode_for_size)
3858         (c_get_range_decl_name): Definitions moved to compile-c.h.
3859         * compile/compile-loc2c.c: Include compile-c.h.
3860
3861 2018-08-10  Keith Seitz  <keiths@redhat.com>
3862
3863         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3864         (c_symbol_substitution_name): ... this.
3865         Update all callers.
3866
3867 2018-08-10  Keith Seitz  <keiths@redhat.com>
3868
3869         * compile/compile-c-support.c (c_compute_program): Use
3870         unique_xmalloc_ptr to eliminate cleanup.
3871         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3872         Return a unique_xmalloc_ptr and eliminate cleanup.
3873         * compile/compile-internal.h (generate_c_for_variable_locations):
3874         Return unique_xmalloc_ptr and update description.
3875
3876 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3877
3878         * corelow.c (core_target::get_core_register_section): Rename
3879         min_size to section_min_size.
3880
3881 2018-08-09  Jim Wilson  <jimw@sifive.com>
3882
3883         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3884         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3885         * NEWS: Mention new GNU/Linux RISC-V target.
3886         * configure.host: Add riscv*-*-linux*.
3887         * configure.nat: Add riscv*.
3888         * configure.tgt: Add riscv*-*-linux*.
3889         * riscv-linux-nat.c: New file.
3890         * riscv-linux-tdep.c: New file.
3891
3892 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3893
3894         * infrun.c (resume): Make static, add forward declaration.
3895         (proceed): Update header comment.
3896         * infrun.h (resume): Delete declaration.
3897
3898 2018-08-09  Tom Tromey  <tom@tromey.com>
3899
3900         * riscv-tdep.h: Minor formatting fixes.
3901
3902 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3903
3904         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3905         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3906         (test_mkdir_recursive): Likewise.
3907         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3908
3909 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3910
3911         * valarith.c (value_subscripted_rvalue): If an array is not in
3912         memory, and we don't know the upper bound, then we can't know that
3913         the requested element exists or not.
3914
3915 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3916
3917         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3918         (target_options_to_string): Add comment.
3919
3920 2018-08-08  Tom Tromey  <tom@tromey.com>
3921
3922         * unittests/scoped_mmap-selftests.c: Check result of "write".
3923
3924 2018-08-08  Jim Wilson  <jimw@sifive.com>
3925
3926         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3927         (decode_register_index_short): New.
3928         (decode_j_type_insn, decode_cj_type_insn): New.
3929         (decode_b_type_insn, decode_cb_type_insn): New.
3930         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3931         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3932         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3933         is_c_sw_insn instead of is_sw_insn.
3934         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3935         (riscv_software_single_step): New.
3936         * riscv-tdep.h (riscv_software_single_step): Declare.
3937
3938         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3939         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3940
3941 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3942
3943         PR gdb/18050:
3944         * target.c (dispose_inferior): Don't dispose of inferiors that are
3945         already killed.
3946
3947 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3948
3949         * remote.c (remote_target::download_tracepoint): Change char* to
3950         const char*.
3951
3952 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3953
3954         * target.h (target_options_to_string): Return an std::string.
3955         * target.c (str_comma_list_concat_elem): Return void, use
3956         std::string.
3957         (do_option): Likewise.
3958         (target_options_to_string): Return an std::string.
3959         * linux-nat.c (linux_nat_target::wait): Adjust.
3960         * target-debug.h (target_debug_print_options): Adjust.
3961
3962 2018-08-07  Tom Tromey  <tom@tromey.com>
3963
3964         * Makefile.in (CPPFLAGS): New variable.
3965         (INTERNAL_CPPFLAGS): Use it.
3966
3967 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3968
3969         * NEWS: Mention the index cache.
3970
3971 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3972
3973         * common/pathstuff.h (get_standard_cache_dir): New.
3974         * common/pathstuff.c (get_standard_cache_dir): New.
3975         * build-id.h (build_id_to_string): New.
3976         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3977         DEBUG_STR_SUFFIX): Move to here.
3978         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3979         DEBUG_STR_SUFFIX): Move from there.
3980         (write_psymtabs_to_index): Make non-static, add basename
3981         parameter.  Write to temporary files, rename when done.
3982         (save_gdb_index_command): Adjust call to
3983         write_psymtabs_to_index.
3984         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3985         field.
3986         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3987         (get_gdb_index_contents_from_cache): New.
3988         (get_gdb_index_contents_from_cache_dwz): New.
3989         (dwarf2_initialize_objfile): Read index from cache.
3990         (dwarf2_build_psymtabs): Save to index.
3991         * dwarf-index-cache.h: New file.
3992         * dwarf-index-cache.c: New file.
3993         * dwarf-index-write.h: New file.
3994
3995 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3996
3997         * gnulib/aclocal.m4: Re-generate.
3998         * gnulib/config.in: Re-generate.
3999         * gnulib/configure: Re-generate.
4000         * gnulib/import/Makefile.am: Re-generate.
4001         * gnulib/import/Makefile.in: Re-generate.
4002         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4003         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4004         * gnulib/import/m4/mkdir.m4: New file.
4005         * gnulib/import/mkdir.c: New file.
4006         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4007         module.
4008
4009 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4010
4011         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4012         * common/scoped_mmap.c: New file.
4013         * common/scoped_mmap.h (destroy): New method.
4014         (~scoped_mmap, reset): Use destroy.
4015         (scoped_mmap): New move constructor.
4016         (mmap_file): New declaration.
4017         * unittests/scoped_mmap-selftests.c (test_normal,
4018         test_invalid_filename, run_tests): New functions.
4019         (_initialize_scoped_mmap_selftests): Register selftest.
4020
4021 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4022
4023         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4024         (read_gdb_index_from_buffer): ... this.  Remove section
4025         parameter, add buffer parameter.
4026         (get_gdb_index_contents_ftype,
4027         get_gdb_index_contents_dwz_ftype): New typedefs.
4028         (dwarf2_read_gdb_index): Add callback parameters to get the
4029         index contents.
4030         (get_gdb_index_contents_from_section): New.
4031         (dwarf2_initialize_objfile): Update call to
4032         dwarf2_read_gdb_index.
4033
4034 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4035
4036         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4037         (gdb_open_cloexec): Likewise.
4038         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4039         (commandline_from_pid): Likewise.
4040         (linux_xfer_osdata_threads): Likewise.
4041         (linux_xfer_osdata_fds): Likewise.
4042         * ada-lang.c (is_package_name): Likewise.
4043         * auxv.c (procfs_xfer_auxv): Likewise.
4044         * breakpoint.c (print_one_breakpoint_location): Use
4045         uiout::field_fmt.
4046         (print_one_catch_solib): Use string_printf.
4047         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4048         (add_pe_forwarded_sym): Likewise.
4049         * dwarf2read.c (create_type_unit_group): Likewise.
4050         (build_error_marker_type): Likewise.
4051         * infcall.c (get_function_name): Likewise.
4052         * valprint.c (print_converted_chars_to_obstack): Likewise.
4053         * xtensa-tdep.c (xtensa_register_type): Likewise.
4054
4055 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4056
4057         * remote.c (remote_target::download_tracepoint): Fix format
4058         string errors.
4059
4060 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4061
4062         * tracefile.c: Include common/byte-vector.h.
4063         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4064         with trace_regblock_size if needed.  Update uses of buf.
4065
4066 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4067
4068         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4069         std::vector<unsigned char>.
4070         * tracepoint.c (collection_list::collection_list): Remove
4071         m_regs_mask initializer from initializer list.  Resize
4072         m_regs_mask using the largest remote register number.
4073         (collection_list::add_remote_register): Remove size check on
4074         m_regs_mask.  Use at to access element.
4075         (collection_list::stringify): Change type of temp_buf to
4076         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4077         stringify the register mask.  Use pack_hex_byte for the register
4078         mask.
4079
4080 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4081
4082         * tracepoint.h (class collection_list) <add_register>: Remove.
4083         <add_remote_register, add_ax_registers, add_local_register>:
4084         Declare.
4085         <add_memrange>: Add scope parameter.
4086         * tracepoint.c (encode_actions_1): Likewise.
4087         (collection_list::add_register): Rename to ...
4088         (collection_list::add_remote_register): ... this.  Update
4089         comment.
4090         (collection_list::add_ax_registers, add_local_register): New
4091         methods.
4092         (collection_list::add_memrange): Add scope parameter.  Call
4093         add_local_register instead of add_register.
4094         (finalize_tracepoint_aexpr): New function.
4095         (collection_list::collect_symbol): Update calls to add_memrange.
4096         Call add_local_register instead of add_register.  Call
4097         add_ax_registers.  Call finalize_tracepoint_aexpr.
4098         (encode_actions_1): Get remote regnos for $reg action.  Call
4099         add_remote_register, add_ax_registers, and add_local_register.
4100         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4101         (validate_actionline): Call finalize_tracepoint_aexpr.
4102
4103 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4104
4105         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4106         Replace array buf with gdb::char_vector buf, of size
4107         get_remote_packet_size ().  Replace references to buf and
4108         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4109         and xsnprintf with snprintf.  Raise errors if the buffer is too
4110         small.
4111
4112 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4113
4114         * remote.c (remote_target::download_tracepoint): Fix the has_more
4115         predicate in the QTDP action list iteration.
4116
4117 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4118
4119         * remote.c (remote_target::download_tracepoint): Fix indentation
4120         in for block.
4121
4122 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4123
4124         * proc-api.c (_initialize_proc_api): Remove c, unused.
4125         * procfs.c (procfs_init_inferior): Remove signals, unused.
4126         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4127         unused.
4128
4129 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4130             Andrew Burgess  <andrew.burgess@embecosm.com>
4131
4132         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4133         'W_STOPCODE (0)' as this could be ambiguous.
4134
4135 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4136
4137         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4138         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4139         "ai_socktype").
4140
4141 2018-08-02  Tom Tromey  <tom@tromey.com>
4142
4143         PR symtab/16842.
4144         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4145         symbols.
4146         (process_structure_scope): Likewise.
4147
4148 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4149
4150         PR gdb/22629:
4151         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4152         kill inferior.
4153
4154 2018-08-02  Tom Tromey  <tom@tromey.com>
4155
4156         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4157         (darwin_suspend_inferior, darwin_resume_inferior)
4158         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4159         (darwin_check_new_threads): Check result of get_darwin_inferior.
4160
4161 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4162
4163         GDB 8.1.1 released.
4164
4165 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4166
4167         * varobj.c (varobj_get_path_expr_parent): Report an error if
4168         parent is a dynamic varobj.
4169
4170 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4171
4172         * gnulib/aclocal.m4: Re-generate.
4173         * gnulib/config.in: Re-generate.
4174         * gnulib/configure: Re-generate.
4175         * gnulib/import/Makefile.in: Re-generate.
4176         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4177         * gnulib/import/m4/onceonly.m4: Re-generate.
4178
4179 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4180
4181         * target-descriptions.c (struct xml_test_tdesc): New.
4182         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4183         (record_xml_tdesc): Update.
4184         (maintenance_check_xml_descriptions): Update.
4185         * target-descriptions.h (record_xml_tdesc): Update comment.
4186
4187 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4188
4189         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4190         checking array bounds are defined.
4191
4192 2018-07-30  Tom Tromey  <tom@tromey.com>
4193
4194         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4195         irreflexivity violation.
4196
4197 2018-07-30  Tom Tromey  <tom@tromey.com>
4198
4199         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4200         * value.c (unpack_long): Remove lint code.
4201         * valops.c (value_ind): Remove lint code.
4202         * valarith.c (value_x_binop, value_x_unop, value_equal)
4203         (value_pos): Remove lint code.
4204
4205 2018-07-28  Tom de Vries  <tdevries@suse.de>
4206
4207         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4208         with undefined upper bound as <optimized out>.
4209
4210 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4211
4212         * gcore.in: Rename variable "name" to "prefix".  Expand
4213         "usage" text.
4214
4215 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4216
4217         * windows-nat.c (windows_nat_target::create_inferior): Update to
4218         call close() in global namespace.
4219
4220 2018-07-26  Tom Tromey  <tom@tromey.com>
4221
4222         * dwarf-index-write.c (add_address_entry): Don't add objfile
4223         offsets.
4224         * dbxread.c (find_stab_function): Rename from
4225         find_stab_function_addr.  Return a bound_minimal_symbol.
4226         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4227         Don't add objfile offsets.
4228         (end_psymtab): Use raw_text_low, raw_text_high,
4229         MSYMBOL_VALUE_RAW_ADDRESS.
4230         (read_ofile_symtab): Update.
4231         (process_one_symbol): Update.
4232         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4233         offsets.
4234         (dw2_relocate): Remove.
4235         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4236         searching addrmap.
4237         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4238         Update.
4239         (process_psymtab_comp_unit_reader, add_partial_symbol)
4240         (add_partial_subprogram, dwarf2_ranges_read): Update.
4241         (load_partial_dies): Update.
4242         (add_address_entry): Don't add objfile offsets.
4243         (dwarf2_build_include_psymtabs): Update.
4244         (create_addrmap_from_aranges): Don't add objfile offsets.
4245         (dw2_find_pc_sect_compunit_symtab): Update.
4246         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4247         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4248         Update.
4249         (parse_partial_symbols): Don't add objfile offsets.  Use
4250         raw_text_low, raw_text_high.  Update.
4251         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4252         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4253         or call 'relocate' quick function.  Clear psymbol_map.
4254         * psympriv.h (struct partial_symbol) <address>: Add section
4255         offset.
4256         <set_unrelocated_address>: Rename from set_address.
4257         <raw_text_low, raw_text_high>: New methods.
4258         <text_low, text_high>: Add objfile parameter.
4259         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4260         set_unrelocated_address.
4261         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4262         (find_pc_psymbol): Update.
4263         (fixup_psymbol_section, relocate_psymtabs): Remove.
4264         (dump_psymtab, psym_functions): Update.
4265         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4266         parameter.
4267         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4268         (start_psymtab_common): Update.
4269         * symfile-debug.c (debug_qf_relocate): Remove.
4270         (debug_sym_quick_functions): Update.
4271         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4272         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4273         Update.
4274
4275 2018-07-26  Tom Tromey  <tromey@redhat.com>
4276
4277         * dbxread.c (end_psymtab): Use text_high_valid and
4278         text_low_valid.
4279         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4280         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4281         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4282         Update comment.
4283         <text_low_valid, text_high_valid>: New fields.
4284         <set_text_low, set_text_high>: Update.
4285         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4286
4287 2018-07-26  Tom Tromey  <tom@tromey.com>
4288
4289         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4290         Update.
4291         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4292         textlow and texthigh fields.
4293         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4294         Update.
4295         * mdebugread.c (parse_lines, parse_partial_symbols)
4296         (psymtab_to_symtab_1): Update.
4297         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4298         Rename fields.  Update comment.  Now private.
4299         <text_low, text_high, set_text_low, set_text_high>: New methods.
4300         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4301         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4302         (start_psymtab_common, maintenance_info_psymtabs)
4303         (maintenance_check_psymtabs): Update.
4304         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4305         texthigh fields.
4306         (scan_xcoff_symtab): Update.
4307
4308 2018-07-26  Tom Tromey  <tromey@redhat.com>
4309
4310         * psympriv.h (struct partial_symbol) <unrelocated_address,
4311         address, set_address>: New methods.
4312         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4313         (fixup_psymbol_section, relocate_psymtabs): Update.
4314         (print_partial_symbols): Add 'objfile' parameter.  Update.
4315         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4316         Update.
4317
4318 2018-07-26  Tom Tromey  <tom@tromey.com>
4319
4320         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4321         (debug_names::write_psymbols): Update.
4322         * psympriv.h (struct partial_symbol): Derive from
4323         general_symbol_info.
4324         <obj_section>: New method.
4325         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4326         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4327         (find_pc_sect_psymbol, fixup_psymbol_section)
4328         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4329         (print_partial_symbols, recursively_search_psymtabs)
4330         (compare_psymbols, psymbol_hash, psymbol_compare)
4331         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4332         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4333
4334 2018-07-26  Tom Tromey  <tromey@redhat.com>
4335
4336         * dbxread.c (end_psymtab): Remove dead code.
4337
4338 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4339
4340         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4341         DWARF unwinders are disabled.
4342         * dwarf2-frame.c: Add dwarf2read.h include.
4343         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4344         disabled.
4345         (dwarf2_frame_unwinders_enabled_p): Define.
4346         (show_dwarf_unwinders_enabled_p): New function.
4347         (_initialize_dwarf2_frame): Register switch to control DWARF
4348         unwinder use.
4349         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4350         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4351         (show_dwarf_cmdlist): Remove static keyword.
4352         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4353         (show_dwarf_cmdlist): Declare.
4354         * NEWS: Document new feature.
4355
4356 2018-07-26  Tom de Vries  <tdevries@suse.de>
4357
4358         PR breakpoints/23366
4359         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4360
4361 2018-07-26  Tom de Vries  <tdevries@suse.de>
4362
4363         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4364         DW_AT_count can't be translated to a dynamic prop.
4365
4366 2018-07-25  Tom de Vries  <tdevries@suse.de>
4367
4368         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4369         try/catch.
4370
4371 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4372
4373         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4374
4375 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4376
4377         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4378
4379 2018-07-24  Keith Seitz  <keiths@redhat.comt
4380
4381         PR symtab/23010
4382         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4383         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4384         instead of add_symbol_to_list.
4385         (read_file_scope): Call prepare_one_comp_unit before reading
4386         any other DIEs.
4387
4388 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4389
4390         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4391
4392 2018-07-24  Tom Tromey  <tom@tromey.com>
4393
4394         * utils.c (malloc, realloc, free): Don't declare.
4395         * configure, config.in: Rebuild.
4396         * configure.ac: Don't check for declarations of free, malloc, or
4397         realloc.
4398
4399 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4400
4401         * aarch64-linux-nat.c
4402         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4403         variable.
4404         * arm-linux-nat.c (fetch_regs): Likewise.
4405         (store_regs): Likewise.
4406         (fetch_vfp_regs): Likewise.
4407         (store_vfp_regs): Likewise.
4408         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4409         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4410         (arm_linux_nat_target::insert_watchpoint): Likewise.
4411         (arm_linux_nat_target::remove_watchpoint): Likewise.
4412         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4413         Likewise.
4414         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4415         Likewise.
4416         * ppc-linux-nat.c (fetch_register): Likewise.
4417         (fetch_all_gp_regs): Likewise.
4418         (fetch_ppc_registers): Likewise.
4419         (store_all_gp_regs): Likewise.
4420         (store_ppc_registers): Likewise.
4421         (hwdebug_insert_point): Likewise.
4422         (can_use_watchpoint_cond_accel): Likewise.
4423         * remote-sim.c (gdb_os_write_stdout): Likewise.
4424
4425 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4426             Tom Tromey  <tom@tromey.com>
4427
4428         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4429         test for it.
4430         * configure: Rebuild.
4431
4432 2018-07-22  Tom Tromey  <tom@tromey.com>
4433
4434         * regformats/regdat.sh: Define xmltarget_${name} inside
4435         #ifndef IN_PROCESS_AGENT.
4436
4437 2018-07-22  Tom Tromey  <tom@tromey.com>
4438
4439         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4440
4441 2018-07-22  Tom Tromey  <tom@tromey.com>
4442
4443         * symfile.c (reread_symbols): Notify iter, not objfile.
4444
4445 2018-07-22  Tom Tromey  <tom@tromey.com>
4446
4447         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4448         Use arch_ops.
4449         (ravenscar_thread_target::prepare_to_store): Likewise.
4450
4451 2018-07-22  Tom Tromey  <tom@tromey.com>
4452
4453         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4454         unused variable.  Call value_fetch_lazy when needed.
4455         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4456         Remove unused variable.  Call value_fetch_lazy when needed.
4457
4458 2018-07-22  Tom Tromey  <tom@tromey.com>
4459
4460         * m32c-tdep.c (mark_dma): Return void.
4461         (make_regs): Remove unused declarations.
4462
4463 2018-07-22  Tom Tromey  <tom@tromey.com>
4464
4465         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4466         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4467         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4468         bkscm_get_valid_block_smob_arg_unsafe for effect.
4469
4470 2018-07-22  Tom Tromey  <tom@tromey.com>
4471
4472         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4473         value_type.
4474
4475 2018-07-22  Tom Tromey  <tom@tromey.com>
4476
4477         * windows-nat.c (saved_context): Conditionally define.
4478         * remote.c (remote_target::remote_btrace_maybe_reopen):
4479         Conditionally declare "warned".
4480         * inflow.c (sigquit_ours): Conditionally define.
4481         (new_tty): Move "tty" declaration inside #if.
4482         * guile/guile.c (guile_datadir): Conditionally define.
4483         * charset.c (set_be_le_names): Move some declarations inside #if.
4484         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4485         #if.
4486         (parse_xml_btrace_conf): Likewise.
4487
4488 2018-07-22  Tom Tromey  <tom@tromey.com>
4489
4490         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4491
4492 2018-07-22  Tom Tromey  <tom@tromey.com>
4493
4494         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4495         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4496         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4497         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4498         * stack.c (frame_apply_level_command): Remove unused variable.
4499         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4500         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4501         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4502         unused variable.
4503         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4504         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4505         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4506         variable.
4507         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4508         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4509         variable.
4510         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4511         Remove unused variable.
4512         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4513         variable.
4514         * common/tdesc.c (print_xml_feature::visit): Remove unused
4515         variable.
4516         * compile/compile-object-load.c (store_regs): Remove unused
4517         variables.
4518         * complaints.c (clear_complaints): Remove unused variable.
4519         * corelow.c (core_target_open): Remove unused variable.
4520         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4521         variable.
4522         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4523         variable.
4524         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4525         variable.
4526         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4527         variable.
4528         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4529         variable.
4530         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4531         variable.
4532         * ia64-tdep.c (examine_prologue): Remove unused variable.
4533         * infcall.c (run_inferior_call): Remove unused variable.
4534         * inferior.c (exit_inferior): Remove unused variable.
4535         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4536         * linespec.c (decode_line_2): Remove unused variable.
4537         * linux-nat.c (super_close): Remove.
4538         * linux-tdep.c (linux_info_proc): Remove unused variable.
4539         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4540         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4541         Remove unused variable.
4542         * parse.c (find_minsym_type_and_address): Remove unused variable.
4543         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4544         variable.
4545         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4546         variable.
4547         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4548         variables.
4549         * record-btrace.c (record_btrace_target::store_registers): Remove
4550         unused variable.
4551         (cmd_show_record_btrace_cpu): Remove unused variable.
4552         * riscv-tdep.c (riscv_register_reggroup_p)
4553         (riscv_push_dummy_call, riscv_return_value): Remove unused
4554         variable.
4555         * rust-exp.y (literal): Remove unused variable.
4556         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4557         unused variable.
4558         <STRUCTOP_ANONYMOUS>: Likewise.
4559         * s390-linux-tdep.c (s390_linux_init_abi_31)
4560         (s390_linux_init_abi_64): Remove unused variable.
4561         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4562         (file_select_thread, net_windows_open, _initialize_ser_windows):
4563         Remove unused variables.
4564         * symtab.c (find_pc_sect_line): Remove unused variable.
4565         * target-memory.c (compute_garbled_blocks): Remove unused
4566         variable.
4567         (target_write_memory_blocks): Remove unused variable.
4568         * target.c (target_stack::unpush): Remove unused variables.
4569         * tracepoint.c (start_tracing, all_tracepoint_actions)
4570         (merge_uploaded_trace_state_variables)
4571         (print_one_static_tracepoint_marker): Remove unused variable.
4572         * unittests/basic_string_view/element_access/char/1.cc (test01):
4573         Remove unused variable.
4574         * windows-nat.c (windows_continue, windows_add_all_dlls)
4575         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4576         Remove unused variables.
4577
4578 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4579
4580         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4581         attr_profile in HAVE_ELF.
4582         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4583         HAVE_ELF.
4584
4585 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4586
4587         * frame.c (frame_register_unwind): Change parameter name.
4588         (frame_unwind_register): Likewise.
4589         (frame_unwind_register_value): Likewise.
4590         (frame_unwind_register_signed): Likewise.
4591         (frame_unwind_register_unsigned): Likewise.
4592         * frame.h (frame_register_unwind): Likewise.
4593         (frame_unwind_register): Likewise.
4594         (frame_unwind_register_value): Likewise.
4595         (frame_unwind_register_signed): Likewise.
4596         (frame_unwind_register_unsigned): Likewise.
4597         (frame_unwind_arch): Likewise.
4598
4599 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4600
4601         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4602         ISA maintenance.
4603
4604 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4605
4606         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4607         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4608         hand.
4609
4610 2018-07-20  Keith Seitz  <keiths@redhat.com>
4611
4612         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4613         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4614         m_compunit_symtab, m_language>: Add "m_" prefix.
4615         Update all uses.
4616         * buildsym.c: Update all uses.
4617
4618 2018-07-20  Tom Tromey  <tom@tromey.com>
4619
4620         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4621         * buildsym.h (record_line_ftype): Remove typedef.
4622
4623 2018-07-20  Tom Tromey  <tom@tromey.com>
4624
4625         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4626         (end_expandable_symtab): Likewise.
4627         (end_symtab_get_static_block): Likewise.
4628         (end_symtab_from_static_block): Likewise.
4629         * buildsym-legacy.c (augment_type_symtab): Remove.
4630         (end_expandable_symtab): Remove.
4631         (end_symtab_get_static_block): Remove.
4632         (end_symtab_from_static_block): Remove.
4633
4634 2018-07-20  Tom Tromey  <tom@tromey.com>
4635
4636         * dwarf2read.c: Include buildsym.h.
4637         (struct dwarf2_cu) <builder>: New method.
4638         (fixup_go_packaging): Update.
4639         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4640         use scoped_free_pendings.
4641         (using_directives): Add "cu" parameter, remove "language".
4642         (read_import_statement, setup_type_unit_groups, )
4643         (read_func_scope, read_lexical_block_scope)
4644         (dwarf2_record_block_ranges, read_namespace): Update.
4645         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4646         (lnp_state_machine::handle_end_sequence): Update.
4647         (class lnp_state_machine) <m_cu>: New member.
4648         <m_record_line_callback>: Remove.
4649         <m_currently_recording_lines>: New member.
4650         (lnp_state_machine::handle_set_file): Update.
4651         (noop_record_line): Remove.
4652         (dwarf_record_line_p): Add cu parameter.
4653         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4654         (lnp_state_machine::record_line)
4655         (lnp_state_machine::lnp_state_machine)
4656         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4657         (dwarf_decode_lines): Update.
4658         (dwarf2_start_subfile): Add cu parameter.
4659         (dwarf2_start_symtab, new_symbol): Update.
4660         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4661         Remove dwarf2_per_objfile parameter.
4662         (dwarf_decode_macros): Update.
4663
4664 2018-07-20  Tom Tromey  <tom@tromey.com>
4665
4666         * stabsread.c (define_symbol): Update.
4667         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4668         * dwarf2read.c (new_symbol): Update.
4669         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4670         * cp-namespace.c: Include buildsym.h.
4671         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4672         * buildsym-legacy.c (get_buildsym_compunit): New function.
4673
4674 2018-07-20  Tom Tromey  <tom@tromey.com>
4675
4676         * xcoffread.c: Include buildsym-legacy.h.
4677         * windows-nat.c: Include buildsym-legacy.h.
4678         * stabsread.c: Include buildsym-legacy.h.
4679         * mdebugread.c: Include buildsym-legacy.h.
4680         * buildsym-legacy.h: New file.
4681         * buildsym-legacy.c: New file, from buildsym.c.
4682         * go32-nat.c: Include buildsym-legacy.h.
4683         * dwarf2read.c: Include buildsym-legacy.h.
4684         * dbxread.c: Include buildsym-legacy.h.
4685         * cp-namespace.c: Include buildsym-legacy.h.
4686         * coffread.c: Include buildsym-legacy.h.
4687         * buildsym.h: Move some contents to buildsym-legacy.h.
4688         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4689         buildsym-legacy.c.
4690         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4691
4692 2018-07-20  Tom Tromey  <tom@tromey.com>
4693
4694         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4695         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4696         (buildsym_compunit::buildsym_compunit)
4697         (buildsym_compunit::~buildsym_compunit)
4698         (buildsym_compunit::get_macro_table): Define.
4699
4700 2018-07-20  Tom Tromey  <tom@tromey.com>
4701
4702         * buildsym.c (reset_symtab_globals): Remove.
4703         (buildsym_compunit::end_symtab_from_static_block): Update.
4704         (buildsym_compunit::augment_type_symtab): Update.
4705         (end_symtab_from_static_block): Call free_buildsym_compunit.
4706         (augment_type_symtab, end_symtab, end_expandable_symtab):
4707         Likewise.
4708
4709 2018-07-20  Tom Tromey  <tom@tromey.com>
4710
4711         * arch-utils.c: Do not include buildsym.h.
4712         * mipsread.c: Do not include buildsym.h.
4713         * machoread.c: Do not include buildsym.h.
4714         * elfread.c: Do not include buildsym.h.
4715
4716 2018-07-20  Tom Tromey  <tom@tromey.com>
4717
4718         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4719         initialization.
4720         (buildsym_compunit): Add new constructor.
4721         (struct buildsym_compunit) <get_last_source_file, finish_block,
4722         record_block_range, start_subfile, patch_subfile_names,
4723         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4724         set_last_source_start_addr, get_last_source_start_addr,
4725         get_local_using_directives, set_local_using_directives,
4726         get_global_using_directives, outermost_context_p,
4727         get_current_context_stack, get_context_stack_depth,
4728         get_current_subfile, get_local_symbols, get_file_symbols,
4729         get_global_symbols, record_debugformat, record_producer,
4730         push_context, pop_context, end_symtab_get_static_block,
4731         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4732         New public methods.
4733         <record_pending_block, finish_block_internal, make_blockvector,
4734         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4735         private methods.
4736         Update all users.
4737
4738 2018-05-22  Tom Tromey  <tom@tromey.com>
4739
4740         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4741         parameter.
4742         (finish_block_internal): Update.
4743
4744 2018-07-20  Tom Tromey  <tom@tromey.com>
4745
4746         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4747         parameter.
4748         (finish_block_internal): Update.
4749
4750 2018-07-20  Tom Tromey  <tom@tromey.com>
4751
4752         * buildsym.h (EXTERN): Don't define or undef.
4753         * buildsym.c (EXTERN): Don't define.
4754
4755 2018-07-20  Tom Tromey  <tom@tromey.com>
4756
4757         * buildsym.c: Remove TODO comment.
4758
4759 2018-07-20  Tom Tromey  <tom@tromey.com>
4760
4761         * coffread.c (coff_symtab_read): Update.
4762         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4763         (xcoff_new_init): Update.
4764         * mipsread.c (mipscoff_new_init): Update.
4765         * mdebugread.c (mdebug_build_psymtabs): Update.
4766         * elfread.c (elf_new_init): Update.
4767         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4768         Update.
4769         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4770         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4771         (stabsect_build_psymtabs): Update.
4772         * buildsym.h (buildsym_init): Don't declare.
4773         * buildsym.c: Update comment.
4774         (prepare_for_building): Remove.
4775         (start_symtab, restart_symtab): Update.
4776         (reset_symtab_globals): Update comment.
4777         (buildsym_init): Remove.
4778
4779 2018-07-20  Tom Tromey  <tom@tromey.com>
4780
4781         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4782         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4783         (read_enum_type, common_block_start, common_block_end)
4784         (cleanup_undefined_types_1, finish_global_stabs): Update.
4785         * mdebugread.c (psymtab_to_symtab_1): Update.
4786         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4787         (read_lexical_block_scope, new_symbol): Update.
4788         * dbxread.c (process_one_symbol): Update.
4789         * coffread.c (coff_symtab_read, process_coff_symbol)
4790         (coff_read_enum_type): Update.
4791         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4792         declare.
4793         (get_local_symbols, get_file_symbols, get_global_symbols): New
4794         functions.
4795         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4796         m_global_symbols.
4797         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4798         (~scoped_free_pendings): Update.
4799         (finish_block, prepare_for_building, reset_symtab_globals)
4800         (end_symtab_get_static_block, end_symtab_with_blockvector)
4801         (augment_type_symtab, push_context): Update.
4802         (get_local_symbols, get_file_symbols, get_global_symbols): New
4803         functions.
4804         (buildsym_init): Update.
4805
4806 2018-07-20  Tom Tromey  <tom@tromey.com>
4807
4808         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4809         (process_full_type_unit): Likewise.
4810         (dwarf2_start_symtab): Set list_in_scope.
4811
4812 2018-07-20  Tom Tromey  <tom@tromey.com>
4813
4814         * dwarf2read.c (process_psymtab_comp_unit_reader)
4815         (build_type_psymtabs_reader): Do not set list_in_scope.
4816
4817 2018-07-20  Tom Tromey  <tom@tromey.com>
4818
4819         * buildsym.c (free_pendings): Remove.
4820         (add_symbol_to_list, scoped_free_pendings)
4821         (finish_block_internal, buildsym_init): Update.
4822
4823 2018-07-20  Tom Tromey  <tom@tromey.com>
4824
4825         * xcoffread.c (read_xcoff_symtab): Update.
4826         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4827         Update.
4828         * dbxread.c (process_one_symbol): Update.
4829         * coffread.c (coff_symtab_read): Update.
4830         * buildsym.h (finish_block): Update.
4831         * buildsym.c (finish_block): Remove "listhead" argument.
4832         (end_symtab_get_static_block): Update.
4833
4834 2018-07-20  Tom Tromey  <tom@tromey.com>
4835
4836         * buildsym.h (class scoped_free_pendings): Remove constructor.
4837         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4838         method.
4839         <m_pending_block_obstack, m_pending_blocks>: New members.
4840         (pending_block_obstack, pending_blocks): Remove.
4841         (scoped_free_pendings::scoped_free_pendings): Default.
4842         (~scoped_free_pendings): Update.
4843         (free_pending_blocks): Remove.
4844         (finish_block_internal, record_pending_block, make_blockvector)
4845         (end_symtab_get_static_block, augment_type_symtab, push_context)
4846         (buildsym_init): Update.
4847
4848 2018-07-20  Tom Tromey  <tom@tromey.com>
4849
4850         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4851         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4852         members.
4853         (pending_addrmap, pending_addrmap_obstack)
4854         (pending_addrmap_interesting): Remove.
4855         (scoped_free_pendings, record_block_range, make_blockvector)
4856         (prepare_for_building, reset_symtab_globals, buildsym_init):
4857         Update.
4858
4859 2018-07-20  Tom Tromey  <tom@tromey.com>
4860
4861         * xcoffread.c (process_linenos): Update.
4862         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4863         * mdebugread.c (psymtab_to_symtab_1): Update.
4864         * dwarf2read.c (setup_type_unit_groups)
4865         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4866         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4867         * dbxread.c (process_one_symbol): Update.
4868         * coffread.c (coff_symtab_read, enter_linenos)
4869         (process_coff_symbol): Update.
4870         * buildsym.h (current_subfile): Don't declare.
4871         (get_current_subfile): Declare.
4872         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4873         member.
4874         (start_subfile, free_buildsym_compunit, push_subfile)
4875         (prepare_for_building, start_symtab): Update.
4876         (get_current_subfile): New function.
4877
4878 2018-07-20  Tom Tromey  <tom@tromey.com>
4879
4880         * coffread.c (coff_symtab_read): Update.
4881         * xcoffread.c (read_xcoff_symtab): Update.
4882         * dwarf2read.c (new_symbol): Update.
4883         (read_func_scope, read_lexical_block_scope): Update.
4884         * dbxread.c (process_one_symbol): Update.
4885         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4886         (outermost_context_p): Remove macro.
4887         (outermost_context_p, get_current_context_stack)
4888         (get_context_stack_depth): Declare.
4889         (pop_context): Return struct context_stack.
4890         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4891         member.
4892         (context_stack_size): Remove.
4893         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4894         (prepare_for_building, end_symtab_get_static_block)
4895         (augment_type_symtab, push_context): Update.
4896         (pop_context): Return struct context_stack.
4897         (outermost_context_p, get_current_context_stack)
4898         (get_context_stack_depth): New functions.
4899         (buildsym_init): Update.
4900
4901 2018-07-20  Tom Tromey  <tom@tromey.com>
4902
4903         * rust-exp.y: Now a pure parser.  Update all rules.
4904         (%union): Move earlier.
4905         (current_parser, work_obstack): Remove globals.
4906         (rust_parser, ~rust_parser): Update.
4907         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4908         lex_character, lex_number, lex_string, lex_identifier,
4909         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4910         convert_name, convert_params_to_expression,
4911         convert_ast_to_expression, ast_basic_type, ast_operation,
4912         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4913         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4914         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4915         ast_array_type, ast_slice_type, ast_reference_type,
4916         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4917         (rust_parse): Update.
4918         (rustyyerror, rustyylex): Add parser parameter.
4919         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4920         (rust_lex_stringish_test, rust_lex_test_sequence)
4921         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4922         (rust_lex_test_push_back, rust_lex_tests): Update.
4923
4924 2018-07-19  Pedro Alves  <palves@redhat.com>
4925
4926         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4927         gdb::unique_xmalloc_ptr.
4928         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4929         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4930         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4931         copy-initialization.
4932         * guile/scm-pretty-print.c (ppscm_print_children): Use
4933         gdb::unique_xmalloc_ptr instead of cleanups.
4934         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4935         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4936         gdb::unique_xmalloc_ptr.
4937         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4938         Adjust to use gdb::unique_xmalloc_ptr.
4939         * guile/scm-utils.c (extract_arg): Adjust.
4940         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4941         gdb::unique_xmalloc_ptr instead of a cleanup.
4942
4943 2018-07-19  Tom Tromey  <tom@tromey.com>
4944
4945         * utils.c (do_value_free_to_mark)
4946         (make_cleanup_value_free_to_mark): Remove.
4947         * utils.h (make_cleanup_value_free_to_mark): Remove.
4948
4949 2018-07-19  Pedro Alves  <palves@redhat.com>
4950
4951         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4952         forwarding reference.
4953
4954 2018-07-18  Pedro Alves  <palves@redhat.com>
4955
4956         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4957         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4958         cleanup.
4959
4960 2018-07-18  Pedro Alves  <palves@redhat.com>
4961
4962         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4963         exceptions.
4964         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4965         (gdbscm_wrap): New.
4966         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4967         directly instead of a cleanup.
4968         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4969         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4970         (vlscm_binop_gdbthrow): New, factored out from ...
4971         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4972         (vlscm_rich_compare): Use gdbscm_wrap.
4973         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4974         instead of a cleanup.
4975         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4976         cleanup.
4977         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4978         Use xfree directly instead of a cleanup.
4979         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4980         Adjust to use gdbscm_wrap and scoped_value_mark.
4981         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4982         (gdbscm_value_address, gdbscm_value_dereference)
4983         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4984         scoped_value_mark.
4985         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4986         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4987         scoped_value_mark.
4988         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4989         gdbscm_wrap and scoped_value_mark.
4990         (gdbscm_value_to_string): Use xfree directly instead of a
4991         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4992         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4993         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4994         scoped_value_mark.
4995         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4996         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4997         scoped_value_mark.
4998         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4999         gdbscm_wrap.
5000
5001 2018-07-18  Tom de Vries  <tdevries@suse.de>
5002
5003         * findvar.c (default_read_var_value): Also resolve dynamic type for
5004         LOC_OPTIMIZED_OUT vars.
5005
5006 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5007
5008         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5009         decoding.
5010
5011 2018-07-17  Tom Tromey  <tom@tromey.com>
5012
5013         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5014         (compute_enum_list, pascm_set_param_value_x)
5015         (gdbscm_parameter_value): Update.
5016         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5017         (gdbscm_scm_to_host_string): Update.
5018         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5019         Update.
5020         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5021         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5022         * guile/scm-string.c (gdbscm_scm_to_string): Return
5023         unique_xmalloc_ptr.
5024         (gdbscm_scm_to_host_string): Likewise.
5025
5026 2018-07-17  Tom Tromey  <tom@tromey.com>
5027
5028         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5029         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5030         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5031         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5032         unique_xmalloc_ptr.
5033
5034 2018-07-17  Tom Tromey  <tom@tromey.com>
5035
5036         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5037         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5038         Update.
5039         * guile/scm-cmd.c (cmdscm_function): Update.
5040         * guile/scm-pretty-print.c
5041         (ppscm_print_exception_unless_memory_error): Update.
5042         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5043         Return unique_xmalloc_ptr.
5044
5045 2018-07-17  Tom Tromey  <tom@tromey.com>
5046
5047         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5048         Use string_printf.
5049
5050 2018-07-17  Jim Wilson  <jimw@sifive.com>
5051
5052         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5053         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5054         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5055         unecessary braces after EF_RISCV_RVC test.  Delete call to
5056         set_gdbarch_decr_pc_after_break.
5057
5058         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5059         RISCV_LAST_FP_REGNUM + 1.
5060         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5061
5062 2018-07-17  Tom Tromey  <tom@tromey.com>
5063
5064         * configure.ac: Remove --disable-gdbcli.
5065         * configure: Rebuild.
5066         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5067         (SUBDIR_CLI_CFLAGS): Remove.
5068         (SFILES): Use SUBDIR_CLI_SRCS.
5069         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5070
5071 2018-07-17  Tom Tromey  <tom@tromey.com>
5072
5073         PR gdb/18624:
5074         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5075
5076 2018-07-16  Jim Wilson  <jimw@sifive.com>
5077
5078         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5079
5080 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5081
5082         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5083         variable.
5084         (libunwind_frame_sniffer): Likewise.
5085         (libunwind_frame_prev_register): Likewise.
5086         (libunwind_sigtramp_frame_sniffer): Likewise.
5087         * ia64-tdep.c (ia64_access_reg): Likewise.
5088         (ia64_access_rse_reg): Likewise.
5089         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5090         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5091
5092 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5093
5094         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5095
5096 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5097
5098         * remote-sim.c (gdbsim_target::close,
5099         gdbsim_target::mourn_inferior): Remove unused variables.
5100
5101 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5102
5103         * ia64-tdep.c (ktab_buf): New global.
5104         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5105         (get_kernel_table): Adjust.
5106
5107 2018-07-16  Tom Tromey  <tom@tromey.com>
5108
5109         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5110         * dwarf2read.c (using_directives, new_symbol): Use
5111         outermost_context_p.
5112         * dbxread.c (process_one_symbol): Use outermost_context_p.
5113         * coffread.c (coff_symtab_read): Use outermost_context_p.
5114
5115 2018-07-16  Tom Tromey  <tom@tromey.com>
5116
5117         * dwarf2read.c (using_directives, read_func_scope)
5118         (read_lexical_block_scope): Update.
5119         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5120         * buildsym.h (local_using_directives, global_using_directives):
5121         Don't declare.
5122         (get_local_using_directives, set_local_using_directives)
5123         (get_global_using_directives): Declare.
5124         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5125         m_global_using_directives>: New members.
5126         (finish_block_internal, prepare_for_building)
5127         (reset_symtab_globals, end_symtab_get_static_block)
5128         (push_context): Update.
5129         (get_local_using_directives, set_local_using_directives)
5130         (get_global_using_directives): New functions.
5131         (buildsym_init): Update.
5132
5133 2018-07-16  Tom Tromey  <tom@tromey.com>
5134
5135         * xcoffread.c (xcoff_initial_scan): Don't call
5136         free_pending_blocks.
5137         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5138         * buildsym.h (class scoped_free_pendings): Add constructor.
5139         (free_pending_blocks): Don't declare.
5140         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5141         (free_pending_blocks): Now static.
5142
5143 2018-07-16  Tom Tromey  <tom@tromey.com>
5144
5145         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5146         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5147         member.
5148         (struct subfile_stack): Remove.
5149         (subfile_stack): Remove.
5150         (push_subfile, pop_subfile, buildsym_init): Update.
5151
5152 2018-07-16  Tom Tromey  <tom@tromey.com>
5153
5154         * buildsym.c (push_subfile): Use gdb_assert.
5155         (pop_subfile): Use gdb_assert.
5156
5157 2018-07-16  Tom Tromey  <tom@tromey.com>
5158
5159         * buildsym.h (merge_symbol_lists): Remove.
5160         * buildsym.c (merge_symbol_lists): Remove.
5161
5162 2018-07-16  Tom Tromey  <tom@tromey.com>
5163
5164         * stabsread.c (scan_file_globals): Update comment.
5165         * stabsread.h (scan_file_globals): Move from buildsym.h.
5166         * buildsym.h (scan_file_globals): Move to stabsread.h.
5167
5168 2018-07-16  Tom Tromey  <tom@tromey.com>
5169
5170         * xcoffread.c (xcoff_new_init): Update.
5171         * mipsread.c (mipscoff_new_init): Update.
5172         * mdebugread.c (mdebug_build_psymtabs): Update.
5173         * elfread.c (elf_new_init): Update.
5174         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5175         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5176         * buildsym.h (buildsym_new_init): Don't declare.
5177         * buildsym.c (buildsym_new_init): Remove.
5178
5179 2018-07-16  Tom Tromey  <tom@tromey.com>
5180
5181         * stabsread.h (within_function): Move from buildsym.h.
5182         * stabsread.c (start_stabs): Clear within_function.
5183         * coffread.c (coff_start_symtab): Clear within_function.
5184         * buildsym.h (within_function): Move to stabsread.h.
5185         * buildsym.c (prepare_for_building): Update.
5186
5187 2018-07-16  Tom Tromey  <tom@tromey.com>
5188
5189         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5190         * dwarf2read.c (dwarf2_start_symtab): Don't set
5191         processing_gcc_compilation.
5192         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5193
5194 2018-07-16  Tom Tromey  <tom@tromey.com>
5195
5196         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5197         (next_symbol_text_func): Move from buildsym.h.
5198         * stabsread.c (hashname): Move from buildsym.c.
5199         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5200         (next_symbol_text_func, hashname): Move to stabsread.h.
5201         * buildsym.c: Don't include bcache.h
5202         (hashname): Move to stasbread.c.
5203
5204 2018-07-16  Tom Tromey  <tom@tromey.com>
5205
5206         * buildsym.h (context_stack_size): Don't declare.
5207         * buildsym.c (context_stack_size): New global.
5208
5209 2018-07-16  Tom Tromey  <tom@tromey.com>
5210
5211         * dbxread.c (processing_acc_compilation): New global.
5212         * buildsym.h (processing_acc_compilation): Don't declare.
5213
5214 2018-07-16  Tom Tromey  <tom@tromey.com>
5215
5216         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5217         * dbxread.c (read_ofile_symtab): Update.
5218         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5219         * buildsym.h (last_source_start_addr): Remove.
5220         (set_last_source_start_addr, get_last_source_start_addr):
5221         Declare.
5222         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5223         parameter.
5224         (struct buildsym_compunit) <m_last_source_start_addr>: New
5225         member.
5226         (prepare_for_building): Remove start_addr parameter.
5227         (start_symtab, restart_symtab, end_symtab_get_static_block)
5228         (end_symtab_with_blockvector): Update.
5229         (set_last_source_start_addr, get_last_source_start_addr): New
5230         functions.
5231
5232 2018-07-16  Tom Tromey  <tom@tromey.com>
5233
5234         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5235         member.
5236         (have_line_numbers): Remove.
5237         (record_line, prepare_for_building, end_symtab_get_static_block)
5238         (augment_type_symtab): Update.
5239
5240 2018-07-16  Tom Tromey  <tom@tromey.com>
5241
5242         * buildsym.c (~buildsym_compunit): Free the macro table.
5243         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5244         methods.
5245         <m_pending_macros>: New member.
5246         (pending_macros): Remove.
5247         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5248         (reset_symtab_globals, end_symtab_get_static_block)
5249         (end_symtab_with_blockvector, augment_type_symtab)
5250         (buildsym_init): Update.
5251
5252 2018-07-16  Tom Tromey  <tom@tromey.com>
5253
5254         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5255         parameter.
5256         (buildsym_compunit::set_last_source_file): New method.
5257         <m_last_source_file>: New member.
5258         (prepare_for_building): Remove "name" parameter.
5259         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5260         (last_source_file): Remove.
5261         (set_last_source_file, get_last_source_file): Update.
5262
5263 2018-07-16  Tom Tromey  <tom@tromey.com>
5264
5265         * buildsym.c (prepare_for_building): Add assert.
5266
5267 2018-07-16  Tom Tromey  <tom@tromey.com>
5268
5269         * buildsym.c (~buildsym_compunit): Update.
5270         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5271         (start_subfile, patch_subfile_names)
5272         (end_symtab_with_blockvector): Update.
5273
5274 2018-07-16  Tom Tromey  <tom@tromey.com>
5275
5276         * buildsym.c (struct buildsym_compunit): Add constructor,
5277         destructor, initializers.
5278         (start_buildsym_compunit): Remove.
5279         (free_buildsym_compunit): Use "delete".
5280         (start_symtab, restart_symtab): Use "new".
5281
5282 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5283
5284         * symfile.c (set_objfile_default_section_offset): Remove struct
5285         keyword.
5286
5287 2018-07-14  Stafford Horne  <shorne@gmail.com>
5288
5289         * (Responsible Maintainers): Add myself as or1k maintainer.
5290
5291 2018-07-13  Tom Tromey  <tom@tromey.com>
5292
5293         * symfile.c (set_objfile_default_section_offset): Use extra braces
5294         around initializer.
5295
5296 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5297
5298         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5299         non-branching basr.
5300
5301 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5302
5303         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5304         unittests/cli-utils-selftests.c
5305         * unittests/cli-utils-selftests.c: New file.
5306
5307 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5308
5309         * NEWS: Mention new commands. Mention change to 'thread apply'.
5310
5311 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5312
5313         * thread.c (thr_try_catch_cmd): New function.
5314         (thread_apply_all_command): Handle qcs flags.
5315         (thread_apply_command): Handle qcs flags.
5316         (taas_command): New function.
5317         (tfaas_command): New function.
5318         (_initialize_thread): Update to setup the new commands 'taas
5319         and 'tfaas'. Change doc string for 'thread apply'.
5320
5321 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5322
5323         * stack.c: (trailing_outermost_frame): New function, mostly
5324         extracted from backtrace_command_1.
5325         (leading_innermost_frame): New function.
5326         (backtrace_command_1): Update to call trailing_outermost_frame.
5327         (frame_apply_command_count): New function.
5328         (frame_apply_level_command): New function.
5329         (frame_apply_all_command): New function.
5330         (frame_apply_command): New function.
5331         (faas_command): New function.
5332         (frame_cmd_list): New variable.
5333         (_initialize_stack): Update to setup the new commands 'frame apply'
5334         and 'faas'.
5335
5336 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5337
5338         * cli-utils.c (number_or_range_parser::get_number): Only handle
5339         numbers or convenience var as numbers.
5340         (parse_flags): New function.
5341         (parse_flags_qcs): New function.
5342         (number_or_range_parser::finished): Ensure parsing end is detected
5343         before end of string.
5344         * cli-utils.h (parse_flags): New function.
5345         (parse_flags_qcs): New function.
5346         (number_or_range_parser): Remove m_finished bool.
5347         (number_or_range_parser::skip_range): Set m_in_range to false.
5348
5349 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5350
5351         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5352         on Windows.
5353
5354 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5355             Jan Kratochvil  <jan.kratochvil@redhat.com>
5356             Paul Fertser  <fercerpav@gmail.com>
5357             Tsutomu Seki  <sekiriki@gmail.com>
5358             Pedro Alves  <palves@redhat.com>
5359
5360         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5361         'unittests/parse-connection-spec-selftests.c'.
5362         (COMMON_SFILES): Add 'common/netstuff.c'.
5363         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5364         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5365         * common/netstuff.c: New file.
5366         * common/netstuff.h: New file.
5367         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5368         (wait_for_connect): Update comment.  New parameter
5369         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5370         Use 'sock' directly instead of 'scb->fd'.
5371         (try_connect): New function, with code from 'net_open'.
5372         (net_open): Rewrite main loop to deal with multiple
5373         sockets/addresses.  Handle IPv6-style hostnames; implement
5374         support for IPv6 connections.
5375         * unittests/parse-connection-spec-selftests.c: New file.
5376
5377 2018-07-11  Pedro Alves  <palves@redhat.com>
5378
5379         PR gdb/23377
5380         * remote.c (remote_target::remote_detach_pid): Call
5381         set_current_process.
5382
5383 2018-07-11  Pedro Alves  <palves@redhat.com>
5384
5385         * h8300-tdep.c (h8300_gdbarch_init): Remove
5386         set_gdbarch_ecoff_reg_to_regnum calls.
5387
5388 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5389
5390         PR c++/23373
5391         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5392         offsets/sizes for static members of a class/struct.
5393
5394 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5395
5396         * target-descriptions.c (tdesc_register_bitsize): Rename.
5397         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5398         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5399         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5400
5401 2018-07-10  Tom Tromey  <tom@tromey.com>
5402
5403         * breakpoint.c (moribund_locations): Now static and a
5404         std::vector.
5405         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5406         (build_bpstat_chain, update_global_location_list)
5407         (breakpoint_retire_moribund): Update.
5408         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5409         VEC.
5410
5411 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5412
5413         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5414         (riscv_register_reggroup_p): Use new function, remove unneeded
5415         parenthesis.
5416         (riscv_push_dummy_call): Extend assert to compare against xlen or
5417         flen based on register type.
5418
5419 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5420
5421         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5422
5423 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5424
5425         * remote.c (show_hardware_watchpoint_limit): New function.
5426         (show_hardware_watchpoint_length_limit): New function.
5427         (show_hardware_breakpoint_limit): New function.
5428         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5429         where appropriate, update help text.
5430
5431 2018-07-09  Tom Tromey  <tom@tromey.com>
5432
5433         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5434         (CLIBS): Don't mention NAT_CLIBS.
5435
5436 2018-07-09  Tom Tromey  <tom@tromey.com>
5437
5438         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5439         (LIBGDB_OBS, clean mostlyclean): Update.
5440         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5441
5442 2018-07-09  Tom Tromey  <tom@tromey.com>
5443
5444         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5445         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5446         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5447
5448 2018-07-09  Tom Tromey  <tom@tromey.com>
5449
5450         * Makefile.in (ALLDEPFILES): Remove exec.c.
5451         (COMMON_OBS): Remove exec.o.
5452         (COMMON_SFILES): Add exec.c.
5453
5454 2018-07-09  Tom Tromey  <tom@tromey.com>
5455
5456         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5457
5458 2018-07-09  Tom Tromey  <tom@tromey.com>
5459
5460         * Makefile.in (clean mostlyclean): Remove stamp-version.
5461         (version.c): Depend on stamp-version.
5462         (stamp-version): New rule, from version.c rule.
5463
5464 2018-07-09  Tom Tromey  <tom@tromey.com>
5465
5466         * Makefile.in (init.c): Depend on stamp-init.
5467         (stamp-init): New rule, from init.c rule.
5468         (clean mostlyclean): Remove stamp-init.
5469
5470 2018-07-09  Tom Tromey  <tom@tromey.com>
5471
5472         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5473         SUBDIR_GCC_COMPILE_SRCS.
5474
5475 2018-07-09  Tom Tromey  <tom@tromey.com>
5476
5477         * Makefile.in (init.c): Remove some unused sed rules.
5478
5479 2018-07-09  Tom Tromey  <tom@tromey.com>
5480
5481         * Makefile.in (TSOBS): Remove.
5482         (INIT_FILES): Update.
5483         (LIBGDB_OBS): Update.
5484         (COMMON_SFILES): Add inflow.c.
5485         (SFILES): Remove inflow.c.
5486
5487 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5488
5489         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5490
5491 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5492
5493         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5494         get_saveloc_name, is_signal_frame_name, step_name,
5495         init_remote_name, create_addr_space_name,
5496         destroy_addr_space_name, search_unwind_table_name,
5497         find_dyn_list_name): Constify.
5498
5499 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5500
5501         * darwin-nat.c (darwin_pthread_kill): New function.
5502         (darwin_resume_thread): Use darwin_pthread_kill.
5503
5504 2018-07-05  Tom de Vries  <tdevries@suse.de>
5505
5506         * macroexp.c (macro_buffer) <operator=>: New member function.
5507
5508 2018-07-04  Tom Tromey  <tom@tromey.com>
5509
5510         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5511
5512 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5513
5514         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5515         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5516         * maint.c: Likewise.
5517         * top.c: Likewise.
5518
5519 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5520
5521         * NEWS: Create a new section for the next release branch.
5522         Rename the section of the current branch, now that it has
5523         been cut.
5524
5525 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5526
5527         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5528         * version.in: Bump version to 8.2.50.DATE-git.
5529
5530 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5531             Pedro Alves  <palves@redhat.com>
5532
5533         * linux-nat.c (linux_init_ptrace): Rename to ...
5534         (linux_init_ptrace_procfs): ... this.  Call
5535         linux_proc_init_warnings.
5536         (linux_nat_target::post_attach)
5537         (linux_nat_target::post_startup_inferior): Adjust.
5538         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5539         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5540
5541 2018-07-04  Tom de Vries  <tdevries@suse.de>
5542
5543         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5544         check ...
5545         (read_comp_unit_head): ... here.
5546
5547 2018-07-03  Tom Tromey  <tom@tromey.com>
5548
5549         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5550         (stop_tracing, tstatus_command)
5551         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5552         (print_one_static_tracepoint_marker): Update.
5553         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5554         std::vector.
5555         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5556         VEC.
5557         (all_tracepoints, static_tracepoints_here): Return std::vector.
5558
5559 2018-07-03  Tom Tromey  <tom@tromey.com>
5560
5561         * common/ptid.c (ptid_equal): Remove.
5562         * common/ptid.h (ptid_equal): Don't declare.
5563         * ada-tasks.c: Update.
5564         * breakpoint.c: Update.
5565         * common/agent.c: Update.
5566         * corelow.c: Update.
5567         * darwin-nat-info.c: Update.
5568         * darwin-nat.c: Update.
5569         * dcache.c: Update.
5570         * dtrace-probe.c: Update.
5571         * dummy-frame.c: Update.
5572         * fbsd-nat.c: Update.
5573         * frame.c: Update.
5574         * gdbthread.h: Update.
5575         * gnu-nat.c: Update.
5576         * go32-nat.c: Update.
5577         * inf-loop.c: Update.
5578         * inf-ptrace.c: Update.
5579         * infcall.c: Update.
5580         * infcmd.c: Update.
5581         * inflow.c: Update.
5582         * infrun.c: Update.
5583         * linux-fork.c: Update.
5584         * linux-nat.c: Update.
5585         * linux-thread-db.c: Update.
5586         * mi/mi-cmd-var.c: Update.
5587         * mi/mi-interp.c: Update.
5588         * mi/mi-main.c: Update.
5589         * nto-procfs.c: Update.
5590         * ppc-linux-tdep.c: Update.
5591         * procfs.c: Update.
5592         * python/py-inferior.c: Update.
5593         * python/py-record-btrace.c: Update.
5594         * python/py-record.c: Update.
5595         * ravenscar-thread.c: Update.
5596         * regcache.c: Update.
5597         * remote-sim.c: Update.
5598         * remote.c: Update.
5599         * sol-thread.c: Update.
5600         * solib.c: Update.
5601         * target.c: Update.
5602         * tui/tui-stack.c: Update.
5603         * varobj.c: Update.
5604         * windows-nat.c: Update.
5605         * windows-tdep.c: Update.
5606
5607 2018-07-03  Tom Tromey  <tom@tromey.com>
5608
5609         * common/ptid.c (ptid_match): Remove.
5610         * common/ptid.h (ptid_match): Don't declare.
5611         * fbsd-nat.c: Update.
5612         * infcmd.c: Update.
5613         * infrun.c: Update.
5614         * linux-nat.c: Update.
5615         * record-btrace.c: Update.
5616         * regcache.c: Update.
5617         * remote.c: Update.
5618
5619 2018-07-03  Tom Tromey  <tom@tromey.com>
5620
5621         * common/ptid.c (ptid_tid_p): Remove.
5622         * common/ptid.h (ptid_tid_p): Don't declare.
5623         * sol-thread.c: Update.
5624
5625 2018-07-03  Tom Tromey  <tom@tromey.com>
5626
5627         * common/ptid.c (ptid_lwp_p): Remove.
5628         * common/ptid.h (ptid_lwp_p): Don't declare.
5629         * fbsd-nat.c: Update.
5630         * linux-nat.c: Update.
5631         * nat/linux-procfs.c: Update.
5632         * nat/x86-linux-dregs.c: Update.
5633         * sol-thread.c: Update.
5634
5635 2018-07-03  Tom Tromey  <tom@tromey.com>
5636
5637         * common/ptid.c (ptid_is_pid): Remove.
5638         * common/ptid.h (ptid_is_pid): Don't declare.
5639         * infrun.c: Update.
5640         * linux-nat.c: Update.
5641         * mi/mi-interp.c: Update.
5642         * remote.c: Update.
5643         * thread.c: Update.
5644
5645 2018-07-03  Tom Tromey  <tom@tromey.com>
5646
5647         * common/ptid.c (ptid_get_tid): Remove.
5648         * common/ptid.h (ptid_get_tid): Don't declare.
5649         * ada-tasks.c: Update.
5650         * aix-thread.c: Update.
5651         * bsd-uthread.c: Update.
5652         * darwin-nat.c: Update.
5653         * fbsd-nat.c: Update.
5654         * i386-darwin-nat.c: Update.
5655         * infrun.c: Update.
5656         * linux-tdep.c: Update.
5657         * nto-procfs.c: Update.
5658         * ppc-ravenscar-thread.c: Update.
5659         * python/py-infthread.c: Update.
5660         * ravenscar-thread.c: Update.
5661         * sol-thread.c: Update.
5662         * sparc-ravenscar-thread.c: Update.
5663         * windows-nat.c: Update.
5664
5665 2018-07-03  Tom Tromey  <tom@tromey.com>
5666
5667         * common/ptid.c (ptid_get_lwp): Remove.
5668         * common/ptid.h (ptid_get_lwp): Don't declare.
5669         * aarch64-linux-nat.c: Update.
5670         * ada-tasks.c: Update.
5671         * aix-thread.c: Update.
5672         * amd64-linux-nat.c: Update.
5673         * arm-linux-nat.c: Update.
5674         * corelow.c: Update.
5675         * fbsd-nat.c: Update.
5676         * fbsd-tdep.c: Update.
5677         * gnu-nat.c: Update.
5678         * i386-cygwin-tdep.c: Update.
5679         * i386-gnu-nat.c: Update.
5680         * i386-linux-nat.c: Update.
5681         * ia64-linux-nat.c: Update.
5682         * inf-ptrace.c: Update.
5683         * infrun.c: Update.
5684         * linux-fork.c: Update.
5685         * linux-nat.c: Update.
5686         * linux-tdep.c: Update.
5687         * linux-thread-db.c: Update.
5688         * mips-linux-nat.c: Update.
5689         * nat/aarch64-linux-hw-point.c: Update.
5690         * nat/aarch64-linux.c: Update.
5691         * nat/linux-btrace.c: Update.
5692         * nat/linux-osdata.c: Update.
5693         * nat/linux-procfs.c: Update.
5694         * nat/x86-linux-dregs.c: Update.
5695         * obsd-nat.c: Update.
5696         * ppc-fbsd-nat.c: Update.
5697         * ppc-linux-nat.c: Update.
5698         * procfs.c: Update.
5699         * python/py-infthread.c: Update.
5700         * ravenscar-thread.c: Update.
5701         * remote.c: Update.
5702         * s390-linux-nat.c: Update.
5703         * sol-thread.c: Update.
5704         * sol2-tdep.c: Update.
5705         * spu-linux-nat.c: Update.
5706         * x86-linux-nat.c: Update.
5707         * xtensa-linux-nat.c: Update.
5708
5709 2018-07-03  Tom Tromey  <tom@tromey.com>
5710
5711         * common/ptid.c (ptid_get_pid): Remove.
5712         * common/ptid.h (ptid_get_pid): Don't declare.
5713         * aarch64-linux-nat.c: Update.
5714         * ada-lang.c: Update.
5715         * aix-thread.c: Update.
5716         * alpha-bsd-nat.c: Update.
5717         * amd64-fbsd-nat.c: Update.
5718         * amd64-linux-nat.c: Update.
5719         * arm-linux-nat.c: Update.
5720         * arm-nbsd-nat.c: Update.
5721         * auxv.c: Update.
5722         * break-catch-syscall.c: Update.
5723         * breakpoint.c: Update.
5724         * bsd-uthread.c: Update.
5725         * corelow.c: Update.
5726         * ctf.c: Update.
5727         * darwin-nat.c: Update.
5728         * fbsd-nat.c: Update.
5729         * fbsd-tdep.c: Update.
5730         * gcore.c: Update.
5731         * gnu-nat.c: Update.
5732         * hppa-nbsd-nat.c: Update.
5733         * hppa-obsd-nat.c: Update.
5734         * i386-fbsd-nat.c: Update.
5735         * ia64-linux-nat.c: Update.
5736         * inf-ptrace.c: Update.
5737         * infcmd.c: Update.
5738         * inferior.c: Update.
5739         * inferior.h: Update.
5740         * inflow.c: Update.
5741         * infrun.c: Update.
5742         * linux-fork.c: Update.
5743         * linux-nat.c: Update.
5744         * linux-tdep.c: Update.
5745         * linux-thread-db.c: Update.
5746         * m68k-bsd-nat.c: Update.
5747         * mi/mi-interp.c: Update.
5748         * mi/mi-main.c: Update.
5749         * mips-linux-nat.c: Update.
5750         * mips-nbsd-nat.c: Update.
5751         * mips64-obsd-nat.c: Update.
5752         * nat/aarch64-linux-hw-point.c: Update.
5753         * nat/aarch64-linux.c: Update.
5754         * nat/linux-btrace.c: Update.
5755         * nat/linux-osdata.c: Update.
5756         * nat/linux-procfs.c: Update.
5757         * nat/x86-linux-dregs.c: Update.
5758         * nto-procfs.c: Update.
5759         * obsd-nat.c: Update.
5760         * ppc-linux-nat.c: Update.
5761         * ppc-nbsd-nat.c: Update.
5762         * ppc-obsd-nat.c: Update.
5763         * proc-service.c: Update.
5764         * procfs.c: Update.
5765         * python/py-inferior.c: Update.
5766         * python/py-infthread.c: Update.
5767         * ravenscar-thread.c: Update.
5768         * record.c: Update.
5769         * remote-sim.c: Update.
5770         * remote.c: Update.
5771         * rs6000-nat.c: Update.
5772         * s390-linux-nat.c: Update.
5773         * sh-nbsd-nat.c: Update.
5774         * sol-thread.c: Update.
5775         * sparc-nat.c: Update.
5776         * sparc64-tdep.c: Update.
5777         * spu-linux-nat.c: Update.
5778         * spu-tdep.c: Update.
5779         * target-debug.h: Update.
5780         * target.c: Update.
5781         * thread.c: Update.
5782         * tid-parse.c: Update.
5783         * tracefile-tfile.c: Update.
5784         * vax-bsd-nat.c: Update.
5785         * windows-nat.c: Update.
5786         * x86-linux-nat.c: Update.
5787         * x86-nat.c: Update.
5788
5789 2018-07-03  Tom Tromey  <tom@tromey.com>
5790
5791         * common/ptid.c (pid_to_ptid): Remove.
5792         * common/ptid.h (pid_to_ptid): Don't declare.
5793         * aix-thread.c: Update.
5794         * arm-linux-nat.c: Update.
5795         * common/ptid.c: Update.
5796         * common/ptid.h: Update.
5797         * corelow.c: Update.
5798         * ctf.c: Update.
5799         * darwin-nat.c: Update.
5800         * fbsd-nat.c: Update.
5801         * fork-child.c: Update.
5802         * gnu-nat.c: Update.
5803         * go32-nat.c: Update.
5804         * inf-ptrace.c: Update.
5805         * infcmd.c: Update.
5806         * inferior.c: Update.
5807         * infrun.c: Update.
5808         * linux-fork.c: Update.
5809         * linux-nat.c: Update.
5810         * nat/aarch64-linux-hw-point.c: Update.
5811         * nat/fork-inferior.c: Update.
5812         * nat/x86-linux-dregs.c: Update.
5813         * nto-procfs.c: Update.
5814         * obsd-nat.c: Update.
5815         * procfs.c: Update.
5816         * progspace.c: Update.
5817         * remote.c: Update.
5818         * rs6000-nat.c: Update.
5819         * s390-linux-nat.c: Update.
5820         * sol-thread.c: Update.
5821         * spu-linux-nat.c: Update.
5822         * target.c: Update.
5823         * top.c: Update.
5824         * tracefile-tfile.c: Update.
5825         * windows-nat.c: Update.
5826
5827 2018-07-03  Tom Tromey  <tom@tromey.com>
5828
5829         * common/ptid.h (ptid_build): Don't declare.
5830         * common/ptid.c (ptid_build): Remove.
5831         * aix-thread.c: Update.
5832         * bsd-kvm.c: Update.
5833         * bsd-uthread.c: Update.
5834         * common/agent.c: Update.
5835         * common/ptid.c: Update.
5836         * common/ptid.h: Update.
5837         * corelow.c: Update.
5838         * darwin-nat.c: Update.
5839         * fbsd-nat.c: Update.
5840         * gnu-nat.c: Update.
5841         * linux-fork.c: Update.
5842         * linux-nat.c: Update.
5843         * linux-thread-db.c: Update.
5844         * nat/linux-osdata.c: Update.
5845         * nat/linux-procfs.c: Update.
5846         * nto-procfs.c: Update.
5847         * obsd-nat.c: Update.
5848         * proc-service.c: Update.
5849         * procfs.c: Update.
5850         * ravenscar-thread.c: Update.
5851         * remote-sim.c: Update.
5852         * remote.c: Update.
5853         * sol-thread.c: Update.
5854         * target.c: Update.
5855         * windows-nat.c: Update.
5856
5857 2018-07-03  Tom Tromey  <tom@tromey.com>
5858
5859         * infrun.c (follow_exec): Use exit_inferior_silent.
5860         * inferior.c (exit_inferior_num_silent): Remove.
5861         * inferior.h (exit_inferior_num_silent): Don't declare.
5862
5863 2018-07-03  Tom Tromey  <tom@tromey.com>
5864
5865         PR cli/23340:
5866         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5867         inferior_ptid on error.
5868
5869 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5870             Simon Marchi  <simon.marchi@polymtl.ca>
5871
5872         PR tdep/8282
5873         * disasm.h (gdb_disassembler): Add
5874         `m_disassembler_options_holder'. member
5875         * disasm.c (get_all_disassembler_options): New function.
5876         (gdb_disassembler::gdb_disassembler): Use it.
5877         (gdb_buffered_insn_length_init_dis): Likewise.
5878         (gdb_buffered_insn_length): Adjust accordingly.
5879         (set_disassembler_options): Handle options with arguments.
5880         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5881         line if showing options with descriptions.
5882         (disassembler_options_completer): Adapt to using the
5883         `disasm_options_and_args_t' structure.
5884         * mips-tdep.c (mips_disassembler_options): New variable.
5885         (mips_disassembler_options_o32): Likewise.
5886         (mips_disassembler_options_n32): Likewise.
5887         (mips_disassembler_options_n64): Likewise.
5888         (gdb_print_insn_mips): Don't set `disassembler_options'.
5889         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5890         functions.
5891         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5892         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5893         `gdbarch_disassembler_options_implicit' and
5894         `gdbarch_valid_disassembler_options'.
5895         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5896         `disasm_options_and_args_t' structure.
5897         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5898         method.
5899         (valid_disassembler_options): Switch from `disasm_options_t' to
5900         the `disasm_options_and_args_t' structure.
5901         * NEWS: Document `set disassembler-options' support for the MIPS
5902         target.
5903         * gdbarch.h: Regenerate.
5904         * gdbarch.c: Regenerate.
5905
5906 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5907
5908         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5909
5910 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5911
5912         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5913         parameter in call to amd64_target_description.
5914         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5915         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5916         (amd64fbsd_init_abi): Likewise.
5917         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5918         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5919         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5920         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5921
5922 2018-06-29  Pedro Alves  <palves@redhat.com>
5923
5924         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5925         "segments" parameter.
5926         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5927         (_initialize_amd64_tdep): Update call to
5928         amd64_create_target_description.
5929         (amd64_target_description): Add "segments" parameter.  Adjust
5930         the implementation to use it.
5931         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5932         call to amd64_create_target_description.
5933         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5934         * gdb/arch/amd64.h (amd64_create_target_description): Add
5935         "segments" register.
5936         * gdb/arch/amd64.c (amd64_create_target_description): Add
5937         "segments" parameter.  Call create_feature_i386_64bit_segments
5938         only if SEGMENTS is true.
5939         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5940         call to amd64_create_target_description.
5941
5942 2018-06-29  Pedro Alves  <palves@redhat.com>
5943
5944         * thread.c (thread_target_id_str): New, factored out from ...
5945         (print_thread_info_1): ... here.  Use it to compute the max
5946         "Target Id" column width.
5947
5948 2018-06-29  Pedro Alves  <palves@redhat.com>
5949
5950         * remote.c (remote_target::extra_thread_info): Delete
5951         'display_buf' and 'n' locals.  from the cache, regardless of
5952         packet mechanims is in use.  Use cache for qThreadExtra and qP
5953         methods too.
5954
5955 2018-06-29  Pedro Alves  <palves@redhat.com>
5956
5957         * blockframe.c (find_pc_sect_containing_function): New function.
5958         * breakpoint.c (print_breakpoint_location): Don't call
5959         find_pc_sect_function.
5960         * linespec.c (create_sals_line_offset): Record the location's
5961         symbol in the sal.
5962         * linespec.c (convert_address_location_to_sals): Fill in sal's
5963         symbol with find_pc_sect_containing_function.
5964         * symtab.c (find_function_start_sal): Rename to ...
5965         (find_function_start_sal_1): ... this.
5966         (find_function_start_sal): Reimplement as wrapper around
5967         find_function_start_sal_1, and use
5968         find_pc_sect_containing_function to fill in the sal's symbol.
5969         (find_function_start_sal(symbol*, bool)): Adjust.
5970         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5971         comments.
5972         (find_pc_sect_containing_function): Declare.
5973
5974 2018-06-29  Pedro Alves  <palves@redhat.com>
5975
5976         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5977         true if the the location has no symbol.
5978
5979 2018-06-28  Tom Tromey  <tom@tromey.com>
5980
5981         * NEWS: Mention --enable-codesign.
5982         * silent-rules.mk (ECHO_SIGN): New variable.
5983         * configure.ac: Add --enable-codesign.
5984         * configure: Rebuild.
5985         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5986         (gdb$(EXEEXT)): Optionally invoke codesign.
5987
5988 2018-06-28  Pedro Alves  <palves@redhat.com>
5989
5990         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5991         comments.
5992         (switch_to_thread_no_regs): Adjust comment.
5993         * infcmd.c (stop_pc): Delete.
5994         (post_create_inferior, info_program_command): Replace references
5995         to stop_pc with references to thread_info->suspend.stop_pc.
5996         * inferior.h (stop_pc): Delete declaration.
5997         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5998         (handle_inferior_event_1, handle_signal_stop)
5999         (process_event_stop_test, keep_going_stepped_thread)
6000         (handle_step_into_function, handle_step_into_function_backward)
6001         (print_stop_location): Replace references to stop_pc with
6002         references to thread_info->suspend.stop_pc.
6003         (struct infcall_suspend_state) <stop_pc>: Delete field.
6004         (save_infcall_suspend_state, restore_infcall_suspend_state):
6005         Remove references to inf_stat->stop_pc.
6006         * linux-fork.c (fork_load_infrun_state): Likewise.
6007         * record-btrace.c (record_btrace_set_replay): Likewise.
6008         * record-full.c (record_full_goto_entry): Likewise.
6009         * remote.c (print_one_stopped_thread): Likewise.
6010         * target.c (target_resume): Extend comment.
6011         * thread.c (set_executing_thread): New.
6012         (set_executing): Use it.
6013         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6014         Remove references to stop_pc.
6015
6016 2018-06-28  Pedro Alves  <palves@redhat.com>
6017
6018         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6019         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6020
6021 2018-06-28  Tom Tromey  <tom@tromey.com>
6022
6023         * coffread.c (coff_symfile_finish): Update.
6024         * xcoffread.c (xcoff_symfile_finish): Update.
6025         * elfread.c (elf_symfile_finish): Update.
6026         * symfile.h (dwarf2_free_objfile): Don't declare.
6027         * dwarf2read.c (_initialize_dwarf2_read): Use
6028         register_objfile_data_with_cleanup.
6029         (dwarf2_free_objfile): Now static.  Change signature.
6030
6031 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6032
6033         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6034         option "-o" to add-symbol-file-load to add an offset to each
6035         section's load address.
6036         * symfile.c (set_objfile_default_section_offset): New function.
6037
6038 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6039
6040         * symfile.c (add_symbol_file_command): Make sure that sections
6041         with the same name are sorted in the same order.
6042
6043 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6044
6045         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6046         require the second argument.  If omitted, load sections at the
6047         addresses specified in the file.
6048
6049 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6050
6051         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6052         (_initialize_symfile): Add option "-o" to symbol-file to add an
6053         offset to each section of the symbol file.
6054
6055 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6056
6057         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6058
6059 2018-06-27  Tom Tromey  <tom@tromey.com>
6060
6061         * stack.c (_initialize_stack): Update "func" help text.
6062
6063 2018-06-27  Tom Tromey  <tom@tromey.com>
6064
6065         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6066         std::vector.
6067         (unwind_infopy_str, pyuw_create_unwind_info)
6068         (unwind_infopy_add_saved_register, pyuw_sniffer)
6069         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6070         Update.
6071         (struct saved_reg): Add constructor.
6072         <value>: Now a gdbpy_ref<>.
6073
6074 2018-06-27  Tom Tromey  <tom@tromey.com>
6075
6076         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6077
6078 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6079
6080         * gdb-gdb.py.in: Format using autopep8.
6081
6082 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6083
6084         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6085         (type_lookup_function): Recognize CORE_ADDR values.
6086
6087 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6088
6089         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6090         print tag_name.
6091
6092 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6093
6094         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6095         <__lt__>: Add.
6096
6097 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6098
6099         * gdb-gdb.py: Move to...
6100         * gdb-gdb.py.in: ... here.
6101         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6102         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6103         dependencies.
6104         (distclean): Remove gdb-gdb.py when cleaning.
6105         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6106         * configure: Re-generate.
6107
6108 2018-06-27  Pedro Alves  <palves@redhat.com>
6109
6110         * proc-service.c (get_ps_regcache): New.
6111         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6112         (ps_lsetfpregs): Use it.
6113
6114 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6115
6116         PR gdb/21695
6117         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6118         (dwarf_decode_lines_1): Adjust.
6119
6120 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6121
6122         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6123         override.
6124         <info_proc>: Likewise.
6125
6126 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6127
6128         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6129         to windows_fetch_one_register, and only handle the case of
6130         fetching one register.  Move the code that reloads the context
6131         and iterates over all registers if R is negative to...
6132         (windows_nat_target::fetch_registers): ... here.
6133         (do_windows_store_inferior_registers): Rename to
6134         windows_store_one_register, and only handle the case of storing
6135         one register.  Move the code that handles the case where r is
6136         negative to...
6137         (windows_nat_target::store_registers) ... here.
6138
6139 2018-06-26  Tom Tromey  <tom@tromey.com>
6140
6141         PR rust/22574:
6142         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6143         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6144         Update.
6145         (rust_internal_print_type): Add podata parameter.
6146         (rust_print_type): Update.
6147
6148 2018-06-26  Tom Tromey  <tom@tromey.com>
6149
6150         * typeprint.h (struct print_offset_data) <update, finish,
6151         maybe_print_hole>: New methods.
6152         <indentation>: New constant.
6153         * typeprint.c (print_offset_data::indentation): Define.
6154         (print_offset_data::maybe_print_hole, print_offset_data::update)
6155         (print_offset_data::finish): Move from c-typeprint.c and rename.
6156         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6157         (print_spaces_filtered_with_print_options): Update.
6158         (c_print_type_union_field_offset, maybe_print_hole)
6159         (c_print_type_struct_field_offset): Move to typeprint.c and
6160         rename.
6161         (c_type_print_base_struct_union): Update.
6162
6163 2018-06-25  Pedro Alves  <palves@redhat.com>
6164
6165         * gdbthread.h (thread_info_ref, delete_thread)
6166         (delete_thread_silent, first_thread_of_inferior)
6167         (any_thread_of_inferior, switch_to_thread)
6168         (enable_thread_stack_temporaries)
6169         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6170         (get_last_thread_stack_temporary)
6171         (value_in_thread_stack_temporaries, can_access_registers_thread):
6172         Spell out "struct thread_info" instead of just "thread_info".
6173         * inferior.h (notice_new_inferior): Likewise.
6174
6175 2018-06-25  Pedro Alves  <palves@redhat.com>
6176
6177         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6178         pass thread_info pointer to delete_thread.
6179         (windows_nat_target::detach): Pass inferior pointer to
6180         detach_inferior.
6181         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6182         delete_thread.
6183         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6184         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6185         and pass a thread_info pointer to delete_thread.
6186         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6187         pass thread_info pointer to delete_thread.
6188         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6189         delete_thread_silent call.
6190         * procfs.c (procfs_target::detach): Pass inferior pointer to
6191         detach_inferior.
6192         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6193         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6194         delete_thread_silent call.
6195         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6196         pass thread_info pointer to delete_thread.
6197         (windows_nat_target::detach): Pass inferior pointer to
6198         delete_inferior.
6199
6200 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6201
6202         * regcache.c (readable_regcache::read_part): Fix asserts.
6203         (reg_buffer::raw_collect_part): New function.
6204         (regcache::write_part): Fix asserts.
6205         (reg_buffer::raw_supply_part): New function.
6206         (regcache::transfer_regset_register): New helper function.
6207         (regcache::transfer_regset): Call new functions.
6208         (regcache_supply_regset): Use gdb_byte*.
6209         (regcache::supply_regset): Likewise.
6210         (regcache_collect_regset): Likewise.
6211         (regcache::collect_regset): Likewise.
6212         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6213         (reg_buffer::raw_supply_part): Likewise.
6214         (regcache::transfer_regset_register): Likewise.
6215         (regcache::transfer_regset): Use gdb_byte*.
6216
6217 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6218
6219         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6220
6221 2018-06-21  Pedro Alves  <palves@redhat.com>
6222
6223         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6224         instead of a ptid_t.  All callers adjusted.
6225         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6226         adjusted.
6227         (print_ada_task_info, display_current_task_id, task_command_1):
6228         Adjust.
6229         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6230         inferior_thread.
6231         (breakpoint_kind): Adjust.
6232         (remove_breakpoints_pid): Rename to ...
6233         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6234         pointer.  All callers adjusted.
6235         (bpstat_clear_actions): Use inferior_thread.
6236         (get_bpstat_thread): New.
6237         (bpstat_do_actions): Use it.
6238         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6239         to take a thread_info pointer.  All callers adjusted.
6240         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6241         (breakpoint_re_set_thread): Use inferior_thread.
6242         * breakpoint.h (struct inferior): Forward declare.
6243         (bpstat_stop_status): Update.
6244         (remove_breakpoints_pid): Delete.
6245         (remove_breakpoints_inf): New.
6246         * bsd-uthread.c (bsd_uthread_target::wait)
6247         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6248         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6249         (maint_btrace_packet_history_cmd)
6250         (maint_btrace_clear_packet_history_cmd): Adjust.
6251         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6252         inferior_thread.
6253         * cli/cli-interp.c: Include "inferior.h".
6254         * common/refcounted-object.h (struct
6255         refcounted_object_ref_policy): New.
6256         * compile/compile-object-load.c: Include gdbthread.h.
6257         (store_regs): Use inferior_thread.
6258         * corelow.c (core_target::close): Use current_inferior.
6259         (core_target_open): Adjust to use first_thread_of_inferior and use
6260         the current inferior.
6261         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6262         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6263         <thread>: ... this new field.  All references adjusted.
6264         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6265         Take a thread_info pointer instead of a ptid_t.
6266         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6267         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6268         thread_info pointer instead of a ptid_t.
6269         * elfread.c: Include "inferior.h".
6270         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6271         Use inferior_thread.
6272         * eval.c (evaluate_subexp): Likewise.
6273         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6274         inferior_thread.
6275         * gdb_proc_service.h (struct thread_info): Forward declare.
6276         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6277         <thread>: ... this new field.  All references adjusted.
6278         * gdbarch.h, gdbarch.c: Regenerate.
6279         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6280         'thread' parameter.  All implementations and callers adjusted.
6281         * gdbthread.h (thread_info) <set_running>: New method.
6282         (delete_thread, delete_thread_silent): Take a thread_info pointer
6283         instead of a ptid.
6284         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6285         (first_thread_of_process): Delete, replaced by ...
6286         (first_thread_of_inferior): ... this new function.  All callers
6287         adjusted.
6288         (any_live_thread_of_process): Delete, replaced by ...
6289         (any_live_thread_of_inferior): ... this new function.  All callers
6290         adjusted.
6291         (switch_to_thread, switch_to_no_thread): Declare.
6292         (is_executing): Delete.
6293         (enable_thread_stack_temporaries): Update comment.
6294         <enable_thread_stack_temporaries>: Take a thread_info pointer
6295         instead of a ptid_t.  Incref the thread.
6296         <~enable_thread_stack_temporaries>: Decref the thread.
6297         <m_ptid>: Delete
6298         <m_thr>: New.
6299         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6300         (get_last_thread_stack_temporary)
6301         (value_in_thread_stack_temporaries, can_access_registers_thread):
6302         Take a thread_info pointer instead of a ptid_t.  All callers
6303         adjusted.
6304         * infcall.c (get_call_return_value): Use inferior_thread.
6305         (run_inferior_call): Work with thread pointers instead of ptid_t.
6306         (call_function_by_hand_dummy): Work with thread pointers instead
6307         of ptid_t.  Use thread_info_ref.
6308         * infcmd.c (proceed_thread_callback): Access thread's state
6309         directly.
6310         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6311         access thread's state directly.
6312         (continue_command): Use inferior_thread.
6313         (info_program_command): Use find_thread_ptid and access thread
6314         state directly.
6315         (proceed_after_attach_callback): Use thread state directly.
6316         (notice_new_inferior): Take a thread_info pointer instead of a
6317         ptid_t.  All callers adjusted.
6318         (exit_inferior): Take an inferior pointer instead of a pid.  All
6319         callers adjusted.
6320         (exit_inferior_silent): New.
6321         (detach_inferior): Delete.
6322         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6323         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6324         (detach_inferior_command, kill_inferior_command): Use
6325         find_inferior_id instead of valid_gdb_inferior_id and
6326         gdb_inferior_id_to_pid.
6327         (inferior_command): Use inferior and thread pointers.
6328         * inferior.h (struct thread_info): Forward declare.
6329         (notice_new_inferior): Take a thread_info pointer instead of a
6330         ptid_t.  All callers adjusted.
6331         (detach_inferior): Delete declaration.
6332         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6333         instead of a pid.  All callers adjusted.
6334         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6335         (valid_gdb_inferior_id): Delete.
6336         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6337         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6338         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6339         ...
6340         <inf>: ... this new field.
6341         <step_ptid>: Delete, replaced by ...
6342         <step_thread>: ... this new field.
6343         (get_displaced_stepping_state): Take an inferior pointer instead
6344         of a pid.  All callers adjusted.
6345         (displaced_step_in_progress_any_inferior): Adjust.
6346         (displaced_step_in_progress_thread): Take a thread pointer instead
6347         of a ptid_t.  All callers adjusted.
6348         (displaced_step_in_progress, add_displaced_stepping_state): Take
6349         an inferior pointer instead of a pid.  All callers adjusted.
6350         (get_displaced_step_closure_by_addr): Adjust.
6351         (remove_displaced_stepping_state): Take an inferior pointer
6352         instead of a pid.  All callers adjusted.
6353         (displaced_step_prepare_throw, displaced_step_prepare)
6354         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6355         All callers adjusted.
6356         (start_step_over): Adjust.
6357         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6358         displaced step queue.
6359         (do_target_resume): Adjust.
6360         (fetch_inferior_event): Use inferior_thread.
6361         (context_switch, get_inferior_stop_soon): Take an
6362         execution_control_state pointer instead of a ptid_t.  All callers
6363         adjusted.
6364         (switch_to_thread_cleanup): Delete.
6365         (stop_all_threads): Use scoped_restore_current_thread.
6366         * inline-frame.c: Include "gdbthread.h".
6367         (inline_state) <inline_state>: Take a thread pointer instead of a
6368         ptid_t.  All callers adjusted.
6369         <ptid>: Delete, replaced by ...
6370         <thread>: ... this new field.
6371         (find_inline_frame_state): Take a thread pointer instead of a
6372         ptid_t.  All callers adjusted.
6373         (skip_inline_frames, step_into_inline_frame)
6374         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6375         pointer instead of a ptid_t.  All callers adjusted.
6376         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6377         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6378         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6379         pointers directly.
6380         * linux-nat.c (get_detach_signal): Likewise.
6381         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6382         (thread_db_notice_clone): Adjust.
6383         (thread_db_find_new_threads_silently)
6384         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6385         a thread pointer instead of a ptid_t.  All callers adjusted.
6386         * mi/mi-cmd-var.c: Include "inferior.h".
6387         (mi_cmd_var_update_iter): Update to use thread pointers.
6388         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6389         inferior directly.
6390         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6391         out to ...
6392         (mi_output_running): ... this new function.
6393         (mi_on_resume_1): Adjust to use it.
6394         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6395         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6396         directly.
6397         (interrupt_thread_callback): : Adjust to use thread and inferior
6398         pointers.
6399         * proc-service.c: Include "gdbthread.h".
6400         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6401         * progspace-and-thread.c: Include "inferior.h".
6402         * progspace.c: Include "inferior.h".
6403         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6404         hold a reference to an inferior_object.
6405         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6406         inferior_thread.
6407         * python/py-inferior.c (struct inferior_object): Give the type a
6408         tag name instead of a typedef.
6409         (python_on_normal_stop): No need to check if the current thread is
6410         listed.
6411         (inferior_to_inferior_object): Change return type to
6412         inferior_object.  All callers adjusted.
6413         (find_thread_object): Delete, bits factored out to ...
6414         (thread_to_thread_object): ... this new function.
6415         * python/py-infthread.c (create_thread_object): Use
6416         inferior_to_inferior_object.
6417         (thpy_is_stopped): Use thread pointer directly.
6418         (gdbpy_selected_thread): Use inferior_thread.
6419         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6420         field, replaced with ...
6421         <thread>: ... this new field.  All users adjusted.
6422         (btpy_insn_or_gap_new): Drop const.
6423         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6424         callers adjusted.
6425         * python/py-record.c: Include "gdbthread.h".
6426         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6427         a ptid_t.  All callers adjusted.
6428         (gdbpy_current_recording): Use inferior_thread.
6429         * python/py-record.h (recpy_record_object) <ptid>: Delete
6430         field, replaced with ...
6431         <thread>: ... this new field.  All users adjusted.
6432         (recpy_element_object) <ptid>: Delete
6433         field, replaced with ...
6434         <thread>: ... this new field.  All users adjusted.
6435         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6436         a ptid_t.  All callers adjusted.
6437         * python/py-threadevent.c: Include "gdbthread.h".
6438         (get_event_thread): Use thread_to_thread_object.
6439         * python/python-internal.h (struct inferior_object): Forward
6440         declare.
6441         (find_thread_object, find_inferior_object): Delete declarations.
6442         (thread_to_thread_object, inferior_to_inferior_object): New
6443         declarations.
6444         * record-btrace.c: Include "inferior.h".
6445         (require_btrace_thread): Use inferior_thread.
6446         (record_btrace_frame_sniffer)
6447         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6448         (get_thread_current_frame): Use scoped_restore_current_thread and
6449         switch_to_thread.
6450         (get_thread_current_frame): Use thread pointer directly.
6451         (record_btrace_replay_at_breakpoint): Use thread's inferior
6452         pointer directly.
6453         * record-full.c: Include "inferior.h".
6454         * regcache.c: Include "gdbthread.h".
6455         (get_thread_arch_regcache): Use the inferior's address space
6456         directly.
6457         (get_thread_regcache, registers_changed_thread): New.
6458         * regcache.h (get_thread_regcache(thread_info *thread)): New
6459         overload.
6460         (registers_changed_thread): New.
6461         (remote_target) <remote_detach_1>: Swap order of parameters.
6462         (remote_add_thread): <remote_add_thread>: Return the new thread.
6463         (get_remote_thread_info(ptid_t)): New overload.
6464         (remote_target::remote_notice_new_inferior): Use thread pointers
6465         directly.
6466         (remote_target::process_initial_stop_replies): Use
6467         thread_info::set_running.
6468         (remote_target::remote_detach_1, remote_target::detach)
6469         (extended_remote_target::detach): Adjust.
6470         * stack.c (frame_show_address): Use inferior_thread.
6471         * target-debug.h (target_debug_print_thread_info_pp): New.
6472         * target-delegates.c: Regenerate.
6473         * target.c (default_thread_address_space): Delete.
6474         (memory_xfer_partial_1): Use current_inferior.
6475         (target_detach): Use current_inferior.
6476         (target_thread_address_space): Delete.
6477         (generic_mourn_inferior): Use current_inferior.
6478         * target.h (struct target_ops) <thread_address_space>: Delete.
6479         (target_thread_address_space): Delete.
6480         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6481         pointers directly.
6482         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6483         thread pointer instead of a ptid_t.  Adjust all callers.
6484         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6485         (first_thread_of_process): Delete, replaced by ...
6486         (first_thread_of_inferior): ... this new function.  All callers
6487         adjusted.
6488         (any_thread_of_process): Rename to ...
6489         (any_thread_of_inferior): ... this, and take an inferior pointer.
6490         (any_live_thread_of_process): Rename to ...
6491         (any_live_thread_of_inferior): ... this, and take an inferior
6492         pointer.
6493         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6494         (value_in_thread_stack_temporaries)
6495         (get_last_thread_stack_temporary): Take a thread pointer instead
6496         of a ptid_t.  Adjust all callers.
6497         (thread_info::set_running): New.
6498         (validate_registers_access): Use inferior_thread.
6499         (can_access_registers_ptid): Rename to ...
6500         (can_access_registers_thread): ... this, and take a thread
6501         pointer.
6502         (print_thread_info_1): Adjust to compare thread pointers instead
6503         of ptids.
6504         (switch_to_no_thread, switch_to_thread): Make extern.
6505         (scoped_restore_current_thread::~scoped_restore_current_thread):
6506         Use m_thread pointer directly.
6507         (scoped_restore_current_thread::scoped_restore_current_thread):
6508         Use inferior_thread.
6509         (thread_command): Use thread pointer directly.
6510         (thread_num_make_value_helper): Use inferior_thread.
6511         * top.c (execute_command): Use inferior_thread.
6512         * tui/tui-interp.c: Include "inferior.h".
6513         * varobj.c (varobj_create): Use inferior_thread.
6514         (value_of_root_1): Use find_thread_global_id instead of
6515         global_thread_id_to_ptid.
6516
6517 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6518
6519         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6520         possible.
6521         (regcache::write_part): Likewise.
6522         (readable_regcache::cooked_read_part): Update comment.
6523         (readable_regcache::cooked_write_part): Likewise.
6524         * regcache.h: (readable_regcache::read_part): Likewise.
6525         (regcache::write_part): Likewise.
6526
6527 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6528             Dirk Schubert  <dirk.schubert@arm.com>
6529
6530         * aarch64-linux-nat.c (post_attach): New.
6531         (aarch64_linux_nat_target::post_attach): Override post_attach to
6532         record the number of hardware debug registers.
6533
6534 2018-06-20  Tom Tromey  <tom@tromey.com>
6535
6536         * python/py-param.c (add_setshow_generic): Make parameters const.
6537         (parmpy_init): Update.
6538
6539 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6540
6541         * regcache.h (regcache_cooked_read_ftype): Rename to...
6542         (register_read_ftype): ...this, change type to function_view.
6543         (class reg_buffer) <save>: Remove src parameter.
6544         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6545         parameter non-const in first overload.  Remove src parameter in
6546         second overload.
6547         * regcache.c (do_cooked_read): Remove.
6548         (readonly_detached_regcache::readonly_detached_regcache): Make
6549         parameter non-const, adjust call to other constructor.
6550         (reg_buffer::save): Remove src parameter.
6551         * frame.c (do_frame_register_read): Remove.
6552         (frame_save_as_regcache): Use lambda function.
6553         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6554         parameter to ppu2spu_data *.
6555         (ppu2spu_sniffer): Use lambda function.
6556
6557 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6558
6559         * record-full.c (record_full_target::insert_breakpoint): Remove
6560         "struct" keyword, add const.
6561
6562 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6563
6564         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6565         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6566         * configure.ac: Remove AC_PREREQ, add missing quoting.
6567         * gnulib/configure.ac: Modernize usage of
6568         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6569         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6570         (AUTOMAKE_VERSION): Bump to 1.15.1.
6571         * configure: Re-generate.
6572         * config.in: Re-generate.
6573         * aclocal.m4: Re-generate.
6574         * gnulib/aclocal.m4: Re-generate.
6575         * gnulib/config.in: Re-generate.
6576         * gnulib/configure: Re-generate.
6577         * gnulib/import/Makefile.in: Re-generate.
6578
6579 2018-06-19  Pedro Alves  <palves@redhat.com>
6580
6581         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6582         (lookup_minimal_symbol_by_pc_section): ... here with
6583         gdb_assert_not_reached added.
6584
6585 2018-06-19  Pedro Alves  <palves@redhat.com>
6586
6587         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6588         parameter with a block parameter.  Compare location's block symbol
6589         with the frame's block instead of addresses.
6590         (skip_inline_frames): Pass the current block instead of the
6591         frame's address.  Break out as soon as we determine the frame
6592         should not be skipped.
6593
6594 2018-06-18  Tom Tromey  <tom@tromey.com>
6595
6596         * solib-aix.c (solib_aix_get_section_offsets): Return
6597         unique_xmalloc_ptr.
6598         (solib_aix_solib_create_inferior_hook): Update.
6599
6600 2018-06-18  Tom Tromey  <tom@tromey.com>
6601
6602         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6603
6604 2018-06-18  Tom Tromey  <tom@tromey.com>
6605
6606         * solib-frv.c (frv_relocate_main_executable): Use
6607         unique_xmalloc_ptr.
6608         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6609         unique_xmalloc_ptr.
6610
6611 2018-06-18  Tom Tromey  <tom@tromey.com>
6612
6613         * objfiles.h (inhibit_section_map_updates): Update.
6614         (resume_section_map_updates, resume_section_map_updates_cleanup):
6615         Remove.
6616         * solib-svr4.c (svr4_handle_solib_event): Update.
6617         * objfiles.c (inhibit_section_map_updates): Return
6618         scoped_restore_tmpl<int>.
6619         (resume_section_map_updates, resume_section_map_updates_cleanup):
6620         Remove.
6621
6622 2018-06-18  Tom Tromey  <tom@tromey.com>
6623
6624         * valprint.h (read_string): Update.
6625         * valprint.c (read_string): Change type of "buffer".
6626         (val_print_string): Update.
6627         * python/py-value.c (valpy_string): Update.
6628         * language.h (struct language_defn) <la_get_string>: Change
6629         type of "buffer".
6630         (default_get_string, c_get_string): Update.
6631         * language.c (default_get_string): Change type of "buffer".
6632         * guile/scm-value.c (gdbscm_value_to_string): Update.
6633         * c-lang.c (c_get_string): Change type of "buffer".
6634
6635 2018-06-18  Tom Tromey  <tom@tromey.com>
6636
6637         * ser-mingw.c (struct pipe_state_destroyer): New.
6638         (pipe_state_up): New typedef.
6639         (cleanup_pipe_state): Remove.
6640         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6641
6642 2018-06-18  Tom Tromey  <tom@tromey.com>
6643
6644         * rust-lang.h (rust_yyerror): Don't declare.
6645         * rust-lang.c (rust_language_defn): Update.
6646         * rust-exp.y (yyerror): Now static.
6647         * parse.c (parse_exp_in_context_1): Update.
6648         * p-lang.h (p_yyerror): Don't declare.
6649         * p-lang.c (p_language_defn): Update.
6650         * p-exp.y (yyerror): Now static.
6651         * opencl-lang.c (opencl_language_defn): Update.
6652         * objc-lang.c (objc_language_defn): Update.
6653         * m2-lang.h (m2_yyerror): Don't declare.
6654         * m2-lang.c (m2_language_defn): Update.
6655         * m2-exp.y (yyerror): Now static.
6656         * language.h (struct language_defn) <la_error>: Remove.
6657         * language.c (unk_lang_error): Remove.
6658         (unknown_language_defn, auto_language_defn): Remove.
6659         * go-lang.h (go_yyerror): Don't declare.
6660         * go-lang.c (go_language_defn): Update.
6661         * go-exp.y (yyerror): Now static.
6662         * f-lang.h (f_yyerror): Don't declare.
6663         * f-lang.c (f_language_defn): Update.
6664         * f-exp.y (yyerror): Now static.
6665         * d-lang.h (d_yyerror): Don't declare.
6666         * d-lang.c (d_language_defn): Update.
6667         * d-exp.y (yyerror): Now static.
6668         * c-lang.h (c_yyerror): Don't declare.
6669         * c-lang.c (c_language_defn, cplus_language_defn)
6670         (asm_language_defn, minimal_language_defn): Update.
6671         * c-exp.y (yyerror): Now static.
6672         * ada-lang.h (ada_yyerror): Don't declare.
6673         * ada-lang.c (ada_language_defn): Update.
6674         * ada-exp.y (yyerror): Now static.
6675
6676 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6677
6678         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6679         (store_sveregs_to_thread): Likewise.
6680         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6681         (aarch64_linux_store_inferior_registers): Likewise.
6682         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6683         function.
6684         (aarch64_sve_regs_copy_to_regcache): Likewise.
6685         (aarch64_sve_regs_copy_from_regcache): Likewise.
6686         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6687         declaration.
6688         (aarch64_sve_regs_copy_to_regcache): Likewise.
6689         (aarch64_sve_regs_copy_from_regcache): Likewise.
6690         (sve_context): Structure from Linux headers.
6691         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6692         (SVE_SIG_ZREG_SIZE): Likewise.
6693         (SVE_SIG_PREG_SIZE): Likewise.
6694         (SVE_SIG_FFR_SIZE): Likewise.
6695         (SVE_SIG_REGS_OFFSET): Likewise.
6696         (SVE_SIG_ZREGS_OFFSET): Likewise.
6697         (SVE_SIG_ZREG_OFFSET): Likewise.
6698         (SVE_SIG_ZREGS_SIZE): Likewise.
6699         (SVE_SIG_PREGS_OFFSET): Likewise.
6700         (SVE_SIG_PREG_OFFSET): Likewise.
6701         (SVE_SIG_PREGS_SIZE): Likewise.
6702         (SVE_SIG_FFR_OFFSET): Likewise.
6703         (SVE_SIG_REGS_SIZE): Likewise.
6704         (SVE_SIG_CONTEXT_SIZE): Likewise.
6705         (SVE_PT_REGS_MASK): Likewise.
6706         (SVE_PT_REGS_FPSIMD): Likewise.
6707         (SVE_PT_REGS_SVE): Likewise.
6708         (SVE_PT_VL_INHERIT): Likewise.
6709         (SVE_PT_VL_ONEXEC): Likewise.
6710         (SVE_PT_REGS_OFFSET): Likewise.
6711         (SVE_PT_FPSIMD_OFFSET): Likewise.
6712         (SVE_PT_FPSIMD_SIZE): Likewise.
6713         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6714         (SVE_PT_SVE_PREG_SIZE): Likewise.
6715         (SVE_PT_SVE_FFR_SIZE): Likewise.
6716         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6717         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6718         (__SVE_SIG_TO_PT): Likewise.
6719         (SVE_PT_SVE_OFFSET): Likewise.
6720         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6721         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6722         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6723         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6724         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6725         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6726         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6727         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6728         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6729         (SVE_PT_SVE_SIZE): Likewise.
6730         (SVE_PT_SIZE): Likewise.
6731         (HAS_SVE_STATE): New define.
6732
6733 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6734
6735         * nat/aarch64-sve-linux-sigcontext.h: New file.
6736         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6737         new files.
6738         (SVE_VQ_MIN): Likewise.
6739         (SVE_VQ_MAX): Likewise.
6740         (SVE_VL_MIN): Likewise.
6741         (SVE_VL_MAX): Likewise.
6742         (SVE_NUM_ZREGS): Likewise.
6743         (SVE_NUM_PREGS): Likewise.
6744         (sve_vl_valid): Likewise.
6745         (struct user_sve_header): Likewise.
6746
6747 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6748             Richard Bunt <Richard.Bunt@arm.com>
6749
6750         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6751         was requested by GDB.
6752
6753 2018-06-15  Tom de Vries  <tdevries@suse.de>
6754
6755         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6756
6757 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6758
6759         * gnulib/update-gnulib.sh: Print expected versions of
6760         autoconf/aclocal.
6761
6762 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6763
6764         * arch-utils.c (default_type_align): Use type_length_units.
6765         * gdbtypes.c (type_align): Use type_length_units.
6766
6767 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6768
6769         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6770         of 'define' command.
6771
6772 2018-06-14  Tom de Vries  <tdevries@suse.de>
6773
6774         PR cli/22573
6775         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6776         get_no_prettyformat_print_options.
6777
6778 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6779
6780         * sparc-nat.h: Include target.h.
6781         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6782         <fetch_registers>: Remove this argument in function call.
6783         <store_registers>: Remove this argument in function call, remove
6784         extra semicolon.
6785         <low_forget_process>: Call sparc64_forget_process instead of
6786         sparc_forget_process.
6787
6788 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6789
6790         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6791         (procfs_target::make_corefile_notes): Adjust to new
6792         target_read_alloc return type.
6793
6794 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6795             Stephen Roberts  <stephen.roberts@arm.com>
6796
6797         PR gdb/22882
6798         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6799         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6800         Move should_notify_stop local into more inner scope.
6801
6802 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6803             Stephen Roberts  <stephen.roberts@arm.com>
6804
6805         PR gdb/22882
6806         * infrun.c (resume_1): Add call to mark_async_event_handler.
6807
6808 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6809
6810         * infrun.c (do_target_wait): Change old version of $pc printed.
6811
6812 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6813
6814         * dwarf2read.c (read_index_from_section): Rename to...
6815         (read_gdb_index_from_section): ... this, update all callers.
6816         (dwarf2_read_index): Rename to...
6817         (dwarf2_read_gdb_index): ... this, update all callers.
6818
6819 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6820
6821         * gdb/hppa-linux-nat.c
6822         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6823         hppa_linux_nat_target::fetch_registers.
6824
6825 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6826
6827         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6828         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6829         (AARCH64_DWARF_SVE_FFR): Likewise.
6830         (AARCH64_DWARF_SVE_P0): Likewise.
6831         (AARCH64_DWARF_SVE_Z0): Likewise.
6832
6833 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6834
6835         * common/common-regcache.h (raw_compare): New function.
6836         * regcache.c (regcache::raw_compare): Likewise.
6837         * regcache.h (regcache::raw_compare): New declaration.
6838
6839 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6840
6841         * common/common-regcache.h (reg_buffer_common): New structure.
6842         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6843         (reg_buffer::raw_supply): Likewise.
6844         (reg_buffer::raw_supply_integer): Likewise.
6845         (reg_buffer::raw_supply_zeroed): Likewise.
6846         (reg_buffer::raw_collect): Likewise.
6847         (reg_buffer::raw_collect_integer): Likewise.
6848         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6849         (reg_buffer::raw_supply): Likewise.
6850         (reg_buffer::raw_supply_integer): Likewise.
6851         (reg_buffer::raw_supply_zeroed): Likewise.
6852         (reg_buffer::raw_collect): Likewise.
6853         (reg_buffer::raw_collect_integer): Likewise.
6854
6855 2018-06-10  Tom Tromey  <tom@tromey.com>
6856
6857         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6858         (class remote_state) <stop_reply_queue>: Now std::vector.
6859         (remote_state::~remote_state)
6860         (remote_target::stop_reply_queue_length): Update.
6861         (struct queue_iter_param, remove_child_of_pending_fork)
6862         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6863         (check_pending_event_prevents_wildcard_vcont_callback)
6864         (remove_stop_reply_for_inferior)
6865         (remove_stop_reply_of_remote_state)
6866         (remote_notif_remove_once_on_match)
6867         (stop_reply_match_ptid_and_ws)
6868         (remote_kill_child_of_pending_fork): Remove.
6869         (remote_target::remove_new_fork_children)
6870         (remote_target::check_pending_events_prevent_wildcard_vcont)
6871         (remote_target::discard_pending_stop_replies)
6872         (remote_target::discard_pending_stop_replies_in_queue)
6873         (remote_target::remote_notif_remove_queued_reply)
6874         (remote_target::queued_stop_reply)
6875         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6876         (remote_target::wait, remote_target::kill_new_fork_children)
6877         (remote_target::async): Update.
6878
6879 2018-06-10  Tom Tromey  <tom@tromey.com>
6880
6881         * record-full.c (record_full_arch_list_cleanups): Remove.
6882         (record_full_message): Use try/catch.
6883         (record_full_wait_cleanups): Remove.
6884         (record_full_wait_1): Use try/catch.
6885         (record_full_restore): Likewise.
6886
6887 2018-06-10  Tom Tromey  <tom@tromey.com>
6888
6889         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6890         declare VEC.  Add constructor.
6891         <in_target_beneath>: Now bool.
6892         (record_full_breakpoints): Now a std::vector, static.
6893         (record_full_sync_record_breakpoints)
6894         (record_full_init_record_breakpoints)
6895         (record_full_target::insert_breakpoint)
6896         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6897
6898 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6899
6900         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6901         * serial.c (serial_interface_lookup): Remove struct keyword.
6902
6903 2018-06-10  Tom Tromey  <tom@tromey.com>
6904
6905         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6906         method.
6907         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6908         a method.
6909         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6910         method.
6911         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6912         "beneath" as a method.
6913         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6914         Use "beneath" as a method.
6915
6916 2018-06-10  Tom Tromey  <tom@tromey.com>
6917
6918         * tracefile.c (struct trace_file_writer_deleter): New.
6919         <operator()>: Rename from trace_file_writer_xfree.
6920         (trace_file_writer_up): New typedef.
6921         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6922
6923 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6924
6925         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6926         <m_registers, m_register_status>: Change type to
6927         std::unique_ptr.
6928         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6929         XCNEWVEC.
6930
6931 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6932
6933         * common/common-regcache.h (enum register_status): Add
6934         underlying type "signed char".
6935         * regcache.h (reg_buffer) <m_register_status>: Change type to
6936         register_status *.
6937         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6938         register_status instead of signed char.
6939         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6940         (reg_buffer::get_register_status): Remove cast.
6941         (readable_regcache::raw_read): Remove cast.
6942         (readable_regcache::cooked_read): Remove cast.
6943
6944 2018-06-09  Tom Tromey  <tom@tromey.com>
6945
6946         * source.c (reverse_search_command, forward_search_command): Use
6947         scoped_fd.
6948
6949 2018-06-09  Tom Tromey  <tom@tromey.com>
6950
6951         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6952         (serial_ops_list): Now static, std::vector.
6953         (serial_interface_lookup, serial_add_interface): Update.
6954
6955 2018-06-09  Tom Tromey  <tom@tromey.com>
6956
6957         * dwarf2read.c (process_cu_includes): Update.
6958         (process_full_comp_unit): Update.
6959         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6960         std::vector.
6961
6962 2018-06-08  Paul Koning  <paul_koning@dell.com>
6963
6964         PR gdb/23252
6965
6966         * python/python.c (do_start_initialization):
6967         Avoid call to internal Python API.
6968         (init__gdb_module): New function.
6969
6970 2018-06-08  Gary Benson <gbenson@redhat.com>
6971
6972         * linux-thread-db.c (valprint.h): New include.
6973         (struct check_thread_db_info): New structure.
6974         (check_thread_db_on_load, tdb_testinfo): New static globals.
6975         (check_thread_db, check_thread_db_callback): New functions.
6976         (try_thread_db_load_1): Run integrity checks if requested.
6977         (maintenance_check_libthread_db): New function.
6978         (_initialize_thread_db): Register "maint check libthread-db"
6979         and "maint set/show check-libthread-db".
6980         * NEWS: Mention the above new commands.
6981
6982 2018-06-08  Tom Tromey  <tom@tromey.com>
6983
6984         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6985         now a method.
6986
6987 2018-06-08  Tom Tromey  <tom@tromey.com>
6988
6989         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6990
6991 2018-06-08  Tom Tromey  <tom@tromey.com>
6992
6993         * common/btrace-common.h (struct btrace_data): Add constructor,
6994         destructor, move assignment operator.
6995         <empty, clear, fini>: New methods.
6996         <format>: Initialize.
6997         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6998         (btrace_data_empty): Don't declare.
6999         * common/btrace-common.c (btrace_data_init): Remove.
7000         (btrace_data::fini): Rename from btrace_data_fini.
7001         (btrace_data::empty): Rename from btrace_data_empty.
7002         (btrace_data::clear): Rename from btrace_data_clear.  Return
7003         bool.
7004         * btrace.h (make_cleanup_btrace_data): Don't declare.
7005         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7006         (parse_xml_btrace): Update.
7007         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7008         (maint_btrace_clear_packet_history_cmd): Update.
7009
7010 2018-06-07  Pedro Alves  <palves@redhat.com>
7011
7012         * target.h (target_ops) <beneath>: Now a method.  All references
7013         updated.
7014         (class target_stack): New.
7015         * target.c (g_target_stack): New.
7016         (g_current_top_target): Delete.
7017         (current_top_target): Get the top target out of g_target_stack.
7018         (target_stack::push, target_stack::unpush): New.
7019         (push_target, unpush_target): Reimplement.
7020         (target_is_pushed): Reimplement in terms of g_target_stack.
7021         (target_ops::beneath, target_stack::find_beneath): New.
7022
7023 2018-06-07  Pedro Alves  <palves@redhat.com>
7024
7025         * target.h (find_target_beneath): Delete declaration.
7026         * target.c (find_target_beneath): Delete definition.
7027         * aix-thread.c: All callers of find_target_beneath adjusted to
7028         call target_ops::beneath instead.
7029         * bsd-uthread.c: Likewise.
7030         * linux-thread-db.c: Likewise.
7031         * ravenscar-thread.c: Likewise.
7032         * sol-thread.c: Likewise.
7033         * spu-multiarch.c: Likewise.
7034
7035 2018-06-07  Pedro Alves  <palves@redhat.com>
7036
7037         * target.h (target_ops) <beneath>: Now a method.  All references
7038         updated.
7039         (target_ops) <m_beneath>: New.
7040         * target.c (target_ops::beneath): New.
7041         * corelow.c: Adjust all references to target_ops::beneath.
7042         * linux-thread-db.c: Likewise.
7043         * make-target-delegates: Likewise.
7044         * record-btrace.c: Likewise.
7045         * record-full.c: Likewise.
7046         * remote.c: Likewise.
7047         * target.c: Likewise.
7048         * target-delegates.c: Regenerate.
7049
7050 2018-06-07  Pedro Alves  <palves@redhat.com>
7051
7052         * target.h (target_stack): Delete.
7053         (current_top_target): Declare function.
7054         * target.c (target_stack): Delete.
7055         (g_current_top_target): New.
7056         (current_top_target): New function.
7057         * auxv.c: Use current_top_target instead of target_stack
7058         throughout.
7059         * avr-tdep.c: Likewise.
7060         * breakpoint.c: Likewise.
7061         * corefile.c: Likewise.
7062         * elfread.c: Likewise.
7063         * eval.c: Likewise.
7064         * exceptions.c: Likewise.
7065         * frame.c: Likewise.
7066         * gdbarch-selftests.c: Likewise.
7067         * gnu-v3-abi.c: Likewise.
7068         * ia64-tdep.c: Likewise.
7069         * ia64-vms-tdep.c: Likewise.
7070         * infcall.c: Likewise.
7071         * infcmd.c: Likewise.
7072         * infrun.c: Likewise.
7073         * linespec.c: Likewise.
7074         * linux-tdep.c: Likewise.
7075         * minsyms.c: Likewise.
7076         * ppc-linux-nat.c: Likewise.
7077         * ppc-linux-tdep.c: Likewise.
7078         * procfs.c: Likewise.
7079         * regcache.c: Likewise.
7080         * remote.c: Likewise.
7081         * rs6000-tdep.c: Likewise.
7082         * s390-linux-nat.c: Likewise.
7083         * s390-tdep.c: Likewise.
7084         * solib-aix.c: Likewise.
7085         * solib-darwin.c: Likewise.
7086         * solib-dsbt.c: Likewise.
7087         * solib-spu.c: Likewise.
7088         * solib-svr4.c: Likewise.
7089         * solib-target.c: Likewise.
7090         * sparc-tdep.c: Likewise.
7091         * sparc64-tdep.c: Likewise.
7092         * spu-tdep.c: Likewise.
7093         * symfile.c: Likewise.
7094         * symtab.c: Likewise.
7095         * target-descriptions.c: Likewise.
7096         * target-memory.c: Likewise.
7097         * target.c: Likewise.
7098         * target.h: Likewise.
7099         * tracefile-tfile.c: Likewise.
7100         * tracepoint.c: Likewise.
7101         * valops.c: Likewise.
7102         * valprint.c: Likewise.
7103         * value.c: Likewise.
7104         * windows-tdep.c: Likewise.
7105         * mi/mi-main.c: Likewise.
7106
7107 2018-06-07  Tom Tromey  <tom@tromey.com>
7108
7109         * valprint.h (build_address_symbolic): Declare.
7110         * printcmd.c (print_address_symbolic): Update.
7111         (build_address_symbolic): Change "name" and "filename" to
7112         std::string.
7113         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7114         Update.
7115         * defs.h (build_address_symbolic): Remove declaration.
7116
7117 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7118
7119         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7120         (aarch64_vnv_type): Add function.
7121         (aarch64_pseudo_register_name): Add V regs for SVE.
7122         (aarch64_pseudo_register_type): Likewise.
7123         (aarch64_pseudo_register_reggroup_p): Likewise.
7124         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7125         (aarch64_pseudo_read_value): Add V regs for SVE.
7126         (aarch64_pseudo_write_2): Use V0 offset for SVE
7127         (aarch64_pseudo_write): Add V regs for SVE.
7128         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7129
7130 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7131
7132         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7133         (sve_vl_from_vq): Likewise.
7134
7135 2018-06-05  Tom Tromey  <tom@tromey.com>
7136
7137         * cli/cli-cmds.c (show_version): Update.
7138         * top.c (print_gdb_version): Add "interactive" parameter.
7139         Update.
7140         * main.c (captured_main_1): Update.
7141         * top.h (print_gdb_version): Add "interactive" parameter and a
7142         comment.
7143
7144 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7145
7146         * common/enum-flags.h: Add trailing semicolon to example in
7147         comment.
7148
7149 2018-06-05  Tom Tromey  <tom@tromey.com>
7150
7151         PR cli/12326:
7152         * NEWS: Add entry about pager.
7153         * utils.c (pagination_disabled_for_command): New global.
7154         (prompt_for_continue): Allow "c" response to prompt.
7155         (reinitialize_more_filter): Clear
7156         pagination_disabled_for_command.
7157         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7158
7159 2018-06-04  Tom Tromey  <tom@tromey.com>
7160
7161         * ada-lang.h (ada_lookup_symbol_list): Update.
7162         * ada-lang.c (resolve_subexp): Update.
7163         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7164         parameter.
7165         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7166         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7167         results parameter to std::vector.
7168         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7169         Update.
7170         * ada-exp.y (block_lookup): Update.
7171         (select_possible_type_sym): Change type of syms.  Remove nsyms
7172         parameter.
7173         (write_var_or_type, write_name_assoc): Update.
7174
7175 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7176
7177         * windows-nat.c (windows_nat_target::xfer_partial): Return
7178         TARGET_XFER_E_IO if we need to delegate to the target beneath
7179         but BENEATH is NULL.
7180
7181 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7182
7183         * Makefile.in (config.status): Add configure.nat as a
7184         dependency.
7185
7186 2018-06-04  Tom Tromey  <tom@tromey.com>
7187
7188         * cp-name-parser.y (cpname_state): Add method declarations.
7189         (HANDLE_QUAL): Update.
7190         (cpname_state::d_grab, cpname_state::fill_comp)
7191         (cpname_state::make_operator, cpname_state::make_dtor)
7192         (cpname_state::make_builtin_type, cpname_state::make_name)
7193         (cpname_state::d_qualify, cpname_state::d_int_type)
7194         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7195         (%union): Move earlier.
7196
7197 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7198
7199         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7200
7201 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7202
7203         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7204         (aarch64_pseudo_write_1): Likewise.
7205         (aarch64_pseudo_read_value): Use helper.
7206         (aarch64_pseudo_write): Likewise.
7207
7208 2018-06-04  Pedro Alves  <palves@redhat.com>
7209
7210         * darwin-nat.c (darwin_ops): Delete.
7211         (darwin_attach_pid): Use get_native_target.
7212
7213 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7214
7215         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7216         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7217
7218 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7219
7220         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7221         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7222         (aarch64_gdbarch_init): Check for SVE.
7223         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7224
7225 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7226
7227         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7228         * aarch64-tdep.h (aarch64_read_description): Likewise.
7229         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7230         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7231         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7232         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7233         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7234
7235 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7236
7237         * value.c (value_fetch_lazy_bitfield): New.
7238         (value_fetch_lazy_memory): New.
7239         (value_fetch_lazy_register): New.
7240         (value_fetch_lazy): Factor out to smaller functions.
7241
7242 2018-06-01  Tom Tromey  <tom@tromey.com>
7243
7244         * cp-name-parser.y (backslashable, represented): Now const.
7245
7246 2018-06-01  Tom Tromey  <tom@tromey.com>
7247
7248         * cp-name-parser.y: Include parser-defs.h.
7249         (parser_fprintf): Remove declaration.
7250
7251 2018-06-01  Tom Tromey  <tom@tromey.com>
7252
7253         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7254         %parse-param.
7255         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7256         (global_result): Remove globals.
7257         (struct cpname_state): New.
7258         (yyparse): Don't declare.
7259         (yylex, yyerror): Move declarations after %union.
7260         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7261         (make_name): Add state parameter.
7262         Update all callers.
7263         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7264         parameter.
7265         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7266         Update.
7267         (yylex): Add lvalp, state parameters.
7268         (yyerror): Add state parameter.
7269         (cp_demangled_name_to_comp): Update.
7270
7271 2018-06-01  Tom Tromey  <tom@tromey.com>
7272
7273         * cp-name-parser.y (parser_fprintf): Declare.
7274         (GDB_YY_REMAP_PREFIX): Define.
7275         Include yy-remap.h.  Don't redefine yy* identifiers.
7276
7277 2018-06-01  Tom Tromey  <tom@tromey.com>
7278
7279         * python/py-type.c (typy_legacy_template_argument): Update.
7280         * cp-support.h (cp_demangled_name_to_comp): Update.
7281         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7282         parameter to be a "std::string *".
7283         (main): Update.
7284
7285 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7286
7287         * ada-lex.l: Include "diagnostics.h" instead of
7288         "common/diagnostics.h".
7289         * unittests/environ-selftests.c: Likewise.
7290         * common/diagnostics.h: Moved to ../include.
7291
7292 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7293
7294         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7295         to language_mode_manual while calling breakpoint_re_set_one.
7296
7297 2018-06-01  Tom Tromey  <tom@tromey.com>
7298
7299         * valops.c (value_cast_structs, destructor_name_p): Update.
7300         * symtab.c (gdb_mangle_name): Update.
7301         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7302         Update.
7303         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7304         (pascal_object_print_value_fields, pascal_object_print_value):
7305         Update.
7306         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7307         * linespec.c (find_methods): Update.
7308         * gdbtypes.h (type_name_no_tag): Remove.
7309         (type_name_or_error): Rename from type_name_no_tag_or_error.
7310         * gdbtypes.c (type_name_no_tag): Remove.
7311         (type_name_or_error): Rename from type_name_no_tag_or_error.
7312         (lookup_struct_elt_type, check_typedef): Update.
7313         * expprint.c (print_subexp_standard): Update.
7314         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7315         * d-namespace.c (d_lookup_nested_symbol): Update.
7316         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7317         (cp_print_class_member): Update.
7318         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7319         * completer.c (add_struct_fields): Update.
7320         * c-typeprint.c (cp_type_print_derivation_info)
7321         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7322         Update.
7323         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7324         (ada_prefer_type, ada_is_exception_sym): Update.
7325
7326 2018-06-01  Tom Tromey  <tom@tromey.com>
7327
7328         * valops.c (enum_constant_from_type, value_namespace_elt)
7329         (value_maybe_namespace_elt): Update.
7330         * valarith.c (find_size_for_pointer_math): Update.
7331         * target-descriptions.c (make_gdb_type): Update.
7332         * symmisc.c (print_symbol): Update.
7333         * stabsread.c (define_symbol, read_type)
7334         (complain_about_struct_wipeout, add_undefined_type)
7335         (cleanup_undefined_types_1): Update.
7336         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7337         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7338         (rust_internal_print_type, rust_composite_type)
7339         (rust_evaluate_funcall, rust_evaluate_subexp)
7340         (rust_inclusive_range_type_p): Update.
7341         * python/py-type.c (typy_get_tag): Update.
7342         * p-typeprint.c (pascal_type_print_base): Update.
7343         * mdebugread.c (parse_symbol, parse_type): Update.
7344         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7345         Update.
7346         * guile/scm-type.c (gdbscm_type_tag): Update.
7347         * go-lang.c (sixg_string_p): Update.
7348         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7349         Update.
7350         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7351         (TYPE_TAG_NAME): Remove.
7352         * gdbtypes.c (type_name_no_tag): Simplify.
7353         (check_typedef, check_types_equal, recursive_dump_type)
7354         (copy_type_recursive, arch_composite_type): Update.
7355         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7356         in summary mode when needed.
7357         * eval.c (evaluate_funcall): Update.
7358         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7359         (process_structure_scope, read_enumeration_type)
7360         (read_namespace_type, read_module_type, determine_prefix): Update.
7361         * cp-support.c (inspect_type): Update.
7362         * coffread.c (process_coff_symbol, decode_base_type): Update.
7363         * c-varobj.c (c_is_path_expr_parent): Update.
7364         * c-typeprint.c (c_type_print_base_struct_union): Update.
7365         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7366         summary when using C language.
7367         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7368         (gen_maybe_namespace_elt): Update.
7369         * ada-lang.c (ada_type_name): Simplify.
7370         (empty_record, ada_template_to_fixed_record_type_1)
7371         (template_to_static_fixed_type)
7372         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7373
7374 2018-06-01  Tom Tromey  <tom@tromey.com>
7375
7376         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7377         c_print_type.
7378         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7379         (c_print_type): Update.
7380         (c_print_type): New overload.
7381         (c_type_print_varspec_prefix, c_type_print_args)
7382         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7383         (c_type_print_base_struct_union, c_type_print_base_1)
7384         (cp_type_print_method_args): Add "language" parameter.
7385         (c_type_print_base): Update.
7386         * c-lang.h (c_print_type): Add new overload.
7387
7388 2018-06-01  Tom Tromey  <tom@tromey.com>
7389
7390         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7391         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7392
7393 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7394
7395         * aarch64-tdep.c (aarch64_sve_register_names): New const
7396         var.
7397         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7398         (AARCH64_SVE_Z_REGS_NUM): New define.
7399         (AARCH64_SVE_P_REGS_NUM): Likewise.
7400         (AARCH64_SVE_NUM_REGS): Likewise.
7401
7402 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7403
7404         * nat/linux-ptrace.h [__alpha__]
7405         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7406         definitions.
7407
7408 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7409
7410         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7411         the endianness selected.
7412         * NEWS: Document `set endian auto' mode operation update.
7413
7414 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7415
7416         * Makefile.in: Add new header.
7417         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7418         (sve_vl_from_vg): Likewise.
7419         (sve_vq_from_vl): Likewise.
7420         (sve_vl_from_vq): Likewise.
7421         (sve_vq_from_vg): Likewise.
7422         (sve_vg_from_vq): Likewise.
7423         * configure.nat: Add new c file.
7424         * nat/aarch64-sve-linux-ptrace.c: New file.
7425         * nat/aarch64-sve-linux-ptrace.h: New file.
7426
7427 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7428
7429         * aarch64-linux-nat.c (aarch64_linux_read_description):
7430         Add parmeter zero.
7431         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7432         Likewise.
7433         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7434         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7435         (aarch64_gdbarch_init): Add parmeter zero.
7436         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7437         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7438         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7439         parmeter.
7440         * doc/gdb.texinfo: Describe SVE feature
7441         * features/aarch64-sve.c: New file.
7442
7443 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7444
7445         PR gdb/23210
7446         * gdbarch.sh (significant_addr_bit): Default to zero when
7447         not set by target architecture.
7448         * gdbarch.c: Re-generated.
7449         * utils.c (address_significant): Update.
7450
7451 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7452
7453         * stack.c (func_command): Remove trailing newline in call to error.
7454
7455 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7456
7457         * regcache.h (regcache_raw_collect): Remove, update callers to
7458         use regcache::raw_collect.
7459         * regcache.c (regcache_raw_collect): Remove.
7460
7461 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7462
7463         * regcache.h (regcache_raw_supply): Remove, update callers to
7464         use detached_regcache::raw_supply.
7465         * regcache.c (regcache_raw_supply): Remove.
7466
7467 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7468
7469         * regcache.h (regcache_cooked_write_part): Remove, update
7470         callers to use regcache::cooked_write_part.
7471         * regcache.c (regcache_cooked_write_part): Remove.
7472
7473 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7474
7475         * regcache.h (regcache_cooked_read_part): Remove, update callers
7476         to use readable_regcache::cooked_read_part.
7477         * regcache.c (regcache_cooked_read_part): Remove.
7478
7479 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7480
7481         * regcache.h (regcache_cooked_read_value): Remove, update
7482         callers to use readable_regcache::cooked_read_value.
7483         * regcache.c (regcache_cooked_read_value): Remove.
7484
7485 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7486
7487         * regcache.h (regcache_cooked_write): Remove, update callers to
7488         use regcache::cooked_write.
7489         * regcache.c (regcache_cooked_write): Remove.
7490
7491 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7492
7493         * regcache.h (regcache_invalidate): Remove, update callers to
7494         use detached_regcache::invalidate instead.
7495         * regcache.c (regcache_invalidate): Remove.
7496
7497 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7498
7499         * regcache.h (regcache_raw_write_part): Remove, update callers
7500         to use regcache::raw_write_part instead.
7501         * regcache.c (regcache_raw_write_part): Remove.
7502
7503 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7504
7505         * regcache.h (regcache_raw_read_part): Remove, update callers to
7506         use readable_regcache::raw_read_part instead.
7507         * regcache.c (regcache_raw_read_part): Remove.
7508
7509 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7510
7511         * regcache.h (regcache_cooked_read): Remove, update callers to
7512         use readable_regcache::cooked_read instead.
7513         * regcache.c (regcache_cooked_read): Remove.
7514
7515 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7516
7517         * regcache.h (regcache_raw_write): Remove, update callers to use
7518         regcache::raw_write instead.
7519         * regcache.c (regcache_raw_write): Remove.
7520
7521 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7522
7523         * regcache.h (regcache_raw_read): Remove, update callers to use
7524         readable_regcache::raw_read instead.
7525         * regcache.c (regcache_raw_read): Remove.
7526
7527 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7528
7529         * regcache.h (regcache_raw_update): Remove, update callers to
7530         use readable_regcache::raw_update instead.
7531         * regcache.c (regcache_raw_update): Remove.
7532
7533 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7534
7535         * regcache.h (regcache_register_status): Remove, update callers
7536         to use reg_buffer::get_register_status directly instead.
7537         * regcache.c (regcache_register_status): Remove.
7538
7539 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7540
7541         * regcache.h (regcache_get_ptid): Remove, update all callers to
7542         call regcache::ptid instead.
7543         * regcache.c (regcache_get_ptid): Remove.
7544
7545 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7546
7547         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7548
7549 2018-05-30  Pedro Alves  <palves@redhat.com>
7550
7551         * common/common-exceptions.h (exception_rethrow): Use
7552         ATTRIBUTE_NORETURN.
7553
7554 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7555
7556         * breakpoint.c (print_solib_event, check_status_catch_solib):
7557         Remove struct keyword in range-based for loops.
7558         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7559         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7560         Likewise.
7561         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7562         Likewise.
7563         * symfile.c (addr_info_make_relative): Likewise.
7564         * thread.c (value_in_thread_stack_temporaries): Likewise.
7565
7566 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7567
7568         PR gdb/16841
7569         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7570         aggregate type to get its real type before accessing it.
7571
7572 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7573
7574         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7575         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7576         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7577         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7578         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7579         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7580         * printcmd.c (info_address_command): Likewise.
7581
7582 2018-05-29  Tom Tromey  <tom@tromey.com>
7583
7584         * windows-nat.c (handle_exception): Update fall-through comment.
7585
7586 2018-05-29  Tom Tromey  <tom@tromey.com>
7587
7588         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7589         (struct program_space) <added_solibs>: Now a std::vector.
7590         * breakpoint.c (print_solib_event): Update.
7591         (check_status_catch_solib): Update.
7592         * progspace.c (clear_program_space_solib_cache): Update.
7593         * solib.c (update_solib_list): Update.
7594
7595 2018-05-29  Tom Tromey  <tom@tromey.com>
7596
7597         * python/py-type.c (typy_richcompare): Update.
7598         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7599         * gdbtypes.h (types_deeply_equal): Return bool.
7600         (types_equal): Likewise.
7601         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7602         declare VEC.
7603         (check_types_equal): Change worklist to std::vector.  Return
7604         bool.
7605         (struct type_equality_entry): Add constructor.
7606         (compare_maybe_null_strings): Return bool.
7607         (check_types_worklist): Return bool.  Change worklist to
7608         std::vector.
7609         (types_deeply_equal): Use std::vector.
7610         (types_equal): Return bool.
7611         (compare_maybe_null_strings): Simplify.
7612
7613 2018-05-29  Tom Tromey  <tom@tromey.com>
7614
7615         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7616
7617 2018-05-29  Tom Tromey  <tom@tromey.com>
7618
7619         * objc-lang.h: Don't include cp-support.h.
7620         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7621         declare VEC.
7622
7623 2018-05-27  Tom Tromey  <tom@tromey.com>
7624
7625         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7626
7627 2018-05-25  Tom Tromey  <tom@tromey.com>
7628
7629         * value.c (value::location): Initialize.
7630
7631 2018-05-25  Tom Tromey  <tom@tromey.com>
7632
7633         * dbxread.c (init_bincl_list): Remove.
7634         (bincl_list): Now a std::vector.
7635         (bincls_allocated, next_bincl): Remove.
7636         (free_bincl_list, do_free_bincl_list_cleanup)
7637         (make_cleanup_free_bincl_list): Remove.
7638         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7639         unique_xmalloc_ptr.
7640         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7641         (struct header_file_location): Add constructor.
7642         (add_bincl_to_list): Remove.
7643
7644 2018-05-25  Tom Tromey  <tom@tromey.com>
7645
7646         * tui/tui.c (tui_enable): Update.
7647         * mi/mi-interp.c (mi_interp::init): Update.
7648         * interps.h (class interp) <name>: New method.
7649         <m_name>: Rename from name.
7650         (~scoped_restore_interp): Update.
7651         * interps.c (interp::interp): Update.
7652         (interp_add, interp_set, interp_lookup_existing)
7653         (current_interp_named_p): Update.
7654
7655 2018-05-25  Tom Tromey  <tom@tromey.com>
7656
7657         * interps.c (interp_name): Remove.
7658         * mi/mi-interp.c (mi_interp::init): Update.
7659         * interps.h (interp_name): Remove.
7660         (~scoped_restore_interp): Update.
7661         * tui/tui.c (tui_enable): Update.
7662
7663 2018-05-25  Tom Tromey  <tom@tromey.com>
7664
7665         * utils.c (fputs_maybe_filtered): Update.
7666         * linespec.c (decode_line_full): Update.
7667         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7668         (mi_print_breakpoint_for_event, mi_solib_loaded)
7669         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7670         (mi_user_selected_context_changed): Update.
7671         * mi/mi-main.c (mi_execute_command): Update.
7672         * cli/cli-script.c (execute_control_command): Update.
7673         * python/python.c (execute_gdb_command): Update.
7674         * solib.c (info_sharedlibrary_command): Update.
7675         * interps.c (interp_ui_out): Remove.
7676         * interps.h (interp_ui_out): Remove.
7677
7678 2018-05-25  Tom Tromey  <tom@tromey.com>
7679
7680         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7681         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7682         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7683
7684 2018-05-25  Tom Tromey  <tom@tromey.com>
7685
7686         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7687         * interps.c (interp_exec): Use scoped_restore.
7688
7689 2018-05-25  Tom Tromey  <tom@tromey.com>
7690
7691         * remote.c (remote_target::remote_file_get): Use
7692         gdb::byte_vector.
7693         (remote_target::remote_file_put): Likewise.
7694
7695 2018-05-25  Tom Tromey  <tom@tromey.com>
7696
7697         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7698         a std::string.
7699         (get_pe_section_index, add_pe_exported_sym): Update.
7700         (read_pe_exported_syms): Use gdb::def_vector.
7701
7702 2018-05-25  Tom Tromey  <tom@tromey.com>
7703
7704         * frame.c (remove_prev_frame): Remove.
7705         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7706
7707 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7708
7709         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7710         Remove prototypes.
7711         * mips-linux-nat.c (supply_fpregset): Always call
7712         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7713         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7714         `mips_fill_fpregset'.
7715         * mips-linux-tdep.c (mips_supply_fpregset)
7716         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7717         (mips_fill_fpregset_wrapper): Remove functions.
7718         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7719         (mips_linux_fpregset): Remove variable.
7720         (mips_linux_iterate_over_regset_sections): Use
7721         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7722         (mips_linux_o32_sigframe_init): Remove comment.
7723
7724 2018-05-25  Pedro Alves  <palves@redhat.com>
7725
7726         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7727         (struct readahead_cache, struct packet_reg, struct
7728         remote_arch_state, class remote_state): Move higher up in the
7729         file.
7730         (remote_target::m_remote_state): Now an object instead of a pointer.
7731         (remote_target::get_remote_state): Adjust.
7732
7733 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7734
7735         * stack.c (select_and_print_frame): Delete.
7736         (struct function_bounds): Move struct within function.
7737         (func_command): Most content moved into new function
7738         find_frame_for_function, use new function, print result, add
7739         function comment.
7740         (find_frame_for_function): New function, now returns a result.
7741
7742 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7743
7744         * stack.c (iterate_over_block_arg_vars): Fix comment.
7745         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7746
7747 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7748
7749         PR gdb/23203
7750         * frame.c
7751         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7752         Define.
7753         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7754         Define.
7755         * frame.h (class scoped_restore_selected_frame): New class.
7756         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7757         of any exception, use scoped_restore_selected_frame to restore the
7758         frame instead.
7759
7760 2018-05-24  Pedro Alves  <palves@redhat.com>
7761
7762         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7763         override.
7764
7765 2018-05-23  Tom Tromey  <tom@tromey.com>
7766
7767         * complaints.c (struct complaints): Remove.
7768         (symfile_complaint_book): Remove.
7769         (series): New global.
7770         (complaint_internal): Update.
7771         (clear_complaints): Update.
7772
7773 2018-05-23  Tom Tromey  <tom@tromey.com>
7774
7775         * complaints.c (counters): New global.
7776         (struct complain): Remove.
7777         (struct complaints) <root>: Remove.
7778         (complaint_sentinel): Remove.
7779         (symfile_complaint_book): Update.
7780         (find_complaint) Remove.
7781         (complaint_internal, clear_complaints): Update.
7782
7783 2018-05-23  Tom Tromey  <tom@tromey.com>
7784
7785         * complaints.c (struct complain) <file, line>: Remove.
7786         (find_complaint): Remove file, line parameters.
7787         (complaint_internal): Update.
7788
7789 2018-05-23  Tom Tromey  <tom@tromey.com>
7790
7791         * complaints.c (vcomplaint): Remove.
7792         (complaint_internal) Merge in contents of vcomplaint.
7793
7794 2018-05-23  Tom Tromey  <tom@tromey.com>
7795
7796         * complaints.c (struct complaints) <explanation>: Remove.
7797         (symfile_explanations): Remove.
7798         (symfile_complaint_book): Update.
7799         (vcomplaint): Update.
7800         (struct explanation): Remove.
7801
7802 2018-05-23  Tom Tromey  <tom@tromey.com>
7803
7804         * complaints.c (symfile_complaints): Remove.
7805         (complaint_internal): Remove "complaints" parameter.
7806         (clear_complaints, vcomplaint): Remove "c" parameter.
7807         (get_complaints): Remove.
7808         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7809         (dwarf2_debug_line_missing_file_complaint)
7810         (dwarf2_debug_line_missing_end_sequence_complaint)
7811         (dwarf2_complex_location_expr_complaint)
7812         (dwarf2_const_value_length_mismatch_complaint)
7813         (dwarf2_section_buffer_overflow_complaint)
7814         (dwarf2_macro_malformed_definition_complaint)
7815         (dwarf2_invalid_attrib_class_complaint)
7816         (create_addrmap_from_index, dw2_symtab_iter_next)
7817         (dw2_expand_marked_cus)
7818         (dw2_debug_names_iterator::find_vec_in_debug_names)
7819         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7820         (create_debug_type_hash_table, init_cutu_and_read_dies)
7821         (partial_die_parent_scope, add_partial_enumeration)
7822         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7823         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7824         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7825         (create_cus_hash_table, create_dwp_hash_table)
7826         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7827         (dwarf2_rnglists_process, dwarf2_ranges_process)
7828         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7829         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7830         (handle_struct_member_die, process_structure_scope)
7831         (read_array_type, read_common_block, read_module_type)
7832         (read_tag_pointer_type, read_typedef, read_base_type)
7833         (read_subrange_type, load_partial_dies, partial_die_info::read)
7834         (partial_die_info::read, partial_die_info::read)
7835         (partial_die_info::read, read_checked_initial_length_and_offset)
7836         (dwarf2_string_attr, read_formatted_entries)
7837         (dwarf_decode_line_header)
7838         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7839         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7840         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7841         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7842         (get_signatured_type, get_DW_AT_signature_type)
7843         (decode_locdesc, file_file_name, consume_improper_spaces)
7844         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7845         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7846         (dwarf2_symbol_mark_computed, set_die_type)
7847         (read_attribute_value): Update.
7848         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7849         Update.
7850         * dbxread.c (unknown_symtype_complaint)
7851         (lbrac_mismatch_complaint, repeated_header_complaint)
7852         (set_namestring, function_outside_compilation_unit_complaint)
7853         (read_dbx_symtab, process_one_symbol): Update.
7854         * gdbtypes.c (stub_noname_complaint): Update.
7855         * windows-nat.c (handle_unload_dll): Update.
7856         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7857         (decode_base_type): Update.
7858         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7859         (eb_complaint, record_include_begin, record_include_end)
7860         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7861         (process_xcoff_symbol, read_symbol)
7862         (function_outside_compilation_unit_complaint)
7863         (scan_xcoff_symtab): Update.
7864         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7865         * buildsym.c (finish_block_internal, make_blockvector)
7866         (end_symtab_get_static_block, augment_type_symtab): Update.
7867         * dtrace-probe.c (dtrace_process_dof)
7868         (dtrace_static_probe_ops::get_probes): Update.
7869         * complaints.h (struct complaint): Don't declare.
7870         (symfile_complaints): Remove.
7871         (complaint_internal): Remove "complaints" parameter.
7872         (complaint): Likewise.
7873         (clear_complaints): Likewise.
7874         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7875         (reread_symbols): Update.
7876         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7877         (dwarf2_frame_cache, decode_frame_entry): Update.
7878         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7879         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7880         (info_selectors_command): Update.
7881         * macrotab.c (macro_include, check_for_redefinition)
7882         (macro_undef): Update.
7883         * objfiles.c (filter_overlapping_sections): Update.
7884         * stabsread.c (invalid_cpp_abbrev_complaint)
7885         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7886         (define_symbol, error_type, read_type, rs6000_builtin_type)
7887         (stabs_method_name_from_physname, read_member_functions)
7888         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7889         (attach_fields_to_type, complain_about_struct_wipeout)
7890         (read_range_type, read_args, common_block_start)
7891         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7892         Update.
7893         * mdebugread.c (index_complaint, unknown_ext_complaint)
7894         (basic_type_complaint, bad_tag_guess_complaint)
7895         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7896         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7897         (parse_procedure, parse_lines)
7898         (function_outside_compilation_unit_complaint)
7899         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7900         (bad_tag_guess_complaint, reg_value_complaint): Update.
7901         * cp-support.c (demangled_name_complaint): Update.
7902         * macroscope.c (sal_macro_scope): Update.
7903         * dwarf-index-write.c (class debug_names): Update.
7904
7905 2018-05-23  Tom Tromey  <tom@tromey.com>
7906
7907         * complaints.c (clear_complaints): Remove "noisy" parameter.
7908         * complaints.h (clear_complaints): Update.
7909         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7910         (reread_symbols): Update.
7911
7912 2018-05-23  Tom Tromey  <tom@tromey.com>
7913
7914         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7915         SUBSEQUENT_MESSAGE.
7916         (vcomplaint, clear_complaints): Update.
7917         (symfile_explanations): Remove some messages.
7918
7919 2018-05-23  Tom Tromey  <tom@tromey.com>
7920
7921         * complaints.c (internal_complaint): Remove.
7922         * complaints.h (internal_complaint): Remove.
7923
7924 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7925
7926         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7927
7928 2018-05-22  Pedro Alves  <palves@redhat.com>
7929
7930         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7931         (remote_fileio_badfd, remote_fileio_return_errno)
7932         (remote_fileio_return_success, remote_fileio_func_open)
7933         (remote_fileio_func_open, remote_fileio_func_close)
7934         (remote_fileio_func_read, remote_fileio_func_write)
7935         (remote_fileio_func_lseek, remote_fileio_func_rename)
7936         (remote_fileio_func_unlink, remote_fileio_func_stat)
7937         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7938         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7939         remote_target parameter.
7940         (remote_fio_func_map) <func>: Add remote_target parameter.
7941         (do_remote_fileio_request, remote_fileio_request):
7942         * remote-fileio.h (remote_fileio_request):
7943         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7944         remote_target parameter.
7945         (remote_notif_process, handle_notification): Adjust to pass down
7946         the remote.
7947         (remote_notif_state_allocate): Add remote_target parameter.  Save
7948         it.
7949         * remote-notif.h (struct remote_target): Forward declare.
7950         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7951         remote_target parameter.
7952         (struct remote_notif_state) <remote>: New field.
7953         (remote_notif_ack, remote_notif_parse): Add remote_target
7954         parameter.
7955         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7956         remote_target parameter.
7957         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7958         (threads_listing_context, rmt_thread_action, protocol_feature)
7959         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7960         (packet_result, struct threads_listing_context, remote_state):
7961         Move definitions and declarations higher up.
7962         (remote_target) <~remote_target>: Declare.
7963         (remote_download_command_source, remote_file_put, remote_file_get)
7964         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7965         (remote_hostio_pread_vFile, remote_hostio_send_command)
7966         (remote_hostio_set_filesystem, remote_hostio_open)
7967         (remote_hostio_close, remote_hostio_unlink, remote_state)
7968         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7969         (get_memory_write_packet_size, get_memory_read_packet_size)
7970         (append_pending_thread_resumptions, remote_detach_1)
7971         (append_resumption, remote_resume_with_vcont)
7972         (add_current_inferior_and_thread, wait_ns, wait_as)
7973         (process_stop_reply, remote_notice_new_inferior)
7974         (process_initial_stop_replies, remote_add_thread)
7975         (btrace_sync_conf, remote_btrace_maybe_reopen)
7976         (remove_new_fork_children, kill_new_fork_children)
7977         (discard_pending_stop_replies, stop_reply_queue_length)
7978         (check_pending_events_prevent_wildcard_vcont)
7979         (discard_pending_stop_replies_in_queue, stop_reply)
7980         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7981         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7982         (remote_interrupt_as, remote_interrupt_ns)
7983         (remote_get_noisy_reply, remote_query_attached)
7984         (remote_add_inferior, remote_current_thread, get_current_thread)
7985         (set_thread, set_general_thread, set_continue_thread)
7986         (set_general_process, write_ptid)
7987         (remote_unpack_thread_info_response, remote_get_threadinfo)
7988         (parse_threadlist_response, remote_get_threadlist)
7989         (remote_threadlist_iterator, remote_get_threads_with_ql)
7990         (remote_get_threads_with_qxfer)
7991         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7992         (get_offsets, remote_check_symbols, remote_supported_packet)
7993         (remote_query_supported, remote_packet_size)
7994         (remote_serial_quit_handler, remote_detach_pid)
7995         (remote_vcont_probe, remote_resume_with_hc)
7996         (send_interrupt_sequence, interrupt_query)
7997         (remote_notif_get_pending_events, fetch_register_using_p)
7998         (send_g_packet, process_g_packet, fetch_registers_using_g)
7999         (store_register_using_P, store_registers_using_G)
8000         (set_remote_traceframe, check_binary_download)
8001         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8002         (remote_xfer_live_readonly_partial, remote_read_bytes)
8003         (remote_send_printf, remote_flash_write, readchar)
8004         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8005         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8006         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8007         (extended_remote_disable_randomization, extended_remote_run)
8008         (send_environment_packet, extended_remote_environment_support)
8009         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8010         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8011         (packet_command): Now methods of ...
8012         (remote_target): ... this class.
8013         (m_remote_state) <remote_target>: New field.
8014         (struct remote_state) <stop_reply_queue,
8015         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8016         fields.
8017         (remote_state::remote_state): Allocate stop_reply_queue.
8018         (remote_state): Delete global.
8019         (get_remote_state_raw): Delete.
8020         (remote_target::get_remote_state): Allocate m_remote_state on
8021         demand.
8022         (get_current_remote_target): New.
8023         (remote_ops, extended_remote_ops): Delete.
8024         (wait_forever_enabled_p, remote_async_inferior_event_token):
8025         Delete, moved to struct remote_state.
8026         (remote_target::close): Delete self.  Destruction bits split to
8027         ...
8028         (remote_target::~remote_target): ... this.
8029         (show_memory_packet_size): Adjust to use
8030         get_current_remote_target.
8031         (struct protocol_feature) <func>: Add remote_target parameter.
8032         All callers adjusted.
8033         (curr_quit_handler_target): New.
8034         (remote_serial_quit_handler): Reimplement.
8035         (remote_target::open_1): Adjust to use get_current_remote_target.
8036         Heap-allocate remote_target/extended_remote_target instances.
8037         (vcont_builder::vcont_builder): Add remote_target parameter, and
8038         save it in m_remote.  All callers adjusted.
8039         (vcont_builder::m_remote): New field.
8040         (vcont_builder::restart, vcont_builder::flush)
8041         (vcont_builder::push_action): Use it.
8042         (remote_target::commit_resume): Use it.
8043         (struct queue_iter_param) <remote>: New field.
8044         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8045         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8046         (check_pending_event_prevents_wildcard_vcont_callback)
8047         (remote_target::check_pending_events_prevent_wildcard_vcont)
8048         (remote_target::discard_pending_stop_replies)
8049         (remote_target::discard_pending_stop_replies_in_queue)
8050         (remote_target::remote_notif_remove_queued_reply): Fill in
8051         'remote' field.
8052         (remote_notif_get_pending_events): New.
8053         (remote_target::readchar, remote_target::remote_serial_write):
8054         Save/restore curr_quit_handler_target.
8055         (putpkt): New.
8056         (kill_new_fork_children): Fill in 'remote' field.
8057         (packet_command): Use get_current_remote_target, defer to
8058         remote_target method of same name.
8059         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8060         parameter, and save it in m_remote.  All callers adjusted.
8061         (scoped_remote_fd::release): Use m_remote.
8062         (scoped_remote_fd::m_remote): New field.
8063         (remote_file_put, remote_file_get, remote_file_delete): Use
8064         get_current_remote_target, defer to remote_target method of same
8065         name.
8066         (remote_btrace_reset): Add remote_state paremeter.  Update all
8067         callers.
8068         (remote_async_inferior_event_handler). Pass down 'data'.
8069         (remote_new_objfile): Use get_current_remote_target.
8070         (remote_target::vcont_r_supported): New.
8071         (set_range_stepping): Use get_current_remote_target and
8072         remote_target::vcont_r_supported.
8073         (_initialize_remote): Don't allocate 'remote_state' and
8074         'stop_reply_queue' globals.
8075         * remote.h (struct remote_target): Forward declare.
8076         (getpkt, putpkt, remote_notif_get_pending_events): Add
8077         'remote_target' parameter.
8078
8079 2018-05-22  Pedro Alves  <palves@redhat.com>
8080
8081         * remote.c (vcont_builder): Now a class.  Make all data members
8082         private.
8083         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8084         Declare methods.
8085         (vcont_builder_restart): Rename to ...
8086         (vcont_builder::restart): ... this.
8087         (vcont_builder_flush): Rename to ...
8088         (vcont_builder::flush): ... this.
8089         (vcont_builder_push_action): Rename to ...
8090         (vcont_builder::push_action): ... this.
8091         (remote_target::commit_resume): Adjust.
8092
8093 2018-05-22  Pedro Alves  <palves@redhat.com>
8094
8095         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8096         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8097         (get_fixed_memory_packet_size): New.
8098         (get_memory_packet_size): Use it.
8099         (set_memory_packet_size): Don't override the config size with
8100         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8101         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8102         Don't refer to get_memory_packet_size if not connected to a remote
8103         target.  Show "(default)" if configured size is 0.
8104
8105 2018-05-22  Pedro Alves  <palves@redhat.com>
8106
8107         * remote.c (remote_target::mourn_inferior): Move
8108         discard_pending_stop_replies call here from ...
8109         (_initialize_remote): ... here.
8110
8111 2018-05-22  Pedro Alves  <palves@redhat.com>
8112
8113         * remote.c (compare_section_command): Remove set_general_process
8114         call.
8115
8116 2018-05-22  Pedro Alves  <palves@redhat.com>
8117
8118         * remote.c (struct packet_reg, struct remote_arch_state):
8119         Move higher up in the file.
8120         (remote_state) <m_arch_states>: Store remote_arch_state values
8121         instead of remote_arch_state pointers.
8122         (remote_state::get_remote_arch_state): Adjust.
8123
8124 2018-05-22  Pedro Alves  <palves@redhat.com>
8125
8126         * remote.c: Include <unordered_map>.
8127         (remote_state): Now a class.
8128         (remote_state) <get_remote_arch_state>: Declare method.
8129         <get_remote_arch_state>: New field.
8130         (remote_arch_state) <remote_arch_state>: Declare ctor.
8131         <regs>: Now a unique_ptr.
8132         (remote_gdbarch_data_handle): Delete.
8133         (get_remote_arch_state): Delete.
8134         (remote_state::get_remote_arch_state): New.
8135         (get_remote_state): Adjust to call remote_state's
8136         get_remote_arch_state method.
8137         (init_remote_state): Delete, bits factored out to ...
8138         (remote_arch_state::remote_arch_state): ... this new method.
8139         (get_remote_packet_size, get_memory_packet_size)
8140         (process_g_packet, remote_target::fetch_registers)
8141         (remote_target::prepare_to_store, store_registers_using_G)
8142         (remote_target::store_registers, remote_target::get_trace_status):
8143         Adjust to call remote_state's method.
8144         (_initialize_remote): Remove reference to
8145         remote_gdbarch_data_handle.
8146
8147 2018-05-22  Pedro Alves  <palves@redhat.com>
8148
8149         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8150         pread>: New method declarations.
8151         (remote_target::open_1): Adjust.
8152         (readahead_cache_invalidate): Rename to ...
8153         (readahead_cache::invalidate): ... this, and adjust to be a class
8154         method.
8155         (readahead_cache_invalidate_fd): Rename to ...
8156         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8157         class method.
8158         (remote_hostio_pwrite): Adjust.
8159         (remote_hostio_pread_from_cache): Rename to ...
8160         (readahead_cache::pread): ... this, and adjust to be a class
8161         method.
8162         (remote_hostio_close): Adjust.
8163
8164 2018-05-22  Pedro Alves  <palves@redhat.com>
8165
8166         * remote.c (remote_hostio_close_cleanup): Delete.
8167         (class scoped_remote_fd): New.
8168         (remote_file_put, remote_file_get): Use it.
8169
8170 2018-05-22  Pedro Alves  <palves@redhat.com>
8171
8172         (struct vCont_action_support): Use bool and initialize all fields.
8173         (struct readahead_cache): Initialize all fields.
8174         (remote_state): Use bool and initialize all fields.
8175         (remote_state::remote_state, remote_state::~remote_state): New.
8176         (new_remote_state): Delete.
8177         (_initialize_remote): Use new to allocate remote_state.
8178
8179 2018-05-22  Pedro Alves  <palves@redhat.com>
8180             張俊芝  <zjz@zjz.name>
8181
8182         PR gdb/22973
8183         * c-exp.y: Include "c-support.h".
8184         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8185         of tolower.  Use c_ident_is_alpha to scan names.
8186         * c-lang.c: Include "c-support.h".
8187         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8188         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8189         * c-support.h: New file, with bits factored out from ...
8190         * cp-name-parser.y: ... this file.
8191         Include "c-support.h".
8192         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8193         c-support.h and renamed.
8194         (symbol_end, yylex): Adjust.
8195
8196 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8197
8198         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8199         parameter type to CORE_ADDR.
8200         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8201         parameter type in declaration to CORE_ADDR.
8202         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8203         target_auxv_search to get AT_HWCAP and use the result to get the
8204         target description.
8205         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8206         to CORE_ADDR. Remove the cast of the return value to unsigned
8207         long. Fix error predicate of target_auxv_search.
8208         (ppc_linux_nat_target::read_description): Change the type of the
8209         hwcap variable to CORE_ADDR.
8210
8211 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8212
8213         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8214         if the size of fpscr is larger than 32 bits.
8215
8216 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8217
8218         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8219         (ppc32_linux_vsxregmap): New global.
8220         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8221         regcache_supply_regset, and regcache_collect_regset.
8222         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8223         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8224         (fetch_vsx_register, store_vsx_register): Remove.
8225         (fetch_vsx_registers): Add regno parameter. Get regset using
8226         ppc_linux_vsxregset. Use regset to supply registers.
8227         (store_vsx_registers): Add regno parameter. Get regset using
8228         ppc_linux_vsxregset. Use regset to collect registers.
8229         (fetch_register): Call fetch_vsx_registers instead of
8230         fetch_vsx_register.
8231         (store_register): Call store_vsx_registers instead of
8232         store_vsx_register.
8233         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8234         new regno parameter.
8235         (store_ppc_registers): Call store_vsx_registers with -1 for the
8236         new regno parameter.
8237         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8238         (ppc_collect_vsxregset): Remove.
8239
8240 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8241
8242         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8243         offset fields.
8244         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8245         for vector register offset fields.
8246         (ppc64_fbsd_reg_offsets): Likewise.
8247         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8248         to vector register offset fields.
8249         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8250         to vector register offset fields.
8251         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8252         vector register offset fields.
8253         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8254         initializers for vector register offset fields.
8255         (rs6000_aix64_reg_offsets): Likewise.
8256         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8257         (ppc_supply_vrregset): Remove.
8258         (ppc_collect_vrregset): Remove.
8259         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8260         (ppc_linux_vrregset) : New function.
8261         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8262         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8263         (ppc32_linux_vrregset): Remove.
8264         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8265         and use result instead of ppc32_linux_vrregset.
8266         (ppc32_linux_reg_offsets): Remove initializers for vector register
8267         offset fields.
8268         (ppc64_linux_reg_offsets): Likewise.
8269         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8270         * ppc-linux-nat.c: Include regset.h.
8271         (gdb_vrregset_t): Adjust comment to account for little-endian
8272         mode.
8273         (supply_vrregset, fill_vrregset): Remove.
8274         (fetch_altivec_register, store_altivec_register): Remove.
8275         (fetch_altivec_registers): Add regno parameter. Get regset using
8276         ppc_linux_vrregset. Use regset to supply registers.
8277         (store_altivec_registers): Add regno parameter. Get regset using
8278         ppc_linux_vrregset. Use regset to collect registers.
8279         (fetch_register): Call fetch_altivec_registers instead of
8280         fetch_altivec_register.
8281         (store_register): Call store_altivec_registers instead of
8282         store_altivec_register.
8283         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8284         the new regno parameter.
8285         (store_ppc_registers): Call store_altivec_registers with -1 for
8286         the new regno parameter.
8287
8288 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8289
8290         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8291         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8292         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8293         (gdb_vrregset_t): Change array type size to
8294         PPC_LINUX_SIZEOF_VRREGSET.
8295         (gdb_vsxregset_t): Change array type size to
8296         PPC_LINUX_SIZEOF_VSXREGSET.
8297         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8298         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8299         PPC_LINUX_SIZEOF_VSXREGSET.
8300
8301 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8302
8303         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8304         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8305         nat/ppc-linux.c.
8306         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8307         ppc_linux_target_wordsize with tid.
8308         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8309         wordsize with tid.
8310         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8311         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8312         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8313         tid parameter. Remove static specifier.
8314         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8315         (ppc_linux_target_wordsize): New declaration.
8316
8317 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8318
8319         * arch/ppc-linux-common.c: New file.
8320         * arch/ppc-linux-common.h: New file.
8321         * arch/ppc-linux-tdesc.h: New file.
8322         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8323         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8324         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8325         arch/ppc-linux-tdesc.h.
8326         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8327         arch/ppc-linux-tdesc.h.
8328         (ppc_linux_nat_target::read_description): Remove target
8329         description matching code. Fill a ppc_linux_features struct and
8330         call ppc_linux_match_description with it. Move comment about ISA
8331         2.05 to ppc-linux-common.c.
8332         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8333         arch/ppc-linux-tdesc.h.
8334         (ppc_linux_core_read_description): Remove target description
8335         matching code. Fill a ppc_linux_features struct and call
8336         ppc_linux_match_description with it.
8337         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8338         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8339         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8340         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8341         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8342         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8343         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8344         (tdesc_powerpc_e500l): Remove.
8345
8346 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8347
8348         * ada-lang.c (catch_assert_command): Pass empty string instead
8349         of NULL for excep_string argument.
8350
8351 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8352
8353         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8354         the width of the requested register exceeds the width of the
8355         `ptrace' data type.
8356
8357 2018-05-21  Tom Tromey  <tom@tromey.com>
8358
8359         * printcmd.c (output_command): Remove.
8360         (output_command_const): Rename to output_command.
8361         * valprint.h (output_command): Rename from output_command_const.
8362         * tracepoint.c (trace_dump_actions): Call output_command.
8363
8364 2018-05-21  Tom Tromey  <tom@tromey.com>
8365
8366         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8367         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8368         * ada-lang.h (create_ada_exception_catchpoint): Update.
8369         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8370         std::string.
8371         (create_excep_cond_exprs, ~ada_catchpoint)
8372         (should_stop_exception, print_one_exception)
8373         (print_mention_exception, print_recreate_exception): Update.
8374         (ada_get_next_arg): Remove.
8375         (catch_ada_exception_command_split): Use std::string.  Change type
8376         of "excep_string", "cond_string".
8377         (catch_ada_exception_command): Update.
8378         (create_ada_exception_catchpoint): Change type of excep_string.
8379         (ada_exception_sal): Remove excep_string parameter.
8380         (~ada_catchpoint): Remove.
8381
8382 2018-05-21  Tom Tromey  <tom@tromey.com>
8383
8384         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8385         cleanup.
8386
8387 2018-05-21  Tom Tromey  <tom@tromey.com>
8388
8389         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8390         Return unique_xmalloc_ptr.
8391         (print_it_exception): Update.
8392
8393 2018-05-21  Tom Tromey  <tom@tromey.com>
8394
8395         * tracepoint.c (trace_dump_actions): Use std::string.
8396
8397 2018-05-21  Tom Tromey  <tom@tromey.com>
8398
8399         * symfile.c (reread_symbols): Use std::string for original_name.
8400
8401 2018-05-21  Tom Tromey  <tom@tromey.com>
8402
8403         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8404         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8405         constructor.
8406
8407 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8408
8409         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8410         instance to...
8411         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8412         * objfiles.c (get_objfile_bfd_data): Allocate
8413         objfile_per_bfd_storage with obstack_new when allocating on
8414         obstack.
8415
8416 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8417
8418         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8419         OBSTACK_ZALLOC.
8420         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8421         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8422         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8423         (add_pending): Likewise.
8424         (parse_symbol): Likewise.
8425         (parse_partial_symbols): Likewise.
8426         (psymtab_to_symtab_1): Likewise.
8427         (new_psymtab): Likewise.
8428         (elfmdebug_build_psymtabs): Likewise.
8429         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8430         * objfiles.c (get_objfile_bfd_data): Likewise.
8431         (objfile_register_static_link): Likewise.
8432         * psymtab.c (allocate_psymtab): Likewise.
8433         * stabsread.c (read_member_functions): Likewise.
8434         * xcoffread.c (xcoff_end_psymtab): Likewise.
8435
8436 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8437
8438         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8439         compiler supports std::is_trivially_constructible.
8440         * common/poison.h: Include obstack.h.
8441         (IsMallocable): Define to is_trivially_constructible if the
8442         compiler supports it, define to true_type otherwise.
8443         (xobnew): New.
8444         (XOBNEW): Redefine.
8445         (xobnewvec): New.
8446         (XOBNEWVEC): Redefine.
8447         * gdb_obstack.h (obstack_zalloc): New.
8448         (OBSTACK_ZALLOC): Redefine.
8449         (obstack_calloc): New.
8450         (OBSTACK_CALLOC): Redefine.
8451         (obstack_new): New.
8452         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8453         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8454         gdbarch.c.
8455         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8456         obstack_calloc/obstack_zalloc.
8457         (gdbarch_obstack_zalloc): Remove.
8458         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8459
8460 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8461
8462         * stack.c (backtrace_command_1): Remove useless variable int i.
8463
8464 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8465
8466         * stack.c (print_frame_info): Fix comment.
8467
8468 2018-05-18  Tom Tromey  <tom@tromey.com>
8469
8470         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8471         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8472         (~dwarf2_per_objfile): Update
8473         (dwarf2_get_dwz_file): Use new.
8474         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8475         unique_ptr.
8476
8477 2018-05-18  Tom Tromey  <tom@tromey.com>
8478
8479         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8480         unique_ptr.
8481         * dwarf2read.c (struct dwp_file): Add constructor and
8482         initializers.
8483         (open_and_init_dwp_file): Return a unique_ptr.
8484         (dwarf2_per_objfile, create_dwp_hash_table)
8485         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8486         (lookup_dwo_unit_in_dwp): Update.
8487         (open_and_init_dwp_file, get_dwp_file): Update.
8488
8489 2018-05-18  Tom Tromey  <tom@tromey.com>
8490
8491         * dwarf2read.c (dwarf2_per_objfile): Update.
8492         (struct mapped_index): Add initializers.
8493         (dwarf2_read_index): Use new.
8494         (dw2_symtab_iter_init): Update.
8495         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8496         unique_ptr.
8497
8498 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8499
8500         * dwarf2read.c (mapped_index) <total_size>: Remove.
8501
8502 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8503
8504         * unittests/format_pieces-selftests.c (test_format_specifier):
8505         Add ARI comments.
8506
8507 2018-05-18  Tom Tromey  <tom@tromey.com>
8508
8509         * c-typeprint.c (maybe_print_hole): New function.
8510         (c_print_type_struct_field_offset): Update.
8511         (c_type_print_base_struct_union): Call maybe_print_hole.
8512
8513 2018-05-17  Keith Seitz  <keiths@redhat.com>
8514
8515         * breakpoint.c (build_bpstat_chain): New function, moved from
8516         bpstat_stop_status.
8517         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8518         If no stop chain is passed, call build_bpstat_chain to build it.
8519         * breakpoint.h (build_bpstat_chain): Declare.
8520         (bpstat_stop_status): Move documentation here from breakpoint.c.
8521         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8522         build the stop chain and pass it to skip_inline_frames.
8523         Pass this stop chain to bpstat_stop_status.
8524         * inline-frame.c: Include breakpoint.h.
8525         (stopped_by_user_bp_inline_frame): New function.
8526         (skip_inline_frames): Add parameter `stop_chain'.
8527         Move documention to inline-frame.h.
8528         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8529         whether the frame should be elided.
8530         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8531         Add moved documentation and update for new parameter.
8532
8533 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8534
8535         PR cli/14975
8536         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8537         unittests/format_pieces-selftests.c.
8538         * common/format.h (format_piece) <operator==>: New.
8539         (format_pieces) <operator[]>: Remove.
8540         * common/format.c (format_pieces::format_pieces): Handle \e.
8541         * unittests/format_pieces-selftests.c: New.
8542
8543 2018-05-17  Tom Tromey  <tom@tromey.com>
8544
8545         PR symtab/23010:
8546         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8547         (dw2_instantiate_symtab): Add skip_partial parameter.
8548         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8549         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8550         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8551         (dw2_expand_symtabs_matching_one)
8552         (dw2_find_pc_sect_compunit_symtab)
8553         (dw2_debug_names_lookup_symbol)
8554         (dw2_debug_names_expand_symtabs_for_function): Update.
8555         (init_cutu_and_read_dies): Add skip_partial parameter.
8556         (process_psymtab_comp_unit, build_type_psymtabs_1)
8557         (process_skeletonless_type_unit, load_partial_comp_unit)
8558         (psymtab_to_symtab_1): Update.
8559         (load_full_comp_unit): Add skip_partial parameter.
8560         (process_imported_unit_die, dwarf2_read_addr_index)
8561         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8562         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8563         (read_signatured_type): Update.
8564
8565 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8566
8567         * value.c (release_value): Remove unused variable.
8568         (record_latest_value): Likewise.
8569         (access_value_history): Likewise.
8570         (preserve_values): Likewise.
8571
8572 2018-05-17  Tom Tromey  <tom@tromey.com>
8573
8574         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8575         Initialize.
8576
8577 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8578
8579         PR gdb/22286
8580         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8581         Also handle registers whose width is not a multiple of
8582         PTRACE_TYPE_RET.
8583         (linux_nat_trad_target::store_register): Likewise.
8584
8585 2018-05-16  Tom Tromey  <tom@tromey.com>
8586
8587         * gdbcore.h (core_bfd): Redefine.
8588         * corelow.c (core_target::close): Update.
8589         (core_target_open): Update.
8590         * progspace.h (struct program_space) <cbfd>: Now a
8591         gdb_bfd_ref_ptr.
8592
8593 2018-05-16  Tom Tromey  <tom@tromey.com>
8594
8595         PR cli/19551:
8596         * symfile-add-flags.h (enum symfile_add_flags)
8597         <SYMFILE_NOT_FILENAME>: New constant.
8598         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8599         objfile name from BFD.
8600         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8601         * minidebug.c (find_separate_debug_file_in_section): Put
8602         ".gnu_debugdata" into BFD's file name.
8603
8604 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8605
8606         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8607         Remove.
8608
8609 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8610
8611         PR binutils/21446
8612         * aarch64-tdep.c (aarch64_analyze_prologue,
8613         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8614         Indicate not interested in errors.
8615
8616 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8617
8618         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8619         Supply the MIPS_ZERO_REGNUM register.
8620
8621 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8622
8623         * mips-tdep.c (mask_address_var): Make variable static.
8624
8625 2018-05-14  Tom Tromey  <tom@tromey.com>
8626
8627         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8628
8629 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8630
8631         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8632         FXSAVE_ADDR for the mxcsr register.
8633
8634 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8635
8636         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8637
8638 2018-05-11  Pedro Alves  <palves@redhat.com>
8639
8640         * corelow.c (core_target) <core_target>: No longer inline.
8641         Initialize m_core_gdbarch, m_core_vec and build the section table
8642         here.
8643         <~core_target>: New.
8644         <core_gdbarch, get_core_register_section>: New methods.
8645         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8646         factored out from ...
8647         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8648         (core_ops): Delete.
8649         (sniff_core_bfd): Add gdbarch parameter.
8650         (core_close): Delete, merged into ...
8651         (core_target::close): ... here.  Delete self.
8652         (core_close_cleanup): Delete.
8653         (core_target_open): Allocate a core_target on the heap.  Use a
8654         unique_ptr instead of a cleanup.  Bits moved into the core_target
8655         ctor.  Adjust to use core_target methods instead of globals.
8656         (get_core_register_section): Rename to ...
8657         (core_target::get_core_register_section): ... this and adjust.
8658         (struct get_core_registers_cb_data): New.
8659         (get_core_registers_cb): Use it.  Use bool.
8660         (core_target::fetch_registers, core_target::files_info)
8661         (core_target::xfer_partial, core_target::read_description)
8662         (core_target::pid_to, core_target::thread_name): Adjust to
8663         reference class fields instead of globals.
8664         * target.h (struct target_ops_deleter, target_ops_up): New.
8665
8666 2018-05-11  Pedro Alves  <palves@redhat.com>
8667
8668         * corefile.c (core_file_command): Move to corelow.c.
8669         * corelow.c (the_core_target): Delete.
8670         (core_file_command): Moved from corefile.c.  Check exec_bfd
8671         instead of the_core_target.  Use target_detach instead of calling
8672         into the_core_target directly.
8673         (maybe_say_no_core_file_now): New.
8674         (core_target::detach): Use it.
8675         (_initialize_corelow): Remove references to the_core_target.
8676         * gdbcore.h (the_core_target): Delete.
8677
8678 2018-05-11  Tom Tromey  <tromey@redhat.com>
8679             Pedro Alves  <palves@redhat.com>
8680
8681         * corefile.c (core_bfd): Remove.
8682         * gdbcore.h (core_bfd): Now a macro.
8683         * progspace.h (struct program_space) <cbfd>: New field.
8684
8685 2018-05-11  Tom Tromey  <tom@tromey.com>
8686
8687         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8688         gdb::def_vector.
8689
8690 2018-05-10  Tom Tromey  <tom@tromey.com>
8691
8692         * configure: Rebuild.
8693         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8694
8695 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8696
8697         PR server/23158:
8698         * regformats/regdat.sh: Adjust script, following the addition
8699         of the new expedite_regs parameter to init_target_desc.
8700
8701 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8702     
8703         PR gdb/23127
8704         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8705         set_gdbarch_significant_addr_bit.
8706         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8707         set_gdbarch_significant_addr_bit.
8708         * utils.c (address_significant): Update to sign extend addr.
8709
8710 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8711
8712         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8713         (xtensa_linux_init_abi): Limit tdep->num_regs by
8714         tdep->num_nopriv_regs.
8715         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8716         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8717         not initialized.
8718
8719 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8720
8721         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8722
8723 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8724
8725         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8726         (I387_MXCSR_INIT_VAL): New constant.
8727         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8728         buffer if it was supplied by the inferior.
8729         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8730         (i387_xsave_get_clear_bv): New function.
8731         (i387_supply_xsave): Only read x87 control registers from the
8732         xsave buffer if the feature is enabled, and the state will have
8733         been written, otherwise, provide a suitable default.
8734         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8735         including x87 control registers.  Update control registers if they
8736         have changed from the default value, and mark features as enabled
8737         as required.
8738         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8739
8740 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8741
8742         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8743
8744 2018-05-07  Tom Tromey  <tom@tromey.com>
8745
8746         * configure: Rebuild.
8747         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8748
8749 2018-05-07  Tom Tromey  <tom@tromey.com>
8750
8751         PR tdep/20362:
8752         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8753         bit.  Use correct value for VDIV.
8754
8755 2018-05-04  Tom Tromey  <tom@tromey.com>
8756
8757         * configure: Rebuild.
8758         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8759
8760 2018-05-04  Tom Tromey  <tom@tromey.com>
8761
8762         * linux-record.c (record_linux_system_call) <case
8763         RECORD_SYS_RECVFROM>: Add "break".
8764
8765 2018-05-04  Tom Tromey  <tom@tromey.com>
8766
8767         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8768         Add missing "break".
8769         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8770         Add missing "break".
8771
8772 2018-05-04  Tom Tromey  <tom@tromey.com>
8773
8774         * rs6000-tdep.c (ppc_process_record_op4)
8775         (ppc_process_record_op63): Add fall-through comment.
8776
8777 2018-05-04  Tom Tromey  <tom@tromey.com>
8778
8779         * i386-tdep.c (i386_process_record): Add fall-through comment.
8780
8781 2018-05-04  Tom Tromey  <tom@tromey.com>
8782
8783         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8784         comment.
8785
8786 2018-05-04  Tom Tromey  <tom@tromey.com>
8787
8788         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8789         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8790         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8791         comment.
8792         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8793         comment.
8794         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8795         comment.
8796
8797 2018-05-04  Tom Tromey  <tom@tromey.com>
8798
8799         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8800
8801 2018-05-04  Tom Tromey  <tom@tromey.com>
8802
8803         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8804         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8805         * symfile.c (section_is_mapped): Fix fall-through comment.
8806         * stabsread.c (define_symbol, read_member_functions): Fix
8807         fall-through comment.
8808         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8809         comment.
8810         * remote.c (remote_wait_as): Fix fall-through comment.
8811         * p-exp.y (yylex): Fix fall-through comment.
8812         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8813         comment.
8814         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8815         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8816         * jv-exp.y (yylex): Fix fall-through comment.
8817         * go-exp.y (lex_one_token): Fix fall-through comment.
8818         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8819         fall-through comment.
8820         * f-exp.y (yylex): Fix fall-through comment.
8821         * dwarf2read.c (process_die): Fix fall-through comments.
8822         * dbxread.c (process_one_symbol): Fix fall-through comment.
8823         * d-exp.y (lex_one_token): Fix fall-through comment.
8824         * cp-name-parser.y (yylex): Fix fall-through comment.
8825         * coffread.c (coff_symtab_read): Fix fall-through comment.
8826         * c-exp.y (lex_one_token): Fix fall-through comment.
8827         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8828         comment.
8829         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8830         comment.
8831
8832 2018-05-04  Tom Tromey  <tom@tromey.com>
8833
8834         PR python/22730:
8835         * NEWS: Mention gdb.execute change.
8836         * gdbcmd.h (execute_control_command): Don't declare.
8837         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8838         execute_control_commands, execute_control_commands_to_string.
8839         * cli/cli-script.h (execute_control_commands)
8840         (execute_control_commands_to_string): Declare.
8841         (execute_control_command): Add from_tty parameter.
8842         * cli/cli-script.c (execute_control_commands)
8843         (execute_control_commands_to_string): New functions.
8844         (execute_user_command): Use execute_control_commands.
8845         (execute_control_command_1): Add "from_tty" parameter.  Update.
8846         (execute_control_command): Likewise.
8847
8848 2018-05-04  Tom Tromey  <tom@tromey.com>
8849
8850         PR python/22731:
8851         * NEWS: Mention that breakpoint commands are writable.
8852         * python/py-breakpoint.c (bppy_set_commands): New function.
8853         (breakpoint_object_getset) <"commands">: Use it.
8854
8855 2018-05-04  Tom Tromey  <tom@tromey.com>
8856
8857         * tracepoint.c (actions_command): Update.
8858         * mi/mi-cmd-break.c (mi_command_line_array)
8859         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8860         (mi_read_next_line): Remove.
8861         (mi_cmd_break_commands): Update.
8862         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8863         function_view.
8864         * cli/cli-script.c (get_command_line): Update.
8865         (process_next_line): Use function_view.  Constify.
8866         (recurse_read_control_structure, read_command_lines)
8867         (read_command_lines_1): Change argument types to function_view.
8868         (do_define_command, document_command): Update.
8869         * breakpoint.h (check_tracepoint_command): Don't declare.
8870         * breakpoint.c (check_tracepoint_command): Remove.
8871         (commands_command_1, create_tracepoint_from_upload): Update.
8872
8873 2018-05-04  Tom Tromey  <tom@tromey.com>
8874
8875         PR gdb/11750:
8876         * cli/cli-script.h (enum command_control_type) <define_control>:
8877         New constant.
8878         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8879         (build_command_line, execute_control_command_1)
8880         (process_next_line): Likewise.
8881         (do_define_command): New function, extracted from define_command.
8882         (define_command): Use it.
8883
8884 2018-05-04  Tom Tromey  <tom@tromey.com>
8885
8886         * tracepoint.c (actions_command): Update.
8887         * cli/cli-script.h (read_command_lines): Update.
8888         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8889         (MAX_TMPBUF): Remove define.
8890         (define_command): Use string_printf.
8891         (document_command): Likewise.
8892         * breakpoint.c (commands_command_1): Update.
8893
8894 2018-05-04  Tom Tromey  <tom@tromey.com>
8895
8896         * top.c (execute_command): Update.
8897         * cli/cli-script.h (print_command_lines): Now varargs.
8898         * cli/cli-script.c (print_command_lines): Now varargs.
8899         (execute_control_command_1) <case while_control, case if_control>:
8900         Update.
8901
8902 2018-05-04  Tom Tromey  <tom@tromey.com>
8903
8904         * tracepoint.c (all_tracepoint_actions): Rename from
8905         all_tracepoint_actions_and_cleanup.  Change return type.
8906         (actions_command, encode_actions_1, encode_actions)
8907         (trace_dump_actions, tdump_command): Update.
8908         * remote.c (remote_download_command_source): Update.
8909         * python/python.c (gdbpy_eval_from_control_command)
8910         (python_command, python_interactive_command): Update.
8911         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8912         * guile/guile.c (guile_command)
8913         (gdbscm_eval_from_control_command, guile_command): Update.
8914         * compile/compile.c (compile_code_command)
8915         (compile_print_command, compile_to_object): Update.
8916         * cli/cli-script.h (struct command_lines_deleter): New.
8917         (counted_command_line): New typedef.
8918         (struct command_line): Add constructor, destructor.
8919         <body_list>: Remove.
8920         <body_list_0, body_list_1>: New members.
8921         (command_line_up): Remove typedef.
8922         (read_command_lines, read_command_lines_1, get_command_line):
8923         Update.
8924         (copy_command_lines): Don't declare.
8925         * cli/cli-script.c (build_command_line): Use "new".
8926         (get_command_line): Return counted_command_line.
8927         (print_command_lines, execute_user_command)
8928         (execute_control_command_1, while_command, if_command): Update.
8929         (realloc_body_list): Remove.
8930         (process_next_line, recurse_read_control_structure): Update.
8931         (read_command_lines, read_command_lines_1): Return counted_command_line.
8932         (free_command_lines): Use "delete".
8933         (copy_command_lines): Remove.
8934         (define_command, document_command, show_user_1): Update.
8935         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8936         a counted_command_line.
8937         * breakpoint.h (counted_command_line): Remove typedef.
8938         (breakpoint_set_commands): Update.
8939         * breakpoint.c (check_no_tracepoint_commands)
8940         (validate_commands_for_breakpoint): Update.
8941         (breakpoint_set_commands): Change commands to be a
8942         counted_command_line.
8943         (commands_command_1, update_dprintf_command_list)
8944         (create_tracepoint_from_upload): Update.
8945
8946 2018-05-04  Tom Tromey  <tom@tromey.com>
8947
8948         * cli/cli-decode.h (cmd_list_element): New constructor.
8949         (~cmd_list_element): New destructor.
8950         (struct cmd_list_element): Add initializers.
8951         * cli/cli-decode.c (do_add_cmd): Use "new".
8952         (delete_cmd): Use "delete".
8953
8954 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8955             Pedro Alves <palves@redhat.com>
8956
8957         PR breakpoints/19806 and support for PR external/20207.
8958         * NEWS: Mention Aarch64 watchpoint improvements.
8959         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8960         watchpoints and PR external/20207 watchpoints.
8961         * nat/aarch64-linux-hw-point.c
8962         (kernel_supports_any_contiguous_range): New.
8963         (aarch64_watchpoint_offset): New.
8964         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8965         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8966         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8967         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8968         next_addr_orig_p.  Support PR external/20207 watchpoints.
8969         (aarch64_downgrade_regs): New.
8970         (aarch64_dr_state_insert_one_point): New parameters offset and
8971         addr_orig.
8972         (aarch64_dr_state_remove_one_point): Likewise.
8973         (aarch64_handle_breakpoint): Update caller.
8974         (aarch64_handle_aligned_watchpoint): Likewise.
8975         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8976         aligned_offset.
8977         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8978         aarch64_downgrade_regs.
8979         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8980         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8981         (DR_CONTROL_MASK): ... this.
8982         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8983         (unsigned int aarch64_watchpoint_offset): New prototype.
8984         (aarch64_linux_set_debug_regs): Remove const from state.
8985         * utils.c (align_up, align_down): Move to ...
8986         * common/common-utils.c (align_up, align_down): ... here.
8987         * utils.h (align_up, align_down): Move to ...
8988         * common/common-utils.h (align_up, align_down): ... here.
8989
8990 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8991
8992         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8993         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8994         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8995         Re-implement to match the ABI as summarized in GCC's
8996         gcc/config/sparc/sparc.c.  All callers updated.
8997         (sparc32_store_arguments): Remove assertion.
8998
8999 2018-05-04  Tom Tromey  <tom@tromey.com>
9000
9001         * printcmd.c: Don't include tui.h.
9002         (decode_format): Use skip_spaces.
9003
9004 2018-05-04  Tom Tromey  <tom@tromey.com>
9005
9006         PR gdb/22619:
9007         * printcmd.c (last_count): New global.
9008         (x_command): Use saved count when repeating.
9009
9010 2018-05-04  Tom Tromey  <tom@tromey.com>
9011
9012         * nto-procfs.c (do_closedir_cleanup): Remove.
9013         (procfs_pidlist): Use gdb_dir_up.
9014         * procfs.c (do_closedir_cleanup): Remove.
9015         (proc_update_threads): Use gdb_dir_up.
9016         * common/filestuff.h (struct gdb_dir_deleter): New.
9017         (gdb_dir_up): New typedef.
9018
9019 2018-05-04  Tom Tromey  <tom@tromey.com>
9020
9021         * ada-lang.c (print_mention_exception): Use std::string.
9022
9023 2018-05-04  Tom Tromey  <tom@tromey.com>
9024
9025         * ada-lang.c (create_excep_cond_exprs): Update.
9026         (ada_exception_catchpoint_cond_string): Use std::string.
9027
9028 2018-05-04  Tom Tromey  <tom@tromey.com>
9029
9030         * ada-lang.c (xget_renaming_scope): Return std::string.
9031         (old_renaming_is_invisible): Update.
9032
9033 2018-05-04  Tom Tromey  <tom@tromey.com>
9034
9035         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9036         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9037
9038 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9039
9040         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9041
9042 2018-05-04  Tom Tromey  <tom@tromey.com>
9043
9044         * remote.c (remote_query_supported_append): Change type.
9045         (remote_check_symbols): Update.
9046
9047 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9048
9049         PR gdb/11420
9050         * configure.ac: Prepend libpython.
9051         * python/python-config.py: Likewise.
9052         * configure: Regenerate.
9053
9054 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9055
9056         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9057
9058 2018-05-03  Pedro Alves  <palves@redhat.com>
9059
9060         * s390-linux-nat.c
9061         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9062         override.  Write 'true' instead of '1'.
9063         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9064         declaration.
9065
9066 2018-05-02  Pedro Alves  <palves@redhat.com>
9067
9068         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9069         add_inf_child_target.
9070         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9071         add_inf_child_target.
9072         * aix-thread.c (aix_thread_target_info): New.
9073         (aix_thread_target) <shortname, longname, doc>: Delete.
9074         <info>: New.
9075         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9076         add_inf_child_target.
9077         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9078         add_inf_child_target.
9079         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9080         add_inf_child_target.
9081         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9082         add_inf_child_target.
9083         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9084         add_inf_child_target.
9085         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9086         add_inf_child_target.
9087         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9088         add_inf_child_target.
9089         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9090         add_inf_child_target.
9091         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9092         add_inf_child_target.
9093         * bfd-target.c (target_bfd_target_info): New.
9094         (target_bfd) <shortname, longname, doc>: Delete.
9095         <info>: New.
9096         * bsd-kvm.c (bsd_kvm_target_info): New.
9097         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9098         <info>: New.
9099         (bsd_kvm_target::open): Rename to ...
9100         (bsd_kvm_target_open): ... this.  Adjust.
9101         * bsd-uthread.c (bsd_uthread_target_info): New.
9102         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9103         <info>: New.
9104         * corefile.c (core_file_command): Adjust.
9105         * corelow.c (core_target_info): New.
9106         (core_target) <shortname, longname, doc>: Delete.
9107         <info>: New.
9108         (core_target::open): Rename to ...
9109         (core_target_open): ... this.  Adjust.
9110         * ctf.c (ctf_target_info): New.
9111         (ctf_target) <shortname, longname, doc>: Delete.
9112         <info>: New.
9113         (ctf_target::open): Rename to ...
9114         (ctf_target_open): ... this.
9115         (_initialize_ctf): Adjust.
9116         * exec.c (exec_target_info): New.
9117         (exec_target) <shortname, longname, doc>: Delete.
9118         <info>: New.
9119         (exec_target::open): Rename to ...
9120         (exec_target_open): ... this.
9121         * gdbcore.h (core_target_open): Declare.
9122         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9123         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9124         add_inf_child_target.
9125         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9126         add_inf_child_target.
9127         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9128         add_inf_child_target.
9129         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9130         add_inf_child_target.
9131         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9132         add_inf_child_target.
9133         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9134         add_inf_child_target.
9135         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9136         add_inf_child_target.
9137         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9138         add_inf_child_target.
9139         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9140         add_inf_child_target.
9141         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9142         add_inf_child_target.
9143         * inf-child.c (inf_child_target_info): New.
9144         (inf_child_target::info): New.
9145         (inf_child_open_target): Remove 'target' parameter.  Use
9146         get_native_target instead.
9147         (inf_child_target::open): Delete.
9148         (add_inf_child_target): New.
9149         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9150         Delete.
9151         <info>: New.
9152         (add_inf_child_target): Declare.
9153         (inf_child_open_target): Declare.
9154         * linux-thread-db.c (thread_db_target_info): New.
9155         (thread_db_target) <shortname, longname, doc>: Delete.
9156         <info>: New.
9157         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9158         add_inf_child_target.
9159         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9160         add_inf_child_target.
9161         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9162         add_inf_child_target.
9163         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9164         add_inf_child_target.
9165         * make-target-delegates (print_class): Adjust.
9166         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9167         add_inf_child_target.
9168         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9169         add_inf_child_target.
9170         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9171         add_inf_child_target.
9172         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9173         add_inf_child_target.
9174         * nto-procfs.c (nto_native_target_info): New.
9175         (nto_procfs_target_native) <shortname, longname, doc>:
9176         Delete.
9177         <info>: New.
9178         (nto_procfs_target_info): New.
9179         (nto_procfs_target_procfs) <shortname, longname, doc>:
9180         Delete.
9181         <info>: New.
9182         (init_procfs_targets): Adjust.
9183         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9184         add_inf_child_target.
9185         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9186         add_inf_child_target.
9187         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9188         add_inf_child_target.
9189         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9190         add_inf_child_target.
9191         * ravenscar-thread.c (ravenscar_target_info): New.
9192         (ravenscar_thread_target) <shortname, longname, doc>:
9193         Delete.
9194         <info>: New.
9195         * record-btrace.c (record_btrace_target_info):
9196         (record_btrace_target) <shortname, longname, doc>: Delete.
9197         <info>: New.
9198         (record_btrace_target::open): Rename to ...
9199         (record_btrace_target_open): ... this.  Adjust.
9200         * record-full.c (record_longname, record_doc): New.
9201         (record_full_base_target) <shortname, longname, doc>: Delete.
9202         <info>: New.
9203         (record_full_target_info): New.
9204         (record_full_target): <shortname>: Delete.
9205         <info>: New.
9206         (record_full_core_open_1, record_full_open_1): Update comments.
9207         (record_full_base_target::open): Rename to ...
9208         (record_full_open): ... this.
9209         (cmd_record_full_restore): Update.
9210         (_initialize_record_full): Update.
9211         * remote-sim.c (remote_sim_target_info): New.
9212         (gdbsim_target) <shortname, longname, doc>: Delete.
9213         <info>: New.
9214         (gdbsim_target::open): Rename to ...
9215         (gdbsim_target_open): ... this.
9216         (_initialize_remote_sim): Adjust.
9217         * remote.c (remote_doc): New.
9218         (remote_target_info): New.
9219         (remote_target) <shortname, longname, doc>: Delete.
9220         <info>: New.
9221         (extended_remote_target_info): New.
9222         (extended_remote_target) <shortname, longname, doc>: Delete.
9223         <info>: New.
9224         (remote_target::open_1): Make static.  Adjust.
9225         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9226         * s390-linux-nat.c (_initialize_s390_nat): Use
9227         add_inf_child_target.
9228         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9229         add_inf_child_target.
9230         * sol-thread.c (thread_db_target_info): New.
9231         (sol_thread_target) <shortname, longname, doc>: Delete.
9232         <info>: New.
9233         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9234         add_inf_child_target.
9235         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9236         add_inf_child_target.
9237         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9238         add_inf_child_target.
9239         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9240         add_inf_child_target.
9241         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9242         add_inf_child_target.
9243         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9244         add_inf_child_target.
9245         * spu-linux-nat.c (_initialize_spu_nat): Use
9246         add_inf_child_target.
9247         * spu-multiarch.c (spu_multiarch_target_info): New.
9248         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9249         <info>: New.
9250         * target-delegates.c: Regenerate.
9251         * target.c: Include <unordered_map>.
9252         (target_ops_p): Delete.
9253         (DEF_VEC_P(target_ops_p)): Delete.
9254         (target_factories): New.
9255         (test_target_info): New.
9256         (test_target_ops::info): New.
9257         (open_target): Adjust to use target_factories.
9258         (add_target_with_completer): Rename to ...
9259         (add_target): ... this.  Change prototype.  Register target_info
9260         and open callback in target_factories.  Register target_info in
9261         command context instead of target_ops.
9262         (add_target): Delete old implementation.
9263         (add_deprecated_target_alias): Change prototype.  Adjust.
9264         (the_native_target): New.
9265         (set_native_target, get_native_target): New.
9266         (find_default_run_target): Use the_native_target.
9267         (find_attach_target, find_run_target): Simplify.
9268         (target_ops::open): Delete.
9269         (dummy_target_info): New.
9270         (dummy_target::shortname, dummy_target::longname)
9271         (dummy_target::doc): Delete.
9272         (dummy_target::info): New.
9273         (debug_target::shortname, debug_target::longname)
9274         (debug_target::doc): Delete.
9275         (debug_target::info): New.
9276         * target.h (struct target_info): New.
9277         (target_ops::~target_ops): Add comment.
9278         (target_ops::info): New.
9279         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9280         longer virtual.  Implement in terms of target_info.
9281         (set_native_target, get_native_target): Declare.
9282         (target_open_ftype): New.
9283         (add_target, add_target_with_completer)
9284         (add_deprecated_target_alias): Change prototype.
9285         (test_target) <shortname, longname, doc>: Delete.
9286         <info>: New.
9287         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9288         add_inf_child_target.
9289         * tracefile-tfile.c (tfile_target_info): New.
9290         (tfile_target) <shortname, longname, doc>: Delete.
9291         <info>: New.
9292         (tfile_target::open): Rename to ...
9293         (tfile_target_open): ... this.
9294         (_initialize_tracefile_tfile): Adjust.
9295         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9296         add_inf_child_target.
9297         * windows-nat.c (_initialize_windows_nat): Use
9298         add_inf_child_target.
9299         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9300         add_inf_child_target.
9301
9302 2018-05-02  Pedro Alves  <palves@redhat.com>
9303
9304         * linux-nat.h (linux_nat_target) <low_new_thread,
9305         low_delete_thread, low_new_fork, low_forget_process,
9306         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9307         New virtual methods.
9308         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9309         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9310         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9311         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9312         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9313         Delete.
9314         * linux-fork.c (delete_fork): Adjust to call low method.
9315         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9316         (linux_nat_new_fork, linux_nat_forget_process_hook)
9317         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9318         (linux_nat_status_is_event):
9319         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9320         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9321         to call low method.
9322         (sigtrap_is_event): Rename to ...
9323         (linux_nat_target::low_status_is_event): ... this.
9324         (linux_nat_set_status_is_event): Delete.
9325         (save_stop_reason, linux_nat_wait_1)
9326         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9327         low methods.
9328         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9329         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9330         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9331         (linux_nat_set_prepare_to_resume): Delete.
9332         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9333         low virtual methods.
9334         * amd64-linux-nat.c: Likewise.
9335         * arm-linux-nat.c: Likewise.
9336         * i386-linux-nat.c: Likewise.
9337         * ia64-linux-nat.c: Likewise.
9338         * mips-linux-nat.c: Likewise.
9339         * ppc-linux-nat.c: Likewise.
9340         * s390-linux-nat.c: Likewise.
9341         * sparc64-linux-nat.c: Likewise.
9342         * x86-linux-nat.c: Likewise.
9343         * x86-linux-nat.h: Include "nat/x86-linux.h".
9344         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9345         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9346         Override methods.
9347
9348 2018-05-02  Pedro Alves  <palves@redhat.com>
9349
9350         * target.h (target_ops)
9351         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9352         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9353         stopped_by_watchpoint, have_continuable_watchpoint,
9354         stopped_data_address, watchpoint_addr_within_range,
9355         can_accel_watchpoint_condition, can_run, thread_alive,
9356         has_all_memory, has_memory, has_stack, has_registers,
9357         has_execution, can_async_p, is_async_p, supports_non_stop,
9358         always_non_stop_p, can_execute_reverse, supports_multi_process,
9359         supports_enable_disable_tracepoint,
9360         supports_disable_randomization, supports_string_tracing,
9361         supports_evaluation_of_breakpoint_conditions,
9362         can_run_breakpoint_commands, filesystem_is_local,
9363         can_download_tracepoint, get_trace_state_variable_value,
9364         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9365         record_is_replaying, record_will_replay,
9366         augmented_libraries_svr4_read>: Adjust to return bool.
9367         * aarch64-linux-nat.c: All implementations adjusted.
9368         * aix-thread.c: All implementations adjusted.
9369         * arm-linux-nat.c: All implementations adjusted.
9370         * breakpoint.c: All implementations adjusted.
9371         * bsd-kvm.c: All implementations adjusted.
9372         * bsd-uthread.c: All implementations adjusted.
9373         * corelow.c: All implementations adjusted.
9374         * ctf.c: All implementations adjusted.
9375         * darwin-nat.c: All implementations adjusted.
9376         * darwin-nat.h: All implementations adjusted.
9377         * exec.c: All implementations adjusted.
9378         * fbsd-nat.c: All implementations adjusted.
9379         * fbsd-nat.h: All implementations adjusted.
9380         * gnu-nat.c: All implementations adjusted.
9381         * gnu-nat.h: All implementations adjusted.
9382         * go32-nat.c: All implementations adjusted.
9383         * ia64-linux-nat.c: All implementations adjusted.
9384         * inf-child.c: All implementations adjusted.
9385         * inf-child.h: All implementations adjusted.
9386         * inf-ptrace.c: All implementations adjusted.
9387         * inf-ptrace.h: All implementations adjusted.
9388         * linux-nat.c: All implementations adjusted.
9389         * linux-nat.h: All implementations adjusted.
9390         * mips-linux-nat.c: All implementations adjusted.
9391         * nto-procfs.c: All implementations adjusted.
9392         * ppc-linux-nat.c: All implementations adjusted.
9393         * procfs.c: All implementations adjusted.
9394         * ravenscar-thread.c: All implementations adjusted.
9395         * record-btrace.c: All implementations adjusted.
9396         * record-full.c: All implementations adjusted.
9397         * remote-sim.c: All implementations adjusted.
9398         * remote.c: All implementations adjusted.
9399         * s390-linux-nat.c: All implementations adjusted.
9400         * sol-thread.c: All implementations adjusted.
9401         * spu-multiarch.c: All implementations adjusted.
9402         * target-delegates.c: All implementations adjusted.
9403         * target.c: All implementations adjusted.
9404         * target.h: All implementations adjusted.
9405         * tracefile-tfile.c: All implementations adjusted.
9406         * tracefile.c: All implementations adjusted.
9407         * tracefile.h: All implementations adjusted.
9408         * windows-nat.c: All implementations adjusted.
9409         * x86-linux-nat.h: All implementations adjusted.
9410         * x86-nat.h: All implementations adjusted.
9411
9412 2018-05-02  Pedro Alves  <palves@redhat.com>
9413
9414         * make-target-delegates (scan_target_h): Don't trim lines here.
9415         Replace sequences of tabs and/or whitespace with a single
9416         whitespace.
9417         (top level, parsing methods): Trim each line before processing it
9418         here.
9419
9420 2018-05-02  Pedro Alves  <palves@redhat.com>
9421             John Baldwin  <jhb@freebsd.org>
9422
9423         * target.h (enum strata) <debug_stratum>: New.
9424         (struct target_ops) <all delegation methods>: Replace by C++
9425         virtual methods, and drop "to_" prefix.  All references updated
9426         throughout.
9427         <to_shortname, to_longname, to_doc, to_data,
9428         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9429         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9430         virtual methods.  All references updated throughout.
9431         <can_attach, supports_terminal_ours, can_create_inferior,
9432         get_thread_control_capabilities, attach_no_wait>: New
9433         virtual methods.
9434         <insert_breakpoint, remove_breakpoint>: Now
9435         TARGET_DEFAULT_NORETURN methods.
9436         <info_proc>: Now returns bool.
9437         <to_magic>: Delete.
9438         (OPS_MAGIC): Delete.
9439         (current_target): Delete.  All references replaced by references
9440         to ...
9441         (target_stack): ... this.  New.
9442         (target_shortname, target_longname): Adjust.
9443         (target_can_run): Now a function declaration.
9444         (default_child_has_all_memory, default_child_has_memory)
9445         (default_child_has_stack, default_child_has_registers)
9446         (default_child_has_execution): Remove target_ops parameter.
9447         (complete_target_initialization): Delete.
9448         (memory_breakpoint_target): New template class.
9449         (test_target_ops): Refactor as a C++ class with virtual methods.
9450         * make-target-delegates (NAME_PART): Tighten.
9451         (POINTER_PART, CP_SYMBOL): New.
9452         (SIMPLE_RETURN_PART): Reimplement.
9453         (VEC_RETURN_PART): Expect less.
9454         (RETURN_PART, VIRTUAL_PART): New.
9455         (METHOD): Adjust to C++ virtual methods.
9456         (scan_target_h): Remove reference to C99.
9457         (dname): Output "target_ops::" prefix.
9458         (write_function_header): Adjust to output a C++ class method.
9459         (write_declaration): New.
9460         (write_delegator): Adjust to output a C++ class method.
9461         (tdname): Output "dummy_target::" prefix.
9462         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9463         method.
9464         (tdefault_names, debug_names): Delete.
9465         (return_types, tdefaults, styles, argtypes_array): New.
9466         (top level): All methods are delegators.
9467         (print_class): New.
9468         (top level): Print dummy_target and debug_target classes.
9469         * target-delegates.c: Regenerate.
9470         * target-debug.h (target_debug_print_enum_info_proc_what)
9471         (target_debug_print_thread_control_capabilities)
9472         (target_debug_print_thread_info_p): New.
9473         * target.c (dummy_target): Delete.
9474         (the_dummy_target, the_debug_target): New.
9475         (target_stack): Now extern.
9476         (set_targetdebug): Push/unpush debug target.
9477         (default_child_has_all_memory, default_child_has_memory)
9478         (default_child_has_stack, default_child_has_registers)
9479         (default_child_has_execution): Remove target_ops parameter.
9480         (complete_target_initialization): Delete.
9481         (add_target_with_completer): No longer call
9482         complete_target_initialization.
9483         (target_supports_terminal_ours): Use regular delegation.
9484         (update_current_target): Delete.
9485         (push_target): No longer check magic number.  Don't call
9486         update_current_target.
9487         (unpush_target): Don't call update_current_target.
9488         (target_is_pushed): No longer check magic number.
9489         (target_require_runnable): Skip for all stratums over
9490         process_stratum.
9491         (target_ops::info_proc): New.
9492         (target_info_proc): Use find_target_at and
9493         find_default_run_target.
9494         (target_supports_disable_randomization): Use regular delegation.
9495         (target_get_osdata): Use find_target_at.
9496         (target_ops::open, target_ops::close, target_ops::can_attach)
9497         (target_ops::attach, target_ops::can_create_inferior)
9498         (target_ops::create_inferior, target_ops::can_run)
9499         (target_can_run): New.
9500         (default_fileio_target): Use regular delegation.
9501         (target_ops::fileio_open, target_ops::fileio_pwrite)
9502         (target_ops::fileio_pread, target_ops::fileio_fstat)
9503         (target_ops::fileio_close, target_ops::fileio_unlink)
9504         (target_ops::fileio_readlink): New.
9505         (target_fileio_open_1, target_fileio_unlink)
9506         (target_fileio_readlink): Always call the target method.  Handle
9507         FILEIO_ENOSYS.
9508         (return_zero, return_zero_has_execution): Delete.
9509         (init_dummy_target): Delete.
9510         (dummy_target::dummy_target, dummy_target::shortname)
9511         (dummy_target::longname, dummy_target::doc)
9512         (debug_target::debug_target, debug_target::shortname)
9513         (debug_target::longname, debug_target::doc): New.
9514         (target_supports_delete_record): Use regular delegation.
9515         (setup_target_debug): Delete.
9516         (maintenance_print_target_stack): Skip debug_stratum.
9517         (initialize_targets): Instantiate the_dummy_target and
9518         the_debug_target.
9519         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9520         use target_stack.
9521         (target_auxv_search, fprint_target_auxv): Adjust.
9522         (info_auxv_command): Adjust to use target_stack.
9523         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9524         * exceptions.c (print_flush): Handle a NULL target_stack.
9525         * regcache.c (target_ops_no_register): Refactor as class with
9526         virtual methods.
9527
9528         * exec.c (exec_target): New class.
9529         (exec_ops): Now an exec_target.
9530         (exec_open, exec_close_1, exec_get_section_table)
9531         (exec_xfer_partial, exec_files_info, exec_has_memory)
9532         (exec_make_note_section): Refactor as exec_target methods.
9533         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9534         Delete.
9535         (exec_target::find_memory_regions): New.
9536         (_initialize_exec): Don't call init_exec_ops.
9537         * gdbcore.h (exec_file_clear): Delete.
9538
9539         * corefile.c (core_target): Delete.
9540         (core_file_command): Adjust.
9541         * corelow.c (core_target): New class.
9542         (the_core_target): New.
9543         (core_close): Remove target_ops parameter.
9544         (core_close_cleanup): Adjust.
9545         (core_target::close): New.
9546         (core_open, core_detach, get_core_registers, core_files_info)
9547         (core_xfer_partial, core_thread_alive, core_read_description)
9548         (core_pid_to_str, core_thread_name, core_has_memory)
9549         (core_has_stack, core_has_registers, core_info_proc): Rework as
9550         core_target methods.
9551         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9552         (_initialize_corelow): Initialize the_core_target.
9553         * gdbcore.h (core_target): Delete.
9554         (the_core_target): New.
9555
9556         * ctf.c: (ctf_target): New class.
9557         (ctf_ops): Now a ctf_target.
9558         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9559         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9560         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9561         methods.
9562         (init_ctf_ops): Delete.
9563         (_initialize_ctf): Don't call it.
9564         * tracefile-tfile.c (tfile_target): New class.
9565         (tfile_ops): Now a tfile_target.
9566         (tfile_open, tfile_close, tfile_files_info)
9567         (tfile_get_tracepoint_status, tfile_trace_find)
9568         (tfile_fetch_registers, tfile_xfer_partial)
9569         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9570         Refactor as tfile_target methods.
9571         (tfile_xfer_partial_features): Remove target_ops parameter.
9572         (init_tfile_ops): Delete.
9573         (_initialize_tracefile_tfile): Don't call it.
9574         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9575         (tracefile_has_stack, tracefile_has_registers)
9576         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9577         tracefile_target methods.
9578         (init_tracefile_ops): Delete.
9579         (tracefile_target::tracefile_target): New.
9580         * tracefile.h: Include "target.h".
9581         (tracefile_target): New class.
9582         (init_tracefile_ops): Delete.
9583
9584         * spu-multiarch.c (spu_multiarch_target): New class.
9585         (spu_ops): Now a spu_multiarch_target.
9586         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9587         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9588         (spu_search_memory, spu_mourn_inferior): Refactor as
9589         spu_multiarch_target methods.
9590         (init_spu_ops): Delete.
9591         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9592         complete_target_initialization.
9593
9594         * ravenscar-thread.c (ravenscar_thread_target): New class.
9595         (ravenscar_ops): Now a ravenscar_thread_target.
9596         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9597         (ravenscar_thread_alive, ravenscar_pid_to_str)
9598         (ravenscar_fetch_registers, ravenscar_store_registers)
9599         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9600         (ravenscar_stopped_by_hw_breakpoint)
9601         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9602         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9603         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9604         methods.
9605         (init_ravenscar_thread_ops): Delete.
9606         (_initialize_ravenscar): Remove references to
9607         init_ravenscar_thread_ops and complete_target_initialization.
9608
9609         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9610         (bsd_uthread_target): New class.
9611         (bsd_uthread_ops): Now a bsd_uthread_target.
9612         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9613         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9614         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9615         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9616         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9617         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9618         (bsd_uthread_target): Delete function.
9619         (_initialize_bsd_uthread): Remove reference to
9620         complete_target_initialization.
9621
9622         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9623         (target_bfd): ... this new class.
9624         (target_bfd_xfer_partial, target_bfd_get_section_table)
9625         (target_bfd_close): Refactor as target_bfd methods.
9626         (target_bfd::~target_bfd): New.
9627         (target_bfd_reopen): Adjust.
9628         (target_bfd::close): New.
9629
9630         * record-btrace.c (record_btrace_target): New class.
9631         (record_btrace_ops): Now a record_btrace_target.
9632         (record_btrace_open, record_btrace_stop_recording)
9633         (record_btrace_disconnect, record_btrace_close)
9634         (record_btrace_async, record_btrace_info)
9635         (record_btrace_insn_history, record_btrace_insn_history_range)
9636         (record_btrace_insn_history_from, record_btrace_call_history)
9637         (record_btrace_call_history_range)
9638         (record_btrace_call_history_from, record_btrace_record_method)
9639         (record_btrace_is_replaying, record_btrace_will_replay)
9640         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9641         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9642         (record_btrace_store_registers, record_btrace_prepare_to_store)
9643         (record_btrace_to_get_unwinder)
9644         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9645         (record_btrace_commit_resume, record_btrace_wait)
9646         (record_btrace_stop, record_btrace_can_execute_reverse)
9647         (record_btrace_stopped_by_sw_breakpoint)
9648         (record_btrace_supports_stopped_by_sw_breakpoint)
9649         (record_btrace_stopped_by_hw_breakpoint)
9650         (record_btrace_supports_stopped_by_hw_breakpoint)
9651         (record_btrace_update_thread_list, record_btrace_thread_alive)
9652         (record_btrace_goto_begin, record_btrace_goto_end)
9653         (record_btrace_goto, record_btrace_stop_replaying_all)
9654         (record_btrace_execution_direction)
9655         (record_btrace_prepare_to_generate_core)
9656         (record_btrace_done_generating_core): Refactor as
9657         record_btrace_target methods.
9658         (init_record_btrace_ops): Delete.
9659         (_initialize_record_btrace): Remove reference to
9660         init_record_btrace_ops.
9661         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9662         the execution_direction global.
9663         (record_full_base_target, record_full_target)
9664         (record_full_core_target): New classes.
9665         (record_full_ops): Now a record_full_target.
9666         (record_full_core_ops): Now a record_full_core_target.
9667         (record_full_target::detach, record_full_target::disconnect)
9668         (record_full_core_target::disconnect)
9669         (record_full_target::mourn_inferior, record_full_target::kill):
9670         New.
9671         (record_full_open, record_full_close, record_full_async): Refactor
9672         as methods of the record_full_base_target class.
9673         (record_full_resume, record_full_commit_resume): Refactor
9674         as methods of the record_full_target class.
9675         (record_full_wait, record_full_stopped_by_watchpoint)
9676         (record_full_stopped_data_address)
9677         (record_full_stopped_by_sw_breakpoint)
9678         (record_full_supports_stopped_by_sw_breakpoint)
9679         (record_full_stopped_by_hw_breakpoint)
9680         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9681         methods of the record_full_base_target class.
9682         (record_full_store_registers, record_full_xfer_partial)
9683         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9684         Refactor as methods of the record_full_target class.
9685         (record_full_can_execute_reverse, record_full_get_bookmark)
9686         (record_full_goto_bookmark, record_full_execution_direction)
9687         (record_full_record_method, record_full_info, record_full_delete)
9688         (record_full_is_replaying, record_full_will_replay)
9689         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9690         (record_full_stop_replaying): Refactor as methods of the
9691         record_full_base_target class.
9692         (record_full_core_resume, record_full_core_kill)
9693         (record_full_core_fetch_registers)
9694         (record_full_core_prepare_to_store)
9695         (record_full_core_store_registers, record_full_core_xfer_partial)
9696         (record_full_core_insert_breakpoint)
9697         (record_full_core_remove_breakpoint)
9698         (record_full_core_has_execution): Refactor
9699         as methods of the record_full_core_target class.
9700         (record_full_base_target::supports_delete_record): New.
9701         (init_record_full_ops): Delete.
9702         (init_record_full_core_ops): Delete.
9703         (record_full_save): Refactor as method of the
9704         record_full_base_target class.
9705         (_initialize_record_full): Remove references to
9706         init_record_full_ops and init_record_full_core_ops.
9707
9708         * remote.c (remote_target, extended_remote_target): New classes.
9709         (remote_ops): Now a remote_target.
9710         (extended_remote_ops): Now an extended_remote_target.
9711         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9712         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9713         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9714         (remote_pass_signals, remote_set_syscall_catchpoint)
9715         (remote_program_signals, )
9716         (remote_thread_always_alive): Remove target_ops parameter.
9717         (remote_thread_alive, remote_thread_name)
9718         (remote_update_thread_list, remote_threads_extra_info)
9719         (remote_static_tracepoint_marker_at)
9720         (remote_static_tracepoint_markers_by_strid)
9721         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9722         (remote_open): Refactor as methods of remote_target.
9723         (extended_remote_open, extended_remote_detach)
9724         (extended_remote_attach, extended_remote_post_attach):
9725         (extended_remote_supports_disable_randomization)
9726         (extended_remote_create_inferior): : Refactor as method of
9727         extended_remote_target.
9728         (remote_set_permissions, remote_open_1, remote_detach)
9729         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9730         (remote_resume, remote_commit_resume, remote_stop)
9731         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9732         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9733         (remote_prepare_to_store, remote_store_registers)
9734         (remote_flash_erase, remote_flash_done, remote_files_info)
9735         (remote_kill, remote_mourn, remote_insert_breakpoint)
9736         (remote_remove_breakpoint, remote_insert_watchpoint)
9737         (remote_watchpoint_addr_within_range)
9738         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9739         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9740         (remote_supports_stopped_by_sw_breakpoint)
9741         (remote_stopped_by_hw_breakpoint)
9742         (remote_supports_stopped_by_hw_breakpoint)
9743         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9744         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9745         (remote_verify_memory): Refactor as methods of remote_target.
9746         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9747         parameter.
9748         (remote_xfer_partial, remote_get_memory_xfer_limit)
9749         (remote_search_memory, remote_rcmd, remote_memory_map)
9750         (remote_pid_to_str, remote_get_thread_local_address)
9751         (remote_get_tib_address, remote_read_description): Refactor as
9752         methods of remote_target.
9753         (remote_target::fileio_open, remote_target::fileio_pwrite)
9754         (remote_target::fileio_pread, remote_target::fileio_close): New.
9755         (remote_hostio_readlink, remote_hostio_fstat)
9756         (remote_filesystem_is_local, remote_can_execute_reverse)
9757         (remote_supports_non_stop, remote_supports_disable_randomization)
9758         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9759         (remote_supports_enable_disable_tracepoint)
9760         (remote_supports_string_tracing)
9761         (remote_can_run_breakpoint_commands, remote_trace_init)
9762         (remote_download_tracepoint, remote_can_download_tracepoint)
9763         (remote_download_trace_state_variable, remote_enable_tracepoint)
9764         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9765         (remote_trace_start, remote_get_trace_status)
9766         (remote_get_tracepoint_status, remote_trace_stop)
9767         (remote_trace_find, remote_get_trace_state_variable_value)
9768         (remote_save_trace_data, remote_get_raw_trace_data)
9769         (remote_set_disconnected_tracing, remote_core_of_thread)
9770         (remote_set_circular_trace_buffer, remote_traceframe_info)
9771         (remote_get_min_fast_tracepoint_insn_len)
9772         (remote_set_trace_buffer_size, remote_set_trace_notes)
9773         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9774         (remote_disable_btrace, remote_teardown_btrace)
9775         (remote_read_btrace, remote_btrace_conf)
9776         (remote_augmented_libraries_svr4_read, remote_load)
9777         (remote_pid_to_exec_file, remote_can_do_single_step)
9778         (remote_execution_direction, remote_thread_handle_to_thread_info):
9779         Refactor as methods of remote_target.
9780         (init_remote_ops, init_extended_remote_ops): Delete.
9781         (remote_can_async_p, remote_is_async_p, remote_async)
9782         (remote_thread_events, remote_upload_tracepoints)
9783         (remote_upload_trace_state_variables): Refactor as methods of
9784         remote_target.
9785         (_initialize_remote): Remove references to init_remote_ops and
9786         init_extended_remote_ops.
9787
9788         * remote-sim.c (gdbsim_target): New class.
9789         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9790         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9791         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9792         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9793         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9794         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9795         Refactor as methods of gdbsim_target.
9796         (gdbsim_ops): Now a gdbsim_target.
9797         (init_gdbsim_ops): Delete.
9798         (gdbsim_cntrl_c): Adjust.
9799         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9800
9801         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9802         (the_amd64_linux_nat_target): New.
9803         (amd64_linux_fetch_inferior_registers)
9804         (amd64_linux_store_inferior_registers): Refactor as methods of
9805         amd64_linux_nat_target.
9806         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9807         * i386-linux-nat.c: Don't include "linux-nat.h".
9808         (i386_linux_nat_target): New class.
9809         (the_i386_linux_nat_target): New.
9810         (i386_linux_fetch_inferior_registers)
9811         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9812         as methods of i386_linux_nat_target.
9813         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9814         * inf-child.c (inf_child_ops): Delete.
9815         (inf_child_fetch_inferior_registers)
9816         (inf_child_store_inferior_registers): Delete.
9817         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9818         methods of inf_child_target.
9819         (inf_child_target::supports_terminal_ours)
9820         (inf_child_target::terminal_init)
9821         (inf_child_target::terminal_inferior)
9822         (inf_child_target::terminal_ours_for_output)
9823         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9824         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9825         New.
9826         (inf_child_open, inf_child_disconnect, inf_child_close)
9827         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9828         (inf_child_post_startup_inferior, inf_child_can_run)
9829         (inf_child_pid_to_exec_file): Refactor as methods of
9830         inf_child_target.
9831         (inf_child_follow_fork): Delete.
9832         (inf_child_target::can_create_inferior)
9833         (inf_child_target::can_attach): New.
9834         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9835         (inf_child_target::has_stack, inf_child_target::has_registers)
9836         (inf_child_target::has_execution): New.
9837         (inf_child_fileio_open, inf_child_fileio_pwrite)
9838         (inf_child_fileio_pread, inf_child_fileio_fstat)
9839         (inf_child_fileio_close, inf_child_fileio_unlink)
9840         (inf_child_fileio_readlink, inf_child_use_agent)
9841         (inf_child_can_use_agent): Refactor as methods of
9842         inf_child_target.
9843         (return_zero, inf_child_target): Delete.
9844         (inf_child_target::inf_child_target): New.
9845         * inf-child.h: Include "target.h".
9846         (inf_child_target): Delete function prototype.
9847         (inf_child_target): New class.
9848         (inf_child_open_target, inf_child_mourn_inferior)
9849         (inf_child_maybe_unpush_target): Delete.
9850         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9851         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9852         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9853         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9854         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9855         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9856         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9857         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9858         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9859         methods of inf_ptrace_target.
9860         (inf_ptrace_target): Delete function.
9861         * inf-ptrace.h: Include "inf-child.h".
9862         (inf_ptrace_target): Delete function declaration.
9863         (inf_ptrace_target): New class.
9864         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9865         * linux-nat.c (linux_target): New.
9866         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9867         (linux_nat_target::~linux_nat_target): New.
9868         (linux_child_post_attach, linux_child_post_startup_inferior)
9869         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9870         (linux_child_remove_fork_catchpoint)
9871         (linux_child_insert_vfork_catchpoint)
9872         (linux_child_remove_vfork_catchpoint)
9873         (linux_child_insert_exec_catchpoint)
9874         (linux_child_remove_exec_catchpoint)
9875         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9876         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9877         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9878         (linux_nat_stopped_data_address)
9879         (linux_nat_stopped_by_sw_breakpoint)
9880         (linux_nat_supports_stopped_by_sw_breakpoint)
9881         (linux_nat_stopped_by_hw_breakpoint)
9882         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9883         (linux_nat_kill, linux_nat_mourn_inferior)
9884         (linux_nat_xfer_partial, linux_nat_thread_alive)
9885         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9886         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9887         (linux_child_static_tracepoint_markers_by_strid)
9888         (linux_nat_is_async_p, linux_nat_can_async_p)
9889         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9890         (linux_nat_supports_multi_process)
9891         (linux_nat_supports_disable_randomization, linux_nat_async)
9892         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9893         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9894         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9895         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9896         methods of linux_nat_target.
9897         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9898         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9899         parameter.
9900         (check_stopped_by_watchpoint): Adjust.
9901         (linux_xfer_partial): Delete.
9902         (linux_target_install_ops, linux_target, linux_nat_add_target):
9903         Delete.
9904         (linux_nat_target::linux_nat_target): New.
9905         * linux-nat.h: Include "inf-ptrace.h".
9906         (linux_nat_target): New.
9907         (linux_target, linux_target_install_ops, linux_nat_add_target):
9908         Delete function declarations.
9909         (linux_target): Declare global.
9910         * linux-thread-db.c (thread_db_target): New.
9911         (thread_db_target::thread_db_target): New.
9912         (thread_db_ops): Delete.
9913         (the_thread_db_target): New.
9914         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9915         (thread_db_update_thread_list, thread_db_pid_to_str)
9916         (thread_db_extra_thread_info)
9917         (thread_db_thread_handle_to_thread_info)
9918         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9919         (thread_db_resume): Refactor as methods of thread_db_target.
9920         (init_thread_db_ops): Delete.
9921         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9922         * x86-linux-nat.c: Don't include "linux-nat.h".
9923         (super_post_startup_inferior): Delete.
9924         (x86_linux_nat_target::~x86_linux_nat_target): New.
9925         (x86_linux_child_post_startup_inferior)
9926         (x86_linux_read_description, x86_linux_enable_btrace)
9927         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9928         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9929         methods of x86_linux_nat_target.
9930         (x86_linux_create_target): Delete.  Bits folded ...
9931         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9932         pointer.
9933         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9934         (x86_linux_nat_target): New class.
9935         (x86_linux_create_target): Delete.
9936         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9937         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9938         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9939         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9940         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9941         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9942         make extern.
9943         (x86_use_watchpoints): Delete.
9944         * x86-nat.h: Include "breakpoint.h" and "target.h".
9945         (x86_use_watchpoints): Delete.
9946         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9947         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9948         (x86_insert_watchpoint, x86_remove_watchpoint)
9949         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9950         (x86_stopped_by_hw_breakpoint): New declarations.
9951         (x86_nat_target): New template class.
9952
9953         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9954         (the_ppc_linux_nat_target): New.
9955         (ppc_linux_fetch_inferior_registers)
9956         (ppc_linux_can_use_hw_breakpoint)
9957         (ppc_linux_region_ok_for_hw_watchpoint)
9958         (ppc_linux_ranged_break_num_registers)
9959         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9960         (ppc_linux_insert_mask_watchpoint)
9961         (ppc_linux_remove_mask_watchpoint)
9962         (ppc_linux_can_accel_watchpoint_condition)
9963         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9964         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9965         (ppc_linux_watchpoint_addr_within_range)
9966         (ppc_linux_masked_watch_num_registers)
9967         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9968         (ppc_linux_read_description): Refactor as methods of
9969         ppc_linux_nat_target.
9970         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9971
9972         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9973         (procfs_target): New class.
9974         (the_procfs_target): New.
9975         (procfs_target): Delete function.
9976         (procfs_auxv_parse, procfs_attach, procfs_detach)
9977         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9978         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9979         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9980         (procfs_create_inferior, procfs_update_thread_list)
9981         (procfs_thread_alive, procfs_pid_to_str)
9982         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9983         (procfs_stopped_data_address, procfs_insert_watchpoint)
9984         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9985         (proc_find_memory_regions, procfs_info_proc)
9986         (procfs_make_note_section): Refactor as methods of procfs_target.
9987         (_initialize_procfs): Adjust.
9988         * sol-thread.c (sol_thread_target): New class.
9989         (sol_thread_ops): Now a sol_thread_target.
9990         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9991         (sol_thread_fetch_registers, sol_thread_store_registers)
9992         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9993         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9994         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9995         (init_sol_thread_ops): Delete.
9996         (_initialize_sol_thread): Adjust.  Remove references to
9997         init_sol_thread_ops and complete_target_initialization.
9998
9999         * windows-nat.c (windows_nat_target): New class.
10000         (windows_fetch_inferior_registers)
10001         (windows_store_inferior_registers, windows_resume, windows_wait)
10002         (windows_attach, windows_detach, windows_pid_to_exec_file)
10003         (windows_files_info, windows_create_inferior)
10004         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10005         (windows_close, windows_pid_to_str, windows_xfer_partial)
10006         (windows_get_tib_address, windows_get_ada_task_ptid)
10007         (windows_thread_name, windows_thread_alive): Refactor as
10008         windows_nat_target methods.
10009         (do_initial_windows_stuff): Adjust.
10010         (windows_target): Delete function.
10011         (_initialize_windows_nat): Adjust.
10012
10013         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10014         (darwin_mourn_inferior, darwin_kill_inferior)
10015         (darwin_create_inferior, darwin_attach, darwin_detach)
10016         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10017         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10018         (darwin_supports_multi_process): Refactor as darwin_nat_target
10019         methods.
10020         (darwin_resume_to, darwin_files_info): Delete.
10021         (_initialize_darwin_inferior): Rename to ...
10022         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10023         * darwin-nat.h: Include "inf-child.h".
10024         (darwin_nat_target): New class.
10025         (darwin_complete_target): Delete.
10026         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10027         (darwin_target): New.
10028         (i386_darwin_fetch_inferior_registers)
10029         (i386_darwin_store_inferior_registers): Refactor as methods of
10030         darwin_nat_target.
10031         (darwin_complete_target): Delete, with ...
10032         (_initialize_i386_darwin_nat): ... bits factored out here.
10033
10034         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10035         (the_alpha_linux_nat_target): New.
10036         (alpha_linux_register_u_offset): Refactor as
10037         alpha_linux_nat_target method.
10038         (_initialize_alpha_linux_nat): Adjust.
10039         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10040         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10041         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10042         methods of linux_nat_trad_target.
10043         (linux_trad_target): Delete.
10044         * linux-nat-trad.h (linux_trad_target): Delete function.
10045         (linux_nat_trad_target): New class.
10046         * mips-linux-nat.c (mips_linux_nat_target): New class.
10047         (super_fetch_registers, super_store_registers, super_close):
10048         Delete.
10049         (the_mips_linux_nat_target): New.
10050         (mips64_linux_regsets_fetch_registers)
10051         (mips64_linux_regsets_store_registers)
10052         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10053         (mips_linux_register_u_offset, mips_linux_read_description)
10054         (mips_linux_can_use_hw_breakpoint)
10055         (mips_linux_stopped_by_watchpoint)
10056         (mips_linux_stopped_data_address)
10057         (mips_linux_region_ok_for_hw_watchpoint)
10058         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10059         (mips_linux_close): Refactor as methods of mips_linux_nat.
10060         (_initialize_mips_linux_nat): Adjust to C++ification.
10061
10062         * aix-thread.c (aix_thread_target): New class.
10063         (aix_thread_ops): Now an aix_thread_target.
10064         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10065         (aix_thread_fetch_registers, aix_thread_store_registers)
10066         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10067         (aix_thread_thread_alive, aix_thread_pid_to_str)
10068         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10069         Refactor as methods of aix_thread_target.
10070         (init_aix_thread_ops): Delete.
10071         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10072         and complete_target_initialization.
10073         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10074         (rs6000_nat_target): New class.
10075         (the_rs6000_nat_target): New.
10076         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10077         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10078         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10079         (super_create_inferior): Delete.
10080         (_initialize_rs6000_nat): Adjust to C++ification.
10081
10082         * arm-linux-nat.c (arm_linux_nat_target): New class.
10083         (the_arm_linux_nat_target): New.
10084         (arm_linux_fetch_inferior_registers)
10085         (arm_linux_store_inferior_registers, arm_linux_read_description)
10086         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10087         (arm_linux_remove_hw_breakpoint)
10088         (arm_linux_region_ok_for_hw_watchpoint)
10089         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10090         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10091         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10092         arm_linux_nat_target.
10093         (_initialize_arm_linux_nat): Adjust to C++ification.
10094
10095         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10096         (the_aarch64_linux_nat_target): New.
10097         (aarch64_linux_fetch_inferior_registers)
10098         (aarch64_linux_store_inferior_registers)
10099         (aarch64_linux_child_post_startup_inferior)
10100         (aarch64_linux_read_description)
10101         (aarch64_linux_can_use_hw_breakpoint)
10102         (aarch64_linux_insert_hw_breakpoint)
10103         (aarch64_linux_remove_hw_breakpoint)
10104         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10105         (aarch64_linux_region_ok_for_hw_watchpoint)
10106         (aarch64_linux_stopped_data_address)
10107         (aarch64_linux_stopped_by_watchpoint)
10108         (aarch64_linux_watchpoint_addr_within_range)
10109         (aarch64_linux_can_do_single_step): Refactor as methods of
10110         aarch64_linux_nat_target.
10111         (super_post_startup_inferior): Delete.
10112         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10113
10114         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10115         (the_hppa_linux_nat_target): New.
10116         (hppa_linux_fetch_inferior_registers)
10117         (hppa_linux_store_inferior_registers): Refactor as methods of
10118         hppa_linux_nat_target.
10119         (_initialize_hppa_linux_nat): Adjust to C++ification.
10120
10121         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10122         (the_ia64_linux_nat_target): New.
10123         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10124         (ia64_linux_stopped_data_address)
10125         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10126         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10127         ia64_linux_nat_target methods.
10128         (super_xfer_partial): Delete.
10129         (_initialize_ia64_linux_nat): Adjust to C++ification.
10130
10131         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10132         (the_m32r_linux_nat_target): New.
10133         (m32r_linux_fetch_inferior_registers)
10134         (m32r_linux_store_inferior_registers): Refactor as
10135         m32r_linux_nat_target methods.
10136         (_initialize_m32r_linux_nat): Adjust to C++ification.
10137
10138         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10139         (the_m68k_linux_nat_target): New.
10140         (m68k_linux_fetch_inferior_registers)
10141         (m68k_linux_store_inferior_registers): Refactor as
10142         m68k_linux_nat_target methods.
10143         (_initialize_m68k_linux_nat): Adjust to C++ification.
10144
10145         * s390-linux-nat.c (s390_linux_nat_target): New class.
10146         (the_s390_linux_nat_target): New.
10147         (s390_linux_fetch_inferior_registers)
10148         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10149         (s390_insert_watchpoint, s390_remove_watchpoint)
10150         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10151         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10152         (s390_auxv_parse, s390_read_description): Refactor as methods of
10153         s390_linux_nat_target.
10154         (_initialize_s390_nat): Adjust to C++ification.
10155
10156         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10157         (the_sparc_linux_nat_target): New.
10158         (_initialize_sparc_linux_nat): Adjust to C++ification.
10159         * sparc-nat.c (sparc_fetch_inferior_registers)
10160         (sparc_store_inferior_registers): Remove target_ops parameter.
10161         * sparc-nat.h (sparc_fetch_inferior_registers)
10162         (sparc_store_inferior_registers): Remove target_ops parameter.
10163         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10164         (the_sparc64_linux_nat_target): New.
10165         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10166
10167         * spu-linux-nat.c (spu_linux_nat_target): New class.
10168         (the_spu_linux_nat_target): New.
10169         (spu_child_post_startup_inferior, spu_child_post_attach)
10170         (spu_child_wait, spu_fetch_inferior_registers)
10171         (spu_store_inferior_registers, spu_xfer_partial)
10172         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10173         methods.
10174         (_initialize_spu_nat): Adjust to C++ification.
10175
10176         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10177         (the_tilegx_linux_nat_target): New.
10178         (fetch_inferior_registers, store_inferior_registers):
10179         Refactor as methods.
10180         (_initialize_tile_linux_nat): Adjust to C++ification.
10181
10182         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10183         (the_xtensa_linux_nat_target): New.
10184         (xtensa_linux_fetch_inferior_registers)
10185         (xtensa_linux_store_inferior_registers): Refactor as
10186         xtensa_linux_nat_target methods.
10187         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10188
10189         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10190         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10191         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10192         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10193         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10194         (fbsd_stopped_by_sw_breakpoint)
10195         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10196         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10197         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10198         (fbsd_post_startup_inferior, fbsd_post_attach)
10199         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10200         (fbsd_set_syscall_catchpoint)
10201         (super_xfer_partial, super_resume, super_wait)
10202         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10203         (fbsd_handle_debug_trap): Remove target_ops parameter.
10204         (fbsd_nat_add_target): Delete.
10205         * fbsd-nat.h: Include "inf-ptrace.h".
10206         (fbsd_nat_add_target): Delete.
10207         (USE_SIGTRAP_SIGINFO): Define.
10208         (fbsd_nat_target): New class.
10209
10210         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10211         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10212         (amd64bsd_target): Delete.
10213         * amd64-bsd-nat.h: New file.
10214         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10215         "x86-bsd-nat.h".
10216         (amd64_fbsd_nat_target): New class.
10217         (the_amd64_fbsd_nat_target): New.
10218         (amd64fbsd_read_description): Refactor as method of
10219         amd64_fbsd_nat_target.
10220         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10221         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10222         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10223         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10224         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10225         (i386bsd_target): Delete.
10226         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10227         (i386bsd_fetch_inferior_registers)
10228         (i386bsd_store_inferior_registers): Declare.
10229         (i386_bsd_nat_target): New class.
10230         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10231         (the_i386_fbsd_nat_target): New.
10232         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10233         i386_fbsd_nat_target methods.
10234         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10235         (_initialize_i386fbsd_nat): Adjust to C++ification.
10236         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10237         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10238         (_initialize_x86_bsd_nat): Adjust to C++ification.
10239         * x86-bsd-nat.h: Include "x86-nat.h".
10240         (x86bsd_target): Delete declaration.
10241         (x86bsd_nat_target): New class.
10242
10243         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10244         (the_aarch64_fbsd_nat_target): New.
10245         (aarch64_fbsd_fetch_inferior_registers)
10246         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10247         aarch64_fbsd_nat_target.
10248         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10249         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10250         (the_alpha_bsd_nat_target): New.
10251         (alphabsd_fetch_inferior_registers)
10252         (alphabsd_store_inferior_registers): Refactor as
10253         alpha_bsd_nat_target methods.
10254         (_initialize_alphabsd_nat): Refactor as methods of
10255         alpha_bsd_nat_target.
10256         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10257         (the_amd64_nbsd_nat_target): New.
10258         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10259         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10260         (the_amd64_obsd_nat_target): New.
10261         (_initialize_amd64obsd_nat): Adjust to C++ification.
10262         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10263         (the_arm_fbsd_nat_target): New.
10264         (arm_fbsd_fetch_inferior_registers)
10265         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10266         (_initialize_arm_fbsd_nat): Refactor as methods of
10267         arm_fbsd_nat_target.
10268         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10269         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10270         (the_arm_netbsd_nat_target): New.
10271         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10272         arm_netbsd_nat_target.
10273         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10274         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10275         (the_hppa_nbsd_nat_target): New.
10276         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10277         hppa_nbsd_nat_target methods.
10278         (_initialize_hppanbsd_nat): Adjust to C++ification.
10279         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10280         (the_hppa_obsd_nat_target): New.
10281         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10282         methods of hppa_obsd_nat_target.
10283         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10284         add_target.
10285         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10286         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10287         add_target.
10288         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10289         (_initialize_i386obsd_nat): Use add_target.
10290         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10291         (the_m68k_bsd_nat_target): New.
10292         (m68kbsd_fetch_inferior_registers)
10293         (m68kbsd_store_inferior_registers): Refactor as methods of
10294         m68k_bsd_nat_target.
10295         (_initialize_m68kbsd_nat): Adjust to C++ification.
10296         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10297         (the_mips_fbsd_nat_target): New.
10298         (mips_fbsd_fetch_inferior_registers)
10299         (mips_fbsd_store_inferior_registers): Refactor as methods of
10300         mips_fbsd_nat_target.
10301         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10302         add_target.
10303         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10304         (the_mips_nbsd_nat_target): New.
10305         (mipsnbsd_fetch_inferior_registers)
10306         (mipsnbsd_store_inferior_registers): Refactor as methods of
10307         mips_nbsd_nat_target.
10308         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10309         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10310         (the_mips64_obsd_nat_target): New.
10311         (mips64obsd_fetch_inferior_registers)
10312         (mips64obsd_store_inferior_registers): Refactor as methods of
10313         mips64_obsd_nat_target.
10314         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10315         add_target.
10316         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10317         nbsd_nat_target.
10318         * nbsd-nat.h: Include "inf-ptrace.h".
10319         (nbsd_nat_target): New class.
10320         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10321         (obsd_wait): Refactor as methods of obsd_nat_target.
10322         (obsd_add_target): Delete.
10323         * obsd-nat.h: Include "inf-ptrace.h".
10324         (obsd_nat_target): New class.
10325         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10326         (the_ppc_fbsd_nat_target): New.
10327         (ppcfbsd_fetch_inferior_registers)
10328         (ppcfbsd_store_inferior_registers): Refactor as methods of
10329         ppc_fbsd_nat_target.
10330         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10331         add_target.
10332         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10333         (the_ppc_nbsd_nat_target): New.
10334         (ppcnbsd_fetch_inferior_registers)
10335         (ppcnbsd_store_inferior_registers): Refactor as methods of
10336         ppc_nbsd_nat_target.
10337         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10338         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10339         (the_ppc_obsd_nat_target): New.
10340         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10341         methods of ppc_obsd_nat_target.
10342         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10343         add_target.
10344         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10345         (the_sh_nbsd_nat_target): New.
10346         (shnbsd_fetch_inferior_registers)
10347         (shnbsd_store_inferior_registers): Refactor as methods of
10348         sh_nbsd_nat_target.
10349         (_initialize_shnbsd_nat): Adjust to C++ification.
10350         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10351         (inf_ptrace_xfer_partial): Delete.
10352         (sparc_xfer_partial, sparc_target): Delete.
10353         * sparc-nat.h (sparc_fetch_inferior_registers)
10354         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10355         (sparc_target): Delete function declaration.
10356         (sparc_target): New template class.
10357         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10358         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10359         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10360         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10361         add_target.
10362         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10363         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10364         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10365         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10366         add_target.
10367         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10368         (the_vax_bsd_nat_target): New.
10369         (vaxbsd_fetch_inferior_registers)
10370         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10371         methods.
10372         (_initialize_vaxbsd_nat): Adjust to C++ification.
10373
10374         * bsd-kvm.c (bsd_kvm_target): New class.
10375         (bsd_kvm_ops): Now a bsd_kvm_target.
10376         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10377         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10378         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10379         bsd_kvm_target.
10380         (bsd_kvm_return_one): Delete.
10381         (bsd_kvm_add_target): Adjust to C++ification.
10382
10383         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10384         (nto_procfs_target_procfs): New classes.
10385         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10386         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10387         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10388         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10389         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10390         (procfs_remove_hw_breakpoint, procfs_resume)
10391         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10392         (procfs_kill_inferior, procfs_store_registers)
10393         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10394         as methods of nto_procfs_target.
10395         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10396         (nto_native_ops): Delete.
10397         (procfs_open, procfs_native_open): Delete.
10398         (nto_native_ops): Now an nto_procfs_target_native.
10399         (init_procfs_targets): Adjust to C++ification.
10400         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10401         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10402         Refactor as methods of nto_procfs_target.
10403
10404         * go32-nat.c (go32_nat_target): New class.
10405         (the_go32_nat_target): New.
10406         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10407         (go32_store_registers, go32_xfer_partial, go32_files_info)
10408         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10409         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10410         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10411         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10412         (go32_target): Delete.
10413         (_initialize_go32_nat): Adjust to C++ification.
10414
10415         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10416         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10417         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10418         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10419         gnu_nat_target.
10420         (gnu_target): Delete.
10421         * gnu-nat.h (gnu_target): Delete.
10422         (gnu_nat_target): New class.
10423         * i386-gnu-nat.c (gnu_base_target): New.
10424         (i386_gnu_nat_target): New class.
10425         (the_i386_gnu_nat_target): New.
10426         (_initialize_i386gnu_nat): Adjust to C++ification.
10427
10428 2018-05-02  Pedro Alves  <palves@redhat.com>
10429
10430         * bfd-target.c (target_bfd_xclose): Rename to ...
10431         (target_bfd_close): ... this.
10432         (target_bfd_reopen): Adjust.
10433         * target.c (target_close): Remove references to to_xclose.
10434         * target.h (target_ops::to_xclose): Delete.
10435         (target_ops::to_close): Update comments.
10436
10437 2018-05-02  Pedro Alves  <palves@redhat.com>
10438
10439         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10440         "linux-nat.h".
10441         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10442         * inf-ptrace.c (inf_ptrace_register_u_offset)
10443         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10444         (inf_ptrace_store_register, inf_ptrace_store_registers)
10445         (inf_ptrace_trad_target): Move to ...
10446         * linux-nat-trad.c: ... this new file.
10447         * linux-nat-trad.h: New file.
10448         * linux-nat.c (linux_target_install_ops): Make extern.
10449         (linux_trad_target): Delete.
10450         * linux-nat.h (linux_trad_target): Delete declaration.
10451         (linux_target_install_ops): Declare.
10452         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10453         "linux-nat.h".
10454
10455 2018-05-02  Pedro Alves  <palves@redhat.com>
10456
10457         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10458         procfs_target/add_target here.
10459         * procfs.c (procfs_target): Make static.
10460         (_initialize_procfs): Call add_target here.
10461         * procfs.h (struct target_ops): Remove forward declaration.
10462         (procfs_target): Remove declaration.
10463         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10464
10465 2018-05-02  Pedro Alves  <palves@redhat.com>
10466
10467         * procfs.c (procfs_stopped_by_watchpoint)
10468         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10469         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10470         Forward declare.
10471         (procfs_use_watchpoints): Delete, move contents...
10472         (procfs_target): ... here.
10473         * procfs.h (procfs_use_watchpoints): Delete declaration.
10474         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10475         procfs_use_watchpoints.
10476         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10477         procfs_use_watchpoints.
10478
10479 2018-05-02  Tom Tromey  <tom@tromey.com>
10480
10481         PR python/20084:
10482         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10483         and var_zuinteger_unlimited.
10484         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10485         and PARAM_ZUINTEGER_UNLIMITED.
10486         (set_parameter_value): Handle var_zuinteger and
10487         var_zuinteger_unlimited.
10488         (add_setshow_generic): Likewise.
10489         (parmpy_init): Likewise.
10490
10491 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10492
10493         PR rust/23124
10494         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10495         pointer is not null before dereferencing it.
10496
10497 2018-04-30  Tom Tromey  <tom@tromey.com>
10498
10499         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10500         is_mi_like_p.
10501
10502 2018-04-30  Tom Tromey  <tom@tromey.com>
10503
10504         * breakpoint.c (mention): Remove use of is_mi_like_p.
10505         (print_mention_ranged_breakpoint): Likewise.
10506         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10507         of is_mi_like_p.
10508
10509 2018-04-30  Tom Tromey  <tom@tromey.com>
10510
10511         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10512
10513 2018-04-30  Tom Tromey  <tom@tromey.com>
10514
10515         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10516         (info_spu_event_command): Remove some uses of is_mi_like_p.
10517
10518 2018-04-30  Tom Tromey  <tom@tromey.com>
10519
10520         * python/py-framefilter.c (py_print_single_arg)
10521         (enumerate_locals, py_print_args, py_print_frame): Remove some
10522         uses of is_mi_like_p.
10523
10524 2018-04-30  Tom Tromey  <tom@tromey.com>
10525
10526         * ui-out.c: Update.
10527         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10528         * ui-out.h (ui_out::is_mi_like_p): Now const.
10529         (ui_out::do_is_mi_like_p): Now const.
10530         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10531
10532 2018-04-30  Tom Tromey  <tom@tromey.com>
10533
10534         * varobj.c (varobj_set_visualizer): Use new_reference.
10535         * python/python.c (gdbpy_decode_line): Use new_reference.
10536         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10537         new_reference.
10538
10539 2018-04-30  Tom Tromey  <tom@tromey.com>
10540
10541         * varobj.c (install_new_value): Use new_reference.
10542         * value.h (value_incref): Return void.  Swap intro comment with
10543         value_decref.
10544         * value.c (set_value_parent): Use new_reference.
10545         (value_incref): Return void.  Update intro comment.
10546         (release_value): Use new_reference.
10547         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10548
10549 2018-04-30  Tom Tromey  <tom@tromey.com>
10550
10551         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10552         * gdb_bfd.h (new_bfd_ref): Remove.
10553         (gdb_bfd_open): Update comment.
10554         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10555         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10556         (gdb_bfd_fdopenr): Use new_reference.
10557         * exec.c (exec_file_attach): Use new_reference.
10558
10559 2018-04-30  Tom Tromey  <tom@tromey.com>
10560
10561         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10562         method.
10563
10564 2018-04-30  Tom Tromey  <tom@tromey.com>
10565
10566         * jit.c (jit_read_code_entry): Use type_align.
10567         * i386-tdep.c (i386_gdbarch_init): Don't call
10568         set_gdbarch_long_long_align_bit.
10569         * gdbarch.sh: Remove long_long_align_bit.
10570         * gdbarch.c, gdbarch.h: Rebuild.
10571         * arc-tdep.c (arc_type_align): New function.
10572         (arc_gdbarch_init): Use arc_type_align.  Don't call
10573         set_gdbarch_long_long_align_bit.
10574
10575 2018-04-30  Tom Tromey  <tom@tromey.com>
10576
10577         * rust-lang.c (rust_type_alignment): Remove.
10578         (rust_composite_type): Use type_align.
10579
10580 2018-04-30  Tom Tromey  <tom@tromey.com>
10581
10582         * NEWS: Mention Type.align.
10583         * python/py-type.c (typy_get_alignof): New function.
10584         (type_object_getset): Add "alignof".
10585
10586 2018-04-30  Tom Tromey  <tom@tromey.com>
10587
10588         PR exp/17095:
10589         * NEWS: Update.
10590         * std-operator.def (UNOP_ALIGNOF): New operator.
10591         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10592         New.
10593         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10594         * c-lang.c (c_op_print_tab): Add alignof.
10595         * c-exp.y (ALIGNOF): New token.
10596         (exp): Add "ALIGNOF" production.
10597         (ident_tokens): Add _Alignof and alignof.
10598
10599 2018-04-30  Tom Tromey  <tom@tromey.com>
10600
10601         * i386-tdep.c (i386_type_align): New function.
10602         (i386_gdbarch_init): Update.
10603         * gdbarch.sh (type_align): New method.
10604         * gdbarch.c, gdbarch.h: Rebuild.
10605         * arch-utils.h (default_type_align): Declare.
10606         * arch-utils.c (default_type_align): New function.
10607         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10608         (struct type) <align_log2>: New field.
10609         <instance_flags>: Now a bitfield.
10610         (TYPE_RAW_ALIGN): New macro.
10611         (type_align, type_raw_align, set_type_align): Declare.
10612         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10613         functions.
10614         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10615         (get_alignment, maybe_set_alignment): New functions.
10616         (read_structure_type, read_enumeration_type, read_array_type)
10617         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10618         (read_subrange_type, read_base_type): Set type alignment.
10619
10620 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10621
10622         * dwarf2read.c (read_index_from_section): Use bool.
10623
10624 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10625
10626         PR gdb/22950
10627         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10628         with #ifdef.
10629
10630 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10631
10632         PR build/22873
10633         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10634         last step, and do it atomically.
10635
10636 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10637
10638         * compile/compile-c-types.c (convert_int, convert_float):
10639         Update for C FE v1.
10640
10641 2018-04-27  Tom Tromey  <tom@tromey.com>
10642
10643         PR rust/22545:
10644         * rust-lang.c (rust_inclusive_range_type_p): New function.
10645         (rust_range): Handle inclusive ranges.
10646         (rust_compute_range): Likewise.
10647         * rust-exp.y (struct rust_op) <inclusive>: New field.
10648         (DOTDOTEQ): New constant.
10649         (range_expr): Add "..=" productions.
10650         (operator_tokens): Add "..=" token.
10651         (ast_range): Add "inclusive" parameter.
10652         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10653         ranges.
10654         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10655         bounds values.
10656         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10657         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10658         Update comments.
10659         * expprint.c (print_subexp_standard): Handle new bounds values.
10660         (dump_subexp_body_standard): Likewise.
10661
10662 2018-04-27  Tom Tromey  <tom@tromey.com>
10663
10664         * configure: Rebuild.
10665         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10666         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10667         "OVERRIDE".
10668         (class symbol_needs_eval_context): Likewise.
10669         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10670         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10671         "virtual".
10672         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10673         "override".
10674         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10675         * aarch64-tdep.c (instruction_reader::read): Use "override".
10676         (instruction_reader_test::read): Likewise.
10677         * arm-tdep.c (instruction_reader::read): Use "override".
10678         (instruction_reader_thumb::read): Likewise.
10679
10680 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10681
10682         PR remote/9665
10683         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10684         instead of remote_send.
10685         (remote_send): Remove.
10686
10687 2018-04-26  Pedro Alves  <palves@redhat.com>
10688
10689         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10690         find_function_start_sal instead of find_pc_line.
10691
10692 2018-04-26  Pedro Alves  <palves@redhat.com>
10693
10694         * breakpoint.c (set_breakpoint_location_function): Handle
10695         mst_data_gnu_ifunc.
10696         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10697         * elfread.c (elf_symtab_read): Give data symbols with
10698         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10699         (elf_rel_plt_read): Update comment.
10700         * linespec.c (convert_linespec_to_sals): Handle
10701         mst_data_gnu_ifunc.
10702         (minsym_found): Handle mst_data_gnu_ifunc.
10703         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10704         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10705         * parse.c (find_minsym_type_and_address): Handle
10706         mst_data_gnu_ifunc.
10707         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10708         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10709         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10710         comment.
10711         <mst_data_gnu_ifunc>: New enumerator.
10712
10713 2018-04-26  Pedro Alves  <palves@redhat.com>
10714
10715         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10716         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10717         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10718         Handle it.
10719         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10720         (lookup_minimal_symbol_by_pc): Adjust.
10721         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10722         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10723         * minsyms.h (lookup_msym_prefer): New enum.
10724         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10725         parameter by a lookup_msym_prefer parameter.
10726
10727 2018-04-26  Pedro Alves  <palves@redhat.com>
10728
10729         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10730         ends in "@plt" instead of looking at the symbol's section.
10731
10732 2018-04-26  Pedro Alves  <palves@redhat.com>
10733
10734         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10735         all references.
10736         (find_pc_partial_function_gnu_ifunc): Rename to ...
10737         (find_pc_partial_function): ... this, and remove references to
10738         'is_gnu_ifunc_p'.
10739         (find_pc_partial_function): Delete old implementation.
10740         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10741
10742 2018-04-26  Pedro Alves  <palves@redhat.com>
10743
10744         * linespec.c (struct bound_minimal_symbol_search_key): New.
10745         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10746         skip first line if we found a GNU ifunc minimal symbol by name.
10747         (compare_msymbols): Change parameters to work with a destructured
10748         lhs minsym.
10749         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10750         functions.
10751
10752 2018-04-26  Pedro Alves  <palves@redhat.com>
10753
10754         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10755         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10756         address/name.
10757         (add_location_to_breakpoint): Store the minsym and the objfile in
10758         the breakpoint location.
10759         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10760         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10761         Record the minsym in the sal.
10762         * symtab.h (symtab_and_line) <msymbol>: New field.
10763
10764 2018-04-26  Pedro Alves  <palves@redhat.com>
10765
10766         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10767         unless we actually resolved the ifunc.
10768
10769 2018-04-26  Pedro Alves  <palves@redhat.com>
10770
10771         * c-exp.y (variable production): Prefer ifunc minsyms over
10772         regular function symbols.
10773         * symtab.c (find_gnu_ifunc): New function.
10774         * minsyms.h (lookup_msym_prefer): New enum.
10775         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10776         parameter by a lookup_msym_prefer parameter.
10777         * symtab.h (find_gnu_ifunc): New declaration.
10778
10779 2018-04-26  Pedro Alves  <palves@redhat.com>
10780
10781         * blockframe.c (find_gnu_ifunc_target_type): New function.
10782         (find_function_type): New.
10783         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10784         return a value with a memory address.
10785         (eval_call): For calls to GNU ifunc functions, try to find the
10786         type of the target function from the type that the resolver
10787         returns.
10788         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10789         symbols.
10790         * infcall.c (find_function_return_type): Delete.
10791         (find_function_addr): Add 'function_type' parameter.  For calls to
10792         GNU ifunc functions, try to find the type of the target function
10793         from the type that the resolver returns, and return it via
10794         FUNCTION_TYPE.
10795         (call_function_by_hand_dummy): Adjust to use the function type
10796         returned by find_function_addr.
10797         (find_function_addr): Add 'function_type' parameter and move
10798         description here.
10799         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10800         declarations.
10801
10802 2018-04-26  Pedro Alves  <palves@redhat.com>
10803
10804         * c-exp.y (variable production): Skip finding an alias for ifunc
10805         symbols.
10806
10807 2018-04-26  Pedro Alves  <palves@redhat.com>
10808
10809         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10810
10811 2018-04-25  Pedro Alves  <palves@redhat.com>
10812
10813         * infcmd.c (kill_command): Print the pid as string, not the whole
10814         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10815         message.
10816         * remote.c (remote_detach_1): Print the pid as string, not the
10817         whole thread's ptid.
10818
10819 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10820             Sergio Durigan Junior  <sergiodj@redhat.com>
10821             Pedro Alves  <palves@redhat.com>
10822
10823         * infcmd.c (kill_command): Print message when inferior has
10824         been killed.
10825         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10826         '1'.
10827         (add_inferior): Improve message printed when
10828         'print_inferior_events' is on.
10829         (exit_inferior): Remove message printed when
10830         'print_inferior_events' is on.
10831         (detach_inferior): Improve message printed when
10832         'print_inferior_events' is on.
10833         (initialize_inferiors): Use 'add_inferior_silent' to set
10834         'current_inferior_'.
10835         * inferior.h (print_inferior_events): Declare here as
10836         'extern'.
10837         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10838         '[Detaching...]' messages when 'print_inferior_events' is on.
10839         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10840         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10841         'Detaching after fork from child...', replace it by '... from
10842         parent...'.
10843         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10844         prefix/suffix when printing 'Detaching...' messages.  Print
10845         them when 'print_inferior_events' is on.
10846         * remote.c (remote_detach_1): Print message when detaching
10847         from inferior and '!is_fork_parent'.
10848
10849 2018-04-24  Tom Tromey  <tom@tromey.com>
10850
10851         * cli-out.h: Reindent.
10852
10853 2018-04-24  Tom Tromey  <tom@tromey.com>
10854
10855         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10856         (cli_ui_out::do_field_string): Use fputs_filtered.
10857         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10858
10859 2018-04-23  Tom Tromey  <tom@tromey.com>
10860
10861         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10862         gdb::unique_xmalloc_ptr.
10863
10864 2018-04-23  Tom Tromey  <tom@tromey.com>
10865
10866         * configure: Rebuild.
10867
10868 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10869
10870         PR gdb/23095
10871         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10872         prepare_for_testing.  Set normal_bp to r_debug_state if target
10873         is bsd.
10874
10875 2018-04-21  Pedro Alves  <palves@redhat.com>
10876             Rajendra SY  <rajendra.sy@gmail.com>
10877
10878         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10879         * remote.c (extended_remote_attach): In all-stop mode, mark the
10880         thread as executing.
10881
10882 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10883
10884         * thread.c (thread_apply_all_command): Fix comment.
10885         (thread_command): Fix comment.
10886
10887 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10888
10889         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10890         parameter.
10891         * features/aarch64-core.c (create_feature_aarch64_core):
10892         Regenerate.
10893         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10894         Likewise.
10895         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10896         Likewise.
10897         * features/i386/32bit-avx512.c
10898         (create_feature_i386_32bit_avx512): Likewise.
10899         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10900         Likewise.
10901         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10902         Likewise.
10903         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10904         Likewise.
10905         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10906         Likewise.
10907         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10908         Likewise.
10909         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10910         Likewise.
10911         * features/i386/64bit-avx512.c
10912         (create_feature_i386_64bit_avx512): Likewise.
10913         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10914         Likewise.
10915         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10916         Likewise.
10917         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10918         Likewise.
10919         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10920         Likewise.
10921         * features/i386/64bit-segments.c
10922         (create_feature_i386_64bit_segments): Likewise.
10923         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10924         Likewise.
10925         * features/i386/x32-core.c
10926         (create_feature_i386_x32_core): Likewise.
10927         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10928         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10929         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10930         * target-descriptions.c: In generated code, don't pass xml
10931         filename.
10932
10933 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10934
10935         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10936         (print_xml_feature::visit_post): Likewise.
10937         (print_xml_feature::visit): Likewise.
10938         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10939         (print_xml_feature): Add new class.
10940         * regformats/regdat.sh: Null xmltarget on feature targets.
10941         * target-descriptions.c (struct target_desc): Add xmltarget.
10942         (maintenance_check_tdesc_xml_convert): Add unittest function.
10943         (tdesc_get_features_xml): Add function to get xml.
10944         (maintenance_check_xml_descriptions): Test xml generation.
10945         * xml-tdesc.c (string_read_description_xml): Add function.
10946         * xml-tdesc.h (string_read_description_xml): Add declaration.
10947
10948 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10949
10950         * features/Makefile: Add feature marker to targets with new style
10951         target descriptions.
10952         * regformats/aarch64.dat: Regenerate.
10953         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10954         * regformats/i386/amd64-avx-linux.dat: Likewise.
10955         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10956         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10957         * regformats/i386/amd64-linux.dat: Likewise.
10958         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10959         * regformats/i386/amd64.dat: Likewise.
10960         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10961         * regformats/i386/i386-avx-linux.dat: Likewise.
10962         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10963         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10964         * regformats/i386/i386-linux.dat: Likewise.
10965         * regformats/i386/i386-mmx-linux.dat: Likewise.
10966         * regformats/i386/i386-mpx-linux.dat: Likewise.
10967         * regformats/i386/i386.dat: Likewise.
10968         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10969         * regformats/i386/x32-avx-linux.dat: Likewise.
10970         * regformats/i386/x32-linux.dat: Likewise.
10971         * regformats/tic6x-c62x-linux.dat: Likewise.
10972         * regformats/tic6x-c64x-linux.dat: Likewise.
10973         * regformats/tic6x-c64xp-linux.dat: Likewise.
10974         * regformats/regdat.sh: Parse feature marker.
10975
10976 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10977
10978         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10979         (tdesc_osabi_name): Likewise.
10980         * target-descriptions.c (tdesc_architecture_name): Add new
10981         function.
10982         (tdesc_osabi_name): Likewise.
10983
10984 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10985
10986         * common/tdesc.c (tdesc_predefined_type): Move to here.
10987         (tdesc_named_type): Likewise.
10988         (tdesc_create_vector): Likewise.
10989         (tdesc_create_struct): Likewise.
10990         (tdesc_set_struct_size): Likewise.
10991         (tdesc_create_union): Likewise.
10992         (tdesc_create_flags): Likewise.
10993         (tdesc_create_enum): Likewise.
10994         (tdesc_add_field): Likewise.
10995         (tdesc_add_typed_bitfield): Likewise.
10996         (tdesc_add_bitfield): Likewise.
10997         (tdesc_add_flag): Likewise.
10998         (tdesc_add_enum_value): Likewise.
10999         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11000         (struct tdesc_type_vector): Likewise.
11001         (struct tdesc_type_field): Likewise.
11002         (struct tdesc_type_with_fields): Likewise.
11003         (tdesc_create_enum): Add declaration.
11004         (tdesc_add_typed_bitfield): Likewise.
11005         (tdesc_add_enum_value): Likewise.
11006         * target-descriptions.c (tdesc_type_field): Move from here.
11007         (tdesc_type_builtin): Likewise.
11008         (tdesc_type_vector): Likewise.
11009         (tdesc_type_with_fields): Likewise.
11010         (tdesc_predefined_types): Likewise.
11011         (tdesc_named_type): Likewise.
11012         (tdesc_create_vector): Likewise.
11013         (tdesc_create_struct): Likewise.
11014         (tdesc_set_struct_size): Likewise.
11015         (tdesc_create_union): Likewise.
11016         (tdesc_create_flags): Likewise.
11017         (tdesc_create_enum): Likewise.
11018         (tdesc_add_field): Likewise.
11019         (tdesc_add_typed_bitfield): Likewise.
11020         (tdesc_add_bitfield): Likewise.
11021         (tdesc_add_flag): Likewise.
11022         (tdesc_add_enum_value): Likewise.
11023         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11024         (tdesc_add_typed_bitfield): Likewise.
11025         (tdesc_add_enum_value): Likewise.
11026
11027 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11028
11029         * common/tdesc.c (tdesc_feature::accept): Move to here.
11030         (tdesc_feature::operator==): Likewise.
11031         (tdesc_create_reg): Likewise.
11032         * common/tdesc.h (tdesc_type_kind): Likewise.
11033         (struct tdesc_type): Likewise.
11034         (struct tdesc_feature): Likewise.
11035         * regformats/regdat.sh: Create a feature.
11036         * target-descriptions.c (tdesc_type_kind): Move from here.
11037         (tdesc_type): Likewise.
11038         (tdesc_type_up): Likewise.
11039         (tdesc_feature): Likewise.
11040         (tdesc_create_reg): Likewise.
11041
11042 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11043
11044         * Makefile.in: Add arch/tdesc.c
11045         * common/tdesc.c: New file.
11046         * common/tdesc.h (tdesc_element_visitor): Move to here.
11047         (tdesc_element): Likewise.
11048         (tdesc_reg): Likewise.
11049         (tdesc_reg_up): Likewise.
11050         * regformats/regdef.h (reg): Add offset to constructors.
11051         * target-descriptions.c (tdesc_element_visitor): Move from here.
11052         (tdesc_element): Likewise.
11053         (tdesc_reg): Likewise.
11054         (tdesc_reg_up): Likewise.
11055
11056 2018-04-17  Tom Tromey  <tom@tromey.com>
11057
11058         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11059         discriminant field.
11060
11061 2018-04-17  Tom Tromey  <tom@tromey.com>
11062
11063         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11064
11065 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11066
11067         * symtab.c (print_symbol_info): Skip printing filename and line
11068         number when `last' is NULL.
11069         (symtab_symbol_info): Use empty string instead of NULL for first
11070         invocation of print_symbol_info.
11071         (rbreak_command): Pass NULL to `last' parameter of
11072         print_symbol_info.
11073
11074 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11075
11076         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11077         instead of nullptr.
11078
11079 2018-04-16  Pedro Alves  <palves@redhat.com>
11080
11081         * MAINTAINERS (sh): Remove.
11082         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11083         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11084         (ALLDEPFILES): Remove sh64-tdep.c.
11085         * NEWS: Mentions that support for SH-5/SH64 is removed.
11086         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11087         (sh*-*-openbsd*): Ditto.
11088         (sh64-*-elf*): Remove.
11089         (sh*): Remove.
11090         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11091         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11092         * sh-tdep.c: No longer include "sh64-tdep.h".
11093         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11094         * sh64-tdep.c, sh64-tdep.h: Remove files.
11095
11096 2018-04-16  Pedro Alves  <palves@redhat.com>
11097
11098         * MAINTAINERS: Remove m88k.
11099         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11100         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11101         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11102         * NEWS: Mention that support for m88k was removed.
11103         * configure.host (m88*-*-*): Remove support.
11104         * configure.nat (m88k-*-*): Remove support.
11105         * configure.tgt (m88*-*-openbsd*): Remove.
11106         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11107
11108 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11109
11110         * configure.tgt (x86_tobjs): New variable.
11111         (amd64_tobjs, i386_tobjs): Use it.
11112
11113 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11114
11115         * symtab.c (print_symbol_info): Precede the symbol definition by
11116         the line number when available.
11117         * NEWS: Advertise this enhancement.
11118
11119 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11120
11121         * NEWS (New options): announce set/show record btrace cpu.
11122         * btrace.c: Include record-btrace.h.
11123         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11124         the vendor is unknown.
11125         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11126         Maybe overwrite the btrace configuration's cpu.
11127         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11128         (btrace_fetch): Add cpu parameter.  Update callers.
11129         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11130         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11131         errata workarounds if the vendor is unknown.
11132         * python/py-record-btrace.c: Include record-btrace.h.
11133         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11134         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11135         * record-btrace.c (record_btrace_cpu_state_kind): New.
11136         (record_btrace_cpu): New.
11137         (set_record_btrace_cpu_cmdlist): New.
11138         (record_btrace_get_cpu): New.
11139         (require_btrace_thread, record_btrace_info)
11140         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11141         (cmd_set_record_btrace_cpu_none): New.
11142         (cmd_set_record_btrace_cpu_auto): New.
11143         (cmd_set_record_btrace_cpu): New.
11144         (cmd_show_record_btrace_cpu): New.
11145         (_initialize_record_btrace): Initialize set/show record btrace cpu
11146         commands.
11147         * record-btrace.h (record_btrace_get_cpu): New.
11148
11149 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11150
11151         * record.c (set_record_command): Fix typo in message.
11152
11153 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11154
11155         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11156
11157 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11158
11159         * infrun.c (process_event_stop_test): Call
11160         gdbarch_in_indirect_branch_thunk.
11161         * gdbarch.sh (in_indirect_branch_thunk): New.
11162         * gdbarch.c: Regenerated.
11163         * gdbarch.h: Regenerated.
11164         * x86-tdep.h: New.
11165         * x86-tdep.c: New.
11166         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11167         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11168         (ALLDEPFILES): Add x86-tdep.c.
11169         * arch-utils.h (default_in_indirect_branch_thunk): New.
11170         * arch-utils.c (default_in_indirect_branch_thunk): New.
11171         * i386-tdep: Include x86-tdep.h.
11172         (i386_in_indirect_branch_thunk): New.
11173         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11174         function.
11175         * amd64-tdep: Include x86-tdep.h.
11176         (amd64_in_indirect_branch_thunk): New.
11177         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11178
11179 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11180
11181         PR gdb/23053
11182         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11183         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11184         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11185         regression.
11186
11187 2018-04-12  Tom Tromey  <tom@tromey.com>
11188
11189         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11190         (rust_evaluate_subexp): Likewise.
11191
11192 2018-04-12  Pedro Alves  <palves@redhat.com>
11193
11194         * procfs.c (procfs_detach): Make forward declaration's prototype
11195         match definition's protototype.
11196         (proc_get_LDT_entry): Remove stale do_cleanups call.
11197
11198 2018-04-12  Pedro Alves  <palves@redhat.com>
11199
11200         * target.h (target_ops::to_has_exited): Delete.
11201         (target_has_exited): Delete.
11202         * target-delegates.c: Regenerate.
11203
11204 2018-04-11  Pedro Alves  <palves@redhat.com>
11205
11206         * target.c (fileio_fh_t::t): Add comment.
11207         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11208         (target_fileio_close): Handle a NULL target.
11209         (invalidate_fileio_fh): New.
11210         (target_close): Call it.
11211         * remote.c (remote_hostio_send_command): No longer check whether
11212         remote_desc is open.
11213
11214 2018-04-11  Pedro Alves  <palves@redhat.com>
11215
11216         * target.c (fileio_fh_t): Make it a named struct instead of a
11217         typedef.
11218         (fileio_fh_t::is_closed): New method.
11219         (DEF_VEC_O (fileio_fh_t)): Remove.
11220         (fileio_fhandles): Now a std::vector.
11221         (is_closed_fileio_fh): Delete.
11222         (acquire_fileio_fd): Adjust.  Rename parameters.
11223         (release_fileio_fd): Adjust.
11224         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11225         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11226         (target_fileio_close): Adjust.
11227
11228 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11229
11230         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11231         index.
11232
11233 2018-04-10  Pedro Alves  <palves@redhat.com>
11234
11235         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11236         (scoped_finish_thread_state): New class.
11237         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11238         cleanup.
11239         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11240         (fetch_inferior_event, normal_stop): Likewise.
11241         * thread.c (finish_thread_state_cleanup): Delete.
11242
11243 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11244             Pedro Alves  <palves@redhat.com>
11245
11246         * value.c: Include "selftest.h" and "common/array-view.h".
11247         (struct range) <operator ==>: New.
11248         (test_ranges_contain): New.
11249         (check_ranges_vector): New.
11250         (test_insert_into_bit_range_vector): New.
11251         (_initialize_values): Register selftests.
11252         * common/array-view.h (operator==, operator!=): New.
11253
11254 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11255
11256         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11257         an iterator.
11258         * inline-frame.c: Include <algorithm>.
11259         (struct inline_state): Add constructor.
11260         (inline_state_s): Remove.
11261         (DEF_VEC_O(inline_state_s)): Remove.
11262         (inline_states): Change type to std::vector.
11263         (find_inline_frame_state): Adjust to std::vector.
11264         (allocate_inline_frame_state): Remove.
11265         (clear_inline_frame_state): Adjust to std::vector.
11266         (skip_inline_frames): Adjust to std::vector.
11267
11268 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11269
11270         * tracepoint.h (struct trace_state_variable): Add constructor.
11271         <name>: Change type to std::string.
11272         * tracepoint.c (tsv_s): Remove.
11273         (DEF_VEC_O(tsv_s)): Remove.
11274         (tvariables): Change to std::vector.
11275         (create_trace_state_variable): Adjust to std::vector.
11276         (find_trace_state_variable): Likewise.
11277         (find_trace_state_variable_by_number): Likewise.
11278         (delete_trace_state_variable): Likewise.
11279         (trace_variable_command): Adjust to std::string.
11280         (delete_trace_variable_command): Likewise.
11281         (tvariables_info_1): Adjust to std::vector.
11282         (save_trace_state_variables): Likewise.
11283         (start_tracing): Likewise.
11284         (merge_uploaded_trace_state_variables): Adjust to std::vector
11285         and std::string.
11286         * target.h (struct target_ops)
11287         <to_download_trace_state_variable>: Pass reference to
11288         trace_state_variable.
11289         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11290         * target-delegates.c: Re-generate.
11291         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11292         (mi_tsv_deleted): Likewise.
11293         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11294         * remote.c (remote_download_trace_state_variable): Change
11295         pointer to reference and adjust.
11296         * make-target-delegates (parse_argtypes): Handle references.
11297         (write_function_header): Likewise.
11298         (munge_type): Likewise.
11299
11300 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11301
11302         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11303         string_view-selftests.c.
11304         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11305         testsuite.
11306         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11307         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11308         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11309         * unittests/basic_string_view/element_access/char/1.cc:
11310         Likewise.
11311         * unittests/basic_string_view/element_access/char/empty.cc:
11312         Likewise.
11313         * unittests/basic_string_view/element_access/char/front_back.cc:
11314         Likewise.
11315         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11316         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11317         Likewise.
11318         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11319         Likewise.
11320         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11321         Likewise.
11322         * unittests/basic_string_view/operations/compare/char/1.cc:
11323         Likewise.
11324         * unittests/basic_string_view/operations/compare/char/13650.cc:
11325         Likewise.
11326         * unittests/basic_string_view/operations/copy/char/1.cc:
11327         Likewise.
11328         * unittests/basic_string_view/operations/data/char/1.cc:
11329         Likewise.
11330         * unittests/basic_string_view/operations/find/char/1.cc:
11331         Likewise.
11332         * unittests/basic_string_view/operations/find/char/2.cc:
11333         Likewise.
11334         * unittests/basic_string_view/operations/find/char/3.cc:
11335         Likewise.
11336         * unittests/basic_string_view/operations/find/char/4.cc:
11337         Likewise.
11338         * unittests/basic_string_view/operations/rfind/char/1.cc:
11339         Likewise.
11340         * unittests/basic_string_view/operations/rfind/char/2.cc:
11341         Likewise.
11342         * unittests/basic_string_view/operations/rfind/char/3.cc:
11343         Likewise.
11344         * unittests/basic_string_view/operations/substr/char/1.cc:
11345         Likewise.
11346         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11347         * unittests/string_view-selftests.c: New file.
11348
11349 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11350
11351         * unittests/basic_string_view/capacity/1.cc: New file.
11352         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11353         * unittests/basic_string_view/cons/char/1.cc: New file.
11354         * unittests/basic_string_view/cons/char/2.cc: New file.
11355         * unittests/basic_string_view/cons/char/3.cc: New file.
11356         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11357         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11358         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11359         * unittests/basic_string_view/element_access/char/1.cc: New file.
11360         * unittests/basic_string_view/element_access/char/2.cc: New file.
11361         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11362         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11363         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11364         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11365         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11366         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11367         * unittests/basic_string_view/include.cc: New file.
11368         * unittests/basic_string_view/inserters/char/1.cc: New file.
11369         * unittests/basic_string_view/inserters/char/2.cc: New file.
11370         * unittests/basic_string_view/inserters/char/3.cc: New file.
11371         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11372         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11373         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11374         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11375         * unittests/basic_string_view/literals/types.cc: New file.
11376         * unittests/basic_string_view/literals/values.cc: New file.
11377         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11378         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11379         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11380         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11381         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11382         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11383         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11384         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11385         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11386         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11387         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11388         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11389         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11390         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11391         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11392         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11393         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11394         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11395         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11396         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11397         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11398         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11399         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11400         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11401         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11402         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11403         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11404         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11405         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11406         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11407         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11408         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11409         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11410         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11411         * unittests/basic_string_view/operators/char/2.cc: New file.
11412         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11413         * unittests/basic_string_view/range_access/char/1.cc: New file.
11414         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11415         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11416         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11417         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11418         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11419         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11420         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11421         * unittests/basic_string_view/typedefs.cc: New file.
11422         * unittests/basic_string_view/types/1.cc: New file.
11423
11424 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11425
11426         * common/gdb_string_view.h: Remove libstdc++ implementation
11427         details, adjust to gdb reality.
11428         * common/gdb_string_view.tcc: Likewise.
11429         * cli/cli-script.c (struct string_view): Remove.
11430         (user_args) <m_args>: Change element type to gdb::string_view.
11431         (user_args::insert_args): Adjust.
11432
11433 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11434
11435         * common/gdb_string_view.h: New file.
11436         * common/gdb_string_view.tcc: New file.
11437
11438 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11439
11440         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11441         * configure: Re-generate.
11442
11443 2018-04-09  Pedro Alves  <palves@redhat.com>
11444
11445         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11446         (set_target_gdbarch): Call
11447         gdb::observers::architecture_changed.notify instead of
11448         observer_notify_architecture_changed.
11449
11450 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11451
11452         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11453         (do_restore_current_traceframe_cleanup): Remove.
11454         (restore_current_traceframe_cleanup_dtor): Remove.
11455         (make_cleanup_restore_current_traceframe): Remove.
11456         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11457         New.
11458         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11459         * infrun.c (fetch_inferior_event): Use
11460         scoped_restore_current_traceframe.
11461
11462 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11463
11464         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11465         Remove.
11466         <n_allocated_type_units>: Remove.
11467         <all_type_units>: Change to std::vector.
11468         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11469         to std::vector change.
11470         (dwarf2_per_objfile::get_cutu): Likewise.
11471         (dwarf2_per_objfile::get_tu): Likewise.
11472         (create_signatured_type_table_from_index): Likewise.
11473         (create_signatured_type_table_from_debug_names): Likewise.
11474         (dw2_symtab_iter_next): Likewise.
11475         (dw2_print_stats): Likewise.
11476         (dw2_expand_all_symtabs): Likewise.
11477         (dw2_expand_marked_cus): Likewise.
11478         (dw2_debug_names_iterator::next): Likewise.
11479         (dwarf2_initialize_objfile): Likewise.
11480         (add_signatured_type_cu_to_table): Likewise.
11481         (create_all_type_units): Likewise.
11482         (add_type_unit): Likewise.
11483         (struct tu_abbrev_offset): Add constructor.
11484         (build_type_psymtabs_1): Adjust to std::vector change.
11485         (print_tu_stats): Likewise.
11486         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11487         (write_debug_names): Likewise.
11488
11489 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11490
11491         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11492         Make an std::vector.
11493         <n_comp_units>: Remove.
11494         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11495         to std::vector change.
11496         (dwarf2_per_objfile::get_cutu): Likewise.
11497         (dwarf2_per_objfile::get_cu): Likewise.
11498         (create_cus_from_index): Likewise.
11499         (create_addrmap_from_index): Likewise.
11500         (create_addrmap_from_aranges): Likewise.
11501         (dwarf2_read_index): Likewise.
11502         (dw2_find_last_source_symtab): Likewise.
11503         (dw2_map_symtabs_matching_filename): Likewise.
11504         (dw2_symtab_iter_next): Likewise.
11505         (dw2_print_stats): Likewise.
11506         (dw2_expand_all_symtabs): Likewise.
11507         (dw2_expand_symtabs_with_fullname): Likewise.
11508         (dw2_expand_marked_cus): Likewise.
11509         (dw2_map_symbol_filenames): Likewise.
11510         (create_cus_from_debug_names): Likewise.
11511         (dwarf2_read_debug_names): Likewise.
11512         (dw2_debug_names_iterator::next): Likewise.
11513         (dwarf2_initialize_objfile): Likewise.
11514         (set_partial_user): Likewise.
11515         (dwarf2_build_psymtabs_hard): Likewise.
11516         (read_comp_units_from_section): Remove arguments, adjust to
11517         std::vector change.
11518         (create_all_comp_units): Adjust to std::vector and
11519         read_comp_units_from_section changes.
11520         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11521         change.
11522         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11523         (psyms_seen_size): Likewise.
11524         (write_gdbindex): Likewise.
11525         (write_debug_names): Likewise.
11526
11527 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11528
11529         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11530         with dwarf2_per_objfile.
11531         (create_cus_from_index): Likewise.
11532         (create_signatured_type_table_from_index): Likewise.
11533         (dwarf2_read_index): Likewise.
11534         (dwarf2_initialize_objfile): Likewise.
11535         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11536         per_cu rather than get_dwarf2_per_objfile.
11537
11538 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11539
11540         * dwarf2read.h (struct signatured_type): Forward declare.
11541         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11542         New methods.
11543         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11544         (dw2_get_cutu): ...this.
11545         (dwarf2_per_objfile::get_cu): Rename from...
11546         (dw2_get_cu): ...this.
11547         (dwarf2_per_objfile::get_tu): New.
11548         (create_addrmap_from_index): Adjust.
11549         (create_addrmap_from_aranges): Adjust.
11550         (dw2_find_last_source_symtab): Adjust.
11551         (dw2_map_symtabs_matching_filename): Adjust.
11552         (dw2_symtab_iter_next): Adjust.
11553         (dw2_print_stats): Adjust.
11554         (dw2_expand_all_symtabs): Adjust.
11555         (dw2_expand_symtabs_with_fullname): Adjust.
11556         (dw2_expand_marked_cus): Adjust.
11557         (dw_expand_symtabs_matching_file_matcher): Adjust.
11558         (dw2_map_symbol_filenames): Adjust.
11559         (dw2_debug_names_iterator::next): Adjust.
11560         (dwarf2_initialize_objfile): Adjust.
11561         (set_partial_user): Adjust.
11562         (dwarf2_build_psymtabs_hard): Adjust.
11563
11564 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11565
11566         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11567         Remove unused variables.
11568         (dw2_map_symtabs_matching_filename): Likewise.
11569         (dwarf2_record_block_ranges): Likewise.
11570         (dwarf2_read_addr_index): Likewise.
11571         (follow_die_offset): Likewise.
11572
11573 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11574
11575         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11576         to symbol_file_add_main.
11577
11578 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11579
11580         PR mi/22299
11581         * mi/mi-console.c (do_fputc_async_safe): New.
11582         (mi_console_file::write_async_safe): New.
11583         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11584         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11585         New.
11586         * ui-file.c (ui_file::putstrn): Adjust call to
11587         fputstrn_unfiltered.
11588         * utils.c (printchar): Replace do_fputs and do_fprintf
11589         parameters by do_fputc.
11590         (fputstr_filtered): Adjust call to printchar.
11591         (fputstr_unfiltered): Likewise.
11592         (fputstrn_filtered): Likewise.
11593         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11594         printchar.
11595         * utils.h (do_fputc_ftype): New typedef.
11596         (fputstrn_unfiltered): Add do_fputc parameter.
11597
11598 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11599
11600         * regformats/i386/i386-avx.dat: Remove.
11601
11602 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11603
11604         PR gdb/22979
11605         * amd64-tdep.c (amd64_none_init_abi): New function.
11606         (amd64_x32_none_init_abi): New function.
11607         (_initialize_amd64_tdep): Register handlers for x86-64 and
11608         x64_32 with GDB_OSABI_NONE.
11609         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11610         GDB_OSABI_NONE osabi.
11611
11612 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11613
11614         PR gdb/22980
11615         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11616         GDB_OSABI_NONE.
11617         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11618         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11619
11620 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11621
11622         * common/byte-vector.h (char_vector): New type.
11623         * target.h (target_read_alloc): Return
11624         gdb::optional<byte_vector>.
11625         (target_read_stralloc): Return gdb::optional<char_vector>.
11626         (target_get_osdata): Return gdb::optional<char_vector>.
11627         * target.c (target_read_alloc_1): Templatize.  Replacement
11628         manual memory management with vector.
11629         (target_read_alloc): Change return type, adjust.
11630         (target_read_stralloc): Change return type, adjust.
11631         (target_get_osdata): Change return type, adjust.
11632         * auxv.c (struct auxv_info) <length>: Remove.
11633         <data>: Change type to gdb::optional<byte_vector>.
11634         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11635         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11636         (target_auxv_search): Adjust.
11637         (fprint_target_auxv): Adjust.
11638         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11639         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11640         (linux_make_corefile_notes): Adjust.
11641         * osdata.c (get_osdata): Adjust.
11642         * remote.c (remote_get_threads_with_qxfer): Adjust.
11643         (remote_memory_map): Adjust.
11644         (remote_traceframe_info): Adjust.
11645         (btrace_read_config): Adjust.
11646         (remote_read_btrace): Adjust.
11647         (remote_pid_to_exec_file): Adjust.
11648         * solib-aix.c (solib_aix_get_library_list): Adjust.
11649         * solib-dsbt.c (decode_loadmap): Don't free buf.
11650         (dsbt_get_initial_loadmaps): Adjust.
11651         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11652         * solib-target.c (solib_target_current_sos): Adjust.
11653         * tracepoint.c (sdata_make_value): Adjust.
11654         * xml-support.c (xinclude_start_include): Adjust.
11655         (xml_fetch_content_from_file): Adjust.
11656         * xml-support.h (xml_fetch_another): Change return type.
11657         (xml_fetch_content_from_file): Change return type.
11658         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11659         * xml-tdesc.c (file_read_description_xml): Adjust.
11660         (fetch_available_features_from_target): Change return type.
11661         (target_fetch_description_xml): Adjust.
11662         (target_read_description_xml): Adjust.
11663
11664 2018-04-06  Tom Tromey  <tom@tromey.com>
11665
11666         * value.c (~value): Update.
11667         (struct value) <contents>: Now unique_xmalloc_ptr.
11668         (value_contents_bits_eq, allocate_value_contents)
11669         (value_contents_raw, value_contents_all_raw)
11670         (value_contents_for_printing, value_contents_for_printing_const)
11671         (set_value_enclosing_type): Update.
11672
11673 2018-04-06  Tom Tromey  <tom@tromey.com>
11674
11675         * value.c (range_s): Remove typedef, VEC.
11676         (struct range): Add operator<.
11677         (range_lessthan): Remove.
11678         (ranges_contain): Change type.
11679         (~value): Update.
11680         (struct value) <unavailable, optimized_out>: Now std::vector.
11681         (value_entirely_available)
11682         (value_entirely_covered_by_range_vector)
11683         (value_entirely_unavailable, value_entirely_optimized_out):
11684         Update.
11685         (insert_into_bit_range_vector): Change argument type.
11686         (find_first_range_overlap): Likewise.
11687         (struct ranges_and_idx, value_contents_bits_eq)
11688         (require_not_optimized_out, require_available): Update.
11689         (ranges_copy_adjusted): Change argument types.
11690         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11691
11692 2018-04-06  Tom Tromey  <tom@tromey.com>
11693
11694         * value.c (~value): Update.
11695         (struct value) <parent>: Now a value_ref_ptr.
11696         (value_parent, set_value_parent, value_address, value_copy):
11697         Update.
11698
11699 2018-04-06  Tom Tromey  <tom@tromey.com>
11700
11701         * value.c (struct value): Add constructor, destructor, and member
11702         initializers.
11703         (allocate_value_lazy, value_decref): Update.
11704
11705 2018-04-06  Tom Tromey  <tom@tromey.com>
11706
11707         * value.c (struct value) <released, next>: Remove.
11708         (all_values): Now a std::vector.
11709         (allocate_value_lazy): Update.
11710         (value_next): Remove.
11711         (value_mark, value_free_to_mark, release_value)
11712         (value_release_to_mark): Update.
11713
11714 2018-04-06  Tom Tromey  <tom@tromey.com>
11715
11716         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11717         (free_value_chain): Remove.
11718         * value.c (free_value_chain): Remove.
11719         (value_release_to_mark): Return a std::vector.
11720         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11721         std::vector.
11722         (check_condition): Update.
11723         * eval.c (fetch_subexp_value): Change "val_chain" to a
11724         std::vector.
11725         * breakpoint.c (update_watchpoint): Update.
11726         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11727
11728 2018-04-06  Tom Tromey  <tom@tromey.com>
11729
11730         * value.h (free_all_values): Remove.
11731         * value.c (free_all_values): Remove.
11732
11733 2018-04-06  Tom Tromey  <tom@tromey.com>
11734
11735         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11736         (value_history_chain, value_history_count): Remove.
11737         (value_history): New global.
11738         (record_latest_value, access_value_history, show_values)
11739         (preserve_values): Update.
11740
11741 2018-04-06  Tom Tromey  <tom@tromey.com>
11742
11743         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11744         * varobj.c (varobj_set_display_format, varobj_set_value)
11745         (install_default_visualizer, construct_visualizer)
11746         (install_new_value, ~varobj, varobj_get_value_type)
11747         (my_value_of_variable, varobj_editable_p): Update.
11748         * c-varobj.c (c_describe_child, c_value_of_variable)
11749         (cplus_number_of_children, cplus_describe_child): Update.
11750         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11751         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11752         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11753
11754 2018-04-06  Tom Tromey  <tom@tromey.com>
11755
11756         * printcmd.c (last_examine_address): Change type to
11757         value_ref_ptr.
11758         (do_examine, x_command): Update.
11759
11760 2018-04-06  Tom Tromey  <tom@tromey.com>
11761
11762         * value.c (release_value): Update.
11763         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11764         (struct bpstats) <val>: Now a value_ref_ptr.
11765         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11766         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11767         (~watchpoint, print_it_watchpoint, watch_command_1)
11768         (invalidate_bp_value_on_memory_change): Update.
11769
11770 2018-04-06  Tom Tromey  <tom@tromey.com>
11771
11772         * varobj.c (varobj_clear_saved_item)
11773         (update_dynamic_varobj_children, install_new_value, ~varobj):
11774         Update.
11775         * value.h (value_incref): Move declaration earlier.
11776         (value_decref): Rename from value_free.
11777         (struct value_ref_policy): New.
11778         (value_ref_ptr): New typedef.
11779         (struct value_deleter): Remove.
11780         (gdb_value_up): Remove typedef.
11781         (release_value): Change return type.
11782         (release_value_or_incref): Remove.
11783         * value.c (set_value_parent): Update.
11784         (value_incref): Change return type.
11785         (value_decref): Rename from value_free.
11786         (value_free_to_mark, free_all_values, free_value_chain): Update.
11787         (release_value): Return value_ref_ptr.
11788         (release_value_or_incref): Remove.
11789         (record_latest_value, set_internalvar, clear_internalvar):
11790         Update.
11791         * stack.c (info_frame_command): Don't call value_free.
11792         * python/py-value.c (valpy_dealloc, valpy_new)
11793         (value_to_value_object): Update.
11794         * printcmd.c (do_examine): Update.
11795         * opencl-lang.c (lval_func_free_closure): Update.
11796         * mi/mi-main.c (register_changed_p): Don't call value_free.
11797         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11798         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11799         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11800         value_free.
11801         * guile/scm-value.c (vlscm_free_value_smob)
11802         (vlscm_scm_from_value): Update.
11803         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11804         (frame_unwind_register_unsigned, get_frame_register_bytes)
11805         (put_frame_register_bytes): Don't call value_free.
11806         * findvar.c (address_from_register): Don't call value_free.
11807         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11808         * dwarf2loc.c (entry_data_value_free_closure)
11809         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11810         (dwarf2_evaluate_loc_desc_full): Update.
11811         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11812         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11813         (~watchpoint, watch_command_1)
11814         (invalidate_bp_value_on_memory_change): Update.
11815         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11816
11817 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11818
11819         PR gdb/23022
11820         * warning.m4: Add -Wno-error=deprecated-register.
11821         * configure: Re-generate.
11822
11823 2018-04-05  Tom Tromey  <tom@tromey.com>
11824
11825         * linespec.h: Remove include of "vec.h".
11826
11827 2018-04-05  Tom Tromey  <tom@tromey.com>
11828
11829         * linespec.c (typep): Remove typedef.
11830         (find_methods, find_superclass_methods): Take a std::vector.
11831         (find_method): Use std::vector.
11832
11833 2018-04-05  Tom Tromey  <tom@tromey.com>
11834
11835         * utils.c (compare_strings): Remove.
11836         * utils.h (compare_strings): Remove.
11837         * objc-lang.h (find_imps): Update.
11838         * objc-lang.c (find_methods): Take a std::vector.
11839         (uniquify_strings, find_imps): Likewise.
11840         * linespec.c (find_methods): Take a std::vector.
11841         (decode_objc): Use std::vector.
11842         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11843         a std::vector.
11844         (find_method, find_function_symbols): Use std::vector.
11845
11846 2018-04-05  Tom Tromey  <tom@tromey.com>
11847
11848         * completer.c (completion_tracker::completion_tracker): Remove
11849         cast.
11850         (completion_tracker::discard_completions): Likewise.
11851         * breakpoint.c (ambiguous_names_p): Remove cast.
11852         * ada-lang.c (_initialize_ada_language): Remove cast.
11853         * utils.h (streq): Update.
11854         (streq_hash): Add new declaration.
11855         * utils.c (streq): Return bool.
11856         (streq_hash): New function.
11857
11858 2018-04-05  Tom Tromey  <tom@tromey.com>
11859
11860         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11861         Remove a string copy.
11862
11863 2018-04-05  Tom Tromey  <tom@tromey.com>
11864
11865         * linespec.c (filter_results): Use std::vector.
11866         (decode_line_2, decode_line_full): Update.
11867
11868 2018-04-05  Tom Tromey  <tom@tromey.com>
11869
11870         * linespec.c (canonical_to_fullform): Return std::string.
11871         (filter_results): Update.
11872         (struct decode_line_2_item): Add constructor.
11873         <fullform, displayform>: Now std::string.
11874         (decode_line_2_compare_items): Now a std::sort comparator.
11875         (decode_line_2): Update.
11876
11877 2018-04-05  Tom Tromey  <tom@tromey.com>
11878
11879         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11880         (unexpected_linespec_error): Update.
11881         (linespec_parse_basic, parse_linespec): Update.
11882
11883 2018-04-05  Tom Tromey  <tom@tromey.com>
11884
11885         * linespec.c (linespec_parse_basic): Reindent.
11886
11887 2018-04-05  Tom Tromey  <tom@tromey.com>
11888
11889         * minsyms.h (iterate_over_minimal_symbols): Update.
11890         * minsyms.c (iterate_over_minimal_symbols): Take a
11891         gdb::function_view.
11892         * linespec.c (struct collect_minsyms): Remove.
11893         (compare_msyms): Now a std::sort comparator.
11894         (add_minsym): Add parameters.
11895         (search_minsyms_for_name): Update.  Use std::vector.
11896
11897 2018-04-03  Tom Tromey  <tom@tromey.com>
11898
11899         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11900         gdb::byte_vector.
11901
11902 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11903
11904         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11905
11906 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11907
11908         PR gdb/16959
11909         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11910         printing static type.
11911
11912 2018-04-01  Tom Tromey  <tom@tromey.com>
11913
11914         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11915         (rs6000_xfer_shared_libraries): Update.
11916
11917 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11918
11919         * common/gdb_vecs.h (char_ptr): Remove.
11920         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11921
11922 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11923
11924         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11925         with std::vector.
11926         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11927
11928 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11929
11930         * tracepoint.h (struct uploaded_tp): Initialize fields.
11931         <actions, step_actions, cmd_strings>: Change type to
11932         std::vector<char *>.
11933         * tracepoint.c (get_uploaded_tp): Allocate with new.
11934         (free_uploaded_tps): Free with delete.
11935         (parse_tracepoint_definition): Adjust to std::vector change.
11936         * breakpoint.c (read_uploaded_action): Likewise.
11937         (create_tracepoint_from_upload): Likewise.
11938         * ctf.c (ctf_write_uploaded_tp): Likewise.
11939         (SET_ARRAY_FIELD): Likewise.
11940         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11941
11942 2018-03-30  Tom Tromey  <tom@tromey.com>
11943
11944         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11945         std::unique_ptr.
11946         (svr4_keep_data_in_core): Update.
11947         (svr4_read_so_list): Update.
11948
11949 2018-03-30  Tom Tromey  <tom@tromey.com>
11950
11951         * windows-nat.c (handle_output_debug_string, handle_exception):
11952         Update.
11953         * target.h (target_read_string): Update.
11954         * target.c (target_read_string): Change "string" to
11955         unique_xmalloc_ptr.
11956         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11957         Update.
11958         * solib-frv.c (frv_current_sos): Update.
11959         * solib-dsbt.c (dsbt_current_sos): Update.
11960         * solib-darwin.c (darwin_current_sos): Update.
11961         * linux-thread-db.c (inferior_has_bug): Update.
11962         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11963         Update.  Remove alloca.
11964         * ada-lang.c (ada_main_name): Update.
11965
11966 2018-03-30  Tom Tromey  <tom@tromey.com>
11967
11968         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11969         (struct dwo_file_deleter): New.
11970         (dwo_file_up): New typedef.
11971         (open_and_init_dwo_file): Use dwo_file_up.
11972         (free_dwo_file_cleanup): Remove.
11973
11974 2018-03-30  Tom Tromey  <tom@tromey.com>
11975
11976         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11977         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11978
11979 2018-03-30  Tom Tromey  <tom@tromey.com>
11980
11981         * dwarf2read.c (class free_cached_comp_units): New class.
11982         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11983         (free_cached_comp_units): Remove function.
11984
11985 2018-03-30  Tom Tromey  <tom@tromey.com>
11986
11987         * utils.h (make_cleanup_unpush_target): Remove.
11988         * inf-ptrace.c (struct target_unpusher): New.
11989         (target_unpush_up) New typedef.
11990         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11991         target_unpush_up.
11992         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11993
11994 2018-03-27  Tom Tromey  <tom@tromey.com>
11995
11996         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11997
11998 2018-03-27  Pedro Alves  <palves@redhat.com>
11999             Tom Tromey  <tom@tromey.com>
12000
12001         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12002         destructor.  Now a class.
12003         (gdb_readline_wrapper_cleanup): Remove function.
12004         (gdb_readline_wrapper): Remove cleanups.
12005
12006 2018-03-27  Tom Tromey  <tom@tromey.com>
12007
12008         * typeprint.h (struct type_print_options) <local_typedefs,
12009         global_typedefs>: Remove "struct" keyword.
12010         (class typedef_hash_table): New class.
12011         (recursively_update_typedef_hash, add_template_parameters)
12012         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12013         (find_typedef_in_hash): Don't declare.
12014         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12015         (typedef_hash_table::recursively_update): Rename from
12016         recursively_update_typedef_hash.  Now a member.
12017         (typedef_hash_table::add_template_parameters): Rename from
12018         add_template_parameters.  Now a member.
12019         (typedef_hash_table::typedef_hash_table): Now a constructor;
12020         rename from create_typedef_hash.
12021         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12022         rename from free_typedef_hash.
12023         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12024         (do_free_global_table): Remove.
12025         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12026         from copy_type_recursive.
12027         (create_global_typedef_table): Remove.
12028         (typedef_hash_table::find_global_typedef): Now a member of
12029         typedef_hash_table.
12030         (typedef_hash_table::find_typedef): Rename from
12031         find_typedef_in_hash; now a member.
12032         (whatis_exp): Update.
12033         * extension.h (struct ext_lang_type_printers): Add constructor and
12034         destructor.
12035         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12036         declare.
12037         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12038         Now a constructor; rename from start_ext_lang_type_printers.
12039         (ext_lang_type_printers): Now a destructor; rename from
12040         free_ext_lang_type_printers.
12041         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12042         Update.
12043         (c_type_print_base_struct_union): Update.  Remove cleanups.
12044
12045 2018-03-27  Tom Tromey  <tom@tromey.com>
12046
12047         * dwarf-index-write.c: Include <cmath>.
12048
12049 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12050
12051         * NEWS: Add entry describing new "set|show varsize-limit" command.
12052         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12053         command.
12054         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12055         "set variable".
12056
12057 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12058
12059         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12060         dwarf-index-write.c
12061         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12062         * dwarf-index-common.c: New file.
12063         * dwarf-index-common.h: New file.
12064         * dwarf-index-write.c: New file.
12065         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12066         (struct dwarf2_section_info): Move from here.
12067         (dwarf2_section_info_def): Likewise.
12068         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12069         (offset_type): Likewise.
12070         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12071         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12072         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12073         (byte_swap): Likewise.
12074         (MAYBE_SWAP): Likewise.
12075         (dwarf2_per_cu_ptr): Likewise.
12076         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12077         (struct tu_stats): Likewise.
12078         (struct dwarf2_per_objfile): Likewise.
12079         (struct dwarf2_per_cu_data): Likewise.
12080         (struct signatured_type): Likewise.
12081         (sig_type_ptr): Likewise.
12082         (DEF_VEC_P (sig_type_ptr)): Likewise.
12083         (INDEX4_SUFFIX): Likewise.
12084         (INDEX5_SUFFIX): Likewise.
12085         (DEBUG_STR_SUFFIX): Likewise.
12086         (dwarf2_read_section): Make non-static.
12087         (mapped_index_string_hash): Move from here.
12088         (dwarf5_djb_hash): Likewise.
12089         (file_write): Likewise.
12090         (class data_buf): Likewise.
12091         (struct symtab_index_entry): Likewise.
12092         (struct mapped_symtab): Likewise.
12093         (find_slot): Likewise.
12094         (hash_expand): Likewise.
12095         (add_index_entry): Likewise.
12096         (uniquify_cu_indices): Likewise.
12097         (class c_str_view): Likewise.
12098         (class c_str_view_hasher): Likewise.
12099         (class vector_hasher): Likewise.
12100         (write_hash_table): Likewise.
12101         (psym_index_map): Likewise.
12102         (struct addrmap_index_data): Likewise.
12103         (add_address_entry): Likewise.
12104         (add_address_entry_worker): Likewise.
12105         (write_address_map): Likewise.
12106         (symbol_kind): Likewise.
12107         (write_psymbols): Likewise.
12108         (struct signatured_type_index_data): Likewise.
12109         (write_one_signatured_type): Likewise.
12110         (recursively_count_psymbols): Likewise.
12111         (recursively_write_psymbols): Likewise.
12112         (class debug_names): Likewise.
12113         (check_dwarf64_offsets): Likewise.
12114         (psyms_seen_size): Likewise.
12115         (write_gdbindex): Likewise.
12116         (write_debug_names): Likewise.
12117         (assert_file_size): Likewise.
12118         (write_psymtabs_to_index): Likewise.
12119         (save_gdb_index_command): Likewise.
12120         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12121         command.
12122         * dwarf2read.h: New file.
12123
12124 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12125
12126         PR gdb/22670
12127         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12128         symbol name if the CU's language stores symbol names in linkage
12129         format.
12130         * language.h (struct language_defn)
12131         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12132         all instances of this struct.
12133
12134 2018-03-26  Tom Tromey  <tom@tromey.com>
12135
12136         * stack.c (backtrace_command_1): Remove verbose code.
12137
12138 2018-03-26  Tom Tromey  <tom@tromey.com>
12139
12140         * python/py-framefilter.c (py_print_type): Don't catch
12141         exceptions.  Return void.
12142         (py_print_value): Likewise.
12143         (py_print_single_arg): Likewise.
12144         (enumerate_args): Don't catch exceptions.
12145         (py_print_args): Likewise.
12146         (py_print_frame): Likewise.
12147         (gdbpy_apply_frame_filter): Catch exceptions here.
12148
12149 2018-03-26  Tom Tromey  <tom@tromey.com>
12150
12151         * stack.c (_initialize_stack): Remove trailing newlines from help
12152         text.  Add "Usage" line to "backtrace" help.
12153
12154 2018-03-26  Tom Tromey  <tom@tromey.com>
12155
12156         PR python/16486:
12157         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12158
12159 2018-03-26  Tom Tromey  <tom@tromey.com>
12160
12161         * python/py-framefilter.c (py_print_single_arg): Return
12162         EXT_LANG_BT_ERROR from catch.
12163
12164 2018-03-26  Tom Tromey  <tom@tromey.com>
12165
12166         PR backtrace/15584:
12167         * stack.c (backtrace_command_1): Move some code into no-filters
12168         "if".
12169
12170 2018-03-26  Tom Tromey  <tom@tromey.com>
12171
12172         * python/py-framefilter.c (throw_quit_or_print_exception): New
12173         function.
12174         (gdbpy_apply_frame_filter): Use it.
12175
12176 2018-03-26  Tom Tromey  <tom@tromey.com>
12177
12178         PR cli/17716:
12179         * python/py-framefilter.c (py_print_type, py_print_value)
12180         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12181         RETURN_MASK_ERROR.
12182
12183 2018-03-26  Tom Tromey  <tom@tromey.com>
12184
12185         * python/py-framefilter.c (enumerate_args): Use
12186         gdb::unique_xmalloc_ptr.
12187
12188 2018-03-26  Tom Tromey  <tom@tromey.com>
12189
12190         * python/py-framefilter.c (py_print_frame): Return
12191         EXT_LANG_BT_OK.
12192         (gdbpy_apply_frame_filter): Update comment.
12193         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12194         Remove.
12195         <EXT_LANG_BT_NO_FILTERS>: Change value.
12196
12197 2018-03-26  Tom Tromey  <tom@tromey.com>
12198
12199         PR backtrace/15582:
12200         * stack.c (backtrace_command): Parse "hide" argument.
12201         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12202         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12203         constant.
12204
12205 2018-03-26  Tom Tromey  <tom@tromey.com>
12206
12207         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12208         add "flags".
12209         (backtrace_command): Remove "fulltrace", add "flags".
12210
12211 2018-03-26  Tom Tromey  <tom@tromey.com>
12212
12213         * stack.c (backtrace_command): Rewrite command line parsing.
12214
12215 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12216
12217         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12218
12219 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12220
12221         * filename-seen-cache.h: Add include guard.
12222
12223 2018-03-26  Keith Seitz  <keiths@redhat.com>
12224
12225         * symfile.c (place_section): Remove "struct" from section_addr_info
12226         in comment.
12227         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12228         "struct" keyword from section_addr_info.
12229
12230 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12231
12232         * regformats/regdef.h (reg): Add constructors.
12233
12234 2018-03-25  Pedro Alves  <palves@redhat.com>
12235
12236         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12237         if then/else bodies in var_func_name extraction.
12238
12239 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12240
12241         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12242         lookup_minimal_symbol() to find symbol entry.
12243         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12244
12245 2018-03-23  Keith Seitz  <keiths@redhat.com>
12246
12247         PR c++/22968
12248         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12249         nested type definitions for C++, too.
12250
12251 2018-03-23  Tom Tromey  <tom@tromey.com>
12252
12253         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12254         a typedef.
12255         (macho_register_oso): Remove.
12256         (macho_symtab_read): Take a std::vector.
12257         (oso_el_compare_name): Now a std::sort comparator.
12258         (macho_symfile_read_all_oso): Take a std::vector.
12259         (macho_symfile_read): Use std::vector.  Remove cleanups.
12260
12261 2018-03-22  Tom Tromey  <tom@tromey.com>
12262
12263         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12264         (record_full_goto_bookmark): Use std::string.
12265
12266 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12267
12268         PR tdep/18295
12269         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12270         a single mask.
12271
12272 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12273
12274         * rs6000-tdep.c (store_insn_p): New function.
12275         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12276         and cr_reg to their unshifted values. Use store_insn_p to
12277         match LR saves using either R1 or fdata->alloca_reg. Use
12278         store_insn_p to match CR saves. Set alloca_reg_offset
12279         when alloca_reg and framep are set. Remove lr_reg shift
12280         when assigning to fdata->lr_register.
12281
12282 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12283
12284         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12285         command line args instead of emitting a warning.
12286
12287 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12288
12289         * tracepoint.h (struct static_tracepoint_marker): Initialize
12290         fields, define default constructor, move constructor and move
12291         assignment, disable the rest.
12292         <str_id, extra>: Make std::string.
12293         (release_static_tracepoint_marker): Remove.
12294         (free_current_marker): Remove.
12295         * tracepoint.c (free_current_marker): Remove.
12296         (parse_static_tracepoint_marker_definition): Adjust to
12297         std::string, use new hex2str overload.
12298         (release_static_tracepoint_marker): Remove.
12299         (print_one_static_tracepoint_marker): Get marker by reference
12300         and adjust to std::string.
12301         (info_static_tracepoint_markers_command): Adjust to std::vector
12302         changes
12303         * target.h (static_tracepoint_marker_p): Remove typedef.
12304         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12305         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12306         bool.
12307         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12308         * target-debug.h
12309         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12310         (target_debug_print_std_vector_static_tracepoint_marker): New.
12311         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12312         to...
12313         (target_debug_print_static_tracepoint_marker_p): ... this.
12314         * target-delegates.c: Re-generate.
12315         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12316         Make std::string.
12317         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12318         (decode_static_tracepoint_spec): Adjust to std::vector.
12319         (tracepoint_print_one_detail): Adjust to std::string.
12320         (strace_marker_decode_location): Adjust to std::string.
12321         (update_static_tracepoint): Adjust to std::string, remove call
12322         to release_static_tracepoint_marker.
12323         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12324         Adjust to std::vector.
12325         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12326         (remote_static_tracepoint_markers_by_strid): Adjust to
12327         std::vector.
12328         * common/rsp-low.h (hex2str): New overload with explicit count
12329         of bytes.
12330         * common/rsp-low.c (hex2str): New overload with explicit count
12331         of bytes.
12332         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12333         (_initialize_rsp_low_selftests): Add test_hex2str test.
12334         * unittests/tracepoint-selftests.c
12335         (test_parse_static_tracepoint_marker_definition): Adjust to
12336         std::string.
12337
12338 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12339
12340         * tracepoint.c (parse_static_tracepoint_marker_definition):
12341         Consider case where the definition is followed by more
12342         definitions.
12343         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12344         tracepoint-selftests.c.
12345         * unittests/tracepoint-selftests.c: New.
12346
12347 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12348
12349         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12350         Carvalho.
12351
12352 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12353
12354         * symtab.c (find_pc_sect_line): fixed indentation.
12355
12356 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12357
12358         * symtab.c (find_pc_sect_line): now uses binary search.
12359
12360 2018-03-19  Tom Tromey  <tom@tromey.com>
12361
12362         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12363         "IDENT" production.
12364
12365 2018-03-19  Pedro Alves  <palves@redhat.com>
12366             Tom Tromey  <tom@tromey.com>
12367
12368         * unittests/observable-selftests.c: New file.
12369         * common/observable.h: New file.
12370         * observable.h: New file.
12371         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12372         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12373         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12374         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12375         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12376         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12377         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12378         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12379         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12380         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12381         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12382         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12383         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12384         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12385         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12386         tui/tui-interp.c, valops.c: Update all users.
12387         * tui/tui-hooks.c (tui_bp_created_observer)
12388         (tui_bp_deleted_observer, tui_bp_modified_observer)
12389         (tui_inferior_exit_observer, tui_before_prompt_observer)
12390         (tui_normal_stop_observer, tui_register_changed_observer):
12391         Remove.
12392         (tui_observers_token): New global.
12393         (attach_or_detach, tui_attach_detach_observers): New functions.
12394         (tui_install_hooks, tui_remove_hooks): Use
12395         tui_attach_detach_observers.
12396         * record-btrace.c (record_btrace_thread_observer): Remove.
12397         (record_btrace_thread_observer_token): New global.
12398         * observer.sh: Remove.
12399         * observer.c: Rename to observable.c.
12400         * observable.c (namespace gdb_observers): Define new objects.
12401         (observer_debug): Move into gdb_observers namespace.
12402         (struct observer, struct observer_list, xalloc_observer_list_node)
12403         (xfree_observer_list_node, generic_observer_attach)
12404         (generic_observer_detach, generic_observer_notify): Remove.
12405         (_initialize_observer): Update.
12406         Don't include observer.inc.
12407         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12408         (clean mostlyclean): Likewise.
12409         (observer.h, observer.inc): Remove targets.
12410         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12411         (COMMON_SFILES): Use observable.c, not observer.c.
12412         * .gitignore: Remove observer.h.
12413
12414 2018-03-18  Tom Tromey  <tom@tromey.com>
12415
12416         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12417         gdb::def_vector.
12418         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12419
12420 2018-03-17  Tom Tromey  <tom@tromey.com>
12421
12422         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12423
12424 2018-03-17  Tom Tromey  <tom@tromey.com>
12425
12426         * target.c (class scoped_target_fd): New.
12427         (target_fileio_close_cleanup): Remove.
12428         (target_fileio_read_alloc_1): Use scoped_target_fd.
12429
12430 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12431
12432         * silent-rules.mk: New.
12433         * Makefile.in: Include silent-rules.mk
12434         (srcdir, VPATH, top_srcdir): Move up.
12435         (COMPILE): Add ECHO_CXX.
12436         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12437         (init.c): Add ECHO_INIT_C.
12438         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12439         (version.c): Add ECHO_GEN.
12440         (printcmd.o): Add ECHO_CXX.
12441         (target-float.o): Add ECHO_CXX.
12442         (ada-exp.o): Add ECHO_CXX.
12443         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12444         (insight$(EXEEXT)): Add ECHO_CXXLD.
12445         * gnulib/configure.ac: Add AM_SILENT_RULES.
12446         * gnulib/aclocal.m4: Re-generate.
12447         * gnulib/configure: Re-generate.
12448         * gnulib/import/Makefile.in: Re-generate.
12449
12450 2018-03-16  Tom Tromey  <tom@tromey.com>
12451
12452         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12453         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12454         * utils.c (do_free_section_addr_info)
12455         (make_cleanup_free_section_addr_info): Remove.
12456         * symfile.h (struct other_sections): Add constructor.
12457         (struct section_addr_info): Remove.
12458         (section_addr_info): New typedef.
12459         (struct sym_fns) <sym_offsets>: Change type of parameter.
12460         (build_section_addr_info_from_objfile)
12461         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12462         (default_symfile_offsets, symbol_file_add)
12463         (symbol_file_add_from_bfd)
12464         (build_section_addr_info_from_section_table): Update.
12465         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12466         * symfile.c (alloc_section_addr_info): Remove.
12467         (build_section_addr_info_from_section_table): Change return type.
12468         Update.
12469         (build_section_addr_info_from_bfd)
12470         (build_section_addr_info_from_objfile): Likewise.
12471         (free_section_addr_info): Remove.
12472         (relative_addr_info_to_section_offsets): Change type of "addrs".
12473         (addrs_section_compar): Now a std::sort comparator.
12474         (addrs_section_sort): Change return type.
12475         (addr_info_make_relative): Change type of "addrs".  Update.
12476         (default_symfile_offsets, syms_from_objfile_1)
12477         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12478         (symbol_file_add_separate): Update.
12479         (symbol_file_add): Change type of "addrs".  Update.
12480         (add_symbol_file_command): Update.  Remove cleanups.
12481         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12482         cleanups.
12483         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12484         * solib.c (solib_read_symbols): Update.
12485         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12486         * machoread.c (macho_symfile_offsets): Update.
12487         * jit.c (jit_bfd_try_read_symtab): Update.
12488
12489 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12490
12491         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12492         unittests/utils-selftests.c.
12493         * unittests/utils-selftests.c: New file.
12494
12495 2018-03-14  Tom Tromey  <tom@tromey.com>
12496
12497         PR cli/14977:
12498         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12499         for NULL.
12500
12501 2018-03-14  Tom Tromey  <tom@tromey.com>
12502
12503         PR cli/19918:
12504         * printcmd.c (printf_pointer): Allow "-" in format.
12505
12506 2018-03-14  Tom Tromey  <tom@tromey.com>
12507
12508         * printcmd.c (_initialize_printcmd): Add usage to printf.
12509
12510 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12511
12512         * MAINTAINERS: Update my email address.
12513
12514 2018-03-13  Tom Tromey  <tom@tromey.com>
12515
12516         * machoread.c (macho_check_dsym): Change filenamep to a
12517         std::string*.
12518         (macho_symfile_read): Update.
12519         * symfile.c (load_command): Use std::string.
12520
12521 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12522
12523         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12524         to error message string.
12525         (riscv_register_name): Use xsnprintf instead of sprintf.
12526         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12527         internal_error.
12528         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12529         error.
12530         (riscv_push_dummy_call): Likewise.
12531
12532 2018-03-12  Tom Tromey  <tom@tromey.com>
12533
12534         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12535         Use gdb::byte_vector.
12536         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12537
12538 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12539
12540         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12541         parameter type to readable_regcache.
12542         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12543         the declaration.
12544
12545 2018-03-11  Tom Tromey  <tom@tromey.com>
12546
12547         * dwarf2read.c (struct nextfield): Add initializers.
12548         (struct nextfnfield): Remove.
12549         (struct fnfieldlist): Add initializers.  Remove "length" and
12550         "head", use std::vector.
12551         (struct decl_field_list): Remove.
12552         (struct field_info): Add initializers.
12553         <fields, baseclasses>: Now std::vector.
12554         <nbaseclasses, nfnfields, typedef_field_list_count,
12555         nested_types_list_count>: Remove.
12556         (dwarf2_add_field, dwarf2_add_type_defn)
12557         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12558         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12559         (process_structure_scope): Update.
12560
12561 2018-03-11  Tom Tromey  <tom@tromey.com>
12562
12563         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12564         for use by std::sort.
12565         (build_type_psymtabs_1): Use std::vector.
12566
12567 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12568
12569         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12570         and LIBMPFR in the printed configuration.
12571
12572 2018-03-08  Tom Tromey  <tom@tromey.com>
12573
12574         * source.c (get_filename_and_charpos): Use scoped_fd.
12575         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12576         (procfs_pidlist): Likewise.
12577         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12578         (iterate_over_mappings): Likewise.
12579
12580 2018-03-08  Tom Tromey  <tom@tromey.com>
12581
12582         * infcall.c (struct call_return_meta_info)
12583         <stack_temporaries_enabled>: Remove.
12584         (get_call_return_value, call_function_by_hand_dummy): Update.
12585         * thread.c (disable_thread_stack_temporaries): Remove.
12586         (enable_thread_stack_temporaries): Remove.
12587         (thread_stack_temporaries_enabled_p): Return bool.
12588         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12589         (get_last_thread_stack_temporary): Update.
12590         * eval.c (evaluate_subexp): Update.
12591         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12592         class, not a function.
12593         (value_ptr, value_vec): Remove typedefs.
12594         (class thread_info) <stack_temporaries_enabled>: Now bool.
12595         <stack_temporaries>: Now a std::vector.
12596         (thread_stack_temporaries_enabled_p)
12597         (value_in_thread_stack_temporaries): Return bool.
12598
12599 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12600
12601         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12602         (getpkt_or_notif_sane_1): Likewise.
12603
12604 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12605
12606         * build-id.c (build_id_to_debug_bfd): Use std::string.
12607
12608 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12609
12610         * build-id.c (find_separate_debug_file_by_buildid): Return
12611         std::string.
12612         * build-id.h (find_separate_debug_file_by_buildid): Return
12613         std::string.
12614         * coffread.c (coff_symfile_read): Adjust to std::string.
12615         * elfread.c (elf_symfile_read): Adjust to std::string.
12616         * symfile.c (separate_debug_file_exists): Change parameter to
12617         std::string.
12618         (find_separate_debug_file): Return std::string.
12619         (find_separate_debug_file_by_debuglink): Return std::string.
12620         * symfile.h (find_separate_debug_file_by_debuglink): Return
12621         std::string.
12622
12623 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12624
12625         * common/xml-utils.c (xml_escape_text): Move code to...
12626         (xml_escape_text_append): ... this new function.
12627         * common/xml-utils.h (xml_escape_text_append): New declaration.
12628         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12629         New function.
12630         (_initialize_xml_utils): register test_xml_escape_text_append as
12631         a selftest.
12632
12633 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12634
12635         * defs.h: Remove MAX_REGISTER_SIZE.
12636         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12637         asserts.
12638         * python/py-unwind.c (pyuw_sniffer): Likewise.
12639
12640 2018-03-07  Tom Tromey  <tom@tromey.com>
12641
12642         * linux-tdep.c (linux_info_proc): Update.
12643         * target.h (struct target_ops) <to_fileio_readlink>: Return
12644         optional<string>.
12645         (target_fileio_readlink): Return optional<string>.
12646         * remote.c (remote_hostio_readlink): Return optional<string>.
12647         * inf-child.c (inf_child_fileio_readlink): Return
12648         optional<string>.
12649         * target.c (target_fileio_readlink): Return optional<string>.
12650
12651 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12652
12653         * regcache.c (cooked_read_test): Add riscv to the list of
12654         architectures that have a save_reggroup.
12655
12656 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12657
12658         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12659         value is not a dynamic class object.
12660
12661 2018-03-06  Tom Tromey  <tom@tromey.com>
12662
12663         * rust-exp.y: Formatting fixes.
12664
12665 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12666
12667         * riscv-tdep.c (riscv_register_name): Remove target description
12668         support.
12669         (riscv_gdbarch_init): Remove target description check.
12670
12671 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12672
12673         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12674         comment.
12675         * riscv-tdep.h: Likewise.
12676
12677 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12678
12679         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12680         (riscv_pseudo_register_write): Delete.
12681         (riscv_gdbarch_init): Remove all use of pseudo registers.
12682
12683 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12684
12685         * record-btrace.c (btrace_print_lines): Replace cleanup
12686         parameter with RAII equivalents.
12687         (btrace_insn_history): Replace cleanup with RAII equivalents.
12688         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12689         make_cleanup_ui_out_tuple_begin_end): Remove.
12690         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12691         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12692         make_cleanup_ui_out_list_begin_end): Remove.
12693
12694 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12695
12696         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12697         parameter types to std::vector.  Use bool.
12698         (record_btrace_wait): Replace VEC(tp_t) with
12699         std::vector<thread_info *>.
12700         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12701
12702 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12703
12704         * record-btrace.c (record_btrace_disable_callback): Remove.
12705         (struct scoped_btrace_disable): New.
12706         (record_btrace_open): Use scoped_btrace_disable.
12707
12708 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12709
12710         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12711         reading values from registers.
12712
12713 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12714
12715         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12716         where appropriate.
12717
12718 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12719
12720         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12721         change parameter type.  Use GDB's print functions, and use
12722         core_addr_to_string where appropriate.
12723         (riscv_push_dummy_call): Use core_addr_to_string where
12724         appropriate, update call to riscv_print_arg_location, and reindent
12725         a few lines.
12726         (riscv_return_value): Update call to riscv_print_arg_location.
12727
12728 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12729             Tim Newsome <tim@sifive.com>
12730             Albert Ou <a0u@eecs.berkeley.edu>
12731             Darius Rad <darius@bluespec.com>
12732
12733         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12734         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12735         (ALLDEPFILES): Add riscv-tdep.c
12736         * configure.tgt: Add riscv support.
12737         * riscv-tdep.c: New file.
12738         * riscv-tdep.h: New file.
12739         * NEWS: Mention new target.
12740         * MAINTAINERS: Add entry for riscv.
12741
12742 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12743
12744         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12745         fields within aggregates.
12746
12747 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12748
12749         * record-btrace.c (btrace_print_lines): Change type of flags to
12750         gdb_disassembly_flags.
12751
12752 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12753
12754         * fbsd-nat.c: Include "inf-ptrace.h".
12755         (USE_SIGTRAP_SIGINFO): Conditionally define.
12756         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12757         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12758         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12759         function.
12760         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12761         Likewise.
12762         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12763         Likewise.
12764         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12765         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12766         "supports_stopped_by_hw_breakpoint" target methods.
12767
12768 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12769
12770         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12771         * fbsd-nat.c (debug_fbsd_nat): New variable.
12772         (show_fbsd_nat_debug): New function.
12773         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12774         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12775
12776 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12777
12778         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12779         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12780         prototype.
12781         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12782         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12783         method.
12784
12785 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12786
12787         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12788         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12789
12790 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12791
12792         * charset.c (struct charset_vector): New.
12793         (charsets): Change type to charset_vector.
12794         (find_charset_names): Adjust.
12795         (add_one): Adjust.
12796         (_initialize_charset): Adjust.
12797
12798 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12799
12800         * progspace.h (struct program_space) <deleted_solibs>: Change
12801         type to std::vector<std::string>.
12802         * progspace.c (clear_program_space_solib_cache): Adjust.
12803         * breakpoint.c (print_solib_event): Adjust.
12804         (check_status_catch_solib): Adjust.
12805         * solib.c (update_solib_list): Adjust.
12806         * ui-out.h (class ui_out) <field_string>: New overload.
12807         * ui-out.c (ui_out::field_string): New overload.
12808
12809 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12810
12811         * progspace.h (struct program_space): Add constructor and
12812         destructor, initialize fields.
12813         (add_program_space): Remove.
12814         * progspace.c (add_program_space): Rename to...
12815         (program_space::program_space): ... this.
12816         (release_program_space): Rename to...
12817         (program_space::~program_space): ... this.
12818         (delete_program_space): Use delete to delete program_space.
12819         (initialize_progspace): Use new to allocate program_space.
12820         * inferior.c (add_inferior_with_spaces): Likewise.
12821         (clone_inferior_command): Likewise.
12822         * infrun.c (follow_fork_inferior): Likewise.
12823         (handle_vfork_child_exec_or_exit): Likewise.
12824
12825 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12826
12827         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12828         (delim_string_to_char_ptr_vec): Return std::vector of
12829         gdb::unique_xmalloc_ptr.
12830         (dirnames_to_char_ptr_vec_append): Take std::vector of
12831         gdb::unique_xmalloc_ptr.
12832         (dirnames_to_char_ptr_vec): Return std::vector of
12833         gdb::unique_xmalloc_ptr.
12834         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12835         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12836         (delim_string_to_char_ptr_vec): Return an std::vector of
12837         gdb::unique_xmalloc_ptr, adjust the code.
12838         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12839         gdb::unique_xmalloc_ptr, adjust the code.
12840         (dirnames_to_char_ptr_vec): Return an std::vector of
12841         gdb::unique_xmalloc_ptr, adjust the code.
12842         * auto-load.c (auto_load_safe_path_vec): Change type to
12843         std::vector of gdb::unique_xmalloc_ptr.
12844         (auto_load_expand_dir_vars): Return an std::vector of
12845         gdb::unique_xmalloc_ptr, adjust the code.
12846         (auto_load_safe_path_vec_update): Adjust.
12847         (filename_is_in_auto_load_safe_path_vec): Adjust.
12848         (auto_load_objfile_script_1): Adjust.
12849         * build-id.c (build_id_to_debug_bfd): Adjust.
12850         * linux-thread-db.c (thread_db_load_search): Adjust.
12851         * source.c (add_path): Adjust.
12852         (openp): Adjust.
12853         * symfile.c (find_separate_debug_file): Adjust.
12854         * utils.c (do_free_char_ptr_vec): Remove.
12855         (make_cleanup_free_char_ptr_vec): Remove.
12856
12857 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12858
12859         PR gdb/22907
12860         * common/pathstuff.c: Conditionally include "<windows.h>".
12861
12862 2018-03-01  Georg Sauthoff  <mail@georg.so>
12863
12864         PR gdb/22888
12865         * gcore.in: Quote variables and switch interpreter to bash.
12866
12867 2018-03-01  Tom Tromey  <tom@tromey.com>
12868
12869         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12870         assertion.  Add assertion for discriminant_index.
12871         (quirk_rust_enum): Use correct base type name in univariant case.
12872
12873 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12874
12875         * record.c (get_call_history_modifiers): Return a
12876         record_print_flags.
12877         (cmd_record_call_history): Adjust.
12878         * record-btrace.c (record_btrace_call_history): Adjust.
12879         (record_btrace_call_history_range): Adjust.
12880         (record_btrace_call_history_from): Adjust.
12881         * target-debug.h (target_debug_print_record_print_flags): New.
12882         * target-delegates.c: Re-generate.
12883         * target.c (target_call_history): Change flags type.
12884         (target_call_history_from): Likewise.
12885         (target_call_history_range): Likewise.
12886         * target.h (struct target_ops) <target_call_history>: Likewise.
12887         (target_call_history_from): Likewise.
12888         (target_call_history_range): Likewise.
12889
12890 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12891             Simon Marchi  <simon.marchi@polymtl.ca>
12892
12893         * common/common-utils.c: Include "sys/stat.h".
12894         (is_regular_file): Move here from "source.c"; change return
12895         type to "bool".
12896         * common/common-utils.h (is_regular_file): New prototype.
12897         * common/pathstuff.c (contains_dir_separator): New function.
12898         * common/pathstuff.h (contains_dir_separator): New prototype.
12899         * source.c: Don't include "sys/stat.h".
12900         (is_regular_file): Move to "common/common-utils.c".
12901
12902 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12903
12904         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12905         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12906         * auto-load.c: Include "common/pathstuff.h".
12907         * common/common-def.h (current_directory): Move here.
12908         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12909         function.
12910         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12911         prototype.
12912         * common/pathstuff.c: New file.
12913         * common/pathstuff.h: New file.
12914         * compile/compile.c: Include "common/pathstuff.h".
12915         * defs.h (current_directory): Move to "common/common-defs.h".
12916         * dwarf2read.c: Include "common/pathstuff.h".
12917         * exec.c: Likewise.
12918         * guile/scm-safe-call.c: Likewise.
12919         * linux-thread-db.c: Likewise.
12920         * main.c: Likewise.
12921         * nto-tdep.c: Likewise.
12922         * objfiles.c: Likewise.
12923         * source.c: Likewise.
12924         * symtab.c: Likewise.
12925         * utils.c: Include "common/pathstuff.h".
12926         (gdb_realpath): Move to "common/pathstuff.c".
12927         (gdb_realpath_keepfile): Likewise.
12928         (gdb_abspath): Likewise.
12929         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12930         (gdb_realpath_keepfile): Likewise.
12931         (gdb_abspath): Likewise.
12932
12933 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12934
12935         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12936         wildcard process pid for super_resume for kernels with a
12937         specific bug.
12938
12939 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12940
12941         * compile/compile.c (get_args): Add additional comments
12942         explaining function.
12943
12944 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12945             Tom Tromey  <tom@tromey.com>
12946
12947         * target.h (memory_write_request_s): Remove typedef.  Don't define
12948         VEC.
12949         (target_write_memory_blocks): Change argument to std::vector.
12950         (struct memory_write_request): Add constructor.
12951         * target-memory.c (compare_block_starting_address): Return bool.
12952         Change argument types.
12953         (claim_memory): Change arguments to use std::vector.
12954         (split_regular_and_flash_blocks, blocks_to_erase)
12955         (compute_garbled_blocks): Likewise.
12956         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12957         (target_write_memory_blocks): Change argument to std::vector.
12958         * symfile.c (struct load_section_data): Add constructor and
12959         destructor.  Use std::vector for "requests".
12960         (struct load_progress_data): Add initializers.
12961         (load_section_callback): Update.  Use "new".
12962         (clear_memory_write_data): Remove.
12963         (generic_load): Update.
12964
12965 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12966
12967         * arch/aarch64.h: Use common/tdesc.h.
12968
12969 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12970
12971         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12972         architecture with a 64-bit ABI.
12973
12974 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12975
12976         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12977         ahead of target description loading.
12978
12979 2018-02-26  Tom Tromey  <tom@tromey.com>
12980
12981         * stack.c (backtrace_command_1): Update.
12982         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12983         of "flags".
12984         * python/py-framefilter.c (py_print_frame)
12985         (gdbpy_apply_frame_filter): Change type of "flags".
12986         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12987         of "flags".
12988         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12989         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12990         * extension.h (enum frame_filter_flag): Rename from
12991         frame_filter_flags.
12992         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12993         (apply_ext_lang_frame_filter): Change type of "flags".
12994         * extension.c (apply_ext_lang_frame_filter): Change type of
12995         "flags".
12996         * extension-priv.h (struct extension_language_ops)
12997         <apply_frame_filter>: Change type of "flags".
12998
12999 2018-02-26  Tom Tromey  <tom@tromey.com>
13000
13001         PR python/16497:
13002         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13003         off-by-one in py_end computation.
13004         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13005         PRINT_MORE_FRAMES.
13006         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13007         constant.
13008
13009 2018-02-26  Tom Tromey  <tom@tromey.com>
13010
13011         * dwarf2read.c (struct variant_field): New.
13012         (struct nextfield) <variant>: New field.
13013         (dwarf2_add_field): Handle DW_TAG_variant_part.
13014         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13015         discriminated union.
13016         (read_structure_type): Handle DW_TAG_variant_part.
13017         (handle_struct_member_die): New function, extracted from
13018         process_structure_scope.  Handle DW_TAG_variant.
13019         (process_structure_scope): Handle discriminated unions.  Call
13020         handle_struct_member_die.
13021
13022 2018-02-26  Tom Tromey  <tom@tromey.com>
13023
13024         * rust-lang.h (rust_last_path_segment): Declare.
13025         * rust-lang.c (rust_last_path_segment): Now public.  Change
13026         contract.
13027         (struct disr_info): Remove.
13028         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13029         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13030         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13031         (rust_enum_p, rust_enum_variant): New function.
13032         (rust_underscore_fields): Remove "offset" parameter.
13033         (rust_print_enum): New function.
13034         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13035         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13036         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13037         enums.
13038         (rust_internal_print_type): New function, from rust_print_type.
13039         Remove enum code.
13040         (rust_print_type): Call rust_internal_print_type.
13041         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13042         Update enum handling.
13043         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13044         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13045         (rust_union_quirks): New functions.
13046         (process_full_comp_unit, process_full_type_unit): Call
13047         rust_union_quirks.
13048         (process_structure_scope): Update rust_unions if necessary.
13049
13050 2018-02-26  Tom Tromey  <tom@tromey.com>
13051
13052         * value.h (value_union_variant): Declare.
13053         * valops.c (value_union_variant): New function.
13054         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13055         (struct discriminant_info): New.
13056         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13057         enumerator.
13058         (struct main_type) <flag_discriminated_union>: New field.
13059
13060 2018-02-26  Tom Tromey  <tom@tromey.com>
13061
13062         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13063         unittests/unpack-selftests.c.
13064         * unittests/unpack-selftests.c: New file.
13065         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13066
13067 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13068
13069         * dwarf2read.c (struct partial_die_info) <read>: New method.
13070         (read_partial_die): Remove the declaration.
13071         (load_partial_dies): Update.
13072         (partial_die_info::partial_die_info):
13073         (read_partial_die): Change it to partial_die_info::read.
13074
13075 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13076
13077         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13078         (fixup_partial_die): Remove declaration.
13079         (scan_partial_symbols): Update.
13080         (partial_die_parent_scope): Likewise.
13081         (partial_die_full_name): Likewise.
13082         (fixup_partial_die): Change it to partial_die_info::fixup.
13083
13084 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13085
13086         * dwarf2read.c (read_partial_die): Update the declaration.
13087         (load_partial_dies): Caller update.
13088         (read_partial_die): Remove one argument abbrev_len.
13089
13090 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13091
13092         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13093         assignment operator.
13094         (load_partial_dies): Use ctor and copy ctor.
13095         (read_partial_die): Update.
13096         (dwarf2_cu::find_partial_die): Use ctor.
13097
13098 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13099
13100         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13101         (find_partial_die_in_comp_unit): Change it to
13102         dwarf2_cu::find_partial_die.
13103         (find_partial_die): Update.
13104
13105 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13106
13107         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13108         is NULL.
13109
13110 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13111
13112         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13113
13114 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13115
13116         * arch/amd64.h: Use common/tdesc.h.
13117         * arch/i386.c: Likewise.
13118         * arch/i386.h: Likewise.
13119         * arch/tic6x.c: Likewise.
13120         * arch/tdesc.h: Move file from here...
13121         * common/tdesc.h: ...to here.
13122         * features/aarch64-core.c: Regenerate.
13123         * features/aarch64-fpu.c: Regenerate.
13124         * features/i386/32bit-avx.c: Regenerate.
13125         * features/i386/32bit-avx512.c: Regenerate.
13126         * features/i386/32bit-core.c: Regenerate.
13127         * features/i386/32bit-linux.c: Regenerate.
13128         * features/i386/32bit-mpx.c: Regenerate.
13129         * features/i386/32bit-pkeys.c: Regenerate.
13130         * features/i386/32bit-sse.c: Regenerate.
13131         * features/i386/64bit-avx.c: Regenerate.
13132         * features/i386/64bit-avx512.c: Regenerate.
13133         * features/i386/64bit-core.c: Regenerate.
13134         * features/i386/64bit-linux.c: Regenerate.
13135         * features/i386/64bit-mpx.c: Regenerate.
13136         * features/i386/64bit-pkeys.c: Regenerate.
13137         * features/i386/64bit-segments.c: Regenerate.
13138         * features/i386/64bit-sse.c: Regenerate.
13139         * features/i386/x32-core.c: Regenerate.
13140         * features/tic6x-c6xp.c: Regenerate.
13141         * features/tic6x-core.c: Regenerate.
13142         * features/tic6x-gp.c: Regenerate.
13143         * target-descriptions.c: Use common/tdesc.h.
13144         * target-descriptions.h: Likewise.
13145
13146 2018-02-24  Tom Tromey  <tom@tromey.com>
13147
13148         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13149         (try_thread_db_load_from_dir, thread_db_load_search): Use
13150         std::string.
13151         (info_auto_load_libthread_db_compare): Return bool.  Change
13152         argument types.
13153         (info_auto_load_libthread_db): Use std::vector, std::string.
13154         Remove cleanups.
13155
13156 2018-02-24  Tom Tromey  <tom@tromey.com>
13157
13158         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13159         std::string.
13160         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13161         std::string*.
13162         * gdbarch.c: Rebuild.
13163         * gdbarch.h: Rebuild.
13164         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13165         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13166         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13167         std::string*.
13168
13169 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13170
13171         * gdbtypes.h (sect_offset): Change type to uint64_t.
13172         (sect_offset_str): New function.
13173         * dwarf2read.c (create_addrmap_from_aranges): Use
13174         sect_offset_str.
13175         (error_check_comp_unit_head): Likewise.
13176         (create_debug_type_hash_table): Likewise.
13177         (read_cutu_die_from_dwo): Likewise.
13178         (init_cutu_and_read_dies): Likewise.
13179         (init_cutu_and_read_dies_no_follow): Likewise.
13180         (process_psymtab_comp_unit_reader): Likewise.
13181         (partial_die_parent_scope): Likewise.
13182         (peek_die_abbrev): Likewise.
13183         (process_queue): Likewise.
13184         (dwarf2_physname): Likewise.
13185         (read_namespace_alias): Likewise.
13186         (read_import_statement): Likewise.
13187         (create_dwo_cu_reader): Likewise.
13188         (create_cus_hash_table): Likewise.
13189         (lookup_dwo_cutu): Likewise.
13190         (inherit_abstract_dies): Likewise.
13191         (read_func_scope): Likewise.
13192         (read_call_site_scope): Likewise.
13193         (dwarf2_add_member_fn): Likewise.
13194         (read_common_block): Likewise.
13195         (read_module_type): Likewise.
13196         (read_typedef): Likewise.
13197         (read_subrange_type): Likewise.
13198         (load_partial_dies): Likewise.
13199         (read_partial_die): Likewise.
13200         (find_partial_die): Likewise.
13201         (read_str_index): Likewise.
13202         (dwarf2_string_attr): Likewise.
13203         (build_error_marker_type): Likewise.
13204         (lookup_die_type): Likewise.
13205         (dump_die_shallow): Likewise.
13206         (follow_die_ref): Likewise.
13207         (dwarf2_fetch_die_loc_sect_off): Likewise.
13208         (dwarf2_fetch_constant_bytes): Likewise.
13209         (follow_die_sig): Likewise.
13210         (get_signatured_type): Likewise.
13211         (get_DW_AT_signature_type): Likewise.
13212         (dwarf2_find_containing_comp_unit): Likewise.
13213         (set_die_type): Likewise.
13214
13215 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13216
13217         * arch/aarch64.c: Include "common-defs.h".
13218         * arch/amd64.c: Likewise.
13219         * arch/i386.c: Likewise.
13220
13221 2018-02-21  Tom Tromey  <tom@tromey.com>
13222
13223         * value.h: (extract_field_op): Update.
13224         * eval.c (extract_field_op): Return a const char *.
13225         * expression.h (parse_expression_for_completion): Update.
13226         * completer.c (complete_expression): Update.
13227         (add_struct_fields): Make fieldname const.
13228         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13229         (mark_completion_tag, parse_exp_in_context_1): Update.
13230         (parse_expression_for_completion): Change "name" to
13231         unique_xmalloc_ptr*.
13232
13233 2018-02-21  Tom Tromey  <tom@tromey.com>
13234
13235         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13236
13237 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13238
13239         * avr-tdep.c (avr_read_pc): Change parameter type to
13240         readable_regcache.
13241         * gdbarch.sh (read_pc): Likewise.
13242         * gdbarch.c: Re-generated.
13243         * gdbarch.h: Re-generated.
13244         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13245         readable_regcache.
13246         * ia64-tdep.c (ia64_read_pc): Likewise.
13247         * mips-tdep.c (mips_read_pc): Likewise.
13248         * spu-tdep.c (spu_read_pc): Likewise.
13249
13250 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13251
13252         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13253         * regcache-dump.c: New file.
13254         * regcache.c: Move register_dump to regcache-dump.c.
13255         (maintenance_print_registers): Likewise.
13256         (maintenance_print_raw_registers): Likewise.
13257         (maintenance_print_cooked_registers): Likewise.
13258         (maintenance_print_register_groups): Likewise.
13259         (maintenance_print_remote_registers): Likewise.
13260         (_initialize_regcache): Likewise.
13261         * regcache.h (register_dump): Moved from regcache.c.
13262
13263 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13264
13265         * regcache.c (regcache::regcache): Update.
13266         (regcache::invalidate): Move it to detached_regcache::invalidate.
13267         (get_thread_arch_aspace_regcache): Update.
13268         (regcache::raw_update): Update.
13269         (regcache::cooked_read): Remove some code.
13270         (regcache::cooked_read_value): Likewise.
13271         (regcache::raw_write): Remove assert on m_readonly_p.
13272         (regcache::raw_supply_integer): Move it to
13273         detached_regcache::raw_supply_integer.
13274         (regcache::raw_supply_zeroed): Likewise.
13275         * regcache.h (detached_regcache) <raw_supply_integer>: New
13276         declaration.
13277         <raw_supply_zeroed, invalidate>: Likewise.
13278         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13279         <invalidate>: Likewise.
13280         <m_readonly_p>: Removed.
13281
13282 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13283
13284         * infcmd.c (get_return_value): Let stop_regs point to
13285         get_current_regcache.
13286         * regcache.c (regcache::regcache): Remove.
13287         (register_dump_reg_buffer): New class.
13288         (regcache_print): Adjust.
13289         * regcache.h (regcache): Remove constructors.
13290
13291 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13292
13293         * regcache.c (class register_dump): New class.
13294         (register_dump_regcache, register_dump_none): New class.
13295         (register_dump_remote, register_dump_groups): New class.
13296         (regcache_print): Update.
13297         * regcache.h (regcache_dump_what): Move it to regcache.c.
13298         (regcache) <dump>: Remove.
13299
13300 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13301
13302         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13303          reg_buffer_rw *.
13304         (jit_unwind_reg_set_impl): Call raw_supply.
13305         (jit_frame_sniffer): Use reg_buffer_rw.
13306         * record-full.c (record_full_core_regbuf): Change its type.
13307         (record_full_core_open_1): Use reg_buffer_rw.
13308         (record_full_close): Likewise.
13309         (record_full_core_fetch_registers): Use regcache->raw_supply.
13310         (record_full_core_store_registers): Likewise.
13311         * regcache.c (regcache::get_register_status): Move it to
13312         reg_buffer.
13313         (regcache_raw_set_cached_value): Remove.
13314         (regcache::raw_set_cached_value): Remove.
13315         (regcache::raw_write): Call raw_supply.
13316         (regcache::raw_supply): Move it to reg_buffer_rw.
13317         * regcache.h (regcache_raw_set_cached_value): Remove.
13318         (reg_buffer_rw): New class.
13319
13320 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13321
13322         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13323         readonly_detached_regcache.
13324         (dummy_frame_prev_register): Use regcache->cooked_read.
13325         * frame.c (frame_save_as_regcache): Change return type.
13326         (frame_pop): Update.
13327         * frame.h (frame_save_as_regcache): Update declaration.
13328         * inferior.h (get_infcall_suspend_state_regcache): Update
13329         declaration.
13330         * infrun.c (infcall_suspend_state) <registers>: use
13331         readonly_detached_regcache.
13332         (save_infcall_suspend_state): Don't use regcache_dup.
13333         (get_infcall_suspend_state_regcache): Change return type.
13334         * linux-fork.c (struct fork_info) <savedregs>: Change to
13335         readonly_detached_regcache.
13336         <pc>: New field.
13337         (fork_save_infrun_state): Don't use regcache_dup.
13338         (info_checkpoints_command): Adjust.
13339         * mi/mi-main.c (register_changed_p): Update declaration.
13340         (mi_cmd_data_list_changed_registers): Use
13341         readonly_detached_regcache.
13342         (register_changed_p): Change parameter type to
13343         readonly_detached_regcache.
13344         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13345         readonly_detached_regcache.
13346         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13347         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13348         New.
13349         (regcache::save): Move it to reg_buffer.
13350         (regcache::restore): Change parameter type.
13351         (regcache_dup): Remove.
13352         * regcache.h (reg_buffer) <save>: New method.
13353         (readonly_detached_regcache): New class.
13354         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13355         readonly_detached_regcache.
13356         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13357
13358 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13359
13360         * frame.c (frame_save_as_regcache): Use regcache method save.
13361         (frame_pop): Use regcache method restore.
13362         * infrun.c (restore_infcall_suspend_state): Likewise.
13363         * linux-fork.c (fork_load_infrun_state): Likewise.
13364         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13365         save.
13366         * regcache.c (regcache_save): Remove.
13367         (regcache::restore): More asserts.
13368         (regcache_cpy): Remove.
13369         * regcache.h (regcache_save): Remove the declaration.
13370         (regcache::restore): Move from private to public.
13371         Remove the friend declaration of regcache_cpy.
13372         (regcache_cpy): Remove declaration.
13373
13374 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13375
13376         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13377         parameter type to 'readable_regcache *'.
13378         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13379         * arm-tdep.c (arm_neon_quad_read): Likewise.
13380         (arm_pseudo_read): Likewise.
13381         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13382         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13383         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13384         * gdbarch.c: Re-generated.
13385         * gdbarch.h: Re-generated.
13386         * gdbarch.sh (pseudo_register_read): Change parameter type to
13387         'readable_regcache *'.
13388         (pseudo_register_read_value): Likewise.
13389         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13390         (h8300_pseudo_register_read): Likewise.
13391         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13392         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13393         (i386_pseudo_register_read_into_value): Likewise.
13394         (i386_pseudo_register_read_value): Likewise.
13395         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13396         declaration.
13397         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13398         * m32c-tdep.c (m32c_raw_read): Likewise.
13399         (m32c_read_flg): Likewise.
13400         (m32c_banked_register): Likewise.
13401         (m32c_banked_read): Likewise.
13402         (m32c_sb_read): Likewise.
13403         (m32c_part_read): Likewise.
13404         (m32c_cat_read): Likewise.
13405         (m32c_r3r2r1r0_read): Likewise.
13406         (m32c_pseudo_register_read): Likewise.
13407         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13408         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13409         (mep_pseudo_cr64_read): Likewise.
13410         (mep_pseudo_register_read): Likewise.
13411         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13412         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13413         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13414         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13415         (regcache::cooked_read): Likewise.
13416         (regcache::cooked_read_value): Likewise.
13417         (regcache_cooked_read_signed):
13418         (regcache::cooked_read): Likewise.
13419         * regcache.h (readable_regcache): New class.
13420         (regcache): Inherit readable_regcache.  Move some methods to
13421         readable_regcache.
13422         * rl78-tdep.c (rl78_pseudo_register_read): Change
13423         parameter type to 'readable_regcache *'.
13424         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13425         (e500_pseudo_register_read): Change parameter type to
13426         'readable_regcache *'.
13427         (dfp_pseudo_register_read): Likewise.
13428         (vsx_pseudo_register_read): Likewise.
13429         (efpr_pseudo_register_read): Likewise.
13430         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13431         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13432         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13433         (sh64_pseudo_register_read): Likewise.
13434         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13435         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13436         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13437         (spu_pseudo_register_read): Likewise.
13438         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13439         (xtensa_pseudo_register_read): Likewise.
13440
13441 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13442
13443         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13444         (regcache::arch): Move it to reg_buffer::arch.
13445         (regcache::register_buffer): Likewise.
13446         (regcache::assert_regnum): Likewise.
13447         (regcache::num_raw_registers): Likewise.
13448         * regcache.h (reg_buffer): New class.
13449         (regcache): Inherit reg_buffer.
13450
13451 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13452
13453         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13454         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13455
13456 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13457
13458         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13459
13460 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13461
13462         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13463         (SFILES): Remove common/*.c files.
13464         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13465         * common/common.host: Add common reference.
13466         * configure.ac: Likewise.
13467         * configure: Regenerate.
13468
13469 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13470
13471         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13472         (block_initialize_namespace): Use new.
13473         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13474         (dwarf2_free_objfile): Use delete.
13475         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13476         (copy_type_recursive): Use new.
13477         * gdb_obstack.h (allocate_on_obstack): New.
13478
13479 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13480
13481         PR gdb/22849
13482         * inferior.c (exit_inferior_1): Reset inf->control.
13483
13484 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13485
13486         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13487         declaration.
13488
13489 2018-02-14  Pedro Alves  <palves@redhat.com>
13490
13491         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13492         frame_cleanup_after_sniffer on exception.
13493
13494 2018-02-14  Tom Tromey  <tom@tromey.com>
13495
13496         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13497         const.
13498         (solib_bfd_open): Make pathname const.
13499         * solib.c (solib_bfd_open): Make pathname const.
13500         * solib-spu.c (spu_bfd_fopen): Make name const.
13501         (spu_bfd_open): Make pathname const.
13502         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13503         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13504
13505 2018-02-14  Tom Tromey  <tom@tromey.com>
13506
13507         * symfile.c (symfile_bfd_open): Update.
13508         * source.h (openp, source_full_path_of, find_and_open_source):
13509         Change argument type to unique_xmalloc_ptr.
13510         * source.c (openp): Take a unique_xmalloc_ptr.
13511         (source_full_path_of, find_and_open_source): Likewise.
13512         (open_source_file, symtab_to_fullname): Update.
13513         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13514         unique_xmalloc_ptr.
13515         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13516         (exec_file_find): Update.
13517         * psymtab.c (psymtab_to_fullname): Update.
13518         * nto-tdep.h (nto_find_and_open_solib): Update.
13519         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13520         unique_xmalloc_ptr.
13521         * exec.c (exec_file_attach): Update.
13522         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13523         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13524
13525 2018-02-14  Tom Tromey  <tom@tromey.com>
13526
13527         * solib.c: Include source.h.
13528         * nto-tdep.c: Include source.h.
13529         * mi/mi-cmd-env.c: Include source.h.
13530         * infcmd.c: Include source.h.
13531         * exec.c: Include source.h.
13532         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13533         (add_path, directory_switch, source_path, init_source_path): Move
13534         declarations...
13535         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13536         (add_path, directory_switch, source_path, init_source_path):
13537         ...here.
13538
13539 2018-02-14  Tom Tromey  <tom@tromey.com>
13540
13541         * solist.h (exec_file_find, solib_find): Return
13542         unique_xmalloc_ptr.
13543         (solib_bfd_fopen): Take a const char *.
13544         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13545         (exec_file_find, solib_find): Likewise.
13546         (solib_bfd_fopen): Do not take ownership of "pathname".
13547         (solib_bfd_open): Use unique_xmalloc_ptr.
13548         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13549         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13550         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13551         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13552
13553 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13554
13555         * ada-lang.c (name_match_type_from_name): Remove reference to
13556         ada_name_for_lookup in function's documentation.
13557         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13558
13559 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13560
13561         * defs.h (enum openp_flags): New enum.
13562         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13563         Move to enum openp_flags.
13564         (openp_flags): New enum flags.
13565         (openp): Change parameter type to openp_flags.
13566         * source.c (openp): Change parameter type to openp_flags.
13567         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13568         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13569
13570 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13571
13572         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13573         per-command.
13574
13575 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13576
13577         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13578         into...
13579         (class dwarf2_queue_guard): ...the destructor of this new class.
13580         (dw2_do_instantiate_symtab): Create instance of the new class
13581         dwarf2_queue_guard, remove cleanup.
13582
13583 2018-02-09  Tom Tromey  <tom@tromey.com>
13584
13585         * source.c (find_source_lines): Don't reference past the end of
13586         the vector.
13587
13588 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13589
13590         * remote.c (remote_btrace_maybe_reopen): Change error message.
13591         * btrace.c (btrace_enable): Likewise.
13592         (parse_xml_btrace): Likewise.
13593         (parse_xml_btrace_conf): Likewise.
13594
13595 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13596
13597         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13598         (linux_enable_pt, linux_enable_bts): Call
13599         diagnose_perf_event_open_fail.
13600
13601 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13602
13603         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13604         Remove parameter and change return type.  Update callers.  Move it.
13605         (linux_enable_bts, linux_enable_pt): Improve error message.
13606         (linux_enable_pt): Remove zero buffer size check.
13607         (linux_enable_btrace): Improve error messages.  Remove NULL return
13608         check.
13609
13610 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13611
13612         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13613         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13614         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13615         (linux_supports_pt, linux_supports_btrace): Remove.
13616         (linux_enable_bts): Call cpu_supports_bts.
13617         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13618         * remote.c (remote_supports_btrace): Remove.
13619         (init_remote_ops): Remove remote_supports_btrace.
13620         * target-delegates.c: Regenerated.
13621         * target.c (target_supports_btrace): Remove.
13622         * target.h (target_ops) <to_supports_btrace>: Remove
13623         (target_supports_btrace): Remove.
13624         * x86-linux-nat.c (x86_linux_create_target): Remove
13625         linux_supports_btrace.
13626
13627 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13628
13629         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13630         btrace failed.
13631         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13632         exception and use message in own exception.
13633
13634 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13635
13636         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13637         (perf_event_pt_event_type): Use gdb_file_up.
13638         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13639         scoped_fd, and scoped_mmap.
13640
13641 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13642
13643         * common/scoped_mmap.h: New.
13644         * unittests/scoped_mmap-selftest.c: New.
13645         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13646         unittests/scoped_mmap-selftest.c.
13647
13648 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13649
13650         * common/scoped_fd.h: New.
13651         * unittests/scoped_fd-selftest.c: New.
13652         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13653         unittests/scoped_fd-selftest.c.
13654
13655 2018-02-09  Tom Tromey  <tom@tromey.com>
13656
13657         * auto-load.c (auto_load_section_scripts): Use
13658         gdb::unique_xmalloc_ptr.
13659
13660 2018-02-09  Tom Tromey  <tom@tromey.com>
13661
13662         * auto-load.c (execute_script_contents): Use std::string.
13663
13664 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13665
13666         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13667         Python function, rather than a new command.
13668
13669 2018-02-08  Tom Tromey  <tom@tromey.com>
13670
13671         * solib.c (solib_find_1): Use std::string.
13672         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13673
13674 2018-02-08  Tom Tromey  <tom@tromey.com>
13675
13676         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13677
13678 2018-02-08  Tom Tromey  <tom@tromey.com>
13679
13680         * source.c (find_source_lines): Use gdb::def_vector.
13681
13682 2018-02-08  Tom Tromey  <tom@tromey.com>
13683
13684         * macrocmd.c (struct temporary_macro_definition): New.
13685         (macro_define_command): Use temporary_macro_definition.  Remove
13686         cleanups.
13687         (free_macro_definition_ptr): Remove.
13688
13689 2018-02-08  Tom Tromey  <tom@tromey.com>
13690
13691         * macroexp.c (maybe_expand): Use std::string.
13692
13693 2018-02-08  Tom Tromey  <tom@tromey.com>
13694
13695         * macroexp.c (struct macro_buffer): Add initializers for some
13696         members.
13697         (init_buffer, init_shared_buffer, free_buffer)
13698         (free_buffer_return_text): Remove.
13699         (macro_buffer): New constructors.
13700         (~macro_buffer): New destructor.
13701         (macro_buffer::set_shared): New method.
13702         (macro_buffer::resize_buffer, macro_buffer::appendc)
13703         (macro_buffer::appendmem): Now methods, not free functions.
13704         (set_token, append_tokens_without_splicing, stringify)
13705         (macro_stringify): Update.
13706         (gather_arguments): Change return type.  Remove argc_p argument,
13707         add args_ptr argument.  Use std::vector.
13708         (substitute_args): Remove argc argument.  Accept std::vector.
13709         (expand): Update.  Use std::vector.
13710         (scan, macro_expand, macro_expand_next): Update.
13711
13712 2018-02-08  Tom Tromey  <tom@tromey.com>
13713
13714         * symtab.c (default_collect_symbol_completion_matches_break_on):
13715         Use unique_xmalloc_ptr.
13716         * macroscope.h: (sal_macro_scope, user_macro_scope)
13717         (default_macro_scope): Return unique_xmalloc_ptr.
13718         * macroscope.c (sal_macro_scope, user_macro_scope)
13719         (default_macro_scope): Return unique_xmalloc_ptr.
13720         * macroexp.h (macro_expand, macro_expand_once): Return
13721         unique_xmalloc_ptr.
13722         * macroexp.c (macro_expand, macro_expand_once): Return
13723         unique_xmalloc_ptr.
13724         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13725         (info_macro_command, info_macros_command): Use
13726         unique_xmalloc_ptr.
13727         * compile/compile-c-support.c (write_macro_definitions): Use
13728         unique_xmalloc_ptr.
13729         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13730
13731 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13732
13733         * value.c (value_static_field): Assign field type instead of
13734         containing type when returning an optimized out value.
13735
13736 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13737
13738         * ft32-tdep.c (ft32_read_pc): Remove.
13739         (ft32_write_pc): Remove.
13740         (ft32_gdbarch_init): Update.
13741         * m32r-tdep.c (m32r_read_pc): Remove.
13742         (m32r_gdbarch_init): Update.
13743         * mep-tdep.c (mep_read_pc): Remove.
13744         (mep_gdbarch_init): Update.
13745         * microblaze-tdep.c (microblaze_write_pc): Remove.
13746         (microblaze_gdbarch_init): Update.
13747         * mn10300-tdep.c (mn10300_read_pc): Remove.
13748         (mn10300_write_pc): Remove.
13749         (mn10300_gdbarch_init): Update.
13750         * moxie-tdep.c (moxie_read_pc): Remove.
13751         (moxie_write_pc): Remove.
13752         (moxie_gdbarch_init): Update.
13753
13754 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13755
13756         * expprint.c (print_subexp_standard): Handle
13757         OP_F77_UNDETERMINED_ARGLIST.
13758         (dump_subexp_body_standard): Likewise.
13759
13760 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13761
13762         * target-descriptions.c (tdesc_element_visitor) Add empty
13763         implementations.
13764         (tdesc_type): Move make_gdb_type from here.
13765         (tdesc_type_builtin): Likewise.
13766         (tdesc_type_vector): Likewise.
13767         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13768         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13769         (make_gdb_type_union): Likewise.
13770         (make_gdb_type_flags): Likewise.
13771         (make_gdb_type_enum): Likewise.
13772         (make_gdb_type): New function.
13773         (tdesc_register_type): Use static make_gdb_type.
13774
13775 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13776
13777         * infcmd.c (default_print_one_register_info): Align natural-format
13778         column values consistently one under another.
13779         (pad_to_column): New function.
13780
13781 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13782
13783         * dwarf2read.c (dwarf2_physname): Move commment.
13784
13785 2018-02-01  Leszek Swirski  <leszeks@google.com>
13786
13787         * varobj.c (varobj_formatted_print_options): Allow recursive
13788         pretty printing if pretty printing is enabled.
13789
13790 2018-02-01  Leszek Swirski  <leszeks@google.com>
13791
13792         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13793         names after a structop as a filename.
13794
13795 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13796
13797         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13798         (arm_record_coproc_data_proc): Likewise.
13799
13800 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13801
13802         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13803
13804 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13805
13806         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13807         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13808
13809 2018-01-31  Pedro Alves  <palves@redhat.com>
13810
13811         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13812         * inflow.c (child_terminal_save_inferior): Wrap reference to
13813         tcgetpgrp in HAVE_TERMIOS_H.
13814         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13815         _WIN32.
13816         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13817         always iterate over all inferiors.
13818         (gdbsim_cntrl_c): Adjust.
13819         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13820
13821 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13822
13823         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13824         index type is objfile-owned if the element type is as well.
13825
13826 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13827
13828         GDB 8.1 released.
13829
13830 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13831
13832         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13833         "features/s390x-linux64.c".
13834         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13835         s390_linux32 and s390x_linux64.
13836         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13837         default tdesc.
13838         * s390-tdep.c: Include "features/s390-linux32.c" and
13839         "features/s390x-linux64.c".
13840         (s390_tdesc_valid): Add check for tdesc_has_registers.
13841         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13842         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13843         tdesc_s390x_linux64.
13844         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13845         tdesc_s390x_linux64 to...
13846         * s390-tdep.h: ...here.
13847
13848 2018-01-30  Pedro Alves  <palves@redhat.com>
13849
13850         PR gdb/13211
13851         * config.in, configure: Regenerate.
13852         * configure.ac: Check for getpgid.
13853         * go32-nat.c (go32_pass_ctrlc): New.
13854         (go32_target): Install it.
13855         * inf-child.c (inf_child_target): Install
13856         child_terminal_save_inferior, child_pass_ctrlc and
13857         child_interrupt.
13858         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13859         (inf_ptrace_target): No longer install it.
13860         * infcmd.c (interrupt_target_1): Adjust.
13861         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13862         (child_interrupt): Declare.
13863         (inferior::terminal_state): New.
13864         * inflow.c (struct terminal_info): Update comments.
13865         (inferior_process_group): Delete.
13866         (terminal_is_ours): Delete.
13867         (gdb_tty_state): New.
13868         (child_terminal_init): Adjust.
13869         (is_gdb_terminal, sharing_input_terminal_1)
13870         (sharing_input_terminal): New functions.
13871         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13872         Set the process's actual process group in the foreground if
13873         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13874         mark terminal as the inferior's if not sharing GDB's terminal.
13875         Don't check attach_flag.
13876         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13877         pass down a target_terminal_state.
13878         (child_terminal_save_inferior): New, factored out from ...
13879         (child_terminal_ours_1): ... this.  Handle
13880         target_terminal_state::is_ours_for_output.
13881         (child_interrupt, child_pass_ctrlc): New.
13882         (inflow_inferior_exit): Clear the inferior's terminal_state.
13883         (copy_terminal_info): Copy the inferior's terminal state.
13884         (_initialize_inflow): Remove reference to terminal_is_ours.
13885         * inflow.h (inferior_process_group): Delete.
13886         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13887         * procfs.c (procfs_target): Don't install procfs_interrupt.
13888         (procfs_interrupt): Delete.
13889         * remote.c (remote_serial_quit_handler): Adjust.
13890         (remote_interrupt): Remove ptid parameter.  Adjust.
13891         * target-delegates.c: Regenerate.
13892         * target.c: Include "terminal.h".
13893         (target_terminal::terminal_state): Rename to ...
13894         (target_terminal::m_terminal_state): ... this.
13895         (target_terminal::init): Adjust.
13896         (target_terminal::inferior): Adjust to per-inferior
13897         terminal_state.
13898         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13899         (target_terminal::ours, target_terminal::ours_for_output): Use
13900         target_terminal_is_ours_kind.
13901         (target_interrupt): Remove ptid parameter.  Adjust.
13902         (default_target_pass_ctrlc): Adjust.
13903         * target.h (target_ops::to_terminal_save_inferior): New field.
13904         (target_ops::to_interrupt): Remove ptid_t parameter.
13905         (target_interrupt): Remove ptid_t parameter.  Update comment.
13906         (target_pass_ctrlc): Update comment.
13907         * target/target.h (target_terminal_state): New scoped enum,
13908         factored out of ...
13909         (target_terminal::terminal_state): ... here.
13910         (target_terminal::inferior): Update comments.
13911         (target_terminal::restore_inferior): New.
13912         (target_terminal::is_inferior, target_terminal::is_ours)
13913         (target_terminal::is_ours_for_output): Adjust.
13914         (target_terminal::scoped_restore_terminal_state): Adjust to
13915         rename, and call restore_inferior() instead of inferior().
13916         (target_terminal::scoped_restore_terminal_state::m_state): Change
13917         type.
13918         (target_terminal::terminal_state): Rename to ...
13919         (target_terminal::m_terminal_state): ... this and change type.
13920
13921 2018-01-30  Pedro Alves  <palves@redhat.com>
13922
13923         * linux-nat.c (wait_for_signal): New function.
13924         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13925         directly.
13926         (async_terminal_is_ours)
13927         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13928         (linux_nat_add_target): Don't override
13929         to_terminal_inferior/to_terminal_ours.
13930
13931 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13932
13933         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13934
13935 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13936
13937         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13938         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13939         dwarf2_per_objfile_free here.
13940         (dwarf2_per_objfile_free): Remove.
13941         (_initialize_dwarf2_read): Don't register
13942         dwarf2_per_objfile_free as a registry cleanup.
13943
13944 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13945
13946         Avoid compilation errors in MinGW native builds
13947
13948         The error is triggered by including python-internal.h, and the
13949         error message is:
13950
13951              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13952                       from build-gnulib/import/math.h:27,
13953                       from d:/usr/Python26/include/pyport.h:235,
13954                       from d:/usr/Python26/include/Python.h:58,
13955                       from python/python-internal.h:94,
13956                       from python/py-arch.c:24:
13957              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13958         using ::hypot;
13959                 ^~~~~
13960
13961         This happens because Python headers define 'hypot' to expand t
13962         '_hypot' in the Windows builds.
13963         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13964         'hypoth'.  This avoids a compilation error.
13965
13966 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13967
13968         * MAINTAINERS (Write After Approval): Fix ordering.
13969
13970 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13971
13972         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13973
13974 2018-01-26  Alan Modra  <amodra@gmail.com>
13975
13976         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13977         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13978         Remove nop.  Make const.  Comment.
13979         (powerpc32_plt_stub_so_2): New.
13980         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13981         Correct count.  Update uses.
13982         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13983         Move common code reading PLT entry word.  Correct
13984         powerpc32_plt_stub PLT address calculation.
13985         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13986         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13987         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13988         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13989         (ppc64_standard_linkage8): Likewise.
13990         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13991         Correct insns description.
13992         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13993
13994 2018-01-24  Pedro Alves  <palves@redhat.com>
13995
13996         GCC PR libstdc++/83906
13997         * gdbtypes.c (operator==(const dynamic_prop &,
13998         const dynamic_prop &)): New.
13999         (operator==(const range_bounds &, const range_bounds &)): New.
14000         (check_types_equal): Use them instead of memcmp.
14001         * gdbtypes.h (operator==(const dynamic_prop &,
14002         const dynamic_prop &)): Declare.
14003         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14004         (operator==(const range_bounds &, const range_bounds &)): Declare.
14005         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14006
14007 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14008
14009         * s390-linux-tdep.c (s390_record_address_mask)
14010         (s390_record_calc_disp_common, s390_record_calc_disp)
14011         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14012         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14013         (s390_process_record): Move to s390-tdep.c.
14014         (s390_linux_init_abi_any): Adjust.
14015         * s390-tdep.c (s390_record_address_mask)
14016         (s390_record_calc_disp_common, s390_record_calc_disp)
14017         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14018         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14019         (s390_process_record): Moved from s390-linux-tdep.c
14020         (s390_gdbarch_init): Adjust.
14021
14022 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14023
14024         * s390-linux-nat.c (s390-tdep.h): New include.
14025         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14026         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14027         (ALLDEPFILES): Add s390-tdep.c.
14028         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14029         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14030         * s390-tdep.h: ...this.  New file.
14031         * s390-linux-tdep.c (s390-tdep.h): New include.
14032         (_initialize_s390_tdep): Rename to...
14033         (_initialize_s390_linux_tdep): ...this and adjust.
14034         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14035         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14036         s390-tdep.h.
14037         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14038         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14039         (s390_is_partial_instruction, s390_software_single_step)
14040         (is_non_branch_ril, s390_displaced_step_copy_insn)
14041         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14042         (s390_prologue_data, s390_addr, s390_store, s390_load)
14043         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14044         (s390_register_call_saved, s390_guess_tracepoint_registers)
14045         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14046         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14047         (s390_pseudo_register_name, s390_pseudo_register_type)
14048         (s390_pseudo_register_read, s390_pseudo_register_write)
14049         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14050         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14051         (s390_addr_bits_remove, s390_address_class_type_flags)
14052         (s390_address_class_type_flags_to_name)
14053         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14054         (s390_function_arg_float, s390_function_arg_vector)
14055         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14056         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14057         (s390_frame_align, s390_register_return_value, s390_return_value)
14058         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14059         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14060         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14061         (s390_trad_frame_prev_register, s390_unwind_cache)
14062         (s390_prologue_frame_unwind_cache)
14063         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14064         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14065         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14066         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14067         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14068         (s390_frame_base_address, s390_local_base_address)
14069         (s390_frame_base, s390_gcc_target_options)
14070         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14071         (s390_validate_reg_range, s390_tdesc_valid)
14072         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14073         * s390-tdep.c: ...this.  New file.
14074
14075 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14076
14077         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14078         (s390_process_record, s390_gdbarch_tdep_alloc)
14079         (s390_linux_init_abi_any): Use/set new hook.
14080
14081 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14082
14083         * s390-linux-tdep.c (osabi.h): New include.
14084         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14085         (s390_linux_init_abi_any): New functions.
14086         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14087
14088 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14089
14090         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14091         tdesc_has_registers check
14092
14093 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14094
14095         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14096         (s390_validate_reg_range): New macro.
14097         (s390_gdbarch_init): Adjust.
14098
14099 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14100
14101         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14102         (s390_gdbarch_tdep_alloc): Adjust.
14103         (s390_gdbarch_init): Adjust.
14104
14105 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14106
14107         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14108         <have_tdb>: Change type to bool.
14109         (s390_gdbarch_tdep_alloc): Adjust.
14110         (s390_gdbarch_init): Adjust.
14111
14112 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14113
14114         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14115         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14116         (s390_gdbarch_tdep_alloc): New function.
14117         (s390_gdbarch_init): Allocate tdep at start and use its fields
14118         instead of separate variables.
14119
14120 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14121
14122         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14123         when looking for cached gdbarch and add comment for remaining.
14124
14125 2018-01-22  Pedro Alves  <palves@redhat.com>
14126             Sergio Durigan Junior  <sergiodj@redhat.com>
14127
14128         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14129         case.
14130
14131 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14132
14133         * MAINTAINERS: Update my company e-mail address.
14134
14135 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14136
14137         * regcache.c (cooked_write_test): New function.
14138         (_initialize_regcache): Register the test.
14139
14140 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14141
14142         * ia64-tdep.c (ia64_pseudo_register_read): Call
14143         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14144         * m32c-tdep.c (m32c_cat_read): Likewise.
14145         (m32c_r3r2r1r0_read): Likewise.
14146         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14147         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14148
14149 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14150
14151         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14152         method raw_read instead of regcache_raw_read.
14153         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14154         * arm-tdep.c (arm_neon_quad_read): Likewise.
14155         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14156         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14157         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14158         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14159         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14160         (i386_pseudo_register_read_into_value): Likewise.
14161         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14162         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14163         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14164         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14165         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14166         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14167         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14168         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14169         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14170
14171 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14172
14173         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14174         * configure.tgt: Remove target mt.
14175         * mt-tdep.c: Remove.
14176         * regcache.c (cooked_read_test): Remove the check for mt.
14177
14178 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14179
14180         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14181         instead of gdbarch_pseudo_register_read_value.
14182
14183 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14184
14185         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14186         language is Ada.
14187
14188 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14189
14190         * linespec.c (create_sals_line_offset): Remove code that preserved
14191         the symtab_and_line's line number.
14192
14193 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14194
14195         * varobj.c (varobj_create): Don't set valid_block when creating a
14196         floating varobj.
14197
14198 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14199
14200         * varobj.c (varobj_create): Remove out of date comment.
14201
14202 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14203
14204         PR mi/20395
14205         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14206         updating innermost block.
14207         * parse.c (innermost_block_tracker::update): Take extra type
14208         parameter, and check types match before updating innermost block.
14209         (write_dollar_variable): Update innermost block for registers.
14210         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14211         (innermost_block_tracker::innermost_block_tracker): Initialise
14212         m_types member.
14213         (innermost_block_tracker::reset): Take type parameter.
14214         (innermost_block_tracker::update): Take type parameter, and pass
14215         type through as needed.
14216         (innermost_block_tracker::m_types): New member.
14217         * varobj.c (varobj_create): Pass type when reseting innermost
14218         block.
14219
14220 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14221
14222         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14223         * ada-lang.c (resolve_subexp): Likewise.
14224         * breakpoint.c (set_breakpoint_condition) Likewise.
14225         (watch_command_1) Likewise.
14226         * c-exp.y (variable): Likewise.
14227         * d-exp.y (PrimaryExpression): Likewise.
14228         * f-exp.y (variable): Likewise.
14229         * go-exp.y (variable): Likewise.
14230         * m2-exp.y (variable): Likewise.
14231         * objfiles.c (objfile::~objfile): Likewise.
14232         * p-exp.y (variable): Likewise.
14233         * parse.c (innermost_block): Change type.
14234         * parser-defs.h (class innermost_block_tracker): New.
14235         (innermost_block): Change to innermost_block_tracker.
14236         * printcmd.c (display_command): Switch to innermost_block API.
14237         (do_one_display): Likewise.
14238         * rust-exp.y (do_one_display): Likewise.
14239         * symfile.c (clear_symtab_users): Likewise.
14240         * varobj.c (varobj_create): Switch to innermost_block API, replace
14241         use of innermost_block with block stored on varobj object.
14242
14243 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14244
14245         * expression.h (innermost_block): Remove declaration.
14246         * varobj.c: Add 'parser-defs.h' include.
14247
14248 2018-01-19  Tom Tromey  <tom@tromey.com>
14249
14250         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14251         symbols in the static and global blocks.
14252
14253 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14254
14255         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14256         gdb_ptrace.h, and move including gdb_wait.h ...
14257         * nat/linux-ptrace.h: ... to here.
14258
14259 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14260
14261         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14262         inf_ptrace_detach_success.
14263         (inf_ptrace_detach_success): Add inferior parameter, use it
14264         instead of inferior_ptid, pass it to detach_inferior.
14265         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14266         parameter.
14267         * inferior.c (detach_inferior): Add overload that takes an
14268         inferior object.
14269         * inferior.h (detach_inferior): Likewise.
14270         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14271         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14272         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14273
14274 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14275
14276         * target.h (struct target_ops) <to_detach>: Add inferior
14277         parameter.
14278         (target_detach): Likewise.
14279         * target.c (dispose_inferior): Pass inferior down.
14280         (target_detach): Pass inferior down.  Assert that it is equal to
14281         the current inferior.
14282         * aix-thread.c (aix_thread_detach): Pass inferior down.
14283         * corefile.c (core_file_command): Pass current_inferior() down.
14284         * corelow.c (core_detach): Add inferior parameter.
14285         * darwin-nat.c (darwin_detach): Likewise.
14286         * gnu-nat.c (gnu_detach): Likewise.
14287         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14288         * infcmd.c (detach_command): Pass current_inferior() down to
14289         target_detach.
14290         * infrun.c (follow_fork_inferior): Pass parent_inf to
14291         target_detach.
14292         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14293         target_detach.
14294         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14295         * linux-thread-db.c (thread_db_detach): Likewise.
14296         * nto-procfs.c (procfs_detach): Likewise.
14297         * procfs.c (procfs_detach): Likewise.
14298         * record.c (record_detach): Likewise.
14299         * record.h (struct inferior): Forward-declare.
14300         (record_detach): Add inferior parameter.
14301         * remote-sim.c (gdbsim_detach): Likewise.
14302         * remote.c (remote_detach_1): Likewise.
14303         (remote_detach): Likewise.
14304         (extended_remote_detach): Likewise.
14305         * sol-thread.c (sol_thread_detach): Likewise.
14306         * target-debug.h (target_debug_print_inferior_p): New macro.
14307         * target-delegates.c: Re-generate.
14308         * top.c (kill_or_detach): Pass inferior down to target_detach.
14309         * windows-nat.c (windows_detach): Add inferior parameter.
14310
14311 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14312
14313         * target.h (struct target_ops) <to_detach>: Remove args
14314         parameter.
14315         (target_detach): Likewise.
14316         * target.c (dispose_inferior): Adjust.
14317         (target_detach): Remove args parameter, adjust.
14318         * aix-thread.c (aix_thread_detach): Adjust.
14319         * corefile.c (core_file_command): Adjust.
14320         * corelow.c (core_detach): Adjust.
14321         * darwin-nat.c (darwin_detach): Adjust.
14322         * gnu-nat.c (gnu_detach): Adjust.
14323         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14324         * infcmd.c (detach_command): Adjust
14325         * infrun.c (follow_fork_inferior): Adjust.
14326         (handle_vfork_child_exec_or_exit): Adjust.
14327         * linux-fork.c (linux_fork_detach): Remove args parameter.
14328         * linux-fork.h (linux_fork_detach): Likewise.
14329         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14330         * linux-thread-db.c (thread_db_detach): Likewise.
14331         * nto-procfs.c (procfs_detach): Likewise.
14332         * procfs.c (procfs_detach): Likewise.
14333         (do_detach): Remove signo parameter.
14334         * record.c (record_detach): Remove args parameter.
14335         * record.h (record_detach): Likewise.
14336         * remote-sim.c (gdbsim_detach): Likewise.
14337         * remote.c (remote_detach_1): Likewise.
14338         (remote_detach): Likewise.
14339         (extended_remote_detach): Likewise.
14340         * sol-thread.c (sol_thread_detach): Likewise.
14341         * target-delegates.c: Re-generate.
14342         * top.c (struct qt_args) <args>: Remove field.
14343         (kill_or_detach): Don't pass args.
14344         (quit_force): Don't set args.
14345         * windows-nat.c (windows_detach): Remove args parameter.
14346
14347 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14348
14349         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14350         (arm_linux_init_abi): Install it.
14351
14352 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14353
14354         * osabi.c (gdb_osabi_names): Extend the regexp for
14355         arm-linux-gnueabihf.
14356
14357 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14358
14359         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14360         m_abbrevs.
14361         (abbrev_table::add_abbrev): Update.
14362         (abbrev_table::lookup_abbrev): Update.
14363
14364 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14365
14366         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14367
14368 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14369
14370         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14371         to "std::string".
14372
14373 2018-01-17  Tom Tromey  <tom@tromey.com>
14374
14375         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14376
14377 2018-01-17  Tom Tromey  <tom@tromey.com>
14378
14379         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14380         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14381         (create_array_type_with_stride): Update.
14382         * dwarf2read.c (set_die_type): Update.
14383
14384 2018-01-17  Tom Tromey  <tom@tromey.com>
14385
14386         * dwarf2read.c (delayed_method_info): Remove typedef.
14387         (dwarf2_cu::method_info): Now a std::vector.
14388         (add_to_method_list): Update.
14389         (free_delayed_list): Remove.
14390         (compute_delayed_physnames): Update.
14391         (process_full_comp_unit, process_full_type_unit): Clear the method
14392         list.  Remove cleanups.
14393         (psymtab_include_file_name): Add name_holder parameter.  Use
14394         unique_xmalloc_ptr.
14395         (dwarf_decode_lines): Update.
14396
14397 2018-01-17  Tom Tromey  <tom@tromey.com>
14398             Simon Marchi  <simon.marchi@ericsson.com>
14399
14400         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14401         (dwarf2_per_objfile::free_cached_comp_units)
14402         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14403         (init_cutu_and_read_dies_no_follow): Update.
14404         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14405         (dwarf2_cu::~dwarf2_cu): New.
14406         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14407         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14408
14409 2018-01-17  Tom Tromey  <tom@tromey.com>
14410             Simon Marchi  <simon.marchi@ericsson.com>
14411
14412         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14413         (struct die_reader_specs) <abbrev_table>: New member.
14414         (struct abbrev_table): Add constructor.
14415         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14416         <abbrev_obstack>: Now an auto_obstack.
14417         (abbrev_table_up): New typedef.
14418         (init_cu_die_reader): Add abbrev_table parameter.
14419         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14420         Add result_dwo_abbrev_table.
14421         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14422         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14423         Update.
14424         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14425         parameter.
14426         (skip_children): Update.
14427         (abbrev_table::alloc_abbrev): Rename from
14428         abbrev_table_alloc_abbrev.
14429         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14430         (abbrev_table::lookup_abbrev): Rename from
14431         abbrev_table_lookup_abbrev.
14432         (abbrev_table_read_table): Return abbrev_table_up.
14433         (abbrev_table_free, abbrev_table_free_cleanup)
14434         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14435         (load_partial_dies): Update.
14436
14437 2018-01-17  Tom Tromey  <tom@tromey.com>
14438
14439         * dwarf2read.c (dwarf2_compute_name): Update comment.
14440         (read_func_scope, read_variable): Update.
14441         (new_symbol): Remove.
14442         (new_symbol_full): Rename to new_symbol.
14443
14444 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14445
14446         PR gdb/16577
14447         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14448         a warning instead of throwing an error, set section size to 0 and return
14449         NULL.
14450         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14451
14452 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14453
14454         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14455         std::string.
14456         (linux_ptrace_attach_fail_reason_string): Likewise.
14457         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14458         Likewise.
14459         (linux_ptrace_attach_fail_reason_string): Likewise.
14460         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14461
14462 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14463
14464         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14465
14466 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14467
14468         PR gdb/21559
14469         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14470         checking for fs_base/gs_base fields in struct user_regs_struct.
14471         * configure: Regenerate.
14472
14473 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14474
14475         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14476         function.
14477         (aarch64_linux_init_abi): Install it to gdbarch hook
14478         gcc_target_options.
14479
14480 2018-01-15  Pedro Alves  <palves@redhat.com>
14481
14482         * common/signals-state-save-restore.c
14483         (save_original_signals_state): Fix typos.
14484
14485 2017-01-12  Tom Tromey  <tom@tromey.com>
14486             Sergio Durigan Junior  <sergiodj@redhat.com>
14487
14488         * Makefile.in (install-only): Install gdb-add-index.
14489
14490 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14491
14492         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14493
14494 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14495
14496         * infrun.c (keep_going_pass_signal): Clear step-over info when
14497         insert_breakpoints fails.
14498
14499 2018-01-11  Pedro Alves  <palves@redhat.com>
14500
14501         PR gdb/22583
14502         * infrun.c (resume): Rename to ...
14503         (resume_1): ... this.
14504         (resume): Reimplement as wrapper around resume_1.
14505
14506 2018-01-11  Pedro Alves  <palves@redhat.com>
14507
14508         PR remote/22597
14509         * remote.c (remote_parse_stop_reply): Default to the last-set
14510         general thread instead of to 'magic_null_ptid'.
14511
14512 2018-01-10  Pedro Alves  <palves@redhat.com>
14513
14514         * language.h (language_get_symbol_name_matcher): Rename ...
14515         (get_symbol_name_matcher): ... this.
14516         * language.c (language_get_symbol_name_matcher): Ditto.
14517         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14518         callers adjusted.
14519
14520 2018-01-10  Pedro Alves  <palves@redhat.com>
14521
14522         PR gdb/22670
14523         * dwarf2read.c
14524         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14525         Adjust to use language_get_symbol_name_matcher instead of
14526         language_defn::la_get_symbol_name_matcher.
14527         * language.c (language_get_symbol_name_matcher): If in Ada mode
14528         and the lookup name is a verbatim match, return Ada's matcher.
14529         * language.h (language_get_symbol_name_matcher): Adjust comment.
14530         (ada_lookup_name_info::verbatim_p):: New method.
14531
14532 2018-01-10  Pedro Alves  <palves@redhat.com>
14533
14534         PR gdb/22670
14535         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14536         minsym's language is language_auto or language_cplus, pass down
14537         language_ada instead.
14538         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14539
14540 2018-01-10  Pedro Alves  <palves@redhat.com>
14541
14542         PR gdb/22670
14543         * minsyms.c (linkage_name_str): New function.
14544         (iterate_over_minimal_symbols): Use it.
14545
14546 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14547
14548         * NEWS: Document that 'info proc' now works on FreeBSD.
14549
14550 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14551
14552         * configure.ac: Check for kinfo_getfile in libutil.
14553         * configure: Regenerate.
14554         * config.in: Regenerate.
14555         * fbsd-nat.c: Include "fbsd-tdep.h".
14556         (fbsd_fetch_cmdline): New.
14557         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14558         rather than calling error.
14559         (fbsd_info_proc): New.
14560         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14561         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14562         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14563
14564 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14565
14566         * fbsd-nat.c (struct free_deleter): Remove.
14567         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14568
14569 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14570
14571         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14572         NULL for an empty pathname.
14573
14574 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14575
14576         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14577         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14578         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14579         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14580         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14581         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14582         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14583         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14584         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14585         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14586         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14587         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14588         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14589         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14590         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14591
14592 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14593
14594         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14595         (gnu_xfer_auxv): New function.
14596         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14597         TARGET_OBJECT_AUXV.
14598
14599 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14600             Simon Marchi  <simon.marchi@ericsson.com>
14601
14602         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14603         common/selftest.c.
14604         (COMMON_OBS): Remove selftest.o.
14605         * configure.ac: Append selftest-arch.c and common/selftest.c to
14606         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14607         * configure: Re-generated.
14608         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14609         GDB_SELF_TEST.
14610         (maintenance_info_selftests): Likewise.
14611
14612 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14613
14614         * ada-valprint.c (val_print_packed_array_elements): Use
14615         proper number of elements when printing an array indexed
14616         by an enumeration type.
14617
14618 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14619
14620         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14621         (dw2_get_file_names_reader): Adjust.
14622         (lookup_dwo_signatured_type): Adjust.
14623         (lookup_dwp_signatured_type): Adjust.
14624         (lookup_signatured_type): Adjust.
14625         (create_type_unit_group): Adjust.
14626         (get_type_unit_group): Adjust.
14627         (process_psymtab_comp_unit_reader): Adjust.
14628         (build_type_psymtabs_reader): Adjust.
14629         (scan_partial_symbols): Adjust.
14630         (add_partial_symbol): Adjust.
14631         (add_partial_subprogram): Adjust.
14632         (peek_die_abbrev): Adjust.
14633         (fixup_go_packaging): Adjust.
14634         (process_imported_unit_die): Adjust.
14635         (dwarf2_compute_name): Adjust.
14636         (dwarf2_physname): Adjust.
14637         (read_import_statement): Adjust.
14638         (handle_DW_AT_stmt_list): Adjust.
14639         (read_file_scope): Adjust.
14640         (read_func_scope): Adjust.
14641         (read_lexical_block_scope): Adjust.
14642         (read_call_site_scope): Adjust.
14643         (read_variable): Adjust.
14644         (dwarf2_rnglists_process): Adjust.
14645         (dwarf2_ranges_process): Adjust.
14646         (dwarf2_ranges_read): Adjust.
14647         (dwarf2_get_pc_bounds): Adjust.
14648         (dwarf2_record_block_ranges): Adjust.
14649         (dwarf2_add_field): Adjust.
14650         (dwarf2_add_member_fn): Adjust.
14651         (read_structure_type): Adjust.
14652         (process_structure_scope): Adjust.
14653         (read_enumeration_type): Adjust.
14654         (read_array_type): Adjust.
14655         (mark_common_block_symbol_computed): Adjust.
14656         (read_common_block): Adjust.
14657         (read_namespace_type): Adjust.
14658         (read_namespace): Adjust.
14659         (read_module_type): Adjust.
14660         (read_tag_pointer_type): Adjust.
14661         (read_tag_ptr_to_member_type): Adjust.
14662         (read_tag_string_type): Adjust.
14663         (read_subroutine_type): Adjust.
14664         (read_typedef): Adjust.
14665         (read_base_type): Adjust.
14666         (attr_to_dynamic_prop): Adjust.
14667         (read_subrange_type): Adjust.
14668         (read_unspecified_type): Adjust.
14669         (dwarf2_read_abbrevs): Adjust.
14670         (load_partial_dies): Adjust.
14671         (read_partial_die): Adjust.
14672         (find_partial_die): Adjust.
14673         (guess_partial_die_structure_name): Adjust.
14674         (fixup_partial_die): Adjust.
14675         (read_attribute_value): Adjust.
14676         (read_addr_index): Adjust.
14677         (read_addr_index_from_leb128): Adjust.
14678         (read_str_index): Adjust.
14679         (dwarf2_string_attr): Adjust.
14680         (get_debug_line_section): Adjust.
14681         (dwarf_decode_line_header): Adjust.
14682         (lnp_state_machine::check_line_address): Adjust.
14683         (dwarf_decode_lines_1): Adjust.
14684         (dwarf_decode_lines): Adjust.
14685         (dwarf2_start_symtab): Adjust.
14686         (var_decode_location): Adjust.
14687         (new_symbol_full): Adjust.
14688         (dwarf2_const_value_data): Adjust.
14689         (dwarf2_const_value_attr): Adjust.
14690         (dwarf2_const_value): Adjust.
14691         (die_type): Adjust.
14692         (die_containing_type): Adjust.
14693         (build_error_marker_type): Adjust.
14694         (lookup_die_type): Adjust.
14695         (guess_full_die_structure_name): Adjust.
14696         (anonymous_struct_prefix): Adjust.
14697         (determine_prefix): Adjust.
14698         (dwarf2_name): Adjust.
14699         (follow_die_ref_or_sig): Adjust.
14700         (follow_die_offset): Adjust.
14701         (follow_die_ref): Adjust.
14702         (follow_die_sig_1): Adjust.
14703         (follow_die_sig): Adjust.
14704         (get_signatured_type): Adjust.
14705         (get_DW_AT_signature_type): Adjust.
14706         (decode_locdesc): Adjust.
14707         (dwarf_decode_macros): Adjust.
14708         (cu_debug_loc_section): Adjust.
14709         (fill_in_loclist_baton): Adjust.
14710         (dwarf2_symbol_mark_computed): Adjust.
14711         (init_one_comp_unit): Don't assign
14712         dwarf2_cu::dwarf2_per_objfile.
14713         (set_die_type): Adjust.
14714
14715 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14716
14717         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14718         <dwarf2_per_objfile>: New field.
14719         (dwarf2_per_objfile): Remove global.
14720         (get_dwarf2_per_objfile): New function.
14721         (set_dwarf2_per_objfile): New function.
14722         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14723         dwarf2_per_objfile.
14724         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14725         (read_abbrev_offset): Likewise.
14726         (read_indirect_string): Likewise.
14727         (read_indirect_line_string): Likewise.
14728         (read_indirect_string_at_offset): Likewise.
14729         (read_indirect_string_from_dwz): Likewise.
14730         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14731         dwarf2_per_objfile.
14732         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14733         (create_all_comp_units): Change objfile parameter to
14734         dwarf2_per_objfile.
14735         (create_all_type_units): Likewise.
14736         (process_queue): Add dwarf2_per_objfile parameter.
14737         (read_and_check_comp_unit_head): Likewise.
14738         (lookup_dwo_unit_in_dwp): Likewise.
14739         (get_dwp_file): Likewise.
14740         (process_cu_includes): Likewise.
14741         (struct free_dwo_file_cleanup_data): New struct.
14742         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14743         set_dwarf2_per_objfile.
14744         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14745         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14746         context, adjust calls.
14747         (dw2_instantiate_symtab): Likewise.
14748         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14749         (dw2_get_cu): Likewise.
14750         (create_cu_from_index_list): Change objfile parameter to
14751         dwarf2_per_objfile.
14752         (create_cus_from_index_list): Get dwarf2_per_objfile from
14753         context, adjust calls.
14754         (create_cus_from_index): Likewise.
14755         (create_signatured_type_table_from_index): Change objfile
14756         parameter to dwarf2_per_objfile.
14757         (create_signatured_type_table_from_debug_names): Change objfile
14758         parameter to dwarf2_per_objfile.
14759         (create_addrmap_from_index): Likewise.
14760         (create_addrmap_from_aranges): Likewise.
14761         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14762         (dw2_setup): Remove.
14763         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14764         context.
14765         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14766         get_dwarf2_per_objfile.
14767         (dw2_forget_cached_source_info): Likewise.
14768         (dw2_map_symtabs_matching_filename): Likewise.
14769         (struct dw2_symtab_iterator) <index>: Remove.
14770         <dwarf2_per_objfile>: New field.
14771         (dw2_symtab_iter_init): Replace index parameter with
14772         dwarf2_per_objfile.
14773         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14774         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14775         (dw2_print_stats): Likewise.
14776         (dw2_dump): Likewise.
14777         (dw2_expand_symtabs_for_function): Likewise.
14778         (dw2_expand_all_symtabs): Likewise.
14779         (dw2_expand_symtabs_with_fullname): Likewise.
14780         (dw2_expand_marked_cus): Replace index and objfile parameters
14781         with dwarf2_per_objfile.
14782         (dw_expand_symtabs_matching_file_matcher): Add
14783         dwarf2_per_objfile parameter and adjust calls.
14784         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14785         adjust calls.
14786         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14787         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14788         adjust calls.
14789         (create_cus_from_debug_names_list): Replace objfile parameter
14790         with dwarf2_per_objfile and adjust calls.
14791         (create_cus_from_debug_names): Likewise.
14792         (dwarf2_read_debug_names): Likewise.
14793         (mapped_debug_names::namei_to_name): Adjust call.
14794         (dw2_debug_names_iterator::next): Likewise.
14795         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14796         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14797         (dw2_debug_names_dump): Likewise.
14798         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14799         (dw2_debug_names_expand_symtabs_matching): Likewise.
14800         (dwarf2_initialize_objfile): Likewise.
14801         (dwarf2_build_psymtabs): Likewise.
14802         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14803         this_cu.
14804         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14805         (read_and_check_comp_unit_head): Likewise.
14806         (read_abbrev_offset): Likewise.
14807         (create_debug_type_hash_table): Likewise.
14808         (create_debug_types_hash_table): Likewise.
14809         (create_all_type_units): Replace objfile parameter with
14810         dwarf2_per_objfile.
14811         (add_type_unit): Add dwarf2_per_objfile parameter.
14812         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14813         with dwarf2_per_objfile.
14814         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14815         (lookup_dwp_signatured_type): Likewise.
14816         (lookup_signatured_type): Likewise.
14817         (read_cutu_die_from_dwo): Likewise.
14818         (init_tu_and_read_dwo_dies): Likewise.
14819         (init_cutu_and_read_dies): Likewise.
14820         (init_cutu_and_read_dies_no_follow): Likewise.
14821         (allocate_type_unit_groups_table): Add objfile parameter.
14822         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14823         (get_type_unit_group): Likewise.
14824         (process_psymtab_comp_unit): Update call.
14825         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14826         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14827         (print_tu_stats): Likewise.
14828         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14829         in void* parameter.
14830         (build_type_psymtabs): Change objfile parameter to
14831         dwarf2_per_objfile.
14832         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14833         passed in void* parameter.
14834         (process_skeletonless_type_units): Change objfile parameter to
14835         dwarf2_per_objfile.
14836         (set_partial_user): Likewise.
14837         (dwarf2_build_psymtabs_hard): Likewise.
14838         (read_comp_units_from_section): Likewise.
14839         (create_all_comp_units): Likewise.
14840         (scan_partial_symbols): Update calls.
14841         (add_partial_symbol): Likewise.
14842         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14843         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14844         (process_queue): Add dwarf2_per_objfile parameter.
14845         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14846         (compute_compunit_symtab_includes): Likewise.
14847         (process_cu_includes): Add dwarf2_per_objfile parameter.
14848         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14849         (process_full_type_unit): Likewise.
14850         (process_imported_unit_die): Update call.
14851         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14852         (read_file_scope): Likewise.
14853         (allocate_dwo_file_hash_table): Add objfile parameter.
14854         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14855         (create_cus_hash_table): Likewise.
14856         (create_dwp_hash_table): Likewise.
14857         (create_dwo_unit_in_dwp_v1): Likewise.
14858         (create_dwp_v2_section): Likewise.
14859         (create_dwo_unit_in_dwp_v2): Likewise.
14860         (lookup_dwo_unit_in_dwp): Likewise.
14861         (try_open_dwop_file): Likewise.
14862         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14863         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14864         cleanup to include a reference to dwarf2_per_objfile.
14865         (open_dwp_file): Add dwarf2_per_objfile parameter.
14866         (open_and_init_dwp_file): Likewise.
14867         (get_dwp_file): Likewise.
14868         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14869         (queue_and_load_all_dwo_tus): Update call.
14870         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14871         data.
14872         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14873         (dwarf2_ranges_process): Likewise.
14874         (dwarf2_get_pc_bounds): Likewise.
14875         (mark_common_block_symbol_computed): Likewise.
14876         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14877         (dwarf2_read_abbrevs): Update call.
14878         (read_partial_die): Use dwarf2_per_objfile from cu.
14879         (find_partial_die): Likewise.
14880         (fixup_partial_die): Likewise.
14881         (read_attribute_value): Likewise.
14882         (read_indirect_string_at_offset_from): Add objfile parameter.
14883         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14884         parameter.
14885         (read_indirect_string_from_dwz): Add objfile parameter.
14886         (read_indirect_string): Add objfile parameter.
14887         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14888         (read_addr_index): Use dwarf2_per_objfile from cu.
14889         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14890         call dw2_setup.
14891         (read_str_index): Use dwarf2_per_objfile from cu.
14892         (get_debug_line_section): Likewise.
14893         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14894         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14895         (new_symbol_full): Use dwarf2_per_objfile from cu.
14896         (build_error_marker_type): Likewise.
14897         (lookup_die_type): Likewise.
14898         (determine_prefix): Likewise.
14899         (follow_die_offset): Likewise.
14900         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14901         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14902         (dwarf2_fetch_die_type_sect_off): Likewise.
14903         (dwarf2_get_die_type): Likewise.
14904         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14905         (get_signatured_type): Likewise.
14906         (get_DW_AT_signature_type): Likewise.
14907         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14908         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14909         (cu_debug_loc_section): Likewise.
14910         (fill_in_loclist_baton): Likewise.
14911         (dwarf2_symbol_mark_computed): Likewise.
14912         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14913         dwarf2_per_objfile.
14914         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14915         parameter.
14916         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14917         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14918         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14919         (set_die_type): Use dwarf2_free_objfile from cu.
14920         (get_die_type_at_offset): Likewise.
14921         (dwarf2_per_objfile_free): Don't assign global variable.
14922         (debug_names) <constructor>: Add dwarf2_per_objfile
14923         parameter, update m_debugstrlookup construction.
14924         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14925         parameter.
14926         <m_dwarf2_per_objfile>: New field.
14927         <lookup>: Use m_dwarf2_per_objfile.
14928         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14929         (psyms_seen_size): Likewise.
14930         (write_gdbindex): Replace objfile parameter with
14931         dwarf2_per_objfile.
14932         (write_debug_names): Likewise.
14933         (write_psymtabs_to_index): Likewise.
14934         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14935         calls.
14936
14937 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14938
14939         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14940         <dwarf2_per_objfile>: New field.
14941         (struct dwarf2_per_cu_data) <objfile>: Remove.
14942         <dwarf2_per_objfile>: New field.
14943         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14944         of objfile.
14945         (create_signatured_type_table_from_index): Likewise.
14946         (create_debug_type_hash_table): Likewise.
14947         (fill_in_sig_entry_from_dwo_entry): Likewise.
14948         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14949         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14950         objfile.
14951         (create_partial_symtab): Access objfile through
14952         dwarf2_per_objfile.
14953         (process_psymtab_comp_unit_reader): Likewise.
14954         (read_comp_units_from_section): Likewise.
14955         (scan_partial_symbols): Likewise.
14956         (add_partial_symbol): Likewise.
14957         (add_partial_subprogram): Likewise.
14958         (peek_die_abbrev): Likewise.
14959         (fixup_go_packaging): Likewise.
14960         (process_full_comp_unit): Likewise.
14961         (process_full_type_unit): Likewise.
14962         (process_imported_unit_die): Likewise.
14963         (dwarf2_compute_name): Likewise.
14964         (dwarf2_physname): Likewise.
14965         (read_import_statement): Likewise.
14966         (create_cus_hash_table): Assign dwarf2_physname instead of
14967         objfile.
14968         (read_func_scope): Access objfile through dwarf2_per_objfile.
14969         (read_lexical_block_scope): Likewise.
14970         (read_call_site_scope): Likewise.
14971         (read_variable): Likewise.
14972         (dwarf2_rnglists_process): Likewise.
14973         (dwarf2_ranges_process): Likewise.
14974         (dwarf2_ranges_read): Likewise.
14975         (dwarf2_record_block_ranges): Likewise.
14976         (dwarf2_add_field): Likewise.
14977         (dwarf2_add_member_fn): Likewise.
14978         (read_structure_type): Likewise.
14979         (process_structure_scope): Likewise.
14980         (read_enumeration_type): Likewise.
14981         (read_array_type): Likewise.
14982         (read_common_block): Likewise.
14983         (read_namespace_type): Likewise.
14984         (read_namespace): Likewise.
14985         (read_module_type): Likewise.
14986         (read_tag_pointer_type): Likewise.
14987         (read_tag_ptr_to_member_type): Likewise.
14988         (read_tag_string_type): Likewise.
14989         (read_subroutine_type): Likewise.
14990         (read_typedef): Likewise.
14991         (read_base_type): Likewise.
14992         (attr_to_dynamic_prop): Likewise.
14993         (read_subrange_type): Likewise.
14994         (read_unspecified_type): Likewise.
14995         (load_partial_dies): Likewise.
14996         (read_partial_die): Likewise.
14997         (find_partial_die): Likewise.
14998         (guess_partial_die_structure_name): Likewise.
14999         (fixup_partial_die): Likewise.
15000         (read_attribute_value): Likewise.
15001         (read_addr_index_from_leb128): Likewise.
15002         (dwarf2_read_addr_index): Likewise.
15003         (dwarf2_string_attr): Likewise.
15004         (lnp_state_machine::check_line_address): Likewise.
15005         (dwarf_decode_lines_1): Likewise.
15006         (dwarf_decode_lines): Likewise.
15007         (dwarf2_start_symtab): Likewise.
15008         (var_decode_location): Likewise.
15009         (new_symbol_full): Likewise.
15010         (dwarf2_const_value_data): Likewise.
15011         (dwarf2_const_value_attr): Likewise.
15012         (dwarf2_const_value): Likewise.
15013         (die_type): Likewise.
15014         (die_containing_type): Likewise.
15015         (lookup_die_type): Likewise.
15016         (guess_full_die_structure_name): Likewise.
15017         (anonymous_struct_prefix): Likewise.
15018         (dwarf2_name): Likewise.
15019         (follow_die_ref_or_sig): Likewise.
15020         (follow_die_offset): Likewise.
15021         (follow_die_ref): Likewise.
15022         (dwarf2_fetch_die_loc_sect_off): Likewise.
15023         (dwarf2_fetch_constant_bytes): Likewise.
15024         (dwarf2_fetch_die_type_sect_off): Likewise.
15025         (dwarf2_get_die_type): Likewise.
15026         (follow_die_sig): Likewise.
15027         (decode_locdesc): Likewise.
15028         (dwarf2_per_cu_objfile): Likewise.
15029         (dwarf2_per_cu_text_offset): Likewise.
15030         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15031         objfile.
15032         (set_die_type): Access objfile through
15033         dwarf2_per_objfile.
15034
15035 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15036
15037         * valprint.c (converted_character_d): Remove typedef.
15038         (DEF_VEC_O (converted_character_d)): Remove.
15039         (count_next_character): Use std::vector.
15040         (print_converted_chars_to_obstack): Likewise.
15041         (generic_printstr): Likewise.
15042
15043 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15044
15045         * xml-support.h (struct gdb_xml_value): Add constructor.
15046         <value>: Change type to unique_xmalloc_ptr.
15047         (gdb_xml_value_s): Remove typedef.
15048         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15049         (gdb_xml_element_start_handler): Change parameter type to
15050         std::vector.
15051         (xml_find_attribute): Likewise.
15052         * xml-support.c (xml_find_attribute): Change parameter type to
15053         std::vector and adjust.
15054         (gdb_xml_values_cleanup): Remove.
15055         (gdb_xml_parser::start_element): Adjust to std::vector.
15056         (xinclude_start_include): Change paraeter type to std::vector
15057         and adjust.
15058         * btrace.c (check_xml_btrace_version): Likewise.
15059         (parse_xml_btrace_block): Likewise.
15060         (parse_xml_btrace_pt_config_cpu): Likewise.
15061         (parse_xml_btrace_pt): Likewise.
15062         (parse_xml_btrace_conf_bts): Likewise.
15063         (parse_xml_btrace_conf_pt): Likewise.
15064         * memory-map.c (memory_map_start_memory): Likewise.
15065         (memory_map_start_property): Likewise.
15066         * osdata.c (osdata_start_osdata): Likewise.
15067         (osdata_start_item): Likewise.
15068         (osdata_start_column): Likewise.
15069         * remote.c (start_thread): Likewise.
15070         * solib-aix.c (library_list_start_library): Likewise.
15071         (library_list_start_list): Likewise.
15072         * solib-svr4.c (library_list_start_library): Likewise.
15073         (svr4_library_list_start_list): Likewise.
15074         * solib-target.c (library_list_start_segment): Likewise.
15075         (library_list_start_section): Likewise.
15076         (library_list_start_library): Likewise.
15077         (library_list_start_list): Likewise.
15078         * tracepoint.c (traceframe_info_start_memory): Likewise.
15079         (traceframe_info_start_tvar): Likewise.
15080         * xml-syscall.c (syscall_start_syscall): Likewise.
15081         * xml-tdesc.c (tdesc_start_target): Likewise.
15082         (tdesc_start_feature): Likewise.
15083         (tdesc_start_reg): Likewise.
15084         (tdesc_start_union): Likewise.
15085         (tdesc_start_struct): Likewise.
15086         (tdesc_start_flags): Likewise.
15087         (tdesc_start_enum): Likewise.
15088         (tdesc_start_field): Likewise.
15089         (tdesc_start_enum_value): Likewise.
15090         (tdesc_start_vector): Likewise.
15091
15092 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15093
15094         * extension.h (struct xmethod_worker) <clone>: Remove.
15095         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15096         Remove.
15097         (python_xmethod_worker::clone): Remove.
15098         * valops.c (find_overload_match): Use std::move instead of
15099         clone.
15100
15101 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15102
15103         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15104         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15105         <free_xmethod_worker_data>: Remove.
15106         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15107         <get_xmethod_arg_types>: Remove.
15108         <get_xmethod_result_type>: Remove.
15109         <invoke_xmethod>: Remove.
15110         * extension.c (new_xmethod_worker): Remove.
15111         (clone_xmethod_worker): Remove.
15112         (get_matching_xmethod_workers): Return void, pass std::vector by
15113         pointer.
15114         (get_xmethod_arg_types): Rename to...
15115         (xmethod_worker::get_arg_types): ... this, and adjust.
15116         (get_xmethod_result_type): Rename to...
15117         (xmethod_worker::get_result_type): ... this, and adjust.
15118         (invoke_xmethod): Remove.
15119         (free_xmethod_worker): Remove.
15120         (free_xmethod_worker_vec): Remove.
15121         * extension.h (enum ext_lang_rc): Move here from
15122         extension-priv.h.
15123         (struct xmethod_worker): Add constructor and destructor.
15124         <data>: Remove.
15125         <value>: Remove.
15126         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15127         virtual pure methods.
15128         <get_arg_types, get_result_type>: New methods.
15129         (xmethod_worker_ptr): Remove typedef.
15130         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15131         (xmethod_worker_vec): Remove typedef.
15132         (xmethod_worker_up): New typedef.
15133         (invoke_xmethod): Remove.
15134         (clone_xmethod_worker): Remove.
15135         (free_xmethod_worker): Remove.
15136         (free_xmethod_worker_vec): Remove.
15137         (get_xmethod_arg_types): Remove.
15138         (get_xmethod_result_type): Remove.
15139         * valops.c (find_method_list): Use std::vector, don't use
15140         intermediate vector.
15141         (value_find_oload_method_list): Use std::vector.
15142         (find_overload_match): Use std::vector.
15143         (find_oload_champ): Use std::vector.
15144         * value.c (value_free): Use operator delete.
15145         (value_of_xmethod): Rename to...
15146         (value_from_xmethod): ... this.  Don't assign
15147         xmethod_worker::value, take rvalue-reference.
15148         (result_type_of_xmethod): Adjust.
15149         (call_xmethod): Adjust.
15150         * value.h: Include extension.h.
15151         (struct xmethod_worker): Don't forward-declare.
15152         (value_of_xmethod): Rename to...
15153         (value_from_xmethod): ... this, take rvalue-reference.
15154         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15155         (struct python_xmethod_worker): ... this, add constructor and
15156         destructor.
15157         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15158         (gdbpy_free_xmethod_worker_data): Rename to...
15159         (python_xmethod_worker::~python_xmethod_worker): ... this and
15160         adjust.
15161         (gdbpy_clone_xmethod_worker_data): Rename to...
15162         (python_xmethod_worker::clone): ... this and adjust.
15163         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15164         temporary vector.
15165         (gdbpy_get_xmethod_arg_types): Rename to...
15166         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15167         (gdbpy_get_xmethod_result_type): Rename to...
15168         (python_xmethod_worker::do_get_result_type): ... this and
15169         adjust.
15170         (gdbpy_invoke_xmethod): Rename to...
15171         (python_xmethod_worker::invoke): ... this and adjust.
15172         (new_python_xmethod_worker): Rename to...
15173         (python_xmethod_worker::python_xmethod_worker): ... this and
15174         adjust.
15175         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15176         Remove.
15177         (gdbpy_free_xmethod_worker_data): Remove.
15178         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15179         (gdbpy_get_xmethod_arg_types): Remove.
15180         (gdbpy_get_xmethod_result_type): Remove.
15181         (gdbpy_invoke_xmethod): Remove.
15182         * python/python.c (python_extension_ops): Remove obsolete
15183         callbacks.
15184
15185 2018-01-05  Pedro Alves  <palves@redhat.com>
15186
15187         PR gdb/18653
15188         * common/signals-state-save-restore.c
15189         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15190         find a custom handler preinstalled, instead of internal erroring.
15191         But only warn if !quiet.
15192         * common/signals-state-save-restore.h
15193         (save_original_signals_state): New parameter 'quiet'.
15194         * main.c (captured_main_1): Move save_original_signals_state call
15195         after option handling, and pass QUIET.
15196
15197 2018-01-05  Pedro Alves  <palves@redhat.com>
15198
15199         * spu-tdep.c (spu_catch_start): Pass
15200         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15201
15202 2018-01-05  Pedro Alves  <palves@redhat.com>
15203
15204         PR gdb/22670
15205         * ada-lang.c (literal_symbol_name_matcher): New function.
15206         (ada_get_symbol_name_matcher): Use it for
15207         symbol_name_match_type::SEARCH_NAME.
15208         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15209         it down instead of assuming symbol_name_match_type::FULL.
15210         * block.h (block_lookup_symbol): New parameter 'match_type'.
15211         * c-valprint.c (print_unpacked_pointer): Use
15212         lookup_symbol_search_name instead of lookup_symbol.
15213         * compile/compile-object-load.c (get_out_value_type): Pass down
15214         symbol_name_match_type::SEARCH_NAME.
15215         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15216         symbol_name_match_type::FULL.
15217         * cp-support.c (cp_get_symbol_name_matcher): Handle
15218         symbol_name_match_type::SEARCH_NAME.
15219         * infrun.c (insert_exception_resume_breakpoint): Use
15220         lookup_symbol_search_name.
15221         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15222         * psymtab.c (maintenance_check_psymtabs): Use
15223         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15224         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15225         SYMBOL_SEARCH_NAME.
15226         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15227         if symbol_name_match_type::SEARCH_NAME.
15228         (lookup_symbol_in_language): Pass down
15229         symbol_name_match_type::FULL.
15230         (lookup_symbol_search_name): New.
15231         (lookup_language_this): Pass down
15232         symbol_name_match_type::SEARCH_NAME.
15233         (lookup_symbol_aux, lookup_local_symbol): New parameter
15234         'match_type'.  Pass it down.
15235         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15236         (lookup_symbol_search_name): New declaration.
15237         (lookup_symbol_in_block): New 'match_type' parameter.
15238
15239 2018-01-05  Pedro Alves  <palves@redhat.com>
15240
15241         PR gdb/22670
15242         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15243         ada_lookup_symbol.
15244         (ada_lookup_symbol): Reimplement in terms of
15245         ada_lookup_symbol_list, bits factored out from
15246         ada_lookup_encoded_symbol.
15247
15248 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15249
15250         * ada-exp.y (write_object_renaming): When subscripting an array
15251         using a symbol as the index, pass the block in call to
15252         ada_lookup_encoded_symbol when looking that symbol up.
15253
15254 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15255
15256         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15257         TYPE_INDEX_TYPE.
15258
15259 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15260
15261         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15262         the case where VALUE_LVAL (val0) is not lval_memory.
15263
15264 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15265
15266         * ada-valprint.c (print_optional_low_bound): Handle
15267         character-indexed array printing like boolean-indexed array
15268         printing.
15269
15270 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15271
15272         * NEWS: Create a new section for the next release branch.
15273         Rename the section of the current branch, now that it has
15274         been cut.
15275
15276 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15277
15278         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15279         * version.in: Bump version to 8.1.50.DATE-git.
15280
15281 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15282
15283         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15284         Add field.
15285         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15286         Add field.
15287         (default_exception_support_info) <catch_handlers_sym>: Add field.
15288         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15289         (ada_exception_name_addr_1): Add "catch handlers" handling.
15290         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15291         Update all callers.
15292         (create_excep_cond_exprs) <ex>: Add parameter.
15293         (re_set_exception): Update create_excep_cond_exprs call.
15294         (print_it_exception, print_one_exception, print_mention_exception)
15295         (print_recreate_exception): Add "catch handler" handling.
15296         (allocate_location_catch_handlers, re_set_catch_handlers)
15297         (check_status_catch_handlers, print_it_catch_handlers)
15298         (print_one_catch_handlers, print_mention_catch_handlers)
15299         (print_recreate_catch_handlers): New function.
15300         (catch_handlers_breakpoint_ops): New variable.
15301         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15302         Add parameter.  Add "catch handler" handling.
15303         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15304         Add "catch handler" handling.
15305         (ada_exception_catchpoint_cond_string): Add "catch handler"
15306         handling.
15307         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15308         call.
15309         (catch_ada_handlers_command): New function.
15310         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15311         operations structure.
15312         (_initialize_ada_language): Add "catch handlers" command entry.
15313         * NEWS: Document "catch handlers" feature.
15314
15315 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15316
15317         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15318         account when creating the array type of the slice.
15319         (ada_value_slice): Likewise.
15320
15321 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15322
15323         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15324         New enum value.
15325         (create_array_type_with_stride): Add byte_stride_prop parameter.
15326         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15327         New parameter.  Update all callers in this file.
15328         (array_type_has_dynamic_stride): New function.
15329         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15330         of arrays with dynamic byte strides.
15331         * dwarf2read.c (read_array_type): Add support for dynamic
15332         DW_AT_byte_stride attributes.
15333
15334 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15335
15336         * dwarf2read.c (read_unspecified_type): Treat
15337         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15338
15339 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15340
15341         Update copyright year range in all GDB files.
15342
15343 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15344
15345         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15346         and gdb/testsuite/gdb.base/step-line.c.
15347
15348 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15349
15350         * copyright.py (main): Dump the contents of
15351         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15352         even if BY_HAND is empty.
15353
15354 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15355
15356         * top.c (print_gdb_version): Update Copyright year in version
15357         message.
15358
15359 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15360
15361         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15362
15363 For older changes see ChangeLog-2017.
15364 \f
15365 Local Variables:
15366 mode: change-log
15367 left-margin: 8
15368 fill-column: 74
15369 version-control: never
15370 coding: utf-8
15371 End: