GDB: Only build for "unix:" connections if AF_LOCAL is supported.
[external/binutils.git] / gdb / ChangeLog
1 2018-10-29   John Darrington <john@darrington.wattle.id.au>
2
3         * configure.ac: New test HAVE_AF_LOCAL
4         * common/netstuff.c (parse_connection_spec) [prefixes]: Only compile "unix:"
5         if HAVE_AF_LOCAL is true.
6         * configure: regenerate.
7         * config.in: regenerate.
8
9 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
10
11         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
12         Add missing braces.  No functional change.
13
14 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
15
16         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
17         to report a bad option and fix indentation.
18         * demangle.c (demangle_command): Use report_unrecognized_option_error
19         to report a bad option and correctly report the bad option.
20
21 2018-10-27  Tom Tromey  <tom@tromey.com>
22
23         PR cli/23364:
24         * darwin-nat.c (copied_shell): New global.
25         (may_have_sip): Rename from should_disable_startup_with_shell.
26         (copy_shell_to_cache, maybe_cache_shell): New functions.
27         (darwin_nat_target::create_inferior): Update.  Use
28         copied_shell.
29
30 2018-10-27  Tom Tromey  <tom@tromey.com>
31
32         * unittests/scoped_fd-selftests.c (test_to_file): New function.
33         (run_tests): Call test_to_file.
34         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
35         temporary files.
36         * common/scoped_fd.h (scoped_fd::to_file): New method.
37
38 2018-10-27  Tom Tromey  <tom@tromey.com>
39
40         * unittests/scoped_mmap-selftests.c (test_normal): Use
41         gdb_mkostemp_cloexec.
42         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
43         Use gdb_mkostemp_cloexec.
44         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
45         gnulib/config.in, gnulib/configure,
46         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
47         gnulib/import/m4/gnulib-cache.m4,
48         gnulib/import/m4/gnulib-comp.m4: Update.
49         * gnulib/import/m4/mkostemp.m4: New file.
50         * gnulib/import/m4/mkstemp.m4: Remove.
51         * gnulib/import/mkostemp.c: New file.
52         * gnulib/import/mkstemp.m4: Remove.
53         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
54         mkstemp, add mkostemp.  Apply new patch.
55         * gnulib/import/stdlib.in.h: Apply patch.
56         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
57         New file.
58         * dwarf-index-write.c (write_psymtabs_to_index): Use
59         gdb_mkostemp_cloexec.
60         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
61
62 2018-10-27  Tom Tromey  <tom@tromey.com>
63
64         * unittests/mkdir-recursive-selftests.c: New file.
65         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
66         unittests/mkdir-recursive-selftests.c.
67         * dwarf-index-cache.c (mkdir_recursive): Move to
68         common/filestuff.c.
69         (index_cache::store): Check return value of mkdir_recursive.
70         (create_dir_and_check, test_mkdir_recursive): Move to new file.
71         (_initialize_index_cache): Don't register test.
72         * common/filestuff.h (mkdir_recursive): Declare.
73         * common/filestuff.c (mkdir_recursive): Move from
74         dwarf-index-cache.c.  Return bool.
75
76 2018-10-27  Tom Tromey  <tom@tromey.com>
77
78         * dwarf-index-write.c (write_psymtabs_to_index): Move
79         make_temp_filename to common/pathstuff.c.
80         * common/pathstuff.h (make_temp_filename): Declare.
81         * common/pathstuff.c (make_temp_filename): New function, moved
82         from dwarf-index-write.c.
83
84 2018-10-27  Tom Tromey  <tom@tromey.com>
85
86         * procfs.c (procfs_target::create_inferior): Use get_shell.
87         * cli/cli-cmds.c (shell_escape): Use get_shell.
88         * windows-nat.c (windows_nat_target::create_inferior): Use
89         get_shell.
90         * common/pathstuff.c (get_shell): New function.
91         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
92         (fork_inferior): Use get_shell.
93         * common/pathstuff.h (get_shell): Declare.
94
95 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
96
97         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
98
99 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
100
101         * stack.c (print_variable_and_value_data): Add preg and treg.
102         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
103         and update callers.
104         (print_frame_arg_vars): Likewise.
105         (prepare_reg): New function.
106         (info_locals_command): Extract info print args and use them.
107         (info_args_command): Likewise.
108         (_initialize_stack): Modify on-line help.
109         * symtab.c (treg_matches_sym_type_name): New function.
110         (search_symbols): New arg t_regexp.
111         (symtab_symbol_info): New args quiet, regexp, t_regexp.
112         (info_variables_command): Extract info print args and use them.
113         (info_functions_command): Likewise.
114         (info_types_command): Update call to symtab_symbol_info.
115         (_initialize_symtab): Modify on-line help.
116         * symtab.h (treg_matches_sym_type_name): New function.
117         (search_symbols): New t_regexp arg.
118
119 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
120
121         * cli-utils.c (extract_arg_maybe_quoted): New function.
122         (extract_info_print_args): New function.
123         (info_print_args_help): New function.
124         (report_unrecognized_option_error): New function.
125         * cli-utils.h (extract_arg_maybe_quoted): New function.
126         (extract_info_print_args): New function.
127         (info_print_args_help): New function.
128         (report_unrecognized_option_error): New function.
129
130 2018-10-26  Tom Tromey  <tom@tromey.com>
131
132         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
133         (compute_compunit_symtab_includes): Update.
134         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
135         (compunit_symtab_ptr): Likewise.
136
137 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
138
139         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
140         default_print_auxv_entry for specific tag values.
141
142 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
143
144         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
145
146 2018-10-26  Jim Wilson  <jimw@sifive.com>
147
148         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
149         (riscv_linux_sigframe_init): Declare.
150         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
151         (riscv_linux_sigframe): New.
152         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
153         (riscv_linux_sigframe_init): Define.
154         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
155
156         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
157         (riscv_isa_flen): Likewise.  Drop static.
158         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
159         (riscv_isa_flen): Likewise.  Declare.
160
161 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
162             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
163
164         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
165         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
166         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
167         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
168         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
169         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
170         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
171         Define.
172         (struct ppc_linux_features) <htm>: New field.
173         (ppc_linux_no_features): Add initializer for htm field.
174         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
175         new tdescs.
176         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
177         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
178         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
179         Define if not already defined.
180         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
181         and rs6000/powerpc-isa207-htm-vsx64l.
182         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
183         rs6000/powerpc-isa207-htm-vsx64l.xml.
184         * features/rs6000/power-htm-spr.xml: New file.
185         * features/rs6000/power-htm-core.xml: New file.
186         * features/rs6000/power64-htm-core.xml: New file.
187         * features/rs6000/power-htm-fpu.xml: New file.
188         * features/rs6000/power-htm-altivec.xml: New file.
189         * features/rs6000/power-htm-vsx.xml: New file.
190         * features/rs6000/power-htm-ppr.xml: New file.
191         * features/rs6000/power-htm-dscr.xml: New file.
192         * features/rs6000/power-htm-tar.xml: New file.
193         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
194         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
195         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
196         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
197         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
198         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
199         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
200         fetch_regset with HTM regsets.
201         (store_register, store_ppc_registers): Call store_regset with HTM
202         regsets.
203         (ppc_linux_nat_target::read_description): Set htm field in the
204         features struct if needed.
205         * ppc-linux-tdep.c: Include
206         features/rs6000/powerpc-isa207-htm-vsx32l.c and
207         features/rs6000/powerpc-isa207-htm-vsx64l.c.
208         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
209         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
210         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
211         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
212         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
213         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
214         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
215         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
216         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
217         (ppc32_linux_ctarregset): New globals.
218         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
219         (ppc_linux_collect_core_cpgrregset): New function.
220         (ppc_linux_iterate_over_regset_sections): Call back with the htm
221         regsets.
222         (ppc_linux_core_read_description): Check if the tm spr section is
223         present and set htm in the features struct.
224         (_initialize_ppc_linux_tdep): Call
225         initialize_tdesc_powerpc_isa207_htm_vsx32l and
226         initialize_tdesc_powerpc_isa207_htm_vsx64l.
227         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
228         Declare.
229         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
230         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
231         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
232         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
233         New fields.
234         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
235         Likewise.
236         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
237         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
238         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
239         New enum fields.
240         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
241         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
242         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
243         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
244         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
245         <PPC_CTAR_REGNUM>: Likewise.
246         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
247         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
248         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
249         (IS_CEFP_PSEUDOREG): Define.
250         (rs6000_register_name): Hide the upper halves of checkpointed VSX
251         registers.  Return names for the checkpointed DFP, VSX, and EFP
252         pseudo registers.
253         (rs6000_pseudo_register_type): Remove initial assert and raise an
254         internal error in the else clause instead.  Return types for the
255         checkpointed DFP, VSX, and EFP pseudo registers.
256         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
257         checkpointed DFP pseudo registers.
258         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
259         checkpointed VSX pseudo registers.
260         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
261         from efpr_pseudo_register_read and
262         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
263         registers.
264         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
265         Handle checkpointed DFP, VSX, and EFP registers.
266         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
267         (efp_ax_pseudo_register_collect): New functions.
268         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
269         register logic to new functions.  Handle checkpointed DFP, VSX,
270         and EFP pseudo registers.
271         (rs6000_gdbarch_init): Look for and validate the htm features.
272         Include checkpointed DFP, VSX and EFP pseudo-registers.
273         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
274         HTM registers.
275
276 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
277
278         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
279         without altivec or fpu.
280
281 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
282             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
283
284         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
285         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
286         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
287         Define if not already defined.
288         * features/rs6000/power-ebb.xml: New file.
289         * features/rs6000/power-linux-pmu.xml: New file.
290         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
291         features.
292         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
293         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
294         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
295         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
296         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
297         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
298         fetch_regset with ebb and pmu regsets.
299         (store_register, store_ppc_registers): Call store_regset with ebb
300         and pmu regsets.
301         (ppc_linux_nat_target::read_description): Set isa207 field in the
302         features struct if ebb and pmu are avaiable.
303         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
304         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
305         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
306         and pmu regsets.
307         (ppc_linux_core_read_description): Check if the pmu section is
308         present and set isa207 in the features struct.
309         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
310         (ppc32_linux_pmuregset): Declare.
311         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
312         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
313         <ppc_sier_regnum>: New field.
314         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
315         New enum values.
316         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
317         values.
318         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
319         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
320         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
321         ebb and pmu features.
322
323 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
324             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
325
326         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
327         (tdesc_powerpc_isa207_vsx64l): Declare.
328         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
329         (struct ppc_linux_features) <isa207>: New field.
330         (ppc_linux_no_features): Add initializer for isa207 field.
331         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
332         new tdescs.
333         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
334         (NT_PPC_TAR): Define if not already defined.
335         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
336         rs6000/powerpc-isa207-vsx64l.
337         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
338         rs6000/powerpc-isa207-vsx64l.xml.
339         * features/rs6000/power-tar.xml: New file.
340         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
341         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
342         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
343         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
344         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
345         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
346         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
347         fetch_regset with the TAR regset.
348         (store_register, store_ppc_registers): Call store_regset with the
349         TAR regset.
350         (ppc_linux_nat_target::read_description): Set isa207 field in the
351         features struct if needed.
352         * ppc-linux-tdep.c: Include
353         features/rs6000/powerpc-isa207-vsx32l.c and
354         features/rs6000/powerpc-isa207-vsx64l.c.
355         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
356         (ppc_linux_iterate_over_regset_sections): Call back with the tar
357         regset.
358         (ppc_linux_core_read_description): Check if the tar section is
359         present and set isa207 in the features struct.
360         (_initialize_ppc_linux_tdep): Call
361         initialize_tdesc_powerpc_isa207_vsx32l and
362         initialize_tdesc_powerpc_isa207_vsx64l.
363         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
364         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
365         (enum) <PPC_TAR_REGNUM>: New enum value.
366         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
367         feature.
368         (ppc_process_record_op31): Record changes to TAR.
369
370 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
371             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
372
373         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
374         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
375         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
376         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
377         (struct ppc_linux_features) <ppr_dscr>: New field.
378         (ppc_linux_no_features): Add initializer for ppr_dscr field.
379         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
380         new tdescs.
381         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
382         Define if not already defined.
383         * features/Makefile (WHICH): Add
384         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
385         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
386         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
387         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
388         * features/rs6000/power-dscr.xml: New file.
389         * features/rs6000/power-ppr.xml: New file.
390         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
391         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
392         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
393         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
394         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
395         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
396         * ppc-linux-nat.c: Include <sys/uio.h>.
397         (fetch_regset, store_regset, check_regset): New functions.
398         (fetch_register, fetch_ppc_registers): Call fetch_regset with
399         DSCR and PPR regsets.
400         (store_register, store_ppc_registers): Call store_regset with
401         DSCR and PPR regsets.
402         (ppc_linux_get_hwcap2): New function.
403         (ppc_linux_nat_target::read_description): Call
404         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
405         features struct if needed.
406         * ppc-linux-tdep.c: Include
407         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
408         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
409         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
410         (ppc32_linux_dscrregset): New globals.
411         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
412         and dscr regsets.
413         (ppc_linux_core_read_description): Check if the ppr and dscr
414         sections are present and set ppr_dscr in the features struct.
415         (_initialize_ppc_linux_tdep): Call
416         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
417         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
418         * ppc-linux-tdep.h (ppc32_linux_pprregset)
419         (ppc32_linux_dscrregset): Declare.
420         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
421         <ppc_dscr_regnum>: New field.
422         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
423         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
424         and dscr features.
425         (ppc_process_record_op31): Record changes to PPR and DSCR.
426
427 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
428
429         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
430         second initializer line for the have_* variables.  Initialize
431         have_fpu to 0 instead of 1.
432
433 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
434
435         * arch/ppc-linux-common.c (ppc_linux_match_description):
436         Parenthesize tdesc assignements and indent them properly.
437
438 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
439
440         * ppc-linux-nat.c (fetch_register): Change if statement to else
441         if.
442         (store_register): Likewise.
443
444 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
445
446         * rs6000-tdep.c: Remove reggroups.h include.
447         (rs6000_pseudo_register_reggroup_p): Remove.
448         (rs6000_gdbarch_init): Remove call to
449         set_tdesc_pseudo_register_reggroup_p.
450
451 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
452
453         * reggroups.c (default_register_reggroup_p): Return true for
454         decfloat registers and float_reggroup.
455
456 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
457
458         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
459         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
460         ppc_linux_collect_vrregset by regcache_collect_regset.
461
462 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
463
464         * linux-tdep.c (linux_collect_regset_section_cb): Use
465         std::vector<gdb_byte> instead of char * and malloc for buf.
466         Remove xfree.
467
468 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
469
470         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
471         symtab_start instead of always using language_unknown.
472
473 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
474
475         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
476         READ_P parameter, catch and ignore register access errors from
477         either the old or new MISA location.
478         (riscv_has_feature): Update call to riscv_read_misa_reg.
479
480 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
481
482         * python/py-function.c (convert_values_to_python): Return
483         gdbpy_ref<>.  Add header comment.
484         (fnpy_call): Adjust.
485
486 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
487
488         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
489         (cmdpy_completer_handle_brkchars): Adjust.
490         (cmdpy_completer): Adjust.
491
492 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
493
494         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
495         Pass correct regnum to raw_supply_zeroed.
496
497 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
498
499         * regcache.c (cooked_read_test): Add CSKY to the list of
500         architectures with a save_reggroup
501
502 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
503
504         PR gdb/23368
505         * infrun.c (follow_exec): In the follow_exec_mode_new case,
506         transfer terminal state from old new new inferior.
507         * terminal.h (swap_terminal_info): New function.
508         * inflow.c (swap_terminal_info): New function.
509
510 2018-10-23  Tom Tromey  <tom@tromey.com>
511
512         * record-btrace.c (get_thread_current_frame_id): Rename from
513         get_thread_current_frame.  Return a frame_id.
514         (record_btrace_start_replaying): Update.
515
516 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
517
518         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
519         for CSRs.
520
521 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
522
523         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
524         have_nonsteppable_watchpoint attribute to 1.
525
526 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
527
528         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
529         register names.
530         (struct register_alias): Rename to...
531         (struct riscv_register_alias): ...this, and update comment.
532         (riscv_register_aliases): Update type, and alias names.  Remove
533         CSR names from this list.
534         (riscv_register_name): Use riscv_gdb_reg_names for int and float
535         register names.  Add an extra assertion.
536         (riscv_is_regnum_a_named_csr): New function.
537         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
538
539 2018-10-22  Jim Wilson  <jimw@sifive.com>
540
541         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
542         FP reg smaller than FP reg size, and fill with -1 instead of 0.
543
544         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
545         (riscv_register_type): Use them.
546         (riscv_print_one_register_info): Handle union of floats same as float.
547         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
548         riscv_fpreg_q_type fields.
549
550 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
551
552         * gdbarch.sh (gdbarch_num_cooked_regs): New.
553         * gdbarch.h: Re-generate.
554         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
555         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
556         * eval.c (evaluate_subexp_standard): Likewise.
557         * findvar.c (value_of_register): Likewise.
558         (value_of_register_lazy): Likewise.
559         (address_from_register): Likewise.
560         * frame.c (get_frame_register_bytes): Likewise.
561         * gdbarch-selftests.c (register_to_value_test): Likewise.
562         * h8300-tdep.c (h8300_register_type): Likewise.
563         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
564         (i386_svr4_reg_to_regnum): Likewise.
565         * infcmd.c (default_print_registers_info): Likewise.
566         (registers_info): Likewise.
567         (print_vector_info): Likewise.
568         (default_print_float_info): Likewise.
569         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
570         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
571         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
572         (mi_cmd_data_list_changed_registers): Likewise.
573         (mi_cmd_data_list_register_values): Likewise.
574         (mi_cmd_data_write_register_values): Likewise.
575         (mi_cmd_trace_frame_collected): Likewise.
576         * mips-tdep.c (print_gp_register_row): Likewise.
577         (mips_print_registers_info): Likewise.
578         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
579         * regcache.c (init_regcache_descr): Likewise.
580         (register_size): Likewise.
581         (register_dump::dump): Likewise.
582         (cooked_read_test): Likewise.
583         (cooked_write_test): Likewise.
584         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
585         (rs6000_gdbarch_init): Likewise.
586         * stabsread.c (stab_reg_to_regnum): Likewise.
587         * stack.c (info_frame_command): Likewise.
588         * target-descriptions.c (tdesc_register_name): Likewise.
589         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
590         * tui/tui-regs.c (tui_show_register_group): Likewise.
591         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
592         (user_reg_map_regnum_to_name): Likewise.
593         (value_of_user_reg): Likewise.
594         (maintenance_print_user_registers): Likewise.
595         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
596         (xtensa_register_name): Likewise.
597         (xtensa_register_type): Likewise.
598         (xtensa_reg_to_regnum): Likewise.
599         (xtensa_pseudo_register_read): Likewise.
600         (xtensa_pseudo_register_write): Likewise.
601
602 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
603
604         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
605         correctly-sized buffer with raw_read.
606         (amd64_pseudo_register_write): Use correctly-sized buffer for
607         raw_read/raw_write.
608
609 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
610
611         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
612         in add_prefix_cmd of set print type.
613
614 2018-10-19  Tom Tromey  <tom@tromey.com>
615
616         PR tui/18388:
617         * NEWS: Mention tabset deprecation.
618         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
619         (update_tab_width): New function.
620         (tui_set_tab_width, tui_show_tab_width): New functions.
621         (tui_set_tab_width_command): Use update_tab_width.
622         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
623         Add new "set tui tab-width" command.
624         * tui/tui-source.c (tui_set_source_content): Update.
625         * tui/tui-disasm.c (tui_set_disassem_content): Update.
626         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
627         Don't declare.
628         (tui_tab_width): Declare.
629         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
630         (tui_set_default_tab_len): Remove.
631
632 2018-10-19  Tom Tromey  <tom@tromey.com>
633
634         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
635         (key_is_backspace, tui_getc): Don't declare.
636         * tui/tui-io.c (key_is_start_sequence): Now static.
637         (key_is_end_sequence, key_is_backspace): Remove.
638         (tui_getc): Now static.
639
640 2018-10-19  Tom Tromey  <tom@tromey.com>
641
642         * symfile.c (reread_symbols): Clear "static_links".
643
644 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
645
646         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
647         define.
648         (aarch64_linux_sigframe_init): Extra boundary checks.
649
650 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
651
652         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
653         the possibly non-existent tdesc type 'vec128', but the type of raw
654         register v16 instead.
655
656 2018-10-19  Gary Benson <gbenson@redhat.com>
657
658         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
659
660 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
661
662         PR cli/23785
663         * cli/cli-dump.c (restore_binary_file): Check if "file" is
664         NULL.
665
666 2018-10-17  Paul Koning  <paul_koning@dell.com>
667
668         * charset.c (convert_between_encodings): Fix unsigned overflow.
669
670 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
671
672         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
673         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
674         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
675         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
676         New functions.
677         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
678         and fbsd_info_proc_mappings_header.
679         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
680         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
681         New.
682
683 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
684
685         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
686         Solaris Maintainer.
687
688 2018-10-15  Tom Tromey  <tom@tromey.com>
689
690         * tui/tui.c (strcat_to_buf): Remove casts.
691         * tui/tui-winsource.c (tui_show_source_line)
692         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
693         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
694         * tui/tui-windata.c (tui_first_data_item_displayed)
695         (tui_delete_data_content_windows, tui_erase_data_content)
696         (tui_display_all_data, tui_display_data_from)
697         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
698         * tui/tui-win.c (tui_set_win_height)
699         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
700         casts.
701         * tui/tui-win.c (tui_resize_all): Remove casts.
702         (tui_scroll_backward_command, tui_set_focus)
703         (tui_set_tab_width_command): Likewise.
704         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
705         * tui/tui-regs.c (tui_show_register_group): Remove cast.
706         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
707         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
708         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
709         Remove casts.
710
711 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
712
713         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
714         AArch64/ARM maintainer.
715
716 2018-10-11  Gary Benson <gbenson@redhat.com>
717
718         * interps.h (interp::m_name): Make private and mutable.
719         * interps.c (interp::~interp): Free m_name.
720
721 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
722             Simon Marchi <simark@simark.ca>
723
724         * README (`configure' options): Add documentation for new
725         "--enable-unit-tests" option.
726         * acinclude.m4: Include "selftest.m4".
727         * configure: Regenerate.
728         * configure.ac: Use "GDB_AC_SELFTEST".
729         * maint.c (maintenance_selftest): Update message informing
730         that selftests have been disabled.
731         (maintenance_info_selftests): Likewise.
732         * selftest.m4: New file.
733
734 2018-10-10  Gary Benson <gbenson@redhat.com>
735
736         * remote.c (remote_target::remote_send_printf): Add
737         missing va_end found by Coverity.
738
739 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
740
741         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
742
743 2018-10-09  Tom Tromey  <tom@tromey.com>
744
745         * configure: Rebuild.
746         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
747         * NEWS: Update --enable-ubsan documentation.
748
749 2018-10-09  Gary Benson <gbenson@redhat.com>
750
751         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
752         found by Coverity.
753
754 2018-10-08  Tom Tromey  <tom@tromey.com>
755
756         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
757         variable.
758         (riscv_fbsd_init_abi): Likewise.
759
760 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
761         * valops.c (value_struct_elt_for_reference): Rename local variable
762         to work around the shadowing a previous local warning.
763
764 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
765
766         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
767         * NEWS: Mention new FreeBSD/riscv native configuration.
768         * configure.host: Add riscv*-*-freebsd*.
769         * configure.nat: Likewise.
770         * riscv-fbsd-nat.c: New file.
771
772 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
773
774         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
775         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
776         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
777         * NEWS: Mention new FreeBSD/riscv target.
778         * configure.tgt: Add riscv*-*-freebsd*.
779         * riscv-fbsd-tdep.c: New file.
780         * riscv-fbsd-tdep.h: New file.
781
782 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
783
784         * regcache.h (struct regcache_map_entry): Note that this type can
785         be used with traditional frame caches.
786         * trad-frame.c (trad_frame_set_reg_regmap): New.
787         * trad-frame.h (trad_frame_set_reg_regmap): New.
788
789 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
790
791         PR c++/16841
792         * valops.c (get_virtual_base_offset): New function.
793         (value_struct_elt_for_reference): Use it to get virtual base offset
794         and add it in calculating class member address.
795
796 2018-10-08   John Darrington <john@darrington.wattle.id.au>
797
798     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
799       (check_producer): Check if the producer is codewarrior.
800       (producer_is_codewarrior): New function.
801       (lnp_state_machine::record_line): Ignore is_stmt flag for records
802        produced by codewarrior.
803       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
804
805 2018-10-06  Tom Tromey  <tom@tromey.com>
806
807         PR python/19399:
808         * python/py-inferior.c: Add "architecture" entry.
809         (infpy_architecture): New function.
810
811 2018-10-06  Tom Tromey  <tom@tromey.com>
812
813         PR python/21765:
814         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
815         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
816         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
817         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
818
819 2018-10-06  Tom Tromey  <tom@tromey.com>
820
821         PR build/17077:
822         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
823         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
824         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
825         #include.
826
827 2018-10-06  Tom Tromey  <tom@tromey.com>
828
829         * python/py-breakpoint.c (bppy_get_location): Handle a
830         bp_breakpoint without a location.
831
832 2018-10-06  Tom Tromey  <tom@tromey.com>
833
834         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
835         (_RegEx): Reformat help text.
836         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
837         (AnyCallerIs, AnyCallerMatches): Reformat help text.
838         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
839         text.
840         * python/lib/gdb/command/xmethods.py (InfoXMethod)
841         (EnableXMethod, DisableXMethod): Remove help indentation.
842         Capitalize meta-syntactic variables.
843         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
844         (EnableUnwinder, DisableUnwinder): Remove help indentation.
845         Capitalize meta-syntactic variables.
846         * python/lib/gdb/command/explore.py (ExploreCommand)
847         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
848         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
849         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
850         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
851         Remove help indentation.
852         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
853         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
854         (DisableFrameFilter, SetFrameFilterPriority)
855         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
856
857 2018-10-06  Tom Tromey  <tom@tromey.com>
858
859         PR tui/28819:
860         * tui/tui-io.c (gdb_wgetch): New function.
861         (tui_mld_getc, tui_getc): Use it.
862
863 2018-10-05  Tom Tromey  <tom@tromey.com>
864
865         * sol-thread.c (sol_thread_target::wait): Rename inner
866         "save_ptid".
867
868 2018-10-04  Tom Tromey  <tom@tromey.com>
869
870         * configure: Rebuild.
871         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
872
873 2018-10-04  Tom Tromey  <tom@tromey.com>
874
875         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
876         declaration of "block".
877
878 2018-10-04  Tom Tromey  <tom@tromey.com>
879
880         * common/filestuff.c (fdwalk): Remove inner declaration of
881         "result".
882
883 2018-10-04  Tom Tromey  <tom@tromey.com>
884
885         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
886         "structs_addr" and hoist declaration.
887
888 2018-10-04  Tom Tromey  <tom@tromey.com>
889
890         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
891         variable "size".
892
893 2018-10-04  Tom Tromey  <tom@tromey.com>
894
895         * mdebugread.c (parse_partial_symbols): Use std::string.
896
897 2018-10-04  Tom Tromey  <tom@tromey.com>
898
899         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
900         * p-valprint.c (pascal_val_print): Split inner "i" variable.
901         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
902         header.
903         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
904         more inner scope.
905         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
906         * varobj.c (varobj_update): Rename inner "newobj",
907         "type_changed".
908         * valprint.c (generic_emit_char): Rename inner "buf".
909         * valops.c (find_overload_match): Rename inner "temp".
910         (value_struct_elt_for_reference): Declare "v" in more inner
911         scope.
912         * v850-tdep.c (v850_push_dummy_call): Rename "len".
913         * unittests/array-view-selftests.c (run_tests): Rename inner
914         "vec".
915         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
916         header.
917         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
918         "tsv" in more inner scope.
919         (print_one_static_tracepoint_marker): Rename inner
920         "tuple_emitter".
921         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
922         (tic6x_push_dummy_call): Don't redeclare "addr".
923         * target-float.c: Declare "dto" lower.
924         * symtab.c (lookup_local_symbol): Rename inner "sym".
925         (find_pc_sect_line): Rename inner "pc".
926         * stack.c (print_frame): Don't redeclare "gdbarch".
927         (return_command): Rename inner "gdbarch".
928         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
929         "sp".
930         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
931         header.
932         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
933         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
934         scope.
935         * remote.c (remote_target::update_thread_list): Don't redeclare
936         "tp".
937         (remote_target::process_initial_stop_replies): Rename inner
938         "thread".
939         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
940         (remote_target::wait_as): Don't redeclare "stop_reply".
941         (remote_target::get_thread_local_address): Rename inner
942         "result".
943         (remote_target::get_tib_address): Likewise.
944
945         * regcache.c (cooked_read_test): Rename "regnum".
946         * record-btrace.c (cmd_record_btrace_start): Rename inner
947         "exception".
948         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
949         loop header.
950         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
951         header.
952         (ppu2spu_sniffer): Rename inner "buf".
953         * parse.c (operator_check_standard): Rename inner "type",
954         "objfile".
955         * p-valprint.c (pascal_val_print): Introduce new scope for
956         "low_bound", "high_bound".
957         * p-exp.y (yylex): Declare "i" in loop header.
958         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
959         Lower declaration of "s".
960         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
961         header.
962         (nios2_push_dummy_call): Rename "len".
963         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
964         "buf".
965         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
966         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
967         (linux_xfer_osdata_modules): Likewise.
968         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
969         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
970         (mips_o64_push_dummy_call): Likewise.
971         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
972         "op".
973         * mi/mi-main.c (list_available_thread_groups): Rename inner
974         "tuple_emitter".
975         (mi_cmd_data_read_memory): Rename inner "opts".
976         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
977         "tuple_emitter".
978         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
979         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
980         more inner scope.
981         (parse_partial_symbols): Rename inner "pst", "p", "name"
982         * main.c (captured_main_1): Rename inner "i"s.
983         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
984         "oso2".
985         * linux-tdep.c (linux_info_proc): Rename inner "filename".
986         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
987         * infrun.c (handle_no_resumed): Don't redeclare "thread".
988         (handle_signal_stop): Rename inner "gdbarch".
989         (handle_command): Declare "signum" in loop header.
990         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
991         "status".
992         (examine_prologue): Rename inner "sol" and "sof".
993         (ia64_extract_return_value): Rename inner "val".  Declare another
994         "val" in a more inner scope.
995         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
996         inner scope.
997         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
998         "except".
999         * findvar.c (default_read_var_value): Don't redeclare "addr".
1000         * f-exp.y (yylex): Declare "i" in loop header.
1001         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1002         Rename inner "type", "expect_type".
1003         (evaluate_subexp_for_sizeof): Rename inner "pc".
1004         * elfread.c (elf_symfile_read): Rename inner "abfd".
1005         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1006         "bytes_read".
1007         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1008         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1009         (dwarf_decode_line_header): Rename inner "lh".
1010         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1011         "offset".  Declare "i" in loop header.
1012         (disassemble_dwarf_expression): Rename inner "addr_size".
1013         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1014         inner "result".
1015         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1016         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1017         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1018         "inner_list_emitter".
1019         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1020         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1021         declaration in a block.
1022         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1023         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1024         "obstack_final_size".
1025         * cp-support.c (inspect_type): Declare "i" in loop header.
1026         * compile/compile.c (compile_instance::insert_symbol_error):
1027         Rename inner "e".
1028         * common/agent.c (agent_run_command): Remove inner "ret"
1029         declaration.
1030         * coffread.c (coff_symfile_read): Rename inner "name".
1031         (coff_symfile_read): Rename inner "abfd".
1032         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1033         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1034         "high".
1035         * c-exp.y (lex_one_token): Move "len" declaration lower.
1036         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1037         "gdbarch".
1038         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1039         "b".
1040         (watch_command_1): Declare "mark" later.
1041         (clear_command): Don't shadow "a" or "b".
1042         (delete_command): Rename inner "b".
1043         (delete_trace_command): Likewise.
1044         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1045         "op".
1046         (arm_gdbarch_init): Remove inner "e_flags".
1047         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1048         "offset" in inner blocks.
1049
1050 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1051
1052         * dwarf-index-write.c (file_write): Don't write if the vector is
1053         empty.
1054
1055 2018-10-05  Tom de Vries  <tdevries@suse.de>
1056
1057         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1058         PyArg_ParseTuple call.
1059
1060 2018-10-05  Tom de Vries  <tdevries@suse.de>
1061
1062         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1063         PyArg_ParseTuple call.
1064
1065 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1066
1067         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1068         to avoid exceeding 80 characters per line limit.
1069
1070 2018-10-04  Tom Tromey  <tom@tromey.com>
1071
1072         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1073         (reread_symbols): Update.
1074         * complaints.h (clear_complaints): Remove argument.
1075         * complaints.c (enum complaint_series): Remove.
1076         (series): Remove global.
1077         (complaint_internal): Update.
1078         (clear_complaints): Remove argument.
1079
1080 2018-10-04  Tom Tromey  <tom@tromey.com>
1081
1082         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1083         debugging symbols" message if there is a separate debug objfile.
1084
1085 2018-10-04  Tom Tromey  <tom@tromey.com>
1086
1087         PR cli/19551:
1088         * symfile.c (symbol_file_add_with_addrs): Update output.
1089         * psymtab.c (require_partial_symbols): Update output.
1090
1091 2018-10-04  Tom Tromey  <tom@tromey.com>
1092
1093         PR cli/22234:
1094         * complaints.c: Emit \n.
1095
1096 2018-10-04  Tom Tromey  <tom@tromey.com>
1097
1098         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1099         (separate_debug_file_exists, find_separate_debug_file)
1100         (add_symbol_file_command, reread_symbols, allocate_symtab)
1101         (allocate_compunit_symtab): Use filtered printing, not
1102         unfiltered.
1103         * psymtab.c (require_partial_symbols, dump_psymtab)
1104         (allocate_psymtab): Use filtered printing, not unfiltered.
1105
1106 2018-10-04  Tom Tromey  <tom@tromey.com>
1107
1108         * complaints.c (complaint_internal): Correctly check complaint
1109         count.
1110
1111 2018-10-04  Tom Tromey  <tom@tromey.com>
1112
1113         * complaints.h (struct complaints): Remove declaration.
1114         * complaints.c (clear_complaints): Remove an unused variable.
1115
1116 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1117
1118         * MAINTAINERS (Write After Approval): Add self.
1119
1120 2018-10-03  Tom Tromey  <tom@tromey.com>
1121
1122         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1123         "buffer_contents".
1124         * coffread.c (coff_symtab_read): Initialize "newobj".
1125
1126 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1127
1128         * dwarf2read.c (read_func_scope): Remove struct keyword in
1129         range-based for.
1130
1131 2018-10-03  Tom Tromey  <tom@tromey.com>
1132
1133         * README: Mention --enable-ubsan.
1134         * NEWS: Mention --enable-ubsan.
1135         * acinclude.m4: Include sanitize.m4.
1136         * configure: Rebuild.
1137         * configure.ac: Call AM_GDB_UBSAN.
1138         * sanitize.m4: New file.
1139
1140 2018-10-03  Tom Tromey  <tom@tromey.com>
1141
1142         * expression.h (enum exp_opcode): Use uint8_t as base type.
1143         * expprint.c (op_name): Handle invalid opcodes.
1144
1145 2018-10-03  Tom Tromey  <tom@tromey.com>
1146
1147         * parse.c (prefixify_expression): Add assert.
1148         (parse_exp_in_context_1): Throw exception if the expression is
1149         empty.
1150
1151 2018-10-03  Tom Tromey  <tom@tromey.com>
1152
1153         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1154
1155 2018-10-03  Tom Tromey  <tom@tromey.com>
1156
1157         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1158
1159 2018-10-03  Tom Tromey  <tom@tromey.com>
1160
1161         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1162         unsigned.
1163
1164 2018-10-03  Tom Tromey  <tom@tromey.com>
1165
1166         * findvar.c (extract_integer): Do work in an unsigned type.
1167
1168 2018-10-03  Tom Tromey  <tom@tromey.com>
1169
1170         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1171         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1172         base type.
1173         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1174         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1175         type.
1176         * c-lang.h (enum c_string_type_values): Use unsigned as base
1177         type.
1178         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1179
1180 2018-10-03  Tom Tromey  <tom@tromey.com>
1181
1182         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1183         <~dwarf2_frame_state_reg_info>: Update.
1184         <dwarf2_frame_state_reg_info>: Update.
1185         <alloc_regs>: Add assertion.  Update.
1186         <reg>: Now a std::vector.
1187         <num_regs>: Remove.
1188         <swap>: Update.
1189         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1190         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1191
1192 2018-10-03  Tom Tromey  <tom@tromey.com>
1193
1194         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1195
1196 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1197
1198         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1199
1200 2018-10-02  Tom Tromey  <tom@tromey.com>
1201
1202         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1203
1204 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1205
1206         * NEWS: Mention changed commands.
1207         * ser-uds.c: New file.
1208         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1209         * configure: Regenerate.
1210         * Makefile.in: Add new file.
1211         * serial.c (serial_open): Check if filename is a socket
1212           and lookup the appropriate interface accordingly.
1213
1214 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1215
1216         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1217         define.
1218         (AARCH64_EXTRA_MAGIC): Likewise.
1219         (AARCH64_FPSIMD_MAGIC): Likewise.
1220         (AARCH64_SVE_MAGIC): Likewise.
1221         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1222         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1223         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1224         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1225         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1226         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1227         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1228         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1229         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1230         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1231         (read_aarch64_ctx): Add function.
1232         (aarch64_linux_sigframe_init): Detect FP registers.
1233
1234 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1235
1236         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1237         (AARCH64_D0_REGNUM): Likewise.
1238         (AARCH64_S0_REGNUM): Likewise.
1239         (AARCH64_H0_REGNUM): Likewise.
1240         (AARCH64_B0_REGNUM): Likewise.
1241         (AARCH64_SVE_V0_REGNUM): Likewise.
1242         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1243         (AARCH64_D0_REGNUM): Likewise.
1244         (AARCH64_S0_REGNUM): Likewise.
1245         (AARCH64_H0_REGNUM): Likewise.
1246         (AARCH64_B0_REGNUM): Likewise.
1247         (AARCH64_SVE_V0_REGNUM): Likewise.
1248
1249 2018-10-01  Gary Benson <gbenson@redhat.com>
1250
1251         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1252         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1253         prfpregset_t instead of gdb_prfpregset_t.
1254         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1255         * configure, config.in: Rebuild.
1256
1257 2018-10-01  Gary Benson <gbenson@redhat.com>
1258
1259         * common/gdb_proc_service.h: New file, factored out from...
1260         * gdb_proc_service.h: Moved common code to the above file.
1261         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1262
1263 2018-10-01  Gary Benson <gbenson@redhat.com>
1264
1265         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1266         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1267
1268 2018-10-01  Gary Benson <gbenson@redhat.com>
1269
1270         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1271         (AC_CHECK_HEADERS): Check for linux/elf.h.
1272         * configure, config.in: Rebuild.
1273         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1274         doesn't define elf_fpregset_t.
1275
1276 2018-10-01  Gary Benson <gbenson@redhat.com>
1277
1278         * gdb_proc_service.h: Whitespace change.
1279
1280 2018-10-01  Tom Tromey  <tom@tromey.com>
1281
1282         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1283         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1284         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1285
1286 2018-10-01  Tom Tromey  <tom@tromey.com>
1287
1288         * README: Minor change.
1289
1290 2018-09-30  Pedro Alves  <palves@redhat.com>
1291
1292         * darwin-nat-info.c (darwin_debug_regions_recurse)
1293         (info_mach_exceptions_command): Remove unused local variables.
1294         * darwin-nat.c (darwin_decode_notify_message)
1295         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1296         (darwin_stop_inferior, darwin_setup_exceptions)
1297         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1298         (darwin_nat_target::attach, darwin_nat_target::detach)
1299         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1300         local variables.
1301         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1302         variables.
1303
1304 2018-09-29  Tom Tromey  <tom@tromey.com>
1305
1306         * README: Remove some leftover text.
1307
1308 2018-09-29  Tom Tromey  <tom@tromey.com>
1309
1310         * PROBLEMS: Rewrite.
1311         * README: Update.
1312
1313 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1314
1315         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1316         case with explicit breakpoint kind.
1317         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1318         'additional_info' and related logic.
1319         (riscv_debug_breakpoints): New variable.
1320         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1321         instruction to determine the breakpoint kind.
1322         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1323         flag.  Update description of 'set/show riscv
1324         use-compressed-breakpoints' flag.
1325
1326 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1327
1328         (NEWS): Mention changes to frame related commands.
1329         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1330         (add_prefix_cmd_suppress_notification): New function.
1331         (add_com_suppress_notification): Call
1332         add_cmd_suppress_notification.
1333         * command.h (add_cmd_suppress_notification): Declare.
1334         (add_prefix_cmd_suppress_notification): Declare.
1335         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1336         (parse_frame_specification): Moved from stack.c, with
1337         simplification to handle a single argument.
1338         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1339         switch to the selected frame.  Add a header comment.
1340         * stack.c: Remove 'safe-ctype.h' include.
1341         (find_frame_for_function): Add declaration.
1342         (find_frame_for_address): New function.
1343         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1344         (frame_selection_by_function_completer): New function.
1345         (info_frame_command): Rename to...
1346         (info_frame_command_core): ...this, and update parameter types.
1347         (select_frame_command): Rename to...
1348         (select_frame_command_core): ...this, and update parameter types.
1349         (frame_command): Rename to...
1350         (frame_command_core): ...this, and update parameter types.
1351         (class frame_command_helper): New class to wrap implementations of
1352         frame related sub-commands.
1353         (frame_apply_cmd_list): New static global.
1354         (frame_cmd_list): Make static.
1355         (select_frame_cmd_list): New global for sub-commands.
1356         (info_frame_cmd_list): New global for sub-commands.
1357         (_initialize_stack): Register sub-commands for 'frame',
1358         'select-frame', and 'info frame'.  Update 'frame apply' commands
1359         to use frame_apply_cmd_list.  Move function local static
1360         frame_apply_list to file static frame_apply_cmd_list for
1361         consistency.
1362         * stack.h (select_frame_command): Delete declarationn.
1363         (select_frame_for_mi): Declare new function.
1364
1365 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1366
1367         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1368         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1369         and NOP.
1370
1371 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1372
1373         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1374
1375 2018-09-26  Tom Tromey  <tom@tromey.com>
1376
1377         * valops.c (auto_abandon): Remove dead code.
1378
1379 2018-09-26  Tom Tromey  <tom@tromey.com>
1380
1381         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1382
1383 2018-09-24  Tom Tromey  <tom@tromey.com>
1384
1385         * common/pathstuff.c (get_standard_cache_dir): Make
1386         "xdg_cache_home" and "home" const.
1387         * top.c (init_history): Make "tmpenv" const.
1388         * main.c (get_init_files): Make "homedir" const.
1389
1390 2018-09-23  Tom Tromey  <tom@tromey.com>
1391
1392         PR python/18852:
1393         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1394
1395 2018-09-23  Tom Tromey  <tom@tromey.com>
1396
1397         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1398         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1399         * python/python-internal.h (gdbpy_handle_exception): Declare.
1400         * python/py-utils.c (gdbpy_handle_exception): New function.
1401
1402 2018-09-23  Tom Tromey  <tom@tromey.com>
1403
1404         PR python/17284:
1405         * python/py-type.c (typy_template_argument): Check for negative
1406         argument number.
1407
1408 2018-09-23  Tom Tromey  <tom@tromey.com>
1409
1410         PR python/14062:
1411         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1412
1413 2018-09-23  Tom Tromey  <tom@tromey.com>
1414
1415         PR python/18170:
1416         * python/py-value.c (valpy_int): Allow conversion from pointer
1417         type.
1418
1419 2018-09-23  Tom Tromey  <tom@tromey.com>
1420
1421         PR python/20126:
1422         * python/py-value.c (valpy_int): Respect type sign.
1423
1424 2018-09-23  Tom Tromey  <tom@tromey.com>
1425
1426         PR python/18352;
1427         * python/py-value.c (valpy_float): Allow conversions from int or
1428         char.
1429         (valpy_int, valpy_long): Allow conversions from float.
1430
1431 2018-09-23  Tom Tromey  <tom@tromey.com>
1432
1433         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1434         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1435
1436 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1437
1438         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1439         __sighndlr.
1440         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1441
1442 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1443
1444         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1445         target_terminal::ours().
1446
1447 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1448
1449         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1450         of vl to ULONGEST.
1451
1452 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1453
1454         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1455         redundant condition.
1456
1457 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1458
1459         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1460
1461         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1462         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1463         * sol-thread.c (ps_pdmodel): Don't guard definition.
1464
1465         * procfs.c: Fix formatting.
1466
1467         * procfs.c (sysset_t_alloc): Remove.
1468         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1469         (procfs_debug_inferior): Likewise.
1470         (procfs_set_exec_trap): Likewise.
1471         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1472         (proc_set_traced_sysexit): Likewise.
1473
1474         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1475         (dead_procinfo): Likewise.
1476         (proc_warn): Likewise.
1477         (proc_error): Likewise.
1478         (proc_get_LDT_entry): Likewise.
1479         (do_attach): Likewise.
1480         (procfs_target::pid_to_str): Likewise.
1481         (iterate_over_mappings): Likewise.
1482
1483         * procfs.c (create_procinfo): Fix ARI warning.
1484         (proc_get_status): Likewise.
1485         (proc_stop_process): Likewise.
1486         (proc_run_process): Likewise.
1487         (proc_kill): Likewise.
1488         (proc_get_LDT_entry): Likewise.
1489         (procfs_find_LDT_entry): Likewise.
1490         (proc_update_threads): Likewise.
1491         (proc_iterate_over_threads): Likewise.
1492         (do_attach): Likewise.
1493         (procfs_xfer_memory): Likewise.
1494         (invalidate_cache): Likewise.
1495         (procfs_target::resume): Likewise.
1496         (procfs_init_inferior): Likewise.
1497         (procfs_set_exec_trap): Likewise.
1498         (procfs_target::thread_alive): Likewise.
1499         (procfs_target::pid_to_exec_file): Likewise.
1500         (iterate_over_mappings): Likewise.
1501         (procfs_target::make_corefile_notes): Likewise.
1502         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1503
1504         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1505         (procfs_find_LDT_entry): Likewise.
1506         * sol-thread.c (ps_lgetLDT): Likewise.
1507
1508 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1509
1510         PR tdep/17903
1511         * procfs.c (procfs_target): Declare pid_to_exec_file.
1512         (procfs_target::pid_to_exec_file): New.
1513
1514 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1515
1516         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1517         renaming.
1518         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1519         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1520
1521 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1522
1523         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1524         (supply_fpregset, fill_fpregset): Move ...
1525         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1526         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1527         Remove references to ioctl-based procfs.
1528         Include <sys/reg.h>.
1529         Remove PR_MODEL_NATIVE guards.
1530         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1531         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1532
1533 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1534
1535         PR gdb/20981:
1536         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1537         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1538         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1539
1540 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1541
1542         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1543         (fbsd_print_sockaddr_in6): Likewise.
1544
1545 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1546             Chris January  <chris.january@arm.com>
1547
1548         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1549         (evaluate_subexp_standard): Return a dummy type when
1550         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1551         OP_F77_UNDETERMINED_ARGLIST case.
1552         * expression.h (enum noside): Update comment.
1553
1554 2018-09-19  George Vasick <george.vasick@oracle.com>
1555
1556         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1557
1558 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1559             April Chin <april.chin@oracle.com>
1560             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1561
1562         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1563         uint_t lwpid_t.
1564         (create_procinfo): Print pids in /proc without leading zeros.
1565
1566 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1567
1568         * nios2-tdep.c (nios2_gcc_target_options): New.
1569         (nios2_gdb_arch_init): Install new hook.
1570
1571 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1572
1573         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1574         New file.
1575         * update-gnulib.sh: Apply patch.
1576         * configure: Re-generate.
1577
1578 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1579
1580         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1581         description.  Make "info proc" command descriptions more
1582         consistent.
1583
1584 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1585
1586         * NEWS: Mention 'info proc files' command.
1587
1588 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1589
1590         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1591         descriptors for IP_FILES and IP_ALL.
1592
1593 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1594
1595         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1596         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1597         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1598         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1599         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1600         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1601         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1602         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1603         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1604         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1605         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1606         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1607         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1608         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1609         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1610         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1611         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1612         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1613         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1614         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1615         (struct fbsd_sockaddr_un): New types.
1616         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1617         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1618         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1619         (fbsd_core_info_proc_files): New functions.
1620         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1621         IP_ALL.
1622         * fbsd-tdep.h (fbsd_info_proc_files_header)
1623         (fbsd_info_proc_files_entry): New.
1624
1625 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1626
1627         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1628         * infcmd.c (info_proc_cmd_files): New function.
1629         (_initialize_infcmd): Register 'info proc files' command.
1630
1631 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1632
1633         * gnulib/aclocal-m4-deps.mk: Re-generate.
1634         * gnulib/aclocal.m4: Re-generate.
1635         * gnulib/config.in: Re-generate.
1636         * gnulib/configure: Re-generate.
1637         * gnulib/import/Makefile.am: Re-generate.
1638         * gnulib/import/Makefile.in: Re-generate.
1639         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1640         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1641         * gnulib/import/arpa_inet.in.h: New file.
1642         * gnulib/import/inet_ntop.c: New file.
1643         * gnulib/import/m4/arpa_inet_h.m4: New file.
1644         * gnulib/import/m4/inet_ntop.m4: New file.
1645         * gnulib/import/m4/netinet_in_h.m4: New file.
1646         * gnulib/import/m4/socklen.m4: New file.
1647         * gnulib/import/m4/sockpfaf.m4: New file.
1648         * gnulib/import/m4/stdalign.m4: New file.
1649         * gnulib/import/m4/sys_uio_h.m4: New file.
1650         * gnulib/import/netinet_in.in.h: New file.
1651         * gnulib/import/stdalign.in.h: New file.
1652         * gnulib/import/sys_socket.c: New file.
1653         * gnulib/import/sys_socket.in.h: New file.
1654         * gnulib/import/sys_uio.in.h: New file.
1655         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1656         module.
1657
1658 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1659
1660         * gnulib/aclocal-m4-deps.mk: New file.
1661         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1662         deterministically.
1663
1664 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1665
1666         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1667         KVE_PATH.
1668
1669 2018-09-18  Tom Tromey  <tom@tromey.com>
1670
1671         * compile/compile-object-load.c (struct
1672         link_hash_table_cleanup_data): Add constructor and destructor.
1673         Use DISABLE_COPY_AND_ASSIGN.
1674         (~link_hash_table_cleanup_data): Rename from
1675         link_hash_table_free.  Now a destructor.
1676         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1677
1678 2018-09-18  Tom Tromey  <tom@tromey.com>
1679
1680         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1681         * compile/compile-object-load.c (struct munmap_list): Move to
1682         header file.
1683         (munmap_list::add): Rename from munmap_list_add; rewrite.
1684         (munmap_list::~munmap_list): Rename from munmap_list_free.
1685         (munmap_listp_free_cleanup): Remove.
1686         (compile_object_load): Update.
1687         * compile/compile-object-load.h (struct munmap_list): Move from
1688         compile-object-load.c.  Rewrite.
1689
1690 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1691
1692         * aarch64-tdep.c (pass_in_v): Use register size.
1693         (aarch64_extract_return_value): Likewise.
1694         (aarch64_store_return_value): Likewise.
1695
1696 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1697
1698         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1699         rlim_t.
1700
1701 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1702
1703         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1704         Fix short help line.
1705
1706 2018-09-17  Tom Tromey  <tom@tromey.com>
1707
1708         PR python/20445:
1709         * configure: Rebuild.
1710         * configure.ac: Conditionally use -DNDEBUG for Python.
1711
1712 2018-09-17  Tom Tromey  <tom@tromey.com>
1713
1714         * configure: Rebuild.
1715         * configure.ac: Use gmp as a library dependency when checking for
1716         mpfr.
1717
1718 2018-09-17  Pedro Alves  <palves@redhat.com>
1719
1720         * python/py-inferior.c (find_inferior_object): Delete.
1721
1722 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1723
1724         * compile/compile-cplus-types.c
1725         (compile_cplus_instance::enter_scope): Don't use new_scope after
1726         std::move.
1727
1728 2018-09-17  Tom Tromey  <tom@tromey.com>
1729
1730         * common/pathstuff.c (get_standard_cache_dir): Use
1731         ~/Library/Caches on macOS.
1732         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1733
1734 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1735
1736         PR python/23669
1737         * breakpoint.c (commands_cmd_element): New.
1738         (_initialize_breakpoint): Assign commands_cmd_element.
1739         * breakpoint.h (commands_cmd_element): New.
1740         * cli/cli-script.c (while_cmd_element, if_command,
1741         define_cmd_element): New.
1742         (command_name_equals): Remove.
1743         (process_next_line): Compare commands by pointer, not by name.
1744         (_initialize_cli_script): Assign the various cmd_list_element
1745         variables.
1746         * compile/compile.c (compile_cmd_element): New.
1747         (_initialize_compile): Assign compile_cmd_element.
1748         * compile/compile.h (compile_cmd_element): New.
1749         * guile/guile.c (guile_cmd_element): New.
1750         (install_gdb_commands): Assign guile_cmd_element.
1751         * guile/guile.h (guile_cmd_element): New.
1752         * python/python.c (python_cmd_element): New.
1753         (_initialize_python): Assign python_cmd_element.
1754         * python/python.h (python_cmd_element): New.
1755         * tracepoint.c (while_stepping_cmd_element): New.
1756         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1757         * tracepoint.h (while_stepping_cmd_element): New.
1758
1759 2018-09-17  Tom Tromey  <tom@tromey.com>
1760
1761         * infrun.c (save_infcall_suspend_state): Return
1762         infcall_suspend_state_up.
1763         (save_infcall_control_state): Return infcall_control_state_up.
1764         * inferior.h (save_infcall_suspend_state)
1765         (save_infcall_control_state): Declare later.  Return unique
1766         pointers.
1767
1768 2018-09-17  Tom Tromey  <tom@tromey.com>
1769
1770         * infrun.c (struct stop_context): Declare constructor,
1771         destructor, "changed" method.
1772         (stop_context::stop_context): Rename from save_stop_context.
1773         (stop_context::~stop_context): Rename from
1774         release_stop_context_cleanup.
1775         (normal_stop): Update.
1776         (stop_context::changed): Rename from stop_context_changed.  Return
1777         bool.
1778
1779 2018-09-17  Tom Tromey  <tom@tromey.com>
1780
1781         * inferior.h (struct infcall_suspend_state_deleter): New.
1782         (infcall_suspend_state_up): New typedef.
1783         (struct infcall_control_state_deleter): New.
1784         (infcall_control_state_up): New typedef.
1785         (make_cleanup_restore_infcall_suspend_state)
1786         (make_cleanup_restore_infcall_control_state): Don't declare.
1787         * infcall.c (call_function_by_hand_dummy): Update.
1788         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1789         (make_cleanup_restore_infcall_suspend_state): Remove.
1790         (do_restore_infcall_control_state_cleanup)
1791         (make_cleanup_restore_infcall_control_state): Remove.
1792
1793 2018-09-17  Tom Tromey  <tom@tromey.com>
1794
1795         * gdbthread.h (struct thread_control_state): Add initializer.
1796         (class thread_info) <control>: Remove initializer.
1797         * inferior.h (struct inferior_control_state): Add initializer.
1798         (class inferior) <control>: Remove initializer.
1799         (exit_inferior_1): Update.
1800         * infrun.c (struct infcall_control_state): Add constructors.
1801         (save_infcall_control_state): Use new.
1802         (restore_infcall_control_state, discard_infcall_control_state):
1803         Use delete.
1804
1805 2018-09-17  Tom Tromey  <tom@tromey.com>
1806
1807         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1808         unique_ptr.
1809         <siginfo_data>: Now a unique_xmalloc_ptr.
1810         (save_infcall_suspend_state, restore_infcall_suspend_state)
1811         (discard_infcall_suspend_state)
1812         (get_infcall_suspend_state_regcache): Update.
1813
1814 2018-09-17  Tom Tromey  <tom@tromey.com>
1815
1816         * gdbthread.h (struct thread_suspend_state): Add initializers.
1817         (class thread_info) <suspend>: Remove initializer.
1818         * infrun.c (struct infcall_suspend_state): Add initializers.
1819         (save_infcall_suspend_state): Use new.
1820         (discard_infcall_suspend_state): Use delete.
1821
1822 2018-09-16  Tom Tromey  <tom@tromey.com>
1823
1824         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1825         Remove.
1826         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1827         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1828         (py_varobj_iter_new): Likewise.
1829         (py_varobj_get_iterator): Use gdbpy_ref.
1830
1831 2018-09-16  Tom Tromey  <tom@tromey.com>
1832
1833         * python/py-threadevent.c (py_get_event_thread): Simplify.
1834         * python/py-inferior.c (infpy_thread_from_thread_handle):
1835         Return immediately after calling thread_to_thread_object.  Use
1836         Py_RETURN_NONE.
1837         (thread_to_thread_object): Set the exception on a NULL return.
1838
1839 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1840
1841         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1842
1843 2018-09-16  Tom Tromey  <tom@tromey.com>
1844
1845         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1846         Remove.
1847
1848 2018-09-16  Tom Tromey  <tom@tromey.com>
1849
1850         * python/python-internal.h (thread_to_thread_object): Change
1851         return type.
1852         * python/py-inferior.c (thread_to_thread_object): Return a new
1853         reference.
1854         (infpy_thread_from_thread_handle): Update.
1855         * python/py-infthread.c (gdbpy_selected_thread): Update.
1856         * python/py-stopevent.c (create_stop_event_object): Update.
1857         * python/py-threadevent.c (py_get_event_thread): Return a new
1858         reference.
1859         (py_get_event_thread): Update.
1860         * python/py-event.h (py_get_event_thread): Change return type.
1861         * python/py-continueevent.c (create_continue_event_object):
1862         Update.
1863
1864 2018-09-16  Tom Tromey  <tom@tromey.com>
1865
1866         * python/py-progspace.c (pspy_get_objfiles): Update.
1867         * python/python-internal.h (objfile_to_objfile_object): Change
1868         return type.
1869         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1870         Update.
1871         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1872         Update.
1873         * python/python.c (gdbpy_get_current_objfile): Update.
1874         (gdbpy_objfiles): Update.
1875         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1876         Update.
1877         (objfile_to_objfile_object): Return a new reference.
1878         * python/py-symtab.c (stpy_get_objfile): Update.
1879         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1880         Update.
1881
1882 2018-09-16  Tom Tromey  <tom@tromey.com>
1883
1884         * python/py-inferior.c (infpy_get_progspace): Update.
1885         * python/python-internal.h (pspace_to_pspace_object): Change
1886         return type.
1887         * python/py-newobjfileevent.c
1888         (create_clear_objfiles_event_object): Update.
1889         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1890         Update.
1891         * python/python.c (gdbpy_get_current_progspace): Update.
1892         (gdbpy_progspaces): Update.
1893         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1894         reference.
1895         * python/py-objfile.c (objfpy_get_progspace): Update.
1896         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1897         Update.
1898
1899 2018-09-16  Tom Tromey  <tom@tromey.com>
1900
1901         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1902         (solib_name, block_for_pc, find_pc_line): New functions.
1903         (execute_unwinders): Update.
1904         * python/py-block.c (gdbpy_block_for_pc): Remove.
1905         * python/py-inferior.c (infpy_get_progspace): New function.
1906         (inferior_object_getset) <progspace>: Add.
1907         * python/py-progspace.c (pspy_objfiles): Rewrite.
1908         (pspy_solib_name, pspy_block_for_pc)
1909         (pspy_find_pc_line, pspy_is_valid): New functions.
1910         (progspace_object_methods): Add entries for solib_name,
1911         block_for_pc, find_pc_line, is_valid.
1912         * python/python-internal.h (gdbpy_block_for_pc)
1913         (build_objfiles_list): Don't declare.
1914         * python/python.c: Don't include solib.h.
1915         (gdbpy_solib_name, gdbpy_find_pc_line)
1916         (gdbpy_get_current_progspace, build_objfiles_list)
1917         (gdbpy_objfiles): Remove.
1918         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1919         solib_name, find_pc_line>: Remove entries.
1920
1921 2018-09-16  Tom Tromey  <tom@tromey.com>
1922
1923         * top.c (new_ui_command): Use GNU style for metasyntactic
1924         variables.
1925         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1926         variables.
1927         * maint.c (maintenance_translate_address): Remove "<>" around
1928         text.
1929         * interps.c (interpreter_exec_cmd): Use GNU style for
1930         metasyntactic variables.
1931         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1932         metasyntactic variables.
1933         * tracepoint.c (tfind_range_command): Use GNU style for
1934         metasyntactic variables.
1935         (tfind_outside_command): Likewise.
1936         (_initialize_tracepoint): Likewise.
1937         * remote.c (extended_remote_target::create_inferior): Use GNU
1938         style for metasyntactic variables.
1939         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1940         metasyntactic variables.
1941         (adi_assign_command): Likewise.
1942
1943 2018-09-16  Tom Tromey  <tom@tromey.com>
1944
1945         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1946         metasyntactic variables.  Print message if no disassembler options
1947         are available.
1948
1949 2018-09-15  Tom Tromey  <tom@tromey.com>
1950
1951         * infcmd.c (get_inferior_args): Return const char *.
1952         * inferior.h (get_inferior_args): Return type now const.
1953         * linux-tdep.c (linux_fill_prpsinfo): Update.
1954         * procfs.c (procfs_target::make_corefile_notes): Update.
1955
1956 2018-09-07  Tom Tromey  <tom@tromey.com>
1957
1958         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1959         inside the TRY.
1960
1961 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1962
1963         * nios2-tdep.c (nios2_type_align): New.
1964         (nios2_gdb_arch_init): Install type_align hook.
1965
1966 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1967
1968         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1969         type that is neither object file owned, nor gdbarch owned.
1970         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1971         gdbarch is non-NULL.
1972         (alloc_type_instance): Allocate non-objfile owned types on the
1973         gdbarch obstack.
1974         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1975         using TYPE_ALLOC to ensure memory is allocated on the correct
1976         obstack.
1977         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1978         obstack, or the gdbarch obstack.
1979         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1980
1981 2018-09-14  Tom Tromey  <tom@tromey.com>
1982
1983         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1984         block.
1985
1986 2018-09-14  Tom Tromey  <tom@tromey.com>
1987
1988         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1989
1990 2018-09-13  Tom Tromey  <tom@tromey.com>
1991
1992         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1993         static.
1994
1995 2018-09-13  Tom Tromey  <tom@tromey.com>
1996
1997         * exec.c (try_open_exec_file): Use std::string.
1998
1999 2018-09-13  Tom Tromey  <tom@tromey.com>
2000
2001         * utils.h (gdb_bfd_errmsg): Return std::string.
2002         * exec.c (exec_file_attach): Update.
2003         * compile/compile-object-load.c (compile_object_load): Update.
2004         * utils.c (gdb_bfd_errmsg): Return std::string.
2005
2006 2018-09-13  Tom Tromey  <tom@tromey.com>
2007
2008         * procfs.c (struct procinfo_deleter): New.
2009         (procinfo_up): New typedef.
2010         (do_destroy_procinfo_cleanup): Remove.
2011         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2012
2013 2018-09-13  Tom Tromey  <tom@tromey.com>
2014
2015         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2016
2017 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2018 2018-09-13  Tom Tromey  <tom@tromey.com>
2019
2020         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2021         (pspy_get_objfiles): New function.
2022         (progspace_object_methods): New.
2023         (pspace_object_type): Add tp_methods callback.
2024         * python/python-internal.h (build_objfiles_list): New
2025         declaration.
2026         * python/python.c (build_objfiles_list): New function.
2027         (gdbpy_objfiles): Implement using build_objfiles_list.
2028         * NEWS: Mention the Progspace.objfiles method.
2029
2030 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2031
2032         * python/py-inferior.c (infpy_get_progspace): New function.
2033         (inferior_object_getset): Add progspace property.
2034         * NEWS: Mention the new property.
2035
2036 2018-09-13  Tom Tromey  <tom@tromey.com>
2037
2038         PR rust/23650:
2039         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2040
2041 2018-09-13  Tom Tromey  <tom@tromey.com>
2042
2043         PR rust/23626:
2044         * rust-lang.c (rust_enum_variant): Now static.
2045         (rust_empty_enum_p): New function.
2046         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2047         Handle empty enum.
2048
2049 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2050
2051         * python/py-inferior.c (infpy_repr): New.
2052         (inferior_object_type): Register infpy_repr.
2053         * python/py-objfile.c (objfpy_repr): New.
2054         (objfile_object_type): Register objfpy_repr.
2055
2056 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2057
2058         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2059
2060 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2061
2062         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2063         typo.
2064
2065 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2066
2067         * common/common-utils.c: Don't include '<sys/stat.h>'.
2068         (is_regular_file): Move to...
2069         * common/filestuff.c (is_regular_file): ... here.
2070         * common/common-utils.h (is_regular_file): Move to...
2071         * common/filestuff.h (is_regular_file): ... here.
2072
2073 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2074
2075         * skip.c (debug_skip): New variable.
2076         (skiplist_entry::do_skip_file_p): Add debug output.
2077         (skiplist_entry::do_skip_gfile_p): Likewise.
2078         (skiplist_entry::skip_function_p): Likewise.
2079         (_initialize_step_skip): Create debug command.
2080         * NEWS: Mention set/show debug skip.
2081
2082 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2083
2084         * darwin-nat.c (should_disable_startup_with_shell):
2085         New function.
2086         (darwin_nat_target::create_inferior): Add call.
2087
2088 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2089
2090         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2091         inf_port, msg_state>: Initialize.
2092         (struct darwin_thread_info) <signaled, single_step>: Change
2093         type and initialize.
2094         (struct darwin_thread_info) <event>: Initialize.
2095
2096 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2097
2098         PR gdb/23555
2099         PR gdb/23558
2100         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2101         guesses.
2102
2103 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2104
2105         Revert:
2106         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2107
2108         PR gdb/23555
2109         PR gdb/23558
2110         * gnulib/aclocal.m4: Regenerate.
2111         * gnulib/config.in: Regenerate.
2112         * gnulib/configure: Regenerate.
2113         * gnulib/import/Makefile.am: Update.
2114         * gnulib/import/Makefile.in: Update.
2115         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2116         * gnulib/import/_Noreturn.h: ... this.
2117         * gnulib/import/alloca.in.h: Update.
2118         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2119         * gnulib/import/arg-nonnull.h: ... this.
2120         * gnulib/import/assure.h: Update.
2121         * gnulib/import/at-func.c: Update.
2122         * gnulib/import/basename-lgpl.c: Update.
2123         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2124         * gnulib/import/c++defs.h: ... this.
2125         * gnulib/import/canonicalize-lgpl.c: Update.
2126         * gnulib/import/cdefs.h: Update.
2127         * gnulib/import/chdir-long.c: Update.
2128         * gnulib/import/chdir-long.h: Update.
2129         * gnulib/import/cloexec.c: Update.
2130         * gnulib/import/cloexec.h: Update.
2131         * gnulib/import/close.c: Update.
2132         * gnulib/import/closedir.c: Update.
2133         * gnulib/import/config.charset: Update.
2134         * gnulib/import/dirent-private.h: Update.
2135         * gnulib/import/dirent.in.h: Update.
2136         * gnulib/import/dirfd.c: Update.
2137         * gnulib/import/dirname-lgpl.c: Update.
2138         * gnulib/import/dirname.h: Update.
2139         * gnulib/import/dosname.h: Update.
2140         * gnulib/import/dup-safer-flag.c: Update.
2141         * gnulib/import/dup-safer.c: Update.
2142         * gnulib/import/dup.c: Update.
2143         * gnulib/import/dup2.c: Update.
2144         * gnulib/import/errno.in.h: Update.
2145         * gnulib/import/error.c: Update.
2146         * gnulib/import/error.h: Update.
2147         * gnulib/import/exitfail.c: Update.
2148         * gnulib/import/exitfail.h: Update.
2149         * gnulib/import/extra/update-copyright: Update.
2150         * gnulib/import/fchdir.c: Update.
2151         * gnulib/import/fcntl.c: Update.
2152         * gnulib/import/fcntl.in.h: Update.
2153         * gnulib/import/fd-hook.c: Update.
2154         * gnulib/import/fd-hook.h: Update.
2155         * gnulib/import/fd-safer-flag.c: Update.
2156         * gnulib/import/fd-safer.c: Update.
2157         * gnulib/import/fdopendir.c: Update.
2158         * gnulib/import/filename.h: Update.
2159         * gnulib/import/filenamecat-lgpl.c: Update.
2160         * gnulib/import/filenamecat.h: Update.
2161         * gnulib/import/flexmember.h: Update.
2162         * gnulib/import/float+.h: Update.
2163         * gnulib/import/float.c: Update.
2164         * gnulib/import/float.in.h: Update.
2165         * gnulib/import/fnmatch.c: Update.
2166         * gnulib/import/fnmatch.in.h: Update.
2167         * gnulib/import/fnmatch_loop.c: Update.
2168         * gnulib/import/fpucw.h: Update.
2169         * gnulib/import/frexp.c: Update.
2170         * gnulib/import/frexpl.c: Update.
2171         * gnulib/import/fstat.c: Update.
2172         * gnulib/import/fstatat.c: Update.
2173         * gnulib/import/getcwd-lgpl.c: Update.
2174         * gnulib/import/getcwd.c: Update.
2175         * gnulib/import/getdtablesize.c: Update.
2176         * gnulib/import/getlogin_r.c: Update.
2177         * gnulib/import/getprogname.c: Update.
2178         * gnulib/import/getprogname.h: Update.
2179         * gnulib/import/gettext.h: Update.
2180         * gnulib/import/gettimeofday.c: Update.
2181         * gnulib/import/glob-libc.h: Update.
2182         * gnulib/import/glob.c: Update.
2183         * gnulib/import/glob.in.h: Update.
2184         * gnulib/import/glob_internal.h: Update.
2185         * gnulib/import/glob_pattern_p.c: Update.
2186         * gnulib/import/globfree.c: Update.
2187         * gnulib/import/hard-locale.c: Update.
2188         * gnulib/import/hard-locale.h: Update.
2189         * gnulib/import/intprops.h: Update.
2190         * gnulib/import/inttypes.in.h: Update.
2191         * gnulib/import/isnan.c: Update.
2192         * gnulib/import/isnand-nolibm.h: Update.
2193         * gnulib/import/isnand.c: Update.
2194         * gnulib/import/isnanl-nolibm.h: Update.
2195         * gnulib/import/isnanl.c: Update.
2196         * gnulib/import/itold.c: Update.
2197         * gnulib/import/libc-config.h: Update.
2198         * gnulib/import/limits.in.h: Update.
2199         * gnulib/import/localcharset.c: Update.
2200         * gnulib/import/localcharset.h: Update.
2201         * gnulib/import/localtime-buffer.c: Update.
2202         * gnulib/import/localtime-buffer.h: Update.
2203         * gnulib/import/lstat.c: Update.
2204         * gnulib/import/m4/00gnulib.m4: Update.
2205         * gnulib/import/m4/__inline.m4: Update.
2206         * gnulib/import/m4/absolute-header.m4: Update.
2207         * gnulib/import/m4/alloca.m4: Update.
2208         * gnulib/import/m4/builtin-expect.m4: Update.
2209         * gnulib/import/m4/canonicalize.m4: Update.
2210         * gnulib/import/m4/chdir-long.m4: Update.
2211         * gnulib/import/m4/close.m4: Update.
2212         * gnulib/import/m4/closedir.m4: Update.
2213         * gnulib/import/m4/configmake.m4: Update.
2214         * gnulib/import/m4/d-ino.m4: Update.
2215         * gnulib/import/m4/d-type.m4: Update.
2216         * gnulib/import/m4/dirent_h.m4: Update.
2217         * gnulib/import/m4/dirfd.m4: Update.
2218         * gnulib/import/m4/dirname.m4: Update.
2219         * gnulib/import/m4/double-slash-root.m4: Update.
2220         * gnulib/import/m4/dup.m4: Update.
2221         * gnulib/import/m4/dup2.m4: Update.
2222         * gnulib/import/m4/eealloc.m4: Update.
2223         * gnulib/import/m4/environ.m4: Update.
2224         * gnulib/import/m4/errno_h.m4: Update.
2225         * gnulib/import/m4/error.m4: Update.
2226         * gnulib/import/m4/exponentd.m4: Update.
2227         * gnulib/import/m4/exponentl.m4: Update.
2228         * gnulib/import/m4/extensions.m4: Update.
2229         * gnulib/import/m4/extern-inline.m4: Update.
2230         * gnulib/import/m4/fchdir.m4: Update.
2231         * gnulib/import/m4/fcntl-o.m4: Update.
2232         * gnulib/import/m4/fcntl.m4: Update.
2233         * gnulib/import/m4/fcntl_h.m4: Update.
2234         * gnulib/import/m4/fdopendir.m4: Update.
2235         * gnulib/import/m4/filenamecat.m4: Update.
2236         * gnulib/import/m4/flexmember.m4: Update.
2237         * gnulib/import/m4/float_h.m4: Update.
2238         * gnulib/import/m4/fnmatch.m4: Update.
2239         * gnulib/import/m4/fnmatch_h.m4: Update.
2240         * gnulib/import/m4/fpieee.m4: Update.
2241         * gnulib/import/m4/frexp.m4: Update.
2242         * gnulib/import/m4/frexpl.m4: Update.
2243         * gnulib/import/m4/fstat.m4: Update.
2244         * gnulib/import/m4/fstatat.m4: Update.
2245         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2246         * gnulib/import/m4/getcwd-path-max.m4: Update.
2247         * gnulib/import/m4/getcwd.m4: Update.
2248         * gnulib/import/m4/getdtablesize.m4: Update.
2249         * gnulib/import/m4/getlogin.m4: Update.
2250         * gnulib/import/m4/getlogin_r.m4: Update.
2251         * gnulib/import/m4/getpagesize.m4: Update.
2252         * gnulib/import/m4/getprogname.m4: Update.
2253         * gnulib/import/m4/gettimeofday.m4: Update.
2254         * gnulib/import/m4/glibc21.m4: Update.
2255         * gnulib/import/m4/glob.m4: Update.
2256         * gnulib/import/m4/glob_h.m4: Update.
2257         * gnulib/import/m4/gnulib-cache.m4: Update.
2258         * gnulib/import/m4/gnulib-common.m4: Update.
2259         * gnulib/import/m4/gnulib-comp.m4: Update.
2260         * gnulib/import/m4/gnulib-tool.m4: Update.
2261         * gnulib/import/m4/hard-locale.m4: Update.
2262         * gnulib/import/m4/include_next.m4: Update.
2263         * gnulib/import/m4/inttypes-pri.m4: Update.
2264         * gnulib/import/m4/inttypes.m4: Update.
2265         * gnulib/import/m4/isnand.m4: Update.
2266         * gnulib/import/m4/isnanl.m4: Update.
2267         * gnulib/import/m4/largefile.m4: Update.
2268         * gnulib/import/m4/limits-h.m4: Update.
2269         * gnulib/import/m4/localcharset.m4: Update.
2270         * gnulib/import/m4/locale-fr.m4: Update.
2271         * gnulib/import/m4/locale-ja.m4: Update.
2272         * gnulib/import/m4/locale-zh.m4: Update.
2273         * gnulib/import/m4/localtime-buffer.m4: Update.
2274         * gnulib/import/m4/longlong.m4: Update.
2275         * gnulib/import/m4/lstat.m4: Update.
2276         * gnulib/import/m4/malloc.m4: Update.
2277         * gnulib/import/m4/malloca.m4: Update.
2278         * gnulib/import/m4/math_h.m4: Update.
2279         * gnulib/import/m4/mbrtowc.m4: Update.
2280         * gnulib/import/m4/mbsinit.m4: Update.
2281         * gnulib/import/m4/mbsrtowcs.m4: Update.
2282         * gnulib/import/m4/mbstate_t.m4: Update.
2283         * gnulib/import/m4/memchr.m4: Update.
2284         * gnulib/import/m4/memmem.m4: Update.
2285         * gnulib/import/m4/mempcpy.m4: Update.
2286         * gnulib/import/m4/memrchr.m4: Update.
2287         * gnulib/import/m4/mkdir.m4: Update.
2288         * gnulib/import/m4/mkstemp.m4: Update.
2289         * gnulib/import/m4/mmap-anon.m4: Update.
2290         * gnulib/import/m4/mode_t.m4: Update.
2291         * gnulib/import/m4/msvc-inval.m4: Update.
2292         * gnulib/import/m4/msvc-nothrow.m4: Update.
2293         * gnulib/import/m4/multiarch.m4: Update.
2294         * gnulib/import/m4/nocrash.m4: Update.
2295         * gnulib/import/m4/off_t.m4: Update.
2296         * gnulib/import/m4/onceonly.m4: Update.
2297         * gnulib/import/m4/open-cloexec.m4: Update.
2298         * gnulib/import/m4/open.m4: Update.
2299         * gnulib/import/m4/openat.m4: Update.
2300         * gnulib/import/m4/opendir.m4: Update.
2301         * gnulib/import/m4/pathmax.m4: Update.
2302         * gnulib/import/m4/rawmemchr.m4: Update.
2303         * gnulib/import/m4/readdir.m4: Update.
2304         * gnulib/import/m4/readlink.m4: Update.
2305         * gnulib/import/m4/realloc.m4: Update.
2306         * gnulib/import/m4/rename.m4: Update.
2307         * gnulib/import/m4/rewinddir.m4: Update.
2308         * gnulib/import/m4/rmdir.m4: Update.
2309         * gnulib/import/m4/save-cwd.m4: Update.
2310         * gnulib/import/m4/secure_getenv.m4: Update.
2311         * gnulib/import/m4/setenv.m4: Update.
2312         * gnulib/import/m4/signal_h.m4: Update.
2313         * gnulib/import/m4/ssize_t.m4: Update.
2314         * gnulib/import/m4/stat-time.m4: Update.
2315         * gnulib/import/m4/stat.m4: Update.
2316         * gnulib/import/m4/std-gnu11.m4: Update.
2317         * gnulib/import/m4/stdbool.m4: Update.
2318         * gnulib/import/m4/stddef_h.m4: Update.
2319         * gnulib/import/m4/stdint.m4: Update.
2320         * gnulib/import/m4/stdio_h.m4: Update.
2321         * gnulib/import/m4/stdlib_h.m4: Update.
2322         * gnulib/import/m4/strchrnul.m4: Update.
2323         * gnulib/import/m4/strdup.m4: Update.
2324         * gnulib/import/m4/strerror.m4: Update.
2325         * gnulib/import/m4/string_h.m4: Update.
2326         * gnulib/import/m4/strstr.m4: Update.
2327         * gnulib/import/m4/strtok_r.m4: Update.
2328         * gnulib/import/m4/sys_socket_h.m4: Update.
2329         * gnulib/import/m4/sys_stat_h.m4: Update.
2330         * gnulib/import/m4/sys_time_h.m4: Update.
2331         * gnulib/import/m4/sys_types_h.m4: Update.
2332         * gnulib/import/m4/tempname.m4: Update.
2333         * gnulib/import/m4/time_h.m4: Update.
2334         * gnulib/import/m4/unistd-safer.m4: Update.
2335         * gnulib/import/m4/unistd_h.m4: Update.
2336         * gnulib/import/m4/warn-on-use.m4: Update.
2337         * gnulib/import/m4/wchar_h.m4: Update.
2338         * gnulib/import/m4/wchar_t.m4: Update.
2339         * gnulib/import/m4/wctype_h.m4: Update.
2340         * gnulib/import/m4/wint_t.m4: Update.
2341         * gnulib/import/malloc.c: Update.
2342         * gnulib/import/malloc/scratch_buffer.h: Update.
2343         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2344         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2345         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2346         * gnulib/import/malloca.c: Update.
2347         * gnulib/import/malloca.h: Update.
2348         * gnulib/import/malloca.valgrind: Update.
2349         * gnulib/import/math.in.h: Update.
2350         * gnulib/import/mbrtowc.c: Update.
2351         * gnulib/import/mbsinit.c: Update.
2352         * gnulib/import/mbsrtowcs-impl.h: Update.
2353         * gnulib/import/mbsrtowcs-state.c: Update.
2354         * gnulib/import/mbsrtowcs.c: Update.
2355         * gnulib/import/memchr.c: Update.
2356         * gnulib/import/memmem.c: Update.
2357         * gnulib/import/mempcpy.c: Update.
2358         * gnulib/import/memrchr.c: Update.
2359         * gnulib/import/mkdir.c: Update.
2360         * gnulib/import/mkstemp.c: Update.
2361         * gnulib/import/msvc-inval.c: Update.
2362         * gnulib/import/msvc-inval.h: Update.
2363         * gnulib/import/msvc-nothrow.c: Update.
2364         * gnulib/import/msvc-nothrow.h: Update.
2365         * gnulib/import/open.c: Update.
2366         * gnulib/import/openat-die.c: Update.
2367         * gnulib/import/openat-priv.h: Update.
2368         * gnulib/import/openat-proc.c: Update.
2369         * gnulib/import/openat.c: Update.
2370         * gnulib/import/openat.h: Update.
2371         * gnulib/import/opendir.c: Update.
2372         * gnulib/import/pathmax.h: Update.
2373         * gnulib/import/pipe-safer.c: Update.
2374         * gnulib/import/rawmemchr.c: Update.
2375         * gnulib/import/readdir.c: Update.
2376         * gnulib/import/readlink.c: Update.
2377         * gnulib/import/realloc.c: Update.
2378         * gnulib/import/ref-add.sin: Update.
2379         * gnulib/import/ref-del.sin: Update.
2380         * gnulib/import/rename.c: Update.
2381         * gnulib/import/rewinddir.c: Update.
2382         * gnulib/import/rmdir.c: Update.
2383         * gnulib/import/same-inode.h: Update.
2384         * gnulib/import/save-cwd.c: Update.
2385         * gnulib/import/save-cwd.h: Update.
2386         * gnulib/import/scratch_buffer.h: Update.
2387         * gnulib/import/secure_getenv.c: Update.
2388         * gnulib/import/setenv.c: Update.
2389         * gnulib/import/signal.in.h: Update.
2390         * gnulib/import/stat-time.c: Update.
2391         * gnulib/import/stat-time.h: Update.
2392         * gnulib/import/stat-w32.c: Update.
2393         * gnulib/import/stat-w32.h: Update.
2394         * gnulib/import/stat.c: Update.
2395         * gnulib/import/stdbool.in.h: Update.
2396         * gnulib/import/stddef.in.h: Update.
2397         * gnulib/import/stdint.in.h: Update.
2398         * gnulib/import/stdio.in.h: Update.
2399         * gnulib/import/stdlib.in.h: Update.
2400         * gnulib/import/str-two-way.h: Update.
2401         * gnulib/import/strchrnul.c: Update.
2402         * gnulib/import/strdup.c: Update.
2403         * gnulib/import/streq.h: Update.
2404         * gnulib/import/strerror-override.c: Update.
2405         * gnulib/import/strerror-override.h: Update.
2406         * gnulib/import/strerror.c: Update.
2407         * gnulib/import/string.in.h: Update.
2408         * gnulib/import/stripslash.c: Update.
2409         * gnulib/import/strnlen1.c: Update.
2410         * gnulib/import/strnlen1.h: Update.
2411         * gnulib/import/strstr.c: Update.
2412         * gnulib/import/strtok_r.c: Update.
2413         * gnulib/import/sys_stat.in.h: Update.
2414         * gnulib/import/sys_time.in.h: Update.
2415         * gnulib/import/sys_types.in.h: Update.
2416         * gnulib/import/tempname.c: Update.
2417         * gnulib/import/tempname.h: Update.
2418         * gnulib/import/time.in.h: Update.
2419         * gnulib/import/unistd--.h: Update.
2420         * gnulib/import/unistd-safer.h: Update.
2421         * gnulib/import/unistd.in.h: Update.
2422         * gnulib/import/unsetenv.c: Update.
2423         * gnulib/import/verify.h: Update.
2424         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2425         * gnulib/import/wchar.in.h: Update.
2426         * gnulib/import/wctype.in.h: Update.
2427         * gnulib/import/xalloc-oversized.h: Update.
2428         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2429         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2430
2431 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2432
2433         * record-btrace.c (get_thread_current_frame): Remove
2434         old_inferior_ptid.
2435
2436 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2437
2438         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2439         with check_tag to 1 if and only if the type is tagged and the
2440         component being searched cannot been found in the current
2441         view. Otherwise, always call ada_to_fixed_type with
2442         check_tag to 0.
2443
2444 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2445
2446         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2447         declaration.
2448         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2449         * ada-varobj.c (ada_varobj_get_number_of_children,
2450         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2451
2452 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2453
2454         * ada-valprint.c (ada_value_print): Use type instead of
2455         enclosing type.
2456
2457 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2458
2459         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2460         an array of access to unconstrained array.
2461
2462 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2463
2464         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2465         (ada_check_typedef): Use it.
2466
2467 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2468
2469         * ada-varobj.c (ada_varobj_describe_struct_child)
2470         (ada_varobj_describe_child): Handle union case like struct one.
2471
2472 2018-09-10  Tom Tromey  <tom@tromey.com>
2473
2474         PR python/18380:
2475         * python/python.c (_initialize_python): Make example in "python"
2476         help work in Python 3.
2477
2478 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2479
2480         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2481         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2482         $(EXEEXT) to the script, as it is not a program.
2483
2484 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2485
2486         * python/py-prettyprint.c (pretty_print_one_value): Return
2487         gdbpy_ref<>.
2488         (print_string_repr): Adjust.
2489         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2490         * python/python-internal.h (apply_varobj_pretty_printer): Return
2491         gdbpy_ref<>.
2492         * varobj.c (varobj_value_get_print_value): Adjust.
2493
2494 2018-09-08  Tom Tromey  <tom@tromey.com>
2495
2496         PR python/16047:
2497         * python/py-prettyprint.c (pretty_print_one_value): Check for
2498         to_string method.
2499
2500 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2501
2502         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2503         replace_operator_with_call.
2504
2505 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2506
2507         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2508
2509 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2510
2511         * ada-typeprint.c (print_range): Print the bounds using TYPE
2512         rather than its TYPE_TARGET_TYPE.
2513
2514 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2515
2516         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2517         call to ada_to_fixed_value_create.
2518
2519 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2520
2521         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2522
2523 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2524
2525         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2526         by calls to error.
2527
2528 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2529
2530         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2531         Move update of loop variable "fi".
2532
2533 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2534
2535         * ada-lang.c (value_assign_to_component): In the case of
2536         big-endian targets, extract the bits of the given VAL
2537         using an src_offset of zero if container is not a scalar.
2538
2539 2018-09-06  Simon Ser  <contact@emersion.fr>
2540
2541         PR gdb/23105
2542         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2543         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2544         * fbsd-tdep.c (fbsd_make_note_desc): New.
2545         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2546         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2547         * target.h (enum target_object) Add FreeBSD-specific
2548         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2549
2550 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2551
2552         * compile/compile-c.h (generate_c_for_variable_locations):
2553         Change reference to pointer.
2554         * compile/compile-c-support.c (compile_program) <compute>:
2555         Likewise.
2556         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2557         (generate_c_for_for_one_variable): Likewise
2558         (generate_c_for_variable_locations): Likewise
2559         * compile/compile-c-types.c (compile_c_instance::convert_type):
2560         Likewise
2561         * compile/compile-cplus-symbols.c (convert_one_symbol):
2562         std::move the scope passed to enter_scope.
2563         * compile/compile-cplus-types.c
2564         (compile_cplus_instance::enter_scope): Make parameter
2565         rvalue-reference.
2566         (compile_cplus_instance::new_scope): Change reference to
2567         pointer.
2568         (compile_cplus_instance::convert_type): Likewise
2569         (compile_cplus_convert_typedef): std::move the scope passed to
2570         enter_scope.
2571         (compile_cplus_convert_struct_or_union): Likewise.
2572         (compile_cplus_convert_enum): Likewise.
2573         (compile_cplus_convert_namespace): Likewise.
2574         * compile/compile-cplus.h (compile_cplus_instance)
2575         <enter_scope>: Make parameter rvalue-reference.
2576         * compile/compile-internal.h (compile_instance)
2577         <get_cached_type>: Likewise
2578         * compile/compile-loc2c.c (push): Likewise
2579         (pushf): Likewise
2580         (unary): Likewise
2581         (binary): Likewise
2582         (print_label): Likewise
2583         (pushf_register_address): Likewise
2584         (pushf_register): Likewise
2585         (do_compile_dwarf_expr_to_c): Likewise
2586         (compile_dwarf_expr_to_c): Likewise
2587         (compile_dwarf_bounds_to_c): Likewise
2588         * compile/compile.c (compile_instance::get_cached_type):
2589         Likewise
2590         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2591         (compile_dwarf_bounds_to_c): Likewise
2592         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2593         (dwarf2_compile_property_to_c): Likewise
2594         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2595         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2596         Likewise
2597
2598 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2599
2600         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2601         * tui/tui-data.c (init_content_element): Don't initialize it.
2602
2603 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2604
2605         * tui/tui-data.h (struct tui_win_info)
2606         <detail::opaque>: Remove.
2607         * tui/tui-data.c (init_win_info): Remove assignment.
2608
2609 2018-09-05  Tom Tromey  <tom@tromey.com>
2610
2611         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2612         -Wformat-nonliteral.
2613         * target-float.c (host_float_ops<T>::to_string)
2614         (host_float_ops<T>::from_string): Use
2615         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2616         * configure: Rebuild.
2617
2618 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2619
2620         * printcmd.c (printf_c_string): Use
2621         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2622         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2623
2624 2018-09-05  Tom Tromey  <tom@tromey.com>
2625
2626         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2627
2628 2018-09-05  Tom de Vries  <tdevries@suse.de>
2629
2630         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2631         with resolve_abstract_p == true.
2632         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2633         defaulting to false. Propagate resolve_abstract_p to
2634         dwarf2_fetch_die_loc_sect_off.
2635         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2636         parameter, defaulting to false.
2637         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2638         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2639         parameter.
2640         * dwarf2read.h (struct die_info): Forward-declare.
2641         (die_info_ptr): New typedef.
2642         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2643
2644 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2645
2646         GDB 8.2 released.
2647
2648 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2649             Pedro Alves  <palves@redhat.com>
2650
2651         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2652         "aclocal-m4-deps.mk".  Include file here.
2653         $(srcdir)/aclocal.m4: Add "configure.ac".
2654         * gnulib/aclocal-m4-deps.mk: New file.
2655         * gnulib/update-gnulib.sh: Automatically update
2656         "aclocal-m4-deps.mk".
2657
2658 2018-09-04  Tom Tromey  <tom@tromey.com>
2659
2660         * configure: Rebuild.
2661         * configure.ac: Remove multi-ice code.
2662
2663 2018-09-04  Tom Tromey  <tom@tromey.com>
2664
2665         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2666         (ada-exp.o): Update.
2667
2668 2018-09-04  Tom Tromey  <tom@tromey.com>
2669
2670         * Makefile.in (printcmd.o, target-float.o): Remove.
2671         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2672
2673 2018-09-04  Tom Tromey  <tom@tromey.com>
2674
2675         * gnulib/Makefile.in: Remove obsolete comment.
2676         * Makefile.in: Remove obsolete comment.
2677
2678 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2679
2680         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2681         line with '+'.
2682
2683 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2684
2685         * riscv-tdep.c: Add 'prologue-value.h' include.
2686         (struct riscv_unwind_cache): New struct.
2687         (riscv_debug_unwinder): New global.
2688         (riscv_scan_prologue): Update arguments, capture register details
2689         from prologue scan.
2690         (riscv_skip_prologue): Reformat arguments line, move end of
2691         prologue calculation into riscv_scan_prologue.
2692         (riscv_frame_cache): Update return type, create
2693         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2694         details.
2695         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2696         (riscv_frame_prev_register): Use the trad_frame within the
2697         riscv_unwind_cache.
2698         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2699         flag.
2700
2701 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2702
2703         * trad-frame.h (trad_frame_set_realreg): Declare.
2704         (trad_frame_set_addr): Declare.
2705         * trad-frame.c (trad_frame_set_realreg): Define new function.
2706         (trad_frame_set_addr): Define new function.
2707         (trad_frame_set_reg_realreg): Use new function.
2708         (trad_frame_set_reg_addr): Use new function.
2709
2710 2018-09-01  Keith Seitz  <keiths@redhat.com>
2711
2712         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2713         pulongest instead of "%lld".
2714         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2715         ATTRIBUTE_UNUSED.
2716
2717 2018-08-31  Tom Tromey  <tom@tromey.com>
2718
2719         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2720         variant part type.
2721
2722 2018-08-31  Pedro Alves  <palves@redhat.com>
2723
2724         * gdbarch.h: Regenerate.
2725
2726 2018-08-31  Pedro Alves  <palves@redhat.com>
2727
2728         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2729         * target.h (Hardware watchpoint interfaces): Describe
2730         continuable/steppable/non-steppable watchpoints.
2731         * gdbarch.h, gdbarch.c: Regenerate.
2732
2733 2018-08-31  Pedro Alves  <palves@redhat.com>
2734
2735         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2736         Delete.
2737         * s390-linux-nat.c
2738         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2739         * target.h (target_ops::have_continuable_watchpoint): Delete.
2740         (target_have_continuable_watchpoint): Delete.
2741         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2742         * target-delegates.c: Regenerate.
2743
2744 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2745
2746         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2747         the files present in "gnulib/import/m4/".
2748
2749 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2750
2751         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2752         c.sw, c.swsp, and c.sdsp.
2753
2754 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2755
2756         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2757         (riscv_read_misa_reg): Don't cache value read into inferior data.
2758         (riscv_new_inferior_data): Delete.
2759         (riscv_inferior_data_cleanup): Delete.
2760         (riscv_inferior_data): Delete.
2761         (riscv_invalidate_inferior_data): Delete.
2762         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2763
2764 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2765
2766         * compile/compile-cplus-types.c
2767         (compile_cplus_instance::leave_scope): Take the address of scope
2768         object.
2769         (compile_cplus_instance::convert_qualified_base): Compare quals
2770         to 0.
2771
2772 2018-08-30  Keith Seitz  <keiths@redhat.com>
2773
2774         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2775         Use "%s" and host_address_to_string instead of "%p" in printf.
2776
2777 2018-08-29  Keith Seitz  <keiths@redhat.com>
2778
2779         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2780         and compile-cplus-types.c.
2781         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2782         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2783         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2784         Declare.
2785         * compile/compile-c-support.c: Include compile-cplus.h.
2786         (load_libcompile): Templatize.
2787         (get_compile_context): "New" function.
2788         (c_get_compile_context): Use get_compile_context.
2789         (cplus_get_compile_context): New function.
2790         (cplus_push_user_expression, cplus_pop_user_expression)
2791         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2792         (cplus_compute_program): Define new structs/functions.
2793         * compile/compile-cplus-symmbols.c: New file.
2794         * compile/compile-cplus-types.c: New file.
2795         * compile/compile-cplus.h: New file.
2796         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2797         Declare.
2798         * compile/compile-object-load.c (get_out_value_type): Use
2799         strncmp_iw when comparing symbol names.
2800         (compile_object_load): Add mst_bss and mst_data.
2801         * compile/compile.c (_initialize_compile): Remove
2802         -Wno-implicit-function-declaration from `compile_args'.
2803         * compile/gcc-cp-plugin.h: New file.
2804         * NEWS: Mention C++ compile support and new debug options.
2805
2806 2018-08-29  Keith Seitz  <keiths@redhat.com>
2807
2808         * linespec.c (collect_info::add_symbol): Make virtual.
2809         (struct symbol_searcher_collect_info): New struct.
2810         (symbol_searcher::find_all_symbols): New method.
2811         * symtab.h (class symbol_searcher): New class.
2812
2813 2018-08-29  Keith Seitz  <keiths@redhat.com>
2814
2815         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2816         Change to vector of block_symbol.  Update all users.
2817         (struct collect_info) <symbols>: Likewise.
2818         (collect_info::add_symbol): Take block_symbol as argument.
2819         Update all callers.
2820         (decode_compound_collector) <m_symbols>: Change type to vector
2821         of block_symbol.  Update all users.
2822         (decode_compound_collector::operator ()): Change parameter type
2823         to block_symbol.
2824         (find_method, find_function_symbols, find_linespec_symbols)
2825         (find_label_symbols_in_block, find_label_symbols): Change symbol
2826         vectors to block_symbol vectors.
2827         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2828         block_symbol.
2829
2830 2018-08-29  Keith Seitz  <keiths@redhat.com>
2831
2832         * linespec.c (symbolp): Remove typedef and VEC definitions.
2833         (bound_minimal_symbol_d): Likewise.
2834
2835 2018-08-29  Keith Seitz  <keiths@redhat.com>
2836
2837         * linespec.c (decode_compound_collector::decode_compound_collector):
2838         Remove initialization for `m_symtabs'.
2839         (decode_compound_collector::release_symbols): Change return type
2840         to std::vector.  Update all callers.
2841         (class decode_compound_collector) <m_symbols>: Change type to
2842         std::vector.
2843         (lookup_prefix_sym): Change return type to std::vector.  Update all
2844         callers.
2845         (compare_symbols): Remove.
2846         (std_compare_symbols): Rename to `compare_symbols'.
2847         (find_method): Change `sym_classes' parameter to std::vector.
2848         Update all callers.  Use std::sort to sort sym_classes.
2849         (find_linespec_symbols): Remove cleanup.
2850
2851 2018-08-29  Keith Seitz  <keiths@redhat.com>
2852
2853         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2854         std::vector.  Update all users.
2855         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2856         (struct collect_info) <minimal_symbols>: Likewise.
2857         (compare_msymbols): Return bool.  Change parameters to const
2858         bound_minimal_symbol references.
2859         (find_method, find_function_symbols, find_linespec_symbols): Change
2860         `minsyms' parameter to std::vector.  Update all callers.
2861
2862 2018-08-29  Keith Seitz  <keiths@redhat.com>
2863
2864         * linespec.c (struct linespec) <label_symbols>: Change type to
2865         std::vector.  Update all users.
2866         (find_label_symbols_in_block): Change `result' parameter to
2867         std::vector.  Update all callers.
2868         (find_label_symbols): Return std::vector.  Update all callers.
2869
2870 2018-08-29  Keith Seitz  <keiths@redhat.com>
2871
2872         * linespec.c (struct linespec) <function_symbols>: Change type to
2873         std::vector.  Update all users.
2874         (struct collect_info) <function_symbols>: Likewise.
2875         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2876         (std_compare_symbols): New function.
2877         (find_method, find_function_symbols, find_linespec_symbols)
2878         (find_label_symbols_in_block): Change `symbols' parameter to
2879         std::vector.  Update all callers.
2880         (find_label_symbols): Likewise for `function_symbols' and
2881         `label_funcs_ret'.
2882
2883 2018-08-29  Keith Seitz  <keiths@redhat.com>
2884
2885         * linespec.c (symtab_vector_up): Define.
2886         (struct linespec) <file_symtabs>: Change type to std::vector *.
2887         Update all uses.
2888         (struct collect_info) <file_symtabs>: Likewise.
2889         (collect_symtabs_from_filename): Return symtab_vector_up.
2890         Update all callers.
2891         (decode_objc): Remove cleanup.
2892         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2893         (symtab_collector::release_symtabs): Return symtab_vector_up.
2894         Update all callers.
2895         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2896         Update all users.
2897         (collect_symtabs_from_filename, symtabs_from_filename): Return
2898         symtab_vector_up.  Update all callers.
2899
2900 2018-08-29  Tom Tromey  <tom@tromey.com>
2901
2902         * csky-tdep.c (csky_analyze_prologue): Use
2903         core_addr_to_string_nz.
2904
2905 2018-08-29  Tom Tromey  <tom@tromey.com>
2906
2907         * windows-nat.c (struct xlate_exception) <them>: Change type to
2908         DWORD.
2909         (xlate): Fix formatting.  Remove last entry.
2910         (struct xlate_exception, xlate): Comment out.
2911         (windows_nat_target::resume): Use ranged for.
2912
2913 2018-08-29  Jim Wilson  <jimw@sifive.com>
2914
2915         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2916         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2917         of NT_PRFPREG.
2918         (riscv_linux_nat_target::store_registers): Likewise.
2919
2920 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2921
2922         PR gdb/23555
2923         PR gdb/23558
2924         * gnulib/aclocal.m4: Regenerate.
2925         * gnulib/config.in: Regenerate.
2926         * gnulib/configure: Regenerate.
2927         * gnulib/import/Makefile.am: Update.
2928         * gnulib/import/Makefile.in: Update.
2929         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2930         * gnulib/import/_Noreturn.h: ... this.
2931         * gnulib/import/alloca.in.h: Update.
2932         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2933         * gnulib/import/arg-nonnull.h: ... this.
2934         * gnulib/import/assure.h: Update.
2935         * gnulib/import/at-func.c: Update.
2936         * gnulib/import/basename-lgpl.c: Update.
2937         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2938         * gnulib/import/c++defs.h: ... this.
2939         * gnulib/import/canonicalize-lgpl.c: Update.
2940         * gnulib/import/cdefs.h: Update.
2941         * gnulib/import/chdir-long.c: Update.
2942         * gnulib/import/chdir-long.h: Update.
2943         * gnulib/import/cloexec.c: Update.
2944         * gnulib/import/cloexec.h: Update.
2945         * gnulib/import/close.c: Update.
2946         * gnulib/import/closedir.c: Update.
2947         * gnulib/import/config.charset: Update.
2948         * gnulib/import/dirent-private.h: Update.
2949         * gnulib/import/dirent.in.h: Update.
2950         * gnulib/import/dirfd.c: Update.
2951         * gnulib/import/dirname-lgpl.c: Update.
2952         * gnulib/import/dirname.h: Update.
2953         * gnulib/import/dosname.h: Update.
2954         * gnulib/import/dup-safer-flag.c: Update.
2955         * gnulib/import/dup-safer.c: Update.
2956         * gnulib/import/dup.c: Update.
2957         * gnulib/import/dup2.c: Update.
2958         * gnulib/import/errno.in.h: Update.
2959         * gnulib/import/error.c: Update.
2960         * gnulib/import/error.h: Update.
2961         * gnulib/import/exitfail.c: Update.
2962         * gnulib/import/exitfail.h: Update.
2963         * gnulib/import/extra/update-copyright: Update.
2964         * gnulib/import/fchdir.c: Update.
2965         * gnulib/import/fcntl.c: Update.
2966         * gnulib/import/fcntl.in.h: Update.
2967         * gnulib/import/fd-hook.c: Update.
2968         * gnulib/import/fd-hook.h: Update.
2969         * gnulib/import/fd-safer-flag.c: Update.
2970         * gnulib/import/fd-safer.c: Update.
2971         * gnulib/import/fdopendir.c: Update.
2972         * gnulib/import/filename.h: Update.
2973         * gnulib/import/filenamecat-lgpl.c: Update.
2974         * gnulib/import/filenamecat.h: Update.
2975         * gnulib/import/flexmember.h: Update.
2976         * gnulib/import/float+.h: Update.
2977         * gnulib/import/float.c: Update.
2978         * gnulib/import/float.in.h: Update.
2979         * gnulib/import/fnmatch.c: Update.
2980         * gnulib/import/fnmatch.in.h: Update.
2981         * gnulib/import/fnmatch_loop.c: Update.
2982         * gnulib/import/fpucw.h: Update.
2983         * gnulib/import/frexp.c: Update.
2984         * gnulib/import/frexpl.c: Update.
2985         * gnulib/import/fstat.c: Update.
2986         * gnulib/import/fstatat.c: Update.
2987         * gnulib/import/getcwd-lgpl.c: Update.
2988         * gnulib/import/getcwd.c: Update.
2989         * gnulib/import/getdtablesize.c: Update.
2990         * gnulib/import/getlogin_r.c: Update.
2991         * gnulib/import/getprogname.c: Update.
2992         * gnulib/import/getprogname.h: Update.
2993         * gnulib/import/gettext.h: Update.
2994         * gnulib/import/gettimeofday.c: Update.
2995         * gnulib/import/glob-libc.h: Update.
2996         * gnulib/import/glob.c: Update.
2997         * gnulib/import/glob.in.h: Update.
2998         * gnulib/import/glob_internal.h: Update.
2999         * gnulib/import/glob_pattern_p.c: Update.
3000         * gnulib/import/globfree.c: Update.
3001         * gnulib/import/hard-locale.c: Update.
3002         * gnulib/import/hard-locale.h: Update.
3003         * gnulib/import/intprops.h: Update.
3004         * gnulib/import/inttypes.in.h: Update.
3005         * gnulib/import/isnan.c: Update.
3006         * gnulib/import/isnand-nolibm.h: Update.
3007         * gnulib/import/isnand.c: Update.
3008         * gnulib/import/isnanl-nolibm.h: Update.
3009         * gnulib/import/isnanl.c: Update.
3010         * gnulib/import/itold.c: Update.
3011         * gnulib/import/libc-config.h: Update.
3012         * gnulib/import/limits.in.h: Update.
3013         * gnulib/import/localcharset.c: Update.
3014         * gnulib/import/localcharset.h: Update.
3015         * gnulib/import/localtime-buffer.c: Update.
3016         * gnulib/import/localtime-buffer.h: Update.
3017         * gnulib/import/lstat.c: Update.
3018         * gnulib/import/m4/00gnulib.m4: Update.
3019         * gnulib/import/m4/__inline.m4: Update.
3020         * gnulib/import/m4/absolute-header.m4: Update.
3021         * gnulib/import/m4/alloca.m4: Update.
3022         * gnulib/import/m4/builtin-expect.m4: Update.
3023         * gnulib/import/m4/canonicalize.m4: Update.
3024         * gnulib/import/m4/chdir-long.m4: Update.
3025         * gnulib/import/m4/close.m4: Update.
3026         * gnulib/import/m4/closedir.m4: Update.
3027         * gnulib/import/m4/configmake.m4: Update.
3028         * gnulib/import/m4/d-ino.m4: Update.
3029         * gnulib/import/m4/d-type.m4: Update.
3030         * gnulib/import/m4/dirent_h.m4: Update.
3031         * gnulib/import/m4/dirfd.m4: Update.
3032         * gnulib/import/m4/dirname.m4: Update.
3033         * gnulib/import/m4/double-slash-root.m4: Update.
3034         * gnulib/import/m4/dup.m4: Update.
3035         * gnulib/import/m4/dup2.m4: Update.
3036         * gnulib/import/m4/eealloc.m4: Update.
3037         * gnulib/import/m4/environ.m4: Update.
3038         * gnulib/import/m4/errno_h.m4: Update.
3039         * gnulib/import/m4/error.m4: Update.
3040         * gnulib/import/m4/exponentd.m4: Update.
3041         * gnulib/import/m4/exponentl.m4: Update.
3042         * gnulib/import/m4/extensions.m4: Update.
3043         * gnulib/import/m4/extern-inline.m4: Update.
3044         * gnulib/import/m4/fchdir.m4: Update.
3045         * gnulib/import/m4/fcntl-o.m4: Update.
3046         * gnulib/import/m4/fcntl.m4: Update.
3047         * gnulib/import/m4/fcntl_h.m4: Update.
3048         * gnulib/import/m4/fdopendir.m4: Update.
3049         * gnulib/import/m4/filenamecat.m4: Update.
3050         * gnulib/import/m4/flexmember.m4: Update.
3051         * gnulib/import/m4/float_h.m4: Update.
3052         * gnulib/import/m4/fnmatch.m4: Update.
3053         * gnulib/import/m4/fnmatch_h.m4: Update.
3054         * gnulib/import/m4/fpieee.m4: Update.
3055         * gnulib/import/m4/frexp.m4: Update.
3056         * gnulib/import/m4/frexpl.m4: Update.
3057         * gnulib/import/m4/fstat.m4: Update.
3058         * gnulib/import/m4/fstatat.m4: Update.
3059         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3060         * gnulib/import/m4/getcwd-path-max.m4: Update.
3061         * gnulib/import/m4/getcwd.m4: Update.
3062         * gnulib/import/m4/getdtablesize.m4: Update.
3063         * gnulib/import/m4/getlogin.m4: Update.
3064         * gnulib/import/m4/getlogin_r.m4: Update.
3065         * gnulib/import/m4/getpagesize.m4: Update.
3066         * gnulib/import/m4/getprogname.m4: Update.
3067         * gnulib/import/m4/gettimeofday.m4: Update.
3068         * gnulib/import/m4/glibc21.m4: Update.
3069         * gnulib/import/m4/glob.m4: Update.
3070         * gnulib/import/m4/glob_h.m4: Update.
3071         * gnulib/import/m4/gnulib-cache.m4: Update.
3072         * gnulib/import/m4/gnulib-common.m4: Update.
3073         * gnulib/import/m4/gnulib-comp.m4: Update.
3074         * gnulib/import/m4/gnulib-tool.m4: Update.
3075         * gnulib/import/m4/hard-locale.m4: Update.
3076         * gnulib/import/m4/include_next.m4: Update.
3077         * gnulib/import/m4/inttypes-pri.m4: Update.
3078         * gnulib/import/m4/inttypes.m4: Update.
3079         * gnulib/import/m4/isnand.m4: Update.
3080         * gnulib/import/m4/isnanl.m4: Update.
3081         * gnulib/import/m4/largefile.m4: Update.
3082         * gnulib/import/m4/limits-h.m4: Update.
3083         * gnulib/import/m4/localcharset.m4: Update.
3084         * gnulib/import/m4/locale-fr.m4: Update.
3085         * gnulib/import/m4/locale-ja.m4: Update.
3086         * gnulib/import/m4/locale-zh.m4: Update.
3087         * gnulib/import/m4/localtime-buffer.m4: Update.
3088         * gnulib/import/m4/longlong.m4: Update.
3089         * gnulib/import/m4/lstat.m4: Update.
3090         * gnulib/import/m4/malloc.m4: Update.
3091         * gnulib/import/m4/malloca.m4: Update.
3092         * gnulib/import/m4/math_h.m4: Update.
3093         * gnulib/import/m4/mbrtowc.m4: Update.
3094         * gnulib/import/m4/mbsinit.m4: Update.
3095         * gnulib/import/m4/mbsrtowcs.m4: Update.
3096         * gnulib/import/m4/mbstate_t.m4: Update.
3097         * gnulib/import/m4/memchr.m4: Update.
3098         * gnulib/import/m4/memmem.m4: Update.
3099         * gnulib/import/m4/mempcpy.m4: Update.
3100         * gnulib/import/m4/memrchr.m4: Update.
3101         * gnulib/import/m4/mkdir.m4: Update.
3102         * gnulib/import/m4/mkstemp.m4: Update.
3103         * gnulib/import/m4/mmap-anon.m4: Update.
3104         * gnulib/import/m4/mode_t.m4: Update.
3105         * gnulib/import/m4/msvc-inval.m4: Update.
3106         * gnulib/import/m4/msvc-nothrow.m4: Update.
3107         * gnulib/import/m4/multiarch.m4: Update.
3108         * gnulib/import/m4/nocrash.m4: Update.
3109         * gnulib/import/m4/off_t.m4: Update.
3110         * gnulib/import/m4/onceonly.m4: Update.
3111         * gnulib/import/m4/open-cloexec.m4: Update.
3112         * gnulib/import/m4/open.m4: Update.
3113         * gnulib/import/m4/openat.m4: Update.
3114         * gnulib/import/m4/opendir.m4: Update.
3115         * gnulib/import/m4/pathmax.m4: Update.
3116         * gnulib/import/m4/rawmemchr.m4: Update.
3117         * gnulib/import/m4/readdir.m4: Update.
3118         * gnulib/import/m4/readlink.m4: Update.
3119         * gnulib/import/m4/realloc.m4: Update.
3120         * gnulib/import/m4/rename.m4: Update.
3121         * gnulib/import/m4/rewinddir.m4: Update.
3122         * gnulib/import/m4/rmdir.m4: Update.
3123         * gnulib/import/m4/save-cwd.m4: Update.
3124         * gnulib/import/m4/secure_getenv.m4: Update.
3125         * gnulib/import/m4/setenv.m4: Update.
3126         * gnulib/import/m4/signal_h.m4: Update.
3127         * gnulib/import/m4/ssize_t.m4: Update.
3128         * gnulib/import/m4/stat-time.m4: Update.
3129         * gnulib/import/m4/stat.m4: Update.
3130         * gnulib/import/m4/std-gnu11.m4: Update.
3131         * gnulib/import/m4/stdbool.m4: Update.
3132         * gnulib/import/m4/stddef_h.m4: Update.
3133         * gnulib/import/m4/stdint.m4: Update.
3134         * gnulib/import/m4/stdio_h.m4: Update.
3135         * gnulib/import/m4/stdlib_h.m4: Update.
3136         * gnulib/import/m4/strchrnul.m4: Update.
3137         * gnulib/import/m4/strdup.m4: Update.
3138         * gnulib/import/m4/strerror.m4: Update.
3139         * gnulib/import/m4/string_h.m4: Update.
3140         * gnulib/import/m4/strstr.m4: Update.
3141         * gnulib/import/m4/strtok_r.m4: Update.
3142         * gnulib/import/m4/sys_socket_h.m4: Update.
3143         * gnulib/import/m4/sys_stat_h.m4: Update.
3144         * gnulib/import/m4/sys_time_h.m4: Update.
3145         * gnulib/import/m4/sys_types_h.m4: Update.
3146         * gnulib/import/m4/tempname.m4: Update.
3147         * gnulib/import/m4/time_h.m4: Update.
3148         * gnulib/import/m4/unistd-safer.m4: Update.
3149         * gnulib/import/m4/unistd_h.m4: Update.
3150         * gnulib/import/m4/warn-on-use.m4: Update.
3151         * gnulib/import/m4/wchar_h.m4: Update.
3152         * gnulib/import/m4/wchar_t.m4: Update.
3153         * gnulib/import/m4/wctype_h.m4: Update.
3154         * gnulib/import/m4/wint_t.m4: Update.
3155         * gnulib/import/malloc.c: Update.
3156         * gnulib/import/malloc/scratch_buffer.h: Update.
3157         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3158         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3159         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3160         * gnulib/import/malloca.c: Update.
3161         * gnulib/import/malloca.h: Update.
3162         * gnulib/import/malloca.valgrind: Update.
3163         * gnulib/import/math.in.h: Update.
3164         * gnulib/import/mbrtowc.c: Update.
3165         * gnulib/import/mbsinit.c: Update.
3166         * gnulib/import/mbsrtowcs-impl.h: Update.
3167         * gnulib/import/mbsrtowcs-state.c: Update.
3168         * gnulib/import/mbsrtowcs.c: Update.
3169         * gnulib/import/memchr.c: Update.
3170         * gnulib/import/memmem.c: Update.
3171         * gnulib/import/mempcpy.c: Update.
3172         * gnulib/import/memrchr.c: Update.
3173         * gnulib/import/mkdir.c: Update.
3174         * gnulib/import/mkstemp.c: Update.
3175         * gnulib/import/msvc-inval.c: Update.
3176         * gnulib/import/msvc-inval.h: Update.
3177         * gnulib/import/msvc-nothrow.c: Update.
3178         * gnulib/import/msvc-nothrow.h: Update.
3179         * gnulib/import/open.c: Update.
3180         * gnulib/import/openat-die.c: Update.
3181         * gnulib/import/openat-priv.h: Update.
3182         * gnulib/import/openat-proc.c: Update.
3183         * gnulib/import/openat.c: Update.
3184         * gnulib/import/openat.h: Update.
3185         * gnulib/import/opendir.c: Update.
3186         * gnulib/import/pathmax.h: Update.
3187         * gnulib/import/pipe-safer.c: Update.
3188         * gnulib/import/rawmemchr.c: Update.
3189         * gnulib/import/readdir.c: Update.
3190         * gnulib/import/readlink.c: Update.
3191         * gnulib/import/realloc.c: Update.
3192         * gnulib/import/ref-add.sin: Update.
3193         * gnulib/import/ref-del.sin: Update.
3194         * gnulib/import/rename.c: Update.
3195         * gnulib/import/rewinddir.c: Update.
3196         * gnulib/import/rmdir.c: Update.
3197         * gnulib/import/same-inode.h: Update.
3198         * gnulib/import/save-cwd.c: Update.
3199         * gnulib/import/save-cwd.h: Update.
3200         * gnulib/import/scratch_buffer.h: Update.
3201         * gnulib/import/secure_getenv.c: Update.
3202         * gnulib/import/setenv.c: Update.
3203         * gnulib/import/signal.in.h: Update.
3204         * gnulib/import/stat-time.c: Update.
3205         * gnulib/import/stat-time.h: Update.
3206         * gnulib/import/stat-w32.c: Update.
3207         * gnulib/import/stat-w32.h: Update.
3208         * gnulib/import/stat.c: Update.
3209         * gnulib/import/stdbool.in.h: Update.
3210         * gnulib/import/stddef.in.h: Update.
3211         * gnulib/import/stdint.in.h: Update.
3212         * gnulib/import/stdio.in.h: Update.
3213         * gnulib/import/stdlib.in.h: Update.
3214         * gnulib/import/str-two-way.h: Update.
3215         * gnulib/import/strchrnul.c: Update.
3216         * gnulib/import/strdup.c: Update.
3217         * gnulib/import/streq.h: Update.
3218         * gnulib/import/strerror-override.c: Update.
3219         * gnulib/import/strerror-override.h: Update.
3220         * gnulib/import/strerror.c: Update.
3221         * gnulib/import/string.in.h: Update.
3222         * gnulib/import/stripslash.c: Update.
3223         * gnulib/import/strnlen1.c: Update.
3224         * gnulib/import/strnlen1.h: Update.
3225         * gnulib/import/strstr.c: Update.
3226         * gnulib/import/strtok_r.c: Update.
3227         * gnulib/import/sys_stat.in.h: Update.
3228         * gnulib/import/sys_time.in.h: Update.
3229         * gnulib/import/sys_types.in.h: Update.
3230         * gnulib/import/tempname.c: Update.
3231         * gnulib/import/tempname.h: Update.
3232         * gnulib/import/time.in.h: Update.
3233         * gnulib/import/unistd--.h: Update.
3234         * gnulib/import/unistd-safer.h: Update.
3235         * gnulib/import/unistd.in.h: Update.
3236         * gnulib/import/unsetenv.c: Update.
3237         * gnulib/import/verify.h: Update.
3238         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3239         * gnulib/import/wchar.in.h: Update.
3240         * gnulib/import/wctype.in.h: Update.
3241         * gnulib/import/xalloc-oversized.h: Update.
3242         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3243         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3244
3245 2018-08-16  Gary Benson <gbenson@redhat.com>
3246
3247         PR gdb/13000:
3248         * gdb/main.c (captured_main_1): Exit with nonzero status
3249         in batch mode if the last command to be executed failed.
3250         * NEWS: Mention the above.
3251
3252 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3253
3254         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3255         end of warning message.
3256
3257 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3258
3259         PR gdb/22943:
3260         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3261         (aarch64_extract_return_value): Use
3262         aapcs_is_vfp_call_or_return_candidate.
3263         (aarch64_return_in_memory): Likewise.
3264         (aarch64_store_return_value): Likewise.
3265
3266 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3267
3268         * aarch64-tdep.c
3269         (aapcs_is_vfp_call_or_return_candidate): Make static
3270         (pass_in_v_or_stack): Remove function.
3271         (pass_in_v_vfp_candidate): New function.
3272         (aarch64_push_dummy_call): Check for float register candidates.
3273
3274 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3275
3276         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3277         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3278         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3279
3280 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3281
3282         PR build/23399
3283         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3284         (struct ipa_sym_addresses): Rename to...
3285         (struct ipa_sym_addresses_common): ... this.
3286         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3287
3288 2018-08-28  Tom Tromey  <tom@tromey.com>
3289
3290         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3291         (token_fifo): Now a std::vector.
3292         (yylex, c_parse): Update.
3293         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3294         (token_fifo): Now a std::vector.
3295         (yylex, d_parse): Update.
3296         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3297         (token_fifo): Now a std::vector.
3298         (yylex, go_parse): Update.
3299
3300 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3301
3302         * parser-defs.h (struct type_stack) <elements>: Change type to
3303         std::vector<union type_stack_elt>.
3304         <depth, size>: Remove.
3305         * parse.c (parse_exp_in_context_1): Adjust.
3306         (type_stack_reserve): Remove.
3307         (check_type_stack_depth): Remove.
3308         (insert_into_type_stack): Adjust to std::vector.
3309         (insert_type): Likewise.
3310         (push_type): Likewise.
3311         (push_type_int): Likewise.
3312         (insert_type_address_space): Likewise.
3313         (pop_type): Likewise.
3314         (pop_type_int): Likewise.
3315         (pop_typelist): Likewise.
3316         (pop_type_stack): Likewise.
3317         (append_type_stack): Likewise.
3318         (push_type_stack): Likewise.
3319         (get_type_stack): Likewise.
3320         (type_stack_cleanup): Likewise.
3321         (push_typelist): Likewise.
3322         (follow_types): Likewise.
3323         (_initialize_parse): Likewise.
3324
3325 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3326
3327         * NEWS: Mention csky target.
3328
3329 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3330             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3331             Don Breazeal  <donb@codesourcery.com>
3332
3333         * csky-linux-tdep.c: New file.
3334         * csky-tdep.c: Likewise.
3335         * csky-tdep.h: Likewise.
3336         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3337         csky-tdep.o.
3338         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3339         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3340         * configure.tgt: Add csky support.
3341
3342 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3343
3344         * python/py-framefilter.c (py_print_frame): Print frame architecture
3345         when printing on an MI output.
3346
3347 2018-08-27  Tom Tromey  <tom@tromey.com>
3348
3349         PR build/23087:
3350         * configure: Rebuild.
3351         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3352
3353 2018-08-27  Tom Tromey  <tom@tromey.com>
3354
3355         * aarch64-linux-tdep.c
3356         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3357         casts to int.
3358
3359 2018-08-27  Tom Tromey  <tom@tromey.com>
3360
3361         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3362         unsigned.
3363         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3364         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3365         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3366         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3367         unsigned.
3368
3369 2018-08-27  Tom Tromey  <tom@tromey.com>
3370
3371         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3372         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3373
3374 2018-08-27  Tom Tromey  <tom@tromey.com>
3375
3376         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3377         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3378         ULONGEST_MAX.
3379         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3380         ULONGEST_MAX.
3381         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3382         ULONGEST_MAX.
3383         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3384         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3385         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3386         ULONGEST_MAX.
3387         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3388         (ppc64_linux_sigaction_tramp_frame)
3389         (ppc32_linux_sighandler_tramp_frame)
3390         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3391         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3392         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3393         * mn10300-linux-tdep.c (am33_linux_sigframe)
3394         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3395         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3396         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3397         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3398         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3399         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3400         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3401         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3402         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3403         * microblaze-linux-tdep.c
3404         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3405         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3406         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3407         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3408         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3409         * common/common-types.h (ULONGEST_MAX): New define.
3410         (CORE_ADDR_MAX): Fix formatting.
3411         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3412         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3413         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3414         (arm_linux_rt_sigreturn_tramp_frame)
3415         (arm_eabi_linux_sigreturn_tramp_frame)
3416         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3417         (thumb2_eabi_linux_sigreturn_tramp_frame)
3418         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3419         (arm_linux_restart_syscall_tramp_frame)
3420         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3421         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3422         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3423         ULONGEST_MAX.
3424         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3425
3426 2018-08-27  Tom Tromey  <tom@tromey.com>
3427
3428         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3429         CORE_ADDR_MAX.
3430         * mips-tdep.c (mips_deal_with_atomic_sequence)
3431         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3432         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3433         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3434         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3435         CORE_ADDR_MAX.
3436         * aarch64-tdep.c (aarch64_software_single_step): Use
3437         CORE_ADDR_MAX.
3438
3439 2018-08-27  Tom Tromey  <tom@tromey.com>
3440
3441         * linespec.c (complete_linespec_component): Add cast to "char".
3442         * completer.c (completion_tracker::build_completion_result): Add
3443         cast to "char".
3444
3445 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3446
3447         * solist.h (struct solist, struct target_so_ops): Fix
3448         indentation.
3449
3450 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3451
3452         * ada-tasks.c (ada_task_info_s): Remove typedef.
3453         (DEF_VEC_O(ada_task_info_s)): Remove.
3454         (struct ada_tasks_inferior_data): Initialize fields.
3455         <task_list>: Make an std::vector.
3456         (get_ada_tasks_inferior_data): Allocate with new.
3457         (ada_get_task_number): Adjust.
3458         (get_task_number_from_id): Likewise.
3459         (valid_task_id): Likewise.
3460         (ada_get_task_info_from_ptid): Likewise.
3461         (iterate_over_live_ada_tasks): Likewise.
3462         (add_ada_task): Likewise.
3463         (read_known_tasks): Likewise.
3464         (ada_build_task_list): Likewise.
3465         (print_ada_task_info): Likewise.
3466         (info_task): Likewise.
3467         (task_command_1): Likewise.
3468
3469 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3470
3471         * ada-lang.c (add_angle_brackets): Return std::string.
3472
3473 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3474
3475         * python/py-threadevent.c (py_get_event_thread): Initialize
3476         pythread.
3477
3478 2018-08-24  Pedro Alves  <palves@redhat.com>
3479
3480         * python/py-bpevent.c (create_breakpoint_event_object): Use
3481         copy-initialization.
3482         * python/py-continueevent.c (emit_continue_event): Use
3483         copy-initialization.
3484         * python/py-exitedevent.c (create_exited_event_object): Return a
3485         gdbpy_ref<>.
3486         (emit_exited_event): Use copy-initialization.
3487         * python/py-inferior.c (python_new_inferior)
3488         (python_inferior_deleted, add_thread_object): Use
3489         copy-initialization.
3490         * python/py-infevents.c (create_inferior_call_event_object)
3491         (create_register_changed_event_object)
3492         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3493         (emit_inferior_call_event, emit_memory_changed_event)
3494         (emit_register_changed_event): Use copy-initialization.
3495         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3496         Return a gdbpy_ref<>.
3497         (emit_new_objfile_event): Use copy-initialization.
3498         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3499         (emit_clear_objfiles_event): Use copy-initialization.
3500         * python/py-signalevent.c (create_signal_event_object): Use
3501         copy-initialization.
3502         * python/py-threadevent.c (create_thread_event_object): Use
3503         copy-initialization.
3504
3505 2018-08-24  Pedro Alves  <palves@redhat.com>
3506             Simon Marchi  <simon.marchi@ericsson.com>
3507
3508         PR gdb/23379
3509         * python/py-continueevent.c: Include "gdbthread.h".
3510         (create_continue_event_object): Add intro comment.  Add 'ptid'
3511         parameter.  Use it to find thread to pass to
3512         create_thread_event_object.
3513         (emit_continue_event): Pass PTID down to
3514         create_continue_event_object.
3515         * python/py-event.h (py_get_event_thread): Declare.
3516         (create_thread_event_object): Remove default from 'thread'
3517         parameter.
3518         * python/py-stopevent.c (create_stop_event_object): Use
3519         py_get_event_thread.
3520         * python/py-threadevent.c (get_event_thread): Rename to ...
3521         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3522         and use it to find the thread.
3523         (create_thread_event_object): Assert that THREAD isn't null.
3524         Don't find the event thread here.
3525
3526 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3527
3528         * block.h (blockrange, blockranges): New struct declarations.
3529         (struct block): Add new field named `ranges'.
3530         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3531         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3532         macros for accessing ranges in struct block.
3533         (make_blockranges): New declaration.
3534         block.c (make_blockranges): New function.
3535         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3536         for block.
3537         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3538         * blockframe.c (cache_pc_function_block): New static global.
3539         (clear_pc_function_cache): Clear cache_pc_function_block.
3540         (find_pc_partial_function): Move comment to symtab.h.  Add
3541         support for non-contiguous blocks.
3542         * cli/cli-cmds.c (block.h): Include.
3543         (print_disassembly): Handle printing of non-contiguous blocks.
3544         (disassemble_current_function): Likewise.
3545         (disassemble_command): Likewise.
3546
3547         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3548         BLOCK_START.
3549         * blockframe.c (get_pc_function_start): Likewise.
3550         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3551         (gcc_symbol_address): Likewise.
3552         * compile/compile-object-run.c (compile_object_run): Likewise.
3553         * compile/compile.c (get_expr_block_and_pc): Likewise.
3554         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3555         (func_addr_to_tail_call_list): Likewise.
3556         * findvar.c (default_read_var_value): Likewise.
3557         * inline-frame.c (inline_frame_this_id): Likewise.
3558         (skip-inline_frames): Likewise.
3559         * infcmd.c (until_next_command): Likewise.
3560         * linespec.c (convert_linespec_to_sals): Likewise.
3561         * parse.c (parse_exp_in_context_1): Likewise.
3562         * printcmd.c (build_address_symbolic): likewise.
3563         (info_address_command): Likewise.
3564         symtab.c (find_function_start_sal): Likewise.
3565         (skip_prologue_sal): Likewise.
3566         (find_function_alias_target): Likewise.
3567         (find_gnu_ifunc): Likewise.
3568         * stack.c (find_frame_funname): Likewise.
3569         * symtab.c (fixup_symbol_section): Likewise.
3570         (find_function_start_sal): Likewise.
3571         (skip_prologue_sal): Likewsie.
3572         (find_function_alias_target): Likewise.
3573         (find_gnu_ifunc): Likewise.
3574         * tracepoint.c (info_scope_command): Likewise.
3575         * value.c (value_fn_field): Likewise.
3576
3577         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3578         in place of find_pc_partial_function.
3579         * blockframe.c (find_function_entry_range_from_pc): New function.
3580         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3581         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3582         for each range in a block.
3583
3584
3585 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3586
3587         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3588         incrementation.
3589
3590 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3591
3592         * solib-svr4.c (read_program_headers_from_bfd): Return
3593         gdb::optional<gdb::byte_vector>.
3594         (svr4_exec_displacement): Adjust.
3595
3596 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3597
3598         * solib-svr4.c (read_program_header): Return
3599         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3600         (find_program_interpreter): Return
3601         gdb::optional<gdb::byte_vector>.
3602         (scan_dyntag_auxv): Adjust.
3603         (enable_break): Adjust.
3604         (svr4_exec_displacement): Adjust.
3605
3606 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3607
3608         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3609         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3610
3611 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3612
3613         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3614         string_vprintf.
3615         * guile/scm-utils.c (gdbscm_printf): Likewise.
3616         * serial.c (serial_printf): Likewise.
3617         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3618
3619 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3620
3621         * stack.c (print_frame): Print frame architecture when printing on
3622         an MI output.
3623         * NEWS: Mention new "arch" attribute in frame output.
3624
3625 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3626
3627         * arch/aarch64.h (aarch64_regnum): Update comment.
3628
3629 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3630
3631         * NEWS: Add SVE to 8.2 section.
3632
3633 2018-08-21  Pedro Alves  <palves@redhat.com>
3634
3635         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3636         out from gdbscm_parse_function_args.
3637         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3638         gdbscm_parse_function_args_1.
3639
3640 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3641
3642         PR gdb/17816
3643         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3644         operator.
3645
3646 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3647
3648         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3649
3650 2018-08-19  Michael Spang  <spang@google.com>
3651
3652         PR gdb/11786
3653         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3654         for PT_TLS segments.
3655
3656 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3657
3658         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3659         dwarf_variable_value.
3660         * dwarf2-frame.c (class dwarf_expr_executor):
3661         Add override for dwarf_variable_value.
3662         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3663         (class symbol_needs_eval_context): Likewise.
3664         (indirect_synthetic_pointer): Add forward declaration.
3665         (sect_variable_value): New function.
3666         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3667         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3668         for DW_OP_GNU_variable_value.
3669
3670 2018-08-16  Tom Tromey  <tom@tromey.com>
3671
3672         * top.c (read_command_file): Update.
3673         (command_line_input): Remove "repeat" argument.
3674         * ada-lang.c (get_selections): Update.
3675         * linespec.c (decode_line_2): Update.
3676         * defs.h (command_line_input): Remove argument.
3677         * cli/cli-script.c (read_next_line): Update.
3678         * python/py-gdb-readline.c: Update.
3679
3680 2018-08-17  Tom Tromey  <tom@tromey.com>
3681
3682         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3683         command_line_input.
3684
3685 2018-08-15  Tom Tromey  <tom@tromey.com>
3686
3687         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3688
3689 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3690
3691         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3692         If used, use find_pc_partial_function to find address range
3693         to disassemble.
3694         * mi/mi-main.c (mi_cmd_list_features): Report
3695         "data-disassemble-a-option" feature.
3696         * NEWS: Mention new -data-disassemble option -a.
3697
3698 2018-08-13  Tom Tromey  <tom@tromey.com>
3699
3700         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3701
3702 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3703
3704         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3705         (aarch64_linux_collect_sve_regset): Likewise.
3706         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3707         * regcache.h (regcache_map_entry_size): New function.
3708
3709 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3710
3711         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3712         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3713         (SVE_HEADER_VL_LENGTH): Likewise.
3714         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3715         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3716         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3717         (SVE_HEADER_SIZE_OFFSET): Likewise.
3718         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3719         (SVE_HEADER_VL_OFFSET): Likewise.
3720         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3721         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3722         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3723         (SVE_HEADER_SIZE): Likewise.
3724         (aarch64_linux_core_read_vq): Add function.
3725         (aarch64_linux_core_read_description): Check for SVE section.
3726
3727 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3728
3729         * aarch64-fbsd-tdep.c
3730         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3731         collect_size.
3732         * aarch64-linux-tdep.c
3733         (aarch64_linux_iterate_over_regset_sections): Likewise.
3734         * alpha-linux-tdep.c
3735         (alpha_linux_iterate_over_regset_sections):
3736         * alpha-nbsd-tdep.c
3737         (alphanbsd_iterate_over_regset_sections): Likewise.
3738         * amd64-fbsd-tdep.c
3739         (amd64fbsd_iterate_over_regset_sections): Likewise.
3740         * amd64-linux-tdep.c
3741         (amd64_linux_iterate_over_regset_sections): Likewise.
3742         * arm-bsd-tdep.c
3743         (armbsd_iterate_over_regset_sections): Likewise.
3744         * arm-fbsd-tdep.c
3745         (arm_fbsd_iterate_over_regset_sections): Likewise.
3746         * arm-linux-tdep.c
3747         (arm_linux_iterate_over_regset_sections): Likewise.
3748         * corelow.c (get_core_registers_cb): Likewise.
3749         (core_target::fetch_registers): Likewise.
3750         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3751         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3752         * gdbarch.h (void): Regenerate.
3753         * gdbarch.sh: Add supply_size and collect_size.
3754         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3755         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3756         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3757         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3758         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3759         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3760         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3761         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3762         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3763         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3764         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3765         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3766         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3767         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3768         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3769         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3770         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3771         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3772         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3773         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3774         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3775         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3776         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3777         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3778         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3779         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3780         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3781         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3782         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3783         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3784
3785 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3786
3787         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3788         with string_printf.
3789
3790 2018-08-10  Keith Seitz  <keiths@redhat.com>
3791
3792         * compile/compile-c-support.c (add_code_header, add_code_footer):
3793         Move into policy class.
3794         (c_push_user_expression, pop_user_expression_nop)
3795         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3796         (compile_program): New host class.
3797         (c_compile_program): New typedef.
3798         (c_compute_porgram): Use c_compile_program.
3799
3800 2018-08-10  Keith Seitz  <keiths@redhat.com>
3801
3802         * compile/compile-internal.h (compile_instance::~compile_instance):
3803         Remove calls to htab_delete.
3804         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3805         * compile.c (compile_instance::compile_instance): Initialize
3806         htab unique pointers.
3807         (compile_instance::get_cached_type, compile_instance::insert_type)
3808         (compile_instance::error_symbol_once): Update for unique_ptr.
3809
3810 2018-08-10  Keith Seitz  <keiths@redhat.com>
3811
3812         * compile/compile-c-symbols.c (struct symbol_error)
3813         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3814         (compile_instance::insert_symbol_error)
3815         (compile_instance::error_symbol_once): Move to ...
3816         * compile/compile.c: ... here.
3817
3818 2018-08-10  Keith Seitz  <keiths@redhat.com>
3819
3820         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3821         instead of `new_compile_instance'.
3822         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3823         Update description.
3824         If the symbol error map is not initialized, create it.
3825         (generate_c_for_for_one_symbol): Do not check/initialize
3826         the symbol error map.
3827         * compile/compile-c-types.c (compile_c_instance): Make a class.
3828         Update all callers.
3829         (compile_instance::compile_instance): Initialize the type cache.
3830         (get_cached_type): New function.
3831         (insert_type): Update description.
3832         (compile_c_instance::m_default_cflags): Define.
3833         (convert_type): Update description.  Use get_cached_type.
3834         (delete_instance): Moved to destructor.
3835         (new_compile_instance): Moved to constructor.
3836         * compile/compile-c.h (compile_c_instance): Make class inheriting
3837         from compile_instance.
3838         <base>: Remove field.
3839         <type_map, symbol_err_map>: Move to base class.
3840         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3841         * compile/compile-internal.h (compile_instance): Make class.
3842         <type_map_t, symbol_err_map_t>: Define.
3843         <fe>: Rename to `m_gcc_fe'.
3844         <scope, block, gcc_target_options>: Add `m_' prefix.
3845         <m_type_map, m_symbol_err_map>: New fields, moved from
3846         compile_c_instance.
3847         <destroy>: Remove.
3848         (convert_type, new_compile_instance): Remove.
3849         * compile/compile.c (cleanup_compile_instance): Remove.
3850         (compile_to_object): Use unique_ptr to eliminate cleanups.
3851         (compile_instance::set_print_callback, compile_instance::version)
3852         (compile_instance::set_verbose)
3853         (compile_instance::set_driver_filename)
3854         (compile_instance::set_triplet_regexp)
3855         (compile_instance::set_arguments)
3856         (compile_instance::set_source_file)
3857         (compile_instance::compile): Define.
3858
3859 2018-08-10  Keith Seitz  <keiths@redhat.com>
3860
3861         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3862         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3863         gcc-c-fe.def to define C plugin.
3864         (delete_instance): Delete `c_plugin'.
3865         (new_compile_instance): Initialize `c_plugin'.
3866         * compile/compile-c.h: Include gcc_c_plugin.h.
3867         (struct compile_c_instance) <c_plugin>: New member.
3868         * gcc-c-plugin.h: New file.
3869         Update all callers with API change.
3870
3871 2018-08-10  Keith Seitz  <keiths@redhat.com>
3872
3873         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3874         (HFILES_NO_SRCDIR): ... to here.
3875         Add compile-internal.h and compile-c.h.
3876         * compile/compile-c-support.c: Include compile-c.h.
3877         * compile/compile-c-symbols.c: Include compile-c.h.
3878         (generate_c_for_variable_locations): Update comment.
3879         * compile/compile-c-types.c: Include compile-c.h.
3880         * compile/compile-c.h: New file -- moved C language declarations
3881         from other files here.
3882         * compile/compile-internal.h: Do not include hashtab.h or
3883         common/enum-flags.h.
3884         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3885         (gcc_convert_symbol, gcc_symbol_address)
3886         (generate_c_for_variable_locations, c_get_mode_for_size)
3887         (c_get_range_decl_name): Definitions moved to compile-c.h.
3888         * compile/compile-loc2c.c: Include compile-c.h.
3889
3890 2018-08-10  Keith Seitz  <keiths@redhat.com>
3891
3892         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3893         (c_symbol_substitution_name): ... this.
3894         Update all callers.
3895
3896 2018-08-10  Keith Seitz  <keiths@redhat.com>
3897
3898         * compile/compile-c-support.c (c_compute_program): Use
3899         unique_xmalloc_ptr to eliminate cleanup.
3900         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3901         Return a unique_xmalloc_ptr and eliminate cleanup.
3902         * compile/compile-internal.h (generate_c_for_variable_locations):
3903         Return unique_xmalloc_ptr and update description.
3904
3905 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3906
3907         * corelow.c (core_target::get_core_register_section): Rename
3908         min_size to section_min_size.
3909
3910 2018-08-09  Jim Wilson  <jimw@sifive.com>
3911
3912         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3913         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3914         * NEWS: Mention new GNU/Linux RISC-V target.
3915         * configure.host: Add riscv*-*-linux*.
3916         * configure.nat: Add riscv*.
3917         * configure.tgt: Add riscv*-*-linux*.
3918         * riscv-linux-nat.c: New file.
3919         * riscv-linux-tdep.c: New file.
3920
3921 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3922
3923         * infrun.c (resume): Make static, add forward declaration.
3924         (proceed): Update header comment.
3925         * infrun.h (resume): Delete declaration.
3926
3927 2018-08-09  Tom Tromey  <tom@tromey.com>
3928
3929         * riscv-tdep.h: Minor formatting fixes.
3930
3931 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3932
3933         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3934         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3935         (test_mkdir_recursive): Likewise.
3936         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3937
3938 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3939
3940         * valarith.c (value_subscripted_rvalue): If an array is not in
3941         memory, and we don't know the upper bound, then we can't know that
3942         the requested element exists or not.
3943
3944 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3945
3946         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3947         (target_options_to_string): Add comment.
3948
3949 2018-08-08  Tom Tromey  <tom@tromey.com>
3950
3951         * unittests/scoped_mmap-selftests.c: Check result of "write".
3952
3953 2018-08-08  Jim Wilson  <jimw@sifive.com>
3954
3955         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3956         (decode_register_index_short): New.
3957         (decode_j_type_insn, decode_cj_type_insn): New.
3958         (decode_b_type_insn, decode_cb_type_insn): New.
3959         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3960         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3961         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3962         is_c_sw_insn instead of is_sw_insn.
3963         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3964         (riscv_software_single_step): New.
3965         * riscv-tdep.h (riscv_software_single_step): Declare.
3966
3967         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3968         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3969
3970 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3971
3972         PR gdb/18050:
3973         * target.c (dispose_inferior): Don't dispose of inferiors that are
3974         already killed.
3975
3976 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3977
3978         * remote.c (remote_target::download_tracepoint): Change char* to
3979         const char*.
3980
3981 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3982
3983         * target.h (target_options_to_string): Return an std::string.
3984         * target.c (str_comma_list_concat_elem): Return void, use
3985         std::string.
3986         (do_option): Likewise.
3987         (target_options_to_string): Return an std::string.
3988         * linux-nat.c (linux_nat_target::wait): Adjust.
3989         * target-debug.h (target_debug_print_options): Adjust.
3990
3991 2018-08-07  Tom Tromey  <tom@tromey.com>
3992
3993         * Makefile.in (CPPFLAGS): New variable.
3994         (INTERNAL_CPPFLAGS): Use it.
3995
3996 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3997
3998         * NEWS: Mention the index cache.
3999
4000 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4001
4002         * common/pathstuff.h (get_standard_cache_dir): New.
4003         * common/pathstuff.c (get_standard_cache_dir): New.
4004         * build-id.h (build_id_to_string): New.
4005         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4006         DEBUG_STR_SUFFIX): Move to here.
4007         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4008         DEBUG_STR_SUFFIX): Move from there.
4009         (write_psymtabs_to_index): Make non-static, add basename
4010         parameter.  Write to temporary files, rename when done.
4011         (save_gdb_index_command): Adjust call to
4012         write_psymtabs_to_index.
4013         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4014         field.
4015         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4016         (get_gdb_index_contents_from_cache): New.
4017         (get_gdb_index_contents_from_cache_dwz): New.
4018         (dwarf2_initialize_objfile): Read index from cache.
4019         (dwarf2_build_psymtabs): Save to index.
4020         * dwarf-index-cache.h: New file.
4021         * dwarf-index-cache.c: New file.
4022         * dwarf-index-write.h: New file.
4023
4024 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4025
4026         * gnulib/aclocal.m4: Re-generate.
4027         * gnulib/config.in: Re-generate.
4028         * gnulib/configure: Re-generate.
4029         * gnulib/import/Makefile.am: Re-generate.
4030         * gnulib/import/Makefile.in: Re-generate.
4031         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4032         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4033         * gnulib/import/m4/mkdir.m4: New file.
4034         * gnulib/import/mkdir.c: New file.
4035         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4036         module.
4037
4038 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4039
4040         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4041         * common/scoped_mmap.c: New file.
4042         * common/scoped_mmap.h (destroy): New method.
4043         (~scoped_mmap, reset): Use destroy.
4044         (scoped_mmap): New move constructor.
4045         (mmap_file): New declaration.
4046         * unittests/scoped_mmap-selftests.c (test_normal,
4047         test_invalid_filename, run_tests): New functions.
4048         (_initialize_scoped_mmap_selftests): Register selftest.
4049
4050 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4051
4052         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4053         (read_gdb_index_from_buffer): ... this.  Remove section
4054         parameter, add buffer parameter.
4055         (get_gdb_index_contents_ftype,
4056         get_gdb_index_contents_dwz_ftype): New typedefs.
4057         (dwarf2_read_gdb_index): Add callback parameters to get the
4058         index contents.
4059         (get_gdb_index_contents_from_section): New.
4060         (dwarf2_initialize_objfile): Update call to
4061         dwarf2_read_gdb_index.
4062
4063 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4064
4065         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4066         (gdb_open_cloexec): Likewise.
4067         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4068         (commandline_from_pid): Likewise.
4069         (linux_xfer_osdata_threads): Likewise.
4070         (linux_xfer_osdata_fds): Likewise.
4071         * ada-lang.c (is_package_name): Likewise.
4072         * auxv.c (procfs_xfer_auxv): Likewise.
4073         * breakpoint.c (print_one_breakpoint_location): Use
4074         uiout::field_fmt.
4075         (print_one_catch_solib): Use string_printf.
4076         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4077         (add_pe_forwarded_sym): Likewise.
4078         * dwarf2read.c (create_type_unit_group): Likewise.
4079         (build_error_marker_type): Likewise.
4080         * infcall.c (get_function_name): Likewise.
4081         * valprint.c (print_converted_chars_to_obstack): Likewise.
4082         * xtensa-tdep.c (xtensa_register_type): Likewise.
4083
4084 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4085
4086         * remote.c (remote_target::download_tracepoint): Fix format
4087         string errors.
4088
4089 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4090
4091         * tracefile.c: Include common/byte-vector.h.
4092         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4093         with trace_regblock_size if needed.  Update uses of buf.
4094
4095 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4096
4097         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4098         std::vector<unsigned char>.
4099         * tracepoint.c (collection_list::collection_list): Remove
4100         m_regs_mask initializer from initializer list.  Resize
4101         m_regs_mask using the largest remote register number.
4102         (collection_list::add_remote_register): Remove size check on
4103         m_regs_mask.  Use at to access element.
4104         (collection_list::stringify): Change type of temp_buf to
4105         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4106         stringify the register mask.  Use pack_hex_byte for the register
4107         mask.
4108
4109 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4110
4111         * tracepoint.h (class collection_list) <add_register>: Remove.
4112         <add_remote_register, add_ax_registers, add_local_register>:
4113         Declare.
4114         <add_memrange>: Add scope parameter.
4115         * tracepoint.c (encode_actions_1): Likewise.
4116         (collection_list::add_register): Rename to ...
4117         (collection_list::add_remote_register): ... this.  Update
4118         comment.
4119         (collection_list::add_ax_registers, add_local_register): New
4120         methods.
4121         (collection_list::add_memrange): Add scope parameter.  Call
4122         add_local_register instead of add_register.
4123         (finalize_tracepoint_aexpr): New function.
4124         (collection_list::collect_symbol): Update calls to add_memrange.
4125         Call add_local_register instead of add_register.  Call
4126         add_ax_registers.  Call finalize_tracepoint_aexpr.
4127         (encode_actions_1): Get remote regnos for $reg action.  Call
4128         add_remote_register, add_ax_registers, and add_local_register.
4129         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4130         (validate_actionline): Call finalize_tracepoint_aexpr.
4131
4132 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4133
4134         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4135         Replace array buf with gdb::char_vector buf, of size
4136         get_remote_packet_size ().  Replace references to buf and
4137         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4138         and xsnprintf with snprintf.  Raise errors if the buffer is too
4139         small.
4140
4141 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4142
4143         * remote.c (remote_target::download_tracepoint): Fix the has_more
4144         predicate in the QTDP action list iteration.
4145
4146 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4147
4148         * remote.c (remote_target::download_tracepoint): Fix indentation
4149         in for block.
4150
4151 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4152
4153         * proc-api.c (_initialize_proc_api): Remove c, unused.
4154         * procfs.c (procfs_init_inferior): Remove signals, unused.
4155         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4156         unused.
4157
4158 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4159             Andrew Burgess  <andrew.burgess@embecosm.com>
4160
4161         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4162         'W_STOPCODE (0)' as this could be ambiguous.
4163
4164 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4165
4166         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4167         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4168         "ai_socktype").
4169
4170 2018-08-02  Tom Tromey  <tom@tromey.com>
4171
4172         PR symtab/16842.
4173         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4174         symbols.
4175         (process_structure_scope): Likewise.
4176
4177 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4178
4179         PR gdb/22629:
4180         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4181         kill inferior.
4182
4183 2018-08-02  Tom Tromey  <tom@tromey.com>
4184
4185         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4186         (darwin_suspend_inferior, darwin_resume_inferior)
4187         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4188         (darwin_check_new_threads): Check result of get_darwin_inferior.
4189
4190 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4191
4192         GDB 8.1.1 released.
4193
4194 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4195
4196         * varobj.c (varobj_get_path_expr_parent): Report an error if
4197         parent is a dynamic varobj.
4198
4199 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4200
4201         * gnulib/aclocal.m4: Re-generate.
4202         * gnulib/config.in: Re-generate.
4203         * gnulib/configure: Re-generate.
4204         * gnulib/import/Makefile.in: Re-generate.
4205         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4206         * gnulib/import/m4/onceonly.m4: Re-generate.
4207
4208 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4209
4210         * target-descriptions.c (struct xml_test_tdesc): New.
4211         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4212         (record_xml_tdesc): Update.
4213         (maintenance_check_xml_descriptions): Update.
4214         * target-descriptions.h (record_xml_tdesc): Update comment.
4215
4216 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4217
4218         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4219         checking array bounds are defined.
4220
4221 2018-07-30  Tom Tromey  <tom@tromey.com>
4222
4223         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4224         irreflexivity violation.
4225
4226 2018-07-30  Tom Tromey  <tom@tromey.com>
4227
4228         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4229         * value.c (unpack_long): Remove lint code.
4230         * valops.c (value_ind): Remove lint code.
4231         * valarith.c (value_x_binop, value_x_unop, value_equal)
4232         (value_pos): Remove lint code.
4233
4234 2018-07-28  Tom de Vries  <tdevries@suse.de>
4235
4236         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4237         with undefined upper bound as <optimized out>.
4238
4239 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4240
4241         * gcore.in: Rename variable "name" to "prefix".  Expand
4242         "usage" text.
4243
4244 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4245
4246         * windows-nat.c (windows_nat_target::create_inferior): Update to
4247         call close() in global namespace.
4248
4249 2018-07-26  Tom Tromey  <tom@tromey.com>
4250
4251         * dwarf-index-write.c (add_address_entry): Don't add objfile
4252         offsets.
4253         * dbxread.c (find_stab_function): Rename from
4254         find_stab_function_addr.  Return a bound_minimal_symbol.
4255         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4256         Don't add objfile offsets.
4257         (end_psymtab): Use raw_text_low, raw_text_high,
4258         MSYMBOL_VALUE_RAW_ADDRESS.
4259         (read_ofile_symtab): Update.
4260         (process_one_symbol): Update.
4261         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4262         offsets.
4263         (dw2_relocate): Remove.
4264         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4265         searching addrmap.
4266         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4267         Update.
4268         (process_psymtab_comp_unit_reader, add_partial_symbol)
4269         (add_partial_subprogram, dwarf2_ranges_read): Update.
4270         (load_partial_dies): Update.
4271         (add_address_entry): Don't add objfile offsets.
4272         (dwarf2_build_include_psymtabs): Update.
4273         (create_addrmap_from_aranges): Don't add objfile offsets.
4274         (dw2_find_pc_sect_compunit_symtab): Update.
4275         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4276         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4277         Update.
4278         (parse_partial_symbols): Don't add objfile offsets.  Use
4279         raw_text_low, raw_text_high.  Update.
4280         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4281         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4282         or call 'relocate' quick function.  Clear psymbol_map.
4283         * psympriv.h (struct partial_symbol) <address>: Add section
4284         offset.
4285         <set_unrelocated_address>: Rename from set_address.
4286         <raw_text_low, raw_text_high>: New methods.
4287         <text_low, text_high>: Add objfile parameter.
4288         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4289         set_unrelocated_address.
4290         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4291         (find_pc_psymbol): Update.
4292         (fixup_psymbol_section, relocate_psymtabs): Remove.
4293         (dump_psymtab, psym_functions): Update.
4294         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4295         parameter.
4296         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4297         (start_psymtab_common): Update.
4298         * symfile-debug.c (debug_qf_relocate): Remove.
4299         (debug_sym_quick_functions): Update.
4300         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4301         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4302         Update.
4303
4304 2018-07-26  Tom Tromey  <tromey@redhat.com>
4305
4306         * dbxread.c (end_psymtab): Use text_high_valid and
4307         text_low_valid.
4308         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4309         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4310         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4311         Update comment.
4312         <text_low_valid, text_high_valid>: New fields.
4313         <set_text_low, set_text_high>: Update.
4314         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4315
4316 2018-07-26  Tom Tromey  <tom@tromey.com>
4317
4318         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4319         Update.
4320         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4321         textlow and texthigh fields.
4322         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4323         Update.
4324         * mdebugread.c (parse_lines, parse_partial_symbols)
4325         (psymtab_to_symtab_1): Update.
4326         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4327         Rename fields.  Update comment.  Now private.
4328         <text_low, text_high, set_text_low, set_text_high>: New methods.
4329         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4330         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4331         (start_psymtab_common, maintenance_info_psymtabs)
4332         (maintenance_check_psymtabs): Update.
4333         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4334         texthigh fields.
4335         (scan_xcoff_symtab): Update.
4336
4337 2018-07-26  Tom Tromey  <tromey@redhat.com>
4338
4339         * psympriv.h (struct partial_symbol) <unrelocated_address,
4340         address, set_address>: New methods.
4341         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4342         (fixup_psymbol_section, relocate_psymtabs): Update.
4343         (print_partial_symbols): Add 'objfile' parameter.  Update.
4344         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4345         Update.
4346
4347 2018-07-26  Tom Tromey  <tom@tromey.com>
4348
4349         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4350         (debug_names::write_psymbols): Update.
4351         * psympriv.h (struct partial_symbol): Derive from
4352         general_symbol_info.
4353         <obj_section>: New method.
4354         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4355         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4356         (find_pc_sect_psymbol, fixup_psymbol_section)
4357         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4358         (print_partial_symbols, recursively_search_psymtabs)
4359         (compare_psymbols, psymbol_hash, psymbol_compare)
4360         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4361         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4362
4363 2018-07-26  Tom Tromey  <tromey@redhat.com>
4364
4365         * dbxread.c (end_psymtab): Remove dead code.
4366
4367 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4368
4369         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4370         DWARF unwinders are disabled.
4371         * dwarf2-frame.c: Add dwarf2read.h include.
4372         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4373         disabled.
4374         (dwarf2_frame_unwinders_enabled_p): Define.
4375         (show_dwarf_unwinders_enabled_p): New function.
4376         (_initialize_dwarf2_frame): Register switch to control DWARF
4377         unwinder use.
4378         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4379         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4380         (show_dwarf_cmdlist): Remove static keyword.
4381         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4382         (show_dwarf_cmdlist): Declare.
4383         * NEWS: Document new feature.
4384
4385 2018-07-26  Tom de Vries  <tdevries@suse.de>
4386
4387         PR breakpoints/23366
4388         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4389
4390 2018-07-26  Tom de Vries  <tdevries@suse.de>
4391
4392         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4393         DW_AT_count can't be translated to a dynamic prop.
4394
4395 2018-07-25  Tom de Vries  <tdevries@suse.de>
4396
4397         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4398         try/catch.
4399
4400 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4401
4402         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4403
4404 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4405
4406         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4407
4408 2018-07-24  Keith Seitz  <keiths@redhat.comt
4409
4410         PR symtab/23010
4411         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4412         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4413         instead of add_symbol_to_list.
4414         (read_file_scope): Call prepare_one_comp_unit before reading
4415         any other DIEs.
4416
4417 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4418
4419         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4420
4421 2018-07-24  Tom Tromey  <tom@tromey.com>
4422
4423         * utils.c (malloc, realloc, free): Don't declare.
4424         * configure, config.in: Rebuild.
4425         * configure.ac: Don't check for declarations of free, malloc, or
4426         realloc.
4427
4428 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4429
4430         * aarch64-linux-nat.c
4431         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4432         variable.
4433         * arm-linux-nat.c (fetch_regs): Likewise.
4434         (store_regs): Likewise.
4435         (fetch_vfp_regs): Likewise.
4436         (store_vfp_regs): Likewise.
4437         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4438         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4439         (arm_linux_nat_target::insert_watchpoint): Likewise.
4440         (arm_linux_nat_target::remove_watchpoint): Likewise.
4441         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4442         Likewise.
4443         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4444         Likewise.
4445         * ppc-linux-nat.c (fetch_register): Likewise.
4446         (fetch_all_gp_regs): Likewise.
4447         (fetch_ppc_registers): Likewise.
4448         (store_all_gp_regs): Likewise.
4449         (store_ppc_registers): Likewise.
4450         (hwdebug_insert_point): Likewise.
4451         (can_use_watchpoint_cond_accel): Likewise.
4452         * remote-sim.c (gdb_os_write_stdout): Likewise.
4453
4454 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4455             Tom Tromey  <tom@tromey.com>
4456
4457         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4458         test for it.
4459         * configure: Rebuild.
4460
4461 2018-07-22  Tom Tromey  <tom@tromey.com>
4462
4463         * regformats/regdat.sh: Define xmltarget_${name} inside
4464         #ifndef IN_PROCESS_AGENT.
4465
4466 2018-07-22  Tom Tromey  <tom@tromey.com>
4467
4468         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4469
4470 2018-07-22  Tom Tromey  <tom@tromey.com>
4471
4472         * symfile.c (reread_symbols): Notify iter, not objfile.
4473
4474 2018-07-22  Tom Tromey  <tom@tromey.com>
4475
4476         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4477         Use arch_ops.
4478         (ravenscar_thread_target::prepare_to_store): Likewise.
4479
4480 2018-07-22  Tom Tromey  <tom@tromey.com>
4481
4482         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4483         unused variable.  Call value_fetch_lazy when needed.
4484         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4485         Remove unused variable.  Call value_fetch_lazy when needed.
4486
4487 2018-07-22  Tom Tromey  <tom@tromey.com>
4488
4489         * m32c-tdep.c (mark_dma): Return void.
4490         (make_regs): Remove unused declarations.
4491
4492 2018-07-22  Tom Tromey  <tom@tromey.com>
4493
4494         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4495         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4496         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4497         bkscm_get_valid_block_smob_arg_unsafe for effect.
4498
4499 2018-07-22  Tom Tromey  <tom@tromey.com>
4500
4501         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4502         value_type.
4503
4504 2018-07-22  Tom Tromey  <tom@tromey.com>
4505
4506         * windows-nat.c (saved_context): Conditionally define.
4507         * remote.c (remote_target::remote_btrace_maybe_reopen):
4508         Conditionally declare "warned".
4509         * inflow.c (sigquit_ours): Conditionally define.
4510         (new_tty): Move "tty" declaration inside #if.
4511         * guile/guile.c (guile_datadir): Conditionally define.
4512         * charset.c (set_be_le_names): Move some declarations inside #if.
4513         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4514         #if.
4515         (parse_xml_btrace_conf): Likewise.
4516
4517 2018-07-22  Tom Tromey  <tom@tromey.com>
4518
4519         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4520
4521 2018-07-22  Tom Tromey  <tom@tromey.com>
4522
4523         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4524         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4525         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4526         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4527         * stack.c (frame_apply_level_command): Remove unused variable.
4528         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4529         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4530         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4531         unused variable.
4532         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4533         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4534         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4535         variable.
4536         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4537         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4538         variable.
4539         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4540         Remove unused variable.
4541         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4542         variable.
4543         * common/tdesc.c (print_xml_feature::visit): Remove unused
4544         variable.
4545         * compile/compile-object-load.c (store_regs): Remove unused
4546         variables.
4547         * complaints.c (clear_complaints): Remove unused variable.
4548         * corelow.c (core_target_open): Remove unused variable.
4549         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4550         variable.
4551         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4552         variable.
4553         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4554         variable.
4555         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4556         variable.
4557         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4558         variable.
4559         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4560         variable.
4561         * ia64-tdep.c (examine_prologue): Remove unused variable.
4562         * infcall.c (run_inferior_call): Remove unused variable.
4563         * inferior.c (exit_inferior): Remove unused variable.
4564         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4565         * linespec.c (decode_line_2): Remove unused variable.
4566         * linux-nat.c (super_close): Remove.
4567         * linux-tdep.c (linux_info_proc): Remove unused variable.
4568         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4569         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4570         Remove unused variable.
4571         * parse.c (find_minsym_type_and_address): Remove unused variable.
4572         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4573         variable.
4574         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4575         variable.
4576         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4577         variables.
4578         * record-btrace.c (record_btrace_target::store_registers): Remove
4579         unused variable.
4580         (cmd_show_record_btrace_cpu): Remove unused variable.
4581         * riscv-tdep.c (riscv_register_reggroup_p)
4582         (riscv_push_dummy_call, riscv_return_value): Remove unused
4583         variable.
4584         * rust-exp.y (literal): Remove unused variable.
4585         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4586         unused variable.
4587         <STRUCTOP_ANONYMOUS>: Likewise.
4588         * s390-linux-tdep.c (s390_linux_init_abi_31)
4589         (s390_linux_init_abi_64): Remove unused variable.
4590         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4591         (file_select_thread, net_windows_open, _initialize_ser_windows):
4592         Remove unused variables.
4593         * symtab.c (find_pc_sect_line): Remove unused variable.
4594         * target-memory.c (compute_garbled_blocks): Remove unused
4595         variable.
4596         (target_write_memory_blocks): Remove unused variable.
4597         * target.c (target_stack::unpush): Remove unused variables.
4598         * tracepoint.c (start_tracing, all_tracepoint_actions)
4599         (merge_uploaded_trace_state_variables)
4600         (print_one_static_tracepoint_marker): Remove unused variable.
4601         * unittests/basic_string_view/element_access/char/1.cc (test01):
4602         Remove unused variable.
4603         * windows-nat.c (windows_continue, windows_add_all_dlls)
4604         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4605         Remove unused variables.
4606
4607 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4608
4609         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4610         attr_profile in HAVE_ELF.
4611         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4612         HAVE_ELF.
4613
4614 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4615
4616         * frame.c (frame_register_unwind): Change parameter name.
4617         (frame_unwind_register): Likewise.
4618         (frame_unwind_register_value): Likewise.
4619         (frame_unwind_register_signed): Likewise.
4620         (frame_unwind_register_unsigned): Likewise.
4621         * frame.h (frame_register_unwind): Likewise.
4622         (frame_unwind_register): Likewise.
4623         (frame_unwind_register_value): Likewise.
4624         (frame_unwind_register_signed): Likewise.
4625         (frame_unwind_register_unsigned): Likewise.
4626         (frame_unwind_arch): Likewise.
4627
4628 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4629
4630         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4631         ISA maintenance.
4632
4633 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4634
4635         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4636         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4637         hand.
4638
4639 2018-07-20  Keith Seitz  <keiths@redhat.com>
4640
4641         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4642         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4643         m_compunit_symtab, m_language>: Add "m_" prefix.
4644         Update all uses.
4645         * buildsym.c: Update all uses.
4646
4647 2018-07-20  Tom Tromey  <tom@tromey.com>
4648
4649         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4650         * buildsym.h (record_line_ftype): Remove typedef.
4651
4652 2018-07-20  Tom Tromey  <tom@tromey.com>
4653
4654         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4655         (end_expandable_symtab): Likewise.
4656         (end_symtab_get_static_block): Likewise.
4657         (end_symtab_from_static_block): Likewise.
4658         * buildsym-legacy.c (augment_type_symtab): Remove.
4659         (end_expandable_symtab): Remove.
4660         (end_symtab_get_static_block): Remove.
4661         (end_symtab_from_static_block): Remove.
4662
4663 2018-07-20  Tom Tromey  <tom@tromey.com>
4664
4665         * dwarf2read.c: Include buildsym.h.
4666         (struct dwarf2_cu) <builder>: New method.
4667         (fixup_go_packaging): Update.
4668         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4669         use scoped_free_pendings.
4670         (using_directives): Add "cu" parameter, remove "language".
4671         (read_import_statement, setup_type_unit_groups, )
4672         (read_func_scope, read_lexical_block_scope)
4673         (dwarf2_record_block_ranges, read_namespace): Update.
4674         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4675         (lnp_state_machine::handle_end_sequence): Update.
4676         (class lnp_state_machine) <m_cu>: New member.
4677         <m_record_line_callback>: Remove.
4678         <m_currently_recording_lines>: New member.
4679         (lnp_state_machine::handle_set_file): Update.
4680         (noop_record_line): Remove.
4681         (dwarf_record_line_p): Add cu parameter.
4682         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4683         (lnp_state_machine::record_line)
4684         (lnp_state_machine::lnp_state_machine)
4685         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4686         (dwarf_decode_lines): Update.
4687         (dwarf2_start_subfile): Add cu parameter.
4688         (dwarf2_start_symtab, new_symbol): Update.
4689         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4690         Remove dwarf2_per_objfile parameter.
4691         (dwarf_decode_macros): Update.
4692
4693 2018-07-20  Tom Tromey  <tom@tromey.com>
4694
4695         * stabsread.c (define_symbol): Update.
4696         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4697         * dwarf2read.c (new_symbol): Update.
4698         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4699         * cp-namespace.c: Include buildsym.h.
4700         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4701         * buildsym-legacy.c (get_buildsym_compunit): New function.
4702
4703 2018-07-20  Tom Tromey  <tom@tromey.com>
4704
4705         * xcoffread.c: Include buildsym-legacy.h.
4706         * windows-nat.c: Include buildsym-legacy.h.
4707         * stabsread.c: Include buildsym-legacy.h.
4708         * mdebugread.c: Include buildsym-legacy.h.
4709         * buildsym-legacy.h: New file.
4710         * buildsym-legacy.c: New file, from buildsym.c.
4711         * go32-nat.c: Include buildsym-legacy.h.
4712         * dwarf2read.c: Include buildsym-legacy.h.
4713         * dbxread.c: Include buildsym-legacy.h.
4714         * cp-namespace.c: Include buildsym-legacy.h.
4715         * coffread.c: Include buildsym-legacy.h.
4716         * buildsym.h: Move some contents to buildsym-legacy.h.
4717         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4718         buildsym-legacy.c.
4719         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4720
4721 2018-07-20  Tom Tromey  <tom@tromey.com>
4722
4723         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4724         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4725         (buildsym_compunit::buildsym_compunit)
4726         (buildsym_compunit::~buildsym_compunit)
4727         (buildsym_compunit::get_macro_table): Define.
4728
4729 2018-07-20  Tom Tromey  <tom@tromey.com>
4730
4731         * buildsym.c (reset_symtab_globals): Remove.
4732         (buildsym_compunit::end_symtab_from_static_block): Update.
4733         (buildsym_compunit::augment_type_symtab): Update.
4734         (end_symtab_from_static_block): Call free_buildsym_compunit.
4735         (augment_type_symtab, end_symtab, end_expandable_symtab):
4736         Likewise.
4737
4738 2018-07-20  Tom Tromey  <tom@tromey.com>
4739
4740         * arch-utils.c: Do not include buildsym.h.
4741         * mipsread.c: Do not include buildsym.h.
4742         * machoread.c: Do not include buildsym.h.
4743         * elfread.c: Do not include buildsym.h.
4744
4745 2018-07-20  Tom Tromey  <tom@tromey.com>
4746
4747         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4748         initialization.
4749         (buildsym_compunit): Add new constructor.
4750         (struct buildsym_compunit) <get_last_source_file, finish_block,
4751         record_block_range, start_subfile, patch_subfile_names,
4752         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4753         set_last_source_start_addr, get_last_source_start_addr,
4754         get_local_using_directives, set_local_using_directives,
4755         get_global_using_directives, outermost_context_p,
4756         get_current_context_stack, get_context_stack_depth,
4757         get_current_subfile, get_local_symbols, get_file_symbols,
4758         get_global_symbols, record_debugformat, record_producer,
4759         push_context, pop_context, end_symtab_get_static_block,
4760         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4761         New public methods.
4762         <record_pending_block, finish_block_internal, make_blockvector,
4763         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4764         private methods.
4765         Update all users.
4766
4767 2018-05-22  Tom Tromey  <tom@tromey.com>
4768
4769         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4770         parameter.
4771         (finish_block_internal): Update.
4772
4773 2018-07-20  Tom Tromey  <tom@tromey.com>
4774
4775         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4776         parameter.
4777         (finish_block_internal): Update.
4778
4779 2018-07-20  Tom Tromey  <tom@tromey.com>
4780
4781         * buildsym.h (EXTERN): Don't define or undef.
4782         * buildsym.c (EXTERN): Don't define.
4783
4784 2018-07-20  Tom Tromey  <tom@tromey.com>
4785
4786         * buildsym.c: Remove TODO comment.
4787
4788 2018-07-20  Tom Tromey  <tom@tromey.com>
4789
4790         * coffread.c (coff_symtab_read): Update.
4791         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4792         (xcoff_new_init): Update.
4793         * mipsread.c (mipscoff_new_init): Update.
4794         * mdebugread.c (mdebug_build_psymtabs): Update.
4795         * elfread.c (elf_new_init): Update.
4796         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4797         Update.
4798         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4799         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4800         (stabsect_build_psymtabs): Update.
4801         * buildsym.h (buildsym_init): Don't declare.
4802         * buildsym.c: Update comment.
4803         (prepare_for_building): Remove.
4804         (start_symtab, restart_symtab): Update.
4805         (reset_symtab_globals): Update comment.
4806         (buildsym_init): Remove.
4807
4808 2018-07-20  Tom Tromey  <tom@tromey.com>
4809
4810         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4811         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4812         (read_enum_type, common_block_start, common_block_end)
4813         (cleanup_undefined_types_1, finish_global_stabs): Update.
4814         * mdebugread.c (psymtab_to_symtab_1): Update.
4815         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4816         (read_lexical_block_scope, new_symbol): Update.
4817         * dbxread.c (process_one_symbol): Update.
4818         * coffread.c (coff_symtab_read, process_coff_symbol)
4819         (coff_read_enum_type): Update.
4820         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4821         declare.
4822         (get_local_symbols, get_file_symbols, get_global_symbols): New
4823         functions.
4824         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4825         m_global_symbols.
4826         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4827         (~scoped_free_pendings): Update.
4828         (finish_block, prepare_for_building, reset_symtab_globals)
4829         (end_symtab_get_static_block, end_symtab_with_blockvector)
4830         (augment_type_symtab, push_context): Update.
4831         (get_local_symbols, get_file_symbols, get_global_symbols): New
4832         functions.
4833         (buildsym_init): Update.
4834
4835 2018-07-20  Tom Tromey  <tom@tromey.com>
4836
4837         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4838         (process_full_type_unit): Likewise.
4839         (dwarf2_start_symtab): Set list_in_scope.
4840
4841 2018-07-20  Tom Tromey  <tom@tromey.com>
4842
4843         * dwarf2read.c (process_psymtab_comp_unit_reader)
4844         (build_type_psymtabs_reader): Do not set list_in_scope.
4845
4846 2018-07-20  Tom Tromey  <tom@tromey.com>
4847
4848         * buildsym.c (free_pendings): Remove.
4849         (add_symbol_to_list, scoped_free_pendings)
4850         (finish_block_internal, buildsym_init): Update.
4851
4852 2018-07-20  Tom Tromey  <tom@tromey.com>
4853
4854         * xcoffread.c (read_xcoff_symtab): Update.
4855         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4856         Update.
4857         * dbxread.c (process_one_symbol): Update.
4858         * coffread.c (coff_symtab_read): Update.
4859         * buildsym.h (finish_block): Update.
4860         * buildsym.c (finish_block): Remove "listhead" argument.
4861         (end_symtab_get_static_block): Update.
4862
4863 2018-07-20  Tom Tromey  <tom@tromey.com>
4864
4865         * buildsym.h (class scoped_free_pendings): Remove constructor.
4866         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4867         method.
4868         <m_pending_block_obstack, m_pending_blocks>: New members.
4869         (pending_block_obstack, pending_blocks): Remove.
4870         (scoped_free_pendings::scoped_free_pendings): Default.
4871         (~scoped_free_pendings): Update.
4872         (free_pending_blocks): Remove.
4873         (finish_block_internal, record_pending_block, make_blockvector)
4874         (end_symtab_get_static_block, augment_type_symtab, push_context)
4875         (buildsym_init): Update.
4876
4877 2018-07-20  Tom Tromey  <tom@tromey.com>
4878
4879         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4880         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4881         members.
4882         (pending_addrmap, pending_addrmap_obstack)
4883         (pending_addrmap_interesting): Remove.
4884         (scoped_free_pendings, record_block_range, make_blockvector)
4885         (prepare_for_building, reset_symtab_globals, buildsym_init):
4886         Update.
4887
4888 2018-07-20  Tom Tromey  <tom@tromey.com>
4889
4890         * xcoffread.c (process_linenos): Update.
4891         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4892         * mdebugread.c (psymtab_to_symtab_1): Update.
4893         * dwarf2read.c (setup_type_unit_groups)
4894         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4895         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4896         * dbxread.c (process_one_symbol): Update.
4897         * coffread.c (coff_symtab_read, enter_linenos)
4898         (process_coff_symbol): Update.
4899         * buildsym.h (current_subfile): Don't declare.
4900         (get_current_subfile): Declare.
4901         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4902         member.
4903         (start_subfile, free_buildsym_compunit, push_subfile)
4904         (prepare_for_building, start_symtab): Update.
4905         (get_current_subfile): New function.
4906
4907 2018-07-20  Tom Tromey  <tom@tromey.com>
4908
4909         * coffread.c (coff_symtab_read): Update.
4910         * xcoffread.c (read_xcoff_symtab): Update.
4911         * dwarf2read.c (new_symbol): Update.
4912         (read_func_scope, read_lexical_block_scope): Update.
4913         * dbxread.c (process_one_symbol): Update.
4914         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4915         (outermost_context_p): Remove macro.
4916         (outermost_context_p, get_current_context_stack)
4917         (get_context_stack_depth): Declare.
4918         (pop_context): Return struct context_stack.
4919         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4920         member.
4921         (context_stack_size): Remove.
4922         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4923         (prepare_for_building, end_symtab_get_static_block)
4924         (augment_type_symtab, push_context): Update.
4925         (pop_context): Return struct context_stack.
4926         (outermost_context_p, get_current_context_stack)
4927         (get_context_stack_depth): New functions.
4928         (buildsym_init): Update.
4929
4930 2018-07-20  Tom Tromey  <tom@tromey.com>
4931
4932         * rust-exp.y: Now a pure parser.  Update all rules.
4933         (%union): Move earlier.
4934         (current_parser, work_obstack): Remove globals.
4935         (rust_parser, ~rust_parser): Update.
4936         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4937         lex_character, lex_number, lex_string, lex_identifier,
4938         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4939         convert_name, convert_params_to_expression,
4940         convert_ast_to_expression, ast_basic_type, ast_operation,
4941         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4942         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4943         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4944         ast_array_type, ast_slice_type, ast_reference_type,
4945         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4946         (rust_parse): Update.
4947         (rustyyerror, rustyylex): Add parser parameter.
4948         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4949         (rust_lex_stringish_test, rust_lex_test_sequence)
4950         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4951         (rust_lex_test_push_back, rust_lex_tests): Update.
4952
4953 2018-07-19  Pedro Alves  <palves@redhat.com>
4954
4955         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4956         gdb::unique_xmalloc_ptr.
4957         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4958         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4959         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4960         copy-initialization.
4961         * guile/scm-pretty-print.c (ppscm_print_children): Use
4962         gdb::unique_xmalloc_ptr instead of cleanups.
4963         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4964         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4965         gdb::unique_xmalloc_ptr.
4966         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4967         Adjust to use gdb::unique_xmalloc_ptr.
4968         * guile/scm-utils.c (extract_arg): Adjust.
4969         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4970         gdb::unique_xmalloc_ptr instead of a cleanup.
4971
4972 2018-07-19  Tom Tromey  <tom@tromey.com>
4973
4974         * utils.c (do_value_free_to_mark)
4975         (make_cleanup_value_free_to_mark): Remove.
4976         * utils.h (make_cleanup_value_free_to_mark): Remove.
4977
4978 2018-07-19  Pedro Alves  <palves@redhat.com>
4979
4980         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4981         forwarding reference.
4982
4983 2018-07-18  Pedro Alves  <palves@redhat.com>
4984
4985         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4986         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4987         cleanup.
4988
4989 2018-07-18  Pedro Alves  <palves@redhat.com>
4990
4991         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4992         exceptions.
4993         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4994         (gdbscm_wrap): New.
4995         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4996         directly instead of a cleanup.
4997         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4998         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4999         (vlscm_binop_gdbthrow): New, factored out from ...
5000         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5001         (vlscm_rich_compare): Use gdbscm_wrap.
5002         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5003         instead of a cleanup.
5004         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5005         cleanup.
5006         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5007         Use xfree directly instead of a cleanup.
5008         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5009         Adjust to use gdbscm_wrap and scoped_value_mark.
5010         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5011         (gdbscm_value_address, gdbscm_value_dereference)
5012         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5013         scoped_value_mark.
5014         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5015         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5016         scoped_value_mark.
5017         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5018         gdbscm_wrap and scoped_value_mark.
5019         (gdbscm_value_to_string): Use xfree directly instead of a
5020         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5021         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5022         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5023         scoped_value_mark.
5024         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5025         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5026         scoped_value_mark.
5027         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5028         gdbscm_wrap.
5029
5030 2018-07-18  Tom de Vries  <tdevries@suse.de>
5031
5032         * findvar.c (default_read_var_value): Also resolve dynamic type for
5033         LOC_OPTIMIZED_OUT vars.
5034
5035 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5036
5037         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5038         decoding.
5039
5040 2018-07-17  Tom Tromey  <tom@tromey.com>
5041
5042         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5043         (compute_enum_list, pascm_set_param_value_x)
5044         (gdbscm_parameter_value): Update.
5045         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5046         (gdbscm_scm_to_host_string): Update.
5047         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5048         Update.
5049         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5050         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5051         * guile/scm-string.c (gdbscm_scm_to_string): Return
5052         unique_xmalloc_ptr.
5053         (gdbscm_scm_to_host_string): Likewise.
5054
5055 2018-07-17  Tom Tromey  <tom@tromey.com>
5056
5057         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5058         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5059         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5060         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5061         unique_xmalloc_ptr.
5062
5063 2018-07-17  Tom Tromey  <tom@tromey.com>
5064
5065         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5066         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5067         Update.
5068         * guile/scm-cmd.c (cmdscm_function): Update.
5069         * guile/scm-pretty-print.c
5070         (ppscm_print_exception_unless_memory_error): Update.
5071         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5072         Return unique_xmalloc_ptr.
5073
5074 2018-07-17  Tom Tromey  <tom@tromey.com>
5075
5076         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5077         Use string_printf.
5078
5079 2018-07-17  Jim Wilson  <jimw@sifive.com>
5080
5081         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5082         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5083         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5084         unecessary braces after EF_RISCV_RVC test.  Delete call to
5085         set_gdbarch_decr_pc_after_break.
5086
5087         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5088         RISCV_LAST_FP_REGNUM + 1.
5089         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5090
5091 2018-07-17  Tom Tromey  <tom@tromey.com>
5092
5093         * configure.ac: Remove --disable-gdbcli.
5094         * configure: Rebuild.
5095         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5096         (SUBDIR_CLI_CFLAGS): Remove.
5097         (SFILES): Use SUBDIR_CLI_SRCS.
5098         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5099
5100 2018-07-17  Tom Tromey  <tom@tromey.com>
5101
5102         PR gdb/18624:
5103         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5104
5105 2018-07-16  Jim Wilson  <jimw@sifive.com>
5106
5107         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5108
5109 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5110
5111         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5112         variable.
5113         (libunwind_frame_sniffer): Likewise.
5114         (libunwind_frame_prev_register): Likewise.
5115         (libunwind_sigtramp_frame_sniffer): Likewise.
5116         * ia64-tdep.c (ia64_access_reg): Likewise.
5117         (ia64_access_rse_reg): Likewise.
5118         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5119         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5120
5121 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5122
5123         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5124
5125 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5126
5127         * remote-sim.c (gdbsim_target::close,
5128         gdbsim_target::mourn_inferior): Remove unused variables.
5129
5130 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5131
5132         * ia64-tdep.c (ktab_buf): New global.
5133         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5134         (get_kernel_table): Adjust.
5135
5136 2018-07-16  Tom Tromey  <tom@tromey.com>
5137
5138         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5139         * dwarf2read.c (using_directives, new_symbol): Use
5140         outermost_context_p.
5141         * dbxread.c (process_one_symbol): Use outermost_context_p.
5142         * coffread.c (coff_symtab_read): Use outermost_context_p.
5143
5144 2018-07-16  Tom Tromey  <tom@tromey.com>
5145
5146         * dwarf2read.c (using_directives, read_func_scope)
5147         (read_lexical_block_scope): Update.
5148         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5149         * buildsym.h (local_using_directives, global_using_directives):
5150         Don't declare.
5151         (get_local_using_directives, set_local_using_directives)
5152         (get_global_using_directives): Declare.
5153         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5154         m_global_using_directives>: New members.
5155         (finish_block_internal, prepare_for_building)
5156         (reset_symtab_globals, end_symtab_get_static_block)
5157         (push_context): Update.
5158         (get_local_using_directives, set_local_using_directives)
5159         (get_global_using_directives): New functions.
5160         (buildsym_init): Update.
5161
5162 2018-07-16  Tom Tromey  <tom@tromey.com>
5163
5164         * xcoffread.c (xcoff_initial_scan): Don't call
5165         free_pending_blocks.
5166         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5167         * buildsym.h (class scoped_free_pendings): Add constructor.
5168         (free_pending_blocks): Don't declare.
5169         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5170         (free_pending_blocks): Now static.
5171
5172 2018-07-16  Tom Tromey  <tom@tromey.com>
5173
5174         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5175         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5176         member.
5177         (struct subfile_stack): Remove.
5178         (subfile_stack): Remove.
5179         (push_subfile, pop_subfile, buildsym_init): Update.
5180
5181 2018-07-16  Tom Tromey  <tom@tromey.com>
5182
5183         * buildsym.c (push_subfile): Use gdb_assert.
5184         (pop_subfile): Use gdb_assert.
5185
5186 2018-07-16  Tom Tromey  <tom@tromey.com>
5187
5188         * buildsym.h (merge_symbol_lists): Remove.
5189         * buildsym.c (merge_symbol_lists): Remove.
5190
5191 2018-07-16  Tom Tromey  <tom@tromey.com>
5192
5193         * stabsread.c (scan_file_globals): Update comment.
5194         * stabsread.h (scan_file_globals): Move from buildsym.h.
5195         * buildsym.h (scan_file_globals): Move to stabsread.h.
5196
5197 2018-07-16  Tom Tromey  <tom@tromey.com>
5198
5199         * xcoffread.c (xcoff_new_init): Update.
5200         * mipsread.c (mipscoff_new_init): Update.
5201         * mdebugread.c (mdebug_build_psymtabs): Update.
5202         * elfread.c (elf_new_init): Update.
5203         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5204         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5205         * buildsym.h (buildsym_new_init): Don't declare.
5206         * buildsym.c (buildsym_new_init): Remove.
5207
5208 2018-07-16  Tom Tromey  <tom@tromey.com>
5209
5210         * stabsread.h (within_function): Move from buildsym.h.
5211         * stabsread.c (start_stabs): Clear within_function.
5212         * coffread.c (coff_start_symtab): Clear within_function.
5213         * buildsym.h (within_function): Move to stabsread.h.
5214         * buildsym.c (prepare_for_building): Update.
5215
5216 2018-07-16  Tom Tromey  <tom@tromey.com>
5217
5218         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5219         * dwarf2read.c (dwarf2_start_symtab): Don't set
5220         processing_gcc_compilation.
5221         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5222
5223 2018-07-16  Tom Tromey  <tom@tromey.com>
5224
5225         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5226         (next_symbol_text_func): Move from buildsym.h.
5227         * stabsread.c (hashname): Move from buildsym.c.
5228         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5229         (next_symbol_text_func, hashname): Move to stabsread.h.
5230         * buildsym.c: Don't include bcache.h
5231         (hashname): Move to stasbread.c.
5232
5233 2018-07-16  Tom Tromey  <tom@tromey.com>
5234
5235         * buildsym.h (context_stack_size): Don't declare.
5236         * buildsym.c (context_stack_size): New global.
5237
5238 2018-07-16  Tom Tromey  <tom@tromey.com>
5239
5240         * dbxread.c (processing_acc_compilation): New global.
5241         * buildsym.h (processing_acc_compilation): Don't declare.
5242
5243 2018-07-16  Tom Tromey  <tom@tromey.com>
5244
5245         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5246         * dbxread.c (read_ofile_symtab): Update.
5247         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5248         * buildsym.h (last_source_start_addr): Remove.
5249         (set_last_source_start_addr, get_last_source_start_addr):
5250         Declare.
5251         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5252         parameter.
5253         (struct buildsym_compunit) <m_last_source_start_addr>: New
5254         member.
5255         (prepare_for_building): Remove start_addr parameter.
5256         (start_symtab, restart_symtab, end_symtab_get_static_block)
5257         (end_symtab_with_blockvector): Update.
5258         (set_last_source_start_addr, get_last_source_start_addr): New
5259         functions.
5260
5261 2018-07-16  Tom Tromey  <tom@tromey.com>
5262
5263         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5264         member.
5265         (have_line_numbers): Remove.
5266         (record_line, prepare_for_building, end_symtab_get_static_block)
5267         (augment_type_symtab): Update.
5268
5269 2018-07-16  Tom Tromey  <tom@tromey.com>
5270
5271         * buildsym.c (~buildsym_compunit): Free the macro table.
5272         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5273         methods.
5274         <m_pending_macros>: New member.
5275         (pending_macros): Remove.
5276         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5277         (reset_symtab_globals, end_symtab_get_static_block)
5278         (end_symtab_with_blockvector, augment_type_symtab)
5279         (buildsym_init): Update.
5280
5281 2018-07-16  Tom Tromey  <tom@tromey.com>
5282
5283         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5284         parameter.
5285         (buildsym_compunit::set_last_source_file): New method.
5286         <m_last_source_file>: New member.
5287         (prepare_for_building): Remove "name" parameter.
5288         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5289         (last_source_file): Remove.
5290         (set_last_source_file, get_last_source_file): Update.
5291
5292 2018-07-16  Tom Tromey  <tom@tromey.com>
5293
5294         * buildsym.c (prepare_for_building): Add assert.
5295
5296 2018-07-16  Tom Tromey  <tom@tromey.com>
5297
5298         * buildsym.c (~buildsym_compunit): Update.
5299         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5300         (start_subfile, patch_subfile_names)
5301         (end_symtab_with_blockvector): Update.
5302
5303 2018-07-16  Tom Tromey  <tom@tromey.com>
5304
5305         * buildsym.c (struct buildsym_compunit): Add constructor,
5306         destructor, initializers.
5307         (start_buildsym_compunit): Remove.
5308         (free_buildsym_compunit): Use "delete".
5309         (start_symtab, restart_symtab): Use "new".
5310
5311 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5312
5313         * symfile.c (set_objfile_default_section_offset): Remove struct
5314         keyword.
5315
5316 2018-07-14  Stafford Horne  <shorne@gmail.com>
5317
5318         * (Responsible Maintainers): Add myself as or1k maintainer.
5319
5320 2018-07-13  Tom Tromey  <tom@tromey.com>
5321
5322         * symfile.c (set_objfile_default_section_offset): Use extra braces
5323         around initializer.
5324
5325 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5326
5327         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5328         non-branching basr.
5329
5330 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5331
5332         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5333         unittests/cli-utils-selftests.c
5334         * unittests/cli-utils-selftests.c: New file.
5335
5336 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5337
5338         * NEWS: Mention new commands. Mention change to 'thread apply'.
5339
5340 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5341
5342         * thread.c (thr_try_catch_cmd): New function.
5343         (thread_apply_all_command): Handle qcs flags.
5344         (thread_apply_command): Handle qcs flags.
5345         (taas_command): New function.
5346         (tfaas_command): New function.
5347         (_initialize_thread): Update to setup the new commands 'taas
5348         and 'tfaas'. Change doc string for 'thread apply'.
5349
5350 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5351
5352         * stack.c: (trailing_outermost_frame): New function, mostly
5353         extracted from backtrace_command_1.
5354         (leading_innermost_frame): New function.
5355         (backtrace_command_1): Update to call trailing_outermost_frame.
5356         (frame_apply_command_count): New function.
5357         (frame_apply_level_command): New function.
5358         (frame_apply_all_command): New function.
5359         (frame_apply_command): New function.
5360         (faas_command): New function.
5361         (frame_cmd_list): New variable.
5362         (_initialize_stack): Update to setup the new commands 'frame apply'
5363         and 'faas'.
5364
5365 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5366
5367         * cli-utils.c (number_or_range_parser::get_number): Only handle
5368         numbers or convenience var as numbers.
5369         (parse_flags): New function.
5370         (parse_flags_qcs): New function.
5371         (number_or_range_parser::finished): Ensure parsing end is detected
5372         before end of string.
5373         * cli-utils.h (parse_flags): New function.
5374         (parse_flags_qcs): New function.
5375         (number_or_range_parser): Remove m_finished bool.
5376         (number_or_range_parser::skip_range): Set m_in_range to false.
5377
5378 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5379
5380         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5381         on Windows.
5382
5383 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5384             Jan Kratochvil  <jan.kratochvil@redhat.com>
5385             Paul Fertser  <fercerpav@gmail.com>
5386             Tsutomu Seki  <sekiriki@gmail.com>
5387             Pedro Alves  <palves@redhat.com>
5388
5389         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5390         'unittests/parse-connection-spec-selftests.c'.
5391         (COMMON_SFILES): Add 'common/netstuff.c'.
5392         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5393         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5394         * common/netstuff.c: New file.
5395         * common/netstuff.h: New file.
5396         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5397         (wait_for_connect): Update comment.  New parameter
5398         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5399         Use 'sock' directly instead of 'scb->fd'.
5400         (try_connect): New function, with code from 'net_open'.
5401         (net_open): Rewrite main loop to deal with multiple
5402         sockets/addresses.  Handle IPv6-style hostnames; implement
5403         support for IPv6 connections.
5404         * unittests/parse-connection-spec-selftests.c: New file.
5405
5406 2018-07-11  Pedro Alves  <palves@redhat.com>
5407
5408         PR gdb/23377
5409         * remote.c (remote_target::remote_detach_pid): Call
5410         set_current_process.
5411
5412 2018-07-11  Pedro Alves  <palves@redhat.com>
5413
5414         * h8300-tdep.c (h8300_gdbarch_init): Remove
5415         set_gdbarch_ecoff_reg_to_regnum calls.
5416
5417 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5418
5419         PR c++/23373
5420         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5421         offsets/sizes for static members of a class/struct.
5422
5423 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5424
5425         * target-descriptions.c (tdesc_register_bitsize): Rename.
5426         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5427         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5428         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5429
5430 2018-07-10  Tom Tromey  <tom@tromey.com>
5431
5432         * breakpoint.c (moribund_locations): Now static and a
5433         std::vector.
5434         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5435         (build_bpstat_chain, update_global_location_list)
5436         (breakpoint_retire_moribund): Update.
5437         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5438         VEC.
5439
5440 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5441
5442         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5443         (riscv_register_reggroup_p): Use new function, remove unneeded
5444         parenthesis.
5445         (riscv_push_dummy_call): Extend assert to compare against xlen or
5446         flen based on register type.
5447
5448 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5449
5450         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5451
5452 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5453
5454         * remote.c (show_hardware_watchpoint_limit): New function.
5455         (show_hardware_watchpoint_length_limit): New function.
5456         (show_hardware_breakpoint_limit): New function.
5457         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5458         where appropriate, update help text.
5459
5460 2018-07-09  Tom Tromey  <tom@tromey.com>
5461
5462         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5463         (CLIBS): Don't mention NAT_CLIBS.
5464
5465 2018-07-09  Tom Tromey  <tom@tromey.com>
5466
5467         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5468         (LIBGDB_OBS, clean mostlyclean): Update.
5469         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5470
5471 2018-07-09  Tom Tromey  <tom@tromey.com>
5472
5473         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5474         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5475         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5476
5477 2018-07-09  Tom Tromey  <tom@tromey.com>
5478
5479         * Makefile.in (ALLDEPFILES): Remove exec.c.
5480         (COMMON_OBS): Remove exec.o.
5481         (COMMON_SFILES): Add exec.c.
5482
5483 2018-07-09  Tom Tromey  <tom@tromey.com>
5484
5485         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5486
5487 2018-07-09  Tom Tromey  <tom@tromey.com>
5488
5489         * Makefile.in (clean mostlyclean): Remove stamp-version.
5490         (version.c): Depend on stamp-version.
5491         (stamp-version): New rule, from version.c rule.
5492
5493 2018-07-09  Tom Tromey  <tom@tromey.com>
5494
5495         * Makefile.in (init.c): Depend on stamp-init.
5496         (stamp-init): New rule, from init.c rule.
5497         (clean mostlyclean): Remove stamp-init.
5498
5499 2018-07-09  Tom Tromey  <tom@tromey.com>
5500
5501         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5502         SUBDIR_GCC_COMPILE_SRCS.
5503
5504 2018-07-09  Tom Tromey  <tom@tromey.com>
5505
5506         * Makefile.in (init.c): Remove some unused sed rules.
5507
5508 2018-07-09  Tom Tromey  <tom@tromey.com>
5509
5510         * Makefile.in (TSOBS): Remove.
5511         (INIT_FILES): Update.
5512         (LIBGDB_OBS): Update.
5513         (COMMON_SFILES): Add inflow.c.
5514         (SFILES): Remove inflow.c.
5515
5516 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5517
5518         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5519
5520 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5521
5522         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5523         get_saveloc_name, is_signal_frame_name, step_name,
5524         init_remote_name, create_addr_space_name,
5525         destroy_addr_space_name, search_unwind_table_name,
5526         find_dyn_list_name): Constify.
5527
5528 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5529
5530         * darwin-nat.c (darwin_pthread_kill): New function.
5531         (darwin_resume_thread): Use darwin_pthread_kill.
5532
5533 2018-07-05  Tom de Vries  <tdevries@suse.de>
5534
5535         * macroexp.c (macro_buffer) <operator=>: New member function.
5536
5537 2018-07-04  Tom Tromey  <tom@tromey.com>
5538
5539         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5540
5541 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5542
5543         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5544         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5545         * maint.c: Likewise.
5546         * top.c: Likewise.
5547
5548 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5549
5550         * NEWS: Create a new section for the next release branch.
5551         Rename the section of the current branch, now that it has
5552         been cut.
5553
5554 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5555
5556         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5557         * version.in: Bump version to 8.2.50.DATE-git.
5558
5559 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5560             Pedro Alves  <palves@redhat.com>
5561
5562         * linux-nat.c (linux_init_ptrace): Rename to ...
5563         (linux_init_ptrace_procfs): ... this.  Call
5564         linux_proc_init_warnings.
5565         (linux_nat_target::post_attach)
5566         (linux_nat_target::post_startup_inferior): Adjust.
5567         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5568         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5569
5570 2018-07-04  Tom de Vries  <tdevries@suse.de>
5571
5572         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5573         check ...
5574         (read_comp_unit_head): ... here.
5575
5576 2018-07-03  Tom Tromey  <tom@tromey.com>
5577
5578         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5579         (stop_tracing, tstatus_command)
5580         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5581         (print_one_static_tracepoint_marker): Update.
5582         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5583         std::vector.
5584         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5585         VEC.
5586         (all_tracepoints, static_tracepoints_here): Return std::vector.
5587
5588 2018-07-03  Tom Tromey  <tom@tromey.com>
5589
5590         * common/ptid.c (ptid_equal): Remove.
5591         * common/ptid.h (ptid_equal): Don't declare.
5592         * ada-tasks.c: Update.
5593         * breakpoint.c: Update.
5594         * common/agent.c: Update.
5595         * corelow.c: Update.
5596         * darwin-nat-info.c: Update.
5597         * darwin-nat.c: Update.
5598         * dcache.c: Update.
5599         * dtrace-probe.c: Update.
5600         * dummy-frame.c: Update.
5601         * fbsd-nat.c: Update.
5602         * frame.c: Update.
5603         * gdbthread.h: Update.
5604         * gnu-nat.c: Update.
5605         * go32-nat.c: Update.
5606         * inf-loop.c: Update.
5607         * inf-ptrace.c: Update.
5608         * infcall.c: Update.
5609         * infcmd.c: Update.
5610         * inflow.c: Update.
5611         * infrun.c: Update.
5612         * linux-fork.c: Update.
5613         * linux-nat.c: Update.
5614         * linux-thread-db.c: Update.
5615         * mi/mi-cmd-var.c: Update.
5616         * mi/mi-interp.c: Update.
5617         * mi/mi-main.c: Update.
5618         * nto-procfs.c: Update.
5619         * ppc-linux-tdep.c: Update.
5620         * procfs.c: Update.
5621         * python/py-inferior.c: Update.
5622         * python/py-record-btrace.c: Update.
5623         * python/py-record.c: Update.
5624         * ravenscar-thread.c: Update.
5625         * regcache.c: Update.
5626         * remote-sim.c: Update.
5627         * remote.c: Update.
5628         * sol-thread.c: Update.
5629         * solib.c: Update.
5630         * target.c: Update.
5631         * tui/tui-stack.c: Update.
5632         * varobj.c: Update.
5633         * windows-nat.c: Update.
5634         * windows-tdep.c: Update.
5635
5636 2018-07-03  Tom Tromey  <tom@tromey.com>
5637
5638         * common/ptid.c (ptid_match): Remove.
5639         * common/ptid.h (ptid_match): Don't declare.
5640         * fbsd-nat.c: Update.
5641         * infcmd.c: Update.
5642         * infrun.c: Update.
5643         * linux-nat.c: Update.
5644         * record-btrace.c: Update.
5645         * regcache.c: Update.
5646         * remote.c: Update.
5647
5648 2018-07-03  Tom Tromey  <tom@tromey.com>
5649
5650         * common/ptid.c (ptid_tid_p): Remove.
5651         * common/ptid.h (ptid_tid_p): Don't declare.
5652         * sol-thread.c: Update.
5653
5654 2018-07-03  Tom Tromey  <tom@tromey.com>
5655
5656         * common/ptid.c (ptid_lwp_p): Remove.
5657         * common/ptid.h (ptid_lwp_p): Don't declare.
5658         * fbsd-nat.c: Update.
5659         * linux-nat.c: Update.
5660         * nat/linux-procfs.c: Update.
5661         * nat/x86-linux-dregs.c: Update.
5662         * sol-thread.c: Update.
5663
5664 2018-07-03  Tom Tromey  <tom@tromey.com>
5665
5666         * common/ptid.c (ptid_is_pid): Remove.
5667         * common/ptid.h (ptid_is_pid): Don't declare.
5668         * infrun.c: Update.
5669         * linux-nat.c: Update.
5670         * mi/mi-interp.c: Update.
5671         * remote.c: Update.
5672         * thread.c: Update.
5673
5674 2018-07-03  Tom Tromey  <tom@tromey.com>
5675
5676         * common/ptid.c (ptid_get_tid): Remove.
5677         * common/ptid.h (ptid_get_tid): Don't declare.
5678         * ada-tasks.c: Update.
5679         * aix-thread.c: Update.
5680         * bsd-uthread.c: Update.
5681         * darwin-nat.c: Update.
5682         * fbsd-nat.c: Update.
5683         * i386-darwin-nat.c: Update.
5684         * infrun.c: Update.
5685         * linux-tdep.c: Update.
5686         * nto-procfs.c: Update.
5687         * ppc-ravenscar-thread.c: Update.
5688         * python/py-infthread.c: Update.
5689         * ravenscar-thread.c: Update.
5690         * sol-thread.c: Update.
5691         * sparc-ravenscar-thread.c: Update.
5692         * windows-nat.c: Update.
5693
5694 2018-07-03  Tom Tromey  <tom@tromey.com>
5695
5696         * common/ptid.c (ptid_get_lwp): Remove.
5697         * common/ptid.h (ptid_get_lwp): Don't declare.
5698         * aarch64-linux-nat.c: Update.
5699         * ada-tasks.c: Update.
5700         * aix-thread.c: Update.
5701         * amd64-linux-nat.c: Update.
5702         * arm-linux-nat.c: Update.
5703         * corelow.c: Update.
5704         * fbsd-nat.c: Update.
5705         * fbsd-tdep.c: Update.
5706         * gnu-nat.c: Update.
5707         * i386-cygwin-tdep.c: Update.
5708         * i386-gnu-nat.c: Update.
5709         * i386-linux-nat.c: Update.
5710         * ia64-linux-nat.c: Update.
5711         * inf-ptrace.c: Update.
5712         * infrun.c: Update.
5713         * linux-fork.c: Update.
5714         * linux-nat.c: Update.
5715         * linux-tdep.c: Update.
5716         * linux-thread-db.c: Update.
5717         * mips-linux-nat.c: Update.
5718         * nat/aarch64-linux-hw-point.c: Update.
5719         * nat/aarch64-linux.c: Update.
5720         * nat/linux-btrace.c: Update.
5721         * nat/linux-osdata.c: Update.
5722         * nat/linux-procfs.c: Update.
5723         * nat/x86-linux-dregs.c: Update.
5724         * obsd-nat.c: Update.
5725         * ppc-fbsd-nat.c: Update.
5726         * ppc-linux-nat.c: Update.
5727         * procfs.c: Update.
5728         * python/py-infthread.c: Update.
5729         * ravenscar-thread.c: Update.
5730         * remote.c: Update.
5731         * s390-linux-nat.c: Update.
5732         * sol-thread.c: Update.
5733         * sol2-tdep.c: Update.
5734         * spu-linux-nat.c: Update.
5735         * x86-linux-nat.c: Update.
5736         * xtensa-linux-nat.c: Update.
5737
5738 2018-07-03  Tom Tromey  <tom@tromey.com>
5739
5740         * common/ptid.c (ptid_get_pid): Remove.
5741         * common/ptid.h (ptid_get_pid): Don't declare.
5742         * aarch64-linux-nat.c: Update.
5743         * ada-lang.c: Update.
5744         * aix-thread.c: Update.
5745         * alpha-bsd-nat.c: Update.
5746         * amd64-fbsd-nat.c: Update.
5747         * amd64-linux-nat.c: Update.
5748         * arm-linux-nat.c: Update.
5749         * arm-nbsd-nat.c: Update.
5750         * auxv.c: Update.
5751         * break-catch-syscall.c: Update.
5752         * breakpoint.c: Update.
5753         * bsd-uthread.c: Update.
5754         * corelow.c: Update.
5755         * ctf.c: Update.
5756         * darwin-nat.c: Update.
5757         * fbsd-nat.c: Update.
5758         * fbsd-tdep.c: Update.
5759         * gcore.c: Update.
5760         * gnu-nat.c: Update.
5761         * hppa-nbsd-nat.c: Update.
5762         * hppa-obsd-nat.c: Update.
5763         * i386-fbsd-nat.c: Update.
5764         * ia64-linux-nat.c: Update.
5765         * inf-ptrace.c: Update.
5766         * infcmd.c: Update.
5767         * inferior.c: Update.
5768         * inferior.h: Update.
5769         * inflow.c: Update.
5770         * infrun.c: Update.
5771         * linux-fork.c: Update.
5772         * linux-nat.c: Update.
5773         * linux-tdep.c: Update.
5774         * linux-thread-db.c: Update.
5775         * m68k-bsd-nat.c: Update.
5776         * mi/mi-interp.c: Update.
5777         * mi/mi-main.c: Update.
5778         * mips-linux-nat.c: Update.
5779         * mips-nbsd-nat.c: Update.
5780         * mips64-obsd-nat.c: Update.
5781         * nat/aarch64-linux-hw-point.c: Update.
5782         * nat/aarch64-linux.c: Update.
5783         * nat/linux-btrace.c: Update.
5784         * nat/linux-osdata.c: Update.
5785         * nat/linux-procfs.c: Update.
5786         * nat/x86-linux-dregs.c: Update.
5787         * nto-procfs.c: Update.
5788         * obsd-nat.c: Update.
5789         * ppc-linux-nat.c: Update.
5790         * ppc-nbsd-nat.c: Update.
5791         * ppc-obsd-nat.c: Update.
5792         * proc-service.c: Update.
5793         * procfs.c: Update.
5794         * python/py-inferior.c: Update.
5795         * python/py-infthread.c: Update.
5796         * ravenscar-thread.c: Update.
5797         * record.c: Update.
5798         * remote-sim.c: Update.
5799         * remote.c: Update.
5800         * rs6000-nat.c: Update.
5801         * s390-linux-nat.c: Update.
5802         * sh-nbsd-nat.c: Update.
5803         * sol-thread.c: Update.
5804         * sparc-nat.c: Update.
5805         * sparc64-tdep.c: Update.
5806         * spu-linux-nat.c: Update.
5807         * spu-tdep.c: Update.
5808         * target-debug.h: Update.
5809         * target.c: Update.
5810         * thread.c: Update.
5811         * tid-parse.c: Update.
5812         * tracefile-tfile.c: Update.
5813         * vax-bsd-nat.c: Update.
5814         * windows-nat.c: Update.
5815         * x86-linux-nat.c: Update.
5816         * x86-nat.c: Update.
5817
5818 2018-07-03  Tom Tromey  <tom@tromey.com>
5819
5820         * common/ptid.c (pid_to_ptid): Remove.
5821         * common/ptid.h (pid_to_ptid): Don't declare.
5822         * aix-thread.c: Update.
5823         * arm-linux-nat.c: Update.
5824         * common/ptid.c: Update.
5825         * common/ptid.h: Update.
5826         * corelow.c: Update.
5827         * ctf.c: Update.
5828         * darwin-nat.c: Update.
5829         * fbsd-nat.c: Update.
5830         * fork-child.c: Update.
5831         * gnu-nat.c: Update.
5832         * go32-nat.c: Update.
5833         * inf-ptrace.c: Update.
5834         * infcmd.c: Update.
5835         * inferior.c: Update.
5836         * infrun.c: Update.
5837         * linux-fork.c: Update.
5838         * linux-nat.c: Update.
5839         * nat/aarch64-linux-hw-point.c: Update.
5840         * nat/fork-inferior.c: Update.
5841         * nat/x86-linux-dregs.c: Update.
5842         * nto-procfs.c: Update.
5843         * obsd-nat.c: Update.
5844         * procfs.c: Update.
5845         * progspace.c: Update.
5846         * remote.c: Update.
5847         * rs6000-nat.c: Update.
5848         * s390-linux-nat.c: Update.
5849         * sol-thread.c: Update.
5850         * spu-linux-nat.c: Update.
5851         * target.c: Update.
5852         * top.c: Update.
5853         * tracefile-tfile.c: Update.
5854         * windows-nat.c: Update.
5855
5856 2018-07-03  Tom Tromey  <tom@tromey.com>
5857
5858         * common/ptid.h (ptid_build): Don't declare.
5859         * common/ptid.c (ptid_build): Remove.
5860         * aix-thread.c: Update.
5861         * bsd-kvm.c: Update.
5862         * bsd-uthread.c: Update.
5863         * common/agent.c: Update.
5864         * common/ptid.c: Update.
5865         * common/ptid.h: Update.
5866         * corelow.c: Update.
5867         * darwin-nat.c: Update.
5868         * fbsd-nat.c: Update.
5869         * gnu-nat.c: Update.
5870         * linux-fork.c: Update.
5871         * linux-nat.c: Update.
5872         * linux-thread-db.c: Update.
5873         * nat/linux-osdata.c: Update.
5874         * nat/linux-procfs.c: Update.
5875         * nto-procfs.c: Update.
5876         * obsd-nat.c: Update.
5877         * proc-service.c: Update.
5878         * procfs.c: Update.
5879         * ravenscar-thread.c: Update.
5880         * remote-sim.c: Update.
5881         * remote.c: Update.
5882         * sol-thread.c: Update.
5883         * target.c: Update.
5884         * windows-nat.c: Update.
5885
5886 2018-07-03  Tom Tromey  <tom@tromey.com>
5887
5888         * infrun.c (follow_exec): Use exit_inferior_silent.
5889         * inferior.c (exit_inferior_num_silent): Remove.
5890         * inferior.h (exit_inferior_num_silent): Don't declare.
5891
5892 2018-07-03  Tom Tromey  <tom@tromey.com>
5893
5894         PR cli/23340:
5895         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5896         inferior_ptid on error.
5897
5898 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5899             Simon Marchi  <simon.marchi@polymtl.ca>
5900
5901         PR tdep/8282
5902         * disasm.h (gdb_disassembler): Add
5903         `m_disassembler_options_holder'. member
5904         * disasm.c (get_all_disassembler_options): New function.
5905         (gdb_disassembler::gdb_disassembler): Use it.
5906         (gdb_buffered_insn_length_init_dis): Likewise.
5907         (gdb_buffered_insn_length): Adjust accordingly.
5908         (set_disassembler_options): Handle options with arguments.
5909         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5910         line if showing options with descriptions.
5911         (disassembler_options_completer): Adapt to using the
5912         `disasm_options_and_args_t' structure.
5913         * mips-tdep.c (mips_disassembler_options): New variable.
5914         (mips_disassembler_options_o32): Likewise.
5915         (mips_disassembler_options_n32): Likewise.
5916         (mips_disassembler_options_n64): Likewise.
5917         (gdb_print_insn_mips): Don't set `disassembler_options'.
5918         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5919         functions.
5920         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5921         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5922         `gdbarch_disassembler_options_implicit' and
5923         `gdbarch_valid_disassembler_options'.
5924         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5925         `disasm_options_and_args_t' structure.
5926         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5927         method.
5928         (valid_disassembler_options): Switch from `disasm_options_t' to
5929         the `disasm_options_and_args_t' structure.
5930         * NEWS: Document `set disassembler-options' support for the MIPS
5931         target.
5932         * gdbarch.h: Regenerate.
5933         * gdbarch.c: Regenerate.
5934
5935 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5936
5937         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5938
5939 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5940
5941         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5942         parameter in call to amd64_target_description.
5943         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5944         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5945         (amd64fbsd_init_abi): Likewise.
5946         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5947         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5948         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5949         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5950
5951 2018-06-29  Pedro Alves  <palves@redhat.com>
5952
5953         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5954         "segments" parameter.
5955         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5956         (_initialize_amd64_tdep): Update call to
5957         amd64_create_target_description.
5958         (amd64_target_description): Add "segments" parameter.  Adjust
5959         the implementation to use it.
5960         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5961         call to amd64_create_target_description.
5962         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5963         * gdb/arch/amd64.h (amd64_create_target_description): Add
5964         "segments" register.
5965         * gdb/arch/amd64.c (amd64_create_target_description): Add
5966         "segments" parameter.  Call create_feature_i386_64bit_segments
5967         only if SEGMENTS is true.
5968         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5969         call to amd64_create_target_description.
5970
5971 2018-06-29  Pedro Alves  <palves@redhat.com>
5972
5973         * thread.c (thread_target_id_str): New, factored out from ...
5974         (print_thread_info_1): ... here.  Use it to compute the max
5975         "Target Id" column width.
5976
5977 2018-06-29  Pedro Alves  <palves@redhat.com>
5978
5979         * remote.c (remote_target::extra_thread_info): Delete
5980         'display_buf' and 'n' locals.  from the cache, regardless of
5981         packet mechanims is in use.  Use cache for qThreadExtra and qP
5982         methods too.
5983
5984 2018-06-29  Pedro Alves  <palves@redhat.com>
5985
5986         * blockframe.c (find_pc_sect_containing_function): New function.
5987         * breakpoint.c (print_breakpoint_location): Don't call
5988         find_pc_sect_function.
5989         * linespec.c (create_sals_line_offset): Record the location's
5990         symbol in the sal.
5991         * linespec.c (convert_address_location_to_sals): Fill in sal's
5992         symbol with find_pc_sect_containing_function.
5993         * symtab.c (find_function_start_sal): Rename to ...
5994         (find_function_start_sal_1): ... this.
5995         (find_function_start_sal): Reimplement as wrapper around
5996         find_function_start_sal_1, and use
5997         find_pc_sect_containing_function to fill in the sal's symbol.
5998         (find_function_start_sal(symbol*, bool)): Adjust.
5999         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6000         comments.
6001         (find_pc_sect_containing_function): Declare.
6002
6003 2018-06-29  Pedro Alves  <palves@redhat.com>
6004
6005         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6006         true if the the location has no symbol.
6007
6008 2018-06-28  Tom Tromey  <tom@tromey.com>
6009
6010         * NEWS: Mention --enable-codesign.
6011         * silent-rules.mk (ECHO_SIGN): New variable.
6012         * configure.ac: Add --enable-codesign.
6013         * configure: Rebuild.
6014         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6015         (gdb$(EXEEXT)): Optionally invoke codesign.
6016
6017 2018-06-28  Pedro Alves  <palves@redhat.com>
6018
6019         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6020         comments.
6021         (switch_to_thread_no_regs): Adjust comment.
6022         * infcmd.c (stop_pc): Delete.
6023         (post_create_inferior, info_program_command): Replace references
6024         to stop_pc with references to thread_info->suspend.stop_pc.
6025         * inferior.h (stop_pc): Delete declaration.
6026         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6027         (handle_inferior_event_1, handle_signal_stop)
6028         (process_event_stop_test, keep_going_stepped_thread)
6029         (handle_step_into_function, handle_step_into_function_backward)
6030         (print_stop_location): Replace references to stop_pc with
6031         references to thread_info->suspend.stop_pc.
6032         (struct infcall_suspend_state) <stop_pc>: Delete field.
6033         (save_infcall_suspend_state, restore_infcall_suspend_state):
6034         Remove references to inf_stat->stop_pc.
6035         * linux-fork.c (fork_load_infrun_state): Likewise.
6036         * record-btrace.c (record_btrace_set_replay): Likewise.
6037         * record-full.c (record_full_goto_entry): Likewise.
6038         * remote.c (print_one_stopped_thread): Likewise.
6039         * target.c (target_resume): Extend comment.
6040         * thread.c (set_executing_thread): New.
6041         (set_executing): Use it.
6042         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6043         Remove references to stop_pc.
6044
6045 2018-06-28  Pedro Alves  <palves@redhat.com>
6046
6047         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6048         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6049
6050 2018-06-28  Tom Tromey  <tom@tromey.com>
6051
6052         * coffread.c (coff_symfile_finish): Update.
6053         * xcoffread.c (xcoff_symfile_finish): Update.
6054         * elfread.c (elf_symfile_finish): Update.
6055         * symfile.h (dwarf2_free_objfile): Don't declare.
6056         * dwarf2read.c (_initialize_dwarf2_read): Use
6057         register_objfile_data_with_cleanup.
6058         (dwarf2_free_objfile): Now static.  Change signature.
6059
6060 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6061
6062         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6063         option "-o" to add-symbol-file-load to add an offset to each
6064         section's load address.
6065         * symfile.c (set_objfile_default_section_offset): New function.
6066
6067 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6068
6069         * symfile.c (add_symbol_file_command): Make sure that sections
6070         with the same name are sorted in the same order.
6071
6072 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6073
6074         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6075         require the second argument.  If omitted, load sections at the
6076         addresses specified in the file.
6077
6078 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6079
6080         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6081         (_initialize_symfile): Add option "-o" to symbol-file to add an
6082         offset to each section of the symbol file.
6083
6084 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6085
6086         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6087
6088 2018-06-27  Tom Tromey  <tom@tromey.com>
6089
6090         * stack.c (_initialize_stack): Update "func" help text.
6091
6092 2018-06-27  Tom Tromey  <tom@tromey.com>
6093
6094         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6095         std::vector.
6096         (unwind_infopy_str, pyuw_create_unwind_info)
6097         (unwind_infopy_add_saved_register, pyuw_sniffer)
6098         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6099         Update.
6100         (struct saved_reg): Add constructor.
6101         <value>: Now a gdbpy_ref<>.
6102
6103 2018-06-27  Tom Tromey  <tom@tromey.com>
6104
6105         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6106
6107 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6108
6109         * gdb-gdb.py.in: Format using autopep8.
6110
6111 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6112
6113         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6114         (type_lookup_function): Recognize CORE_ADDR values.
6115
6116 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6117
6118         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6119         print tag_name.
6120
6121 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6122
6123         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6124         <__lt__>: Add.
6125
6126 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6127
6128         * gdb-gdb.py: Move to...
6129         * gdb-gdb.py.in: ... here.
6130         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6131         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6132         dependencies.
6133         (distclean): Remove gdb-gdb.py when cleaning.
6134         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6135         * configure: Re-generate.
6136
6137 2018-06-27  Pedro Alves  <palves@redhat.com>
6138
6139         * proc-service.c (get_ps_regcache): New.
6140         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6141         (ps_lsetfpregs): Use it.
6142
6143 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6144
6145         PR gdb/21695
6146         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6147         (dwarf_decode_lines_1): Adjust.
6148
6149 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6150
6151         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6152         override.
6153         <info_proc>: Likewise.
6154
6155 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6156
6157         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6158         to windows_fetch_one_register, and only handle the case of
6159         fetching one register.  Move the code that reloads the context
6160         and iterates over all registers if R is negative to...
6161         (windows_nat_target::fetch_registers): ... here.
6162         (do_windows_store_inferior_registers): Rename to
6163         windows_store_one_register, and only handle the case of storing
6164         one register.  Move the code that handles the case where r is
6165         negative to...
6166         (windows_nat_target::store_registers) ... here.
6167
6168 2018-06-26  Tom Tromey  <tom@tromey.com>
6169
6170         PR rust/22574:
6171         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6172         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6173         Update.
6174         (rust_internal_print_type): Add podata parameter.
6175         (rust_print_type): Update.
6176
6177 2018-06-26  Tom Tromey  <tom@tromey.com>
6178
6179         * typeprint.h (struct print_offset_data) <update, finish,
6180         maybe_print_hole>: New methods.
6181         <indentation>: New constant.
6182         * typeprint.c (print_offset_data::indentation): Define.
6183         (print_offset_data::maybe_print_hole, print_offset_data::update)
6184         (print_offset_data::finish): Move from c-typeprint.c and rename.
6185         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6186         (print_spaces_filtered_with_print_options): Update.
6187         (c_print_type_union_field_offset, maybe_print_hole)
6188         (c_print_type_struct_field_offset): Move to typeprint.c and
6189         rename.
6190         (c_type_print_base_struct_union): Update.
6191
6192 2018-06-25  Pedro Alves  <palves@redhat.com>
6193
6194         * gdbthread.h (thread_info_ref, delete_thread)
6195         (delete_thread_silent, first_thread_of_inferior)
6196         (any_thread_of_inferior, switch_to_thread)
6197         (enable_thread_stack_temporaries)
6198         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6199         (get_last_thread_stack_temporary)
6200         (value_in_thread_stack_temporaries, can_access_registers_thread):
6201         Spell out "struct thread_info" instead of just "thread_info".
6202         * inferior.h (notice_new_inferior): Likewise.
6203
6204 2018-06-25  Pedro Alves  <palves@redhat.com>
6205
6206         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6207         pass thread_info pointer to delete_thread.
6208         (windows_nat_target::detach): Pass inferior pointer to
6209         detach_inferior.
6210         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6211         delete_thread.
6212         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6213         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6214         and pass a thread_info pointer to delete_thread.
6215         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6216         pass thread_info pointer to delete_thread.
6217         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6218         delete_thread_silent call.
6219         * procfs.c (procfs_target::detach): Pass inferior pointer to
6220         detach_inferior.
6221         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6222         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6223         delete_thread_silent call.
6224         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6225         pass thread_info pointer to delete_thread.
6226         (windows_nat_target::detach): Pass inferior pointer to
6227         delete_inferior.
6228
6229 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6230
6231         * regcache.c (readable_regcache::read_part): Fix asserts.
6232         (reg_buffer::raw_collect_part): New function.
6233         (regcache::write_part): Fix asserts.
6234         (reg_buffer::raw_supply_part): New function.
6235         (regcache::transfer_regset_register): New helper function.
6236         (regcache::transfer_regset): Call new functions.
6237         (regcache_supply_regset): Use gdb_byte*.
6238         (regcache::supply_regset): Likewise.
6239         (regcache_collect_regset): Likewise.
6240         (regcache::collect_regset): Likewise.
6241         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6242         (reg_buffer::raw_supply_part): Likewise.
6243         (regcache::transfer_regset_register): Likewise.
6244         (regcache::transfer_regset): Use gdb_byte*.
6245
6246 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6247
6248         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6249
6250 2018-06-21  Pedro Alves  <palves@redhat.com>
6251
6252         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6253         instead of a ptid_t.  All callers adjusted.
6254         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6255         adjusted.
6256         (print_ada_task_info, display_current_task_id, task_command_1):
6257         Adjust.
6258         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6259         inferior_thread.
6260         (breakpoint_kind): Adjust.
6261         (remove_breakpoints_pid): Rename to ...
6262         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6263         pointer.  All callers adjusted.
6264         (bpstat_clear_actions): Use inferior_thread.
6265         (get_bpstat_thread): New.
6266         (bpstat_do_actions): Use it.
6267         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6268         to take a thread_info pointer.  All callers adjusted.
6269         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6270         (breakpoint_re_set_thread): Use inferior_thread.
6271         * breakpoint.h (struct inferior): Forward declare.
6272         (bpstat_stop_status): Update.
6273         (remove_breakpoints_pid): Delete.
6274         (remove_breakpoints_inf): New.
6275         * bsd-uthread.c (bsd_uthread_target::wait)
6276         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6277         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6278         (maint_btrace_packet_history_cmd)
6279         (maint_btrace_clear_packet_history_cmd): Adjust.
6280         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6281         inferior_thread.
6282         * cli/cli-interp.c: Include "inferior.h".
6283         * common/refcounted-object.h (struct
6284         refcounted_object_ref_policy): New.
6285         * compile/compile-object-load.c: Include gdbthread.h.
6286         (store_regs): Use inferior_thread.
6287         * corelow.c (core_target::close): Use current_inferior.
6288         (core_target_open): Adjust to use first_thread_of_inferior and use
6289         the current inferior.
6290         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6291         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6292         <thread>: ... this new field.  All references adjusted.
6293         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6294         Take a thread_info pointer instead of a ptid_t.
6295         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6296         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6297         thread_info pointer instead of a ptid_t.
6298         * elfread.c: Include "inferior.h".
6299         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6300         Use inferior_thread.
6301         * eval.c (evaluate_subexp): Likewise.
6302         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6303         inferior_thread.
6304         * gdb_proc_service.h (struct thread_info): Forward declare.
6305         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6306         <thread>: ... this new field.  All references adjusted.
6307         * gdbarch.h, gdbarch.c: Regenerate.
6308         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6309         'thread' parameter.  All implementations and callers adjusted.
6310         * gdbthread.h (thread_info) <set_running>: New method.
6311         (delete_thread, delete_thread_silent): Take a thread_info pointer
6312         instead of a ptid.
6313         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6314         (first_thread_of_process): Delete, replaced by ...
6315         (first_thread_of_inferior): ... this new function.  All callers
6316         adjusted.
6317         (any_live_thread_of_process): Delete, replaced by ...
6318         (any_live_thread_of_inferior): ... this new function.  All callers
6319         adjusted.
6320         (switch_to_thread, switch_to_no_thread): Declare.
6321         (is_executing): Delete.
6322         (enable_thread_stack_temporaries): Update comment.
6323         <enable_thread_stack_temporaries>: Take a thread_info pointer
6324         instead of a ptid_t.  Incref the thread.
6325         <~enable_thread_stack_temporaries>: Decref the thread.
6326         <m_ptid>: Delete
6327         <m_thr>: New.
6328         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6329         (get_last_thread_stack_temporary)
6330         (value_in_thread_stack_temporaries, can_access_registers_thread):
6331         Take a thread_info pointer instead of a ptid_t.  All callers
6332         adjusted.
6333         * infcall.c (get_call_return_value): Use inferior_thread.
6334         (run_inferior_call): Work with thread pointers instead of ptid_t.
6335         (call_function_by_hand_dummy): Work with thread pointers instead
6336         of ptid_t.  Use thread_info_ref.
6337         * infcmd.c (proceed_thread_callback): Access thread's state
6338         directly.
6339         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6340         access thread's state directly.
6341         (continue_command): Use inferior_thread.
6342         (info_program_command): Use find_thread_ptid and access thread
6343         state directly.
6344         (proceed_after_attach_callback): Use thread state directly.
6345         (notice_new_inferior): Take a thread_info pointer instead of a
6346         ptid_t.  All callers adjusted.
6347         (exit_inferior): Take an inferior pointer instead of a pid.  All
6348         callers adjusted.
6349         (exit_inferior_silent): New.
6350         (detach_inferior): Delete.
6351         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6352         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6353         (detach_inferior_command, kill_inferior_command): Use
6354         find_inferior_id instead of valid_gdb_inferior_id and
6355         gdb_inferior_id_to_pid.
6356         (inferior_command): Use inferior and thread pointers.
6357         * inferior.h (struct thread_info): Forward declare.
6358         (notice_new_inferior): Take a thread_info pointer instead of a
6359         ptid_t.  All callers adjusted.
6360         (detach_inferior): Delete declaration.
6361         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6362         instead of a pid.  All callers adjusted.
6363         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6364         (valid_gdb_inferior_id): Delete.
6365         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6366         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6367         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6368         ...
6369         <inf>: ... this new field.
6370         <step_ptid>: Delete, replaced by ...
6371         <step_thread>: ... this new field.
6372         (get_displaced_stepping_state): Take an inferior pointer instead
6373         of a pid.  All callers adjusted.
6374         (displaced_step_in_progress_any_inferior): Adjust.
6375         (displaced_step_in_progress_thread): Take a thread pointer instead
6376         of a ptid_t.  All callers adjusted.
6377         (displaced_step_in_progress, add_displaced_stepping_state): Take
6378         an inferior pointer instead of a pid.  All callers adjusted.
6379         (get_displaced_step_closure_by_addr): Adjust.
6380         (remove_displaced_stepping_state): Take an inferior pointer
6381         instead of a pid.  All callers adjusted.
6382         (displaced_step_prepare_throw, displaced_step_prepare)
6383         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6384         All callers adjusted.
6385         (start_step_over): Adjust.
6386         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6387         displaced step queue.
6388         (do_target_resume): Adjust.
6389         (fetch_inferior_event): Use inferior_thread.
6390         (context_switch, get_inferior_stop_soon): Take an
6391         execution_control_state pointer instead of a ptid_t.  All callers
6392         adjusted.
6393         (switch_to_thread_cleanup): Delete.
6394         (stop_all_threads): Use scoped_restore_current_thread.
6395         * inline-frame.c: Include "gdbthread.h".
6396         (inline_state) <inline_state>: Take a thread pointer instead of a
6397         ptid_t.  All callers adjusted.
6398         <ptid>: Delete, replaced by ...
6399         <thread>: ... this new field.
6400         (find_inline_frame_state): Take a thread pointer instead of a
6401         ptid_t.  All callers adjusted.
6402         (skip_inline_frames, step_into_inline_frame)
6403         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6404         pointer instead of a ptid_t.  All callers adjusted.
6405         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6406         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6407         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6408         pointers directly.
6409         * linux-nat.c (get_detach_signal): Likewise.
6410         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6411         (thread_db_notice_clone): Adjust.
6412         (thread_db_find_new_threads_silently)
6413         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6414         a thread pointer instead of a ptid_t.  All callers adjusted.
6415         * mi/mi-cmd-var.c: Include "inferior.h".
6416         (mi_cmd_var_update_iter): Update to use thread pointers.
6417         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6418         inferior directly.
6419         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6420         out to ...
6421         (mi_output_running): ... this new function.
6422         (mi_on_resume_1): Adjust to use it.
6423         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6424         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6425         directly.
6426         (interrupt_thread_callback): : Adjust to use thread and inferior
6427         pointers.
6428         * proc-service.c: Include "gdbthread.h".
6429         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6430         * progspace-and-thread.c: Include "inferior.h".
6431         * progspace.c: Include "inferior.h".
6432         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6433         hold a reference to an inferior_object.
6434         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6435         inferior_thread.
6436         * python/py-inferior.c (struct inferior_object): Give the type a
6437         tag name instead of a typedef.
6438         (python_on_normal_stop): No need to check if the current thread is
6439         listed.
6440         (inferior_to_inferior_object): Change return type to
6441         inferior_object.  All callers adjusted.
6442         (find_thread_object): Delete, bits factored out to ...
6443         (thread_to_thread_object): ... this new function.
6444         * python/py-infthread.c (create_thread_object): Use
6445         inferior_to_inferior_object.
6446         (thpy_is_stopped): Use thread pointer directly.
6447         (gdbpy_selected_thread): Use inferior_thread.
6448         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6449         field, replaced with ...
6450         <thread>: ... this new field.  All users adjusted.
6451         (btpy_insn_or_gap_new): Drop const.
6452         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6453         callers adjusted.
6454         * python/py-record.c: Include "gdbthread.h".
6455         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6456         a ptid_t.  All callers adjusted.
6457         (gdbpy_current_recording): Use inferior_thread.
6458         * python/py-record.h (recpy_record_object) <ptid>: Delete
6459         field, replaced with ...
6460         <thread>: ... this new field.  All users adjusted.
6461         (recpy_element_object) <ptid>: Delete
6462         field, replaced with ...
6463         <thread>: ... this new field.  All users adjusted.
6464         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6465         a ptid_t.  All callers adjusted.
6466         * python/py-threadevent.c: Include "gdbthread.h".
6467         (get_event_thread): Use thread_to_thread_object.
6468         * python/python-internal.h (struct inferior_object): Forward
6469         declare.
6470         (find_thread_object, find_inferior_object): Delete declarations.
6471         (thread_to_thread_object, inferior_to_inferior_object): New
6472         declarations.
6473         * record-btrace.c: Include "inferior.h".
6474         (require_btrace_thread): Use inferior_thread.
6475         (record_btrace_frame_sniffer)
6476         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6477         (get_thread_current_frame): Use scoped_restore_current_thread and
6478         switch_to_thread.
6479         (get_thread_current_frame): Use thread pointer directly.
6480         (record_btrace_replay_at_breakpoint): Use thread's inferior
6481         pointer directly.
6482         * record-full.c: Include "inferior.h".
6483         * regcache.c: Include "gdbthread.h".
6484         (get_thread_arch_regcache): Use the inferior's address space
6485         directly.
6486         (get_thread_regcache, registers_changed_thread): New.
6487         * regcache.h (get_thread_regcache(thread_info *thread)): New
6488         overload.
6489         (registers_changed_thread): New.
6490         (remote_target) <remote_detach_1>: Swap order of parameters.
6491         (remote_add_thread): <remote_add_thread>: Return the new thread.
6492         (get_remote_thread_info(ptid_t)): New overload.
6493         (remote_target::remote_notice_new_inferior): Use thread pointers
6494         directly.
6495         (remote_target::process_initial_stop_replies): Use
6496         thread_info::set_running.
6497         (remote_target::remote_detach_1, remote_target::detach)
6498         (extended_remote_target::detach): Adjust.
6499         * stack.c (frame_show_address): Use inferior_thread.
6500         * target-debug.h (target_debug_print_thread_info_pp): New.
6501         * target-delegates.c: Regenerate.
6502         * target.c (default_thread_address_space): Delete.
6503         (memory_xfer_partial_1): Use current_inferior.
6504         (target_detach): Use current_inferior.
6505         (target_thread_address_space): Delete.
6506         (generic_mourn_inferior): Use current_inferior.
6507         * target.h (struct target_ops) <thread_address_space>: Delete.
6508         (target_thread_address_space): Delete.
6509         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6510         pointers directly.
6511         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6512         thread pointer instead of a ptid_t.  Adjust all callers.
6513         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6514         (first_thread_of_process): Delete, replaced by ...
6515         (first_thread_of_inferior): ... this new function.  All callers
6516         adjusted.
6517         (any_thread_of_process): Rename to ...
6518         (any_thread_of_inferior): ... this, and take an inferior pointer.
6519         (any_live_thread_of_process): Rename to ...
6520         (any_live_thread_of_inferior): ... this, and take an inferior
6521         pointer.
6522         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6523         (value_in_thread_stack_temporaries)
6524         (get_last_thread_stack_temporary): Take a thread pointer instead
6525         of a ptid_t.  Adjust all callers.
6526         (thread_info::set_running): New.
6527         (validate_registers_access): Use inferior_thread.
6528         (can_access_registers_ptid): Rename to ...
6529         (can_access_registers_thread): ... this, and take a thread
6530         pointer.
6531         (print_thread_info_1): Adjust to compare thread pointers instead
6532         of ptids.
6533         (switch_to_no_thread, switch_to_thread): Make extern.
6534         (scoped_restore_current_thread::~scoped_restore_current_thread):
6535         Use m_thread pointer directly.
6536         (scoped_restore_current_thread::scoped_restore_current_thread):
6537         Use inferior_thread.
6538         (thread_command): Use thread pointer directly.
6539         (thread_num_make_value_helper): Use inferior_thread.
6540         * top.c (execute_command): Use inferior_thread.
6541         * tui/tui-interp.c: Include "inferior.h".
6542         * varobj.c (varobj_create): Use inferior_thread.
6543         (value_of_root_1): Use find_thread_global_id instead of
6544         global_thread_id_to_ptid.
6545
6546 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6547
6548         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6549         possible.
6550         (regcache::write_part): Likewise.
6551         (readable_regcache::cooked_read_part): Update comment.
6552         (readable_regcache::cooked_write_part): Likewise.
6553         * regcache.h: (readable_regcache::read_part): Likewise.
6554         (regcache::write_part): Likewise.
6555
6556 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6557             Dirk Schubert  <dirk.schubert@arm.com>
6558
6559         * aarch64-linux-nat.c (post_attach): New.
6560         (aarch64_linux_nat_target::post_attach): Override post_attach to
6561         record the number of hardware debug registers.
6562
6563 2018-06-20  Tom Tromey  <tom@tromey.com>
6564
6565         * python/py-param.c (add_setshow_generic): Make parameters const.
6566         (parmpy_init): Update.
6567
6568 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6569
6570         * regcache.h (regcache_cooked_read_ftype): Rename to...
6571         (register_read_ftype): ...this, change type to function_view.
6572         (class reg_buffer) <save>: Remove src parameter.
6573         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6574         parameter non-const in first overload.  Remove src parameter in
6575         second overload.
6576         * regcache.c (do_cooked_read): Remove.
6577         (readonly_detached_regcache::readonly_detached_regcache): Make
6578         parameter non-const, adjust call to other constructor.
6579         (reg_buffer::save): Remove src parameter.
6580         * frame.c (do_frame_register_read): Remove.
6581         (frame_save_as_regcache): Use lambda function.
6582         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6583         parameter to ppu2spu_data *.
6584         (ppu2spu_sniffer): Use lambda function.
6585
6586 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6587
6588         * record-full.c (record_full_target::insert_breakpoint): Remove
6589         "struct" keyword, add const.
6590
6591 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6592
6593         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6594         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6595         * configure.ac: Remove AC_PREREQ, add missing quoting.
6596         * gnulib/configure.ac: Modernize usage of
6597         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6598         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6599         (AUTOMAKE_VERSION): Bump to 1.15.1.
6600         * configure: Re-generate.
6601         * config.in: Re-generate.
6602         * aclocal.m4: Re-generate.
6603         * gnulib/aclocal.m4: Re-generate.
6604         * gnulib/config.in: Re-generate.
6605         * gnulib/configure: Re-generate.
6606         * gnulib/import/Makefile.in: Re-generate.
6607
6608 2018-06-19  Pedro Alves  <palves@redhat.com>
6609
6610         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6611         (lookup_minimal_symbol_by_pc_section): ... here with
6612         gdb_assert_not_reached added.
6613
6614 2018-06-19  Pedro Alves  <palves@redhat.com>
6615
6616         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6617         parameter with a block parameter.  Compare location's block symbol
6618         with the frame's block instead of addresses.
6619         (skip_inline_frames): Pass the current block instead of the
6620         frame's address.  Break out as soon as we determine the frame
6621         should not be skipped.
6622
6623 2018-06-18  Tom Tromey  <tom@tromey.com>
6624
6625         * solib-aix.c (solib_aix_get_section_offsets): Return
6626         unique_xmalloc_ptr.
6627         (solib_aix_solib_create_inferior_hook): Update.
6628
6629 2018-06-18  Tom Tromey  <tom@tromey.com>
6630
6631         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6632
6633 2018-06-18  Tom Tromey  <tom@tromey.com>
6634
6635         * solib-frv.c (frv_relocate_main_executable): Use
6636         unique_xmalloc_ptr.
6637         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6638         unique_xmalloc_ptr.
6639
6640 2018-06-18  Tom Tromey  <tom@tromey.com>
6641
6642         * objfiles.h (inhibit_section_map_updates): Update.
6643         (resume_section_map_updates, resume_section_map_updates_cleanup):
6644         Remove.
6645         * solib-svr4.c (svr4_handle_solib_event): Update.
6646         * objfiles.c (inhibit_section_map_updates): Return
6647         scoped_restore_tmpl<int>.
6648         (resume_section_map_updates, resume_section_map_updates_cleanup):
6649         Remove.
6650
6651 2018-06-18  Tom Tromey  <tom@tromey.com>
6652
6653         * valprint.h (read_string): Update.
6654         * valprint.c (read_string): Change type of "buffer".
6655         (val_print_string): Update.
6656         * python/py-value.c (valpy_string): Update.
6657         * language.h (struct language_defn) <la_get_string>: Change
6658         type of "buffer".
6659         (default_get_string, c_get_string): Update.
6660         * language.c (default_get_string): Change type of "buffer".
6661         * guile/scm-value.c (gdbscm_value_to_string): Update.
6662         * c-lang.c (c_get_string): Change type of "buffer".
6663
6664 2018-06-18  Tom Tromey  <tom@tromey.com>
6665
6666         * ser-mingw.c (struct pipe_state_destroyer): New.
6667         (pipe_state_up): New typedef.
6668         (cleanup_pipe_state): Remove.
6669         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6670
6671 2018-06-18  Tom Tromey  <tom@tromey.com>
6672
6673         * rust-lang.h (rust_yyerror): Don't declare.
6674         * rust-lang.c (rust_language_defn): Update.
6675         * rust-exp.y (yyerror): Now static.
6676         * parse.c (parse_exp_in_context_1): Update.
6677         * p-lang.h (p_yyerror): Don't declare.
6678         * p-lang.c (p_language_defn): Update.
6679         * p-exp.y (yyerror): Now static.
6680         * opencl-lang.c (opencl_language_defn): Update.
6681         * objc-lang.c (objc_language_defn): Update.
6682         * m2-lang.h (m2_yyerror): Don't declare.
6683         * m2-lang.c (m2_language_defn): Update.
6684         * m2-exp.y (yyerror): Now static.
6685         * language.h (struct language_defn) <la_error>: Remove.
6686         * language.c (unk_lang_error): Remove.
6687         (unknown_language_defn, auto_language_defn): Remove.
6688         * go-lang.h (go_yyerror): Don't declare.
6689         * go-lang.c (go_language_defn): Update.
6690         * go-exp.y (yyerror): Now static.
6691         * f-lang.h (f_yyerror): Don't declare.
6692         * f-lang.c (f_language_defn): Update.
6693         * f-exp.y (yyerror): Now static.
6694         * d-lang.h (d_yyerror): Don't declare.
6695         * d-lang.c (d_language_defn): Update.
6696         * d-exp.y (yyerror): Now static.
6697         * c-lang.h (c_yyerror): Don't declare.
6698         * c-lang.c (c_language_defn, cplus_language_defn)
6699         (asm_language_defn, minimal_language_defn): Update.
6700         * c-exp.y (yyerror): Now static.
6701         * ada-lang.h (ada_yyerror): Don't declare.
6702         * ada-lang.c (ada_language_defn): Update.
6703         * ada-exp.y (yyerror): Now static.
6704
6705 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6706
6707         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6708         (store_sveregs_to_thread): Likewise.
6709         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6710         (aarch64_linux_store_inferior_registers): Likewise.
6711         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6712         function.
6713         (aarch64_sve_regs_copy_to_regcache): Likewise.
6714         (aarch64_sve_regs_copy_from_regcache): Likewise.
6715         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6716         declaration.
6717         (aarch64_sve_regs_copy_to_regcache): Likewise.
6718         (aarch64_sve_regs_copy_from_regcache): Likewise.
6719         (sve_context): Structure from Linux headers.
6720         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6721         (SVE_SIG_ZREG_SIZE): Likewise.
6722         (SVE_SIG_PREG_SIZE): Likewise.
6723         (SVE_SIG_FFR_SIZE): Likewise.
6724         (SVE_SIG_REGS_OFFSET): Likewise.
6725         (SVE_SIG_ZREGS_OFFSET): Likewise.
6726         (SVE_SIG_ZREG_OFFSET): Likewise.
6727         (SVE_SIG_ZREGS_SIZE): Likewise.
6728         (SVE_SIG_PREGS_OFFSET): Likewise.
6729         (SVE_SIG_PREG_OFFSET): Likewise.
6730         (SVE_SIG_PREGS_SIZE): Likewise.
6731         (SVE_SIG_FFR_OFFSET): Likewise.
6732         (SVE_SIG_REGS_SIZE): Likewise.
6733         (SVE_SIG_CONTEXT_SIZE): Likewise.
6734         (SVE_PT_REGS_MASK): Likewise.
6735         (SVE_PT_REGS_FPSIMD): Likewise.
6736         (SVE_PT_REGS_SVE): Likewise.
6737         (SVE_PT_VL_INHERIT): Likewise.
6738         (SVE_PT_VL_ONEXEC): Likewise.
6739         (SVE_PT_REGS_OFFSET): Likewise.
6740         (SVE_PT_FPSIMD_OFFSET): Likewise.
6741         (SVE_PT_FPSIMD_SIZE): Likewise.
6742         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6743         (SVE_PT_SVE_PREG_SIZE): Likewise.
6744         (SVE_PT_SVE_FFR_SIZE): Likewise.
6745         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6746         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6747         (__SVE_SIG_TO_PT): Likewise.
6748         (SVE_PT_SVE_OFFSET): Likewise.
6749         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6750         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6751         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6752         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6753         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6754         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6755         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6756         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6757         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6758         (SVE_PT_SVE_SIZE): Likewise.
6759         (SVE_PT_SIZE): Likewise.
6760         (HAS_SVE_STATE): New define.
6761
6762 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6763
6764         * nat/aarch64-sve-linux-sigcontext.h: New file.
6765         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6766         new files.
6767         (SVE_VQ_MIN): Likewise.
6768         (SVE_VQ_MAX): Likewise.
6769         (SVE_VL_MIN): Likewise.
6770         (SVE_VL_MAX): Likewise.
6771         (SVE_NUM_ZREGS): Likewise.
6772         (SVE_NUM_PREGS): Likewise.
6773         (sve_vl_valid): Likewise.
6774         (struct user_sve_header): Likewise.
6775
6776 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6777             Richard Bunt <Richard.Bunt@arm.com>
6778
6779         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6780         was requested by GDB.
6781
6782 2018-06-15  Tom de Vries  <tdevries@suse.de>
6783
6784         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6785
6786 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6787
6788         * gnulib/update-gnulib.sh: Print expected versions of
6789         autoconf/aclocal.
6790
6791 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6792
6793         * arch-utils.c (default_type_align): Use type_length_units.
6794         * gdbtypes.c (type_align): Use type_length_units.
6795
6796 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6797
6798         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6799         of 'define' command.
6800
6801 2018-06-14  Tom de Vries  <tdevries@suse.de>
6802
6803         PR cli/22573
6804         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6805         get_no_prettyformat_print_options.
6806
6807 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6808
6809         * sparc-nat.h: Include target.h.
6810         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6811         <fetch_registers>: Remove this argument in function call.
6812         <store_registers>: Remove this argument in function call, remove
6813         extra semicolon.
6814         <low_forget_process>: Call sparc64_forget_process instead of
6815         sparc_forget_process.
6816
6817 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6818
6819         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6820         (procfs_target::make_corefile_notes): Adjust to new
6821         target_read_alloc return type.
6822
6823 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6824             Stephen Roberts  <stephen.roberts@arm.com>
6825
6826         PR gdb/22882
6827         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6828         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6829         Move should_notify_stop local into more inner scope.
6830
6831 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6832             Stephen Roberts  <stephen.roberts@arm.com>
6833
6834         PR gdb/22882
6835         * infrun.c (resume_1): Add call to mark_async_event_handler.
6836
6837 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6838
6839         * infrun.c (do_target_wait): Change old version of $pc printed.
6840
6841 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6842
6843         * dwarf2read.c (read_index_from_section): Rename to...
6844         (read_gdb_index_from_section): ... this, update all callers.
6845         (dwarf2_read_index): Rename to...
6846         (dwarf2_read_gdb_index): ... this, update all callers.
6847
6848 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6849
6850         * gdb/hppa-linux-nat.c
6851         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6852         hppa_linux_nat_target::fetch_registers.
6853
6854 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6855
6856         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6857         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6858         (AARCH64_DWARF_SVE_FFR): Likewise.
6859         (AARCH64_DWARF_SVE_P0): Likewise.
6860         (AARCH64_DWARF_SVE_Z0): Likewise.
6861
6862 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6863
6864         * common/common-regcache.h (raw_compare): New function.
6865         * regcache.c (regcache::raw_compare): Likewise.
6866         * regcache.h (regcache::raw_compare): New declaration.
6867
6868 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6869
6870         * common/common-regcache.h (reg_buffer_common): New structure.
6871         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6872         (reg_buffer::raw_supply): Likewise.
6873         (reg_buffer::raw_supply_integer): Likewise.
6874         (reg_buffer::raw_supply_zeroed): Likewise.
6875         (reg_buffer::raw_collect): Likewise.
6876         (reg_buffer::raw_collect_integer): Likewise.
6877         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6878         (reg_buffer::raw_supply): Likewise.
6879         (reg_buffer::raw_supply_integer): Likewise.
6880         (reg_buffer::raw_supply_zeroed): Likewise.
6881         (reg_buffer::raw_collect): Likewise.
6882         (reg_buffer::raw_collect_integer): Likewise.
6883
6884 2018-06-10  Tom Tromey  <tom@tromey.com>
6885
6886         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6887         (class remote_state) <stop_reply_queue>: Now std::vector.
6888         (remote_state::~remote_state)
6889         (remote_target::stop_reply_queue_length): Update.
6890         (struct queue_iter_param, remove_child_of_pending_fork)
6891         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6892         (check_pending_event_prevents_wildcard_vcont_callback)
6893         (remove_stop_reply_for_inferior)
6894         (remove_stop_reply_of_remote_state)
6895         (remote_notif_remove_once_on_match)
6896         (stop_reply_match_ptid_and_ws)
6897         (remote_kill_child_of_pending_fork): Remove.
6898         (remote_target::remove_new_fork_children)
6899         (remote_target::check_pending_events_prevent_wildcard_vcont)
6900         (remote_target::discard_pending_stop_replies)
6901         (remote_target::discard_pending_stop_replies_in_queue)
6902         (remote_target::remote_notif_remove_queued_reply)
6903         (remote_target::queued_stop_reply)
6904         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6905         (remote_target::wait, remote_target::kill_new_fork_children)
6906         (remote_target::async): Update.
6907
6908 2018-06-10  Tom Tromey  <tom@tromey.com>
6909
6910         * record-full.c (record_full_arch_list_cleanups): Remove.
6911         (record_full_message): Use try/catch.
6912         (record_full_wait_cleanups): Remove.
6913         (record_full_wait_1): Use try/catch.
6914         (record_full_restore): Likewise.
6915
6916 2018-06-10  Tom Tromey  <tom@tromey.com>
6917
6918         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6919         declare VEC.  Add constructor.
6920         <in_target_beneath>: Now bool.
6921         (record_full_breakpoints): Now a std::vector, static.
6922         (record_full_sync_record_breakpoints)
6923         (record_full_init_record_breakpoints)
6924         (record_full_target::insert_breakpoint)
6925         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6926
6927 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6928
6929         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6930         * serial.c (serial_interface_lookup): Remove struct keyword.
6931
6932 2018-06-10  Tom Tromey  <tom@tromey.com>
6933
6934         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6935         method.
6936         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6937         a method.
6938         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6939         method.
6940         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6941         "beneath" as a method.
6942         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6943         Use "beneath" as a method.
6944
6945 2018-06-10  Tom Tromey  <tom@tromey.com>
6946
6947         * tracefile.c (struct trace_file_writer_deleter): New.
6948         <operator()>: Rename from trace_file_writer_xfree.
6949         (trace_file_writer_up): New typedef.
6950         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6951
6952 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6953
6954         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6955         <m_registers, m_register_status>: Change type to
6956         std::unique_ptr.
6957         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6958         XCNEWVEC.
6959
6960 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6961
6962         * common/common-regcache.h (enum register_status): Add
6963         underlying type "signed char".
6964         * regcache.h (reg_buffer) <m_register_status>: Change type to
6965         register_status *.
6966         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6967         register_status instead of signed char.
6968         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6969         (reg_buffer::get_register_status): Remove cast.
6970         (readable_regcache::raw_read): Remove cast.
6971         (readable_regcache::cooked_read): Remove cast.
6972
6973 2018-06-09  Tom Tromey  <tom@tromey.com>
6974
6975         * source.c (reverse_search_command, forward_search_command): Use
6976         scoped_fd.
6977
6978 2018-06-09  Tom Tromey  <tom@tromey.com>
6979
6980         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6981         (serial_ops_list): Now static, std::vector.
6982         (serial_interface_lookup, serial_add_interface): Update.
6983
6984 2018-06-09  Tom Tromey  <tom@tromey.com>
6985
6986         * dwarf2read.c (process_cu_includes): Update.
6987         (process_full_comp_unit): Update.
6988         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6989         std::vector.
6990
6991 2018-06-08  Paul Koning  <paul_koning@dell.com>
6992
6993         PR gdb/23252
6994
6995         * python/python.c (do_start_initialization):
6996         Avoid call to internal Python API.
6997         (init__gdb_module): New function.
6998
6999 2018-06-08  Gary Benson <gbenson@redhat.com>
7000
7001         * linux-thread-db.c (valprint.h): New include.
7002         (struct check_thread_db_info): New structure.
7003         (check_thread_db_on_load, tdb_testinfo): New static globals.
7004         (check_thread_db, check_thread_db_callback): New functions.
7005         (try_thread_db_load_1): Run integrity checks if requested.
7006         (maintenance_check_libthread_db): New function.
7007         (_initialize_thread_db): Register "maint check libthread-db"
7008         and "maint set/show check-libthread-db".
7009         * NEWS: Mention the above new commands.
7010
7011 2018-06-08  Tom Tromey  <tom@tromey.com>
7012
7013         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7014         now a method.
7015
7016 2018-06-08  Tom Tromey  <tom@tromey.com>
7017
7018         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7019
7020 2018-06-08  Tom Tromey  <tom@tromey.com>
7021
7022         * common/btrace-common.h (struct btrace_data): Add constructor,
7023         destructor, move assignment operator.
7024         <empty, clear, fini>: New methods.
7025         <format>: Initialize.
7026         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7027         (btrace_data_empty): Don't declare.
7028         * common/btrace-common.c (btrace_data_init): Remove.
7029         (btrace_data::fini): Rename from btrace_data_fini.
7030         (btrace_data::empty): Rename from btrace_data_empty.
7031         (btrace_data::clear): Rename from btrace_data_clear.  Return
7032         bool.
7033         * btrace.h (make_cleanup_btrace_data): Don't declare.
7034         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7035         (parse_xml_btrace): Update.
7036         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7037         (maint_btrace_clear_packet_history_cmd): Update.
7038
7039 2018-06-07  Pedro Alves  <palves@redhat.com>
7040
7041         * target.h (target_ops) <beneath>: Now a method.  All references
7042         updated.
7043         (class target_stack): New.
7044         * target.c (g_target_stack): New.
7045         (g_current_top_target): Delete.
7046         (current_top_target): Get the top target out of g_target_stack.
7047         (target_stack::push, target_stack::unpush): New.
7048         (push_target, unpush_target): Reimplement.
7049         (target_is_pushed): Reimplement in terms of g_target_stack.
7050         (target_ops::beneath, target_stack::find_beneath): New.
7051
7052 2018-06-07  Pedro Alves  <palves@redhat.com>
7053
7054         * target.h (find_target_beneath): Delete declaration.
7055         * target.c (find_target_beneath): Delete definition.
7056         * aix-thread.c: All callers of find_target_beneath adjusted to
7057         call target_ops::beneath instead.
7058         * bsd-uthread.c: Likewise.
7059         * linux-thread-db.c: Likewise.
7060         * ravenscar-thread.c: Likewise.
7061         * sol-thread.c: Likewise.
7062         * spu-multiarch.c: Likewise.
7063
7064 2018-06-07  Pedro Alves  <palves@redhat.com>
7065
7066         * target.h (target_ops) <beneath>: Now a method.  All references
7067         updated.
7068         (target_ops) <m_beneath>: New.
7069         * target.c (target_ops::beneath): New.
7070         * corelow.c: Adjust all references to target_ops::beneath.
7071         * linux-thread-db.c: Likewise.
7072         * make-target-delegates: Likewise.
7073         * record-btrace.c: Likewise.
7074         * record-full.c: Likewise.
7075         * remote.c: Likewise.
7076         * target.c: Likewise.
7077         * target-delegates.c: Regenerate.
7078
7079 2018-06-07  Pedro Alves  <palves@redhat.com>
7080
7081         * target.h (target_stack): Delete.
7082         (current_top_target): Declare function.
7083         * target.c (target_stack): Delete.
7084         (g_current_top_target): New.
7085         (current_top_target): New function.
7086         * auxv.c: Use current_top_target instead of target_stack
7087         throughout.
7088         * avr-tdep.c: Likewise.
7089         * breakpoint.c: Likewise.
7090         * corefile.c: Likewise.
7091         * elfread.c: Likewise.
7092         * eval.c: Likewise.
7093         * exceptions.c: Likewise.
7094         * frame.c: Likewise.
7095         * gdbarch-selftests.c: Likewise.
7096         * gnu-v3-abi.c: Likewise.
7097         * ia64-tdep.c: Likewise.
7098         * ia64-vms-tdep.c: Likewise.
7099         * infcall.c: Likewise.
7100         * infcmd.c: Likewise.
7101         * infrun.c: Likewise.
7102         * linespec.c: Likewise.
7103         * linux-tdep.c: Likewise.
7104         * minsyms.c: Likewise.
7105         * ppc-linux-nat.c: Likewise.
7106         * ppc-linux-tdep.c: Likewise.
7107         * procfs.c: Likewise.
7108         * regcache.c: Likewise.
7109         * remote.c: Likewise.
7110         * rs6000-tdep.c: Likewise.
7111         * s390-linux-nat.c: Likewise.
7112         * s390-tdep.c: Likewise.
7113         * solib-aix.c: Likewise.
7114         * solib-darwin.c: Likewise.
7115         * solib-dsbt.c: Likewise.
7116         * solib-spu.c: Likewise.
7117         * solib-svr4.c: Likewise.
7118         * solib-target.c: Likewise.
7119         * sparc-tdep.c: Likewise.
7120         * sparc64-tdep.c: Likewise.
7121         * spu-tdep.c: Likewise.
7122         * symfile.c: Likewise.
7123         * symtab.c: Likewise.
7124         * target-descriptions.c: Likewise.
7125         * target-memory.c: Likewise.
7126         * target.c: Likewise.
7127         * target.h: Likewise.
7128         * tracefile-tfile.c: Likewise.
7129         * tracepoint.c: Likewise.
7130         * valops.c: Likewise.
7131         * valprint.c: Likewise.
7132         * value.c: Likewise.
7133         * windows-tdep.c: Likewise.
7134         * mi/mi-main.c: Likewise.
7135
7136 2018-06-07  Tom Tromey  <tom@tromey.com>
7137
7138         * valprint.h (build_address_symbolic): Declare.
7139         * printcmd.c (print_address_symbolic): Update.
7140         (build_address_symbolic): Change "name" and "filename" to
7141         std::string.
7142         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7143         Update.
7144         * defs.h (build_address_symbolic): Remove declaration.
7145
7146 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7147
7148         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7149         (aarch64_vnv_type): Add function.
7150         (aarch64_pseudo_register_name): Add V regs for SVE.
7151         (aarch64_pseudo_register_type): Likewise.
7152         (aarch64_pseudo_register_reggroup_p): Likewise.
7153         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7154         (aarch64_pseudo_read_value): Add V regs for SVE.
7155         (aarch64_pseudo_write_2): Use V0 offset for SVE
7156         (aarch64_pseudo_write): Add V regs for SVE.
7157         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7158
7159 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7160
7161         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7162         (sve_vl_from_vq): Likewise.
7163
7164 2018-06-05  Tom Tromey  <tom@tromey.com>
7165
7166         * cli/cli-cmds.c (show_version): Update.
7167         * top.c (print_gdb_version): Add "interactive" parameter.
7168         Update.
7169         * main.c (captured_main_1): Update.
7170         * top.h (print_gdb_version): Add "interactive" parameter and a
7171         comment.
7172
7173 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7174
7175         * common/enum-flags.h: Add trailing semicolon to example in
7176         comment.
7177
7178 2018-06-05  Tom Tromey  <tom@tromey.com>
7179
7180         PR cli/12326:
7181         * NEWS: Add entry about pager.
7182         * utils.c (pagination_disabled_for_command): New global.
7183         (prompt_for_continue): Allow "c" response to prompt.
7184         (reinitialize_more_filter): Clear
7185         pagination_disabled_for_command.
7186         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7187
7188 2018-06-04  Tom Tromey  <tom@tromey.com>
7189
7190         * ada-lang.h (ada_lookup_symbol_list): Update.
7191         * ada-lang.c (resolve_subexp): Update.
7192         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7193         parameter.
7194         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7195         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7196         results parameter to std::vector.
7197         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7198         Update.
7199         * ada-exp.y (block_lookup): Update.
7200         (select_possible_type_sym): Change type of syms.  Remove nsyms
7201         parameter.
7202         (write_var_or_type, write_name_assoc): Update.
7203
7204 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7205
7206         * windows-nat.c (windows_nat_target::xfer_partial): Return
7207         TARGET_XFER_E_IO if we need to delegate to the target beneath
7208         but BENEATH is NULL.
7209
7210 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7211
7212         * Makefile.in (config.status): Add configure.nat as a
7213         dependency.
7214
7215 2018-06-04  Tom Tromey  <tom@tromey.com>
7216
7217         * cp-name-parser.y (cpname_state): Add method declarations.
7218         (HANDLE_QUAL): Update.
7219         (cpname_state::d_grab, cpname_state::fill_comp)
7220         (cpname_state::make_operator, cpname_state::make_dtor)
7221         (cpname_state::make_builtin_type, cpname_state::make_name)
7222         (cpname_state::d_qualify, cpname_state::d_int_type)
7223         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7224         (%union): Move earlier.
7225
7226 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7227
7228         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7229
7230 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7231
7232         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7233         (aarch64_pseudo_write_1): Likewise.
7234         (aarch64_pseudo_read_value): Use helper.
7235         (aarch64_pseudo_write): Likewise.
7236
7237 2018-06-04  Pedro Alves  <palves@redhat.com>
7238
7239         * darwin-nat.c (darwin_ops): Delete.
7240         (darwin_attach_pid): Use get_native_target.
7241
7242 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7243
7244         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7245         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7246
7247 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7248
7249         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7250         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7251         (aarch64_gdbarch_init): Check for SVE.
7252         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7253
7254 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7255
7256         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7257         * aarch64-tdep.h (aarch64_read_description): Likewise.
7258         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7259         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7260         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7261         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7262         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7263
7264 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7265
7266         * value.c (value_fetch_lazy_bitfield): New.
7267         (value_fetch_lazy_memory): New.
7268         (value_fetch_lazy_register): New.
7269         (value_fetch_lazy): Factor out to smaller functions.
7270
7271 2018-06-01  Tom Tromey  <tom@tromey.com>
7272
7273         * cp-name-parser.y (backslashable, represented): Now const.
7274
7275 2018-06-01  Tom Tromey  <tom@tromey.com>
7276
7277         * cp-name-parser.y: Include parser-defs.h.
7278         (parser_fprintf): Remove declaration.
7279
7280 2018-06-01  Tom Tromey  <tom@tromey.com>
7281
7282         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7283         %parse-param.
7284         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7285         (global_result): Remove globals.
7286         (struct cpname_state): New.
7287         (yyparse): Don't declare.
7288         (yylex, yyerror): Move declarations after %union.
7289         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7290         (make_name): Add state parameter.
7291         Update all callers.
7292         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7293         parameter.
7294         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7295         Update.
7296         (yylex): Add lvalp, state parameters.
7297         (yyerror): Add state parameter.
7298         (cp_demangled_name_to_comp): Update.
7299
7300 2018-06-01  Tom Tromey  <tom@tromey.com>
7301
7302         * cp-name-parser.y (parser_fprintf): Declare.
7303         (GDB_YY_REMAP_PREFIX): Define.
7304         Include yy-remap.h.  Don't redefine yy* identifiers.
7305
7306 2018-06-01  Tom Tromey  <tom@tromey.com>
7307
7308         * python/py-type.c (typy_legacy_template_argument): Update.
7309         * cp-support.h (cp_demangled_name_to_comp): Update.
7310         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7311         parameter to be a "std::string *".
7312         (main): Update.
7313
7314 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7315
7316         * ada-lex.l: Include "diagnostics.h" instead of
7317         "common/diagnostics.h".
7318         * unittests/environ-selftests.c: Likewise.
7319         * common/diagnostics.h: Moved to ../include.
7320
7321 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7322
7323         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7324         to language_mode_manual while calling breakpoint_re_set_one.
7325
7326 2018-06-01  Tom Tromey  <tom@tromey.com>
7327
7328         * valops.c (value_cast_structs, destructor_name_p): Update.
7329         * symtab.c (gdb_mangle_name): Update.
7330         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7331         Update.
7332         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7333         (pascal_object_print_value_fields, pascal_object_print_value):
7334         Update.
7335         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7336         * linespec.c (find_methods): Update.
7337         * gdbtypes.h (type_name_no_tag): Remove.
7338         (type_name_or_error): Rename from type_name_no_tag_or_error.
7339         * gdbtypes.c (type_name_no_tag): Remove.
7340         (type_name_or_error): Rename from type_name_no_tag_or_error.
7341         (lookup_struct_elt_type, check_typedef): Update.
7342         * expprint.c (print_subexp_standard): Update.
7343         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7344         * d-namespace.c (d_lookup_nested_symbol): Update.
7345         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7346         (cp_print_class_member): Update.
7347         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7348         * completer.c (add_struct_fields): Update.
7349         * c-typeprint.c (cp_type_print_derivation_info)
7350         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7351         Update.
7352         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7353         (ada_prefer_type, ada_is_exception_sym): Update.
7354
7355 2018-06-01  Tom Tromey  <tom@tromey.com>
7356
7357         * valops.c (enum_constant_from_type, value_namespace_elt)
7358         (value_maybe_namespace_elt): Update.
7359         * valarith.c (find_size_for_pointer_math): Update.
7360         * target-descriptions.c (make_gdb_type): Update.
7361         * symmisc.c (print_symbol): Update.
7362         * stabsread.c (define_symbol, read_type)
7363         (complain_about_struct_wipeout, add_undefined_type)
7364         (cleanup_undefined_types_1): Update.
7365         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7366         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7367         (rust_internal_print_type, rust_composite_type)
7368         (rust_evaluate_funcall, rust_evaluate_subexp)
7369         (rust_inclusive_range_type_p): Update.
7370         * python/py-type.c (typy_get_tag): Update.
7371         * p-typeprint.c (pascal_type_print_base): Update.
7372         * mdebugread.c (parse_symbol, parse_type): Update.
7373         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7374         Update.
7375         * guile/scm-type.c (gdbscm_type_tag): Update.
7376         * go-lang.c (sixg_string_p): Update.
7377         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7378         Update.
7379         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7380         (TYPE_TAG_NAME): Remove.
7381         * gdbtypes.c (type_name_no_tag): Simplify.
7382         (check_typedef, check_types_equal, recursive_dump_type)
7383         (copy_type_recursive, arch_composite_type): Update.
7384         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7385         in summary mode when needed.
7386         * eval.c (evaluate_funcall): Update.
7387         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7388         (process_structure_scope, read_enumeration_type)
7389         (read_namespace_type, read_module_type, determine_prefix): Update.
7390         * cp-support.c (inspect_type): Update.
7391         * coffread.c (process_coff_symbol, decode_base_type): Update.
7392         * c-varobj.c (c_is_path_expr_parent): Update.
7393         * c-typeprint.c (c_type_print_base_struct_union): Update.
7394         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7395         summary when using C language.
7396         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7397         (gen_maybe_namespace_elt): Update.
7398         * ada-lang.c (ada_type_name): Simplify.
7399         (empty_record, ada_template_to_fixed_record_type_1)
7400         (template_to_static_fixed_type)
7401         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7402
7403 2018-06-01  Tom Tromey  <tom@tromey.com>
7404
7405         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7406         c_print_type.
7407         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7408         (c_print_type): Update.
7409         (c_print_type): New overload.
7410         (c_type_print_varspec_prefix, c_type_print_args)
7411         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7412         (c_type_print_base_struct_union, c_type_print_base_1)
7413         (cp_type_print_method_args): Add "language" parameter.
7414         (c_type_print_base): Update.
7415         * c-lang.h (c_print_type): Add new overload.
7416
7417 2018-06-01  Tom Tromey  <tom@tromey.com>
7418
7419         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7420         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7421
7422 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7423
7424         * aarch64-tdep.c (aarch64_sve_register_names): New const
7425         var.
7426         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7427         (AARCH64_SVE_Z_REGS_NUM): New define.
7428         (AARCH64_SVE_P_REGS_NUM): Likewise.
7429         (AARCH64_SVE_NUM_REGS): Likewise.
7430
7431 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7432
7433         * nat/linux-ptrace.h [__alpha__]
7434         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7435         definitions.
7436
7437 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7438
7439         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7440         the endianness selected.
7441         * NEWS: Document `set endian auto' mode operation update.
7442
7443 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7444
7445         * Makefile.in: Add new header.
7446         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7447         (sve_vl_from_vg): Likewise.
7448         (sve_vq_from_vl): Likewise.
7449         (sve_vl_from_vq): Likewise.
7450         (sve_vq_from_vg): Likewise.
7451         (sve_vg_from_vq): Likewise.
7452         * configure.nat: Add new c file.
7453         * nat/aarch64-sve-linux-ptrace.c: New file.
7454         * nat/aarch64-sve-linux-ptrace.h: New file.
7455
7456 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7457
7458         * aarch64-linux-nat.c (aarch64_linux_read_description):
7459         Add parmeter zero.
7460         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7461         Likewise.
7462         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7463         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7464         (aarch64_gdbarch_init): Add parmeter zero.
7465         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7466         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7467         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7468         parmeter.
7469         * doc/gdb.texinfo: Describe SVE feature
7470         * features/aarch64-sve.c: New file.
7471
7472 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7473
7474         PR gdb/23210
7475         * gdbarch.sh (significant_addr_bit): Default to zero when
7476         not set by target architecture.
7477         * gdbarch.c: Re-generated.
7478         * utils.c (address_significant): Update.
7479
7480 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7481
7482         * stack.c (func_command): Remove trailing newline in call to error.
7483
7484 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7485
7486         * regcache.h (regcache_raw_collect): Remove, update callers to
7487         use regcache::raw_collect.
7488         * regcache.c (regcache_raw_collect): Remove.
7489
7490 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7491
7492         * regcache.h (regcache_raw_supply): Remove, update callers to
7493         use detached_regcache::raw_supply.
7494         * regcache.c (regcache_raw_supply): Remove.
7495
7496 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7497
7498         * regcache.h (regcache_cooked_write_part): Remove, update
7499         callers to use regcache::cooked_write_part.
7500         * regcache.c (regcache_cooked_write_part): Remove.
7501
7502 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7503
7504         * regcache.h (regcache_cooked_read_part): Remove, update callers
7505         to use readable_regcache::cooked_read_part.
7506         * regcache.c (regcache_cooked_read_part): Remove.
7507
7508 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7509
7510         * regcache.h (regcache_cooked_read_value): Remove, update
7511         callers to use readable_regcache::cooked_read_value.
7512         * regcache.c (regcache_cooked_read_value): Remove.
7513
7514 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7515
7516         * regcache.h (regcache_cooked_write): Remove, update callers to
7517         use regcache::cooked_write.
7518         * regcache.c (regcache_cooked_write): Remove.
7519
7520 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7521
7522         * regcache.h (regcache_invalidate): Remove, update callers to
7523         use detached_regcache::invalidate instead.
7524         * regcache.c (regcache_invalidate): Remove.
7525
7526 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7527
7528         * regcache.h (regcache_raw_write_part): Remove, update callers
7529         to use regcache::raw_write_part instead.
7530         * regcache.c (regcache_raw_write_part): Remove.
7531
7532 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7533
7534         * regcache.h (regcache_raw_read_part): Remove, update callers to
7535         use readable_regcache::raw_read_part instead.
7536         * regcache.c (regcache_raw_read_part): Remove.
7537
7538 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7539
7540         * regcache.h (regcache_cooked_read): Remove, update callers to
7541         use readable_regcache::cooked_read instead.
7542         * regcache.c (regcache_cooked_read): Remove.
7543
7544 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7545
7546         * regcache.h (regcache_raw_write): Remove, update callers to use
7547         regcache::raw_write instead.
7548         * regcache.c (regcache_raw_write): Remove.
7549
7550 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7551
7552         * regcache.h (regcache_raw_read): Remove, update callers to use
7553         readable_regcache::raw_read instead.
7554         * regcache.c (regcache_raw_read): Remove.
7555
7556 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7557
7558         * regcache.h (regcache_raw_update): Remove, update callers to
7559         use readable_regcache::raw_update instead.
7560         * regcache.c (regcache_raw_update): Remove.
7561
7562 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7563
7564         * regcache.h (regcache_register_status): Remove, update callers
7565         to use reg_buffer::get_register_status directly instead.
7566         * regcache.c (regcache_register_status): Remove.
7567
7568 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7569
7570         * regcache.h (regcache_get_ptid): Remove, update all callers to
7571         call regcache::ptid instead.
7572         * regcache.c (regcache_get_ptid): Remove.
7573
7574 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7575
7576         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7577
7578 2018-05-30  Pedro Alves  <palves@redhat.com>
7579
7580         * common/common-exceptions.h (exception_rethrow): Use
7581         ATTRIBUTE_NORETURN.
7582
7583 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7584
7585         * breakpoint.c (print_solib_event, check_status_catch_solib):
7586         Remove struct keyword in range-based for loops.
7587         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7588         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7589         Likewise.
7590         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7591         Likewise.
7592         * symfile.c (addr_info_make_relative): Likewise.
7593         * thread.c (value_in_thread_stack_temporaries): Likewise.
7594
7595 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7596
7597         PR gdb/16841
7598         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7599         aggregate type to get its real type before accessing it.
7600
7601 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7602
7603         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7604         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7605         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7606         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7607         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7608         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7609         * printcmd.c (info_address_command): Likewise.
7610
7611 2018-05-29  Tom Tromey  <tom@tromey.com>
7612
7613         * windows-nat.c (handle_exception): Update fall-through comment.
7614
7615 2018-05-29  Tom Tromey  <tom@tromey.com>
7616
7617         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7618         (struct program_space) <added_solibs>: Now a std::vector.
7619         * breakpoint.c (print_solib_event): Update.
7620         (check_status_catch_solib): Update.
7621         * progspace.c (clear_program_space_solib_cache): Update.
7622         * solib.c (update_solib_list): Update.
7623
7624 2018-05-29  Tom Tromey  <tom@tromey.com>
7625
7626         * python/py-type.c (typy_richcompare): Update.
7627         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7628         * gdbtypes.h (types_deeply_equal): Return bool.
7629         (types_equal): Likewise.
7630         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7631         declare VEC.
7632         (check_types_equal): Change worklist to std::vector.  Return
7633         bool.
7634         (struct type_equality_entry): Add constructor.
7635         (compare_maybe_null_strings): Return bool.
7636         (check_types_worklist): Return bool.  Change worklist to
7637         std::vector.
7638         (types_deeply_equal): Use std::vector.
7639         (types_equal): Return bool.
7640         (compare_maybe_null_strings): Simplify.
7641
7642 2018-05-29  Tom Tromey  <tom@tromey.com>
7643
7644         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7645
7646 2018-05-29  Tom Tromey  <tom@tromey.com>
7647
7648         * objc-lang.h: Don't include cp-support.h.
7649         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7650         declare VEC.
7651
7652 2018-05-27  Tom Tromey  <tom@tromey.com>
7653
7654         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7655
7656 2018-05-25  Tom Tromey  <tom@tromey.com>
7657
7658         * value.c (value::location): Initialize.
7659
7660 2018-05-25  Tom Tromey  <tom@tromey.com>
7661
7662         * dbxread.c (init_bincl_list): Remove.
7663         (bincl_list): Now a std::vector.
7664         (bincls_allocated, next_bincl): Remove.
7665         (free_bincl_list, do_free_bincl_list_cleanup)
7666         (make_cleanup_free_bincl_list): Remove.
7667         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7668         unique_xmalloc_ptr.
7669         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7670         (struct header_file_location): Add constructor.
7671         (add_bincl_to_list): Remove.
7672
7673 2018-05-25  Tom Tromey  <tom@tromey.com>
7674
7675         * tui/tui.c (tui_enable): Update.
7676         * mi/mi-interp.c (mi_interp::init): Update.
7677         * interps.h (class interp) <name>: New method.
7678         <m_name>: Rename from name.
7679         (~scoped_restore_interp): Update.
7680         * interps.c (interp::interp): Update.
7681         (interp_add, interp_set, interp_lookup_existing)
7682         (current_interp_named_p): Update.
7683
7684 2018-05-25  Tom Tromey  <tom@tromey.com>
7685
7686         * interps.c (interp_name): Remove.
7687         * mi/mi-interp.c (mi_interp::init): Update.
7688         * interps.h (interp_name): Remove.
7689         (~scoped_restore_interp): Update.
7690         * tui/tui.c (tui_enable): Update.
7691
7692 2018-05-25  Tom Tromey  <tom@tromey.com>
7693
7694         * utils.c (fputs_maybe_filtered): Update.
7695         * linespec.c (decode_line_full): Update.
7696         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7697         (mi_print_breakpoint_for_event, mi_solib_loaded)
7698         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7699         (mi_user_selected_context_changed): Update.
7700         * mi/mi-main.c (mi_execute_command): Update.
7701         * cli/cli-script.c (execute_control_command): Update.
7702         * python/python.c (execute_gdb_command): Update.
7703         * solib.c (info_sharedlibrary_command): Update.
7704         * interps.c (interp_ui_out): Remove.
7705         * interps.h (interp_ui_out): Remove.
7706
7707 2018-05-25  Tom Tromey  <tom@tromey.com>
7708
7709         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7710         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7711         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7712
7713 2018-05-25  Tom Tromey  <tom@tromey.com>
7714
7715         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7716         * interps.c (interp_exec): Use scoped_restore.
7717
7718 2018-05-25  Tom Tromey  <tom@tromey.com>
7719
7720         * remote.c (remote_target::remote_file_get): Use
7721         gdb::byte_vector.
7722         (remote_target::remote_file_put): Likewise.
7723
7724 2018-05-25  Tom Tromey  <tom@tromey.com>
7725
7726         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7727         a std::string.
7728         (get_pe_section_index, add_pe_exported_sym): Update.
7729         (read_pe_exported_syms): Use gdb::def_vector.
7730
7731 2018-05-25  Tom Tromey  <tom@tromey.com>
7732
7733         * frame.c (remove_prev_frame): Remove.
7734         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7735
7736 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7737
7738         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7739         Remove prototypes.
7740         * mips-linux-nat.c (supply_fpregset): Always call
7741         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7742         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7743         `mips_fill_fpregset'.
7744         * mips-linux-tdep.c (mips_supply_fpregset)
7745         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7746         (mips_fill_fpregset_wrapper): Remove functions.
7747         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7748         (mips_linux_fpregset): Remove variable.
7749         (mips_linux_iterate_over_regset_sections): Use
7750         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7751         (mips_linux_o32_sigframe_init): Remove comment.
7752
7753 2018-05-25  Pedro Alves  <palves@redhat.com>
7754
7755         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7756         (struct readahead_cache, struct packet_reg, struct
7757         remote_arch_state, class remote_state): Move higher up in the
7758         file.
7759         (remote_target::m_remote_state): Now an object instead of a pointer.
7760         (remote_target::get_remote_state): Adjust.
7761
7762 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7763
7764         * stack.c (select_and_print_frame): Delete.
7765         (struct function_bounds): Move struct within function.
7766         (func_command): Most content moved into new function
7767         find_frame_for_function, use new function, print result, add
7768         function comment.
7769         (find_frame_for_function): New function, now returns a result.
7770
7771 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7772
7773         * stack.c (iterate_over_block_arg_vars): Fix comment.
7774         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7775
7776 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7777
7778         PR gdb/23203
7779         * frame.c
7780         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7781         Define.
7782         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7783         Define.
7784         * frame.h (class scoped_restore_selected_frame): New class.
7785         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7786         of any exception, use scoped_restore_selected_frame to restore the
7787         frame instead.
7788
7789 2018-05-24  Pedro Alves  <palves@redhat.com>
7790
7791         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7792         override.
7793
7794 2018-05-23  Tom Tromey  <tom@tromey.com>
7795
7796         * complaints.c (struct complaints): Remove.
7797         (symfile_complaint_book): Remove.
7798         (series): New global.
7799         (complaint_internal): Update.
7800         (clear_complaints): Update.
7801
7802 2018-05-23  Tom Tromey  <tom@tromey.com>
7803
7804         * complaints.c (counters): New global.
7805         (struct complain): Remove.
7806         (struct complaints) <root>: Remove.
7807         (complaint_sentinel): Remove.
7808         (symfile_complaint_book): Update.
7809         (find_complaint) Remove.
7810         (complaint_internal, clear_complaints): Update.
7811
7812 2018-05-23  Tom Tromey  <tom@tromey.com>
7813
7814         * complaints.c (struct complain) <file, line>: Remove.
7815         (find_complaint): Remove file, line parameters.
7816         (complaint_internal): Update.
7817
7818 2018-05-23  Tom Tromey  <tom@tromey.com>
7819
7820         * complaints.c (vcomplaint): Remove.
7821         (complaint_internal) Merge in contents of vcomplaint.
7822
7823 2018-05-23  Tom Tromey  <tom@tromey.com>
7824
7825         * complaints.c (struct complaints) <explanation>: Remove.
7826         (symfile_explanations): Remove.
7827         (symfile_complaint_book): Update.
7828         (vcomplaint): Update.
7829         (struct explanation): Remove.
7830
7831 2018-05-23  Tom Tromey  <tom@tromey.com>
7832
7833         * complaints.c (symfile_complaints): Remove.
7834         (complaint_internal): Remove "complaints" parameter.
7835         (clear_complaints, vcomplaint): Remove "c" parameter.
7836         (get_complaints): Remove.
7837         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7838         (dwarf2_debug_line_missing_file_complaint)
7839         (dwarf2_debug_line_missing_end_sequence_complaint)
7840         (dwarf2_complex_location_expr_complaint)
7841         (dwarf2_const_value_length_mismatch_complaint)
7842         (dwarf2_section_buffer_overflow_complaint)
7843         (dwarf2_macro_malformed_definition_complaint)
7844         (dwarf2_invalid_attrib_class_complaint)
7845         (create_addrmap_from_index, dw2_symtab_iter_next)
7846         (dw2_expand_marked_cus)
7847         (dw2_debug_names_iterator::find_vec_in_debug_names)
7848         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7849         (create_debug_type_hash_table, init_cutu_and_read_dies)
7850         (partial_die_parent_scope, add_partial_enumeration)
7851         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7852         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7853         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7854         (create_cus_hash_table, create_dwp_hash_table)
7855         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7856         (dwarf2_rnglists_process, dwarf2_ranges_process)
7857         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7858         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7859         (handle_struct_member_die, process_structure_scope)
7860         (read_array_type, read_common_block, read_module_type)
7861         (read_tag_pointer_type, read_typedef, read_base_type)
7862         (read_subrange_type, load_partial_dies, partial_die_info::read)
7863         (partial_die_info::read, partial_die_info::read)
7864         (partial_die_info::read, read_checked_initial_length_and_offset)
7865         (dwarf2_string_attr, read_formatted_entries)
7866         (dwarf_decode_line_header)
7867         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7868         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7869         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7870         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7871         (get_signatured_type, get_DW_AT_signature_type)
7872         (decode_locdesc, file_file_name, consume_improper_spaces)
7873         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7874         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7875         (dwarf2_symbol_mark_computed, set_die_type)
7876         (read_attribute_value): Update.
7877         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7878         Update.
7879         * dbxread.c (unknown_symtype_complaint)
7880         (lbrac_mismatch_complaint, repeated_header_complaint)
7881         (set_namestring, function_outside_compilation_unit_complaint)
7882         (read_dbx_symtab, process_one_symbol): Update.
7883         * gdbtypes.c (stub_noname_complaint): Update.
7884         * windows-nat.c (handle_unload_dll): Update.
7885         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7886         (decode_base_type): Update.
7887         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7888         (eb_complaint, record_include_begin, record_include_end)
7889         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7890         (process_xcoff_symbol, read_symbol)
7891         (function_outside_compilation_unit_complaint)
7892         (scan_xcoff_symtab): Update.
7893         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7894         * buildsym.c (finish_block_internal, make_blockvector)
7895         (end_symtab_get_static_block, augment_type_symtab): Update.
7896         * dtrace-probe.c (dtrace_process_dof)
7897         (dtrace_static_probe_ops::get_probes): Update.
7898         * complaints.h (struct complaint): Don't declare.
7899         (symfile_complaints): Remove.
7900         (complaint_internal): Remove "complaints" parameter.
7901         (complaint): Likewise.
7902         (clear_complaints): Likewise.
7903         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7904         (reread_symbols): Update.
7905         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7906         (dwarf2_frame_cache, decode_frame_entry): Update.
7907         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7908         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7909         (info_selectors_command): Update.
7910         * macrotab.c (macro_include, check_for_redefinition)
7911         (macro_undef): Update.
7912         * objfiles.c (filter_overlapping_sections): Update.
7913         * stabsread.c (invalid_cpp_abbrev_complaint)
7914         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7915         (define_symbol, error_type, read_type, rs6000_builtin_type)
7916         (stabs_method_name_from_physname, read_member_functions)
7917         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7918         (attach_fields_to_type, complain_about_struct_wipeout)
7919         (read_range_type, read_args, common_block_start)
7920         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7921         Update.
7922         * mdebugread.c (index_complaint, unknown_ext_complaint)
7923         (basic_type_complaint, bad_tag_guess_complaint)
7924         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7925         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7926         (parse_procedure, parse_lines)
7927         (function_outside_compilation_unit_complaint)
7928         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7929         (bad_tag_guess_complaint, reg_value_complaint): Update.
7930         * cp-support.c (demangled_name_complaint): Update.
7931         * macroscope.c (sal_macro_scope): Update.
7932         * dwarf-index-write.c (class debug_names): Update.
7933
7934 2018-05-23  Tom Tromey  <tom@tromey.com>
7935
7936         * complaints.c (clear_complaints): Remove "noisy" parameter.
7937         * complaints.h (clear_complaints): Update.
7938         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7939         (reread_symbols): Update.
7940
7941 2018-05-23  Tom Tromey  <tom@tromey.com>
7942
7943         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7944         SUBSEQUENT_MESSAGE.
7945         (vcomplaint, clear_complaints): Update.
7946         (symfile_explanations): Remove some messages.
7947
7948 2018-05-23  Tom Tromey  <tom@tromey.com>
7949
7950         * complaints.c (internal_complaint): Remove.
7951         * complaints.h (internal_complaint): Remove.
7952
7953 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7954
7955         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7956
7957 2018-05-22  Pedro Alves  <palves@redhat.com>
7958
7959         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7960         (remote_fileio_badfd, remote_fileio_return_errno)
7961         (remote_fileio_return_success, remote_fileio_func_open)
7962         (remote_fileio_func_open, remote_fileio_func_close)
7963         (remote_fileio_func_read, remote_fileio_func_write)
7964         (remote_fileio_func_lseek, remote_fileio_func_rename)
7965         (remote_fileio_func_unlink, remote_fileio_func_stat)
7966         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7967         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7968         remote_target parameter.
7969         (remote_fio_func_map) <func>: Add remote_target parameter.
7970         (do_remote_fileio_request, remote_fileio_request):
7971         * remote-fileio.h (remote_fileio_request):
7972         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7973         remote_target parameter.
7974         (remote_notif_process, handle_notification): Adjust to pass down
7975         the remote.
7976         (remote_notif_state_allocate): Add remote_target parameter.  Save
7977         it.
7978         * remote-notif.h (struct remote_target): Forward declare.
7979         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7980         remote_target parameter.
7981         (struct remote_notif_state) <remote>: New field.
7982         (remote_notif_ack, remote_notif_parse): Add remote_target
7983         parameter.
7984         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7985         remote_target parameter.
7986         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7987         (threads_listing_context, rmt_thread_action, protocol_feature)
7988         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7989         (packet_result, struct threads_listing_context, remote_state):
7990         Move definitions and declarations higher up.
7991         (remote_target) <~remote_target>: Declare.
7992         (remote_download_command_source, remote_file_put, remote_file_get)
7993         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7994         (remote_hostio_pread_vFile, remote_hostio_send_command)
7995         (remote_hostio_set_filesystem, remote_hostio_open)
7996         (remote_hostio_close, remote_hostio_unlink, remote_state)
7997         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7998         (get_memory_write_packet_size, get_memory_read_packet_size)
7999         (append_pending_thread_resumptions, remote_detach_1)
8000         (append_resumption, remote_resume_with_vcont)
8001         (add_current_inferior_and_thread, wait_ns, wait_as)
8002         (process_stop_reply, remote_notice_new_inferior)
8003         (process_initial_stop_replies, remote_add_thread)
8004         (btrace_sync_conf, remote_btrace_maybe_reopen)
8005         (remove_new_fork_children, kill_new_fork_children)
8006         (discard_pending_stop_replies, stop_reply_queue_length)
8007         (check_pending_events_prevent_wildcard_vcont)
8008         (discard_pending_stop_replies_in_queue, stop_reply)
8009         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8010         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8011         (remote_interrupt_as, remote_interrupt_ns)
8012         (remote_get_noisy_reply, remote_query_attached)
8013         (remote_add_inferior, remote_current_thread, get_current_thread)
8014         (set_thread, set_general_thread, set_continue_thread)
8015         (set_general_process, write_ptid)
8016         (remote_unpack_thread_info_response, remote_get_threadinfo)
8017         (parse_threadlist_response, remote_get_threadlist)
8018         (remote_threadlist_iterator, remote_get_threads_with_ql)
8019         (remote_get_threads_with_qxfer)
8020         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8021         (get_offsets, remote_check_symbols, remote_supported_packet)
8022         (remote_query_supported, remote_packet_size)
8023         (remote_serial_quit_handler, remote_detach_pid)
8024         (remote_vcont_probe, remote_resume_with_hc)
8025         (send_interrupt_sequence, interrupt_query)
8026         (remote_notif_get_pending_events, fetch_register_using_p)
8027         (send_g_packet, process_g_packet, fetch_registers_using_g)
8028         (store_register_using_P, store_registers_using_G)
8029         (set_remote_traceframe, check_binary_download)
8030         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8031         (remote_xfer_live_readonly_partial, remote_read_bytes)
8032         (remote_send_printf, remote_flash_write, readchar)
8033         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8034         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8035         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8036         (extended_remote_disable_randomization, extended_remote_run)
8037         (send_environment_packet, extended_remote_environment_support)
8038         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8039         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8040         (packet_command): Now methods of ...
8041         (remote_target): ... this class.
8042         (m_remote_state) <remote_target>: New field.
8043         (struct remote_state) <stop_reply_queue,
8044         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8045         fields.
8046         (remote_state::remote_state): Allocate stop_reply_queue.
8047         (remote_state): Delete global.
8048         (get_remote_state_raw): Delete.
8049         (remote_target::get_remote_state): Allocate m_remote_state on
8050         demand.
8051         (get_current_remote_target): New.
8052         (remote_ops, extended_remote_ops): Delete.
8053         (wait_forever_enabled_p, remote_async_inferior_event_token):
8054         Delete, moved to struct remote_state.
8055         (remote_target::close): Delete self.  Destruction bits split to
8056         ...
8057         (remote_target::~remote_target): ... this.
8058         (show_memory_packet_size): Adjust to use
8059         get_current_remote_target.
8060         (struct protocol_feature) <func>: Add remote_target parameter.
8061         All callers adjusted.
8062         (curr_quit_handler_target): New.
8063         (remote_serial_quit_handler): Reimplement.
8064         (remote_target::open_1): Adjust to use get_current_remote_target.
8065         Heap-allocate remote_target/extended_remote_target instances.
8066         (vcont_builder::vcont_builder): Add remote_target parameter, and
8067         save it in m_remote.  All callers adjusted.
8068         (vcont_builder::m_remote): New field.
8069         (vcont_builder::restart, vcont_builder::flush)
8070         (vcont_builder::push_action): Use it.
8071         (remote_target::commit_resume): Use it.
8072         (struct queue_iter_param) <remote>: New field.
8073         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8074         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8075         (check_pending_event_prevents_wildcard_vcont_callback)
8076         (remote_target::check_pending_events_prevent_wildcard_vcont)
8077         (remote_target::discard_pending_stop_replies)
8078         (remote_target::discard_pending_stop_replies_in_queue)
8079         (remote_target::remote_notif_remove_queued_reply): Fill in
8080         'remote' field.
8081         (remote_notif_get_pending_events): New.
8082         (remote_target::readchar, remote_target::remote_serial_write):
8083         Save/restore curr_quit_handler_target.
8084         (putpkt): New.
8085         (kill_new_fork_children): Fill in 'remote' field.
8086         (packet_command): Use get_current_remote_target, defer to
8087         remote_target method of same name.
8088         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8089         parameter, and save it in m_remote.  All callers adjusted.
8090         (scoped_remote_fd::release): Use m_remote.
8091         (scoped_remote_fd::m_remote): New field.
8092         (remote_file_put, remote_file_get, remote_file_delete): Use
8093         get_current_remote_target, defer to remote_target method of same
8094         name.
8095         (remote_btrace_reset): Add remote_state paremeter.  Update all
8096         callers.
8097         (remote_async_inferior_event_handler). Pass down 'data'.
8098         (remote_new_objfile): Use get_current_remote_target.
8099         (remote_target::vcont_r_supported): New.
8100         (set_range_stepping): Use get_current_remote_target and
8101         remote_target::vcont_r_supported.
8102         (_initialize_remote): Don't allocate 'remote_state' and
8103         'stop_reply_queue' globals.
8104         * remote.h (struct remote_target): Forward declare.
8105         (getpkt, putpkt, remote_notif_get_pending_events): Add
8106         'remote_target' parameter.
8107
8108 2018-05-22  Pedro Alves  <palves@redhat.com>
8109
8110         * remote.c (vcont_builder): Now a class.  Make all data members
8111         private.
8112         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8113         Declare methods.
8114         (vcont_builder_restart): Rename to ...
8115         (vcont_builder::restart): ... this.
8116         (vcont_builder_flush): Rename to ...
8117         (vcont_builder::flush): ... this.
8118         (vcont_builder_push_action): Rename to ...
8119         (vcont_builder::push_action): ... this.
8120         (remote_target::commit_resume): Adjust.
8121
8122 2018-05-22  Pedro Alves  <palves@redhat.com>
8123
8124         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8125         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8126         (get_fixed_memory_packet_size): New.
8127         (get_memory_packet_size): Use it.
8128         (set_memory_packet_size): Don't override the config size with
8129         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8130         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8131         Don't refer to get_memory_packet_size if not connected to a remote
8132         target.  Show "(default)" if configured size is 0.
8133
8134 2018-05-22  Pedro Alves  <palves@redhat.com>
8135
8136         * remote.c (remote_target::mourn_inferior): Move
8137         discard_pending_stop_replies call here from ...
8138         (_initialize_remote): ... here.
8139
8140 2018-05-22  Pedro Alves  <palves@redhat.com>
8141
8142         * remote.c (compare_section_command): Remove set_general_process
8143         call.
8144
8145 2018-05-22  Pedro Alves  <palves@redhat.com>
8146
8147         * remote.c (struct packet_reg, struct remote_arch_state):
8148         Move higher up in the file.
8149         (remote_state) <m_arch_states>: Store remote_arch_state values
8150         instead of remote_arch_state pointers.
8151         (remote_state::get_remote_arch_state): Adjust.
8152
8153 2018-05-22  Pedro Alves  <palves@redhat.com>
8154
8155         * remote.c: Include <unordered_map>.
8156         (remote_state): Now a class.
8157         (remote_state) <get_remote_arch_state>: Declare method.
8158         <get_remote_arch_state>: New field.
8159         (remote_arch_state) <remote_arch_state>: Declare ctor.
8160         <regs>: Now a unique_ptr.
8161         (remote_gdbarch_data_handle): Delete.
8162         (get_remote_arch_state): Delete.
8163         (remote_state::get_remote_arch_state): New.
8164         (get_remote_state): Adjust to call remote_state's
8165         get_remote_arch_state method.
8166         (init_remote_state): Delete, bits factored out to ...
8167         (remote_arch_state::remote_arch_state): ... this new method.
8168         (get_remote_packet_size, get_memory_packet_size)
8169         (process_g_packet, remote_target::fetch_registers)
8170         (remote_target::prepare_to_store, store_registers_using_G)
8171         (remote_target::store_registers, remote_target::get_trace_status):
8172         Adjust to call remote_state's method.
8173         (_initialize_remote): Remove reference to
8174         remote_gdbarch_data_handle.
8175
8176 2018-05-22  Pedro Alves  <palves@redhat.com>
8177
8178         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8179         pread>: New method declarations.
8180         (remote_target::open_1): Adjust.
8181         (readahead_cache_invalidate): Rename to ...
8182         (readahead_cache::invalidate): ... this, and adjust to be a class
8183         method.
8184         (readahead_cache_invalidate_fd): Rename to ...
8185         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8186         class method.
8187         (remote_hostio_pwrite): Adjust.
8188         (remote_hostio_pread_from_cache): Rename to ...
8189         (readahead_cache::pread): ... this, and adjust to be a class
8190         method.
8191         (remote_hostio_close): Adjust.
8192
8193 2018-05-22  Pedro Alves  <palves@redhat.com>
8194
8195         * remote.c (remote_hostio_close_cleanup): Delete.
8196         (class scoped_remote_fd): New.
8197         (remote_file_put, remote_file_get): Use it.
8198
8199 2018-05-22  Pedro Alves  <palves@redhat.com>
8200
8201         (struct vCont_action_support): Use bool and initialize all fields.
8202         (struct readahead_cache): Initialize all fields.
8203         (remote_state): Use bool and initialize all fields.
8204         (remote_state::remote_state, remote_state::~remote_state): New.
8205         (new_remote_state): Delete.
8206         (_initialize_remote): Use new to allocate remote_state.
8207
8208 2018-05-22  Pedro Alves  <palves@redhat.com>
8209             張俊芝  <zjz@zjz.name>
8210
8211         PR gdb/22973
8212         * c-exp.y: Include "c-support.h".
8213         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8214         of tolower.  Use c_ident_is_alpha to scan names.
8215         * c-lang.c: Include "c-support.h".
8216         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8217         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8218         * c-support.h: New file, with bits factored out from ...
8219         * cp-name-parser.y: ... this file.
8220         Include "c-support.h".
8221         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8222         c-support.h and renamed.
8223         (symbol_end, yylex): Adjust.
8224
8225 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8226
8227         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8228         parameter type to CORE_ADDR.
8229         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8230         parameter type in declaration to CORE_ADDR.
8231         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8232         target_auxv_search to get AT_HWCAP and use the result to get the
8233         target description.
8234         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8235         to CORE_ADDR. Remove the cast of the return value to unsigned
8236         long. Fix error predicate of target_auxv_search.
8237         (ppc_linux_nat_target::read_description): Change the type of the
8238         hwcap variable to CORE_ADDR.
8239
8240 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8241
8242         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8243         if the size of fpscr is larger than 32 bits.
8244
8245 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8246
8247         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8248         (ppc32_linux_vsxregmap): New global.
8249         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8250         regcache_supply_regset, and regcache_collect_regset.
8251         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8252         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8253         (fetch_vsx_register, store_vsx_register): Remove.
8254         (fetch_vsx_registers): Add regno parameter. Get regset using
8255         ppc_linux_vsxregset. Use regset to supply registers.
8256         (store_vsx_registers): Add regno parameter. Get regset using
8257         ppc_linux_vsxregset. Use regset to collect registers.
8258         (fetch_register): Call fetch_vsx_registers instead of
8259         fetch_vsx_register.
8260         (store_register): Call store_vsx_registers instead of
8261         store_vsx_register.
8262         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8263         new regno parameter.
8264         (store_ppc_registers): Call store_vsx_registers with -1 for the
8265         new regno parameter.
8266         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8267         (ppc_collect_vsxregset): Remove.
8268
8269 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8270
8271         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8272         offset fields.
8273         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8274         for vector register offset fields.
8275         (ppc64_fbsd_reg_offsets): Likewise.
8276         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8277         to vector register offset fields.
8278         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8279         to vector register offset fields.
8280         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8281         vector register offset fields.
8282         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8283         initializers for vector register offset fields.
8284         (rs6000_aix64_reg_offsets): Likewise.
8285         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8286         (ppc_supply_vrregset): Remove.
8287         (ppc_collect_vrregset): Remove.
8288         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8289         (ppc_linux_vrregset) : New function.
8290         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8291         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8292         (ppc32_linux_vrregset): Remove.
8293         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8294         and use result instead of ppc32_linux_vrregset.
8295         (ppc32_linux_reg_offsets): Remove initializers for vector register
8296         offset fields.
8297         (ppc64_linux_reg_offsets): Likewise.
8298         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8299         * ppc-linux-nat.c: Include regset.h.
8300         (gdb_vrregset_t): Adjust comment to account for little-endian
8301         mode.
8302         (supply_vrregset, fill_vrregset): Remove.
8303         (fetch_altivec_register, store_altivec_register): Remove.
8304         (fetch_altivec_registers): Add regno parameter. Get regset using
8305         ppc_linux_vrregset. Use regset to supply registers.
8306         (store_altivec_registers): Add regno parameter. Get regset using
8307         ppc_linux_vrregset. Use regset to collect registers.
8308         (fetch_register): Call fetch_altivec_registers instead of
8309         fetch_altivec_register.
8310         (store_register): Call store_altivec_registers instead of
8311         store_altivec_register.
8312         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8313         the new regno parameter.
8314         (store_ppc_registers): Call store_altivec_registers with -1 for
8315         the new regno parameter.
8316
8317 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8318
8319         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8320         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8321         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8322         (gdb_vrregset_t): Change array type size to
8323         PPC_LINUX_SIZEOF_VRREGSET.
8324         (gdb_vsxregset_t): Change array type size to
8325         PPC_LINUX_SIZEOF_VSXREGSET.
8326         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8327         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8328         PPC_LINUX_SIZEOF_VSXREGSET.
8329
8330 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8331
8332         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8333         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8334         nat/ppc-linux.c.
8335         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8336         ppc_linux_target_wordsize with tid.
8337         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8338         wordsize with tid.
8339         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8340         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8341         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8342         tid parameter. Remove static specifier.
8343         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8344         (ppc_linux_target_wordsize): New declaration.
8345
8346 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8347
8348         * arch/ppc-linux-common.c: New file.
8349         * arch/ppc-linux-common.h: New file.
8350         * arch/ppc-linux-tdesc.h: New file.
8351         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8352         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8353         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8354         arch/ppc-linux-tdesc.h.
8355         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8356         arch/ppc-linux-tdesc.h.
8357         (ppc_linux_nat_target::read_description): Remove target
8358         description matching code. Fill a ppc_linux_features struct and
8359         call ppc_linux_match_description with it. Move comment about ISA
8360         2.05 to ppc-linux-common.c.
8361         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8362         arch/ppc-linux-tdesc.h.
8363         (ppc_linux_core_read_description): Remove target description
8364         matching code. Fill a ppc_linux_features struct and call
8365         ppc_linux_match_description with it.
8366         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8367         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8368         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8369         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8370         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8371         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8372         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8373         (tdesc_powerpc_e500l): Remove.
8374
8375 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8376
8377         * ada-lang.c (catch_assert_command): Pass empty string instead
8378         of NULL for excep_string argument.
8379
8380 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8381
8382         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8383         the width of the requested register exceeds the width of the
8384         `ptrace' data type.
8385
8386 2018-05-21  Tom Tromey  <tom@tromey.com>
8387
8388         * printcmd.c (output_command): Remove.
8389         (output_command_const): Rename to output_command.
8390         * valprint.h (output_command): Rename from output_command_const.
8391         * tracepoint.c (trace_dump_actions): Call output_command.
8392
8393 2018-05-21  Tom Tromey  <tom@tromey.com>
8394
8395         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8396         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8397         * ada-lang.h (create_ada_exception_catchpoint): Update.
8398         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8399         std::string.
8400         (create_excep_cond_exprs, ~ada_catchpoint)
8401         (should_stop_exception, print_one_exception)
8402         (print_mention_exception, print_recreate_exception): Update.
8403         (ada_get_next_arg): Remove.
8404         (catch_ada_exception_command_split): Use std::string.  Change type
8405         of "excep_string", "cond_string".
8406         (catch_ada_exception_command): Update.
8407         (create_ada_exception_catchpoint): Change type of excep_string.
8408         (ada_exception_sal): Remove excep_string parameter.
8409         (~ada_catchpoint): Remove.
8410
8411 2018-05-21  Tom Tromey  <tom@tromey.com>
8412
8413         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8414         cleanup.
8415
8416 2018-05-21  Tom Tromey  <tom@tromey.com>
8417
8418         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8419         Return unique_xmalloc_ptr.
8420         (print_it_exception): Update.
8421
8422 2018-05-21  Tom Tromey  <tom@tromey.com>
8423
8424         * tracepoint.c (trace_dump_actions): Use std::string.
8425
8426 2018-05-21  Tom Tromey  <tom@tromey.com>
8427
8428         * symfile.c (reread_symbols): Use std::string for original_name.
8429
8430 2018-05-21  Tom Tromey  <tom@tromey.com>
8431
8432         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8433         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8434         constructor.
8435
8436 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8437
8438         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8439         instance to...
8440         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8441         * objfiles.c (get_objfile_bfd_data): Allocate
8442         objfile_per_bfd_storage with obstack_new when allocating on
8443         obstack.
8444
8445 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8446
8447         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8448         OBSTACK_ZALLOC.
8449         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8450         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8451         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8452         (add_pending): Likewise.
8453         (parse_symbol): Likewise.
8454         (parse_partial_symbols): Likewise.
8455         (psymtab_to_symtab_1): Likewise.
8456         (new_psymtab): Likewise.
8457         (elfmdebug_build_psymtabs): Likewise.
8458         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8459         * objfiles.c (get_objfile_bfd_data): Likewise.
8460         (objfile_register_static_link): Likewise.
8461         * psymtab.c (allocate_psymtab): Likewise.
8462         * stabsread.c (read_member_functions): Likewise.
8463         * xcoffread.c (xcoff_end_psymtab): Likewise.
8464
8465 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8466
8467         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8468         compiler supports std::is_trivially_constructible.
8469         * common/poison.h: Include obstack.h.
8470         (IsMallocable): Define to is_trivially_constructible if the
8471         compiler supports it, define to true_type otherwise.
8472         (xobnew): New.
8473         (XOBNEW): Redefine.
8474         (xobnewvec): New.
8475         (XOBNEWVEC): Redefine.
8476         * gdb_obstack.h (obstack_zalloc): New.
8477         (OBSTACK_ZALLOC): Redefine.
8478         (obstack_calloc): New.
8479         (OBSTACK_CALLOC): Redefine.
8480         (obstack_new): New.
8481         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8482         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8483         gdbarch.c.
8484         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8485         obstack_calloc/obstack_zalloc.
8486         (gdbarch_obstack_zalloc): Remove.
8487         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8488
8489 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8490
8491         * stack.c (backtrace_command_1): Remove useless variable int i.
8492
8493 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8494
8495         * stack.c (print_frame_info): Fix comment.
8496
8497 2018-05-18  Tom Tromey  <tom@tromey.com>
8498
8499         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8500         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8501         (~dwarf2_per_objfile): Update
8502         (dwarf2_get_dwz_file): Use new.
8503         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8504         unique_ptr.
8505
8506 2018-05-18  Tom Tromey  <tom@tromey.com>
8507
8508         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8509         unique_ptr.
8510         * dwarf2read.c (struct dwp_file): Add constructor and
8511         initializers.
8512         (open_and_init_dwp_file): Return a unique_ptr.
8513         (dwarf2_per_objfile, create_dwp_hash_table)
8514         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8515         (lookup_dwo_unit_in_dwp): Update.
8516         (open_and_init_dwp_file, get_dwp_file): Update.
8517
8518 2018-05-18  Tom Tromey  <tom@tromey.com>
8519
8520         * dwarf2read.c (dwarf2_per_objfile): Update.
8521         (struct mapped_index): Add initializers.
8522         (dwarf2_read_index): Use new.
8523         (dw2_symtab_iter_init): Update.
8524         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8525         unique_ptr.
8526
8527 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8528
8529         * dwarf2read.c (mapped_index) <total_size>: Remove.
8530
8531 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8532
8533         * unittests/format_pieces-selftests.c (test_format_specifier):
8534         Add ARI comments.
8535
8536 2018-05-18  Tom Tromey  <tom@tromey.com>
8537
8538         * c-typeprint.c (maybe_print_hole): New function.
8539         (c_print_type_struct_field_offset): Update.
8540         (c_type_print_base_struct_union): Call maybe_print_hole.
8541
8542 2018-05-17  Keith Seitz  <keiths@redhat.com>
8543
8544         * breakpoint.c (build_bpstat_chain): New function, moved from
8545         bpstat_stop_status.
8546         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8547         If no stop chain is passed, call build_bpstat_chain to build it.
8548         * breakpoint.h (build_bpstat_chain): Declare.
8549         (bpstat_stop_status): Move documentation here from breakpoint.c.
8550         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8551         build the stop chain and pass it to skip_inline_frames.
8552         Pass this stop chain to bpstat_stop_status.
8553         * inline-frame.c: Include breakpoint.h.
8554         (stopped_by_user_bp_inline_frame): New function.
8555         (skip_inline_frames): Add parameter `stop_chain'.
8556         Move documention to inline-frame.h.
8557         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8558         whether the frame should be elided.
8559         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8560         Add moved documentation and update for new parameter.
8561
8562 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8563
8564         PR cli/14975
8565         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8566         unittests/format_pieces-selftests.c.
8567         * common/format.h (format_piece) <operator==>: New.
8568         (format_pieces) <operator[]>: Remove.
8569         * common/format.c (format_pieces::format_pieces): Handle \e.
8570         * unittests/format_pieces-selftests.c: New.
8571
8572 2018-05-17  Tom Tromey  <tom@tromey.com>
8573
8574         PR symtab/23010:
8575         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8576         (dw2_instantiate_symtab): Add skip_partial parameter.
8577         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8578         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8579         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8580         (dw2_expand_symtabs_matching_one)
8581         (dw2_find_pc_sect_compunit_symtab)
8582         (dw2_debug_names_lookup_symbol)
8583         (dw2_debug_names_expand_symtabs_for_function): Update.
8584         (init_cutu_and_read_dies): Add skip_partial parameter.
8585         (process_psymtab_comp_unit, build_type_psymtabs_1)
8586         (process_skeletonless_type_unit, load_partial_comp_unit)
8587         (psymtab_to_symtab_1): Update.
8588         (load_full_comp_unit): Add skip_partial parameter.
8589         (process_imported_unit_die, dwarf2_read_addr_index)
8590         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8591         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8592         (read_signatured_type): Update.
8593
8594 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8595
8596         * value.c (release_value): Remove unused variable.
8597         (record_latest_value): Likewise.
8598         (access_value_history): Likewise.
8599         (preserve_values): Likewise.
8600
8601 2018-05-17  Tom Tromey  <tom@tromey.com>
8602
8603         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8604         Initialize.
8605
8606 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8607
8608         PR gdb/22286
8609         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8610         Also handle registers whose width is not a multiple of
8611         PTRACE_TYPE_RET.
8612         (linux_nat_trad_target::store_register): Likewise.
8613
8614 2018-05-16  Tom Tromey  <tom@tromey.com>
8615
8616         * gdbcore.h (core_bfd): Redefine.
8617         * corelow.c (core_target::close): Update.
8618         (core_target_open): Update.
8619         * progspace.h (struct program_space) <cbfd>: Now a
8620         gdb_bfd_ref_ptr.
8621
8622 2018-05-16  Tom Tromey  <tom@tromey.com>
8623
8624         PR cli/19551:
8625         * symfile-add-flags.h (enum symfile_add_flags)
8626         <SYMFILE_NOT_FILENAME>: New constant.
8627         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8628         objfile name from BFD.
8629         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8630         * minidebug.c (find_separate_debug_file_in_section): Put
8631         ".gnu_debugdata" into BFD's file name.
8632
8633 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8634
8635         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8636         Remove.
8637
8638 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8639
8640         PR binutils/21446
8641         * aarch64-tdep.c (aarch64_analyze_prologue,
8642         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8643         Indicate not interested in errors.
8644
8645 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8646
8647         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8648         Supply the MIPS_ZERO_REGNUM register.
8649
8650 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8651
8652         * mips-tdep.c (mask_address_var): Make variable static.
8653
8654 2018-05-14  Tom Tromey  <tom@tromey.com>
8655
8656         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8657
8658 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8659
8660         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8661         FXSAVE_ADDR for the mxcsr register.
8662
8663 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8664
8665         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8666
8667 2018-05-11  Pedro Alves  <palves@redhat.com>
8668
8669         * corelow.c (core_target) <core_target>: No longer inline.
8670         Initialize m_core_gdbarch, m_core_vec and build the section table
8671         here.
8672         <~core_target>: New.
8673         <core_gdbarch, get_core_register_section>: New methods.
8674         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8675         factored out from ...
8676         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8677         (core_ops): Delete.
8678         (sniff_core_bfd): Add gdbarch parameter.
8679         (core_close): Delete, merged into ...
8680         (core_target::close): ... here.  Delete self.
8681         (core_close_cleanup): Delete.
8682         (core_target_open): Allocate a core_target on the heap.  Use a
8683         unique_ptr instead of a cleanup.  Bits moved into the core_target
8684         ctor.  Adjust to use core_target methods instead of globals.
8685         (get_core_register_section): Rename to ...
8686         (core_target::get_core_register_section): ... this and adjust.
8687         (struct get_core_registers_cb_data): New.
8688         (get_core_registers_cb): Use it.  Use bool.
8689         (core_target::fetch_registers, core_target::files_info)
8690         (core_target::xfer_partial, core_target::read_description)
8691         (core_target::pid_to, core_target::thread_name): Adjust to
8692         reference class fields instead of globals.
8693         * target.h (struct target_ops_deleter, target_ops_up): New.
8694
8695 2018-05-11  Pedro Alves  <palves@redhat.com>
8696
8697         * corefile.c (core_file_command): Move to corelow.c.
8698         * corelow.c (the_core_target): Delete.
8699         (core_file_command): Moved from corefile.c.  Check exec_bfd
8700         instead of the_core_target.  Use target_detach instead of calling
8701         into the_core_target directly.
8702         (maybe_say_no_core_file_now): New.
8703         (core_target::detach): Use it.
8704         (_initialize_corelow): Remove references to the_core_target.
8705         * gdbcore.h (the_core_target): Delete.
8706
8707 2018-05-11  Tom Tromey  <tromey@redhat.com>
8708             Pedro Alves  <palves@redhat.com>
8709
8710         * corefile.c (core_bfd): Remove.
8711         * gdbcore.h (core_bfd): Now a macro.
8712         * progspace.h (struct program_space) <cbfd>: New field.
8713
8714 2018-05-11  Tom Tromey  <tom@tromey.com>
8715
8716         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8717         gdb::def_vector.
8718
8719 2018-05-10  Tom Tromey  <tom@tromey.com>
8720
8721         * configure: Rebuild.
8722         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8723
8724 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8725
8726         PR server/23158:
8727         * regformats/regdat.sh: Adjust script, following the addition
8728         of the new expedite_regs parameter to init_target_desc.
8729
8730 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8731     
8732         PR gdb/23127
8733         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8734         set_gdbarch_significant_addr_bit.
8735         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8736         set_gdbarch_significant_addr_bit.
8737         * utils.c (address_significant): Update to sign extend addr.
8738
8739 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8740
8741         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8742         (xtensa_linux_init_abi): Limit tdep->num_regs by
8743         tdep->num_nopriv_regs.
8744         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8745         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8746         not initialized.
8747
8748 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8749
8750         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8751
8752 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8753
8754         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8755         (I387_MXCSR_INIT_VAL): New constant.
8756         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8757         buffer if it was supplied by the inferior.
8758         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8759         (i387_xsave_get_clear_bv): New function.
8760         (i387_supply_xsave): Only read x87 control registers from the
8761         xsave buffer if the feature is enabled, and the state will have
8762         been written, otherwise, provide a suitable default.
8763         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8764         including x87 control registers.  Update control registers if they
8765         have changed from the default value, and mark features as enabled
8766         as required.
8767         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8768
8769 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8770
8771         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8772
8773 2018-05-07  Tom Tromey  <tom@tromey.com>
8774
8775         * configure: Rebuild.
8776         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8777
8778 2018-05-07  Tom Tromey  <tom@tromey.com>
8779
8780         PR tdep/20362:
8781         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8782         bit.  Use correct value for VDIV.
8783
8784 2018-05-04  Tom Tromey  <tom@tromey.com>
8785
8786         * configure: Rebuild.
8787         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8788
8789 2018-05-04  Tom Tromey  <tom@tromey.com>
8790
8791         * linux-record.c (record_linux_system_call) <case
8792         RECORD_SYS_RECVFROM>: Add "break".
8793
8794 2018-05-04  Tom Tromey  <tom@tromey.com>
8795
8796         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8797         Add missing "break".
8798         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8799         Add missing "break".
8800
8801 2018-05-04  Tom Tromey  <tom@tromey.com>
8802
8803         * rs6000-tdep.c (ppc_process_record_op4)
8804         (ppc_process_record_op63): Add fall-through comment.
8805
8806 2018-05-04  Tom Tromey  <tom@tromey.com>
8807
8808         * i386-tdep.c (i386_process_record): Add fall-through comment.
8809
8810 2018-05-04  Tom Tromey  <tom@tromey.com>
8811
8812         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8813         comment.
8814
8815 2018-05-04  Tom Tromey  <tom@tromey.com>
8816
8817         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8818         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8819         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8820         comment.
8821         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8822         comment.
8823         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8824         comment.
8825
8826 2018-05-04  Tom Tromey  <tom@tromey.com>
8827
8828         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8829
8830 2018-05-04  Tom Tromey  <tom@tromey.com>
8831
8832         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8833         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8834         * symfile.c (section_is_mapped): Fix fall-through comment.
8835         * stabsread.c (define_symbol, read_member_functions): Fix
8836         fall-through comment.
8837         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8838         comment.
8839         * remote.c (remote_wait_as): Fix fall-through comment.
8840         * p-exp.y (yylex): Fix fall-through comment.
8841         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8842         comment.
8843         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8844         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8845         * jv-exp.y (yylex): Fix fall-through comment.
8846         * go-exp.y (lex_one_token): Fix fall-through comment.
8847         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8848         fall-through comment.
8849         * f-exp.y (yylex): Fix fall-through comment.
8850         * dwarf2read.c (process_die): Fix fall-through comments.
8851         * dbxread.c (process_one_symbol): Fix fall-through comment.
8852         * d-exp.y (lex_one_token): Fix fall-through comment.
8853         * cp-name-parser.y (yylex): Fix fall-through comment.
8854         * coffread.c (coff_symtab_read): Fix fall-through comment.
8855         * c-exp.y (lex_one_token): Fix fall-through comment.
8856         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8857         comment.
8858         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8859         comment.
8860
8861 2018-05-04  Tom Tromey  <tom@tromey.com>
8862
8863         PR python/22730:
8864         * NEWS: Mention gdb.execute change.
8865         * gdbcmd.h (execute_control_command): Don't declare.
8866         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8867         execute_control_commands, execute_control_commands_to_string.
8868         * cli/cli-script.h (execute_control_commands)
8869         (execute_control_commands_to_string): Declare.
8870         (execute_control_command): Add from_tty parameter.
8871         * cli/cli-script.c (execute_control_commands)
8872         (execute_control_commands_to_string): New functions.
8873         (execute_user_command): Use execute_control_commands.
8874         (execute_control_command_1): Add "from_tty" parameter.  Update.
8875         (execute_control_command): Likewise.
8876
8877 2018-05-04  Tom Tromey  <tom@tromey.com>
8878
8879         PR python/22731:
8880         * NEWS: Mention that breakpoint commands are writable.
8881         * python/py-breakpoint.c (bppy_set_commands): New function.
8882         (breakpoint_object_getset) <"commands">: Use it.
8883
8884 2018-05-04  Tom Tromey  <tom@tromey.com>
8885
8886         * tracepoint.c (actions_command): Update.
8887         * mi/mi-cmd-break.c (mi_command_line_array)
8888         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8889         (mi_read_next_line): Remove.
8890         (mi_cmd_break_commands): Update.
8891         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8892         function_view.
8893         * cli/cli-script.c (get_command_line): Update.
8894         (process_next_line): Use function_view.  Constify.
8895         (recurse_read_control_structure, read_command_lines)
8896         (read_command_lines_1): Change argument types to function_view.
8897         (do_define_command, document_command): Update.
8898         * breakpoint.h (check_tracepoint_command): Don't declare.
8899         * breakpoint.c (check_tracepoint_command): Remove.
8900         (commands_command_1, create_tracepoint_from_upload): Update.
8901
8902 2018-05-04  Tom Tromey  <tom@tromey.com>
8903
8904         PR gdb/11750:
8905         * cli/cli-script.h (enum command_control_type) <define_control>:
8906         New constant.
8907         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8908         (build_command_line, execute_control_command_1)
8909         (process_next_line): Likewise.
8910         (do_define_command): New function, extracted from define_command.
8911         (define_command): Use it.
8912
8913 2018-05-04  Tom Tromey  <tom@tromey.com>
8914
8915         * tracepoint.c (actions_command): Update.
8916         * cli/cli-script.h (read_command_lines): Update.
8917         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8918         (MAX_TMPBUF): Remove define.
8919         (define_command): Use string_printf.
8920         (document_command): Likewise.
8921         * breakpoint.c (commands_command_1): Update.
8922
8923 2018-05-04  Tom Tromey  <tom@tromey.com>
8924
8925         * top.c (execute_command): Update.
8926         * cli/cli-script.h (print_command_lines): Now varargs.
8927         * cli/cli-script.c (print_command_lines): Now varargs.
8928         (execute_control_command_1) <case while_control, case if_control>:
8929         Update.
8930
8931 2018-05-04  Tom Tromey  <tom@tromey.com>
8932
8933         * tracepoint.c (all_tracepoint_actions): Rename from
8934         all_tracepoint_actions_and_cleanup.  Change return type.
8935         (actions_command, encode_actions_1, encode_actions)
8936         (trace_dump_actions, tdump_command): Update.
8937         * remote.c (remote_download_command_source): Update.
8938         * python/python.c (gdbpy_eval_from_control_command)
8939         (python_command, python_interactive_command): Update.
8940         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8941         * guile/guile.c (guile_command)
8942         (gdbscm_eval_from_control_command, guile_command): Update.
8943         * compile/compile.c (compile_code_command)
8944         (compile_print_command, compile_to_object): Update.
8945         * cli/cli-script.h (struct command_lines_deleter): New.
8946         (counted_command_line): New typedef.
8947         (struct command_line): Add constructor, destructor.
8948         <body_list>: Remove.
8949         <body_list_0, body_list_1>: New members.
8950         (command_line_up): Remove typedef.
8951         (read_command_lines, read_command_lines_1, get_command_line):
8952         Update.
8953         (copy_command_lines): Don't declare.
8954         * cli/cli-script.c (build_command_line): Use "new".
8955         (get_command_line): Return counted_command_line.
8956         (print_command_lines, execute_user_command)
8957         (execute_control_command_1, while_command, if_command): Update.
8958         (realloc_body_list): Remove.
8959         (process_next_line, recurse_read_control_structure): Update.
8960         (read_command_lines, read_command_lines_1): Return counted_command_line.
8961         (free_command_lines): Use "delete".
8962         (copy_command_lines): Remove.
8963         (define_command, document_command, show_user_1): Update.
8964         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8965         a counted_command_line.
8966         * breakpoint.h (counted_command_line): Remove typedef.
8967         (breakpoint_set_commands): Update.
8968         * breakpoint.c (check_no_tracepoint_commands)
8969         (validate_commands_for_breakpoint): Update.
8970         (breakpoint_set_commands): Change commands to be a
8971         counted_command_line.
8972         (commands_command_1, update_dprintf_command_list)
8973         (create_tracepoint_from_upload): Update.
8974
8975 2018-05-04  Tom Tromey  <tom@tromey.com>
8976
8977         * cli/cli-decode.h (cmd_list_element): New constructor.
8978         (~cmd_list_element): New destructor.
8979         (struct cmd_list_element): Add initializers.
8980         * cli/cli-decode.c (do_add_cmd): Use "new".
8981         (delete_cmd): Use "delete".
8982
8983 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8984             Pedro Alves <palves@redhat.com>
8985
8986         PR breakpoints/19806 and support for PR external/20207.
8987         * NEWS: Mention Aarch64 watchpoint improvements.
8988         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8989         watchpoints and PR external/20207 watchpoints.
8990         * nat/aarch64-linux-hw-point.c
8991         (kernel_supports_any_contiguous_range): New.
8992         (aarch64_watchpoint_offset): New.
8993         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8994         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8995         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8996         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8997         next_addr_orig_p.  Support PR external/20207 watchpoints.
8998         (aarch64_downgrade_regs): New.
8999         (aarch64_dr_state_insert_one_point): New parameters offset and
9000         addr_orig.
9001         (aarch64_dr_state_remove_one_point): Likewise.
9002         (aarch64_handle_breakpoint): Update caller.
9003         (aarch64_handle_aligned_watchpoint): Likewise.
9004         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9005         aligned_offset.
9006         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9007         aarch64_downgrade_regs.
9008         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9009         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9010         (DR_CONTROL_MASK): ... this.
9011         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9012         (unsigned int aarch64_watchpoint_offset): New prototype.
9013         (aarch64_linux_set_debug_regs): Remove const from state.
9014         * utils.c (align_up, align_down): Move to ...
9015         * common/common-utils.c (align_up, align_down): ... here.
9016         * utils.h (align_up, align_down): Move to ...
9017         * common/common-utils.h (align_up, align_down): ... here.
9018
9019 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9020
9021         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9022         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9023         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9024         Re-implement to match the ABI as summarized in GCC's
9025         gcc/config/sparc/sparc.c.  All callers updated.
9026         (sparc32_store_arguments): Remove assertion.
9027
9028 2018-05-04  Tom Tromey  <tom@tromey.com>
9029
9030         * printcmd.c: Don't include tui.h.
9031         (decode_format): Use skip_spaces.
9032
9033 2018-05-04  Tom Tromey  <tom@tromey.com>
9034
9035         PR gdb/22619:
9036         * printcmd.c (last_count): New global.
9037         (x_command): Use saved count when repeating.
9038
9039 2018-05-04  Tom Tromey  <tom@tromey.com>
9040
9041         * nto-procfs.c (do_closedir_cleanup): Remove.
9042         (procfs_pidlist): Use gdb_dir_up.
9043         * procfs.c (do_closedir_cleanup): Remove.
9044         (proc_update_threads): Use gdb_dir_up.
9045         * common/filestuff.h (struct gdb_dir_deleter): New.
9046         (gdb_dir_up): New typedef.
9047
9048 2018-05-04  Tom Tromey  <tom@tromey.com>
9049
9050         * ada-lang.c (print_mention_exception): Use std::string.
9051
9052 2018-05-04  Tom Tromey  <tom@tromey.com>
9053
9054         * ada-lang.c (create_excep_cond_exprs): Update.
9055         (ada_exception_catchpoint_cond_string): Use std::string.
9056
9057 2018-05-04  Tom Tromey  <tom@tromey.com>
9058
9059         * ada-lang.c (xget_renaming_scope): Return std::string.
9060         (old_renaming_is_invisible): Update.
9061
9062 2018-05-04  Tom Tromey  <tom@tromey.com>
9063
9064         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9065         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9066
9067 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9068
9069         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9070
9071 2018-05-04  Tom Tromey  <tom@tromey.com>
9072
9073         * remote.c (remote_query_supported_append): Change type.
9074         (remote_check_symbols): Update.
9075
9076 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9077
9078         PR gdb/11420
9079         * configure.ac: Prepend libpython.
9080         * python/python-config.py: Likewise.
9081         * configure: Regenerate.
9082
9083 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9084
9085         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9086
9087 2018-05-03  Pedro Alves  <palves@redhat.com>
9088
9089         * s390-linux-nat.c
9090         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9091         override.  Write 'true' instead of '1'.
9092         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9093         declaration.
9094
9095 2018-05-02  Pedro Alves  <palves@redhat.com>
9096
9097         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9098         add_inf_child_target.
9099         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9100         add_inf_child_target.
9101         * aix-thread.c (aix_thread_target_info): New.
9102         (aix_thread_target) <shortname, longname, doc>: Delete.
9103         <info>: New.
9104         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9105         add_inf_child_target.
9106         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9107         add_inf_child_target.
9108         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9109         add_inf_child_target.
9110         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9111         add_inf_child_target.
9112         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9113         add_inf_child_target.
9114         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9115         add_inf_child_target.
9116         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9117         add_inf_child_target.
9118         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9119         add_inf_child_target.
9120         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9121         add_inf_child_target.
9122         * bfd-target.c (target_bfd_target_info): New.
9123         (target_bfd) <shortname, longname, doc>: Delete.
9124         <info>: New.
9125         * bsd-kvm.c (bsd_kvm_target_info): New.
9126         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9127         <info>: New.
9128         (bsd_kvm_target::open): Rename to ...
9129         (bsd_kvm_target_open): ... this.  Adjust.
9130         * bsd-uthread.c (bsd_uthread_target_info): New.
9131         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9132         <info>: New.
9133         * corefile.c (core_file_command): Adjust.
9134         * corelow.c (core_target_info): New.
9135         (core_target) <shortname, longname, doc>: Delete.
9136         <info>: New.
9137         (core_target::open): Rename to ...
9138         (core_target_open): ... this.  Adjust.
9139         * ctf.c (ctf_target_info): New.
9140         (ctf_target) <shortname, longname, doc>: Delete.
9141         <info>: New.
9142         (ctf_target::open): Rename to ...
9143         (ctf_target_open): ... this.
9144         (_initialize_ctf): Adjust.
9145         * exec.c (exec_target_info): New.
9146         (exec_target) <shortname, longname, doc>: Delete.
9147         <info>: New.
9148         (exec_target::open): Rename to ...
9149         (exec_target_open): ... this.
9150         * gdbcore.h (core_target_open): Declare.
9151         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9152         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9153         add_inf_child_target.
9154         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9155         add_inf_child_target.
9156         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9157         add_inf_child_target.
9158         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9159         add_inf_child_target.
9160         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9161         add_inf_child_target.
9162         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9163         add_inf_child_target.
9164         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9165         add_inf_child_target.
9166         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9167         add_inf_child_target.
9168         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9169         add_inf_child_target.
9170         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9171         add_inf_child_target.
9172         * inf-child.c (inf_child_target_info): New.
9173         (inf_child_target::info): New.
9174         (inf_child_open_target): Remove 'target' parameter.  Use
9175         get_native_target instead.
9176         (inf_child_target::open): Delete.
9177         (add_inf_child_target): New.
9178         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9179         Delete.
9180         <info>: New.
9181         (add_inf_child_target): Declare.
9182         (inf_child_open_target): Declare.
9183         * linux-thread-db.c (thread_db_target_info): New.
9184         (thread_db_target) <shortname, longname, doc>: Delete.
9185         <info>: New.
9186         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9187         add_inf_child_target.
9188         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9189         add_inf_child_target.
9190         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9191         add_inf_child_target.
9192         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9193         add_inf_child_target.
9194         * make-target-delegates (print_class): Adjust.
9195         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9196         add_inf_child_target.
9197         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9198         add_inf_child_target.
9199         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9200         add_inf_child_target.
9201         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9202         add_inf_child_target.
9203         * nto-procfs.c (nto_native_target_info): New.
9204         (nto_procfs_target_native) <shortname, longname, doc>:
9205         Delete.
9206         <info>: New.
9207         (nto_procfs_target_info): New.
9208         (nto_procfs_target_procfs) <shortname, longname, doc>:
9209         Delete.
9210         <info>: New.
9211         (init_procfs_targets): Adjust.
9212         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9213         add_inf_child_target.
9214         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9215         add_inf_child_target.
9216         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9217         add_inf_child_target.
9218         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9219         add_inf_child_target.
9220         * ravenscar-thread.c (ravenscar_target_info): New.
9221         (ravenscar_thread_target) <shortname, longname, doc>:
9222         Delete.
9223         <info>: New.
9224         * record-btrace.c (record_btrace_target_info):
9225         (record_btrace_target) <shortname, longname, doc>: Delete.
9226         <info>: New.
9227         (record_btrace_target::open): Rename to ...
9228         (record_btrace_target_open): ... this.  Adjust.
9229         * record-full.c (record_longname, record_doc): New.
9230         (record_full_base_target) <shortname, longname, doc>: Delete.
9231         <info>: New.
9232         (record_full_target_info): New.
9233         (record_full_target): <shortname>: Delete.
9234         <info>: New.
9235         (record_full_core_open_1, record_full_open_1): Update comments.
9236         (record_full_base_target::open): Rename to ...
9237         (record_full_open): ... this.
9238         (cmd_record_full_restore): Update.
9239         (_initialize_record_full): Update.
9240         * remote-sim.c (remote_sim_target_info): New.
9241         (gdbsim_target) <shortname, longname, doc>: Delete.
9242         <info>: New.
9243         (gdbsim_target::open): Rename to ...
9244         (gdbsim_target_open): ... this.
9245         (_initialize_remote_sim): Adjust.
9246         * remote.c (remote_doc): New.
9247         (remote_target_info): New.
9248         (remote_target) <shortname, longname, doc>: Delete.
9249         <info>: New.
9250         (extended_remote_target_info): New.
9251         (extended_remote_target) <shortname, longname, doc>: Delete.
9252         <info>: New.
9253         (remote_target::open_1): Make static.  Adjust.
9254         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9255         * s390-linux-nat.c (_initialize_s390_nat): Use
9256         add_inf_child_target.
9257         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9258         add_inf_child_target.
9259         * sol-thread.c (thread_db_target_info): New.
9260         (sol_thread_target) <shortname, longname, doc>: Delete.
9261         <info>: New.
9262         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9263         add_inf_child_target.
9264         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9265         add_inf_child_target.
9266         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9267         add_inf_child_target.
9268         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9269         add_inf_child_target.
9270         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9271         add_inf_child_target.
9272         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9273         add_inf_child_target.
9274         * spu-linux-nat.c (_initialize_spu_nat): Use
9275         add_inf_child_target.
9276         * spu-multiarch.c (spu_multiarch_target_info): New.
9277         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9278         <info>: New.
9279         * target-delegates.c: Regenerate.
9280         * target.c: Include <unordered_map>.
9281         (target_ops_p): Delete.
9282         (DEF_VEC_P(target_ops_p)): Delete.
9283         (target_factories): New.
9284         (test_target_info): New.
9285         (test_target_ops::info): New.
9286         (open_target): Adjust to use target_factories.
9287         (add_target_with_completer): Rename to ...
9288         (add_target): ... this.  Change prototype.  Register target_info
9289         and open callback in target_factories.  Register target_info in
9290         command context instead of target_ops.
9291         (add_target): Delete old implementation.
9292         (add_deprecated_target_alias): Change prototype.  Adjust.
9293         (the_native_target): New.
9294         (set_native_target, get_native_target): New.
9295         (find_default_run_target): Use the_native_target.
9296         (find_attach_target, find_run_target): Simplify.
9297         (target_ops::open): Delete.
9298         (dummy_target_info): New.
9299         (dummy_target::shortname, dummy_target::longname)
9300         (dummy_target::doc): Delete.
9301         (dummy_target::info): New.
9302         (debug_target::shortname, debug_target::longname)
9303         (debug_target::doc): Delete.
9304         (debug_target::info): New.
9305         * target.h (struct target_info): New.
9306         (target_ops::~target_ops): Add comment.
9307         (target_ops::info): New.
9308         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9309         longer virtual.  Implement in terms of target_info.
9310         (set_native_target, get_native_target): Declare.
9311         (target_open_ftype): New.
9312         (add_target, add_target_with_completer)
9313         (add_deprecated_target_alias): Change prototype.
9314         (test_target) <shortname, longname, doc>: Delete.
9315         <info>: New.
9316         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9317         add_inf_child_target.
9318         * tracefile-tfile.c (tfile_target_info): New.
9319         (tfile_target) <shortname, longname, doc>: Delete.
9320         <info>: New.
9321         (tfile_target::open): Rename to ...
9322         (tfile_target_open): ... this.
9323         (_initialize_tracefile_tfile): Adjust.
9324         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9325         add_inf_child_target.
9326         * windows-nat.c (_initialize_windows_nat): Use
9327         add_inf_child_target.
9328         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9329         add_inf_child_target.
9330
9331 2018-05-02  Pedro Alves  <palves@redhat.com>
9332
9333         * linux-nat.h (linux_nat_target) <low_new_thread,
9334         low_delete_thread, low_new_fork, low_forget_process,
9335         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9336         New virtual methods.
9337         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9338         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9339         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9340         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9341         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9342         Delete.
9343         * linux-fork.c (delete_fork): Adjust to call low method.
9344         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9345         (linux_nat_new_fork, linux_nat_forget_process_hook)
9346         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9347         (linux_nat_status_is_event):
9348         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9349         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9350         to call low method.
9351         (sigtrap_is_event): Rename to ...
9352         (linux_nat_target::low_status_is_event): ... this.
9353         (linux_nat_set_status_is_event): Delete.
9354         (save_stop_reason, linux_nat_wait_1)
9355         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9356         low methods.
9357         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9358         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9359         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9360         (linux_nat_set_prepare_to_resume): Delete.
9361         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9362         low virtual methods.
9363         * amd64-linux-nat.c: Likewise.
9364         * arm-linux-nat.c: Likewise.
9365         * i386-linux-nat.c: Likewise.
9366         * ia64-linux-nat.c: Likewise.
9367         * mips-linux-nat.c: Likewise.
9368         * ppc-linux-nat.c: Likewise.
9369         * s390-linux-nat.c: Likewise.
9370         * sparc64-linux-nat.c: Likewise.
9371         * x86-linux-nat.c: Likewise.
9372         * x86-linux-nat.h: Include "nat/x86-linux.h".
9373         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9374         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9375         Override methods.
9376
9377 2018-05-02  Pedro Alves  <palves@redhat.com>
9378
9379         * target.h (target_ops)
9380         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9381         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9382         stopped_by_watchpoint, have_continuable_watchpoint,
9383         stopped_data_address, watchpoint_addr_within_range,
9384         can_accel_watchpoint_condition, can_run, thread_alive,
9385         has_all_memory, has_memory, has_stack, has_registers,
9386         has_execution, can_async_p, is_async_p, supports_non_stop,
9387         always_non_stop_p, can_execute_reverse, supports_multi_process,
9388         supports_enable_disable_tracepoint,
9389         supports_disable_randomization, supports_string_tracing,
9390         supports_evaluation_of_breakpoint_conditions,
9391         can_run_breakpoint_commands, filesystem_is_local,
9392         can_download_tracepoint, get_trace_state_variable_value,
9393         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9394         record_is_replaying, record_will_replay,
9395         augmented_libraries_svr4_read>: Adjust to return bool.
9396         * aarch64-linux-nat.c: All implementations adjusted.
9397         * aix-thread.c: All implementations adjusted.
9398         * arm-linux-nat.c: All implementations adjusted.
9399         * breakpoint.c: All implementations adjusted.
9400         * bsd-kvm.c: All implementations adjusted.
9401         * bsd-uthread.c: All implementations adjusted.
9402         * corelow.c: All implementations adjusted.
9403         * ctf.c: All implementations adjusted.
9404         * darwin-nat.c: All implementations adjusted.
9405         * darwin-nat.h: All implementations adjusted.
9406         * exec.c: All implementations adjusted.
9407         * fbsd-nat.c: All implementations adjusted.
9408         * fbsd-nat.h: All implementations adjusted.
9409         * gnu-nat.c: All implementations adjusted.
9410         * gnu-nat.h: All implementations adjusted.
9411         * go32-nat.c: All implementations adjusted.
9412         * ia64-linux-nat.c: All implementations adjusted.
9413         * inf-child.c: All implementations adjusted.
9414         * inf-child.h: All implementations adjusted.
9415         * inf-ptrace.c: All implementations adjusted.
9416         * inf-ptrace.h: All implementations adjusted.
9417         * linux-nat.c: All implementations adjusted.
9418         * linux-nat.h: All implementations adjusted.
9419         * mips-linux-nat.c: All implementations adjusted.
9420         * nto-procfs.c: All implementations adjusted.
9421         * ppc-linux-nat.c: All implementations adjusted.
9422         * procfs.c: All implementations adjusted.
9423         * ravenscar-thread.c: All implementations adjusted.
9424         * record-btrace.c: All implementations adjusted.
9425         * record-full.c: All implementations adjusted.
9426         * remote-sim.c: All implementations adjusted.
9427         * remote.c: All implementations adjusted.
9428         * s390-linux-nat.c: All implementations adjusted.
9429         * sol-thread.c: All implementations adjusted.
9430         * spu-multiarch.c: All implementations adjusted.
9431         * target-delegates.c: All implementations adjusted.
9432         * target.c: All implementations adjusted.
9433         * target.h: All implementations adjusted.
9434         * tracefile-tfile.c: All implementations adjusted.
9435         * tracefile.c: All implementations adjusted.
9436         * tracefile.h: All implementations adjusted.
9437         * windows-nat.c: All implementations adjusted.
9438         * x86-linux-nat.h: All implementations adjusted.
9439         * x86-nat.h: All implementations adjusted.
9440
9441 2018-05-02  Pedro Alves  <palves@redhat.com>
9442
9443         * make-target-delegates (scan_target_h): Don't trim lines here.
9444         Replace sequences of tabs and/or whitespace with a single
9445         whitespace.
9446         (top level, parsing methods): Trim each line before processing it
9447         here.
9448
9449 2018-05-02  Pedro Alves  <palves@redhat.com>
9450             John Baldwin  <jhb@freebsd.org>
9451
9452         * target.h (enum strata) <debug_stratum>: New.
9453         (struct target_ops) <all delegation methods>: Replace by C++
9454         virtual methods, and drop "to_" prefix.  All references updated
9455         throughout.
9456         <to_shortname, to_longname, to_doc, to_data,
9457         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9458         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9459         virtual methods.  All references updated throughout.
9460         <can_attach, supports_terminal_ours, can_create_inferior,
9461         get_thread_control_capabilities, attach_no_wait>: New
9462         virtual methods.
9463         <insert_breakpoint, remove_breakpoint>: Now
9464         TARGET_DEFAULT_NORETURN methods.
9465         <info_proc>: Now returns bool.
9466         <to_magic>: Delete.
9467         (OPS_MAGIC): Delete.
9468         (current_target): Delete.  All references replaced by references
9469         to ...
9470         (target_stack): ... this.  New.
9471         (target_shortname, target_longname): Adjust.
9472         (target_can_run): Now a function declaration.
9473         (default_child_has_all_memory, default_child_has_memory)
9474         (default_child_has_stack, default_child_has_registers)
9475         (default_child_has_execution): Remove target_ops parameter.
9476         (complete_target_initialization): Delete.
9477         (memory_breakpoint_target): New template class.
9478         (test_target_ops): Refactor as a C++ class with virtual methods.
9479         * make-target-delegates (NAME_PART): Tighten.
9480         (POINTER_PART, CP_SYMBOL): New.
9481         (SIMPLE_RETURN_PART): Reimplement.
9482         (VEC_RETURN_PART): Expect less.
9483         (RETURN_PART, VIRTUAL_PART): New.
9484         (METHOD): Adjust to C++ virtual methods.
9485         (scan_target_h): Remove reference to C99.
9486         (dname): Output "target_ops::" prefix.
9487         (write_function_header): Adjust to output a C++ class method.
9488         (write_declaration): New.
9489         (write_delegator): Adjust to output a C++ class method.
9490         (tdname): Output "dummy_target::" prefix.
9491         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9492         method.
9493         (tdefault_names, debug_names): Delete.
9494         (return_types, tdefaults, styles, argtypes_array): New.
9495         (top level): All methods are delegators.
9496         (print_class): New.
9497         (top level): Print dummy_target and debug_target classes.
9498         * target-delegates.c: Regenerate.
9499         * target-debug.h (target_debug_print_enum_info_proc_what)
9500         (target_debug_print_thread_control_capabilities)
9501         (target_debug_print_thread_info_p): New.
9502         * target.c (dummy_target): Delete.
9503         (the_dummy_target, the_debug_target): New.
9504         (target_stack): Now extern.
9505         (set_targetdebug): Push/unpush debug target.
9506         (default_child_has_all_memory, default_child_has_memory)
9507         (default_child_has_stack, default_child_has_registers)
9508         (default_child_has_execution): Remove target_ops parameter.
9509         (complete_target_initialization): Delete.
9510         (add_target_with_completer): No longer call
9511         complete_target_initialization.
9512         (target_supports_terminal_ours): Use regular delegation.
9513         (update_current_target): Delete.
9514         (push_target): No longer check magic number.  Don't call
9515         update_current_target.
9516         (unpush_target): Don't call update_current_target.
9517         (target_is_pushed): No longer check magic number.
9518         (target_require_runnable): Skip for all stratums over
9519         process_stratum.
9520         (target_ops::info_proc): New.
9521         (target_info_proc): Use find_target_at and
9522         find_default_run_target.
9523         (target_supports_disable_randomization): Use regular delegation.
9524         (target_get_osdata): Use find_target_at.
9525         (target_ops::open, target_ops::close, target_ops::can_attach)
9526         (target_ops::attach, target_ops::can_create_inferior)
9527         (target_ops::create_inferior, target_ops::can_run)
9528         (target_can_run): New.
9529         (default_fileio_target): Use regular delegation.
9530         (target_ops::fileio_open, target_ops::fileio_pwrite)
9531         (target_ops::fileio_pread, target_ops::fileio_fstat)
9532         (target_ops::fileio_close, target_ops::fileio_unlink)
9533         (target_ops::fileio_readlink): New.
9534         (target_fileio_open_1, target_fileio_unlink)
9535         (target_fileio_readlink): Always call the target method.  Handle
9536         FILEIO_ENOSYS.
9537         (return_zero, return_zero_has_execution): Delete.
9538         (init_dummy_target): Delete.
9539         (dummy_target::dummy_target, dummy_target::shortname)
9540         (dummy_target::longname, dummy_target::doc)
9541         (debug_target::debug_target, debug_target::shortname)
9542         (debug_target::longname, debug_target::doc): New.
9543         (target_supports_delete_record): Use regular delegation.
9544         (setup_target_debug): Delete.
9545         (maintenance_print_target_stack): Skip debug_stratum.
9546         (initialize_targets): Instantiate the_dummy_target and
9547         the_debug_target.
9548         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9549         use target_stack.
9550         (target_auxv_search, fprint_target_auxv): Adjust.
9551         (info_auxv_command): Adjust to use target_stack.
9552         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9553         * exceptions.c (print_flush): Handle a NULL target_stack.
9554         * regcache.c (target_ops_no_register): Refactor as class with
9555         virtual methods.
9556
9557         * exec.c (exec_target): New class.
9558         (exec_ops): Now an exec_target.
9559         (exec_open, exec_close_1, exec_get_section_table)
9560         (exec_xfer_partial, exec_files_info, exec_has_memory)
9561         (exec_make_note_section): Refactor as exec_target methods.
9562         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9563         Delete.
9564         (exec_target::find_memory_regions): New.
9565         (_initialize_exec): Don't call init_exec_ops.
9566         * gdbcore.h (exec_file_clear): Delete.
9567
9568         * corefile.c (core_target): Delete.
9569         (core_file_command): Adjust.
9570         * corelow.c (core_target): New class.
9571         (the_core_target): New.
9572         (core_close): Remove target_ops parameter.
9573         (core_close_cleanup): Adjust.
9574         (core_target::close): New.
9575         (core_open, core_detach, get_core_registers, core_files_info)
9576         (core_xfer_partial, core_thread_alive, core_read_description)
9577         (core_pid_to_str, core_thread_name, core_has_memory)
9578         (core_has_stack, core_has_registers, core_info_proc): Rework as
9579         core_target methods.
9580         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9581         (_initialize_corelow): Initialize the_core_target.
9582         * gdbcore.h (core_target): Delete.
9583         (the_core_target): New.
9584
9585         * ctf.c: (ctf_target): New class.
9586         (ctf_ops): Now a ctf_target.
9587         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9588         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9589         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9590         methods.
9591         (init_ctf_ops): Delete.
9592         (_initialize_ctf): Don't call it.
9593         * tracefile-tfile.c (tfile_target): New class.
9594         (tfile_ops): Now a tfile_target.
9595         (tfile_open, tfile_close, tfile_files_info)
9596         (tfile_get_tracepoint_status, tfile_trace_find)
9597         (tfile_fetch_registers, tfile_xfer_partial)
9598         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9599         Refactor as tfile_target methods.
9600         (tfile_xfer_partial_features): Remove target_ops parameter.
9601         (init_tfile_ops): Delete.
9602         (_initialize_tracefile_tfile): Don't call it.
9603         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9604         (tracefile_has_stack, tracefile_has_registers)
9605         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9606         tracefile_target methods.
9607         (init_tracefile_ops): Delete.
9608         (tracefile_target::tracefile_target): New.
9609         * tracefile.h: Include "target.h".
9610         (tracefile_target): New class.
9611         (init_tracefile_ops): Delete.
9612
9613         * spu-multiarch.c (spu_multiarch_target): New class.
9614         (spu_ops): Now a spu_multiarch_target.
9615         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9616         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9617         (spu_search_memory, spu_mourn_inferior): Refactor as
9618         spu_multiarch_target methods.
9619         (init_spu_ops): Delete.
9620         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9621         complete_target_initialization.
9622
9623         * ravenscar-thread.c (ravenscar_thread_target): New class.
9624         (ravenscar_ops): Now a ravenscar_thread_target.
9625         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9626         (ravenscar_thread_alive, ravenscar_pid_to_str)
9627         (ravenscar_fetch_registers, ravenscar_store_registers)
9628         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9629         (ravenscar_stopped_by_hw_breakpoint)
9630         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9631         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9632         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9633         methods.
9634         (init_ravenscar_thread_ops): Delete.
9635         (_initialize_ravenscar): Remove references to
9636         init_ravenscar_thread_ops and complete_target_initialization.
9637
9638         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9639         (bsd_uthread_target): New class.
9640         (bsd_uthread_ops): Now a bsd_uthread_target.
9641         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9642         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9643         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9644         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9645         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9646         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9647         (bsd_uthread_target): Delete function.
9648         (_initialize_bsd_uthread): Remove reference to
9649         complete_target_initialization.
9650
9651         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9652         (target_bfd): ... this new class.
9653         (target_bfd_xfer_partial, target_bfd_get_section_table)
9654         (target_bfd_close): Refactor as target_bfd methods.
9655         (target_bfd::~target_bfd): New.
9656         (target_bfd_reopen): Adjust.
9657         (target_bfd::close): New.
9658
9659         * record-btrace.c (record_btrace_target): New class.
9660         (record_btrace_ops): Now a record_btrace_target.
9661         (record_btrace_open, record_btrace_stop_recording)
9662         (record_btrace_disconnect, record_btrace_close)
9663         (record_btrace_async, record_btrace_info)
9664         (record_btrace_insn_history, record_btrace_insn_history_range)
9665         (record_btrace_insn_history_from, record_btrace_call_history)
9666         (record_btrace_call_history_range)
9667         (record_btrace_call_history_from, record_btrace_record_method)
9668         (record_btrace_is_replaying, record_btrace_will_replay)
9669         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9670         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9671         (record_btrace_store_registers, record_btrace_prepare_to_store)
9672         (record_btrace_to_get_unwinder)
9673         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9674         (record_btrace_commit_resume, record_btrace_wait)
9675         (record_btrace_stop, record_btrace_can_execute_reverse)
9676         (record_btrace_stopped_by_sw_breakpoint)
9677         (record_btrace_supports_stopped_by_sw_breakpoint)
9678         (record_btrace_stopped_by_hw_breakpoint)
9679         (record_btrace_supports_stopped_by_hw_breakpoint)
9680         (record_btrace_update_thread_list, record_btrace_thread_alive)
9681         (record_btrace_goto_begin, record_btrace_goto_end)
9682         (record_btrace_goto, record_btrace_stop_replaying_all)
9683         (record_btrace_execution_direction)
9684         (record_btrace_prepare_to_generate_core)
9685         (record_btrace_done_generating_core): Refactor as
9686         record_btrace_target methods.
9687         (init_record_btrace_ops): Delete.
9688         (_initialize_record_btrace): Remove reference to
9689         init_record_btrace_ops.
9690         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9691         the execution_direction global.
9692         (record_full_base_target, record_full_target)
9693         (record_full_core_target): New classes.
9694         (record_full_ops): Now a record_full_target.
9695         (record_full_core_ops): Now a record_full_core_target.
9696         (record_full_target::detach, record_full_target::disconnect)
9697         (record_full_core_target::disconnect)
9698         (record_full_target::mourn_inferior, record_full_target::kill):
9699         New.
9700         (record_full_open, record_full_close, record_full_async): Refactor
9701         as methods of the record_full_base_target class.
9702         (record_full_resume, record_full_commit_resume): Refactor
9703         as methods of the record_full_target class.
9704         (record_full_wait, record_full_stopped_by_watchpoint)
9705         (record_full_stopped_data_address)
9706         (record_full_stopped_by_sw_breakpoint)
9707         (record_full_supports_stopped_by_sw_breakpoint)
9708         (record_full_stopped_by_hw_breakpoint)
9709         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9710         methods of the record_full_base_target class.
9711         (record_full_store_registers, record_full_xfer_partial)
9712         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9713         Refactor as methods of the record_full_target class.
9714         (record_full_can_execute_reverse, record_full_get_bookmark)
9715         (record_full_goto_bookmark, record_full_execution_direction)
9716         (record_full_record_method, record_full_info, record_full_delete)
9717         (record_full_is_replaying, record_full_will_replay)
9718         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9719         (record_full_stop_replaying): Refactor as methods of the
9720         record_full_base_target class.
9721         (record_full_core_resume, record_full_core_kill)
9722         (record_full_core_fetch_registers)
9723         (record_full_core_prepare_to_store)
9724         (record_full_core_store_registers, record_full_core_xfer_partial)
9725         (record_full_core_insert_breakpoint)
9726         (record_full_core_remove_breakpoint)
9727         (record_full_core_has_execution): Refactor
9728         as methods of the record_full_core_target class.
9729         (record_full_base_target::supports_delete_record): New.
9730         (init_record_full_ops): Delete.
9731         (init_record_full_core_ops): Delete.
9732         (record_full_save): Refactor as method of the
9733         record_full_base_target class.
9734         (_initialize_record_full): Remove references to
9735         init_record_full_ops and init_record_full_core_ops.
9736
9737         * remote.c (remote_target, extended_remote_target): New classes.
9738         (remote_ops): Now a remote_target.
9739         (extended_remote_ops): Now an extended_remote_target.
9740         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9741         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9742         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9743         (remote_pass_signals, remote_set_syscall_catchpoint)
9744         (remote_program_signals, )
9745         (remote_thread_always_alive): Remove target_ops parameter.
9746         (remote_thread_alive, remote_thread_name)
9747         (remote_update_thread_list, remote_threads_extra_info)
9748         (remote_static_tracepoint_marker_at)
9749         (remote_static_tracepoint_markers_by_strid)
9750         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9751         (remote_open): Refactor as methods of remote_target.
9752         (extended_remote_open, extended_remote_detach)
9753         (extended_remote_attach, extended_remote_post_attach):
9754         (extended_remote_supports_disable_randomization)
9755         (extended_remote_create_inferior): : Refactor as method of
9756         extended_remote_target.
9757         (remote_set_permissions, remote_open_1, remote_detach)
9758         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9759         (remote_resume, remote_commit_resume, remote_stop)
9760         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9761         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9762         (remote_prepare_to_store, remote_store_registers)
9763         (remote_flash_erase, remote_flash_done, remote_files_info)
9764         (remote_kill, remote_mourn, remote_insert_breakpoint)
9765         (remote_remove_breakpoint, remote_insert_watchpoint)
9766         (remote_watchpoint_addr_within_range)
9767         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9768         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9769         (remote_supports_stopped_by_sw_breakpoint)
9770         (remote_stopped_by_hw_breakpoint)
9771         (remote_supports_stopped_by_hw_breakpoint)
9772         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9773         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9774         (remote_verify_memory): Refactor as methods of remote_target.
9775         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9776         parameter.
9777         (remote_xfer_partial, remote_get_memory_xfer_limit)
9778         (remote_search_memory, remote_rcmd, remote_memory_map)
9779         (remote_pid_to_str, remote_get_thread_local_address)
9780         (remote_get_tib_address, remote_read_description): Refactor as
9781         methods of remote_target.
9782         (remote_target::fileio_open, remote_target::fileio_pwrite)
9783         (remote_target::fileio_pread, remote_target::fileio_close): New.
9784         (remote_hostio_readlink, remote_hostio_fstat)
9785         (remote_filesystem_is_local, remote_can_execute_reverse)
9786         (remote_supports_non_stop, remote_supports_disable_randomization)
9787         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9788         (remote_supports_enable_disable_tracepoint)
9789         (remote_supports_string_tracing)
9790         (remote_can_run_breakpoint_commands, remote_trace_init)
9791         (remote_download_tracepoint, remote_can_download_tracepoint)
9792         (remote_download_trace_state_variable, remote_enable_tracepoint)
9793         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9794         (remote_trace_start, remote_get_trace_status)
9795         (remote_get_tracepoint_status, remote_trace_stop)
9796         (remote_trace_find, remote_get_trace_state_variable_value)
9797         (remote_save_trace_data, remote_get_raw_trace_data)
9798         (remote_set_disconnected_tracing, remote_core_of_thread)
9799         (remote_set_circular_trace_buffer, remote_traceframe_info)
9800         (remote_get_min_fast_tracepoint_insn_len)
9801         (remote_set_trace_buffer_size, remote_set_trace_notes)
9802         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9803         (remote_disable_btrace, remote_teardown_btrace)
9804         (remote_read_btrace, remote_btrace_conf)
9805         (remote_augmented_libraries_svr4_read, remote_load)
9806         (remote_pid_to_exec_file, remote_can_do_single_step)
9807         (remote_execution_direction, remote_thread_handle_to_thread_info):
9808         Refactor as methods of remote_target.
9809         (init_remote_ops, init_extended_remote_ops): Delete.
9810         (remote_can_async_p, remote_is_async_p, remote_async)
9811         (remote_thread_events, remote_upload_tracepoints)
9812         (remote_upload_trace_state_variables): Refactor as methods of
9813         remote_target.
9814         (_initialize_remote): Remove references to init_remote_ops and
9815         init_extended_remote_ops.
9816
9817         * remote-sim.c (gdbsim_target): New class.
9818         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9819         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9820         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9821         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9822         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9823         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9824         Refactor as methods of gdbsim_target.
9825         (gdbsim_ops): Now a gdbsim_target.
9826         (init_gdbsim_ops): Delete.
9827         (gdbsim_cntrl_c): Adjust.
9828         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9829
9830         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9831         (the_amd64_linux_nat_target): New.
9832         (amd64_linux_fetch_inferior_registers)
9833         (amd64_linux_store_inferior_registers): Refactor as methods of
9834         amd64_linux_nat_target.
9835         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9836         * i386-linux-nat.c: Don't include "linux-nat.h".
9837         (i386_linux_nat_target): New class.
9838         (the_i386_linux_nat_target): New.
9839         (i386_linux_fetch_inferior_registers)
9840         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9841         as methods of i386_linux_nat_target.
9842         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9843         * inf-child.c (inf_child_ops): Delete.
9844         (inf_child_fetch_inferior_registers)
9845         (inf_child_store_inferior_registers): Delete.
9846         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9847         methods of inf_child_target.
9848         (inf_child_target::supports_terminal_ours)
9849         (inf_child_target::terminal_init)
9850         (inf_child_target::terminal_inferior)
9851         (inf_child_target::terminal_ours_for_output)
9852         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9853         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9854         New.
9855         (inf_child_open, inf_child_disconnect, inf_child_close)
9856         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9857         (inf_child_post_startup_inferior, inf_child_can_run)
9858         (inf_child_pid_to_exec_file): Refactor as methods of
9859         inf_child_target.
9860         (inf_child_follow_fork): Delete.
9861         (inf_child_target::can_create_inferior)
9862         (inf_child_target::can_attach): New.
9863         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9864         (inf_child_target::has_stack, inf_child_target::has_registers)
9865         (inf_child_target::has_execution): New.
9866         (inf_child_fileio_open, inf_child_fileio_pwrite)
9867         (inf_child_fileio_pread, inf_child_fileio_fstat)
9868         (inf_child_fileio_close, inf_child_fileio_unlink)
9869         (inf_child_fileio_readlink, inf_child_use_agent)
9870         (inf_child_can_use_agent): Refactor as methods of
9871         inf_child_target.
9872         (return_zero, inf_child_target): Delete.
9873         (inf_child_target::inf_child_target): New.
9874         * inf-child.h: Include "target.h".
9875         (inf_child_target): Delete function prototype.
9876         (inf_child_target): New class.
9877         (inf_child_open_target, inf_child_mourn_inferior)
9878         (inf_child_maybe_unpush_target): Delete.
9879         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9880         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9881         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9882         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9883         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9884         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9885         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9886         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9887         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9888         methods of inf_ptrace_target.
9889         (inf_ptrace_target): Delete function.
9890         * inf-ptrace.h: Include "inf-child.h".
9891         (inf_ptrace_target): Delete function declaration.
9892         (inf_ptrace_target): New class.
9893         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9894         * linux-nat.c (linux_target): New.
9895         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9896         (linux_nat_target::~linux_nat_target): New.
9897         (linux_child_post_attach, linux_child_post_startup_inferior)
9898         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9899         (linux_child_remove_fork_catchpoint)
9900         (linux_child_insert_vfork_catchpoint)
9901         (linux_child_remove_vfork_catchpoint)
9902         (linux_child_insert_exec_catchpoint)
9903         (linux_child_remove_exec_catchpoint)
9904         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9905         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9906         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9907         (linux_nat_stopped_data_address)
9908         (linux_nat_stopped_by_sw_breakpoint)
9909         (linux_nat_supports_stopped_by_sw_breakpoint)
9910         (linux_nat_stopped_by_hw_breakpoint)
9911         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9912         (linux_nat_kill, linux_nat_mourn_inferior)
9913         (linux_nat_xfer_partial, linux_nat_thread_alive)
9914         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9915         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9916         (linux_child_static_tracepoint_markers_by_strid)
9917         (linux_nat_is_async_p, linux_nat_can_async_p)
9918         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9919         (linux_nat_supports_multi_process)
9920         (linux_nat_supports_disable_randomization, linux_nat_async)
9921         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9922         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9923         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9924         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9925         methods of linux_nat_target.
9926         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9927         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9928         parameter.
9929         (check_stopped_by_watchpoint): Adjust.
9930         (linux_xfer_partial): Delete.
9931         (linux_target_install_ops, linux_target, linux_nat_add_target):
9932         Delete.
9933         (linux_nat_target::linux_nat_target): New.
9934         * linux-nat.h: Include "inf-ptrace.h".
9935         (linux_nat_target): New.
9936         (linux_target, linux_target_install_ops, linux_nat_add_target):
9937         Delete function declarations.
9938         (linux_target): Declare global.
9939         * linux-thread-db.c (thread_db_target): New.
9940         (thread_db_target::thread_db_target): New.
9941         (thread_db_ops): Delete.
9942         (the_thread_db_target): New.
9943         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9944         (thread_db_update_thread_list, thread_db_pid_to_str)
9945         (thread_db_extra_thread_info)
9946         (thread_db_thread_handle_to_thread_info)
9947         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9948         (thread_db_resume): Refactor as methods of thread_db_target.
9949         (init_thread_db_ops): Delete.
9950         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9951         * x86-linux-nat.c: Don't include "linux-nat.h".
9952         (super_post_startup_inferior): Delete.
9953         (x86_linux_nat_target::~x86_linux_nat_target): New.
9954         (x86_linux_child_post_startup_inferior)
9955         (x86_linux_read_description, x86_linux_enable_btrace)
9956         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9957         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9958         methods of x86_linux_nat_target.
9959         (x86_linux_create_target): Delete.  Bits folded ...
9960         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9961         pointer.
9962         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9963         (x86_linux_nat_target): New class.
9964         (x86_linux_create_target): Delete.
9965         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9966         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9967         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9968         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9969         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9970         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9971         make extern.
9972         (x86_use_watchpoints): Delete.
9973         * x86-nat.h: Include "breakpoint.h" and "target.h".
9974         (x86_use_watchpoints): Delete.
9975         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9976         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9977         (x86_insert_watchpoint, x86_remove_watchpoint)
9978         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9979         (x86_stopped_by_hw_breakpoint): New declarations.
9980         (x86_nat_target): New template class.
9981
9982         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9983         (the_ppc_linux_nat_target): New.
9984         (ppc_linux_fetch_inferior_registers)
9985         (ppc_linux_can_use_hw_breakpoint)
9986         (ppc_linux_region_ok_for_hw_watchpoint)
9987         (ppc_linux_ranged_break_num_registers)
9988         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9989         (ppc_linux_insert_mask_watchpoint)
9990         (ppc_linux_remove_mask_watchpoint)
9991         (ppc_linux_can_accel_watchpoint_condition)
9992         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9993         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9994         (ppc_linux_watchpoint_addr_within_range)
9995         (ppc_linux_masked_watch_num_registers)
9996         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9997         (ppc_linux_read_description): Refactor as methods of
9998         ppc_linux_nat_target.
9999         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10000
10001         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10002         (procfs_target): New class.
10003         (the_procfs_target): New.
10004         (procfs_target): Delete function.
10005         (procfs_auxv_parse, procfs_attach, procfs_detach)
10006         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10007         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10008         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10009         (procfs_create_inferior, procfs_update_thread_list)
10010         (procfs_thread_alive, procfs_pid_to_str)
10011         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10012         (procfs_stopped_data_address, procfs_insert_watchpoint)
10013         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10014         (proc_find_memory_regions, procfs_info_proc)
10015         (procfs_make_note_section): Refactor as methods of procfs_target.
10016         (_initialize_procfs): Adjust.
10017         * sol-thread.c (sol_thread_target): New class.
10018         (sol_thread_ops): Now a sol_thread_target.
10019         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10020         (sol_thread_fetch_registers, sol_thread_store_registers)
10021         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10022         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10023         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10024         (init_sol_thread_ops): Delete.
10025         (_initialize_sol_thread): Adjust.  Remove references to
10026         init_sol_thread_ops and complete_target_initialization.
10027
10028         * windows-nat.c (windows_nat_target): New class.
10029         (windows_fetch_inferior_registers)
10030         (windows_store_inferior_registers, windows_resume, windows_wait)
10031         (windows_attach, windows_detach, windows_pid_to_exec_file)
10032         (windows_files_info, windows_create_inferior)
10033         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10034         (windows_close, windows_pid_to_str, windows_xfer_partial)
10035         (windows_get_tib_address, windows_get_ada_task_ptid)
10036         (windows_thread_name, windows_thread_alive): Refactor as
10037         windows_nat_target methods.
10038         (do_initial_windows_stuff): Adjust.
10039         (windows_target): Delete function.
10040         (_initialize_windows_nat): Adjust.
10041
10042         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10043         (darwin_mourn_inferior, darwin_kill_inferior)
10044         (darwin_create_inferior, darwin_attach, darwin_detach)
10045         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10046         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10047         (darwin_supports_multi_process): Refactor as darwin_nat_target
10048         methods.
10049         (darwin_resume_to, darwin_files_info): Delete.
10050         (_initialize_darwin_inferior): Rename to ...
10051         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10052         * darwin-nat.h: Include "inf-child.h".
10053         (darwin_nat_target): New class.
10054         (darwin_complete_target): Delete.
10055         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10056         (darwin_target): New.
10057         (i386_darwin_fetch_inferior_registers)
10058         (i386_darwin_store_inferior_registers): Refactor as methods of
10059         darwin_nat_target.
10060         (darwin_complete_target): Delete, with ...
10061         (_initialize_i386_darwin_nat): ... bits factored out here.
10062
10063         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10064         (the_alpha_linux_nat_target): New.
10065         (alpha_linux_register_u_offset): Refactor as
10066         alpha_linux_nat_target method.
10067         (_initialize_alpha_linux_nat): Adjust.
10068         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10069         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10070         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10071         methods of linux_nat_trad_target.
10072         (linux_trad_target): Delete.
10073         * linux-nat-trad.h (linux_trad_target): Delete function.
10074         (linux_nat_trad_target): New class.
10075         * mips-linux-nat.c (mips_linux_nat_target): New class.
10076         (super_fetch_registers, super_store_registers, super_close):
10077         Delete.
10078         (the_mips_linux_nat_target): New.
10079         (mips64_linux_regsets_fetch_registers)
10080         (mips64_linux_regsets_store_registers)
10081         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10082         (mips_linux_register_u_offset, mips_linux_read_description)
10083         (mips_linux_can_use_hw_breakpoint)
10084         (mips_linux_stopped_by_watchpoint)
10085         (mips_linux_stopped_data_address)
10086         (mips_linux_region_ok_for_hw_watchpoint)
10087         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10088         (mips_linux_close): Refactor as methods of mips_linux_nat.
10089         (_initialize_mips_linux_nat): Adjust to C++ification.
10090
10091         * aix-thread.c (aix_thread_target): New class.
10092         (aix_thread_ops): Now an aix_thread_target.
10093         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10094         (aix_thread_fetch_registers, aix_thread_store_registers)
10095         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10096         (aix_thread_thread_alive, aix_thread_pid_to_str)
10097         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10098         Refactor as methods of aix_thread_target.
10099         (init_aix_thread_ops): Delete.
10100         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10101         and complete_target_initialization.
10102         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10103         (rs6000_nat_target): New class.
10104         (the_rs6000_nat_target): New.
10105         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10106         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10107         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10108         (super_create_inferior): Delete.
10109         (_initialize_rs6000_nat): Adjust to C++ification.
10110
10111         * arm-linux-nat.c (arm_linux_nat_target): New class.
10112         (the_arm_linux_nat_target): New.
10113         (arm_linux_fetch_inferior_registers)
10114         (arm_linux_store_inferior_registers, arm_linux_read_description)
10115         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10116         (arm_linux_remove_hw_breakpoint)
10117         (arm_linux_region_ok_for_hw_watchpoint)
10118         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10119         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10120         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10121         arm_linux_nat_target.
10122         (_initialize_arm_linux_nat): Adjust to C++ification.
10123
10124         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10125         (the_aarch64_linux_nat_target): New.
10126         (aarch64_linux_fetch_inferior_registers)
10127         (aarch64_linux_store_inferior_registers)
10128         (aarch64_linux_child_post_startup_inferior)
10129         (aarch64_linux_read_description)
10130         (aarch64_linux_can_use_hw_breakpoint)
10131         (aarch64_linux_insert_hw_breakpoint)
10132         (aarch64_linux_remove_hw_breakpoint)
10133         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10134         (aarch64_linux_region_ok_for_hw_watchpoint)
10135         (aarch64_linux_stopped_data_address)
10136         (aarch64_linux_stopped_by_watchpoint)
10137         (aarch64_linux_watchpoint_addr_within_range)
10138         (aarch64_linux_can_do_single_step): Refactor as methods of
10139         aarch64_linux_nat_target.
10140         (super_post_startup_inferior): Delete.
10141         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10142
10143         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10144         (the_hppa_linux_nat_target): New.
10145         (hppa_linux_fetch_inferior_registers)
10146         (hppa_linux_store_inferior_registers): Refactor as methods of
10147         hppa_linux_nat_target.
10148         (_initialize_hppa_linux_nat): Adjust to C++ification.
10149
10150         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10151         (the_ia64_linux_nat_target): New.
10152         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10153         (ia64_linux_stopped_data_address)
10154         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10155         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10156         ia64_linux_nat_target methods.
10157         (super_xfer_partial): Delete.
10158         (_initialize_ia64_linux_nat): Adjust to C++ification.
10159
10160         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10161         (the_m32r_linux_nat_target): New.
10162         (m32r_linux_fetch_inferior_registers)
10163         (m32r_linux_store_inferior_registers): Refactor as
10164         m32r_linux_nat_target methods.
10165         (_initialize_m32r_linux_nat): Adjust to C++ification.
10166
10167         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10168         (the_m68k_linux_nat_target): New.
10169         (m68k_linux_fetch_inferior_registers)
10170         (m68k_linux_store_inferior_registers): Refactor as
10171         m68k_linux_nat_target methods.
10172         (_initialize_m68k_linux_nat): Adjust to C++ification.
10173
10174         * s390-linux-nat.c (s390_linux_nat_target): New class.
10175         (the_s390_linux_nat_target): New.
10176         (s390_linux_fetch_inferior_registers)
10177         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10178         (s390_insert_watchpoint, s390_remove_watchpoint)
10179         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10180         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10181         (s390_auxv_parse, s390_read_description): Refactor as methods of
10182         s390_linux_nat_target.
10183         (_initialize_s390_nat): Adjust to C++ification.
10184
10185         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10186         (the_sparc_linux_nat_target): New.
10187         (_initialize_sparc_linux_nat): Adjust to C++ification.
10188         * sparc-nat.c (sparc_fetch_inferior_registers)
10189         (sparc_store_inferior_registers): Remove target_ops parameter.
10190         * sparc-nat.h (sparc_fetch_inferior_registers)
10191         (sparc_store_inferior_registers): Remove target_ops parameter.
10192         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10193         (the_sparc64_linux_nat_target): New.
10194         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10195
10196         * spu-linux-nat.c (spu_linux_nat_target): New class.
10197         (the_spu_linux_nat_target): New.
10198         (spu_child_post_startup_inferior, spu_child_post_attach)
10199         (spu_child_wait, spu_fetch_inferior_registers)
10200         (spu_store_inferior_registers, spu_xfer_partial)
10201         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10202         methods.
10203         (_initialize_spu_nat): Adjust to C++ification.
10204
10205         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10206         (the_tilegx_linux_nat_target): New.
10207         (fetch_inferior_registers, store_inferior_registers):
10208         Refactor as methods.
10209         (_initialize_tile_linux_nat): Adjust to C++ification.
10210
10211         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10212         (the_xtensa_linux_nat_target): New.
10213         (xtensa_linux_fetch_inferior_registers)
10214         (xtensa_linux_store_inferior_registers): Refactor as
10215         xtensa_linux_nat_target methods.
10216         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10217
10218         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10219         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10220         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10221         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10222         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10223         (fbsd_stopped_by_sw_breakpoint)
10224         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10225         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10226         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10227         (fbsd_post_startup_inferior, fbsd_post_attach)
10228         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10229         (fbsd_set_syscall_catchpoint)
10230         (super_xfer_partial, super_resume, super_wait)
10231         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10232         (fbsd_handle_debug_trap): Remove target_ops parameter.
10233         (fbsd_nat_add_target): Delete.
10234         * fbsd-nat.h: Include "inf-ptrace.h".
10235         (fbsd_nat_add_target): Delete.
10236         (USE_SIGTRAP_SIGINFO): Define.
10237         (fbsd_nat_target): New class.
10238
10239         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10240         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10241         (amd64bsd_target): Delete.
10242         * amd64-bsd-nat.h: New file.
10243         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10244         "x86-bsd-nat.h".
10245         (amd64_fbsd_nat_target): New class.
10246         (the_amd64_fbsd_nat_target): New.
10247         (amd64fbsd_read_description): Refactor as method of
10248         amd64_fbsd_nat_target.
10249         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10250         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10251         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10252         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10253         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10254         (i386bsd_target): Delete.
10255         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10256         (i386bsd_fetch_inferior_registers)
10257         (i386bsd_store_inferior_registers): Declare.
10258         (i386_bsd_nat_target): New class.
10259         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10260         (the_i386_fbsd_nat_target): New.
10261         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10262         i386_fbsd_nat_target methods.
10263         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10264         (_initialize_i386fbsd_nat): Adjust to C++ification.
10265         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10266         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10267         (_initialize_x86_bsd_nat): Adjust to C++ification.
10268         * x86-bsd-nat.h: Include "x86-nat.h".
10269         (x86bsd_target): Delete declaration.
10270         (x86bsd_nat_target): New class.
10271
10272         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10273         (the_aarch64_fbsd_nat_target): New.
10274         (aarch64_fbsd_fetch_inferior_registers)
10275         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10276         aarch64_fbsd_nat_target.
10277         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10278         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10279         (the_alpha_bsd_nat_target): New.
10280         (alphabsd_fetch_inferior_registers)
10281         (alphabsd_store_inferior_registers): Refactor as
10282         alpha_bsd_nat_target methods.
10283         (_initialize_alphabsd_nat): Refactor as methods of
10284         alpha_bsd_nat_target.
10285         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10286         (the_amd64_nbsd_nat_target): New.
10287         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10288         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10289         (the_amd64_obsd_nat_target): New.
10290         (_initialize_amd64obsd_nat): Adjust to C++ification.
10291         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10292         (the_arm_fbsd_nat_target): New.
10293         (arm_fbsd_fetch_inferior_registers)
10294         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10295         (_initialize_arm_fbsd_nat): Refactor as methods of
10296         arm_fbsd_nat_target.
10297         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10298         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10299         (the_arm_netbsd_nat_target): New.
10300         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10301         arm_netbsd_nat_target.
10302         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10303         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10304         (the_hppa_nbsd_nat_target): New.
10305         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10306         hppa_nbsd_nat_target methods.
10307         (_initialize_hppanbsd_nat): Adjust to C++ification.
10308         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10309         (the_hppa_obsd_nat_target): New.
10310         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10311         methods of hppa_obsd_nat_target.
10312         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10313         add_target.
10314         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10315         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10316         add_target.
10317         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10318         (_initialize_i386obsd_nat): Use add_target.
10319         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10320         (the_m68k_bsd_nat_target): New.
10321         (m68kbsd_fetch_inferior_registers)
10322         (m68kbsd_store_inferior_registers): Refactor as methods of
10323         m68k_bsd_nat_target.
10324         (_initialize_m68kbsd_nat): Adjust to C++ification.
10325         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10326         (the_mips_fbsd_nat_target): New.
10327         (mips_fbsd_fetch_inferior_registers)
10328         (mips_fbsd_store_inferior_registers): Refactor as methods of
10329         mips_fbsd_nat_target.
10330         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10331         add_target.
10332         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10333         (the_mips_nbsd_nat_target): New.
10334         (mipsnbsd_fetch_inferior_registers)
10335         (mipsnbsd_store_inferior_registers): Refactor as methods of
10336         mips_nbsd_nat_target.
10337         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10338         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10339         (the_mips64_obsd_nat_target): New.
10340         (mips64obsd_fetch_inferior_registers)
10341         (mips64obsd_store_inferior_registers): Refactor as methods of
10342         mips64_obsd_nat_target.
10343         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10344         add_target.
10345         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10346         nbsd_nat_target.
10347         * nbsd-nat.h: Include "inf-ptrace.h".
10348         (nbsd_nat_target): New class.
10349         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10350         (obsd_wait): Refactor as methods of obsd_nat_target.
10351         (obsd_add_target): Delete.
10352         * obsd-nat.h: Include "inf-ptrace.h".
10353         (obsd_nat_target): New class.
10354         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10355         (the_ppc_fbsd_nat_target): New.
10356         (ppcfbsd_fetch_inferior_registers)
10357         (ppcfbsd_store_inferior_registers): Refactor as methods of
10358         ppc_fbsd_nat_target.
10359         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10360         add_target.
10361         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10362         (the_ppc_nbsd_nat_target): New.
10363         (ppcnbsd_fetch_inferior_registers)
10364         (ppcnbsd_store_inferior_registers): Refactor as methods of
10365         ppc_nbsd_nat_target.
10366         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10367         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10368         (the_ppc_obsd_nat_target): New.
10369         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10370         methods of ppc_obsd_nat_target.
10371         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10372         add_target.
10373         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10374         (the_sh_nbsd_nat_target): New.
10375         (shnbsd_fetch_inferior_registers)
10376         (shnbsd_store_inferior_registers): Refactor as methods of
10377         sh_nbsd_nat_target.
10378         (_initialize_shnbsd_nat): Adjust to C++ification.
10379         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10380         (inf_ptrace_xfer_partial): Delete.
10381         (sparc_xfer_partial, sparc_target): Delete.
10382         * sparc-nat.h (sparc_fetch_inferior_registers)
10383         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10384         (sparc_target): Delete function declaration.
10385         (sparc_target): New template class.
10386         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10387         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10388         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10389         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10390         add_target.
10391         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10392         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10393         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10394         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10395         add_target.
10396         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10397         (the_vax_bsd_nat_target): New.
10398         (vaxbsd_fetch_inferior_registers)
10399         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10400         methods.
10401         (_initialize_vaxbsd_nat): Adjust to C++ification.
10402
10403         * bsd-kvm.c (bsd_kvm_target): New class.
10404         (bsd_kvm_ops): Now a bsd_kvm_target.
10405         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10406         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10407         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10408         bsd_kvm_target.
10409         (bsd_kvm_return_one): Delete.
10410         (bsd_kvm_add_target): Adjust to C++ification.
10411
10412         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10413         (nto_procfs_target_procfs): New classes.
10414         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10415         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10416         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10417         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10418         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10419         (procfs_remove_hw_breakpoint, procfs_resume)
10420         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10421         (procfs_kill_inferior, procfs_store_registers)
10422         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10423         as methods of nto_procfs_target.
10424         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10425         (nto_native_ops): Delete.
10426         (procfs_open, procfs_native_open): Delete.
10427         (nto_native_ops): Now an nto_procfs_target_native.
10428         (init_procfs_targets): Adjust to C++ification.
10429         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10430         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10431         Refactor as methods of nto_procfs_target.
10432
10433         * go32-nat.c (go32_nat_target): New class.
10434         (the_go32_nat_target): New.
10435         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10436         (go32_store_registers, go32_xfer_partial, go32_files_info)
10437         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10438         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10439         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10440         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10441         (go32_target): Delete.
10442         (_initialize_go32_nat): Adjust to C++ification.
10443
10444         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10445         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10446         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10447         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10448         gnu_nat_target.
10449         (gnu_target): Delete.
10450         * gnu-nat.h (gnu_target): Delete.
10451         (gnu_nat_target): New class.
10452         * i386-gnu-nat.c (gnu_base_target): New.
10453         (i386_gnu_nat_target): New class.
10454         (the_i386_gnu_nat_target): New.
10455         (_initialize_i386gnu_nat): Adjust to C++ification.
10456
10457 2018-05-02  Pedro Alves  <palves@redhat.com>
10458
10459         * bfd-target.c (target_bfd_xclose): Rename to ...
10460         (target_bfd_close): ... this.
10461         (target_bfd_reopen): Adjust.
10462         * target.c (target_close): Remove references to to_xclose.
10463         * target.h (target_ops::to_xclose): Delete.
10464         (target_ops::to_close): Update comments.
10465
10466 2018-05-02  Pedro Alves  <palves@redhat.com>
10467
10468         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10469         "linux-nat.h".
10470         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10471         * inf-ptrace.c (inf_ptrace_register_u_offset)
10472         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10473         (inf_ptrace_store_register, inf_ptrace_store_registers)
10474         (inf_ptrace_trad_target): Move to ...
10475         * linux-nat-trad.c: ... this new file.
10476         * linux-nat-trad.h: New file.
10477         * linux-nat.c (linux_target_install_ops): Make extern.
10478         (linux_trad_target): Delete.
10479         * linux-nat.h (linux_trad_target): Delete declaration.
10480         (linux_target_install_ops): Declare.
10481         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10482         "linux-nat.h".
10483
10484 2018-05-02  Pedro Alves  <palves@redhat.com>
10485
10486         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10487         procfs_target/add_target here.
10488         * procfs.c (procfs_target): Make static.
10489         (_initialize_procfs): Call add_target here.
10490         * procfs.h (struct target_ops): Remove forward declaration.
10491         (procfs_target): Remove declaration.
10492         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10493
10494 2018-05-02  Pedro Alves  <palves@redhat.com>
10495
10496         * procfs.c (procfs_stopped_by_watchpoint)
10497         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10498         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10499         Forward declare.
10500         (procfs_use_watchpoints): Delete, move contents...
10501         (procfs_target): ... here.
10502         * procfs.h (procfs_use_watchpoints): Delete declaration.
10503         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10504         procfs_use_watchpoints.
10505         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10506         procfs_use_watchpoints.
10507
10508 2018-05-02  Tom Tromey  <tom@tromey.com>
10509
10510         PR python/20084:
10511         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10512         and var_zuinteger_unlimited.
10513         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10514         and PARAM_ZUINTEGER_UNLIMITED.
10515         (set_parameter_value): Handle var_zuinteger and
10516         var_zuinteger_unlimited.
10517         (add_setshow_generic): Likewise.
10518         (parmpy_init): Likewise.
10519
10520 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10521
10522         PR rust/23124
10523         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10524         pointer is not null before dereferencing it.
10525
10526 2018-04-30  Tom Tromey  <tom@tromey.com>
10527
10528         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10529         is_mi_like_p.
10530
10531 2018-04-30  Tom Tromey  <tom@tromey.com>
10532
10533         * breakpoint.c (mention): Remove use of is_mi_like_p.
10534         (print_mention_ranged_breakpoint): Likewise.
10535         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10536         of is_mi_like_p.
10537
10538 2018-04-30  Tom Tromey  <tom@tromey.com>
10539
10540         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10541
10542 2018-04-30  Tom Tromey  <tom@tromey.com>
10543
10544         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10545         (info_spu_event_command): Remove some uses of is_mi_like_p.
10546
10547 2018-04-30  Tom Tromey  <tom@tromey.com>
10548
10549         * python/py-framefilter.c (py_print_single_arg)
10550         (enumerate_locals, py_print_args, py_print_frame): Remove some
10551         uses of is_mi_like_p.
10552
10553 2018-04-30  Tom Tromey  <tom@tromey.com>
10554
10555         * ui-out.c: Update.
10556         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10557         * ui-out.h (ui_out::is_mi_like_p): Now const.
10558         (ui_out::do_is_mi_like_p): Now const.
10559         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10560
10561 2018-04-30  Tom Tromey  <tom@tromey.com>
10562
10563         * varobj.c (varobj_set_visualizer): Use new_reference.
10564         * python/python.c (gdbpy_decode_line): Use new_reference.
10565         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10566         new_reference.
10567
10568 2018-04-30  Tom Tromey  <tom@tromey.com>
10569
10570         * varobj.c (install_new_value): Use new_reference.
10571         * value.h (value_incref): Return void.  Swap intro comment with
10572         value_decref.
10573         * value.c (set_value_parent): Use new_reference.
10574         (value_incref): Return void.  Update intro comment.
10575         (release_value): Use new_reference.
10576         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10577
10578 2018-04-30  Tom Tromey  <tom@tromey.com>
10579
10580         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10581         * gdb_bfd.h (new_bfd_ref): Remove.
10582         (gdb_bfd_open): Update comment.
10583         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10584         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10585         (gdb_bfd_fdopenr): Use new_reference.
10586         * exec.c (exec_file_attach): Use new_reference.
10587
10588 2018-04-30  Tom Tromey  <tom@tromey.com>
10589
10590         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10591         method.
10592
10593 2018-04-30  Tom Tromey  <tom@tromey.com>
10594
10595         * jit.c (jit_read_code_entry): Use type_align.
10596         * i386-tdep.c (i386_gdbarch_init): Don't call
10597         set_gdbarch_long_long_align_bit.
10598         * gdbarch.sh: Remove long_long_align_bit.
10599         * gdbarch.c, gdbarch.h: Rebuild.
10600         * arc-tdep.c (arc_type_align): New function.
10601         (arc_gdbarch_init): Use arc_type_align.  Don't call
10602         set_gdbarch_long_long_align_bit.
10603
10604 2018-04-30  Tom Tromey  <tom@tromey.com>
10605
10606         * rust-lang.c (rust_type_alignment): Remove.
10607         (rust_composite_type): Use type_align.
10608
10609 2018-04-30  Tom Tromey  <tom@tromey.com>
10610
10611         * NEWS: Mention Type.align.
10612         * python/py-type.c (typy_get_alignof): New function.
10613         (type_object_getset): Add "alignof".
10614
10615 2018-04-30  Tom Tromey  <tom@tromey.com>
10616
10617         PR exp/17095:
10618         * NEWS: Update.
10619         * std-operator.def (UNOP_ALIGNOF): New operator.
10620         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10621         New.
10622         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10623         * c-lang.c (c_op_print_tab): Add alignof.
10624         * c-exp.y (ALIGNOF): New token.
10625         (exp): Add "ALIGNOF" production.
10626         (ident_tokens): Add _Alignof and alignof.
10627
10628 2018-04-30  Tom Tromey  <tom@tromey.com>
10629
10630         * i386-tdep.c (i386_type_align): New function.
10631         (i386_gdbarch_init): Update.
10632         * gdbarch.sh (type_align): New method.
10633         * gdbarch.c, gdbarch.h: Rebuild.
10634         * arch-utils.h (default_type_align): Declare.
10635         * arch-utils.c (default_type_align): New function.
10636         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10637         (struct type) <align_log2>: New field.
10638         <instance_flags>: Now a bitfield.
10639         (TYPE_RAW_ALIGN): New macro.
10640         (type_align, type_raw_align, set_type_align): Declare.
10641         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10642         functions.
10643         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10644         (get_alignment, maybe_set_alignment): New functions.
10645         (read_structure_type, read_enumeration_type, read_array_type)
10646         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10647         (read_subrange_type, read_base_type): Set type alignment.
10648
10649 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10650
10651         * dwarf2read.c (read_index_from_section): Use bool.
10652
10653 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10654
10655         PR gdb/22950
10656         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10657         with #ifdef.
10658
10659 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10660
10661         PR build/22873
10662         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10663         last step, and do it atomically.
10664
10665 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10666
10667         * compile/compile-c-types.c (convert_int, convert_float):
10668         Update for C FE v1.
10669
10670 2018-04-27  Tom Tromey  <tom@tromey.com>
10671
10672         PR rust/22545:
10673         * rust-lang.c (rust_inclusive_range_type_p): New function.
10674         (rust_range): Handle inclusive ranges.
10675         (rust_compute_range): Likewise.
10676         * rust-exp.y (struct rust_op) <inclusive>: New field.
10677         (DOTDOTEQ): New constant.
10678         (range_expr): Add "..=" productions.
10679         (operator_tokens): Add "..=" token.
10680         (ast_range): Add "inclusive" parameter.
10681         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10682         ranges.
10683         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10684         bounds values.
10685         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10686         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10687         Update comments.
10688         * expprint.c (print_subexp_standard): Handle new bounds values.
10689         (dump_subexp_body_standard): Likewise.
10690
10691 2018-04-27  Tom Tromey  <tom@tromey.com>
10692
10693         * configure: Rebuild.
10694         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10695         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10696         "OVERRIDE".
10697         (class symbol_needs_eval_context): Likewise.
10698         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10699         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10700         "virtual".
10701         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10702         "override".
10703         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10704         * aarch64-tdep.c (instruction_reader::read): Use "override".
10705         (instruction_reader_test::read): Likewise.
10706         * arm-tdep.c (instruction_reader::read): Use "override".
10707         (instruction_reader_thumb::read): Likewise.
10708
10709 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10710
10711         PR remote/9665
10712         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10713         instead of remote_send.
10714         (remote_send): Remove.
10715
10716 2018-04-26  Pedro Alves  <palves@redhat.com>
10717
10718         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10719         find_function_start_sal instead of find_pc_line.
10720
10721 2018-04-26  Pedro Alves  <palves@redhat.com>
10722
10723         * breakpoint.c (set_breakpoint_location_function): Handle
10724         mst_data_gnu_ifunc.
10725         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10726         * elfread.c (elf_symtab_read): Give data symbols with
10727         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10728         (elf_rel_plt_read): Update comment.
10729         * linespec.c (convert_linespec_to_sals): Handle
10730         mst_data_gnu_ifunc.
10731         (minsym_found): Handle mst_data_gnu_ifunc.
10732         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10733         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10734         * parse.c (find_minsym_type_and_address): Handle
10735         mst_data_gnu_ifunc.
10736         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10737         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10738         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10739         comment.
10740         <mst_data_gnu_ifunc>: New enumerator.
10741
10742 2018-04-26  Pedro Alves  <palves@redhat.com>
10743
10744         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10745         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10746         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10747         Handle it.
10748         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10749         (lookup_minimal_symbol_by_pc): Adjust.
10750         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10751         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10752         * minsyms.h (lookup_msym_prefer): New enum.
10753         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10754         parameter by a lookup_msym_prefer parameter.
10755
10756 2018-04-26  Pedro Alves  <palves@redhat.com>
10757
10758         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10759         ends in "@plt" instead of looking at the symbol's section.
10760
10761 2018-04-26  Pedro Alves  <palves@redhat.com>
10762
10763         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10764         all references.
10765         (find_pc_partial_function_gnu_ifunc): Rename to ...
10766         (find_pc_partial_function): ... this, and remove references to
10767         'is_gnu_ifunc_p'.
10768         (find_pc_partial_function): Delete old implementation.
10769         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10770
10771 2018-04-26  Pedro Alves  <palves@redhat.com>
10772
10773         * linespec.c (struct bound_minimal_symbol_search_key): New.
10774         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10775         skip first line if we found a GNU ifunc minimal symbol by name.
10776         (compare_msymbols): Change parameters to work with a destructured
10777         lhs minsym.
10778         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10779         functions.
10780
10781 2018-04-26  Pedro Alves  <palves@redhat.com>
10782
10783         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10784         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10785         address/name.
10786         (add_location_to_breakpoint): Store the minsym and the objfile in
10787         the breakpoint location.
10788         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10789         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10790         Record the minsym in the sal.
10791         * symtab.h (symtab_and_line) <msymbol>: New field.
10792
10793 2018-04-26  Pedro Alves  <palves@redhat.com>
10794
10795         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10796         unless we actually resolved the ifunc.
10797
10798 2018-04-26  Pedro Alves  <palves@redhat.com>
10799
10800         * c-exp.y (variable production): Prefer ifunc minsyms over
10801         regular function symbols.
10802         * symtab.c (find_gnu_ifunc): New function.
10803         * minsyms.h (lookup_msym_prefer): New enum.
10804         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10805         parameter by a lookup_msym_prefer parameter.
10806         * symtab.h (find_gnu_ifunc): New declaration.
10807
10808 2018-04-26  Pedro Alves  <palves@redhat.com>
10809
10810         * blockframe.c (find_gnu_ifunc_target_type): New function.
10811         (find_function_type): New.
10812         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10813         return a value with a memory address.
10814         (eval_call): For calls to GNU ifunc functions, try to find the
10815         type of the target function from the type that the resolver
10816         returns.
10817         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10818         symbols.
10819         * infcall.c (find_function_return_type): Delete.
10820         (find_function_addr): Add 'function_type' parameter.  For calls to
10821         GNU ifunc functions, try to find the type of the target function
10822         from the type that the resolver returns, and return it via
10823         FUNCTION_TYPE.
10824         (call_function_by_hand_dummy): Adjust to use the function type
10825         returned by find_function_addr.
10826         (find_function_addr): Add 'function_type' parameter and move
10827         description here.
10828         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10829         declarations.
10830
10831 2018-04-26  Pedro Alves  <palves@redhat.com>
10832
10833         * c-exp.y (variable production): Skip finding an alias for ifunc
10834         symbols.
10835
10836 2018-04-26  Pedro Alves  <palves@redhat.com>
10837
10838         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10839
10840 2018-04-25  Pedro Alves  <palves@redhat.com>
10841
10842         * infcmd.c (kill_command): Print the pid as string, not the whole
10843         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10844         message.
10845         * remote.c (remote_detach_1): Print the pid as string, not the
10846         whole thread's ptid.
10847
10848 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10849             Sergio Durigan Junior  <sergiodj@redhat.com>
10850             Pedro Alves  <palves@redhat.com>
10851
10852         * infcmd.c (kill_command): Print message when inferior has
10853         been killed.
10854         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10855         '1'.
10856         (add_inferior): Improve message printed when
10857         'print_inferior_events' is on.
10858         (exit_inferior): Remove message printed when
10859         'print_inferior_events' is on.
10860         (detach_inferior): Improve message printed when
10861         'print_inferior_events' is on.
10862         (initialize_inferiors): Use 'add_inferior_silent' to set
10863         'current_inferior_'.
10864         * inferior.h (print_inferior_events): Declare here as
10865         'extern'.
10866         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10867         '[Detaching...]' messages when 'print_inferior_events' is on.
10868         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10869         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10870         'Detaching after fork from child...', replace it by '... from
10871         parent...'.
10872         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10873         prefix/suffix when printing 'Detaching...' messages.  Print
10874         them when 'print_inferior_events' is on.
10875         * remote.c (remote_detach_1): Print message when detaching
10876         from inferior and '!is_fork_parent'.
10877
10878 2018-04-24  Tom Tromey  <tom@tromey.com>
10879
10880         * cli-out.h: Reindent.
10881
10882 2018-04-24  Tom Tromey  <tom@tromey.com>
10883
10884         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10885         (cli_ui_out::do_field_string): Use fputs_filtered.
10886         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10887
10888 2018-04-23  Tom Tromey  <tom@tromey.com>
10889
10890         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10891         gdb::unique_xmalloc_ptr.
10892
10893 2018-04-23  Tom Tromey  <tom@tromey.com>
10894
10895         * configure: Rebuild.
10896
10897 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10898
10899         PR gdb/23095
10900         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10901         prepare_for_testing.  Set normal_bp to r_debug_state if target
10902         is bsd.
10903
10904 2018-04-21  Pedro Alves  <palves@redhat.com>
10905             Rajendra SY  <rajendra.sy@gmail.com>
10906
10907         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10908         * remote.c (extended_remote_attach): In all-stop mode, mark the
10909         thread as executing.
10910
10911 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10912
10913         * thread.c (thread_apply_all_command): Fix comment.
10914         (thread_command): Fix comment.
10915
10916 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10917
10918         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10919         parameter.
10920         * features/aarch64-core.c (create_feature_aarch64_core):
10921         Regenerate.
10922         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10923         Likewise.
10924         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10925         Likewise.
10926         * features/i386/32bit-avx512.c
10927         (create_feature_i386_32bit_avx512): Likewise.
10928         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10929         Likewise.
10930         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10931         Likewise.
10932         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10933         Likewise.
10934         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10935         Likewise.
10936         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10937         Likewise.
10938         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10939         Likewise.
10940         * features/i386/64bit-avx512.c
10941         (create_feature_i386_64bit_avx512): Likewise.
10942         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10943         Likewise.
10944         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10945         Likewise.
10946         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10947         Likewise.
10948         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10949         Likewise.
10950         * features/i386/64bit-segments.c
10951         (create_feature_i386_64bit_segments): Likewise.
10952         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10953         Likewise.
10954         * features/i386/x32-core.c
10955         (create_feature_i386_x32_core): Likewise.
10956         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10957         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10958         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10959         * target-descriptions.c: In generated code, don't pass xml
10960         filename.
10961
10962 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10963
10964         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10965         (print_xml_feature::visit_post): Likewise.
10966         (print_xml_feature::visit): Likewise.
10967         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10968         (print_xml_feature): Add new class.
10969         * regformats/regdat.sh: Null xmltarget on feature targets.
10970         * target-descriptions.c (struct target_desc): Add xmltarget.
10971         (maintenance_check_tdesc_xml_convert): Add unittest function.
10972         (tdesc_get_features_xml): Add function to get xml.
10973         (maintenance_check_xml_descriptions): Test xml generation.
10974         * xml-tdesc.c (string_read_description_xml): Add function.
10975         * xml-tdesc.h (string_read_description_xml): Add declaration.
10976
10977 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10978
10979         * features/Makefile: Add feature marker to targets with new style
10980         target descriptions.
10981         * regformats/aarch64.dat: Regenerate.
10982         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10983         * regformats/i386/amd64-avx-linux.dat: Likewise.
10984         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10985         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10986         * regformats/i386/amd64-linux.dat: Likewise.
10987         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10988         * regformats/i386/amd64.dat: Likewise.
10989         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10990         * regformats/i386/i386-avx-linux.dat: Likewise.
10991         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10992         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10993         * regformats/i386/i386-linux.dat: Likewise.
10994         * regformats/i386/i386-mmx-linux.dat: Likewise.
10995         * regformats/i386/i386-mpx-linux.dat: Likewise.
10996         * regformats/i386/i386.dat: Likewise.
10997         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10998         * regformats/i386/x32-avx-linux.dat: Likewise.
10999         * regformats/i386/x32-linux.dat: Likewise.
11000         * regformats/tic6x-c62x-linux.dat: Likewise.
11001         * regformats/tic6x-c64x-linux.dat: Likewise.
11002         * regformats/tic6x-c64xp-linux.dat: Likewise.
11003         * regformats/regdat.sh: Parse feature marker.
11004
11005 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11006
11007         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11008         (tdesc_osabi_name): Likewise.
11009         * target-descriptions.c (tdesc_architecture_name): Add new
11010         function.
11011         (tdesc_osabi_name): Likewise.
11012
11013 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11014
11015         * common/tdesc.c (tdesc_predefined_type): Move to here.
11016         (tdesc_named_type): Likewise.
11017         (tdesc_create_vector): Likewise.
11018         (tdesc_create_struct): Likewise.
11019         (tdesc_set_struct_size): Likewise.
11020         (tdesc_create_union): Likewise.
11021         (tdesc_create_flags): Likewise.
11022         (tdesc_create_enum): Likewise.
11023         (tdesc_add_field): Likewise.
11024         (tdesc_add_typed_bitfield): Likewise.
11025         (tdesc_add_bitfield): Likewise.
11026         (tdesc_add_flag): Likewise.
11027         (tdesc_add_enum_value): Likewise.
11028         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11029         (struct tdesc_type_vector): Likewise.
11030         (struct tdesc_type_field): Likewise.
11031         (struct tdesc_type_with_fields): Likewise.
11032         (tdesc_create_enum): Add declaration.
11033         (tdesc_add_typed_bitfield): Likewise.
11034         (tdesc_add_enum_value): Likewise.
11035         * target-descriptions.c (tdesc_type_field): Move from here.
11036         (tdesc_type_builtin): Likewise.
11037         (tdesc_type_vector): Likewise.
11038         (tdesc_type_with_fields): Likewise.
11039         (tdesc_predefined_types): Likewise.
11040         (tdesc_named_type): Likewise.
11041         (tdesc_create_vector): Likewise.
11042         (tdesc_create_struct): Likewise.
11043         (tdesc_set_struct_size): Likewise.
11044         (tdesc_create_union): Likewise.
11045         (tdesc_create_flags): Likewise.
11046         (tdesc_create_enum): Likewise.
11047         (tdesc_add_field): Likewise.
11048         (tdesc_add_typed_bitfield): Likewise.
11049         (tdesc_add_bitfield): Likewise.
11050         (tdesc_add_flag): Likewise.
11051         (tdesc_add_enum_value): Likewise.
11052         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11053         (tdesc_add_typed_bitfield): Likewise.
11054         (tdesc_add_enum_value): Likewise.
11055
11056 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11057
11058         * common/tdesc.c (tdesc_feature::accept): Move to here.
11059         (tdesc_feature::operator==): Likewise.
11060         (tdesc_create_reg): Likewise.
11061         * common/tdesc.h (tdesc_type_kind): Likewise.
11062         (struct tdesc_type): Likewise.
11063         (struct tdesc_feature): Likewise.
11064         * regformats/regdat.sh: Create a feature.
11065         * target-descriptions.c (tdesc_type_kind): Move from here.
11066         (tdesc_type): Likewise.
11067         (tdesc_type_up): Likewise.
11068         (tdesc_feature): Likewise.
11069         (tdesc_create_reg): Likewise.
11070
11071 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11072
11073         * Makefile.in: Add arch/tdesc.c
11074         * common/tdesc.c: New file.
11075         * common/tdesc.h (tdesc_element_visitor): Move to here.
11076         (tdesc_element): Likewise.
11077         (tdesc_reg): Likewise.
11078         (tdesc_reg_up): Likewise.
11079         * regformats/regdef.h (reg): Add offset to constructors.
11080         * target-descriptions.c (tdesc_element_visitor): Move from here.
11081         (tdesc_element): Likewise.
11082         (tdesc_reg): Likewise.
11083         (tdesc_reg_up): Likewise.
11084
11085 2018-04-17  Tom Tromey  <tom@tromey.com>
11086
11087         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11088         discriminant field.
11089
11090 2018-04-17  Tom Tromey  <tom@tromey.com>
11091
11092         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11093
11094 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11095
11096         * symtab.c (print_symbol_info): Skip printing filename and line
11097         number when `last' is NULL.
11098         (symtab_symbol_info): Use empty string instead of NULL for first
11099         invocation of print_symbol_info.
11100         (rbreak_command): Pass NULL to `last' parameter of
11101         print_symbol_info.
11102
11103 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11104
11105         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11106         instead of nullptr.
11107
11108 2018-04-16  Pedro Alves  <palves@redhat.com>
11109
11110         * MAINTAINERS (sh): Remove.
11111         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11112         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11113         (ALLDEPFILES): Remove sh64-tdep.c.
11114         * NEWS: Mentions that support for SH-5/SH64 is removed.
11115         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11116         (sh*-*-openbsd*): Ditto.
11117         (sh64-*-elf*): Remove.
11118         (sh*): Remove.
11119         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11120         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11121         * sh-tdep.c: No longer include "sh64-tdep.h".
11122         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11123         * sh64-tdep.c, sh64-tdep.h: Remove files.
11124
11125 2018-04-16  Pedro Alves  <palves@redhat.com>
11126
11127         * MAINTAINERS: Remove m88k.
11128         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11129         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11130         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11131         * NEWS: Mention that support for m88k was removed.
11132         * configure.host (m88*-*-*): Remove support.
11133         * configure.nat (m88k-*-*): Remove support.
11134         * configure.tgt (m88*-*-openbsd*): Remove.
11135         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11136
11137 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11138
11139         * configure.tgt (x86_tobjs): New variable.
11140         (amd64_tobjs, i386_tobjs): Use it.
11141
11142 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11143
11144         * symtab.c (print_symbol_info): Precede the symbol definition by
11145         the line number when available.
11146         * NEWS: Advertise this enhancement.
11147
11148 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11149
11150         * NEWS (New options): announce set/show record btrace cpu.
11151         * btrace.c: Include record-btrace.h.
11152         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11153         the vendor is unknown.
11154         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11155         Maybe overwrite the btrace configuration's cpu.
11156         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11157         (btrace_fetch): Add cpu parameter.  Update callers.
11158         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11159         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11160         errata workarounds if the vendor is unknown.
11161         * python/py-record-btrace.c: Include record-btrace.h.
11162         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11163         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11164         * record-btrace.c (record_btrace_cpu_state_kind): New.
11165         (record_btrace_cpu): New.
11166         (set_record_btrace_cpu_cmdlist): New.
11167         (record_btrace_get_cpu): New.
11168         (require_btrace_thread, record_btrace_info)
11169         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11170         (cmd_set_record_btrace_cpu_none): New.
11171         (cmd_set_record_btrace_cpu_auto): New.
11172         (cmd_set_record_btrace_cpu): New.
11173         (cmd_show_record_btrace_cpu): New.
11174         (_initialize_record_btrace): Initialize set/show record btrace cpu
11175         commands.
11176         * record-btrace.h (record_btrace_get_cpu): New.
11177
11178 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11179
11180         * record.c (set_record_command): Fix typo in message.
11181
11182 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11183
11184         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11185
11186 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11187
11188         * infrun.c (process_event_stop_test): Call
11189         gdbarch_in_indirect_branch_thunk.
11190         * gdbarch.sh (in_indirect_branch_thunk): New.
11191         * gdbarch.c: Regenerated.
11192         * gdbarch.h: Regenerated.
11193         * x86-tdep.h: New.
11194         * x86-tdep.c: New.
11195         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11196         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11197         (ALLDEPFILES): Add x86-tdep.c.
11198         * arch-utils.h (default_in_indirect_branch_thunk): New.
11199         * arch-utils.c (default_in_indirect_branch_thunk): New.
11200         * i386-tdep: Include x86-tdep.h.
11201         (i386_in_indirect_branch_thunk): New.
11202         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11203         function.
11204         * amd64-tdep: Include x86-tdep.h.
11205         (amd64_in_indirect_branch_thunk): New.
11206         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11207
11208 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11209
11210         PR gdb/23053
11211         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11212         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11213         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11214         regression.
11215
11216 2018-04-12  Tom Tromey  <tom@tromey.com>
11217
11218         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11219         (rust_evaluate_subexp): Likewise.
11220
11221 2018-04-12  Pedro Alves  <palves@redhat.com>
11222
11223         * procfs.c (procfs_detach): Make forward declaration's prototype
11224         match definition's protototype.
11225         (proc_get_LDT_entry): Remove stale do_cleanups call.
11226
11227 2018-04-12  Pedro Alves  <palves@redhat.com>
11228
11229         * target.h (target_ops::to_has_exited): Delete.
11230         (target_has_exited): Delete.
11231         * target-delegates.c: Regenerate.
11232
11233 2018-04-11  Pedro Alves  <palves@redhat.com>
11234
11235         * target.c (fileio_fh_t::t): Add comment.
11236         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11237         (target_fileio_close): Handle a NULL target.
11238         (invalidate_fileio_fh): New.
11239         (target_close): Call it.
11240         * remote.c (remote_hostio_send_command): No longer check whether
11241         remote_desc is open.
11242
11243 2018-04-11  Pedro Alves  <palves@redhat.com>
11244
11245         * target.c (fileio_fh_t): Make it a named struct instead of a
11246         typedef.
11247         (fileio_fh_t::is_closed): New method.
11248         (DEF_VEC_O (fileio_fh_t)): Remove.
11249         (fileio_fhandles): Now a std::vector.
11250         (is_closed_fileio_fh): Delete.
11251         (acquire_fileio_fd): Adjust.  Rename parameters.
11252         (release_fileio_fd): Adjust.
11253         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11254         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11255         (target_fileio_close): Adjust.
11256
11257 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11258
11259         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11260         index.
11261
11262 2018-04-10  Pedro Alves  <palves@redhat.com>
11263
11264         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11265         (scoped_finish_thread_state): New class.
11266         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11267         cleanup.
11268         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11269         (fetch_inferior_event, normal_stop): Likewise.
11270         * thread.c (finish_thread_state_cleanup): Delete.
11271
11272 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11273             Pedro Alves  <palves@redhat.com>
11274
11275         * value.c: Include "selftest.h" and "common/array-view.h".
11276         (struct range) <operator ==>: New.
11277         (test_ranges_contain): New.
11278         (check_ranges_vector): New.
11279         (test_insert_into_bit_range_vector): New.
11280         (_initialize_values): Register selftests.
11281         * common/array-view.h (operator==, operator!=): New.
11282
11283 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11284
11285         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11286         an iterator.
11287         * inline-frame.c: Include <algorithm>.
11288         (struct inline_state): Add constructor.
11289         (inline_state_s): Remove.
11290         (DEF_VEC_O(inline_state_s)): Remove.
11291         (inline_states): Change type to std::vector.
11292         (find_inline_frame_state): Adjust to std::vector.
11293         (allocate_inline_frame_state): Remove.
11294         (clear_inline_frame_state): Adjust to std::vector.
11295         (skip_inline_frames): Adjust to std::vector.
11296
11297 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11298
11299         * tracepoint.h (struct trace_state_variable): Add constructor.
11300         <name>: Change type to std::string.
11301         * tracepoint.c (tsv_s): Remove.
11302         (DEF_VEC_O(tsv_s)): Remove.
11303         (tvariables): Change to std::vector.
11304         (create_trace_state_variable): Adjust to std::vector.
11305         (find_trace_state_variable): Likewise.
11306         (find_trace_state_variable_by_number): Likewise.
11307         (delete_trace_state_variable): Likewise.
11308         (trace_variable_command): Adjust to std::string.
11309         (delete_trace_variable_command): Likewise.
11310         (tvariables_info_1): Adjust to std::vector.
11311         (save_trace_state_variables): Likewise.
11312         (start_tracing): Likewise.
11313         (merge_uploaded_trace_state_variables): Adjust to std::vector
11314         and std::string.
11315         * target.h (struct target_ops)
11316         <to_download_trace_state_variable>: Pass reference to
11317         trace_state_variable.
11318         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11319         * target-delegates.c: Re-generate.
11320         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11321         (mi_tsv_deleted): Likewise.
11322         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11323         * remote.c (remote_download_trace_state_variable): Change
11324         pointer to reference and adjust.
11325         * make-target-delegates (parse_argtypes): Handle references.
11326         (write_function_header): Likewise.
11327         (munge_type): Likewise.
11328
11329 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11330
11331         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11332         string_view-selftests.c.
11333         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11334         testsuite.
11335         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11336         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11337         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11338         * unittests/basic_string_view/element_access/char/1.cc:
11339         Likewise.
11340         * unittests/basic_string_view/element_access/char/empty.cc:
11341         Likewise.
11342         * unittests/basic_string_view/element_access/char/front_back.cc:
11343         Likewise.
11344         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11345         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11346         Likewise.
11347         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11348         Likewise.
11349         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11350         Likewise.
11351         * unittests/basic_string_view/operations/compare/char/1.cc:
11352         Likewise.
11353         * unittests/basic_string_view/operations/compare/char/13650.cc:
11354         Likewise.
11355         * unittests/basic_string_view/operations/copy/char/1.cc:
11356         Likewise.
11357         * unittests/basic_string_view/operations/data/char/1.cc:
11358         Likewise.
11359         * unittests/basic_string_view/operations/find/char/1.cc:
11360         Likewise.
11361         * unittests/basic_string_view/operations/find/char/2.cc:
11362         Likewise.
11363         * unittests/basic_string_view/operations/find/char/3.cc:
11364         Likewise.
11365         * unittests/basic_string_view/operations/find/char/4.cc:
11366         Likewise.
11367         * unittests/basic_string_view/operations/rfind/char/1.cc:
11368         Likewise.
11369         * unittests/basic_string_view/operations/rfind/char/2.cc:
11370         Likewise.
11371         * unittests/basic_string_view/operations/rfind/char/3.cc:
11372         Likewise.
11373         * unittests/basic_string_view/operations/substr/char/1.cc:
11374         Likewise.
11375         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11376         * unittests/string_view-selftests.c: New file.
11377
11378 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11379
11380         * unittests/basic_string_view/capacity/1.cc: New file.
11381         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11382         * unittests/basic_string_view/cons/char/1.cc: New file.
11383         * unittests/basic_string_view/cons/char/2.cc: New file.
11384         * unittests/basic_string_view/cons/char/3.cc: New file.
11385         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11386         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11387         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11388         * unittests/basic_string_view/element_access/char/1.cc: New file.
11389         * unittests/basic_string_view/element_access/char/2.cc: New file.
11390         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11391         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11392         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11393         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11394         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11395         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11396         * unittests/basic_string_view/include.cc: New file.
11397         * unittests/basic_string_view/inserters/char/1.cc: New file.
11398         * unittests/basic_string_view/inserters/char/2.cc: New file.
11399         * unittests/basic_string_view/inserters/char/3.cc: New file.
11400         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11401         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11402         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11403         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11404         * unittests/basic_string_view/literals/types.cc: New file.
11405         * unittests/basic_string_view/literals/values.cc: New file.
11406         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11407         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11408         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11409         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11410         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11411         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11412         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11413         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11414         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11415         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11416         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11417         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11418         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11419         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11420         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11421         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11422         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11423         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11424         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11425         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11426         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11427         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11428         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11429         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11430         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11431         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11432         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11433         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11434         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11435         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11436         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11437         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11438         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11439         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11440         * unittests/basic_string_view/operators/char/2.cc: New file.
11441         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11442         * unittests/basic_string_view/range_access/char/1.cc: New file.
11443         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11444         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11445         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11446         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11447         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11448         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11449         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11450         * unittests/basic_string_view/typedefs.cc: New file.
11451         * unittests/basic_string_view/types/1.cc: New file.
11452
11453 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11454
11455         * common/gdb_string_view.h: Remove libstdc++ implementation
11456         details, adjust to gdb reality.
11457         * common/gdb_string_view.tcc: Likewise.
11458         * cli/cli-script.c (struct string_view): Remove.
11459         (user_args) <m_args>: Change element type to gdb::string_view.
11460         (user_args::insert_args): Adjust.
11461
11462 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11463
11464         * common/gdb_string_view.h: New file.
11465         * common/gdb_string_view.tcc: New file.
11466
11467 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11468
11469         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11470         * configure: Re-generate.
11471
11472 2018-04-09  Pedro Alves  <palves@redhat.com>
11473
11474         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11475         (set_target_gdbarch): Call
11476         gdb::observers::architecture_changed.notify instead of
11477         observer_notify_architecture_changed.
11478
11479 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11480
11481         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11482         (do_restore_current_traceframe_cleanup): Remove.
11483         (restore_current_traceframe_cleanup_dtor): Remove.
11484         (make_cleanup_restore_current_traceframe): Remove.
11485         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11486         New.
11487         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11488         * infrun.c (fetch_inferior_event): Use
11489         scoped_restore_current_traceframe.
11490
11491 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11492
11493         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11494         Remove.
11495         <n_allocated_type_units>: Remove.
11496         <all_type_units>: Change to std::vector.
11497         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11498         to std::vector change.
11499         (dwarf2_per_objfile::get_cutu): Likewise.
11500         (dwarf2_per_objfile::get_tu): Likewise.
11501         (create_signatured_type_table_from_index): Likewise.
11502         (create_signatured_type_table_from_debug_names): Likewise.
11503         (dw2_symtab_iter_next): Likewise.
11504         (dw2_print_stats): Likewise.
11505         (dw2_expand_all_symtabs): Likewise.
11506         (dw2_expand_marked_cus): Likewise.
11507         (dw2_debug_names_iterator::next): Likewise.
11508         (dwarf2_initialize_objfile): Likewise.
11509         (add_signatured_type_cu_to_table): Likewise.
11510         (create_all_type_units): Likewise.
11511         (add_type_unit): Likewise.
11512         (struct tu_abbrev_offset): Add constructor.
11513         (build_type_psymtabs_1): Adjust to std::vector change.
11514         (print_tu_stats): Likewise.
11515         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11516         (write_debug_names): Likewise.
11517
11518 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11519
11520         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11521         Make an std::vector.
11522         <n_comp_units>: Remove.
11523         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11524         to std::vector change.
11525         (dwarf2_per_objfile::get_cutu): Likewise.
11526         (dwarf2_per_objfile::get_cu): Likewise.
11527         (create_cus_from_index): Likewise.
11528         (create_addrmap_from_index): Likewise.
11529         (create_addrmap_from_aranges): Likewise.
11530         (dwarf2_read_index): Likewise.
11531         (dw2_find_last_source_symtab): Likewise.
11532         (dw2_map_symtabs_matching_filename): Likewise.
11533         (dw2_symtab_iter_next): Likewise.
11534         (dw2_print_stats): Likewise.
11535         (dw2_expand_all_symtabs): Likewise.
11536         (dw2_expand_symtabs_with_fullname): Likewise.
11537         (dw2_expand_marked_cus): Likewise.
11538         (dw2_map_symbol_filenames): Likewise.
11539         (create_cus_from_debug_names): Likewise.
11540         (dwarf2_read_debug_names): Likewise.
11541         (dw2_debug_names_iterator::next): Likewise.
11542         (dwarf2_initialize_objfile): Likewise.
11543         (set_partial_user): Likewise.
11544         (dwarf2_build_psymtabs_hard): Likewise.
11545         (read_comp_units_from_section): Remove arguments, adjust to
11546         std::vector change.
11547         (create_all_comp_units): Adjust to std::vector and
11548         read_comp_units_from_section changes.
11549         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11550         change.
11551         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11552         (psyms_seen_size): Likewise.
11553         (write_gdbindex): Likewise.
11554         (write_debug_names): Likewise.
11555
11556 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11557
11558         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11559         with dwarf2_per_objfile.
11560         (create_cus_from_index): Likewise.
11561         (create_signatured_type_table_from_index): Likewise.
11562         (dwarf2_read_index): Likewise.
11563         (dwarf2_initialize_objfile): Likewise.
11564         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11565         per_cu rather than get_dwarf2_per_objfile.
11566
11567 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11568
11569         * dwarf2read.h (struct signatured_type): Forward declare.
11570         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11571         New methods.
11572         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11573         (dw2_get_cutu): ...this.
11574         (dwarf2_per_objfile::get_cu): Rename from...
11575         (dw2_get_cu): ...this.
11576         (dwarf2_per_objfile::get_tu): New.
11577         (create_addrmap_from_index): Adjust.
11578         (create_addrmap_from_aranges): Adjust.
11579         (dw2_find_last_source_symtab): Adjust.
11580         (dw2_map_symtabs_matching_filename): Adjust.
11581         (dw2_symtab_iter_next): Adjust.
11582         (dw2_print_stats): Adjust.
11583         (dw2_expand_all_symtabs): Adjust.
11584         (dw2_expand_symtabs_with_fullname): Adjust.
11585         (dw2_expand_marked_cus): Adjust.
11586         (dw_expand_symtabs_matching_file_matcher): Adjust.
11587         (dw2_map_symbol_filenames): Adjust.
11588         (dw2_debug_names_iterator::next): Adjust.
11589         (dwarf2_initialize_objfile): Adjust.
11590         (set_partial_user): Adjust.
11591         (dwarf2_build_psymtabs_hard): Adjust.
11592
11593 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11594
11595         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11596         Remove unused variables.
11597         (dw2_map_symtabs_matching_filename): Likewise.
11598         (dwarf2_record_block_ranges): Likewise.
11599         (dwarf2_read_addr_index): Likewise.
11600         (follow_die_offset): Likewise.
11601
11602 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11603
11604         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11605         to symbol_file_add_main.
11606
11607 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11608
11609         PR mi/22299
11610         * mi/mi-console.c (do_fputc_async_safe): New.
11611         (mi_console_file::write_async_safe): New.
11612         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11613         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11614         New.
11615         * ui-file.c (ui_file::putstrn): Adjust call to
11616         fputstrn_unfiltered.
11617         * utils.c (printchar): Replace do_fputs and do_fprintf
11618         parameters by do_fputc.
11619         (fputstr_filtered): Adjust call to printchar.
11620         (fputstr_unfiltered): Likewise.
11621         (fputstrn_filtered): Likewise.
11622         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11623         printchar.
11624         * utils.h (do_fputc_ftype): New typedef.
11625         (fputstrn_unfiltered): Add do_fputc parameter.
11626
11627 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11628
11629         * regformats/i386/i386-avx.dat: Remove.
11630
11631 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11632
11633         PR gdb/22979
11634         * amd64-tdep.c (amd64_none_init_abi): New function.
11635         (amd64_x32_none_init_abi): New function.
11636         (_initialize_amd64_tdep): Register handlers for x86-64 and
11637         x64_32 with GDB_OSABI_NONE.
11638         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11639         GDB_OSABI_NONE osabi.
11640
11641 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11642
11643         PR gdb/22980
11644         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11645         GDB_OSABI_NONE.
11646         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11647         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11648
11649 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11650
11651         * common/byte-vector.h (char_vector): New type.
11652         * target.h (target_read_alloc): Return
11653         gdb::optional<byte_vector>.
11654         (target_read_stralloc): Return gdb::optional<char_vector>.
11655         (target_get_osdata): Return gdb::optional<char_vector>.
11656         * target.c (target_read_alloc_1): Templatize.  Replacement
11657         manual memory management with vector.
11658         (target_read_alloc): Change return type, adjust.
11659         (target_read_stralloc): Change return type, adjust.
11660         (target_get_osdata): Change return type, adjust.
11661         * auxv.c (struct auxv_info) <length>: Remove.
11662         <data>: Change type to gdb::optional<byte_vector>.
11663         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11664         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11665         (target_auxv_search): Adjust.
11666         (fprint_target_auxv): Adjust.
11667         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11668         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11669         (linux_make_corefile_notes): Adjust.
11670         * osdata.c (get_osdata): Adjust.
11671         * remote.c (remote_get_threads_with_qxfer): Adjust.
11672         (remote_memory_map): Adjust.
11673         (remote_traceframe_info): Adjust.
11674         (btrace_read_config): Adjust.
11675         (remote_read_btrace): Adjust.
11676         (remote_pid_to_exec_file): Adjust.
11677         * solib-aix.c (solib_aix_get_library_list): Adjust.
11678         * solib-dsbt.c (decode_loadmap): Don't free buf.
11679         (dsbt_get_initial_loadmaps): Adjust.
11680         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11681         * solib-target.c (solib_target_current_sos): Adjust.
11682         * tracepoint.c (sdata_make_value): Adjust.
11683         * xml-support.c (xinclude_start_include): Adjust.
11684         (xml_fetch_content_from_file): Adjust.
11685         * xml-support.h (xml_fetch_another): Change return type.
11686         (xml_fetch_content_from_file): Change return type.
11687         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11688         * xml-tdesc.c (file_read_description_xml): Adjust.
11689         (fetch_available_features_from_target): Change return type.
11690         (target_fetch_description_xml): Adjust.
11691         (target_read_description_xml): Adjust.
11692
11693 2018-04-06  Tom Tromey  <tom@tromey.com>
11694
11695         * value.c (~value): Update.
11696         (struct value) <contents>: Now unique_xmalloc_ptr.
11697         (value_contents_bits_eq, allocate_value_contents)
11698         (value_contents_raw, value_contents_all_raw)
11699         (value_contents_for_printing, value_contents_for_printing_const)
11700         (set_value_enclosing_type): Update.
11701
11702 2018-04-06  Tom Tromey  <tom@tromey.com>
11703
11704         * value.c (range_s): Remove typedef, VEC.
11705         (struct range): Add operator<.
11706         (range_lessthan): Remove.
11707         (ranges_contain): Change type.
11708         (~value): Update.
11709         (struct value) <unavailable, optimized_out>: Now std::vector.
11710         (value_entirely_available)
11711         (value_entirely_covered_by_range_vector)
11712         (value_entirely_unavailable, value_entirely_optimized_out):
11713         Update.
11714         (insert_into_bit_range_vector): Change argument type.
11715         (find_first_range_overlap): Likewise.
11716         (struct ranges_and_idx, value_contents_bits_eq)
11717         (require_not_optimized_out, require_available): Update.
11718         (ranges_copy_adjusted): Change argument types.
11719         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11720
11721 2018-04-06  Tom Tromey  <tom@tromey.com>
11722
11723         * value.c (~value): Update.
11724         (struct value) <parent>: Now a value_ref_ptr.
11725         (value_parent, set_value_parent, value_address, value_copy):
11726         Update.
11727
11728 2018-04-06  Tom Tromey  <tom@tromey.com>
11729
11730         * value.c (struct value): Add constructor, destructor, and member
11731         initializers.
11732         (allocate_value_lazy, value_decref): Update.
11733
11734 2018-04-06  Tom Tromey  <tom@tromey.com>
11735
11736         * value.c (struct value) <released, next>: Remove.
11737         (all_values): Now a std::vector.
11738         (allocate_value_lazy): Update.
11739         (value_next): Remove.
11740         (value_mark, value_free_to_mark, release_value)
11741         (value_release_to_mark): Update.
11742
11743 2018-04-06  Tom Tromey  <tom@tromey.com>
11744
11745         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11746         (free_value_chain): Remove.
11747         * value.c (free_value_chain): Remove.
11748         (value_release_to_mark): Return a std::vector.
11749         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11750         std::vector.
11751         (check_condition): Update.
11752         * eval.c (fetch_subexp_value): Change "val_chain" to a
11753         std::vector.
11754         * breakpoint.c (update_watchpoint): Update.
11755         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11756
11757 2018-04-06  Tom Tromey  <tom@tromey.com>
11758
11759         * value.h (free_all_values): Remove.
11760         * value.c (free_all_values): Remove.
11761
11762 2018-04-06  Tom Tromey  <tom@tromey.com>
11763
11764         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11765         (value_history_chain, value_history_count): Remove.
11766         (value_history): New global.
11767         (record_latest_value, access_value_history, show_values)
11768         (preserve_values): Update.
11769
11770 2018-04-06  Tom Tromey  <tom@tromey.com>
11771
11772         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11773         * varobj.c (varobj_set_display_format, varobj_set_value)
11774         (install_default_visualizer, construct_visualizer)
11775         (install_new_value, ~varobj, varobj_get_value_type)
11776         (my_value_of_variable, varobj_editable_p): Update.
11777         * c-varobj.c (c_describe_child, c_value_of_variable)
11778         (cplus_number_of_children, cplus_describe_child): Update.
11779         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11780         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11781         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11782
11783 2018-04-06  Tom Tromey  <tom@tromey.com>
11784
11785         * printcmd.c (last_examine_address): Change type to
11786         value_ref_ptr.
11787         (do_examine, x_command): Update.
11788
11789 2018-04-06  Tom Tromey  <tom@tromey.com>
11790
11791         * value.c (release_value): Update.
11792         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11793         (struct bpstats) <val>: Now a value_ref_ptr.
11794         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11795         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11796         (~watchpoint, print_it_watchpoint, watch_command_1)
11797         (invalidate_bp_value_on_memory_change): Update.
11798
11799 2018-04-06  Tom Tromey  <tom@tromey.com>
11800
11801         * varobj.c (varobj_clear_saved_item)
11802         (update_dynamic_varobj_children, install_new_value, ~varobj):
11803         Update.
11804         * value.h (value_incref): Move declaration earlier.
11805         (value_decref): Rename from value_free.
11806         (struct value_ref_policy): New.
11807         (value_ref_ptr): New typedef.
11808         (struct value_deleter): Remove.
11809         (gdb_value_up): Remove typedef.
11810         (release_value): Change return type.
11811         (release_value_or_incref): Remove.
11812         * value.c (set_value_parent): Update.
11813         (value_incref): Change return type.
11814         (value_decref): Rename from value_free.
11815         (value_free_to_mark, free_all_values, free_value_chain): Update.
11816         (release_value): Return value_ref_ptr.
11817         (release_value_or_incref): Remove.
11818         (record_latest_value, set_internalvar, clear_internalvar):
11819         Update.
11820         * stack.c (info_frame_command): Don't call value_free.
11821         * python/py-value.c (valpy_dealloc, valpy_new)
11822         (value_to_value_object): Update.
11823         * printcmd.c (do_examine): Update.
11824         * opencl-lang.c (lval_func_free_closure): Update.
11825         * mi/mi-main.c (register_changed_p): Don't call value_free.
11826         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11827         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11828         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11829         value_free.
11830         * guile/scm-value.c (vlscm_free_value_smob)
11831         (vlscm_scm_from_value): Update.
11832         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11833         (frame_unwind_register_unsigned, get_frame_register_bytes)
11834         (put_frame_register_bytes): Don't call value_free.
11835         * findvar.c (address_from_register): Don't call value_free.
11836         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11837         * dwarf2loc.c (entry_data_value_free_closure)
11838         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11839         (dwarf2_evaluate_loc_desc_full): Update.
11840         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11841         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11842         (~watchpoint, watch_command_1)
11843         (invalidate_bp_value_on_memory_change): Update.
11844         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11845
11846 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11847
11848         PR gdb/23022
11849         * warning.m4: Add -Wno-error=deprecated-register.
11850         * configure: Re-generate.
11851
11852 2018-04-05  Tom Tromey  <tom@tromey.com>
11853
11854         * linespec.h: Remove include of "vec.h".
11855
11856 2018-04-05  Tom Tromey  <tom@tromey.com>
11857
11858         * linespec.c (typep): Remove typedef.
11859         (find_methods, find_superclass_methods): Take a std::vector.
11860         (find_method): Use std::vector.
11861
11862 2018-04-05  Tom Tromey  <tom@tromey.com>
11863
11864         * utils.c (compare_strings): Remove.
11865         * utils.h (compare_strings): Remove.
11866         * objc-lang.h (find_imps): Update.
11867         * objc-lang.c (find_methods): Take a std::vector.
11868         (uniquify_strings, find_imps): Likewise.
11869         * linespec.c (find_methods): Take a std::vector.
11870         (decode_objc): Use std::vector.
11871         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11872         a std::vector.
11873         (find_method, find_function_symbols): Use std::vector.
11874
11875 2018-04-05  Tom Tromey  <tom@tromey.com>
11876
11877         * completer.c (completion_tracker::completion_tracker): Remove
11878         cast.
11879         (completion_tracker::discard_completions): Likewise.
11880         * breakpoint.c (ambiguous_names_p): Remove cast.
11881         * ada-lang.c (_initialize_ada_language): Remove cast.
11882         * utils.h (streq): Update.
11883         (streq_hash): Add new declaration.
11884         * utils.c (streq): Return bool.
11885         (streq_hash): New function.
11886
11887 2018-04-05  Tom Tromey  <tom@tromey.com>
11888
11889         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11890         Remove a string copy.
11891
11892 2018-04-05  Tom Tromey  <tom@tromey.com>
11893
11894         * linespec.c (filter_results): Use std::vector.
11895         (decode_line_2, decode_line_full): Update.
11896
11897 2018-04-05  Tom Tromey  <tom@tromey.com>
11898
11899         * linespec.c (canonical_to_fullform): Return std::string.
11900         (filter_results): Update.
11901         (struct decode_line_2_item): Add constructor.
11902         <fullform, displayform>: Now std::string.
11903         (decode_line_2_compare_items): Now a std::sort comparator.
11904         (decode_line_2): Update.
11905
11906 2018-04-05  Tom Tromey  <tom@tromey.com>
11907
11908         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11909         (unexpected_linespec_error): Update.
11910         (linespec_parse_basic, parse_linespec): Update.
11911
11912 2018-04-05  Tom Tromey  <tom@tromey.com>
11913
11914         * linespec.c (linespec_parse_basic): Reindent.
11915
11916 2018-04-05  Tom Tromey  <tom@tromey.com>
11917
11918         * minsyms.h (iterate_over_minimal_symbols): Update.
11919         * minsyms.c (iterate_over_minimal_symbols): Take a
11920         gdb::function_view.
11921         * linespec.c (struct collect_minsyms): Remove.
11922         (compare_msyms): Now a std::sort comparator.
11923         (add_minsym): Add parameters.
11924         (search_minsyms_for_name): Update.  Use std::vector.
11925
11926 2018-04-03  Tom Tromey  <tom@tromey.com>
11927
11928         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11929         gdb::byte_vector.
11930
11931 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11932
11933         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11934
11935 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11936
11937         PR gdb/16959
11938         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11939         printing static type.
11940
11941 2018-04-01  Tom Tromey  <tom@tromey.com>
11942
11943         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11944         (rs6000_xfer_shared_libraries): Update.
11945
11946 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11947
11948         * common/gdb_vecs.h (char_ptr): Remove.
11949         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11950
11951 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11952
11953         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11954         with std::vector.
11955         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11956
11957 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11958
11959         * tracepoint.h (struct uploaded_tp): Initialize fields.
11960         <actions, step_actions, cmd_strings>: Change type to
11961         std::vector<char *>.
11962         * tracepoint.c (get_uploaded_tp): Allocate with new.
11963         (free_uploaded_tps): Free with delete.
11964         (parse_tracepoint_definition): Adjust to std::vector change.
11965         * breakpoint.c (read_uploaded_action): Likewise.
11966         (create_tracepoint_from_upload): Likewise.
11967         * ctf.c (ctf_write_uploaded_tp): Likewise.
11968         (SET_ARRAY_FIELD): Likewise.
11969         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11970
11971 2018-03-30  Tom Tromey  <tom@tromey.com>
11972
11973         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11974         std::unique_ptr.
11975         (svr4_keep_data_in_core): Update.
11976         (svr4_read_so_list): Update.
11977
11978 2018-03-30  Tom Tromey  <tom@tromey.com>
11979
11980         * windows-nat.c (handle_output_debug_string, handle_exception):
11981         Update.
11982         * target.h (target_read_string): Update.
11983         * target.c (target_read_string): Change "string" to
11984         unique_xmalloc_ptr.
11985         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11986         Update.
11987         * solib-frv.c (frv_current_sos): Update.
11988         * solib-dsbt.c (dsbt_current_sos): Update.
11989         * solib-darwin.c (darwin_current_sos): Update.
11990         * linux-thread-db.c (inferior_has_bug): Update.
11991         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11992         Update.  Remove alloca.
11993         * ada-lang.c (ada_main_name): Update.
11994
11995 2018-03-30  Tom Tromey  <tom@tromey.com>
11996
11997         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11998         (struct dwo_file_deleter): New.
11999         (dwo_file_up): New typedef.
12000         (open_and_init_dwo_file): Use dwo_file_up.
12001         (free_dwo_file_cleanup): Remove.
12002
12003 2018-03-30  Tom Tromey  <tom@tromey.com>
12004
12005         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12006         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12007
12008 2018-03-30  Tom Tromey  <tom@tromey.com>
12009
12010         * dwarf2read.c (class free_cached_comp_units): New class.
12011         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12012         (free_cached_comp_units): Remove function.
12013
12014 2018-03-30  Tom Tromey  <tom@tromey.com>
12015
12016         * utils.h (make_cleanup_unpush_target): Remove.
12017         * inf-ptrace.c (struct target_unpusher): New.
12018         (target_unpush_up) New typedef.
12019         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12020         target_unpush_up.
12021         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12022
12023 2018-03-27  Tom Tromey  <tom@tromey.com>
12024
12025         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12026
12027 2018-03-27  Pedro Alves  <palves@redhat.com>
12028             Tom Tromey  <tom@tromey.com>
12029
12030         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12031         destructor.  Now a class.
12032         (gdb_readline_wrapper_cleanup): Remove function.
12033         (gdb_readline_wrapper): Remove cleanups.
12034
12035 2018-03-27  Tom Tromey  <tom@tromey.com>
12036
12037         * typeprint.h (struct type_print_options) <local_typedefs,
12038         global_typedefs>: Remove "struct" keyword.
12039         (class typedef_hash_table): New class.
12040         (recursively_update_typedef_hash, add_template_parameters)
12041         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12042         (find_typedef_in_hash): Don't declare.
12043         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12044         (typedef_hash_table::recursively_update): Rename from
12045         recursively_update_typedef_hash.  Now a member.
12046         (typedef_hash_table::add_template_parameters): Rename from
12047         add_template_parameters.  Now a member.
12048         (typedef_hash_table::typedef_hash_table): Now a constructor;
12049         rename from create_typedef_hash.
12050         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12051         rename from free_typedef_hash.
12052         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12053         (do_free_global_table): Remove.
12054         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12055         from copy_type_recursive.
12056         (create_global_typedef_table): Remove.
12057         (typedef_hash_table::find_global_typedef): Now a member of
12058         typedef_hash_table.
12059         (typedef_hash_table::find_typedef): Rename from
12060         find_typedef_in_hash; now a member.
12061         (whatis_exp): Update.
12062         * extension.h (struct ext_lang_type_printers): Add constructor and
12063         destructor.
12064         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12065         declare.
12066         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12067         Now a constructor; rename from start_ext_lang_type_printers.
12068         (ext_lang_type_printers): Now a destructor; rename from
12069         free_ext_lang_type_printers.
12070         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12071         Update.
12072         (c_type_print_base_struct_union): Update.  Remove cleanups.
12073
12074 2018-03-27  Tom Tromey  <tom@tromey.com>
12075
12076         * dwarf-index-write.c: Include <cmath>.
12077
12078 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12079
12080         * NEWS: Add entry describing new "set|show varsize-limit" command.
12081         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12082         command.
12083         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12084         "set variable".
12085
12086 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12087
12088         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12089         dwarf-index-write.c
12090         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12091         * dwarf-index-common.c: New file.
12092         * dwarf-index-common.h: New file.
12093         * dwarf-index-write.c: New file.
12094         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12095         (struct dwarf2_section_info): Move from here.
12096         (dwarf2_section_info_def): Likewise.
12097         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12098         (offset_type): Likewise.
12099         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12100         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12101         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12102         (byte_swap): Likewise.
12103         (MAYBE_SWAP): Likewise.
12104         (dwarf2_per_cu_ptr): Likewise.
12105         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12106         (struct tu_stats): Likewise.
12107         (struct dwarf2_per_objfile): Likewise.
12108         (struct dwarf2_per_cu_data): Likewise.
12109         (struct signatured_type): Likewise.
12110         (sig_type_ptr): Likewise.
12111         (DEF_VEC_P (sig_type_ptr)): Likewise.
12112         (INDEX4_SUFFIX): Likewise.
12113         (INDEX5_SUFFIX): Likewise.
12114         (DEBUG_STR_SUFFIX): Likewise.
12115         (dwarf2_read_section): Make non-static.
12116         (mapped_index_string_hash): Move from here.
12117         (dwarf5_djb_hash): Likewise.
12118         (file_write): Likewise.
12119         (class data_buf): Likewise.
12120         (struct symtab_index_entry): Likewise.
12121         (struct mapped_symtab): Likewise.
12122         (find_slot): Likewise.
12123         (hash_expand): Likewise.
12124         (add_index_entry): Likewise.
12125         (uniquify_cu_indices): Likewise.
12126         (class c_str_view): Likewise.
12127         (class c_str_view_hasher): Likewise.
12128         (class vector_hasher): Likewise.
12129         (write_hash_table): Likewise.
12130         (psym_index_map): Likewise.
12131         (struct addrmap_index_data): Likewise.
12132         (add_address_entry): Likewise.
12133         (add_address_entry_worker): Likewise.
12134         (write_address_map): Likewise.
12135         (symbol_kind): Likewise.
12136         (write_psymbols): Likewise.
12137         (struct signatured_type_index_data): Likewise.
12138         (write_one_signatured_type): Likewise.
12139         (recursively_count_psymbols): Likewise.
12140         (recursively_write_psymbols): Likewise.
12141         (class debug_names): Likewise.
12142         (check_dwarf64_offsets): Likewise.
12143         (psyms_seen_size): Likewise.
12144         (write_gdbindex): Likewise.
12145         (write_debug_names): Likewise.
12146         (assert_file_size): Likewise.
12147         (write_psymtabs_to_index): Likewise.
12148         (save_gdb_index_command): Likewise.
12149         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12150         command.
12151         * dwarf2read.h: New file.
12152
12153 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12154
12155         PR gdb/22670
12156         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12157         symbol name if the CU's language stores symbol names in linkage
12158         format.
12159         * language.h (struct language_defn)
12160         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12161         all instances of this struct.
12162
12163 2018-03-26  Tom Tromey  <tom@tromey.com>
12164
12165         * stack.c (backtrace_command_1): Remove verbose code.
12166
12167 2018-03-26  Tom Tromey  <tom@tromey.com>
12168
12169         * python/py-framefilter.c (py_print_type): Don't catch
12170         exceptions.  Return void.
12171         (py_print_value): Likewise.
12172         (py_print_single_arg): Likewise.
12173         (enumerate_args): Don't catch exceptions.
12174         (py_print_args): Likewise.
12175         (py_print_frame): Likewise.
12176         (gdbpy_apply_frame_filter): Catch exceptions here.
12177
12178 2018-03-26  Tom Tromey  <tom@tromey.com>
12179
12180         * stack.c (_initialize_stack): Remove trailing newlines from help
12181         text.  Add "Usage" line to "backtrace" help.
12182
12183 2018-03-26  Tom Tromey  <tom@tromey.com>
12184
12185         PR python/16486:
12186         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12187
12188 2018-03-26  Tom Tromey  <tom@tromey.com>
12189
12190         * python/py-framefilter.c (py_print_single_arg): Return
12191         EXT_LANG_BT_ERROR from catch.
12192
12193 2018-03-26  Tom Tromey  <tom@tromey.com>
12194
12195         PR backtrace/15584:
12196         * stack.c (backtrace_command_1): Move some code into no-filters
12197         "if".
12198
12199 2018-03-26  Tom Tromey  <tom@tromey.com>
12200
12201         * python/py-framefilter.c (throw_quit_or_print_exception): New
12202         function.
12203         (gdbpy_apply_frame_filter): Use it.
12204
12205 2018-03-26  Tom Tromey  <tom@tromey.com>
12206
12207         PR cli/17716:
12208         * python/py-framefilter.c (py_print_type, py_print_value)
12209         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12210         RETURN_MASK_ERROR.
12211
12212 2018-03-26  Tom Tromey  <tom@tromey.com>
12213
12214         * python/py-framefilter.c (enumerate_args): Use
12215         gdb::unique_xmalloc_ptr.
12216
12217 2018-03-26  Tom Tromey  <tom@tromey.com>
12218
12219         * python/py-framefilter.c (py_print_frame): Return
12220         EXT_LANG_BT_OK.
12221         (gdbpy_apply_frame_filter): Update comment.
12222         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12223         Remove.
12224         <EXT_LANG_BT_NO_FILTERS>: Change value.
12225
12226 2018-03-26  Tom Tromey  <tom@tromey.com>
12227
12228         PR backtrace/15582:
12229         * stack.c (backtrace_command): Parse "hide" argument.
12230         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12231         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12232         constant.
12233
12234 2018-03-26  Tom Tromey  <tom@tromey.com>
12235
12236         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12237         add "flags".
12238         (backtrace_command): Remove "fulltrace", add "flags".
12239
12240 2018-03-26  Tom Tromey  <tom@tromey.com>
12241
12242         * stack.c (backtrace_command): Rewrite command line parsing.
12243
12244 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12245
12246         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12247
12248 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12249
12250         * filename-seen-cache.h: Add include guard.
12251
12252 2018-03-26  Keith Seitz  <keiths@redhat.com>
12253
12254         * symfile.c (place_section): Remove "struct" from section_addr_info
12255         in comment.
12256         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12257         "struct" keyword from section_addr_info.
12258
12259 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12260
12261         * regformats/regdef.h (reg): Add constructors.
12262
12263 2018-03-25  Pedro Alves  <palves@redhat.com>
12264
12265         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12266         if then/else bodies in var_func_name extraction.
12267
12268 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12269
12270         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12271         lookup_minimal_symbol() to find symbol entry.
12272         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12273
12274 2018-03-23  Keith Seitz  <keiths@redhat.com>
12275
12276         PR c++/22968
12277         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12278         nested type definitions for C++, too.
12279
12280 2018-03-23  Tom Tromey  <tom@tromey.com>
12281
12282         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12283         a typedef.
12284         (macho_register_oso): Remove.
12285         (macho_symtab_read): Take a std::vector.
12286         (oso_el_compare_name): Now a std::sort comparator.
12287         (macho_symfile_read_all_oso): Take a std::vector.
12288         (macho_symfile_read): Use std::vector.  Remove cleanups.
12289
12290 2018-03-22  Tom Tromey  <tom@tromey.com>
12291
12292         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12293         (record_full_goto_bookmark): Use std::string.
12294
12295 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12296
12297         PR tdep/18295
12298         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12299         a single mask.
12300
12301 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12302
12303         * rs6000-tdep.c (store_insn_p): New function.
12304         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12305         and cr_reg to their unshifted values. Use store_insn_p to
12306         match LR saves using either R1 or fdata->alloca_reg. Use
12307         store_insn_p to match CR saves. Set alloca_reg_offset
12308         when alloca_reg and framep are set. Remove lr_reg shift
12309         when assigning to fdata->lr_register.
12310
12311 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12312
12313         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12314         command line args instead of emitting a warning.
12315
12316 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12317
12318         * tracepoint.h (struct static_tracepoint_marker): Initialize
12319         fields, define default constructor, move constructor and move
12320         assignment, disable the rest.
12321         <str_id, extra>: Make std::string.
12322         (release_static_tracepoint_marker): Remove.
12323         (free_current_marker): Remove.
12324         * tracepoint.c (free_current_marker): Remove.
12325         (parse_static_tracepoint_marker_definition): Adjust to
12326         std::string, use new hex2str overload.
12327         (release_static_tracepoint_marker): Remove.
12328         (print_one_static_tracepoint_marker): Get marker by reference
12329         and adjust to std::string.
12330         (info_static_tracepoint_markers_command): Adjust to std::vector
12331         changes
12332         * target.h (static_tracepoint_marker_p): Remove typedef.
12333         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12334         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12335         bool.
12336         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12337         * target-debug.h
12338         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12339         (target_debug_print_std_vector_static_tracepoint_marker): New.
12340         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12341         to...
12342         (target_debug_print_static_tracepoint_marker_p): ... this.
12343         * target-delegates.c: Re-generate.
12344         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12345         Make std::string.
12346         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12347         (decode_static_tracepoint_spec): Adjust to std::vector.
12348         (tracepoint_print_one_detail): Adjust to std::string.
12349         (strace_marker_decode_location): Adjust to std::string.
12350         (update_static_tracepoint): Adjust to std::string, remove call
12351         to release_static_tracepoint_marker.
12352         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12353         Adjust to std::vector.
12354         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12355         (remote_static_tracepoint_markers_by_strid): Adjust to
12356         std::vector.
12357         * common/rsp-low.h (hex2str): New overload with explicit count
12358         of bytes.
12359         * common/rsp-low.c (hex2str): New overload with explicit count
12360         of bytes.
12361         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12362         (_initialize_rsp_low_selftests): Add test_hex2str test.
12363         * unittests/tracepoint-selftests.c
12364         (test_parse_static_tracepoint_marker_definition): Adjust to
12365         std::string.
12366
12367 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12368
12369         * tracepoint.c (parse_static_tracepoint_marker_definition):
12370         Consider case where the definition is followed by more
12371         definitions.
12372         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12373         tracepoint-selftests.c.
12374         * unittests/tracepoint-selftests.c: New.
12375
12376 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12377
12378         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12379         Carvalho.
12380
12381 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12382
12383         * symtab.c (find_pc_sect_line): fixed indentation.
12384
12385 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12386
12387         * symtab.c (find_pc_sect_line): now uses binary search.
12388
12389 2018-03-19  Tom Tromey  <tom@tromey.com>
12390
12391         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12392         "IDENT" production.
12393
12394 2018-03-19  Pedro Alves  <palves@redhat.com>
12395             Tom Tromey  <tom@tromey.com>
12396
12397         * unittests/observable-selftests.c: New file.
12398         * common/observable.h: New file.
12399         * observable.h: New file.
12400         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12401         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12402         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12403         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12404         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12405         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12406         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12407         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12408         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12409         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12410         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12411         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12412         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12413         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12414         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12415         tui/tui-interp.c, valops.c: Update all users.
12416         * tui/tui-hooks.c (tui_bp_created_observer)
12417         (tui_bp_deleted_observer, tui_bp_modified_observer)
12418         (tui_inferior_exit_observer, tui_before_prompt_observer)
12419         (tui_normal_stop_observer, tui_register_changed_observer):
12420         Remove.
12421         (tui_observers_token): New global.
12422         (attach_or_detach, tui_attach_detach_observers): New functions.
12423         (tui_install_hooks, tui_remove_hooks): Use
12424         tui_attach_detach_observers.
12425         * record-btrace.c (record_btrace_thread_observer): Remove.
12426         (record_btrace_thread_observer_token): New global.
12427         * observer.sh: Remove.
12428         * observer.c: Rename to observable.c.
12429         * observable.c (namespace gdb_observers): Define new objects.
12430         (observer_debug): Move into gdb_observers namespace.
12431         (struct observer, struct observer_list, xalloc_observer_list_node)
12432         (xfree_observer_list_node, generic_observer_attach)
12433         (generic_observer_detach, generic_observer_notify): Remove.
12434         (_initialize_observer): Update.
12435         Don't include observer.inc.
12436         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12437         (clean mostlyclean): Likewise.
12438         (observer.h, observer.inc): Remove targets.
12439         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12440         (COMMON_SFILES): Use observable.c, not observer.c.
12441         * .gitignore: Remove observer.h.
12442
12443 2018-03-18  Tom Tromey  <tom@tromey.com>
12444
12445         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12446         gdb::def_vector.
12447         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12448
12449 2018-03-17  Tom Tromey  <tom@tromey.com>
12450
12451         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12452
12453 2018-03-17  Tom Tromey  <tom@tromey.com>
12454
12455         * target.c (class scoped_target_fd): New.
12456         (target_fileio_close_cleanup): Remove.
12457         (target_fileio_read_alloc_1): Use scoped_target_fd.
12458
12459 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12460
12461         * silent-rules.mk: New.
12462         * Makefile.in: Include silent-rules.mk
12463         (srcdir, VPATH, top_srcdir): Move up.
12464         (COMPILE): Add ECHO_CXX.
12465         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12466         (init.c): Add ECHO_INIT_C.
12467         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12468         (version.c): Add ECHO_GEN.
12469         (printcmd.o): Add ECHO_CXX.
12470         (target-float.o): Add ECHO_CXX.
12471         (ada-exp.o): Add ECHO_CXX.
12472         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12473         (insight$(EXEEXT)): Add ECHO_CXXLD.
12474         * gnulib/configure.ac: Add AM_SILENT_RULES.
12475         * gnulib/aclocal.m4: Re-generate.
12476         * gnulib/configure: Re-generate.
12477         * gnulib/import/Makefile.in: Re-generate.
12478
12479 2018-03-16  Tom Tromey  <tom@tromey.com>
12480
12481         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12482         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12483         * utils.c (do_free_section_addr_info)
12484         (make_cleanup_free_section_addr_info): Remove.
12485         * symfile.h (struct other_sections): Add constructor.
12486         (struct section_addr_info): Remove.
12487         (section_addr_info): New typedef.
12488         (struct sym_fns) <sym_offsets>: Change type of parameter.
12489         (build_section_addr_info_from_objfile)
12490         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12491         (default_symfile_offsets, symbol_file_add)
12492         (symbol_file_add_from_bfd)
12493         (build_section_addr_info_from_section_table): Update.
12494         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12495         * symfile.c (alloc_section_addr_info): Remove.
12496         (build_section_addr_info_from_section_table): Change return type.
12497         Update.
12498         (build_section_addr_info_from_bfd)
12499         (build_section_addr_info_from_objfile): Likewise.
12500         (free_section_addr_info): Remove.
12501         (relative_addr_info_to_section_offsets): Change type of "addrs".
12502         (addrs_section_compar): Now a std::sort comparator.
12503         (addrs_section_sort): Change return type.
12504         (addr_info_make_relative): Change type of "addrs".  Update.
12505         (default_symfile_offsets, syms_from_objfile_1)
12506         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12507         (symbol_file_add_separate): Update.
12508         (symbol_file_add): Change type of "addrs".  Update.
12509         (add_symbol_file_command): Update.  Remove cleanups.
12510         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12511         cleanups.
12512         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12513         * solib.c (solib_read_symbols): Update.
12514         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12515         * machoread.c (macho_symfile_offsets): Update.
12516         * jit.c (jit_bfd_try_read_symtab): Update.
12517
12518 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12519
12520         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12521         unittests/utils-selftests.c.
12522         * unittests/utils-selftests.c: New file.
12523
12524 2018-03-14  Tom Tromey  <tom@tromey.com>
12525
12526         PR cli/14977:
12527         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12528         for NULL.
12529
12530 2018-03-14  Tom Tromey  <tom@tromey.com>
12531
12532         PR cli/19918:
12533         * printcmd.c (printf_pointer): Allow "-" in format.
12534
12535 2018-03-14  Tom Tromey  <tom@tromey.com>
12536
12537         * printcmd.c (_initialize_printcmd): Add usage to printf.
12538
12539 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12540
12541         * MAINTAINERS: Update my email address.
12542
12543 2018-03-13  Tom Tromey  <tom@tromey.com>
12544
12545         * machoread.c (macho_check_dsym): Change filenamep to a
12546         std::string*.
12547         (macho_symfile_read): Update.
12548         * symfile.c (load_command): Use std::string.
12549
12550 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12551
12552         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12553         to error message string.
12554         (riscv_register_name): Use xsnprintf instead of sprintf.
12555         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12556         internal_error.
12557         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12558         error.
12559         (riscv_push_dummy_call): Likewise.
12560
12561 2018-03-12  Tom Tromey  <tom@tromey.com>
12562
12563         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12564         Use gdb::byte_vector.
12565         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12566
12567 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12568
12569         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12570         parameter type to readable_regcache.
12571         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12572         the declaration.
12573
12574 2018-03-11  Tom Tromey  <tom@tromey.com>
12575
12576         * dwarf2read.c (struct nextfield): Add initializers.
12577         (struct nextfnfield): Remove.
12578         (struct fnfieldlist): Add initializers.  Remove "length" and
12579         "head", use std::vector.
12580         (struct decl_field_list): Remove.
12581         (struct field_info): Add initializers.
12582         <fields, baseclasses>: Now std::vector.
12583         <nbaseclasses, nfnfields, typedef_field_list_count,
12584         nested_types_list_count>: Remove.
12585         (dwarf2_add_field, dwarf2_add_type_defn)
12586         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12587         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12588         (process_structure_scope): Update.
12589
12590 2018-03-11  Tom Tromey  <tom@tromey.com>
12591
12592         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12593         for use by std::sort.
12594         (build_type_psymtabs_1): Use std::vector.
12595
12596 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12597
12598         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12599         and LIBMPFR in the printed configuration.
12600
12601 2018-03-08  Tom Tromey  <tom@tromey.com>
12602
12603         * source.c (get_filename_and_charpos): Use scoped_fd.
12604         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12605         (procfs_pidlist): Likewise.
12606         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12607         (iterate_over_mappings): Likewise.
12608
12609 2018-03-08  Tom Tromey  <tom@tromey.com>
12610
12611         * infcall.c (struct call_return_meta_info)
12612         <stack_temporaries_enabled>: Remove.
12613         (get_call_return_value, call_function_by_hand_dummy): Update.
12614         * thread.c (disable_thread_stack_temporaries): Remove.
12615         (enable_thread_stack_temporaries): Remove.
12616         (thread_stack_temporaries_enabled_p): Return bool.
12617         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12618         (get_last_thread_stack_temporary): Update.
12619         * eval.c (evaluate_subexp): Update.
12620         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12621         class, not a function.
12622         (value_ptr, value_vec): Remove typedefs.
12623         (class thread_info) <stack_temporaries_enabled>: Now bool.
12624         <stack_temporaries>: Now a std::vector.
12625         (thread_stack_temporaries_enabled_p)
12626         (value_in_thread_stack_temporaries): Return bool.
12627
12628 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12629
12630         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12631         (getpkt_or_notif_sane_1): Likewise.
12632
12633 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12634
12635         * build-id.c (build_id_to_debug_bfd): Use std::string.
12636
12637 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12638
12639         * build-id.c (find_separate_debug_file_by_buildid): Return
12640         std::string.
12641         * build-id.h (find_separate_debug_file_by_buildid): Return
12642         std::string.
12643         * coffread.c (coff_symfile_read): Adjust to std::string.
12644         * elfread.c (elf_symfile_read): Adjust to std::string.
12645         * symfile.c (separate_debug_file_exists): Change parameter to
12646         std::string.
12647         (find_separate_debug_file): Return std::string.
12648         (find_separate_debug_file_by_debuglink): Return std::string.
12649         * symfile.h (find_separate_debug_file_by_debuglink): Return
12650         std::string.
12651
12652 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12653
12654         * common/xml-utils.c (xml_escape_text): Move code to...
12655         (xml_escape_text_append): ... this new function.
12656         * common/xml-utils.h (xml_escape_text_append): New declaration.
12657         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12658         New function.
12659         (_initialize_xml_utils): register test_xml_escape_text_append as
12660         a selftest.
12661
12662 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12663
12664         * defs.h: Remove MAX_REGISTER_SIZE.
12665         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12666         asserts.
12667         * python/py-unwind.c (pyuw_sniffer): Likewise.
12668
12669 2018-03-07  Tom Tromey  <tom@tromey.com>
12670
12671         * linux-tdep.c (linux_info_proc): Update.
12672         * target.h (struct target_ops) <to_fileio_readlink>: Return
12673         optional<string>.
12674         (target_fileio_readlink): Return optional<string>.
12675         * remote.c (remote_hostio_readlink): Return optional<string>.
12676         * inf-child.c (inf_child_fileio_readlink): Return
12677         optional<string>.
12678         * target.c (target_fileio_readlink): Return optional<string>.
12679
12680 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12681
12682         * regcache.c (cooked_read_test): Add riscv to the list of
12683         architectures that have a save_reggroup.
12684
12685 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12686
12687         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12688         value is not a dynamic class object.
12689
12690 2018-03-06  Tom Tromey  <tom@tromey.com>
12691
12692         * rust-exp.y: Formatting fixes.
12693
12694 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12695
12696         * riscv-tdep.c (riscv_register_name): Remove target description
12697         support.
12698         (riscv_gdbarch_init): Remove target description check.
12699
12700 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12701
12702         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12703         comment.
12704         * riscv-tdep.h: Likewise.
12705
12706 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12707
12708         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12709         (riscv_pseudo_register_write): Delete.
12710         (riscv_gdbarch_init): Remove all use of pseudo registers.
12711
12712 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12713
12714         * record-btrace.c (btrace_print_lines): Replace cleanup
12715         parameter with RAII equivalents.
12716         (btrace_insn_history): Replace cleanup with RAII equivalents.
12717         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12718         make_cleanup_ui_out_tuple_begin_end): Remove.
12719         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12720         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12721         make_cleanup_ui_out_list_begin_end): Remove.
12722
12723 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12724
12725         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12726         parameter types to std::vector.  Use bool.
12727         (record_btrace_wait): Replace VEC(tp_t) with
12728         std::vector<thread_info *>.
12729         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12730
12731 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12732
12733         * record-btrace.c (record_btrace_disable_callback): Remove.
12734         (struct scoped_btrace_disable): New.
12735         (record_btrace_open): Use scoped_btrace_disable.
12736
12737 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12738
12739         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12740         reading values from registers.
12741
12742 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12743
12744         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12745         where appropriate.
12746
12747 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12748
12749         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12750         change parameter type.  Use GDB's print functions, and use
12751         core_addr_to_string where appropriate.
12752         (riscv_push_dummy_call): Use core_addr_to_string where
12753         appropriate, update call to riscv_print_arg_location, and reindent
12754         a few lines.
12755         (riscv_return_value): Update call to riscv_print_arg_location.
12756
12757 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12758             Tim Newsome <tim@sifive.com>
12759             Albert Ou <a0u@eecs.berkeley.edu>
12760             Darius Rad <darius@bluespec.com>
12761
12762         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12763         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12764         (ALLDEPFILES): Add riscv-tdep.c
12765         * configure.tgt: Add riscv support.
12766         * riscv-tdep.c: New file.
12767         * riscv-tdep.h: New file.
12768         * NEWS: Mention new target.
12769         * MAINTAINERS: Add entry for riscv.
12770
12771 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12772
12773         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12774         fields within aggregates.
12775
12776 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12777
12778         * record-btrace.c (btrace_print_lines): Change type of flags to
12779         gdb_disassembly_flags.
12780
12781 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12782
12783         * fbsd-nat.c: Include "inf-ptrace.h".
12784         (USE_SIGTRAP_SIGINFO): Conditionally define.
12785         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12786         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12787         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12788         function.
12789         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12790         Likewise.
12791         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12792         Likewise.
12793         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12794         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12795         "supports_stopped_by_hw_breakpoint" target methods.
12796
12797 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12798
12799         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12800         * fbsd-nat.c (debug_fbsd_nat): New variable.
12801         (show_fbsd_nat_debug): New function.
12802         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12803         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12804
12805 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12806
12807         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12808         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12809         prototype.
12810         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12811         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12812         method.
12813
12814 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12815
12816         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12817         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12818
12819 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12820
12821         * charset.c (struct charset_vector): New.
12822         (charsets): Change type to charset_vector.
12823         (find_charset_names): Adjust.
12824         (add_one): Adjust.
12825         (_initialize_charset): Adjust.
12826
12827 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12828
12829         * progspace.h (struct program_space) <deleted_solibs>: Change
12830         type to std::vector<std::string>.
12831         * progspace.c (clear_program_space_solib_cache): Adjust.
12832         * breakpoint.c (print_solib_event): Adjust.
12833         (check_status_catch_solib): Adjust.
12834         * solib.c (update_solib_list): Adjust.
12835         * ui-out.h (class ui_out) <field_string>: New overload.
12836         * ui-out.c (ui_out::field_string): New overload.
12837
12838 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12839
12840         * progspace.h (struct program_space): Add constructor and
12841         destructor, initialize fields.
12842         (add_program_space): Remove.
12843         * progspace.c (add_program_space): Rename to...
12844         (program_space::program_space): ... this.
12845         (release_program_space): Rename to...
12846         (program_space::~program_space): ... this.
12847         (delete_program_space): Use delete to delete program_space.
12848         (initialize_progspace): Use new to allocate program_space.
12849         * inferior.c (add_inferior_with_spaces): Likewise.
12850         (clone_inferior_command): Likewise.
12851         * infrun.c (follow_fork_inferior): Likewise.
12852         (handle_vfork_child_exec_or_exit): Likewise.
12853
12854 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12855
12856         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12857         (delim_string_to_char_ptr_vec): Return std::vector of
12858         gdb::unique_xmalloc_ptr.
12859         (dirnames_to_char_ptr_vec_append): Take std::vector of
12860         gdb::unique_xmalloc_ptr.
12861         (dirnames_to_char_ptr_vec): Return std::vector of
12862         gdb::unique_xmalloc_ptr.
12863         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12864         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12865         (delim_string_to_char_ptr_vec): Return an std::vector of
12866         gdb::unique_xmalloc_ptr, adjust the code.
12867         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12868         gdb::unique_xmalloc_ptr, adjust the code.
12869         (dirnames_to_char_ptr_vec): Return an std::vector of
12870         gdb::unique_xmalloc_ptr, adjust the code.
12871         * auto-load.c (auto_load_safe_path_vec): Change type to
12872         std::vector of gdb::unique_xmalloc_ptr.
12873         (auto_load_expand_dir_vars): Return an std::vector of
12874         gdb::unique_xmalloc_ptr, adjust the code.
12875         (auto_load_safe_path_vec_update): Adjust.
12876         (filename_is_in_auto_load_safe_path_vec): Adjust.
12877         (auto_load_objfile_script_1): Adjust.
12878         * build-id.c (build_id_to_debug_bfd): Adjust.
12879         * linux-thread-db.c (thread_db_load_search): Adjust.
12880         * source.c (add_path): Adjust.
12881         (openp): Adjust.
12882         * symfile.c (find_separate_debug_file): Adjust.
12883         * utils.c (do_free_char_ptr_vec): Remove.
12884         (make_cleanup_free_char_ptr_vec): Remove.
12885
12886 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12887
12888         PR gdb/22907
12889         * common/pathstuff.c: Conditionally include "<windows.h>".
12890
12891 2018-03-01  Georg Sauthoff  <mail@georg.so>
12892
12893         PR gdb/22888
12894         * gcore.in: Quote variables and switch interpreter to bash.
12895
12896 2018-03-01  Tom Tromey  <tom@tromey.com>
12897
12898         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12899         assertion.  Add assertion for discriminant_index.
12900         (quirk_rust_enum): Use correct base type name in univariant case.
12901
12902 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12903
12904         * record.c (get_call_history_modifiers): Return a
12905         record_print_flags.
12906         (cmd_record_call_history): Adjust.
12907         * record-btrace.c (record_btrace_call_history): Adjust.
12908         (record_btrace_call_history_range): Adjust.
12909         (record_btrace_call_history_from): Adjust.
12910         * target-debug.h (target_debug_print_record_print_flags): New.
12911         * target-delegates.c: Re-generate.
12912         * target.c (target_call_history): Change flags type.
12913         (target_call_history_from): Likewise.
12914         (target_call_history_range): Likewise.
12915         * target.h (struct target_ops) <target_call_history>: Likewise.
12916         (target_call_history_from): Likewise.
12917         (target_call_history_range): Likewise.
12918
12919 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12920             Simon Marchi  <simon.marchi@polymtl.ca>
12921
12922         * common/common-utils.c: Include "sys/stat.h".
12923         (is_regular_file): Move here from "source.c"; change return
12924         type to "bool".
12925         * common/common-utils.h (is_regular_file): New prototype.
12926         * common/pathstuff.c (contains_dir_separator): New function.
12927         * common/pathstuff.h (contains_dir_separator): New prototype.
12928         * source.c: Don't include "sys/stat.h".
12929         (is_regular_file): Move to "common/common-utils.c".
12930
12931 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12932
12933         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12934         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12935         * auto-load.c: Include "common/pathstuff.h".
12936         * common/common-def.h (current_directory): Move here.
12937         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12938         function.
12939         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12940         prototype.
12941         * common/pathstuff.c: New file.
12942         * common/pathstuff.h: New file.
12943         * compile/compile.c: Include "common/pathstuff.h".
12944         * defs.h (current_directory): Move to "common/common-defs.h".
12945         * dwarf2read.c: Include "common/pathstuff.h".
12946         * exec.c: Likewise.
12947         * guile/scm-safe-call.c: Likewise.
12948         * linux-thread-db.c: Likewise.
12949         * main.c: Likewise.
12950         * nto-tdep.c: Likewise.
12951         * objfiles.c: Likewise.
12952         * source.c: Likewise.
12953         * symtab.c: Likewise.
12954         * utils.c: Include "common/pathstuff.h".
12955         (gdb_realpath): Move to "common/pathstuff.c".
12956         (gdb_realpath_keepfile): Likewise.
12957         (gdb_abspath): Likewise.
12958         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12959         (gdb_realpath_keepfile): Likewise.
12960         (gdb_abspath): Likewise.
12961
12962 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12963
12964         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12965         wildcard process pid for super_resume for kernels with a
12966         specific bug.
12967
12968 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12969
12970         * compile/compile.c (get_args): Add additional comments
12971         explaining function.
12972
12973 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12974             Tom Tromey  <tom@tromey.com>
12975
12976         * target.h (memory_write_request_s): Remove typedef.  Don't define
12977         VEC.
12978         (target_write_memory_blocks): Change argument to std::vector.
12979         (struct memory_write_request): Add constructor.
12980         * target-memory.c (compare_block_starting_address): Return bool.
12981         Change argument types.
12982         (claim_memory): Change arguments to use std::vector.
12983         (split_regular_and_flash_blocks, blocks_to_erase)
12984         (compute_garbled_blocks): Likewise.
12985         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12986         (target_write_memory_blocks): Change argument to std::vector.
12987         * symfile.c (struct load_section_data): Add constructor and
12988         destructor.  Use std::vector for "requests".
12989         (struct load_progress_data): Add initializers.
12990         (load_section_callback): Update.  Use "new".
12991         (clear_memory_write_data): Remove.
12992         (generic_load): Update.
12993
12994 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12995
12996         * arch/aarch64.h: Use common/tdesc.h.
12997
12998 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12999
13000         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13001         architecture with a 64-bit ABI.
13002
13003 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13004
13005         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13006         ahead of target description loading.
13007
13008 2018-02-26  Tom Tromey  <tom@tromey.com>
13009
13010         * stack.c (backtrace_command_1): Update.
13011         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13012         of "flags".
13013         * python/py-framefilter.c (py_print_frame)
13014         (gdbpy_apply_frame_filter): Change type of "flags".
13015         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13016         of "flags".
13017         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13018         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13019         * extension.h (enum frame_filter_flag): Rename from
13020         frame_filter_flags.
13021         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13022         (apply_ext_lang_frame_filter): Change type of "flags".
13023         * extension.c (apply_ext_lang_frame_filter): Change type of
13024         "flags".
13025         * extension-priv.h (struct extension_language_ops)
13026         <apply_frame_filter>: Change type of "flags".
13027
13028 2018-02-26  Tom Tromey  <tom@tromey.com>
13029
13030         PR python/16497:
13031         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13032         off-by-one in py_end computation.
13033         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13034         PRINT_MORE_FRAMES.
13035         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13036         constant.
13037
13038 2018-02-26  Tom Tromey  <tom@tromey.com>
13039
13040         * dwarf2read.c (struct variant_field): New.
13041         (struct nextfield) <variant>: New field.
13042         (dwarf2_add_field): Handle DW_TAG_variant_part.
13043         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13044         discriminated union.
13045         (read_structure_type): Handle DW_TAG_variant_part.
13046         (handle_struct_member_die): New function, extracted from
13047         process_structure_scope.  Handle DW_TAG_variant.
13048         (process_structure_scope): Handle discriminated unions.  Call
13049         handle_struct_member_die.
13050
13051 2018-02-26  Tom Tromey  <tom@tromey.com>
13052
13053         * rust-lang.h (rust_last_path_segment): Declare.
13054         * rust-lang.c (rust_last_path_segment): Now public.  Change
13055         contract.
13056         (struct disr_info): Remove.
13057         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13058         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13059         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13060         (rust_enum_p, rust_enum_variant): New function.
13061         (rust_underscore_fields): Remove "offset" parameter.
13062         (rust_print_enum): New function.
13063         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13064         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13065         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13066         enums.
13067         (rust_internal_print_type): New function, from rust_print_type.
13068         Remove enum code.
13069         (rust_print_type): Call rust_internal_print_type.
13070         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13071         Update enum handling.
13072         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13073         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13074         (rust_union_quirks): New functions.
13075         (process_full_comp_unit, process_full_type_unit): Call
13076         rust_union_quirks.
13077         (process_structure_scope): Update rust_unions if necessary.
13078
13079 2018-02-26  Tom Tromey  <tom@tromey.com>
13080
13081         * value.h (value_union_variant): Declare.
13082         * valops.c (value_union_variant): New function.
13083         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13084         (struct discriminant_info): New.
13085         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13086         enumerator.
13087         (struct main_type) <flag_discriminated_union>: New field.
13088
13089 2018-02-26  Tom Tromey  <tom@tromey.com>
13090
13091         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13092         unittests/unpack-selftests.c.
13093         * unittests/unpack-selftests.c: New file.
13094         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13095
13096 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13097
13098         * dwarf2read.c (struct partial_die_info) <read>: New method.
13099         (read_partial_die): Remove the declaration.
13100         (load_partial_dies): Update.
13101         (partial_die_info::partial_die_info):
13102         (read_partial_die): Change it to partial_die_info::read.
13103
13104 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13105
13106         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13107         (fixup_partial_die): Remove declaration.
13108         (scan_partial_symbols): Update.
13109         (partial_die_parent_scope): Likewise.
13110         (partial_die_full_name): Likewise.
13111         (fixup_partial_die): Change it to partial_die_info::fixup.
13112
13113 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13114
13115         * dwarf2read.c (read_partial_die): Update the declaration.
13116         (load_partial_dies): Caller update.
13117         (read_partial_die): Remove one argument abbrev_len.
13118
13119 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13120
13121         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13122         assignment operator.
13123         (load_partial_dies): Use ctor and copy ctor.
13124         (read_partial_die): Update.
13125         (dwarf2_cu::find_partial_die): Use ctor.
13126
13127 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13128
13129         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13130         (find_partial_die_in_comp_unit): Change it to
13131         dwarf2_cu::find_partial_die.
13132         (find_partial_die): Update.
13133
13134 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13135
13136         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13137         is NULL.
13138
13139 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13140
13141         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13142
13143 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13144
13145         * arch/amd64.h: Use common/tdesc.h.
13146         * arch/i386.c: Likewise.
13147         * arch/i386.h: Likewise.
13148         * arch/tic6x.c: Likewise.
13149         * arch/tdesc.h: Move file from here...
13150         * common/tdesc.h: ...to here.
13151         * features/aarch64-core.c: Regenerate.
13152         * features/aarch64-fpu.c: Regenerate.
13153         * features/i386/32bit-avx.c: Regenerate.
13154         * features/i386/32bit-avx512.c: Regenerate.
13155         * features/i386/32bit-core.c: Regenerate.
13156         * features/i386/32bit-linux.c: Regenerate.
13157         * features/i386/32bit-mpx.c: Regenerate.
13158         * features/i386/32bit-pkeys.c: Regenerate.
13159         * features/i386/32bit-sse.c: Regenerate.
13160         * features/i386/64bit-avx.c: Regenerate.
13161         * features/i386/64bit-avx512.c: Regenerate.
13162         * features/i386/64bit-core.c: Regenerate.
13163         * features/i386/64bit-linux.c: Regenerate.
13164         * features/i386/64bit-mpx.c: Regenerate.
13165         * features/i386/64bit-pkeys.c: Regenerate.
13166         * features/i386/64bit-segments.c: Regenerate.
13167         * features/i386/64bit-sse.c: Regenerate.
13168         * features/i386/x32-core.c: Regenerate.
13169         * features/tic6x-c6xp.c: Regenerate.
13170         * features/tic6x-core.c: Regenerate.
13171         * features/tic6x-gp.c: Regenerate.
13172         * target-descriptions.c: Use common/tdesc.h.
13173         * target-descriptions.h: Likewise.
13174
13175 2018-02-24  Tom Tromey  <tom@tromey.com>
13176
13177         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13178         (try_thread_db_load_from_dir, thread_db_load_search): Use
13179         std::string.
13180         (info_auto_load_libthread_db_compare): Return bool.  Change
13181         argument types.
13182         (info_auto_load_libthread_db): Use std::vector, std::string.
13183         Remove cleanups.
13184
13185 2018-02-24  Tom Tromey  <tom@tromey.com>
13186
13187         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13188         std::string.
13189         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13190         std::string*.
13191         * gdbarch.c: Rebuild.
13192         * gdbarch.h: Rebuild.
13193         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13194         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13195         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13196         std::string*.
13197
13198 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13199
13200         * gdbtypes.h (sect_offset): Change type to uint64_t.
13201         (sect_offset_str): New function.
13202         * dwarf2read.c (create_addrmap_from_aranges): Use
13203         sect_offset_str.
13204         (error_check_comp_unit_head): Likewise.
13205         (create_debug_type_hash_table): Likewise.
13206         (read_cutu_die_from_dwo): Likewise.
13207         (init_cutu_and_read_dies): Likewise.
13208         (init_cutu_and_read_dies_no_follow): Likewise.
13209         (process_psymtab_comp_unit_reader): Likewise.
13210         (partial_die_parent_scope): Likewise.
13211         (peek_die_abbrev): Likewise.
13212         (process_queue): Likewise.
13213         (dwarf2_physname): Likewise.
13214         (read_namespace_alias): Likewise.
13215         (read_import_statement): Likewise.
13216         (create_dwo_cu_reader): Likewise.
13217         (create_cus_hash_table): Likewise.
13218         (lookup_dwo_cutu): Likewise.
13219         (inherit_abstract_dies): Likewise.
13220         (read_func_scope): Likewise.
13221         (read_call_site_scope): Likewise.
13222         (dwarf2_add_member_fn): Likewise.
13223         (read_common_block): Likewise.
13224         (read_module_type): Likewise.
13225         (read_typedef): Likewise.
13226         (read_subrange_type): Likewise.
13227         (load_partial_dies): Likewise.
13228         (read_partial_die): Likewise.
13229         (find_partial_die): Likewise.
13230         (read_str_index): Likewise.
13231         (dwarf2_string_attr): Likewise.
13232         (build_error_marker_type): Likewise.
13233         (lookup_die_type): Likewise.
13234         (dump_die_shallow): Likewise.
13235         (follow_die_ref): Likewise.
13236         (dwarf2_fetch_die_loc_sect_off): Likewise.
13237         (dwarf2_fetch_constant_bytes): Likewise.
13238         (follow_die_sig): Likewise.
13239         (get_signatured_type): Likewise.
13240         (get_DW_AT_signature_type): Likewise.
13241         (dwarf2_find_containing_comp_unit): Likewise.
13242         (set_die_type): Likewise.
13243
13244 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13245
13246         * arch/aarch64.c: Include "common-defs.h".
13247         * arch/amd64.c: Likewise.
13248         * arch/i386.c: Likewise.
13249
13250 2018-02-21  Tom Tromey  <tom@tromey.com>
13251
13252         * value.h: (extract_field_op): Update.
13253         * eval.c (extract_field_op): Return a const char *.
13254         * expression.h (parse_expression_for_completion): Update.
13255         * completer.c (complete_expression): Update.
13256         (add_struct_fields): Make fieldname const.
13257         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13258         (mark_completion_tag, parse_exp_in_context_1): Update.
13259         (parse_expression_for_completion): Change "name" to
13260         unique_xmalloc_ptr*.
13261
13262 2018-02-21  Tom Tromey  <tom@tromey.com>
13263
13264         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13265
13266 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13267
13268         * avr-tdep.c (avr_read_pc): Change parameter type to
13269         readable_regcache.
13270         * gdbarch.sh (read_pc): Likewise.
13271         * gdbarch.c: Re-generated.
13272         * gdbarch.h: Re-generated.
13273         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13274         readable_regcache.
13275         * ia64-tdep.c (ia64_read_pc): Likewise.
13276         * mips-tdep.c (mips_read_pc): Likewise.
13277         * spu-tdep.c (spu_read_pc): Likewise.
13278
13279 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13280
13281         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13282         * regcache-dump.c: New file.
13283         * regcache.c: Move register_dump to regcache-dump.c.
13284         (maintenance_print_registers): Likewise.
13285         (maintenance_print_raw_registers): Likewise.
13286         (maintenance_print_cooked_registers): Likewise.
13287         (maintenance_print_register_groups): Likewise.
13288         (maintenance_print_remote_registers): Likewise.
13289         (_initialize_regcache): Likewise.
13290         * regcache.h (register_dump): Moved from regcache.c.
13291
13292 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13293
13294         * regcache.c (regcache::regcache): Update.
13295         (regcache::invalidate): Move it to detached_regcache::invalidate.
13296         (get_thread_arch_aspace_regcache): Update.
13297         (regcache::raw_update): Update.
13298         (regcache::cooked_read): Remove some code.
13299         (regcache::cooked_read_value): Likewise.
13300         (regcache::raw_write): Remove assert on m_readonly_p.
13301         (regcache::raw_supply_integer): Move it to
13302         detached_regcache::raw_supply_integer.
13303         (regcache::raw_supply_zeroed): Likewise.
13304         * regcache.h (detached_regcache) <raw_supply_integer>: New
13305         declaration.
13306         <raw_supply_zeroed, invalidate>: Likewise.
13307         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13308         <invalidate>: Likewise.
13309         <m_readonly_p>: Removed.
13310
13311 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13312
13313         * infcmd.c (get_return_value): Let stop_regs point to
13314         get_current_regcache.
13315         * regcache.c (regcache::regcache): Remove.
13316         (register_dump_reg_buffer): New class.
13317         (regcache_print): Adjust.
13318         * regcache.h (regcache): Remove constructors.
13319
13320 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13321
13322         * regcache.c (class register_dump): New class.
13323         (register_dump_regcache, register_dump_none): New class.
13324         (register_dump_remote, register_dump_groups): New class.
13325         (regcache_print): Update.
13326         * regcache.h (regcache_dump_what): Move it to regcache.c.
13327         (regcache) <dump>: Remove.
13328
13329 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13330
13331         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13332          reg_buffer_rw *.
13333         (jit_unwind_reg_set_impl): Call raw_supply.
13334         (jit_frame_sniffer): Use reg_buffer_rw.
13335         * record-full.c (record_full_core_regbuf): Change its type.
13336         (record_full_core_open_1): Use reg_buffer_rw.
13337         (record_full_close): Likewise.
13338         (record_full_core_fetch_registers): Use regcache->raw_supply.
13339         (record_full_core_store_registers): Likewise.
13340         * regcache.c (regcache::get_register_status): Move it to
13341         reg_buffer.
13342         (regcache_raw_set_cached_value): Remove.
13343         (regcache::raw_set_cached_value): Remove.
13344         (regcache::raw_write): Call raw_supply.
13345         (regcache::raw_supply): Move it to reg_buffer_rw.
13346         * regcache.h (regcache_raw_set_cached_value): Remove.
13347         (reg_buffer_rw): New class.
13348
13349 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13350
13351         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13352         readonly_detached_regcache.
13353         (dummy_frame_prev_register): Use regcache->cooked_read.
13354         * frame.c (frame_save_as_regcache): Change return type.
13355         (frame_pop): Update.
13356         * frame.h (frame_save_as_regcache): Update declaration.
13357         * inferior.h (get_infcall_suspend_state_regcache): Update
13358         declaration.
13359         * infrun.c (infcall_suspend_state) <registers>: use
13360         readonly_detached_regcache.
13361         (save_infcall_suspend_state): Don't use regcache_dup.
13362         (get_infcall_suspend_state_regcache): Change return type.
13363         * linux-fork.c (struct fork_info) <savedregs>: Change to
13364         readonly_detached_regcache.
13365         <pc>: New field.
13366         (fork_save_infrun_state): Don't use regcache_dup.
13367         (info_checkpoints_command): Adjust.
13368         * mi/mi-main.c (register_changed_p): Update declaration.
13369         (mi_cmd_data_list_changed_registers): Use
13370         readonly_detached_regcache.
13371         (register_changed_p): Change parameter type to
13372         readonly_detached_regcache.
13373         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13374         readonly_detached_regcache.
13375         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13376         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13377         New.
13378         (regcache::save): Move it to reg_buffer.
13379         (regcache::restore): Change parameter type.
13380         (regcache_dup): Remove.
13381         * regcache.h (reg_buffer) <save>: New method.
13382         (readonly_detached_regcache): New class.
13383         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13384         readonly_detached_regcache.
13385         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13386
13387 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13388
13389         * frame.c (frame_save_as_regcache): Use regcache method save.
13390         (frame_pop): Use regcache method restore.
13391         * infrun.c (restore_infcall_suspend_state): Likewise.
13392         * linux-fork.c (fork_load_infrun_state): Likewise.
13393         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13394         save.
13395         * regcache.c (regcache_save): Remove.
13396         (regcache::restore): More asserts.
13397         (regcache_cpy): Remove.
13398         * regcache.h (regcache_save): Remove the declaration.
13399         (regcache::restore): Move from private to public.
13400         Remove the friend declaration of regcache_cpy.
13401         (regcache_cpy): Remove declaration.
13402
13403 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13404
13405         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13406         parameter type to 'readable_regcache *'.
13407         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13408         * arm-tdep.c (arm_neon_quad_read): Likewise.
13409         (arm_pseudo_read): Likewise.
13410         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13411         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13412         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13413         * gdbarch.c: Re-generated.
13414         * gdbarch.h: Re-generated.
13415         * gdbarch.sh (pseudo_register_read): Change parameter type to
13416         'readable_regcache *'.
13417         (pseudo_register_read_value): Likewise.
13418         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13419         (h8300_pseudo_register_read): Likewise.
13420         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13421         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13422         (i386_pseudo_register_read_into_value): Likewise.
13423         (i386_pseudo_register_read_value): Likewise.
13424         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13425         declaration.
13426         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13427         * m32c-tdep.c (m32c_raw_read): Likewise.
13428         (m32c_read_flg): Likewise.
13429         (m32c_banked_register): Likewise.
13430         (m32c_banked_read): Likewise.
13431         (m32c_sb_read): Likewise.
13432         (m32c_part_read): Likewise.
13433         (m32c_cat_read): Likewise.
13434         (m32c_r3r2r1r0_read): Likewise.
13435         (m32c_pseudo_register_read): Likewise.
13436         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13437         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13438         (mep_pseudo_cr64_read): Likewise.
13439         (mep_pseudo_register_read): Likewise.
13440         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13441         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13442         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13443         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13444         (regcache::cooked_read): Likewise.
13445         (regcache::cooked_read_value): Likewise.
13446         (regcache_cooked_read_signed):
13447         (regcache::cooked_read): Likewise.
13448         * regcache.h (readable_regcache): New class.
13449         (regcache): Inherit readable_regcache.  Move some methods to
13450         readable_regcache.
13451         * rl78-tdep.c (rl78_pseudo_register_read): Change
13452         parameter type to 'readable_regcache *'.
13453         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13454         (e500_pseudo_register_read): Change parameter type to
13455         'readable_regcache *'.
13456         (dfp_pseudo_register_read): Likewise.
13457         (vsx_pseudo_register_read): Likewise.
13458         (efpr_pseudo_register_read): Likewise.
13459         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13460         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13461         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13462         (sh64_pseudo_register_read): Likewise.
13463         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13464         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13465         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13466         (spu_pseudo_register_read): Likewise.
13467         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13468         (xtensa_pseudo_register_read): Likewise.
13469
13470 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13471
13472         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13473         (regcache::arch): Move it to reg_buffer::arch.
13474         (regcache::register_buffer): Likewise.
13475         (regcache::assert_regnum): Likewise.
13476         (regcache::num_raw_registers): Likewise.
13477         * regcache.h (reg_buffer): New class.
13478         (regcache): Inherit reg_buffer.
13479
13480 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13481
13482         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13483         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13484
13485 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13486
13487         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13488
13489 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13490
13491         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13492         (SFILES): Remove common/*.c files.
13493         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13494         * common/common.host: Add common reference.
13495         * configure.ac: Likewise.
13496         * configure: Regenerate.
13497
13498 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13499
13500         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13501         (block_initialize_namespace): Use new.
13502         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13503         (dwarf2_free_objfile): Use delete.
13504         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13505         (copy_type_recursive): Use new.
13506         * gdb_obstack.h (allocate_on_obstack): New.
13507
13508 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13509
13510         PR gdb/22849
13511         * inferior.c (exit_inferior_1): Reset inf->control.
13512
13513 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13514
13515         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13516         declaration.
13517
13518 2018-02-14  Pedro Alves  <palves@redhat.com>
13519
13520         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13521         frame_cleanup_after_sniffer on exception.
13522
13523 2018-02-14  Tom Tromey  <tom@tromey.com>
13524
13525         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13526         const.
13527         (solib_bfd_open): Make pathname const.
13528         * solib.c (solib_bfd_open): Make pathname const.
13529         * solib-spu.c (spu_bfd_fopen): Make name const.
13530         (spu_bfd_open): Make pathname const.
13531         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13532         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13533
13534 2018-02-14  Tom Tromey  <tom@tromey.com>
13535
13536         * symfile.c (symfile_bfd_open): Update.
13537         * source.h (openp, source_full_path_of, find_and_open_source):
13538         Change argument type to unique_xmalloc_ptr.
13539         * source.c (openp): Take a unique_xmalloc_ptr.
13540         (source_full_path_of, find_and_open_source): Likewise.
13541         (open_source_file, symtab_to_fullname): Update.
13542         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13543         unique_xmalloc_ptr.
13544         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13545         (exec_file_find): Update.
13546         * psymtab.c (psymtab_to_fullname): Update.
13547         * nto-tdep.h (nto_find_and_open_solib): Update.
13548         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13549         unique_xmalloc_ptr.
13550         * exec.c (exec_file_attach): Update.
13551         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13552         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13553
13554 2018-02-14  Tom Tromey  <tom@tromey.com>
13555
13556         * solib.c: Include source.h.
13557         * nto-tdep.c: Include source.h.
13558         * mi/mi-cmd-env.c: Include source.h.
13559         * infcmd.c: Include source.h.
13560         * exec.c: Include source.h.
13561         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13562         (add_path, directory_switch, source_path, init_source_path): Move
13563         declarations...
13564         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13565         (add_path, directory_switch, source_path, init_source_path):
13566         ...here.
13567
13568 2018-02-14  Tom Tromey  <tom@tromey.com>
13569
13570         * solist.h (exec_file_find, solib_find): Return
13571         unique_xmalloc_ptr.
13572         (solib_bfd_fopen): Take a const char *.
13573         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13574         (exec_file_find, solib_find): Likewise.
13575         (solib_bfd_fopen): Do not take ownership of "pathname".
13576         (solib_bfd_open): Use unique_xmalloc_ptr.
13577         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13578         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13579         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13580         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13581
13582 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13583
13584         * ada-lang.c (name_match_type_from_name): Remove reference to
13585         ada_name_for_lookup in function's documentation.
13586         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13587
13588 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13589
13590         * defs.h (enum openp_flags): New enum.
13591         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13592         Move to enum openp_flags.
13593         (openp_flags): New enum flags.
13594         (openp): Change parameter type to openp_flags.
13595         * source.c (openp): Change parameter type to openp_flags.
13596         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13597         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13598
13599 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13600
13601         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13602         per-command.
13603
13604 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13605
13606         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13607         into...
13608         (class dwarf2_queue_guard): ...the destructor of this new class.
13609         (dw2_do_instantiate_symtab): Create instance of the new class
13610         dwarf2_queue_guard, remove cleanup.
13611
13612 2018-02-09  Tom Tromey  <tom@tromey.com>
13613
13614         * source.c (find_source_lines): Don't reference past the end of
13615         the vector.
13616
13617 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13618
13619         * remote.c (remote_btrace_maybe_reopen): Change error message.
13620         * btrace.c (btrace_enable): Likewise.
13621         (parse_xml_btrace): Likewise.
13622         (parse_xml_btrace_conf): Likewise.
13623
13624 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13625
13626         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13627         (linux_enable_pt, linux_enable_bts): Call
13628         diagnose_perf_event_open_fail.
13629
13630 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13631
13632         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13633         Remove parameter and change return type.  Update callers.  Move it.
13634         (linux_enable_bts, linux_enable_pt): Improve error message.
13635         (linux_enable_pt): Remove zero buffer size check.
13636         (linux_enable_btrace): Improve error messages.  Remove NULL return
13637         check.
13638
13639 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13640
13641         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13642         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13643         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13644         (linux_supports_pt, linux_supports_btrace): Remove.
13645         (linux_enable_bts): Call cpu_supports_bts.
13646         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13647         * remote.c (remote_supports_btrace): Remove.
13648         (init_remote_ops): Remove remote_supports_btrace.
13649         * target-delegates.c: Regenerated.
13650         * target.c (target_supports_btrace): Remove.
13651         * target.h (target_ops) <to_supports_btrace>: Remove
13652         (target_supports_btrace): Remove.
13653         * x86-linux-nat.c (x86_linux_create_target): Remove
13654         linux_supports_btrace.
13655
13656 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13657
13658         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13659         btrace failed.
13660         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13661         exception and use message in own exception.
13662
13663 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13664
13665         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13666         (perf_event_pt_event_type): Use gdb_file_up.
13667         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13668         scoped_fd, and scoped_mmap.
13669
13670 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13671
13672         * common/scoped_mmap.h: New.
13673         * unittests/scoped_mmap-selftest.c: New.
13674         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13675         unittests/scoped_mmap-selftest.c.
13676
13677 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13678
13679         * common/scoped_fd.h: New.
13680         * unittests/scoped_fd-selftest.c: New.
13681         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13682         unittests/scoped_fd-selftest.c.
13683
13684 2018-02-09  Tom Tromey  <tom@tromey.com>
13685
13686         * auto-load.c (auto_load_section_scripts): Use
13687         gdb::unique_xmalloc_ptr.
13688
13689 2018-02-09  Tom Tromey  <tom@tromey.com>
13690
13691         * auto-load.c (execute_script_contents): Use std::string.
13692
13693 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13694
13695         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13696         Python function, rather than a new command.
13697
13698 2018-02-08  Tom Tromey  <tom@tromey.com>
13699
13700         * solib.c (solib_find_1): Use std::string.
13701         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13702
13703 2018-02-08  Tom Tromey  <tom@tromey.com>
13704
13705         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13706
13707 2018-02-08  Tom Tromey  <tom@tromey.com>
13708
13709         * source.c (find_source_lines): Use gdb::def_vector.
13710
13711 2018-02-08  Tom Tromey  <tom@tromey.com>
13712
13713         * macrocmd.c (struct temporary_macro_definition): New.
13714         (macro_define_command): Use temporary_macro_definition.  Remove
13715         cleanups.
13716         (free_macro_definition_ptr): Remove.
13717
13718 2018-02-08  Tom Tromey  <tom@tromey.com>
13719
13720         * macroexp.c (maybe_expand): Use std::string.
13721
13722 2018-02-08  Tom Tromey  <tom@tromey.com>
13723
13724         * macroexp.c (struct macro_buffer): Add initializers for some
13725         members.
13726         (init_buffer, init_shared_buffer, free_buffer)
13727         (free_buffer_return_text): Remove.
13728         (macro_buffer): New constructors.
13729         (~macro_buffer): New destructor.
13730         (macro_buffer::set_shared): New method.
13731         (macro_buffer::resize_buffer, macro_buffer::appendc)
13732         (macro_buffer::appendmem): Now methods, not free functions.
13733         (set_token, append_tokens_without_splicing, stringify)
13734         (macro_stringify): Update.
13735         (gather_arguments): Change return type.  Remove argc_p argument,
13736         add args_ptr argument.  Use std::vector.
13737         (substitute_args): Remove argc argument.  Accept std::vector.
13738         (expand): Update.  Use std::vector.
13739         (scan, macro_expand, macro_expand_next): Update.
13740
13741 2018-02-08  Tom Tromey  <tom@tromey.com>
13742
13743         * symtab.c (default_collect_symbol_completion_matches_break_on):
13744         Use unique_xmalloc_ptr.
13745         * macroscope.h: (sal_macro_scope, user_macro_scope)
13746         (default_macro_scope): Return unique_xmalloc_ptr.
13747         * macroscope.c (sal_macro_scope, user_macro_scope)
13748         (default_macro_scope): Return unique_xmalloc_ptr.
13749         * macroexp.h (macro_expand, macro_expand_once): Return
13750         unique_xmalloc_ptr.
13751         * macroexp.c (macro_expand, macro_expand_once): Return
13752         unique_xmalloc_ptr.
13753         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13754         (info_macro_command, info_macros_command): Use
13755         unique_xmalloc_ptr.
13756         * compile/compile-c-support.c (write_macro_definitions): Use
13757         unique_xmalloc_ptr.
13758         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13759
13760 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13761
13762         * value.c (value_static_field): Assign field type instead of
13763         containing type when returning an optimized out value.
13764
13765 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13766
13767         * ft32-tdep.c (ft32_read_pc): Remove.
13768         (ft32_write_pc): Remove.
13769         (ft32_gdbarch_init): Update.
13770         * m32r-tdep.c (m32r_read_pc): Remove.
13771         (m32r_gdbarch_init): Update.
13772         * mep-tdep.c (mep_read_pc): Remove.
13773         (mep_gdbarch_init): Update.
13774         * microblaze-tdep.c (microblaze_write_pc): Remove.
13775         (microblaze_gdbarch_init): Update.
13776         * mn10300-tdep.c (mn10300_read_pc): Remove.
13777         (mn10300_write_pc): Remove.
13778         (mn10300_gdbarch_init): Update.
13779         * moxie-tdep.c (moxie_read_pc): Remove.
13780         (moxie_write_pc): Remove.
13781         (moxie_gdbarch_init): Update.
13782
13783 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13784
13785         * expprint.c (print_subexp_standard): Handle
13786         OP_F77_UNDETERMINED_ARGLIST.
13787         (dump_subexp_body_standard): Likewise.
13788
13789 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13790
13791         * target-descriptions.c (tdesc_element_visitor) Add empty
13792         implementations.
13793         (tdesc_type): Move make_gdb_type from here.
13794         (tdesc_type_builtin): Likewise.
13795         (tdesc_type_vector): Likewise.
13796         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13797         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13798         (make_gdb_type_union): Likewise.
13799         (make_gdb_type_flags): Likewise.
13800         (make_gdb_type_enum): Likewise.
13801         (make_gdb_type): New function.
13802         (tdesc_register_type): Use static make_gdb_type.
13803
13804 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13805
13806         * infcmd.c (default_print_one_register_info): Align natural-format
13807         column values consistently one under another.
13808         (pad_to_column): New function.
13809
13810 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13811
13812         * dwarf2read.c (dwarf2_physname): Move commment.
13813
13814 2018-02-01  Leszek Swirski  <leszeks@google.com>
13815
13816         * varobj.c (varobj_formatted_print_options): Allow recursive
13817         pretty printing if pretty printing is enabled.
13818
13819 2018-02-01  Leszek Swirski  <leszeks@google.com>
13820
13821         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13822         names after a structop as a filename.
13823
13824 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13825
13826         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13827         (arm_record_coproc_data_proc): Likewise.
13828
13829 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13830
13831         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13832
13833 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13834
13835         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13836         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13837
13838 2018-01-31  Pedro Alves  <palves@redhat.com>
13839
13840         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13841         * inflow.c (child_terminal_save_inferior): Wrap reference to
13842         tcgetpgrp in HAVE_TERMIOS_H.
13843         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13844         _WIN32.
13845         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13846         always iterate over all inferiors.
13847         (gdbsim_cntrl_c): Adjust.
13848         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13849
13850 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13851
13852         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13853         index type is objfile-owned if the element type is as well.
13854
13855 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13856
13857         GDB 8.1 released.
13858
13859 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13860
13861         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13862         "features/s390x-linux64.c".
13863         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13864         s390_linux32 and s390x_linux64.
13865         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13866         default tdesc.
13867         * s390-tdep.c: Include "features/s390-linux32.c" and
13868         "features/s390x-linux64.c".
13869         (s390_tdesc_valid): Add check for tdesc_has_registers.
13870         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13871         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13872         tdesc_s390x_linux64.
13873         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13874         tdesc_s390x_linux64 to...
13875         * s390-tdep.h: ...here.
13876
13877 2018-01-30  Pedro Alves  <palves@redhat.com>
13878
13879         PR gdb/13211
13880         * config.in, configure: Regenerate.
13881         * configure.ac: Check for getpgid.
13882         * go32-nat.c (go32_pass_ctrlc): New.
13883         (go32_target): Install it.
13884         * inf-child.c (inf_child_target): Install
13885         child_terminal_save_inferior, child_pass_ctrlc and
13886         child_interrupt.
13887         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13888         (inf_ptrace_target): No longer install it.
13889         * infcmd.c (interrupt_target_1): Adjust.
13890         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13891         (child_interrupt): Declare.
13892         (inferior::terminal_state): New.
13893         * inflow.c (struct terminal_info): Update comments.
13894         (inferior_process_group): Delete.
13895         (terminal_is_ours): Delete.
13896         (gdb_tty_state): New.
13897         (child_terminal_init): Adjust.
13898         (is_gdb_terminal, sharing_input_terminal_1)
13899         (sharing_input_terminal): New functions.
13900         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13901         Set the process's actual process group in the foreground if
13902         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13903         mark terminal as the inferior's if not sharing GDB's terminal.
13904         Don't check attach_flag.
13905         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13906         pass down a target_terminal_state.
13907         (child_terminal_save_inferior): New, factored out from ...
13908         (child_terminal_ours_1): ... this.  Handle
13909         target_terminal_state::is_ours_for_output.
13910         (child_interrupt, child_pass_ctrlc): New.
13911         (inflow_inferior_exit): Clear the inferior's terminal_state.
13912         (copy_terminal_info): Copy the inferior's terminal state.
13913         (_initialize_inflow): Remove reference to terminal_is_ours.
13914         * inflow.h (inferior_process_group): Delete.
13915         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13916         * procfs.c (procfs_target): Don't install procfs_interrupt.
13917         (procfs_interrupt): Delete.
13918         * remote.c (remote_serial_quit_handler): Adjust.
13919         (remote_interrupt): Remove ptid parameter.  Adjust.
13920         * target-delegates.c: Regenerate.
13921         * target.c: Include "terminal.h".
13922         (target_terminal::terminal_state): Rename to ...
13923         (target_terminal::m_terminal_state): ... this.
13924         (target_terminal::init): Adjust.
13925         (target_terminal::inferior): Adjust to per-inferior
13926         terminal_state.
13927         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13928         (target_terminal::ours, target_terminal::ours_for_output): Use
13929         target_terminal_is_ours_kind.
13930         (target_interrupt): Remove ptid parameter.  Adjust.
13931         (default_target_pass_ctrlc): Adjust.
13932         * target.h (target_ops::to_terminal_save_inferior): New field.
13933         (target_ops::to_interrupt): Remove ptid_t parameter.
13934         (target_interrupt): Remove ptid_t parameter.  Update comment.
13935         (target_pass_ctrlc): Update comment.
13936         * target/target.h (target_terminal_state): New scoped enum,
13937         factored out of ...
13938         (target_terminal::terminal_state): ... here.
13939         (target_terminal::inferior): Update comments.
13940         (target_terminal::restore_inferior): New.
13941         (target_terminal::is_inferior, target_terminal::is_ours)
13942         (target_terminal::is_ours_for_output): Adjust.
13943         (target_terminal::scoped_restore_terminal_state): Adjust to
13944         rename, and call restore_inferior() instead of inferior().
13945         (target_terminal::scoped_restore_terminal_state::m_state): Change
13946         type.
13947         (target_terminal::terminal_state): Rename to ...
13948         (target_terminal::m_terminal_state): ... this and change type.
13949
13950 2018-01-30  Pedro Alves  <palves@redhat.com>
13951
13952         * linux-nat.c (wait_for_signal): New function.
13953         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13954         directly.
13955         (async_terminal_is_ours)
13956         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13957         (linux_nat_add_target): Don't override
13958         to_terminal_inferior/to_terminal_ours.
13959
13960 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13961
13962         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13963
13964 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13965
13966         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13967         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13968         dwarf2_per_objfile_free here.
13969         (dwarf2_per_objfile_free): Remove.
13970         (_initialize_dwarf2_read): Don't register
13971         dwarf2_per_objfile_free as a registry cleanup.
13972
13973 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13974
13975         Avoid compilation errors in MinGW native builds
13976
13977         The error is triggered by including python-internal.h, and the
13978         error message is:
13979
13980              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13981                       from build-gnulib/import/math.h:27,
13982                       from d:/usr/Python26/include/pyport.h:235,
13983                       from d:/usr/Python26/include/Python.h:58,
13984                       from python/python-internal.h:94,
13985                       from python/py-arch.c:24:
13986              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13987         using ::hypot;
13988                 ^~~~~
13989
13990         This happens because Python headers define 'hypot' to expand t
13991         '_hypot' in the Windows builds.
13992         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13993         'hypoth'.  This avoids a compilation error.
13994
13995 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13996
13997         * MAINTAINERS (Write After Approval): Fix ordering.
13998
13999 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14000
14001         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14002
14003 2018-01-26  Alan Modra  <amodra@gmail.com>
14004
14005         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14006         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14007         Remove nop.  Make const.  Comment.
14008         (powerpc32_plt_stub_so_2): New.
14009         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14010         Correct count.  Update uses.
14011         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14012         Move common code reading PLT entry word.  Correct
14013         powerpc32_plt_stub PLT address calculation.
14014         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14015         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14016         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14017         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14018         (ppc64_standard_linkage8): Likewise.
14019         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14020         Correct insns description.
14021         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14022
14023 2018-01-24  Pedro Alves  <palves@redhat.com>
14024
14025         GCC PR libstdc++/83906
14026         * gdbtypes.c (operator==(const dynamic_prop &,
14027         const dynamic_prop &)): New.
14028         (operator==(const range_bounds &, const range_bounds &)): New.
14029         (check_types_equal): Use them instead of memcmp.
14030         * gdbtypes.h (operator==(const dynamic_prop &,
14031         const dynamic_prop &)): Declare.
14032         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14033         (operator==(const range_bounds &, const range_bounds &)): Declare.
14034         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14035
14036 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14037
14038         * s390-linux-tdep.c (s390_record_address_mask)
14039         (s390_record_calc_disp_common, s390_record_calc_disp)
14040         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14041         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14042         (s390_process_record): Move to s390-tdep.c.
14043         (s390_linux_init_abi_any): Adjust.
14044         * s390-tdep.c (s390_record_address_mask)
14045         (s390_record_calc_disp_common, s390_record_calc_disp)
14046         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14047         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14048         (s390_process_record): Moved from s390-linux-tdep.c
14049         (s390_gdbarch_init): Adjust.
14050
14051 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14052
14053         * s390-linux-nat.c (s390-tdep.h): New include.
14054         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14055         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14056         (ALLDEPFILES): Add s390-tdep.c.
14057         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14058         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14059         * s390-tdep.h: ...this.  New file.
14060         * s390-linux-tdep.c (s390-tdep.h): New include.
14061         (_initialize_s390_tdep): Rename to...
14062         (_initialize_s390_linux_tdep): ...this and adjust.
14063         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14064         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14065         s390-tdep.h.
14066         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14067         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14068         (s390_is_partial_instruction, s390_software_single_step)
14069         (is_non_branch_ril, s390_displaced_step_copy_insn)
14070         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14071         (s390_prologue_data, s390_addr, s390_store, s390_load)
14072         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14073         (s390_register_call_saved, s390_guess_tracepoint_registers)
14074         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14075         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14076         (s390_pseudo_register_name, s390_pseudo_register_type)
14077         (s390_pseudo_register_read, s390_pseudo_register_write)
14078         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14079         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14080         (s390_addr_bits_remove, s390_address_class_type_flags)
14081         (s390_address_class_type_flags_to_name)
14082         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14083         (s390_function_arg_float, s390_function_arg_vector)
14084         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14085         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14086         (s390_frame_align, s390_register_return_value, s390_return_value)
14087         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14088         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14089         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14090         (s390_trad_frame_prev_register, s390_unwind_cache)
14091         (s390_prologue_frame_unwind_cache)
14092         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14093         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14094         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14095         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14096         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14097         (s390_frame_base_address, s390_local_base_address)
14098         (s390_frame_base, s390_gcc_target_options)
14099         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14100         (s390_validate_reg_range, s390_tdesc_valid)
14101         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14102         * s390-tdep.c: ...this.  New file.
14103
14104 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14105
14106         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14107         (s390_process_record, s390_gdbarch_tdep_alloc)
14108         (s390_linux_init_abi_any): Use/set new hook.
14109
14110 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14111
14112         * s390-linux-tdep.c (osabi.h): New include.
14113         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14114         (s390_linux_init_abi_any): New functions.
14115         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14116
14117 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14118
14119         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14120         tdesc_has_registers check
14121
14122 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14123
14124         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14125         (s390_validate_reg_range): New macro.
14126         (s390_gdbarch_init): Adjust.
14127
14128 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14129
14130         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14131         (s390_gdbarch_tdep_alloc): Adjust.
14132         (s390_gdbarch_init): Adjust.
14133
14134 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14135
14136         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14137         <have_tdb>: Change type to bool.
14138         (s390_gdbarch_tdep_alloc): Adjust.
14139         (s390_gdbarch_init): Adjust.
14140
14141 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14142
14143         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14144         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14145         (s390_gdbarch_tdep_alloc): New function.
14146         (s390_gdbarch_init): Allocate tdep at start and use its fields
14147         instead of separate variables.
14148
14149 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14150
14151         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14152         when looking for cached gdbarch and add comment for remaining.
14153
14154 2018-01-22  Pedro Alves  <palves@redhat.com>
14155             Sergio Durigan Junior  <sergiodj@redhat.com>
14156
14157         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14158         case.
14159
14160 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14161
14162         * MAINTAINERS: Update my company e-mail address.
14163
14164 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14165
14166         * regcache.c (cooked_write_test): New function.
14167         (_initialize_regcache): Register the test.
14168
14169 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14170
14171         * ia64-tdep.c (ia64_pseudo_register_read): Call
14172         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14173         * m32c-tdep.c (m32c_cat_read): Likewise.
14174         (m32c_r3r2r1r0_read): Likewise.
14175         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14176         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14177
14178 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14179
14180         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14181         method raw_read instead of regcache_raw_read.
14182         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14183         * arm-tdep.c (arm_neon_quad_read): Likewise.
14184         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14185         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14186         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14187         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14188         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14189         (i386_pseudo_register_read_into_value): Likewise.
14190         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14191         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14192         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14193         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14194         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14195         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14196         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14197         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14198         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14199
14200 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14201
14202         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14203         * configure.tgt: Remove target mt.
14204         * mt-tdep.c: Remove.
14205         * regcache.c (cooked_read_test): Remove the check for mt.
14206
14207 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14208
14209         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14210         instead of gdbarch_pseudo_register_read_value.
14211
14212 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14213
14214         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14215         language is Ada.
14216
14217 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14218
14219         * linespec.c (create_sals_line_offset): Remove code that preserved
14220         the symtab_and_line's line number.
14221
14222 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14223
14224         * varobj.c (varobj_create): Don't set valid_block when creating a
14225         floating varobj.
14226
14227 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14228
14229         * varobj.c (varobj_create): Remove out of date comment.
14230
14231 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14232
14233         PR mi/20395
14234         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14235         updating innermost block.
14236         * parse.c (innermost_block_tracker::update): Take extra type
14237         parameter, and check types match before updating innermost block.
14238         (write_dollar_variable): Update innermost block for registers.
14239         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14240         (innermost_block_tracker::innermost_block_tracker): Initialise
14241         m_types member.
14242         (innermost_block_tracker::reset): Take type parameter.
14243         (innermost_block_tracker::update): Take type parameter, and pass
14244         type through as needed.
14245         (innermost_block_tracker::m_types): New member.
14246         * varobj.c (varobj_create): Pass type when reseting innermost
14247         block.
14248
14249 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14250
14251         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14252         * ada-lang.c (resolve_subexp): Likewise.
14253         * breakpoint.c (set_breakpoint_condition) Likewise.
14254         (watch_command_1) Likewise.
14255         * c-exp.y (variable): Likewise.
14256         * d-exp.y (PrimaryExpression): Likewise.
14257         * f-exp.y (variable): Likewise.
14258         * go-exp.y (variable): Likewise.
14259         * m2-exp.y (variable): Likewise.
14260         * objfiles.c (objfile::~objfile): Likewise.
14261         * p-exp.y (variable): Likewise.
14262         * parse.c (innermost_block): Change type.
14263         * parser-defs.h (class innermost_block_tracker): New.
14264         (innermost_block): Change to innermost_block_tracker.
14265         * printcmd.c (display_command): Switch to innermost_block API.
14266         (do_one_display): Likewise.
14267         * rust-exp.y (do_one_display): Likewise.
14268         * symfile.c (clear_symtab_users): Likewise.
14269         * varobj.c (varobj_create): Switch to innermost_block API, replace
14270         use of innermost_block with block stored on varobj object.
14271
14272 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14273
14274         * expression.h (innermost_block): Remove declaration.
14275         * varobj.c: Add 'parser-defs.h' include.
14276
14277 2018-01-19  Tom Tromey  <tom@tromey.com>
14278
14279         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14280         symbols in the static and global blocks.
14281
14282 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14283
14284         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14285         gdb_ptrace.h, and move including gdb_wait.h ...
14286         * nat/linux-ptrace.h: ... to here.
14287
14288 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14289
14290         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14291         inf_ptrace_detach_success.
14292         (inf_ptrace_detach_success): Add inferior parameter, use it
14293         instead of inferior_ptid, pass it to detach_inferior.
14294         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14295         parameter.
14296         * inferior.c (detach_inferior): Add overload that takes an
14297         inferior object.
14298         * inferior.h (detach_inferior): Likewise.
14299         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14300         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14301         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14302
14303 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14304
14305         * target.h (struct target_ops) <to_detach>: Add inferior
14306         parameter.
14307         (target_detach): Likewise.
14308         * target.c (dispose_inferior): Pass inferior down.
14309         (target_detach): Pass inferior down.  Assert that it is equal to
14310         the current inferior.
14311         * aix-thread.c (aix_thread_detach): Pass inferior down.
14312         * corefile.c (core_file_command): Pass current_inferior() down.
14313         * corelow.c (core_detach): Add inferior parameter.
14314         * darwin-nat.c (darwin_detach): Likewise.
14315         * gnu-nat.c (gnu_detach): Likewise.
14316         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14317         * infcmd.c (detach_command): Pass current_inferior() down to
14318         target_detach.
14319         * infrun.c (follow_fork_inferior): Pass parent_inf to
14320         target_detach.
14321         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14322         target_detach.
14323         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14324         * linux-thread-db.c (thread_db_detach): Likewise.
14325         * nto-procfs.c (procfs_detach): Likewise.
14326         * procfs.c (procfs_detach): Likewise.
14327         * record.c (record_detach): Likewise.
14328         * record.h (struct inferior): Forward-declare.
14329         (record_detach): Add inferior parameter.
14330         * remote-sim.c (gdbsim_detach): Likewise.
14331         * remote.c (remote_detach_1): Likewise.
14332         (remote_detach): Likewise.
14333         (extended_remote_detach): Likewise.
14334         * sol-thread.c (sol_thread_detach): Likewise.
14335         * target-debug.h (target_debug_print_inferior_p): New macro.
14336         * target-delegates.c: Re-generate.
14337         * top.c (kill_or_detach): Pass inferior down to target_detach.
14338         * windows-nat.c (windows_detach): Add inferior parameter.
14339
14340 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14341
14342         * target.h (struct target_ops) <to_detach>: Remove args
14343         parameter.
14344         (target_detach): Likewise.
14345         * target.c (dispose_inferior): Adjust.
14346         (target_detach): Remove args parameter, adjust.
14347         * aix-thread.c (aix_thread_detach): Adjust.
14348         * corefile.c (core_file_command): Adjust.
14349         * corelow.c (core_detach): Adjust.
14350         * darwin-nat.c (darwin_detach): Adjust.
14351         * gnu-nat.c (gnu_detach): Adjust.
14352         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14353         * infcmd.c (detach_command): Adjust
14354         * infrun.c (follow_fork_inferior): Adjust.
14355         (handle_vfork_child_exec_or_exit): Adjust.
14356         * linux-fork.c (linux_fork_detach): Remove args parameter.
14357         * linux-fork.h (linux_fork_detach): Likewise.
14358         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14359         * linux-thread-db.c (thread_db_detach): Likewise.
14360         * nto-procfs.c (procfs_detach): Likewise.
14361         * procfs.c (procfs_detach): Likewise.
14362         (do_detach): Remove signo parameter.
14363         * record.c (record_detach): Remove args parameter.
14364         * record.h (record_detach): Likewise.
14365         * remote-sim.c (gdbsim_detach): Likewise.
14366         * remote.c (remote_detach_1): Likewise.
14367         (remote_detach): Likewise.
14368         (extended_remote_detach): Likewise.
14369         * sol-thread.c (sol_thread_detach): Likewise.
14370         * target-delegates.c: Re-generate.
14371         * top.c (struct qt_args) <args>: Remove field.
14372         (kill_or_detach): Don't pass args.
14373         (quit_force): Don't set args.
14374         * windows-nat.c (windows_detach): Remove args parameter.
14375
14376 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14377
14378         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14379         (arm_linux_init_abi): Install it.
14380
14381 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14382
14383         * osabi.c (gdb_osabi_names): Extend the regexp for
14384         arm-linux-gnueabihf.
14385
14386 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14387
14388         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14389         m_abbrevs.
14390         (abbrev_table::add_abbrev): Update.
14391         (abbrev_table::lookup_abbrev): Update.
14392
14393 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14394
14395         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14396
14397 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14398
14399         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14400         to "std::string".
14401
14402 2018-01-17  Tom Tromey  <tom@tromey.com>
14403
14404         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14405
14406 2018-01-17  Tom Tromey  <tom@tromey.com>
14407
14408         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14409         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14410         (create_array_type_with_stride): Update.
14411         * dwarf2read.c (set_die_type): Update.
14412
14413 2018-01-17  Tom Tromey  <tom@tromey.com>
14414
14415         * dwarf2read.c (delayed_method_info): Remove typedef.
14416         (dwarf2_cu::method_info): Now a std::vector.
14417         (add_to_method_list): Update.
14418         (free_delayed_list): Remove.
14419         (compute_delayed_physnames): Update.
14420         (process_full_comp_unit, process_full_type_unit): Clear the method
14421         list.  Remove cleanups.
14422         (psymtab_include_file_name): Add name_holder parameter.  Use
14423         unique_xmalloc_ptr.
14424         (dwarf_decode_lines): Update.
14425
14426 2018-01-17  Tom Tromey  <tom@tromey.com>
14427             Simon Marchi  <simon.marchi@ericsson.com>
14428
14429         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14430         (dwarf2_per_objfile::free_cached_comp_units)
14431         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14432         (init_cutu_and_read_dies_no_follow): Update.
14433         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14434         (dwarf2_cu::~dwarf2_cu): New.
14435         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14436         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14437
14438 2018-01-17  Tom Tromey  <tom@tromey.com>
14439             Simon Marchi  <simon.marchi@ericsson.com>
14440
14441         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14442         (struct die_reader_specs) <abbrev_table>: New member.
14443         (struct abbrev_table): Add constructor.
14444         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14445         <abbrev_obstack>: Now an auto_obstack.
14446         (abbrev_table_up): New typedef.
14447         (init_cu_die_reader): Add abbrev_table parameter.
14448         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14449         Add result_dwo_abbrev_table.
14450         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14451         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14452         Update.
14453         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14454         parameter.
14455         (skip_children): Update.
14456         (abbrev_table::alloc_abbrev): Rename from
14457         abbrev_table_alloc_abbrev.
14458         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14459         (abbrev_table::lookup_abbrev): Rename from
14460         abbrev_table_lookup_abbrev.
14461         (abbrev_table_read_table): Return abbrev_table_up.
14462         (abbrev_table_free, abbrev_table_free_cleanup)
14463         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14464         (load_partial_dies): Update.
14465
14466 2018-01-17  Tom Tromey  <tom@tromey.com>
14467
14468         * dwarf2read.c (dwarf2_compute_name): Update comment.
14469         (read_func_scope, read_variable): Update.
14470         (new_symbol): Remove.
14471         (new_symbol_full): Rename to new_symbol.
14472
14473 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14474
14475         PR gdb/16577
14476         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14477         a warning instead of throwing an error, set section size to 0 and return
14478         NULL.
14479         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14480
14481 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14482
14483         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14484         std::string.
14485         (linux_ptrace_attach_fail_reason_string): Likewise.
14486         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14487         Likewise.
14488         (linux_ptrace_attach_fail_reason_string): Likewise.
14489         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14490
14491 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14492
14493         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14494
14495 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14496
14497         PR gdb/21559
14498         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14499         checking for fs_base/gs_base fields in struct user_regs_struct.
14500         * configure: Regenerate.
14501
14502 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14503
14504         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14505         function.
14506         (aarch64_linux_init_abi): Install it to gdbarch hook
14507         gcc_target_options.
14508
14509 2018-01-15  Pedro Alves  <palves@redhat.com>
14510
14511         * common/signals-state-save-restore.c
14512         (save_original_signals_state): Fix typos.
14513
14514 2017-01-12  Tom Tromey  <tom@tromey.com>
14515             Sergio Durigan Junior  <sergiodj@redhat.com>
14516
14517         * Makefile.in (install-only): Install gdb-add-index.
14518
14519 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14520
14521         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14522
14523 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14524
14525         * infrun.c (keep_going_pass_signal): Clear step-over info when
14526         insert_breakpoints fails.
14527
14528 2018-01-11  Pedro Alves  <palves@redhat.com>
14529
14530         PR gdb/22583
14531         * infrun.c (resume): Rename to ...
14532         (resume_1): ... this.
14533         (resume): Reimplement as wrapper around resume_1.
14534
14535 2018-01-11  Pedro Alves  <palves@redhat.com>
14536
14537         PR remote/22597
14538         * remote.c (remote_parse_stop_reply): Default to the last-set
14539         general thread instead of to 'magic_null_ptid'.
14540
14541 2018-01-10  Pedro Alves  <palves@redhat.com>
14542
14543         * language.h (language_get_symbol_name_matcher): Rename ...
14544         (get_symbol_name_matcher): ... this.
14545         * language.c (language_get_symbol_name_matcher): Ditto.
14546         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14547         callers adjusted.
14548
14549 2018-01-10  Pedro Alves  <palves@redhat.com>
14550
14551         PR gdb/22670
14552         * dwarf2read.c
14553         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14554         Adjust to use language_get_symbol_name_matcher instead of
14555         language_defn::la_get_symbol_name_matcher.
14556         * language.c (language_get_symbol_name_matcher): If in Ada mode
14557         and the lookup name is a verbatim match, return Ada's matcher.
14558         * language.h (language_get_symbol_name_matcher): Adjust comment.
14559         (ada_lookup_name_info::verbatim_p):: New method.
14560
14561 2018-01-10  Pedro Alves  <palves@redhat.com>
14562
14563         PR gdb/22670
14564         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14565         minsym's language is language_auto or language_cplus, pass down
14566         language_ada instead.
14567         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14568
14569 2018-01-10  Pedro Alves  <palves@redhat.com>
14570
14571         PR gdb/22670
14572         * minsyms.c (linkage_name_str): New function.
14573         (iterate_over_minimal_symbols): Use it.
14574
14575 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14576
14577         * NEWS: Document that 'info proc' now works on FreeBSD.
14578
14579 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14580
14581         * configure.ac: Check for kinfo_getfile in libutil.
14582         * configure: Regenerate.
14583         * config.in: Regenerate.
14584         * fbsd-nat.c: Include "fbsd-tdep.h".
14585         (fbsd_fetch_cmdline): New.
14586         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14587         rather than calling error.
14588         (fbsd_info_proc): New.
14589         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14590         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14591         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14592
14593 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14594
14595         * fbsd-nat.c (struct free_deleter): Remove.
14596         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14597
14598 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14599
14600         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14601         NULL for an empty pathname.
14602
14603 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14604
14605         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14606         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14607         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14608         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14609         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14610         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14611         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14612         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14613         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14614         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14615         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14616         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14617         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14618         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14619         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14620
14621 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14622
14623         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14624         (gnu_xfer_auxv): New function.
14625         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14626         TARGET_OBJECT_AUXV.
14627
14628 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14629             Simon Marchi  <simon.marchi@ericsson.com>
14630
14631         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14632         common/selftest.c.
14633         (COMMON_OBS): Remove selftest.o.
14634         * configure.ac: Append selftest-arch.c and common/selftest.c to
14635         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14636         * configure: Re-generated.
14637         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14638         GDB_SELF_TEST.
14639         (maintenance_info_selftests): Likewise.
14640
14641 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14642
14643         * ada-valprint.c (val_print_packed_array_elements): Use
14644         proper number of elements when printing an array indexed
14645         by an enumeration type.
14646
14647 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14648
14649         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14650         (dw2_get_file_names_reader): Adjust.
14651         (lookup_dwo_signatured_type): Adjust.
14652         (lookup_dwp_signatured_type): Adjust.
14653         (lookup_signatured_type): Adjust.
14654         (create_type_unit_group): Adjust.
14655         (get_type_unit_group): Adjust.
14656         (process_psymtab_comp_unit_reader): Adjust.
14657         (build_type_psymtabs_reader): Adjust.
14658         (scan_partial_symbols): Adjust.
14659         (add_partial_symbol): Adjust.
14660         (add_partial_subprogram): Adjust.
14661         (peek_die_abbrev): Adjust.
14662         (fixup_go_packaging): Adjust.
14663         (process_imported_unit_die): Adjust.
14664         (dwarf2_compute_name): Adjust.
14665         (dwarf2_physname): Adjust.
14666         (read_import_statement): Adjust.
14667         (handle_DW_AT_stmt_list): Adjust.
14668         (read_file_scope): Adjust.
14669         (read_func_scope): Adjust.
14670         (read_lexical_block_scope): Adjust.
14671         (read_call_site_scope): Adjust.
14672         (read_variable): Adjust.
14673         (dwarf2_rnglists_process): Adjust.
14674         (dwarf2_ranges_process): Adjust.
14675         (dwarf2_ranges_read): Adjust.
14676         (dwarf2_get_pc_bounds): Adjust.
14677         (dwarf2_record_block_ranges): Adjust.
14678         (dwarf2_add_field): Adjust.
14679         (dwarf2_add_member_fn): Adjust.
14680         (read_structure_type): Adjust.
14681         (process_structure_scope): Adjust.
14682         (read_enumeration_type): Adjust.
14683         (read_array_type): Adjust.
14684         (mark_common_block_symbol_computed): Adjust.
14685         (read_common_block): Adjust.
14686         (read_namespace_type): Adjust.
14687         (read_namespace): Adjust.
14688         (read_module_type): Adjust.
14689         (read_tag_pointer_type): Adjust.
14690         (read_tag_ptr_to_member_type): Adjust.
14691         (read_tag_string_type): Adjust.
14692         (read_subroutine_type): Adjust.
14693         (read_typedef): Adjust.
14694         (read_base_type): Adjust.
14695         (attr_to_dynamic_prop): Adjust.
14696         (read_subrange_type): Adjust.
14697         (read_unspecified_type): Adjust.
14698         (dwarf2_read_abbrevs): Adjust.
14699         (load_partial_dies): Adjust.
14700         (read_partial_die): Adjust.
14701         (find_partial_die): Adjust.
14702         (guess_partial_die_structure_name): Adjust.
14703         (fixup_partial_die): Adjust.
14704         (read_attribute_value): Adjust.
14705         (read_addr_index): Adjust.
14706         (read_addr_index_from_leb128): Adjust.
14707         (read_str_index): Adjust.
14708         (dwarf2_string_attr): Adjust.
14709         (get_debug_line_section): Adjust.
14710         (dwarf_decode_line_header): Adjust.
14711         (lnp_state_machine::check_line_address): Adjust.
14712         (dwarf_decode_lines_1): Adjust.
14713         (dwarf_decode_lines): Adjust.
14714         (dwarf2_start_symtab): Adjust.
14715         (var_decode_location): Adjust.
14716         (new_symbol_full): Adjust.
14717         (dwarf2_const_value_data): Adjust.
14718         (dwarf2_const_value_attr): Adjust.
14719         (dwarf2_const_value): Adjust.
14720         (die_type): Adjust.
14721         (die_containing_type): Adjust.
14722         (build_error_marker_type): Adjust.
14723         (lookup_die_type): Adjust.
14724         (guess_full_die_structure_name): Adjust.
14725         (anonymous_struct_prefix): Adjust.
14726         (determine_prefix): Adjust.
14727         (dwarf2_name): Adjust.
14728         (follow_die_ref_or_sig): Adjust.
14729         (follow_die_offset): Adjust.
14730         (follow_die_ref): Adjust.
14731         (follow_die_sig_1): Adjust.
14732         (follow_die_sig): Adjust.
14733         (get_signatured_type): Adjust.
14734         (get_DW_AT_signature_type): Adjust.
14735         (decode_locdesc): Adjust.
14736         (dwarf_decode_macros): Adjust.
14737         (cu_debug_loc_section): Adjust.
14738         (fill_in_loclist_baton): Adjust.
14739         (dwarf2_symbol_mark_computed): Adjust.
14740         (init_one_comp_unit): Don't assign
14741         dwarf2_cu::dwarf2_per_objfile.
14742         (set_die_type): Adjust.
14743
14744 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14745
14746         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14747         <dwarf2_per_objfile>: New field.
14748         (dwarf2_per_objfile): Remove global.
14749         (get_dwarf2_per_objfile): New function.
14750         (set_dwarf2_per_objfile): New function.
14751         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14752         dwarf2_per_objfile.
14753         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14754         (read_abbrev_offset): Likewise.
14755         (read_indirect_string): Likewise.
14756         (read_indirect_line_string): Likewise.
14757         (read_indirect_string_at_offset): Likewise.
14758         (read_indirect_string_from_dwz): Likewise.
14759         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14760         dwarf2_per_objfile.
14761         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14762         (create_all_comp_units): Change objfile parameter to
14763         dwarf2_per_objfile.
14764         (create_all_type_units): Likewise.
14765         (process_queue): Add dwarf2_per_objfile parameter.
14766         (read_and_check_comp_unit_head): Likewise.
14767         (lookup_dwo_unit_in_dwp): Likewise.
14768         (get_dwp_file): Likewise.
14769         (process_cu_includes): Likewise.
14770         (struct free_dwo_file_cleanup_data): New struct.
14771         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14772         set_dwarf2_per_objfile.
14773         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14774         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14775         context, adjust calls.
14776         (dw2_instantiate_symtab): Likewise.
14777         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14778         (dw2_get_cu): Likewise.
14779         (create_cu_from_index_list): Change objfile parameter to
14780         dwarf2_per_objfile.
14781         (create_cus_from_index_list): Get dwarf2_per_objfile from
14782         context, adjust calls.
14783         (create_cus_from_index): Likewise.
14784         (create_signatured_type_table_from_index): Change objfile
14785         parameter to dwarf2_per_objfile.
14786         (create_signatured_type_table_from_debug_names): Change objfile
14787         parameter to dwarf2_per_objfile.
14788         (create_addrmap_from_index): Likewise.
14789         (create_addrmap_from_aranges): Likewise.
14790         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14791         (dw2_setup): Remove.
14792         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14793         context.
14794         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14795         get_dwarf2_per_objfile.
14796         (dw2_forget_cached_source_info): Likewise.
14797         (dw2_map_symtabs_matching_filename): Likewise.
14798         (struct dw2_symtab_iterator) <index>: Remove.
14799         <dwarf2_per_objfile>: New field.
14800         (dw2_symtab_iter_init): Replace index parameter with
14801         dwarf2_per_objfile.
14802         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14803         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14804         (dw2_print_stats): Likewise.
14805         (dw2_dump): Likewise.
14806         (dw2_expand_symtabs_for_function): Likewise.
14807         (dw2_expand_all_symtabs): Likewise.
14808         (dw2_expand_symtabs_with_fullname): Likewise.
14809         (dw2_expand_marked_cus): Replace index and objfile parameters
14810         with dwarf2_per_objfile.
14811         (dw_expand_symtabs_matching_file_matcher): Add
14812         dwarf2_per_objfile parameter and adjust calls.
14813         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14814         adjust calls.
14815         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14816         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14817         adjust calls.
14818         (create_cus_from_debug_names_list): Replace objfile parameter
14819         with dwarf2_per_objfile and adjust calls.
14820         (create_cus_from_debug_names): Likewise.
14821         (dwarf2_read_debug_names): Likewise.
14822         (mapped_debug_names::namei_to_name): Adjust call.
14823         (dw2_debug_names_iterator::next): Likewise.
14824         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14825         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14826         (dw2_debug_names_dump): Likewise.
14827         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14828         (dw2_debug_names_expand_symtabs_matching): Likewise.
14829         (dwarf2_initialize_objfile): Likewise.
14830         (dwarf2_build_psymtabs): Likewise.
14831         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14832         this_cu.
14833         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14834         (read_and_check_comp_unit_head): Likewise.
14835         (read_abbrev_offset): Likewise.
14836         (create_debug_type_hash_table): Likewise.
14837         (create_debug_types_hash_table): Likewise.
14838         (create_all_type_units): Replace objfile parameter with
14839         dwarf2_per_objfile.
14840         (add_type_unit): Add dwarf2_per_objfile parameter.
14841         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14842         with dwarf2_per_objfile.
14843         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14844         (lookup_dwp_signatured_type): Likewise.
14845         (lookup_signatured_type): Likewise.
14846         (read_cutu_die_from_dwo): Likewise.
14847         (init_tu_and_read_dwo_dies): Likewise.
14848         (init_cutu_and_read_dies): Likewise.
14849         (init_cutu_and_read_dies_no_follow): Likewise.
14850         (allocate_type_unit_groups_table): Add objfile parameter.
14851         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14852         (get_type_unit_group): Likewise.
14853         (process_psymtab_comp_unit): Update call.
14854         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14855         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14856         (print_tu_stats): Likewise.
14857         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14858         in void* parameter.
14859         (build_type_psymtabs): Change objfile parameter to
14860         dwarf2_per_objfile.
14861         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14862         passed in void* parameter.
14863         (process_skeletonless_type_units): Change objfile parameter to
14864         dwarf2_per_objfile.
14865         (set_partial_user): Likewise.
14866         (dwarf2_build_psymtabs_hard): Likewise.
14867         (read_comp_units_from_section): Likewise.
14868         (create_all_comp_units): Likewise.
14869         (scan_partial_symbols): Update calls.
14870         (add_partial_symbol): Likewise.
14871         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14872         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14873         (process_queue): Add dwarf2_per_objfile parameter.
14874         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14875         (compute_compunit_symtab_includes): Likewise.
14876         (process_cu_includes): Add dwarf2_per_objfile parameter.
14877         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14878         (process_full_type_unit): Likewise.
14879         (process_imported_unit_die): Update call.
14880         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14881         (read_file_scope): Likewise.
14882         (allocate_dwo_file_hash_table): Add objfile parameter.
14883         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14884         (create_cus_hash_table): Likewise.
14885         (create_dwp_hash_table): Likewise.
14886         (create_dwo_unit_in_dwp_v1): Likewise.
14887         (create_dwp_v2_section): Likewise.
14888         (create_dwo_unit_in_dwp_v2): Likewise.
14889         (lookup_dwo_unit_in_dwp): Likewise.
14890         (try_open_dwop_file): Likewise.
14891         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14892         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14893         cleanup to include a reference to dwarf2_per_objfile.
14894         (open_dwp_file): Add dwarf2_per_objfile parameter.
14895         (open_and_init_dwp_file): Likewise.
14896         (get_dwp_file): Likewise.
14897         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14898         (queue_and_load_all_dwo_tus): Update call.
14899         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14900         data.
14901         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14902         (dwarf2_ranges_process): Likewise.
14903         (dwarf2_get_pc_bounds): Likewise.
14904         (mark_common_block_symbol_computed): Likewise.
14905         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14906         (dwarf2_read_abbrevs): Update call.
14907         (read_partial_die): Use dwarf2_per_objfile from cu.
14908         (find_partial_die): Likewise.
14909         (fixup_partial_die): Likewise.
14910         (read_attribute_value): Likewise.
14911         (read_indirect_string_at_offset_from): Add objfile parameter.
14912         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14913         parameter.
14914         (read_indirect_string_from_dwz): Add objfile parameter.
14915         (read_indirect_string): Add objfile parameter.
14916         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14917         (read_addr_index): Use dwarf2_per_objfile from cu.
14918         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14919         call dw2_setup.
14920         (read_str_index): Use dwarf2_per_objfile from cu.
14921         (get_debug_line_section): Likewise.
14922         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14923         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14924         (new_symbol_full): Use dwarf2_per_objfile from cu.
14925         (build_error_marker_type): Likewise.
14926         (lookup_die_type): Likewise.
14927         (determine_prefix): Likewise.
14928         (follow_die_offset): Likewise.
14929         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14930         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14931         (dwarf2_fetch_die_type_sect_off): Likewise.
14932         (dwarf2_get_die_type): Likewise.
14933         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14934         (get_signatured_type): Likewise.
14935         (get_DW_AT_signature_type): Likewise.
14936         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14937         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14938         (cu_debug_loc_section): Likewise.
14939         (fill_in_loclist_baton): Likewise.
14940         (dwarf2_symbol_mark_computed): Likewise.
14941         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14942         dwarf2_per_objfile.
14943         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14944         parameter.
14945         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14946         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14947         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14948         (set_die_type): Use dwarf2_free_objfile from cu.
14949         (get_die_type_at_offset): Likewise.
14950         (dwarf2_per_objfile_free): Don't assign global variable.
14951         (debug_names) <constructor>: Add dwarf2_per_objfile
14952         parameter, update m_debugstrlookup construction.
14953         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14954         parameter.
14955         <m_dwarf2_per_objfile>: New field.
14956         <lookup>: Use m_dwarf2_per_objfile.
14957         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14958         (psyms_seen_size): Likewise.
14959         (write_gdbindex): Replace objfile parameter with
14960         dwarf2_per_objfile.
14961         (write_debug_names): Likewise.
14962         (write_psymtabs_to_index): Likewise.
14963         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14964         calls.
14965
14966 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14967
14968         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14969         <dwarf2_per_objfile>: New field.
14970         (struct dwarf2_per_cu_data) <objfile>: Remove.
14971         <dwarf2_per_objfile>: New field.
14972         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14973         of objfile.
14974         (create_signatured_type_table_from_index): Likewise.
14975         (create_debug_type_hash_table): Likewise.
14976         (fill_in_sig_entry_from_dwo_entry): Likewise.
14977         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14978         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14979         objfile.
14980         (create_partial_symtab): Access objfile through
14981         dwarf2_per_objfile.
14982         (process_psymtab_comp_unit_reader): Likewise.
14983         (read_comp_units_from_section): Likewise.
14984         (scan_partial_symbols): Likewise.
14985         (add_partial_symbol): Likewise.
14986         (add_partial_subprogram): Likewise.
14987         (peek_die_abbrev): Likewise.
14988         (fixup_go_packaging): Likewise.
14989         (process_full_comp_unit): Likewise.
14990         (process_full_type_unit): Likewise.
14991         (process_imported_unit_die): Likewise.
14992         (dwarf2_compute_name): Likewise.
14993         (dwarf2_physname): Likewise.
14994         (read_import_statement): Likewise.
14995         (create_cus_hash_table): Assign dwarf2_physname instead of
14996         objfile.
14997         (read_func_scope): Access objfile through dwarf2_per_objfile.
14998         (read_lexical_block_scope): Likewise.
14999         (read_call_site_scope): Likewise.
15000         (read_variable): Likewise.
15001         (dwarf2_rnglists_process): Likewise.
15002         (dwarf2_ranges_process): Likewise.
15003         (dwarf2_ranges_read): Likewise.
15004         (dwarf2_record_block_ranges): Likewise.
15005         (dwarf2_add_field): Likewise.
15006         (dwarf2_add_member_fn): Likewise.
15007         (read_structure_type): Likewise.
15008         (process_structure_scope): Likewise.
15009         (read_enumeration_type): Likewise.
15010         (read_array_type): Likewise.
15011         (read_common_block): Likewise.
15012         (read_namespace_type): Likewise.
15013         (read_namespace): Likewise.
15014         (read_module_type): Likewise.
15015         (read_tag_pointer_type): Likewise.
15016         (read_tag_ptr_to_member_type): Likewise.
15017         (read_tag_string_type): Likewise.
15018         (read_subroutine_type): Likewise.
15019         (read_typedef): Likewise.
15020         (read_base_type): Likewise.
15021         (attr_to_dynamic_prop): Likewise.
15022         (read_subrange_type): Likewise.
15023         (read_unspecified_type): Likewise.
15024         (load_partial_dies): Likewise.
15025         (read_partial_die): Likewise.
15026         (find_partial_die): Likewise.
15027         (guess_partial_die_structure_name): Likewise.
15028         (fixup_partial_die): Likewise.
15029         (read_attribute_value): Likewise.
15030         (read_addr_index_from_leb128): Likewise.
15031         (dwarf2_read_addr_index): Likewise.
15032         (dwarf2_string_attr): Likewise.
15033         (lnp_state_machine::check_line_address): Likewise.
15034         (dwarf_decode_lines_1): Likewise.
15035         (dwarf_decode_lines): Likewise.
15036         (dwarf2_start_symtab): Likewise.
15037         (var_decode_location): Likewise.
15038         (new_symbol_full): Likewise.
15039         (dwarf2_const_value_data): Likewise.
15040         (dwarf2_const_value_attr): Likewise.
15041         (dwarf2_const_value): Likewise.
15042         (die_type): Likewise.
15043         (die_containing_type): Likewise.
15044         (lookup_die_type): Likewise.
15045         (guess_full_die_structure_name): Likewise.
15046         (anonymous_struct_prefix): Likewise.
15047         (dwarf2_name): Likewise.
15048         (follow_die_ref_or_sig): Likewise.
15049         (follow_die_offset): Likewise.
15050         (follow_die_ref): Likewise.
15051         (dwarf2_fetch_die_loc_sect_off): Likewise.
15052         (dwarf2_fetch_constant_bytes): Likewise.
15053         (dwarf2_fetch_die_type_sect_off): Likewise.
15054         (dwarf2_get_die_type): Likewise.
15055         (follow_die_sig): Likewise.
15056         (decode_locdesc): Likewise.
15057         (dwarf2_per_cu_objfile): Likewise.
15058         (dwarf2_per_cu_text_offset): Likewise.
15059         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15060         objfile.
15061         (set_die_type): Access objfile through
15062         dwarf2_per_objfile.
15063
15064 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15065
15066         * valprint.c (converted_character_d): Remove typedef.
15067         (DEF_VEC_O (converted_character_d)): Remove.
15068         (count_next_character): Use std::vector.
15069         (print_converted_chars_to_obstack): Likewise.
15070         (generic_printstr): Likewise.
15071
15072 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15073
15074         * xml-support.h (struct gdb_xml_value): Add constructor.
15075         <value>: Change type to unique_xmalloc_ptr.
15076         (gdb_xml_value_s): Remove typedef.
15077         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15078         (gdb_xml_element_start_handler): Change parameter type to
15079         std::vector.
15080         (xml_find_attribute): Likewise.
15081         * xml-support.c (xml_find_attribute): Change parameter type to
15082         std::vector and adjust.
15083         (gdb_xml_values_cleanup): Remove.
15084         (gdb_xml_parser::start_element): Adjust to std::vector.
15085         (xinclude_start_include): Change paraeter type to std::vector
15086         and adjust.
15087         * btrace.c (check_xml_btrace_version): Likewise.
15088         (parse_xml_btrace_block): Likewise.
15089         (parse_xml_btrace_pt_config_cpu): Likewise.
15090         (parse_xml_btrace_pt): Likewise.
15091         (parse_xml_btrace_conf_bts): Likewise.
15092         (parse_xml_btrace_conf_pt): Likewise.
15093         * memory-map.c (memory_map_start_memory): Likewise.
15094         (memory_map_start_property): Likewise.
15095         * osdata.c (osdata_start_osdata): Likewise.
15096         (osdata_start_item): Likewise.
15097         (osdata_start_column): Likewise.
15098         * remote.c (start_thread): Likewise.
15099         * solib-aix.c (library_list_start_library): Likewise.
15100         (library_list_start_list): Likewise.
15101         * solib-svr4.c (library_list_start_library): Likewise.
15102         (svr4_library_list_start_list): Likewise.
15103         * solib-target.c (library_list_start_segment): Likewise.
15104         (library_list_start_section): Likewise.
15105         (library_list_start_library): Likewise.
15106         (library_list_start_list): Likewise.
15107         * tracepoint.c (traceframe_info_start_memory): Likewise.
15108         (traceframe_info_start_tvar): Likewise.
15109         * xml-syscall.c (syscall_start_syscall): Likewise.
15110         * xml-tdesc.c (tdesc_start_target): Likewise.
15111         (tdesc_start_feature): Likewise.
15112         (tdesc_start_reg): Likewise.
15113         (tdesc_start_union): Likewise.
15114         (tdesc_start_struct): Likewise.
15115         (tdesc_start_flags): Likewise.
15116         (tdesc_start_enum): Likewise.
15117         (tdesc_start_field): Likewise.
15118         (tdesc_start_enum_value): Likewise.
15119         (tdesc_start_vector): Likewise.
15120
15121 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15122
15123         * extension.h (struct xmethod_worker) <clone>: Remove.
15124         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15125         Remove.
15126         (python_xmethod_worker::clone): Remove.
15127         * valops.c (find_overload_match): Use std::move instead of
15128         clone.
15129
15130 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15131
15132         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15133         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15134         <free_xmethod_worker_data>: Remove.
15135         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15136         <get_xmethod_arg_types>: Remove.
15137         <get_xmethod_result_type>: Remove.
15138         <invoke_xmethod>: Remove.
15139         * extension.c (new_xmethod_worker): Remove.
15140         (clone_xmethod_worker): Remove.
15141         (get_matching_xmethod_workers): Return void, pass std::vector by
15142         pointer.
15143         (get_xmethod_arg_types): Rename to...
15144         (xmethod_worker::get_arg_types): ... this, and adjust.
15145         (get_xmethod_result_type): Rename to...
15146         (xmethod_worker::get_result_type): ... this, and adjust.
15147         (invoke_xmethod): Remove.
15148         (free_xmethod_worker): Remove.
15149         (free_xmethod_worker_vec): Remove.
15150         * extension.h (enum ext_lang_rc): Move here from
15151         extension-priv.h.
15152         (struct xmethod_worker): Add constructor and destructor.
15153         <data>: Remove.
15154         <value>: Remove.
15155         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15156         virtual pure methods.
15157         <get_arg_types, get_result_type>: New methods.
15158         (xmethod_worker_ptr): Remove typedef.
15159         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15160         (xmethod_worker_vec): Remove typedef.
15161         (xmethod_worker_up): New typedef.
15162         (invoke_xmethod): Remove.
15163         (clone_xmethod_worker): Remove.
15164         (free_xmethod_worker): Remove.
15165         (free_xmethod_worker_vec): Remove.
15166         (get_xmethod_arg_types): Remove.
15167         (get_xmethod_result_type): Remove.
15168         * valops.c (find_method_list): Use std::vector, don't use
15169         intermediate vector.
15170         (value_find_oload_method_list): Use std::vector.
15171         (find_overload_match): Use std::vector.
15172         (find_oload_champ): Use std::vector.
15173         * value.c (value_free): Use operator delete.
15174         (value_of_xmethod): Rename to...
15175         (value_from_xmethod): ... this.  Don't assign
15176         xmethod_worker::value, take rvalue-reference.
15177         (result_type_of_xmethod): Adjust.
15178         (call_xmethod): Adjust.
15179         * value.h: Include extension.h.
15180         (struct xmethod_worker): Don't forward-declare.
15181         (value_of_xmethod): Rename to...
15182         (value_from_xmethod): ... this, take rvalue-reference.
15183         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15184         (struct python_xmethod_worker): ... this, add constructor and
15185         destructor.
15186         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15187         (gdbpy_free_xmethod_worker_data): Rename to...
15188         (python_xmethod_worker::~python_xmethod_worker): ... this and
15189         adjust.
15190         (gdbpy_clone_xmethod_worker_data): Rename to...
15191         (python_xmethod_worker::clone): ... this and adjust.
15192         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15193         temporary vector.
15194         (gdbpy_get_xmethod_arg_types): Rename to...
15195         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15196         (gdbpy_get_xmethod_result_type): Rename to...
15197         (python_xmethod_worker::do_get_result_type): ... this and
15198         adjust.
15199         (gdbpy_invoke_xmethod): Rename to...
15200         (python_xmethod_worker::invoke): ... this and adjust.
15201         (new_python_xmethod_worker): Rename to...
15202         (python_xmethod_worker::python_xmethod_worker): ... this and
15203         adjust.
15204         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15205         Remove.
15206         (gdbpy_free_xmethod_worker_data): Remove.
15207         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15208         (gdbpy_get_xmethod_arg_types): Remove.
15209         (gdbpy_get_xmethod_result_type): Remove.
15210         (gdbpy_invoke_xmethod): Remove.
15211         * python/python.c (python_extension_ops): Remove obsolete
15212         callbacks.
15213
15214 2018-01-05  Pedro Alves  <palves@redhat.com>
15215
15216         PR gdb/18653
15217         * common/signals-state-save-restore.c
15218         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15219         find a custom handler preinstalled, instead of internal erroring.
15220         But only warn if !quiet.
15221         * common/signals-state-save-restore.h
15222         (save_original_signals_state): New parameter 'quiet'.
15223         * main.c (captured_main_1): Move save_original_signals_state call
15224         after option handling, and pass QUIET.
15225
15226 2018-01-05  Pedro Alves  <palves@redhat.com>
15227
15228         * spu-tdep.c (spu_catch_start): Pass
15229         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15230
15231 2018-01-05  Pedro Alves  <palves@redhat.com>
15232
15233         PR gdb/22670
15234         * ada-lang.c (literal_symbol_name_matcher): New function.
15235         (ada_get_symbol_name_matcher): Use it for
15236         symbol_name_match_type::SEARCH_NAME.
15237         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15238         it down instead of assuming symbol_name_match_type::FULL.
15239         * block.h (block_lookup_symbol): New parameter 'match_type'.
15240         * c-valprint.c (print_unpacked_pointer): Use
15241         lookup_symbol_search_name instead of lookup_symbol.
15242         * compile/compile-object-load.c (get_out_value_type): Pass down
15243         symbol_name_match_type::SEARCH_NAME.
15244         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15245         symbol_name_match_type::FULL.
15246         * cp-support.c (cp_get_symbol_name_matcher): Handle
15247         symbol_name_match_type::SEARCH_NAME.
15248         * infrun.c (insert_exception_resume_breakpoint): Use
15249         lookup_symbol_search_name.
15250         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15251         * psymtab.c (maintenance_check_psymtabs): Use
15252         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15253         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15254         SYMBOL_SEARCH_NAME.
15255         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15256         if symbol_name_match_type::SEARCH_NAME.
15257         (lookup_symbol_in_language): Pass down
15258         symbol_name_match_type::FULL.
15259         (lookup_symbol_search_name): New.
15260         (lookup_language_this): Pass down
15261         symbol_name_match_type::SEARCH_NAME.
15262         (lookup_symbol_aux, lookup_local_symbol): New parameter
15263         'match_type'.  Pass it down.
15264         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15265         (lookup_symbol_search_name): New declaration.
15266         (lookup_symbol_in_block): New 'match_type' parameter.
15267
15268 2018-01-05  Pedro Alves  <palves@redhat.com>
15269
15270         PR gdb/22670
15271         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15272         ada_lookup_symbol.
15273         (ada_lookup_symbol): Reimplement in terms of
15274         ada_lookup_symbol_list, bits factored out from
15275         ada_lookup_encoded_symbol.
15276
15277 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15278
15279         * ada-exp.y (write_object_renaming): When subscripting an array
15280         using a symbol as the index, pass the block in call to
15281         ada_lookup_encoded_symbol when looking that symbol up.
15282
15283 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15284
15285         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15286         TYPE_INDEX_TYPE.
15287
15288 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15289
15290         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15291         the case where VALUE_LVAL (val0) is not lval_memory.
15292
15293 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15294
15295         * ada-valprint.c (print_optional_low_bound): Handle
15296         character-indexed array printing like boolean-indexed array
15297         printing.
15298
15299 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15300
15301         * NEWS: Create a new section for the next release branch.
15302         Rename the section of the current branch, now that it has
15303         been cut.
15304
15305 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15306
15307         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15308         * version.in: Bump version to 8.1.50.DATE-git.
15309
15310 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15311
15312         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15313         Add field.
15314         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15315         Add field.
15316         (default_exception_support_info) <catch_handlers_sym>: Add field.
15317         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15318         (ada_exception_name_addr_1): Add "catch handlers" handling.
15319         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15320         Update all callers.
15321         (create_excep_cond_exprs) <ex>: Add parameter.
15322         (re_set_exception): Update create_excep_cond_exprs call.
15323         (print_it_exception, print_one_exception, print_mention_exception)
15324         (print_recreate_exception): Add "catch handler" handling.
15325         (allocate_location_catch_handlers, re_set_catch_handlers)
15326         (check_status_catch_handlers, print_it_catch_handlers)
15327         (print_one_catch_handlers, print_mention_catch_handlers)
15328         (print_recreate_catch_handlers): New function.
15329         (catch_handlers_breakpoint_ops): New variable.
15330         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15331         Add parameter.  Add "catch handler" handling.
15332         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15333         Add "catch handler" handling.
15334         (ada_exception_catchpoint_cond_string): Add "catch handler"
15335         handling.
15336         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15337         call.
15338         (catch_ada_handlers_command): New function.
15339         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15340         operations structure.
15341         (_initialize_ada_language): Add "catch handlers" command entry.
15342         * NEWS: Document "catch handlers" feature.
15343
15344 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15345
15346         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15347         account when creating the array type of the slice.
15348         (ada_value_slice): Likewise.
15349
15350 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15351
15352         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15353         New enum value.
15354         (create_array_type_with_stride): Add byte_stride_prop parameter.
15355         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15356         New parameter.  Update all callers in this file.
15357         (array_type_has_dynamic_stride): New function.
15358         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15359         of arrays with dynamic byte strides.
15360         * dwarf2read.c (read_array_type): Add support for dynamic
15361         DW_AT_byte_stride attributes.
15362
15363 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15364
15365         * dwarf2read.c (read_unspecified_type): Treat
15366         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15367
15368 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15369
15370         Update copyright year range in all GDB files.
15371
15372 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15373
15374         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15375         and gdb/testsuite/gdb.base/step-line.c.
15376
15377 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15378
15379         * copyright.py (main): Dump the contents of
15380         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15381         even if BY_HAND is empty.
15382
15383 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15384
15385         * top.c (print_gdb_version): Update Copyright year in version
15386         message.
15387
15388 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15389
15390         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15391
15392 For older changes see ChangeLog-2017.
15393 \f
15394 Local Variables:
15395 mode: change-log
15396 left-margin: 8
15397 fill-column: 74
15398 version-control: never
15399 coding: utf-8
15400 End: