Import mkdtemp gnulib module, fix mingw build
[external/binutils.git] / gdb / ChangeLog
1 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
2
3         * common/pathstuff.c (get_standard_temp_dir): New.
4         * common/pathstuff.h (get_standard_temp_dir): New.
5         * config.in: Re-generate.
6         * configure: Re-generate.
7         * configure.ac: Don't check for mkdtemp.
8         * gnulib/aclocal-m4-deps.mk: Re-generate.
9         * gnulib/aclocal.m4: Re-generate.
10         * gnulib/config.in: Re-generate.
11         * gnulib/configure: Re-generate.
12         * gnulib/import/Makefile.am: Re-generate.
13         * gnulib/import/Makefile.in: Re-generate.
14         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
15         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
16         * gnulib/import/m4/mkdtemp.m4: New file.
17         * gnulib/import/mkdtemp.c: New file.
18         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
19         Add mkdtemp module.
20         * unittests/mkdir-recursive-selftests.c (test): Use
21         get_standard_temp_dir.
22         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
23         ifdef.
24         * compile/compile.c (get_compile_file_tempdir): Likewise.
25
26 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
27
28         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
29         (SIG_FRAME_LR_OFFSET64): New define.
30         (SIG_FRAME_FP_OFFSET64): New define.
31         (aix_sighandle_frame_cache): New Function.
32         (aix_sighandle_frame_this_id): New Function.
33         (aix_sighandle_frame_prev_register): New Function.
34         (aix_sighandle_frame_sniffer): New Function.
35         (aix_sighandle_frame_unwind): New global variable.
36         (rs6000_aix_init_osabi): Install new frame unwinder.
37
38 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
39
40         PR gdb/23835
41         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
42         already defined.
43
44 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
45
46         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
47
48 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
49
50         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
51         (producer_is_icc): New function.
52         (check_producer): Set producer_is_icc field on dwarf2_cu.
53         (dwarf2_init_integer_type): New function.
54         (read_base_type): Call dwarf2_init_integer_type instead of
55         init_integer_type in all cases.
56         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
57         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
58         LEN is greater than 0.
59
60 2018-10-30  Tom Tromey  <tom@tromey.com>
61
62         * main.c (captured_main_1): Check return value of bfd_init.
63
64 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
65
66         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
67         Adjust comments.
68
69 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
70
71         * procfs.c: Include common/pathstuff.h.
72
73 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
74
75         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
76         Add missing braces.  No functional change.
77
78 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
79
80         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
81         to report a bad option and fix indentation.
82         * demangle.c (demangle_command): Use report_unrecognized_option_error
83         to report a bad option and correctly report the bad option.
84
85 2018-10-27  Tom Tromey  <tom@tromey.com>
86
87         PR cli/23364:
88         * darwin-nat.c (copied_shell): New global.
89         (may_have_sip): Rename from should_disable_startup_with_shell.
90         (copy_shell_to_cache, maybe_cache_shell): New functions.
91         (darwin_nat_target::create_inferior): Update.  Use
92         copied_shell.
93
94 2018-10-27  Tom Tromey  <tom@tromey.com>
95
96         * unittests/scoped_fd-selftests.c (test_to_file): New function.
97         (run_tests): Call test_to_file.
98         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
99         temporary files.
100         * common/scoped_fd.h (scoped_fd::to_file): New method.
101
102 2018-10-27  Tom Tromey  <tom@tromey.com>
103
104         * unittests/scoped_mmap-selftests.c (test_normal): Use
105         gdb_mkostemp_cloexec.
106         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
107         Use gdb_mkostemp_cloexec.
108         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
109         gnulib/config.in, gnulib/configure,
110         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
111         gnulib/import/m4/gnulib-cache.m4,
112         gnulib/import/m4/gnulib-comp.m4: Update.
113         * gnulib/import/m4/mkostemp.m4: New file.
114         * gnulib/import/m4/mkstemp.m4: Remove.
115         * gnulib/import/mkostemp.c: New file.
116         * gnulib/import/mkstemp.m4: Remove.
117         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
118         mkstemp, add mkostemp.  Apply new patch.
119         * gnulib/import/stdlib.in.h: Apply patch.
120         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
121         New file.
122         * dwarf-index-write.c (write_psymtabs_to_index): Use
123         gdb_mkostemp_cloexec.
124         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
125
126 2018-10-27  Tom Tromey  <tom@tromey.com>
127
128         * unittests/mkdir-recursive-selftests.c: New file.
129         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
130         unittests/mkdir-recursive-selftests.c.
131         * dwarf-index-cache.c (mkdir_recursive): Move to
132         common/filestuff.c.
133         (index_cache::store): Check return value of mkdir_recursive.
134         (create_dir_and_check, test_mkdir_recursive): Move to new file.
135         (_initialize_index_cache): Don't register test.
136         * common/filestuff.h (mkdir_recursive): Declare.
137         * common/filestuff.c (mkdir_recursive): Move from
138         dwarf-index-cache.c.  Return bool.
139
140 2018-10-27  Tom Tromey  <tom@tromey.com>
141
142         * dwarf-index-write.c (write_psymtabs_to_index): Move
143         make_temp_filename to common/pathstuff.c.
144         * common/pathstuff.h (make_temp_filename): Declare.
145         * common/pathstuff.c (make_temp_filename): New function, moved
146         from dwarf-index-write.c.
147
148 2018-10-27  Tom Tromey  <tom@tromey.com>
149
150         * procfs.c (procfs_target::create_inferior): Use get_shell.
151         * cli/cli-cmds.c (shell_escape): Use get_shell.
152         * windows-nat.c (windows_nat_target::create_inferior): Use
153         get_shell.
154         * common/pathstuff.c (get_shell): New function.
155         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
156         (fork_inferior): Use get_shell.
157         * common/pathstuff.h (get_shell): Declare.
158
159 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
160
161         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
162
163 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
164
165         * stack.c (print_variable_and_value_data): Add preg and treg.
166         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
167         and update callers.
168         (print_frame_arg_vars): Likewise.
169         (prepare_reg): New function.
170         (info_locals_command): Extract info print args and use them.
171         (info_args_command): Likewise.
172         (_initialize_stack): Modify on-line help.
173         * symtab.c (treg_matches_sym_type_name): New function.
174         (search_symbols): New arg t_regexp.
175         (symtab_symbol_info): New args quiet, regexp, t_regexp.
176         (info_variables_command): Extract info print args and use them.
177         (info_functions_command): Likewise.
178         (info_types_command): Update call to symtab_symbol_info.
179         (_initialize_symtab): Modify on-line help.
180         * symtab.h (treg_matches_sym_type_name): New function.
181         (search_symbols): New t_regexp arg.
182
183 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
184
185         * cli-utils.c (extract_arg_maybe_quoted): New function.
186         (extract_info_print_args): New function.
187         (info_print_args_help): New function.
188         (report_unrecognized_option_error): New function.
189         * cli-utils.h (extract_arg_maybe_quoted): New function.
190         (extract_info_print_args): New function.
191         (info_print_args_help): New function.
192         (report_unrecognized_option_error): New function.
193
194 2018-10-26  Tom Tromey  <tom@tromey.com>
195
196         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
197         (compute_compunit_symtab_includes): Update.
198         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
199         (compunit_symtab_ptr): Likewise.
200
201 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
202
203         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
204         default_print_auxv_entry for specific tag values.
205
206 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
207
208         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
209
210 2018-10-26  Jim Wilson  <jimw@sifive.com>
211
212         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
213         (riscv_linux_sigframe_init): Declare.
214         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
215         (riscv_linux_sigframe): New.
216         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
217         (riscv_linux_sigframe_init): Define.
218         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
219
220         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
221         (riscv_isa_flen): Likewise.  Drop static.
222         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
223         (riscv_isa_flen): Likewise.  Declare.
224
225 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
226             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
227
228         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
229         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
230         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
231         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
232         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
233         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
234         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
235         Define.
236         (struct ppc_linux_features) <htm>: New field.
237         (ppc_linux_no_features): Add initializer for htm field.
238         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
239         new tdescs.
240         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
241         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
242         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
243         Define if not already defined.
244         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
245         and rs6000/powerpc-isa207-htm-vsx64l.
246         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
247         rs6000/powerpc-isa207-htm-vsx64l.xml.
248         * features/rs6000/power-htm-spr.xml: New file.
249         * features/rs6000/power-htm-core.xml: New file.
250         * features/rs6000/power64-htm-core.xml: New file.
251         * features/rs6000/power-htm-fpu.xml: New file.
252         * features/rs6000/power-htm-altivec.xml: New file.
253         * features/rs6000/power-htm-vsx.xml: New file.
254         * features/rs6000/power-htm-ppr.xml: New file.
255         * features/rs6000/power-htm-dscr.xml: New file.
256         * features/rs6000/power-htm-tar.xml: New file.
257         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
258         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
259         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
260         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
261         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
262         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
263         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
264         fetch_regset with HTM regsets.
265         (store_register, store_ppc_registers): Call store_regset with HTM
266         regsets.
267         (ppc_linux_nat_target::read_description): Set htm field in the
268         features struct if needed.
269         * ppc-linux-tdep.c: Include
270         features/rs6000/powerpc-isa207-htm-vsx32l.c and
271         features/rs6000/powerpc-isa207-htm-vsx64l.c.
272         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
273         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
274         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
275         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
276         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
277         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
278         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
279         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
280         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
281         (ppc32_linux_ctarregset): New globals.
282         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
283         (ppc_linux_collect_core_cpgrregset): New function.
284         (ppc_linux_iterate_over_regset_sections): Call back with the htm
285         regsets.
286         (ppc_linux_core_read_description): Check if the tm spr section is
287         present and set htm in the features struct.
288         (_initialize_ppc_linux_tdep): Call
289         initialize_tdesc_powerpc_isa207_htm_vsx32l and
290         initialize_tdesc_powerpc_isa207_htm_vsx64l.
291         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
292         Declare.
293         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
294         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
295         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
296         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
297         New fields.
298         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
299         Likewise.
300         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
301         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
302         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
303         New enum fields.
304         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
305         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
306         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
307         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
308         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
309         <PPC_CTAR_REGNUM>: Likewise.
310         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
311         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
312         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
313         (IS_CEFP_PSEUDOREG): Define.
314         (rs6000_register_name): Hide the upper halves of checkpointed VSX
315         registers.  Return names for the checkpointed DFP, VSX, and EFP
316         pseudo registers.
317         (rs6000_pseudo_register_type): Remove initial assert and raise an
318         internal error in the else clause instead.  Return types for the
319         checkpointed DFP, VSX, and EFP pseudo registers.
320         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
321         checkpointed DFP pseudo registers.
322         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
323         checkpointed VSX pseudo registers.
324         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
325         from efpr_pseudo_register_read and
326         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
327         registers.
328         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
329         Handle checkpointed DFP, VSX, and EFP registers.
330         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
331         (efp_ax_pseudo_register_collect): New functions.
332         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
333         register logic to new functions.  Handle checkpointed DFP, VSX,
334         and EFP pseudo registers.
335         (rs6000_gdbarch_init): Look for and validate the htm features.
336         Include checkpointed DFP, VSX and EFP pseudo-registers.
337         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
338         HTM registers.
339
340 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
341
342         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
343         without altivec or fpu.
344
345 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
346             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
347
348         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
349         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
350         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
351         Define if not already defined.
352         * features/rs6000/power-ebb.xml: New file.
353         * features/rs6000/power-linux-pmu.xml: New file.
354         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
355         features.
356         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
357         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
358         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
359         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
360         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
361         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
362         fetch_regset with ebb and pmu regsets.
363         (store_register, store_ppc_registers): Call store_regset with ebb
364         and pmu regsets.
365         (ppc_linux_nat_target::read_description): Set isa207 field in the
366         features struct if ebb and pmu are avaiable.
367         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
368         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
369         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
370         and pmu regsets.
371         (ppc_linux_core_read_description): Check if the pmu section is
372         present and set isa207 in the features struct.
373         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
374         (ppc32_linux_pmuregset): Declare.
375         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
376         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
377         <ppc_sier_regnum>: New field.
378         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
379         New enum values.
380         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
381         values.
382         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
383         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
384         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
385         ebb and pmu features.
386
387 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
388             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
389
390         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
391         (tdesc_powerpc_isa207_vsx64l): Declare.
392         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
393         (struct ppc_linux_features) <isa207>: New field.
394         (ppc_linux_no_features): Add initializer for isa207 field.
395         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
396         new tdescs.
397         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
398         (NT_PPC_TAR): Define if not already defined.
399         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
400         rs6000/powerpc-isa207-vsx64l.
401         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
402         rs6000/powerpc-isa207-vsx64l.xml.
403         * features/rs6000/power-tar.xml: New file.
404         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
405         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
406         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
407         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
408         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
409         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
410         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
411         fetch_regset with the TAR regset.
412         (store_register, store_ppc_registers): Call store_regset with the
413         TAR regset.
414         (ppc_linux_nat_target::read_description): Set isa207 field in the
415         features struct if needed.
416         * ppc-linux-tdep.c: Include
417         features/rs6000/powerpc-isa207-vsx32l.c and
418         features/rs6000/powerpc-isa207-vsx64l.c.
419         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
420         (ppc_linux_iterate_over_regset_sections): Call back with the tar
421         regset.
422         (ppc_linux_core_read_description): Check if the tar section is
423         present and set isa207 in the features struct.
424         (_initialize_ppc_linux_tdep): Call
425         initialize_tdesc_powerpc_isa207_vsx32l and
426         initialize_tdesc_powerpc_isa207_vsx64l.
427         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
428         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
429         (enum) <PPC_TAR_REGNUM>: New enum value.
430         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
431         feature.
432         (ppc_process_record_op31): Record changes to TAR.
433
434 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
435             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
436
437         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
438         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
439         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
440         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
441         (struct ppc_linux_features) <ppr_dscr>: New field.
442         (ppc_linux_no_features): Add initializer for ppr_dscr field.
443         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
444         new tdescs.
445         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
446         Define if not already defined.
447         * features/Makefile (WHICH): Add
448         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
449         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
450         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
451         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
452         * features/rs6000/power-dscr.xml: New file.
453         * features/rs6000/power-ppr.xml: New file.
454         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
455         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
456         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
457         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
458         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
459         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
460         * ppc-linux-nat.c: Include <sys/uio.h>.
461         (fetch_regset, store_regset, check_regset): New functions.
462         (fetch_register, fetch_ppc_registers): Call fetch_regset with
463         DSCR and PPR regsets.
464         (store_register, store_ppc_registers): Call store_regset with
465         DSCR and PPR regsets.
466         (ppc_linux_get_hwcap2): New function.
467         (ppc_linux_nat_target::read_description): Call
468         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
469         features struct if needed.
470         * ppc-linux-tdep.c: Include
471         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
472         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
473         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
474         (ppc32_linux_dscrregset): New globals.
475         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
476         and dscr regsets.
477         (ppc_linux_core_read_description): Check if the ppr and dscr
478         sections are present and set ppr_dscr in the features struct.
479         (_initialize_ppc_linux_tdep): Call
480         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
481         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
482         * ppc-linux-tdep.h (ppc32_linux_pprregset)
483         (ppc32_linux_dscrregset): Declare.
484         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
485         <ppc_dscr_regnum>: New field.
486         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
487         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
488         and dscr features.
489         (ppc_process_record_op31): Record changes to PPR and DSCR.
490
491 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
492
493         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
494         second initializer line for the have_* variables.  Initialize
495         have_fpu to 0 instead of 1.
496
497 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
498
499         * arch/ppc-linux-common.c (ppc_linux_match_description):
500         Parenthesize tdesc assignements and indent them properly.
501
502 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
503
504         * ppc-linux-nat.c (fetch_register): Change if statement to else
505         if.
506         (store_register): Likewise.
507
508 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
509
510         * rs6000-tdep.c: Remove reggroups.h include.
511         (rs6000_pseudo_register_reggroup_p): Remove.
512         (rs6000_gdbarch_init): Remove call to
513         set_tdesc_pseudo_register_reggroup_p.
514
515 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
516
517         * reggroups.c (default_register_reggroup_p): Return true for
518         decfloat registers and float_reggroup.
519
520 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
521
522         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
523         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
524         ppc_linux_collect_vrregset by regcache_collect_regset.
525
526 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
527
528         * linux-tdep.c (linux_collect_regset_section_cb): Use
529         std::vector<gdb_byte> instead of char * and malloc for buf.
530         Remove xfree.
531
532 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
533
534         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
535         symtab_start instead of always using language_unknown.
536
537 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
538
539         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
540         READ_P parameter, catch and ignore register access errors from
541         either the old or new MISA location.
542         (riscv_has_feature): Update call to riscv_read_misa_reg.
543
544 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
545
546         * python/py-function.c (convert_values_to_python): Return
547         gdbpy_ref<>.  Add header comment.
548         (fnpy_call): Adjust.
549
550 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
551
552         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
553         (cmdpy_completer_handle_brkchars): Adjust.
554         (cmdpy_completer): Adjust.
555
556 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
557
558         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
559         Pass correct regnum to raw_supply_zeroed.
560
561 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
562
563         * regcache.c (cooked_read_test): Add CSKY to the list of
564         architectures with a save_reggroup
565
566 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
567
568         PR gdb/23368
569         * infrun.c (follow_exec): In the follow_exec_mode_new case,
570         transfer terminal state from old new new inferior.
571         * terminal.h (swap_terminal_info): New function.
572         * inflow.c (swap_terminal_info): New function.
573
574 2018-10-23  Tom Tromey  <tom@tromey.com>
575
576         * record-btrace.c (get_thread_current_frame_id): Rename from
577         get_thread_current_frame.  Return a frame_id.
578         (record_btrace_start_replaying): Update.
579
580 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
581
582         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
583         for CSRs.
584
585 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
586
587         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
588         have_nonsteppable_watchpoint attribute to 1.
589
590 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
591
592         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
593         register names.
594         (struct register_alias): Rename to...
595         (struct riscv_register_alias): ...this, and update comment.
596         (riscv_register_aliases): Update type, and alias names.  Remove
597         CSR names from this list.
598         (riscv_register_name): Use riscv_gdb_reg_names for int and float
599         register names.  Add an extra assertion.
600         (riscv_is_regnum_a_named_csr): New function.
601         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
602
603 2018-10-22  Jim Wilson  <jimw@sifive.com>
604
605         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
606         FP reg smaller than FP reg size, and fill with -1 instead of 0.
607
608         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
609         (riscv_register_type): Use them.
610         (riscv_print_one_register_info): Handle union of floats same as float.
611         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
612         riscv_fpreg_q_type fields.
613
614 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
615
616         * gdbarch.sh (gdbarch_num_cooked_regs): New.
617         * gdbarch.h: Re-generate.
618         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
619         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
620         * eval.c (evaluate_subexp_standard): Likewise.
621         * findvar.c (value_of_register): Likewise.
622         (value_of_register_lazy): Likewise.
623         (address_from_register): Likewise.
624         * frame.c (get_frame_register_bytes): Likewise.
625         * gdbarch-selftests.c (register_to_value_test): Likewise.
626         * h8300-tdep.c (h8300_register_type): Likewise.
627         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
628         (i386_svr4_reg_to_regnum): Likewise.
629         * infcmd.c (default_print_registers_info): Likewise.
630         (registers_info): Likewise.
631         (print_vector_info): Likewise.
632         (default_print_float_info): Likewise.
633         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
634         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
635         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
636         (mi_cmd_data_list_changed_registers): Likewise.
637         (mi_cmd_data_list_register_values): Likewise.
638         (mi_cmd_data_write_register_values): Likewise.
639         (mi_cmd_trace_frame_collected): Likewise.
640         * mips-tdep.c (print_gp_register_row): Likewise.
641         (mips_print_registers_info): Likewise.
642         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
643         * regcache.c (init_regcache_descr): Likewise.
644         (register_size): Likewise.
645         (register_dump::dump): Likewise.
646         (cooked_read_test): Likewise.
647         (cooked_write_test): Likewise.
648         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
649         (rs6000_gdbarch_init): Likewise.
650         * stabsread.c (stab_reg_to_regnum): Likewise.
651         * stack.c (info_frame_command): Likewise.
652         * target-descriptions.c (tdesc_register_name): Likewise.
653         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
654         * tui/tui-regs.c (tui_show_register_group): Likewise.
655         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
656         (user_reg_map_regnum_to_name): Likewise.
657         (value_of_user_reg): Likewise.
658         (maintenance_print_user_registers): Likewise.
659         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
660         (xtensa_register_name): Likewise.
661         (xtensa_register_type): Likewise.
662         (xtensa_reg_to_regnum): Likewise.
663         (xtensa_pseudo_register_read): Likewise.
664         (xtensa_pseudo_register_write): Likewise.
665
666 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
667
668         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
669         correctly-sized buffer with raw_read.
670         (amd64_pseudo_register_write): Use correctly-sized buffer for
671         raw_read/raw_write.
672
673 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
674
675         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
676         in add_prefix_cmd of set print type.
677
678 2018-10-19  Tom Tromey  <tom@tromey.com>
679
680         PR tui/18388:
681         * NEWS: Mention tabset deprecation.
682         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
683         (update_tab_width): New function.
684         (tui_set_tab_width, tui_show_tab_width): New functions.
685         (tui_set_tab_width_command): Use update_tab_width.
686         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
687         Add new "set tui tab-width" command.
688         * tui/tui-source.c (tui_set_source_content): Update.
689         * tui/tui-disasm.c (tui_set_disassem_content): Update.
690         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
691         Don't declare.
692         (tui_tab_width): Declare.
693         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
694         (tui_set_default_tab_len): Remove.
695
696 2018-10-19  Tom Tromey  <tom@tromey.com>
697
698         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
699         (key_is_backspace, tui_getc): Don't declare.
700         * tui/tui-io.c (key_is_start_sequence): Now static.
701         (key_is_end_sequence, key_is_backspace): Remove.
702         (tui_getc): Now static.
703
704 2018-10-19  Tom Tromey  <tom@tromey.com>
705
706         * symfile.c (reread_symbols): Clear "static_links".
707
708 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
709
710         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
711         define.
712         (aarch64_linux_sigframe_init): Extra boundary checks.
713
714 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
715
716         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
717         the possibly non-existent tdesc type 'vec128', but the type of raw
718         register v16 instead.
719
720 2018-10-19  Gary Benson <gbenson@redhat.com>
721
722         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
723
724 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
725
726         PR cli/23785
727         * cli/cli-dump.c (restore_binary_file): Check if "file" is
728         NULL.
729
730 2018-10-17  Paul Koning  <paul_koning@dell.com>
731
732         * charset.c (convert_between_encodings): Fix unsigned overflow.
733
734 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
735
736         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
737         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
738         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
739         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
740         New functions.
741         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
742         and fbsd_info_proc_mappings_header.
743         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
744         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
745         New.
746
747 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
748
749         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
750         Solaris Maintainer.
751
752 2018-10-15  Tom Tromey  <tom@tromey.com>
753
754         * tui/tui.c (strcat_to_buf): Remove casts.
755         * tui/tui-winsource.c (tui_show_source_line)
756         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
757         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
758         * tui/tui-windata.c (tui_first_data_item_displayed)
759         (tui_delete_data_content_windows, tui_erase_data_content)
760         (tui_display_all_data, tui_display_data_from)
761         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
762         * tui/tui-win.c (tui_set_win_height)
763         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
764         casts.
765         * tui/tui-win.c (tui_resize_all): Remove casts.
766         (tui_scroll_backward_command, tui_set_focus)
767         (tui_set_tab_width_command): Likewise.
768         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
769         * tui/tui-regs.c (tui_show_register_group): Remove cast.
770         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
771         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
772         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
773         Remove casts.
774
775 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
776
777         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
778         AArch64/ARM maintainer.
779
780 2018-10-11  Gary Benson <gbenson@redhat.com>
781
782         * interps.h (interp::m_name): Make private and mutable.
783         * interps.c (interp::~interp): Free m_name.
784
785 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
786             Simon Marchi <simark@simark.ca>
787
788         * README (`configure' options): Add documentation for new
789         "--enable-unit-tests" option.
790         * acinclude.m4: Include "selftest.m4".
791         * configure: Regenerate.
792         * configure.ac: Use "GDB_AC_SELFTEST".
793         * maint.c (maintenance_selftest): Update message informing
794         that selftests have been disabled.
795         (maintenance_info_selftests): Likewise.
796         * selftest.m4: New file.
797
798 2018-10-10  Gary Benson <gbenson@redhat.com>
799
800         * remote.c (remote_target::remote_send_printf): Add
801         missing va_end found by Coverity.
802
803 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
804
805         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
806
807 2018-10-09  Tom Tromey  <tom@tromey.com>
808
809         * configure: Rebuild.
810         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
811         * NEWS: Update --enable-ubsan documentation.
812
813 2018-10-09  Gary Benson <gbenson@redhat.com>
814
815         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
816         found by Coverity.
817
818 2018-10-08  Tom Tromey  <tom@tromey.com>
819
820         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
821         variable.
822         (riscv_fbsd_init_abi): Likewise.
823
824 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
825         * valops.c (value_struct_elt_for_reference): Rename local variable
826         to work around the shadowing a previous local warning.
827
828 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
829
830         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
831         * NEWS: Mention new FreeBSD/riscv native configuration.
832         * configure.host: Add riscv*-*-freebsd*.
833         * configure.nat: Likewise.
834         * riscv-fbsd-nat.c: New file.
835
836 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
837
838         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
839         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
840         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
841         * NEWS: Mention new FreeBSD/riscv target.
842         * configure.tgt: Add riscv*-*-freebsd*.
843         * riscv-fbsd-tdep.c: New file.
844         * riscv-fbsd-tdep.h: New file.
845
846 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
847
848         * regcache.h (struct regcache_map_entry): Note that this type can
849         be used with traditional frame caches.
850         * trad-frame.c (trad_frame_set_reg_regmap): New.
851         * trad-frame.h (trad_frame_set_reg_regmap): New.
852
853 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
854
855         PR c++/16841
856         * valops.c (get_virtual_base_offset): New function.
857         (value_struct_elt_for_reference): Use it to get virtual base offset
858         and add it in calculating class member address.
859
860 2018-10-08   John Darrington <john@darrington.wattle.id.au>
861
862     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
863       (check_producer): Check if the producer is codewarrior.
864       (producer_is_codewarrior): New function.
865       (lnp_state_machine::record_line): Ignore is_stmt flag for records
866        produced by codewarrior.
867       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
868
869 2018-10-06  Tom Tromey  <tom@tromey.com>
870
871         PR python/19399:
872         * python/py-inferior.c: Add "architecture" entry.
873         (infpy_architecture): New function.
874
875 2018-10-06  Tom Tromey  <tom@tromey.com>
876
877         PR python/21765:
878         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
879         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
880         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
881         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
882
883 2018-10-06  Tom Tromey  <tom@tromey.com>
884
885         PR build/17077:
886         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
887         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
888         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
889         #include.
890
891 2018-10-06  Tom Tromey  <tom@tromey.com>
892
893         * python/py-breakpoint.c (bppy_get_location): Handle a
894         bp_breakpoint without a location.
895
896 2018-10-06  Tom Tromey  <tom@tromey.com>
897
898         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
899         (_RegEx): Reformat help text.
900         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
901         (AnyCallerIs, AnyCallerMatches): Reformat help text.
902         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
903         text.
904         * python/lib/gdb/command/xmethods.py (InfoXMethod)
905         (EnableXMethod, DisableXMethod): Remove help indentation.
906         Capitalize meta-syntactic variables.
907         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
908         (EnableUnwinder, DisableUnwinder): Remove help indentation.
909         Capitalize meta-syntactic variables.
910         * python/lib/gdb/command/explore.py (ExploreCommand)
911         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
912         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
913         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
914         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
915         Remove help indentation.
916         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
917         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
918         (DisableFrameFilter, SetFrameFilterPriority)
919         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
920
921 2018-10-06  Tom Tromey  <tom@tromey.com>
922
923         PR tui/28819:
924         * tui/tui-io.c (gdb_wgetch): New function.
925         (tui_mld_getc, tui_getc): Use it.
926
927 2018-10-05  Tom Tromey  <tom@tromey.com>
928
929         * sol-thread.c (sol_thread_target::wait): Rename inner
930         "save_ptid".
931
932 2018-10-04  Tom Tromey  <tom@tromey.com>
933
934         * configure: Rebuild.
935         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
936
937 2018-10-04  Tom Tromey  <tom@tromey.com>
938
939         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
940         declaration of "block".
941
942 2018-10-04  Tom Tromey  <tom@tromey.com>
943
944         * common/filestuff.c (fdwalk): Remove inner declaration of
945         "result".
946
947 2018-10-04  Tom Tromey  <tom@tromey.com>
948
949         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
950         "structs_addr" and hoist declaration.
951
952 2018-10-04  Tom Tromey  <tom@tromey.com>
953
954         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
955         variable "size".
956
957 2018-10-04  Tom Tromey  <tom@tromey.com>
958
959         * mdebugread.c (parse_partial_symbols): Use std::string.
960
961 2018-10-04  Tom Tromey  <tom@tromey.com>
962
963         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
964         * p-valprint.c (pascal_val_print): Split inner "i" variable.
965         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
966         header.
967         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
968         more inner scope.
969         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
970         * varobj.c (varobj_update): Rename inner "newobj",
971         "type_changed".
972         * valprint.c (generic_emit_char): Rename inner "buf".
973         * valops.c (find_overload_match): Rename inner "temp".
974         (value_struct_elt_for_reference): Declare "v" in more inner
975         scope.
976         * v850-tdep.c (v850_push_dummy_call): Rename "len".
977         * unittests/array-view-selftests.c (run_tests): Rename inner
978         "vec".
979         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
980         header.
981         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
982         "tsv" in more inner scope.
983         (print_one_static_tracepoint_marker): Rename inner
984         "tuple_emitter".
985         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
986         (tic6x_push_dummy_call): Don't redeclare "addr".
987         * target-float.c: Declare "dto" lower.
988         * symtab.c (lookup_local_symbol): Rename inner "sym".
989         (find_pc_sect_line): Rename inner "pc".
990         * stack.c (print_frame): Don't redeclare "gdbarch".
991         (return_command): Rename inner "gdbarch".
992         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
993         "sp".
994         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
995         header.
996         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
997         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
998         scope.
999         * remote.c (remote_target::update_thread_list): Don't redeclare
1000         "tp".
1001         (remote_target::process_initial_stop_replies): Rename inner
1002         "thread".
1003         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1004         (remote_target::wait_as): Don't redeclare "stop_reply".
1005         (remote_target::get_thread_local_address): Rename inner
1006         "result".
1007         (remote_target::get_tib_address): Likewise.
1008
1009         * regcache.c (cooked_read_test): Rename "regnum".
1010         * record-btrace.c (cmd_record_btrace_start): Rename inner
1011         "exception".
1012         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1013         loop header.
1014         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1015         header.
1016         (ppu2spu_sniffer): Rename inner "buf".
1017         * parse.c (operator_check_standard): Rename inner "type",
1018         "objfile".
1019         * p-valprint.c (pascal_val_print): Introduce new scope for
1020         "low_bound", "high_bound".
1021         * p-exp.y (yylex): Declare "i" in loop header.
1022         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1023         Lower declaration of "s".
1024         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1025         header.
1026         (nios2_push_dummy_call): Rename "len".
1027         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1028         "buf".
1029         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1030         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1031         (linux_xfer_osdata_modules): Likewise.
1032         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1033         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1034         (mips_o64_push_dummy_call): Likewise.
1035         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1036         "op".
1037         * mi/mi-main.c (list_available_thread_groups): Rename inner
1038         "tuple_emitter".
1039         (mi_cmd_data_read_memory): Rename inner "opts".
1040         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1041         "tuple_emitter".
1042         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1043         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1044         more inner scope.
1045         (parse_partial_symbols): Rename inner "pst", "p", "name"
1046         * main.c (captured_main_1): Rename inner "i"s.
1047         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1048         "oso2".
1049         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1050         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1051         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1052         (handle_signal_stop): Rename inner "gdbarch".
1053         (handle_command): Declare "signum" in loop header.
1054         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1055         "status".
1056         (examine_prologue): Rename inner "sol" and "sof".
1057         (ia64_extract_return_value): Rename inner "val".  Declare another
1058         "val" in a more inner scope.
1059         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1060         inner scope.
1061         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1062         "except".
1063         * findvar.c (default_read_var_value): Don't redeclare "addr".
1064         * f-exp.y (yylex): Declare "i" in loop header.
1065         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1066         Rename inner "type", "expect_type".
1067         (evaluate_subexp_for_sizeof): Rename inner "pc".
1068         * elfread.c (elf_symfile_read): Rename inner "abfd".
1069         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1070         "bytes_read".
1071         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1072         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1073         (dwarf_decode_line_header): Rename inner "lh".
1074         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1075         "offset".  Declare "i" in loop header.
1076         (disassemble_dwarf_expression): Rename inner "addr_size".
1077         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1078         inner "result".
1079         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1080         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1081         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1082         "inner_list_emitter".
1083         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1084         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1085         declaration in a block.
1086         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1087         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1088         "obstack_final_size".
1089         * cp-support.c (inspect_type): Declare "i" in loop header.
1090         * compile/compile.c (compile_instance::insert_symbol_error):
1091         Rename inner "e".
1092         * common/agent.c (agent_run_command): Remove inner "ret"
1093         declaration.
1094         * coffread.c (coff_symfile_read): Rename inner "name".
1095         (coff_symfile_read): Rename inner "abfd".
1096         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1097         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1098         "high".
1099         * c-exp.y (lex_one_token): Move "len" declaration lower.
1100         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1101         "gdbarch".
1102         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1103         "b".
1104         (watch_command_1): Declare "mark" later.
1105         (clear_command): Don't shadow "a" or "b".
1106         (delete_command): Rename inner "b".
1107         (delete_trace_command): Likewise.
1108         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1109         "op".
1110         (arm_gdbarch_init): Remove inner "e_flags".
1111         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1112         "offset" in inner blocks.
1113
1114 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1115
1116         * dwarf-index-write.c (file_write): Don't write if the vector is
1117         empty.
1118
1119 2018-10-05  Tom de Vries  <tdevries@suse.de>
1120
1121         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1122         PyArg_ParseTuple call.
1123
1124 2018-10-05  Tom de Vries  <tdevries@suse.de>
1125
1126         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1127         PyArg_ParseTuple call.
1128
1129 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1130
1131         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1132         to avoid exceeding 80 characters per line limit.
1133
1134 2018-10-04  Tom Tromey  <tom@tromey.com>
1135
1136         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1137         (reread_symbols): Update.
1138         * complaints.h (clear_complaints): Remove argument.
1139         * complaints.c (enum complaint_series): Remove.
1140         (series): Remove global.
1141         (complaint_internal): Update.
1142         (clear_complaints): Remove argument.
1143
1144 2018-10-04  Tom Tromey  <tom@tromey.com>
1145
1146         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1147         debugging symbols" message if there is a separate debug objfile.
1148
1149 2018-10-04  Tom Tromey  <tom@tromey.com>
1150
1151         PR cli/19551:
1152         * symfile.c (symbol_file_add_with_addrs): Update output.
1153         * psymtab.c (require_partial_symbols): Update output.
1154
1155 2018-10-04  Tom Tromey  <tom@tromey.com>
1156
1157         PR cli/22234:
1158         * complaints.c: Emit \n.
1159
1160 2018-10-04  Tom Tromey  <tom@tromey.com>
1161
1162         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1163         (separate_debug_file_exists, find_separate_debug_file)
1164         (add_symbol_file_command, reread_symbols, allocate_symtab)
1165         (allocate_compunit_symtab): Use filtered printing, not
1166         unfiltered.
1167         * psymtab.c (require_partial_symbols, dump_psymtab)
1168         (allocate_psymtab): Use filtered printing, not unfiltered.
1169
1170 2018-10-04  Tom Tromey  <tom@tromey.com>
1171
1172         * complaints.c (complaint_internal): Correctly check complaint
1173         count.
1174
1175 2018-10-04  Tom Tromey  <tom@tromey.com>
1176
1177         * complaints.h (struct complaints): Remove declaration.
1178         * complaints.c (clear_complaints): Remove an unused variable.
1179
1180 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1181
1182         * MAINTAINERS (Write After Approval): Add self.
1183
1184 2018-10-03  Tom Tromey  <tom@tromey.com>
1185
1186         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1187         "buffer_contents".
1188         * coffread.c (coff_symtab_read): Initialize "newobj".
1189
1190 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1191
1192         * dwarf2read.c (read_func_scope): Remove struct keyword in
1193         range-based for.
1194
1195 2018-10-03  Tom Tromey  <tom@tromey.com>
1196
1197         * README: Mention --enable-ubsan.
1198         * NEWS: Mention --enable-ubsan.
1199         * acinclude.m4: Include sanitize.m4.
1200         * configure: Rebuild.
1201         * configure.ac: Call AM_GDB_UBSAN.
1202         * sanitize.m4: New file.
1203
1204 2018-10-03  Tom Tromey  <tom@tromey.com>
1205
1206         * expression.h (enum exp_opcode): Use uint8_t as base type.
1207         * expprint.c (op_name): Handle invalid opcodes.
1208
1209 2018-10-03  Tom Tromey  <tom@tromey.com>
1210
1211         * parse.c (prefixify_expression): Add assert.
1212         (parse_exp_in_context_1): Throw exception if the expression is
1213         empty.
1214
1215 2018-10-03  Tom Tromey  <tom@tromey.com>
1216
1217         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1218
1219 2018-10-03  Tom Tromey  <tom@tromey.com>
1220
1221         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1222
1223 2018-10-03  Tom Tromey  <tom@tromey.com>
1224
1225         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1226         unsigned.
1227
1228 2018-10-03  Tom Tromey  <tom@tromey.com>
1229
1230         * findvar.c (extract_integer): Do work in an unsigned type.
1231
1232 2018-10-03  Tom Tromey  <tom@tromey.com>
1233
1234         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1235         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1236         base type.
1237         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1238         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1239         type.
1240         * c-lang.h (enum c_string_type_values): Use unsigned as base
1241         type.
1242         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1243
1244 2018-10-03  Tom Tromey  <tom@tromey.com>
1245
1246         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1247         <~dwarf2_frame_state_reg_info>: Update.
1248         <dwarf2_frame_state_reg_info>: Update.
1249         <alloc_regs>: Add assertion.  Update.
1250         <reg>: Now a std::vector.
1251         <num_regs>: Remove.
1252         <swap>: Update.
1253         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1254         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1255
1256 2018-10-03  Tom Tromey  <tom@tromey.com>
1257
1258         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1259
1260 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1261
1262         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1263
1264 2018-10-02  Tom Tromey  <tom@tromey.com>
1265
1266         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1267
1268 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1269
1270         * NEWS: Mention changed commands.
1271         * ser-uds.c: New file.
1272         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1273         * configure: Regenerate.
1274         * Makefile.in: Add new file.
1275         * serial.c (serial_open): Check if filename is a socket
1276           and lookup the appropriate interface accordingly.
1277
1278 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1279
1280         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1281         define.
1282         (AARCH64_EXTRA_MAGIC): Likewise.
1283         (AARCH64_FPSIMD_MAGIC): Likewise.
1284         (AARCH64_SVE_MAGIC): Likewise.
1285         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1286         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1287         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1288         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1289         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1290         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1291         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1292         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1293         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1294         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1295         (read_aarch64_ctx): Add function.
1296         (aarch64_linux_sigframe_init): Detect FP registers.
1297
1298 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1299
1300         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1301         (AARCH64_D0_REGNUM): Likewise.
1302         (AARCH64_S0_REGNUM): Likewise.
1303         (AARCH64_H0_REGNUM): Likewise.
1304         (AARCH64_B0_REGNUM): Likewise.
1305         (AARCH64_SVE_V0_REGNUM): Likewise.
1306         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1307         (AARCH64_D0_REGNUM): Likewise.
1308         (AARCH64_S0_REGNUM): Likewise.
1309         (AARCH64_H0_REGNUM): Likewise.
1310         (AARCH64_B0_REGNUM): Likewise.
1311         (AARCH64_SVE_V0_REGNUM): Likewise.
1312
1313 2018-10-01  Gary Benson <gbenson@redhat.com>
1314
1315         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1316         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1317         prfpregset_t instead of gdb_prfpregset_t.
1318         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1319         * configure, config.in: Rebuild.
1320
1321 2018-10-01  Gary Benson <gbenson@redhat.com>
1322
1323         * common/gdb_proc_service.h: New file, factored out from...
1324         * gdb_proc_service.h: Moved common code to the above file.
1325         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1326
1327 2018-10-01  Gary Benson <gbenson@redhat.com>
1328
1329         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1330         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1331
1332 2018-10-01  Gary Benson <gbenson@redhat.com>
1333
1334         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1335         (AC_CHECK_HEADERS): Check for linux/elf.h.
1336         * configure, config.in: Rebuild.
1337         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1338         doesn't define elf_fpregset_t.
1339
1340 2018-10-01  Gary Benson <gbenson@redhat.com>
1341
1342         * gdb_proc_service.h: Whitespace change.
1343
1344 2018-10-01  Tom Tromey  <tom@tromey.com>
1345
1346         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1347         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1348         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1349
1350 2018-10-01  Tom Tromey  <tom@tromey.com>
1351
1352         * README: Minor change.
1353
1354 2018-09-30  Pedro Alves  <palves@redhat.com>
1355
1356         * darwin-nat-info.c (darwin_debug_regions_recurse)
1357         (info_mach_exceptions_command): Remove unused local variables.
1358         * darwin-nat.c (darwin_decode_notify_message)
1359         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1360         (darwin_stop_inferior, darwin_setup_exceptions)
1361         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1362         (darwin_nat_target::attach, darwin_nat_target::detach)
1363         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1364         local variables.
1365         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1366         variables.
1367
1368 2018-09-29  Tom Tromey  <tom@tromey.com>
1369
1370         * README: Remove some leftover text.
1371
1372 2018-09-29  Tom Tromey  <tom@tromey.com>
1373
1374         * PROBLEMS: Rewrite.
1375         * README: Update.
1376
1377 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1378
1379         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1380         case with explicit breakpoint kind.
1381         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1382         'additional_info' and related logic.
1383         (riscv_debug_breakpoints): New variable.
1384         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1385         instruction to determine the breakpoint kind.
1386         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1387         flag.  Update description of 'set/show riscv
1388         use-compressed-breakpoints' flag.
1389
1390 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1391
1392         (NEWS): Mention changes to frame related commands.
1393         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1394         (add_prefix_cmd_suppress_notification): New function.
1395         (add_com_suppress_notification): Call
1396         add_cmd_suppress_notification.
1397         * command.h (add_cmd_suppress_notification): Declare.
1398         (add_prefix_cmd_suppress_notification): Declare.
1399         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1400         (parse_frame_specification): Moved from stack.c, with
1401         simplification to handle a single argument.
1402         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1403         switch to the selected frame.  Add a header comment.
1404         * stack.c: Remove 'safe-ctype.h' include.
1405         (find_frame_for_function): Add declaration.
1406         (find_frame_for_address): New function.
1407         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1408         (frame_selection_by_function_completer): New function.
1409         (info_frame_command): Rename to...
1410         (info_frame_command_core): ...this, and update parameter types.
1411         (select_frame_command): Rename to...
1412         (select_frame_command_core): ...this, and update parameter types.
1413         (frame_command): Rename to...
1414         (frame_command_core): ...this, and update parameter types.
1415         (class frame_command_helper): New class to wrap implementations of
1416         frame related sub-commands.
1417         (frame_apply_cmd_list): New static global.
1418         (frame_cmd_list): Make static.
1419         (select_frame_cmd_list): New global for sub-commands.
1420         (info_frame_cmd_list): New global for sub-commands.
1421         (_initialize_stack): Register sub-commands for 'frame',
1422         'select-frame', and 'info frame'.  Update 'frame apply' commands
1423         to use frame_apply_cmd_list.  Move function local static
1424         frame_apply_list to file static frame_apply_cmd_list for
1425         consistency.
1426         * stack.h (select_frame_command): Delete declarationn.
1427         (select_frame_for_mi): Declare new function.
1428
1429 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1430
1431         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1432         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1433         and NOP.
1434
1435 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1436
1437         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1438
1439 2018-09-26  Tom Tromey  <tom@tromey.com>
1440
1441         * valops.c (auto_abandon): Remove dead code.
1442
1443 2018-09-26  Tom Tromey  <tom@tromey.com>
1444
1445         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1446
1447 2018-09-24  Tom Tromey  <tom@tromey.com>
1448
1449         * common/pathstuff.c (get_standard_cache_dir): Make
1450         "xdg_cache_home" and "home" const.
1451         * top.c (init_history): Make "tmpenv" const.
1452         * main.c (get_init_files): Make "homedir" const.
1453
1454 2018-09-23  Tom Tromey  <tom@tromey.com>
1455
1456         PR python/18852:
1457         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1458
1459 2018-09-23  Tom Tromey  <tom@tromey.com>
1460
1461         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1462         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1463         * python/python-internal.h (gdbpy_handle_exception): Declare.
1464         * python/py-utils.c (gdbpy_handle_exception): New function.
1465
1466 2018-09-23  Tom Tromey  <tom@tromey.com>
1467
1468         PR python/17284:
1469         * python/py-type.c (typy_template_argument): Check for negative
1470         argument number.
1471
1472 2018-09-23  Tom Tromey  <tom@tromey.com>
1473
1474         PR python/14062:
1475         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1476
1477 2018-09-23  Tom Tromey  <tom@tromey.com>
1478
1479         PR python/18170:
1480         * python/py-value.c (valpy_int): Allow conversion from pointer
1481         type.
1482
1483 2018-09-23  Tom Tromey  <tom@tromey.com>
1484
1485         PR python/20126:
1486         * python/py-value.c (valpy_int): Respect type sign.
1487
1488 2018-09-23  Tom Tromey  <tom@tromey.com>
1489
1490         PR python/18352;
1491         * python/py-value.c (valpy_float): Allow conversions from int or
1492         char.
1493         (valpy_int, valpy_long): Allow conversions from float.
1494
1495 2018-09-23  Tom Tromey  <tom@tromey.com>
1496
1497         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1498         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1499
1500 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1501
1502         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1503         __sighndlr.
1504         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1505
1506 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1507
1508         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1509         target_terminal::ours().
1510
1511 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1512
1513         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1514         of vl to ULONGEST.
1515
1516 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1517
1518         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1519         redundant condition.
1520
1521 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1522
1523         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1524
1525         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1526         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1527         * sol-thread.c (ps_pdmodel): Don't guard definition.
1528
1529         * procfs.c: Fix formatting.
1530
1531         * procfs.c (sysset_t_alloc): Remove.
1532         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1533         (procfs_debug_inferior): Likewise.
1534         (procfs_set_exec_trap): Likewise.
1535         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1536         (proc_set_traced_sysexit): Likewise.
1537
1538         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1539         (dead_procinfo): Likewise.
1540         (proc_warn): Likewise.
1541         (proc_error): Likewise.
1542         (proc_get_LDT_entry): Likewise.
1543         (do_attach): Likewise.
1544         (procfs_target::pid_to_str): Likewise.
1545         (iterate_over_mappings): Likewise.
1546
1547         * procfs.c (create_procinfo): Fix ARI warning.
1548         (proc_get_status): Likewise.
1549         (proc_stop_process): Likewise.
1550         (proc_run_process): Likewise.
1551         (proc_kill): Likewise.
1552         (proc_get_LDT_entry): Likewise.
1553         (procfs_find_LDT_entry): Likewise.
1554         (proc_update_threads): Likewise.
1555         (proc_iterate_over_threads): Likewise.
1556         (do_attach): Likewise.
1557         (procfs_xfer_memory): Likewise.
1558         (invalidate_cache): Likewise.
1559         (procfs_target::resume): Likewise.
1560         (procfs_init_inferior): Likewise.
1561         (procfs_set_exec_trap): Likewise.
1562         (procfs_target::thread_alive): Likewise.
1563         (procfs_target::pid_to_exec_file): Likewise.
1564         (iterate_over_mappings): Likewise.
1565         (procfs_target::make_corefile_notes): Likewise.
1566         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1567
1568         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1569         (procfs_find_LDT_entry): Likewise.
1570         * sol-thread.c (ps_lgetLDT): Likewise.
1571
1572 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1573
1574         PR tdep/17903
1575         * procfs.c (procfs_target): Declare pid_to_exec_file.
1576         (procfs_target::pid_to_exec_file): New.
1577
1578 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1579
1580         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1581         renaming.
1582         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1583         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1584
1585 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1586
1587         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1588         (supply_fpregset, fill_fpregset): Move ...
1589         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1590         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1591         Remove references to ioctl-based procfs.
1592         Include <sys/reg.h>.
1593         Remove PR_MODEL_NATIVE guards.
1594         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1595         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1596
1597 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1598
1599         PR gdb/20981:
1600         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1601         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1602         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1603
1604 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1605
1606         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1607         (fbsd_print_sockaddr_in6): Likewise.
1608
1609 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1610             Chris January  <chris.january@arm.com>
1611
1612         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1613         (evaluate_subexp_standard): Return a dummy type when
1614         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1615         OP_F77_UNDETERMINED_ARGLIST case.
1616         * expression.h (enum noside): Update comment.
1617
1618 2018-09-19  George Vasick <george.vasick@oracle.com>
1619
1620         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1621
1622 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1623             April Chin <april.chin@oracle.com>
1624             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1625
1626         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1627         uint_t lwpid_t.
1628         (create_procinfo): Print pids in /proc without leading zeros.
1629
1630 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1631
1632         * nios2-tdep.c (nios2_gcc_target_options): New.
1633         (nios2_gdb_arch_init): Install new hook.
1634
1635 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1636
1637         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1638         New file.
1639         * update-gnulib.sh: Apply patch.
1640         * configure: Re-generate.
1641
1642 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1643
1644         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1645         description.  Make "info proc" command descriptions more
1646         consistent.
1647
1648 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1649
1650         * NEWS: Mention 'info proc files' command.
1651
1652 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1653
1654         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1655         descriptors for IP_FILES and IP_ALL.
1656
1657 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1658
1659         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1660         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1661         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1662         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1663         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1664         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1665         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1666         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1667         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1668         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1669         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1670         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1671         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1672         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1673         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1674         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1675         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1676         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1677         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1678         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1679         (struct fbsd_sockaddr_un): New types.
1680         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1681         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1682         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1683         (fbsd_core_info_proc_files): New functions.
1684         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1685         IP_ALL.
1686         * fbsd-tdep.h (fbsd_info_proc_files_header)
1687         (fbsd_info_proc_files_entry): New.
1688
1689 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1690
1691         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1692         * infcmd.c (info_proc_cmd_files): New function.
1693         (_initialize_infcmd): Register 'info proc files' command.
1694
1695 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1696
1697         * gnulib/aclocal-m4-deps.mk: Re-generate.
1698         * gnulib/aclocal.m4: Re-generate.
1699         * gnulib/config.in: Re-generate.
1700         * gnulib/configure: Re-generate.
1701         * gnulib/import/Makefile.am: Re-generate.
1702         * gnulib/import/Makefile.in: Re-generate.
1703         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1704         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1705         * gnulib/import/arpa_inet.in.h: New file.
1706         * gnulib/import/inet_ntop.c: New file.
1707         * gnulib/import/m4/arpa_inet_h.m4: New file.
1708         * gnulib/import/m4/inet_ntop.m4: New file.
1709         * gnulib/import/m4/netinet_in_h.m4: New file.
1710         * gnulib/import/m4/socklen.m4: New file.
1711         * gnulib/import/m4/sockpfaf.m4: New file.
1712         * gnulib/import/m4/stdalign.m4: New file.
1713         * gnulib/import/m4/sys_uio_h.m4: New file.
1714         * gnulib/import/netinet_in.in.h: New file.
1715         * gnulib/import/stdalign.in.h: New file.
1716         * gnulib/import/sys_socket.c: New file.
1717         * gnulib/import/sys_socket.in.h: New file.
1718         * gnulib/import/sys_uio.in.h: New file.
1719         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1720         module.
1721
1722 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1723
1724         * gnulib/aclocal-m4-deps.mk: New file.
1725         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1726         deterministically.
1727
1728 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1729
1730         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1731         KVE_PATH.
1732
1733 2018-09-18  Tom Tromey  <tom@tromey.com>
1734
1735         * compile/compile-object-load.c (struct
1736         link_hash_table_cleanup_data): Add constructor and destructor.
1737         Use DISABLE_COPY_AND_ASSIGN.
1738         (~link_hash_table_cleanup_data): Rename from
1739         link_hash_table_free.  Now a destructor.
1740         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1741
1742 2018-09-18  Tom Tromey  <tom@tromey.com>
1743
1744         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1745         * compile/compile-object-load.c (struct munmap_list): Move to
1746         header file.
1747         (munmap_list::add): Rename from munmap_list_add; rewrite.
1748         (munmap_list::~munmap_list): Rename from munmap_list_free.
1749         (munmap_listp_free_cleanup): Remove.
1750         (compile_object_load): Update.
1751         * compile/compile-object-load.h (struct munmap_list): Move from
1752         compile-object-load.c.  Rewrite.
1753
1754 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1755
1756         * aarch64-tdep.c (pass_in_v): Use register size.
1757         (aarch64_extract_return_value): Likewise.
1758         (aarch64_store_return_value): Likewise.
1759
1760 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1761
1762         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1763         rlim_t.
1764
1765 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1766
1767         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1768         Fix short help line.
1769
1770 2018-09-17  Tom Tromey  <tom@tromey.com>
1771
1772         PR python/20445:
1773         * configure: Rebuild.
1774         * configure.ac: Conditionally use -DNDEBUG for Python.
1775
1776 2018-09-17  Tom Tromey  <tom@tromey.com>
1777
1778         * configure: Rebuild.
1779         * configure.ac: Use gmp as a library dependency when checking for
1780         mpfr.
1781
1782 2018-09-17  Pedro Alves  <palves@redhat.com>
1783
1784         * python/py-inferior.c (find_inferior_object): Delete.
1785
1786 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1787
1788         * compile/compile-cplus-types.c
1789         (compile_cplus_instance::enter_scope): Don't use new_scope after
1790         std::move.
1791
1792 2018-09-17  Tom Tromey  <tom@tromey.com>
1793
1794         * common/pathstuff.c (get_standard_cache_dir): Use
1795         ~/Library/Caches on macOS.
1796         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1797
1798 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1799
1800         PR python/23669
1801         * breakpoint.c (commands_cmd_element): New.
1802         (_initialize_breakpoint): Assign commands_cmd_element.
1803         * breakpoint.h (commands_cmd_element): New.
1804         * cli/cli-script.c (while_cmd_element, if_command,
1805         define_cmd_element): New.
1806         (command_name_equals): Remove.
1807         (process_next_line): Compare commands by pointer, not by name.
1808         (_initialize_cli_script): Assign the various cmd_list_element
1809         variables.
1810         * compile/compile.c (compile_cmd_element): New.
1811         (_initialize_compile): Assign compile_cmd_element.
1812         * compile/compile.h (compile_cmd_element): New.
1813         * guile/guile.c (guile_cmd_element): New.
1814         (install_gdb_commands): Assign guile_cmd_element.
1815         * guile/guile.h (guile_cmd_element): New.
1816         * python/python.c (python_cmd_element): New.
1817         (_initialize_python): Assign python_cmd_element.
1818         * python/python.h (python_cmd_element): New.
1819         * tracepoint.c (while_stepping_cmd_element): New.
1820         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1821         * tracepoint.h (while_stepping_cmd_element): New.
1822
1823 2018-09-17  Tom Tromey  <tom@tromey.com>
1824
1825         * infrun.c (save_infcall_suspend_state): Return
1826         infcall_suspend_state_up.
1827         (save_infcall_control_state): Return infcall_control_state_up.
1828         * inferior.h (save_infcall_suspend_state)
1829         (save_infcall_control_state): Declare later.  Return unique
1830         pointers.
1831
1832 2018-09-17  Tom Tromey  <tom@tromey.com>
1833
1834         * infrun.c (struct stop_context): Declare constructor,
1835         destructor, "changed" method.
1836         (stop_context::stop_context): Rename from save_stop_context.
1837         (stop_context::~stop_context): Rename from
1838         release_stop_context_cleanup.
1839         (normal_stop): Update.
1840         (stop_context::changed): Rename from stop_context_changed.  Return
1841         bool.
1842
1843 2018-09-17  Tom Tromey  <tom@tromey.com>
1844
1845         * inferior.h (struct infcall_suspend_state_deleter): New.
1846         (infcall_suspend_state_up): New typedef.
1847         (struct infcall_control_state_deleter): New.
1848         (infcall_control_state_up): New typedef.
1849         (make_cleanup_restore_infcall_suspend_state)
1850         (make_cleanup_restore_infcall_control_state): Don't declare.
1851         * infcall.c (call_function_by_hand_dummy): Update.
1852         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1853         (make_cleanup_restore_infcall_suspend_state): Remove.
1854         (do_restore_infcall_control_state_cleanup)
1855         (make_cleanup_restore_infcall_control_state): Remove.
1856
1857 2018-09-17  Tom Tromey  <tom@tromey.com>
1858
1859         * gdbthread.h (struct thread_control_state): Add initializer.
1860         (class thread_info) <control>: Remove initializer.
1861         * inferior.h (struct inferior_control_state): Add initializer.
1862         (class inferior) <control>: Remove initializer.
1863         (exit_inferior_1): Update.
1864         * infrun.c (struct infcall_control_state): Add constructors.
1865         (save_infcall_control_state): Use new.
1866         (restore_infcall_control_state, discard_infcall_control_state):
1867         Use delete.
1868
1869 2018-09-17  Tom Tromey  <tom@tromey.com>
1870
1871         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1872         unique_ptr.
1873         <siginfo_data>: Now a unique_xmalloc_ptr.
1874         (save_infcall_suspend_state, restore_infcall_suspend_state)
1875         (discard_infcall_suspend_state)
1876         (get_infcall_suspend_state_regcache): Update.
1877
1878 2018-09-17  Tom Tromey  <tom@tromey.com>
1879
1880         * gdbthread.h (struct thread_suspend_state): Add initializers.
1881         (class thread_info) <suspend>: Remove initializer.
1882         * infrun.c (struct infcall_suspend_state): Add initializers.
1883         (save_infcall_suspend_state): Use new.
1884         (discard_infcall_suspend_state): Use delete.
1885
1886 2018-09-16  Tom Tromey  <tom@tromey.com>
1887
1888         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1889         Remove.
1890         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1891         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1892         (py_varobj_iter_new): Likewise.
1893         (py_varobj_get_iterator): Use gdbpy_ref.
1894
1895 2018-09-16  Tom Tromey  <tom@tromey.com>
1896
1897         * python/py-threadevent.c (py_get_event_thread): Simplify.
1898         * python/py-inferior.c (infpy_thread_from_thread_handle):
1899         Return immediately after calling thread_to_thread_object.  Use
1900         Py_RETURN_NONE.
1901         (thread_to_thread_object): Set the exception on a NULL return.
1902
1903 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1904
1905         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1906
1907 2018-09-16  Tom Tromey  <tom@tromey.com>
1908
1909         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1910         Remove.
1911
1912 2018-09-16  Tom Tromey  <tom@tromey.com>
1913
1914         * python/python-internal.h (thread_to_thread_object): Change
1915         return type.
1916         * python/py-inferior.c (thread_to_thread_object): Return a new
1917         reference.
1918         (infpy_thread_from_thread_handle): Update.
1919         * python/py-infthread.c (gdbpy_selected_thread): Update.
1920         * python/py-stopevent.c (create_stop_event_object): Update.
1921         * python/py-threadevent.c (py_get_event_thread): Return a new
1922         reference.
1923         (py_get_event_thread): Update.
1924         * python/py-event.h (py_get_event_thread): Change return type.
1925         * python/py-continueevent.c (create_continue_event_object):
1926         Update.
1927
1928 2018-09-16  Tom Tromey  <tom@tromey.com>
1929
1930         * python/py-progspace.c (pspy_get_objfiles): Update.
1931         * python/python-internal.h (objfile_to_objfile_object): Change
1932         return type.
1933         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1934         Update.
1935         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1936         Update.
1937         * python/python.c (gdbpy_get_current_objfile): Update.
1938         (gdbpy_objfiles): Update.
1939         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1940         Update.
1941         (objfile_to_objfile_object): Return a new reference.
1942         * python/py-symtab.c (stpy_get_objfile): Update.
1943         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1944         Update.
1945
1946 2018-09-16  Tom Tromey  <tom@tromey.com>
1947
1948         * python/py-inferior.c (infpy_get_progspace): Update.
1949         * python/python-internal.h (pspace_to_pspace_object): Change
1950         return type.
1951         * python/py-newobjfileevent.c
1952         (create_clear_objfiles_event_object): Update.
1953         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1954         Update.
1955         * python/python.c (gdbpy_get_current_progspace): Update.
1956         (gdbpy_progspaces): Update.
1957         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1958         reference.
1959         * python/py-objfile.c (objfpy_get_progspace): Update.
1960         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1961         Update.
1962
1963 2018-09-16  Tom Tromey  <tom@tromey.com>
1964
1965         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1966         (solib_name, block_for_pc, find_pc_line): New functions.
1967         (execute_unwinders): Update.
1968         * python/py-block.c (gdbpy_block_for_pc): Remove.
1969         * python/py-inferior.c (infpy_get_progspace): New function.
1970         (inferior_object_getset) <progspace>: Add.
1971         * python/py-progspace.c (pspy_objfiles): Rewrite.
1972         (pspy_solib_name, pspy_block_for_pc)
1973         (pspy_find_pc_line, pspy_is_valid): New functions.
1974         (progspace_object_methods): Add entries for solib_name,
1975         block_for_pc, find_pc_line, is_valid.
1976         * python/python-internal.h (gdbpy_block_for_pc)
1977         (build_objfiles_list): Don't declare.
1978         * python/python.c: Don't include solib.h.
1979         (gdbpy_solib_name, gdbpy_find_pc_line)
1980         (gdbpy_get_current_progspace, build_objfiles_list)
1981         (gdbpy_objfiles): Remove.
1982         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1983         solib_name, find_pc_line>: Remove entries.
1984
1985 2018-09-16  Tom Tromey  <tom@tromey.com>
1986
1987         * top.c (new_ui_command): Use GNU style for metasyntactic
1988         variables.
1989         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1990         variables.
1991         * maint.c (maintenance_translate_address): Remove "<>" around
1992         text.
1993         * interps.c (interpreter_exec_cmd): Use GNU style for
1994         metasyntactic variables.
1995         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1996         metasyntactic variables.
1997         * tracepoint.c (tfind_range_command): Use GNU style for
1998         metasyntactic variables.
1999         (tfind_outside_command): Likewise.
2000         (_initialize_tracepoint): Likewise.
2001         * remote.c (extended_remote_target::create_inferior): Use GNU
2002         style for metasyntactic variables.
2003         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2004         metasyntactic variables.
2005         (adi_assign_command): Likewise.
2006
2007 2018-09-16  Tom Tromey  <tom@tromey.com>
2008
2009         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2010         metasyntactic variables.  Print message if no disassembler options
2011         are available.
2012
2013 2018-09-15  Tom Tromey  <tom@tromey.com>
2014
2015         * infcmd.c (get_inferior_args): Return const char *.
2016         * inferior.h (get_inferior_args): Return type now const.
2017         * linux-tdep.c (linux_fill_prpsinfo): Update.
2018         * procfs.c (procfs_target::make_corefile_notes): Update.
2019
2020 2018-09-07  Tom Tromey  <tom@tromey.com>
2021
2022         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2023         inside the TRY.
2024
2025 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2026
2027         * nios2-tdep.c (nios2_type_align): New.
2028         (nios2_gdb_arch_init): Install type_align hook.
2029
2030 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2031
2032         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2033         type that is neither object file owned, nor gdbarch owned.
2034         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2035         gdbarch is non-NULL.
2036         (alloc_type_instance): Allocate non-objfile owned types on the
2037         gdbarch obstack.
2038         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2039         using TYPE_ALLOC to ensure memory is allocated on the correct
2040         obstack.
2041         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2042         obstack, or the gdbarch obstack.
2043         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2044
2045 2018-09-14  Tom Tromey  <tom@tromey.com>
2046
2047         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2048         block.
2049
2050 2018-09-14  Tom Tromey  <tom@tromey.com>
2051
2052         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2053
2054 2018-09-13  Tom Tromey  <tom@tromey.com>
2055
2056         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2057         static.
2058
2059 2018-09-13  Tom Tromey  <tom@tromey.com>
2060
2061         * exec.c (try_open_exec_file): Use std::string.
2062
2063 2018-09-13  Tom Tromey  <tom@tromey.com>
2064
2065         * utils.h (gdb_bfd_errmsg): Return std::string.
2066         * exec.c (exec_file_attach): Update.
2067         * compile/compile-object-load.c (compile_object_load): Update.
2068         * utils.c (gdb_bfd_errmsg): Return std::string.
2069
2070 2018-09-13  Tom Tromey  <tom@tromey.com>
2071
2072         * procfs.c (struct procinfo_deleter): New.
2073         (procinfo_up): New typedef.
2074         (do_destroy_procinfo_cleanup): Remove.
2075         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2076
2077 2018-09-13  Tom Tromey  <tom@tromey.com>
2078
2079         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2080
2081 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2082 2018-09-13  Tom Tromey  <tom@tromey.com>
2083
2084         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2085         (pspy_get_objfiles): New function.
2086         (progspace_object_methods): New.
2087         (pspace_object_type): Add tp_methods callback.
2088         * python/python-internal.h (build_objfiles_list): New
2089         declaration.
2090         * python/python.c (build_objfiles_list): New function.
2091         (gdbpy_objfiles): Implement using build_objfiles_list.
2092         * NEWS: Mention the Progspace.objfiles method.
2093
2094 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2095
2096         * python/py-inferior.c (infpy_get_progspace): New function.
2097         (inferior_object_getset): Add progspace property.
2098         * NEWS: Mention the new property.
2099
2100 2018-09-13  Tom Tromey  <tom@tromey.com>
2101
2102         PR rust/23650:
2103         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2104
2105 2018-09-13  Tom Tromey  <tom@tromey.com>
2106
2107         PR rust/23626:
2108         * rust-lang.c (rust_enum_variant): Now static.
2109         (rust_empty_enum_p): New function.
2110         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2111         Handle empty enum.
2112
2113 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2114
2115         * python/py-inferior.c (infpy_repr): New.
2116         (inferior_object_type): Register infpy_repr.
2117         * python/py-objfile.c (objfpy_repr): New.
2118         (objfile_object_type): Register objfpy_repr.
2119
2120 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2121
2122         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2123
2124 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2125
2126         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2127         typo.
2128
2129 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2130
2131         * common/common-utils.c: Don't include '<sys/stat.h>'.
2132         (is_regular_file): Move to...
2133         * common/filestuff.c (is_regular_file): ... here.
2134         * common/common-utils.h (is_regular_file): Move to...
2135         * common/filestuff.h (is_regular_file): ... here.
2136
2137 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2138
2139         * skip.c (debug_skip): New variable.
2140         (skiplist_entry::do_skip_file_p): Add debug output.
2141         (skiplist_entry::do_skip_gfile_p): Likewise.
2142         (skiplist_entry::skip_function_p): Likewise.
2143         (_initialize_step_skip): Create debug command.
2144         * NEWS: Mention set/show debug skip.
2145
2146 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2147
2148         * darwin-nat.c (should_disable_startup_with_shell):
2149         New function.
2150         (darwin_nat_target::create_inferior): Add call.
2151
2152 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2153
2154         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2155         inf_port, msg_state>: Initialize.
2156         (struct darwin_thread_info) <signaled, single_step>: Change
2157         type and initialize.
2158         (struct darwin_thread_info) <event>: Initialize.
2159
2160 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2161
2162         PR gdb/23555
2163         PR gdb/23558
2164         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2165         guesses.
2166
2167 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2168
2169         Revert:
2170         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2171
2172         PR gdb/23555
2173         PR gdb/23558
2174         * gnulib/aclocal.m4: Regenerate.
2175         * gnulib/config.in: Regenerate.
2176         * gnulib/configure: Regenerate.
2177         * gnulib/import/Makefile.am: Update.
2178         * gnulib/import/Makefile.in: Update.
2179         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2180         * gnulib/import/_Noreturn.h: ... this.
2181         * gnulib/import/alloca.in.h: Update.
2182         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2183         * gnulib/import/arg-nonnull.h: ... this.
2184         * gnulib/import/assure.h: Update.
2185         * gnulib/import/at-func.c: Update.
2186         * gnulib/import/basename-lgpl.c: Update.
2187         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2188         * gnulib/import/c++defs.h: ... this.
2189         * gnulib/import/canonicalize-lgpl.c: Update.
2190         * gnulib/import/cdefs.h: Update.
2191         * gnulib/import/chdir-long.c: Update.
2192         * gnulib/import/chdir-long.h: Update.
2193         * gnulib/import/cloexec.c: Update.
2194         * gnulib/import/cloexec.h: Update.
2195         * gnulib/import/close.c: Update.
2196         * gnulib/import/closedir.c: Update.
2197         * gnulib/import/config.charset: Update.
2198         * gnulib/import/dirent-private.h: Update.
2199         * gnulib/import/dirent.in.h: Update.
2200         * gnulib/import/dirfd.c: Update.
2201         * gnulib/import/dirname-lgpl.c: Update.
2202         * gnulib/import/dirname.h: Update.
2203         * gnulib/import/dosname.h: Update.
2204         * gnulib/import/dup-safer-flag.c: Update.
2205         * gnulib/import/dup-safer.c: Update.
2206         * gnulib/import/dup.c: Update.
2207         * gnulib/import/dup2.c: Update.
2208         * gnulib/import/errno.in.h: Update.
2209         * gnulib/import/error.c: Update.
2210         * gnulib/import/error.h: Update.
2211         * gnulib/import/exitfail.c: Update.
2212         * gnulib/import/exitfail.h: Update.
2213         * gnulib/import/extra/update-copyright: Update.
2214         * gnulib/import/fchdir.c: Update.
2215         * gnulib/import/fcntl.c: Update.
2216         * gnulib/import/fcntl.in.h: Update.
2217         * gnulib/import/fd-hook.c: Update.
2218         * gnulib/import/fd-hook.h: Update.
2219         * gnulib/import/fd-safer-flag.c: Update.
2220         * gnulib/import/fd-safer.c: Update.
2221         * gnulib/import/fdopendir.c: Update.
2222         * gnulib/import/filename.h: Update.
2223         * gnulib/import/filenamecat-lgpl.c: Update.
2224         * gnulib/import/filenamecat.h: Update.
2225         * gnulib/import/flexmember.h: Update.
2226         * gnulib/import/float+.h: Update.
2227         * gnulib/import/float.c: Update.
2228         * gnulib/import/float.in.h: Update.
2229         * gnulib/import/fnmatch.c: Update.
2230         * gnulib/import/fnmatch.in.h: Update.
2231         * gnulib/import/fnmatch_loop.c: Update.
2232         * gnulib/import/fpucw.h: Update.
2233         * gnulib/import/frexp.c: Update.
2234         * gnulib/import/frexpl.c: Update.
2235         * gnulib/import/fstat.c: Update.
2236         * gnulib/import/fstatat.c: Update.
2237         * gnulib/import/getcwd-lgpl.c: Update.
2238         * gnulib/import/getcwd.c: Update.
2239         * gnulib/import/getdtablesize.c: Update.
2240         * gnulib/import/getlogin_r.c: Update.
2241         * gnulib/import/getprogname.c: Update.
2242         * gnulib/import/getprogname.h: Update.
2243         * gnulib/import/gettext.h: Update.
2244         * gnulib/import/gettimeofday.c: Update.
2245         * gnulib/import/glob-libc.h: Update.
2246         * gnulib/import/glob.c: Update.
2247         * gnulib/import/glob.in.h: Update.
2248         * gnulib/import/glob_internal.h: Update.
2249         * gnulib/import/glob_pattern_p.c: Update.
2250         * gnulib/import/globfree.c: Update.
2251         * gnulib/import/hard-locale.c: Update.
2252         * gnulib/import/hard-locale.h: Update.
2253         * gnulib/import/intprops.h: Update.
2254         * gnulib/import/inttypes.in.h: Update.
2255         * gnulib/import/isnan.c: Update.
2256         * gnulib/import/isnand-nolibm.h: Update.
2257         * gnulib/import/isnand.c: Update.
2258         * gnulib/import/isnanl-nolibm.h: Update.
2259         * gnulib/import/isnanl.c: Update.
2260         * gnulib/import/itold.c: Update.
2261         * gnulib/import/libc-config.h: Update.
2262         * gnulib/import/limits.in.h: Update.
2263         * gnulib/import/localcharset.c: Update.
2264         * gnulib/import/localcharset.h: Update.
2265         * gnulib/import/localtime-buffer.c: Update.
2266         * gnulib/import/localtime-buffer.h: Update.
2267         * gnulib/import/lstat.c: Update.
2268         * gnulib/import/m4/00gnulib.m4: Update.
2269         * gnulib/import/m4/__inline.m4: Update.
2270         * gnulib/import/m4/absolute-header.m4: Update.
2271         * gnulib/import/m4/alloca.m4: Update.
2272         * gnulib/import/m4/builtin-expect.m4: Update.
2273         * gnulib/import/m4/canonicalize.m4: Update.
2274         * gnulib/import/m4/chdir-long.m4: Update.
2275         * gnulib/import/m4/close.m4: Update.
2276         * gnulib/import/m4/closedir.m4: Update.
2277         * gnulib/import/m4/configmake.m4: Update.
2278         * gnulib/import/m4/d-ino.m4: Update.
2279         * gnulib/import/m4/d-type.m4: Update.
2280         * gnulib/import/m4/dirent_h.m4: Update.
2281         * gnulib/import/m4/dirfd.m4: Update.
2282         * gnulib/import/m4/dirname.m4: Update.
2283         * gnulib/import/m4/double-slash-root.m4: Update.
2284         * gnulib/import/m4/dup.m4: Update.
2285         * gnulib/import/m4/dup2.m4: Update.
2286         * gnulib/import/m4/eealloc.m4: Update.
2287         * gnulib/import/m4/environ.m4: Update.
2288         * gnulib/import/m4/errno_h.m4: Update.
2289         * gnulib/import/m4/error.m4: Update.
2290         * gnulib/import/m4/exponentd.m4: Update.
2291         * gnulib/import/m4/exponentl.m4: Update.
2292         * gnulib/import/m4/extensions.m4: Update.
2293         * gnulib/import/m4/extern-inline.m4: Update.
2294         * gnulib/import/m4/fchdir.m4: Update.
2295         * gnulib/import/m4/fcntl-o.m4: Update.
2296         * gnulib/import/m4/fcntl.m4: Update.
2297         * gnulib/import/m4/fcntl_h.m4: Update.
2298         * gnulib/import/m4/fdopendir.m4: Update.
2299         * gnulib/import/m4/filenamecat.m4: Update.
2300         * gnulib/import/m4/flexmember.m4: Update.
2301         * gnulib/import/m4/float_h.m4: Update.
2302         * gnulib/import/m4/fnmatch.m4: Update.
2303         * gnulib/import/m4/fnmatch_h.m4: Update.
2304         * gnulib/import/m4/fpieee.m4: Update.
2305         * gnulib/import/m4/frexp.m4: Update.
2306         * gnulib/import/m4/frexpl.m4: Update.
2307         * gnulib/import/m4/fstat.m4: Update.
2308         * gnulib/import/m4/fstatat.m4: Update.
2309         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2310         * gnulib/import/m4/getcwd-path-max.m4: Update.
2311         * gnulib/import/m4/getcwd.m4: Update.
2312         * gnulib/import/m4/getdtablesize.m4: Update.
2313         * gnulib/import/m4/getlogin.m4: Update.
2314         * gnulib/import/m4/getlogin_r.m4: Update.
2315         * gnulib/import/m4/getpagesize.m4: Update.
2316         * gnulib/import/m4/getprogname.m4: Update.
2317         * gnulib/import/m4/gettimeofday.m4: Update.
2318         * gnulib/import/m4/glibc21.m4: Update.
2319         * gnulib/import/m4/glob.m4: Update.
2320         * gnulib/import/m4/glob_h.m4: Update.
2321         * gnulib/import/m4/gnulib-cache.m4: Update.
2322         * gnulib/import/m4/gnulib-common.m4: Update.
2323         * gnulib/import/m4/gnulib-comp.m4: Update.
2324         * gnulib/import/m4/gnulib-tool.m4: Update.
2325         * gnulib/import/m4/hard-locale.m4: Update.
2326         * gnulib/import/m4/include_next.m4: Update.
2327         * gnulib/import/m4/inttypes-pri.m4: Update.
2328         * gnulib/import/m4/inttypes.m4: Update.
2329         * gnulib/import/m4/isnand.m4: Update.
2330         * gnulib/import/m4/isnanl.m4: Update.
2331         * gnulib/import/m4/largefile.m4: Update.
2332         * gnulib/import/m4/limits-h.m4: Update.
2333         * gnulib/import/m4/localcharset.m4: Update.
2334         * gnulib/import/m4/locale-fr.m4: Update.
2335         * gnulib/import/m4/locale-ja.m4: Update.
2336         * gnulib/import/m4/locale-zh.m4: Update.
2337         * gnulib/import/m4/localtime-buffer.m4: Update.
2338         * gnulib/import/m4/longlong.m4: Update.
2339         * gnulib/import/m4/lstat.m4: Update.
2340         * gnulib/import/m4/malloc.m4: Update.
2341         * gnulib/import/m4/malloca.m4: Update.
2342         * gnulib/import/m4/math_h.m4: Update.
2343         * gnulib/import/m4/mbrtowc.m4: Update.
2344         * gnulib/import/m4/mbsinit.m4: Update.
2345         * gnulib/import/m4/mbsrtowcs.m4: Update.
2346         * gnulib/import/m4/mbstate_t.m4: Update.
2347         * gnulib/import/m4/memchr.m4: Update.
2348         * gnulib/import/m4/memmem.m4: Update.
2349         * gnulib/import/m4/mempcpy.m4: Update.
2350         * gnulib/import/m4/memrchr.m4: Update.
2351         * gnulib/import/m4/mkdir.m4: Update.
2352         * gnulib/import/m4/mkstemp.m4: Update.
2353         * gnulib/import/m4/mmap-anon.m4: Update.
2354         * gnulib/import/m4/mode_t.m4: Update.
2355         * gnulib/import/m4/msvc-inval.m4: Update.
2356         * gnulib/import/m4/msvc-nothrow.m4: Update.
2357         * gnulib/import/m4/multiarch.m4: Update.
2358         * gnulib/import/m4/nocrash.m4: Update.
2359         * gnulib/import/m4/off_t.m4: Update.
2360         * gnulib/import/m4/onceonly.m4: Update.
2361         * gnulib/import/m4/open-cloexec.m4: Update.
2362         * gnulib/import/m4/open.m4: Update.
2363         * gnulib/import/m4/openat.m4: Update.
2364         * gnulib/import/m4/opendir.m4: Update.
2365         * gnulib/import/m4/pathmax.m4: Update.
2366         * gnulib/import/m4/rawmemchr.m4: Update.
2367         * gnulib/import/m4/readdir.m4: Update.
2368         * gnulib/import/m4/readlink.m4: Update.
2369         * gnulib/import/m4/realloc.m4: Update.
2370         * gnulib/import/m4/rename.m4: Update.
2371         * gnulib/import/m4/rewinddir.m4: Update.
2372         * gnulib/import/m4/rmdir.m4: Update.
2373         * gnulib/import/m4/save-cwd.m4: Update.
2374         * gnulib/import/m4/secure_getenv.m4: Update.
2375         * gnulib/import/m4/setenv.m4: Update.
2376         * gnulib/import/m4/signal_h.m4: Update.
2377         * gnulib/import/m4/ssize_t.m4: Update.
2378         * gnulib/import/m4/stat-time.m4: Update.
2379         * gnulib/import/m4/stat.m4: Update.
2380         * gnulib/import/m4/std-gnu11.m4: Update.
2381         * gnulib/import/m4/stdbool.m4: Update.
2382         * gnulib/import/m4/stddef_h.m4: Update.
2383         * gnulib/import/m4/stdint.m4: Update.
2384         * gnulib/import/m4/stdio_h.m4: Update.
2385         * gnulib/import/m4/stdlib_h.m4: Update.
2386         * gnulib/import/m4/strchrnul.m4: Update.
2387         * gnulib/import/m4/strdup.m4: Update.
2388         * gnulib/import/m4/strerror.m4: Update.
2389         * gnulib/import/m4/string_h.m4: Update.
2390         * gnulib/import/m4/strstr.m4: Update.
2391         * gnulib/import/m4/strtok_r.m4: Update.
2392         * gnulib/import/m4/sys_socket_h.m4: Update.
2393         * gnulib/import/m4/sys_stat_h.m4: Update.
2394         * gnulib/import/m4/sys_time_h.m4: Update.
2395         * gnulib/import/m4/sys_types_h.m4: Update.
2396         * gnulib/import/m4/tempname.m4: Update.
2397         * gnulib/import/m4/time_h.m4: Update.
2398         * gnulib/import/m4/unistd-safer.m4: Update.
2399         * gnulib/import/m4/unistd_h.m4: Update.
2400         * gnulib/import/m4/warn-on-use.m4: Update.
2401         * gnulib/import/m4/wchar_h.m4: Update.
2402         * gnulib/import/m4/wchar_t.m4: Update.
2403         * gnulib/import/m4/wctype_h.m4: Update.
2404         * gnulib/import/m4/wint_t.m4: Update.
2405         * gnulib/import/malloc.c: Update.
2406         * gnulib/import/malloc/scratch_buffer.h: Update.
2407         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2408         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2409         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2410         * gnulib/import/malloca.c: Update.
2411         * gnulib/import/malloca.h: Update.
2412         * gnulib/import/malloca.valgrind: Update.
2413         * gnulib/import/math.in.h: Update.
2414         * gnulib/import/mbrtowc.c: Update.
2415         * gnulib/import/mbsinit.c: Update.
2416         * gnulib/import/mbsrtowcs-impl.h: Update.
2417         * gnulib/import/mbsrtowcs-state.c: Update.
2418         * gnulib/import/mbsrtowcs.c: Update.
2419         * gnulib/import/memchr.c: Update.
2420         * gnulib/import/memmem.c: Update.
2421         * gnulib/import/mempcpy.c: Update.
2422         * gnulib/import/memrchr.c: Update.
2423         * gnulib/import/mkdir.c: Update.
2424         * gnulib/import/mkstemp.c: Update.
2425         * gnulib/import/msvc-inval.c: Update.
2426         * gnulib/import/msvc-inval.h: Update.
2427         * gnulib/import/msvc-nothrow.c: Update.
2428         * gnulib/import/msvc-nothrow.h: Update.
2429         * gnulib/import/open.c: Update.
2430         * gnulib/import/openat-die.c: Update.
2431         * gnulib/import/openat-priv.h: Update.
2432         * gnulib/import/openat-proc.c: Update.
2433         * gnulib/import/openat.c: Update.
2434         * gnulib/import/openat.h: Update.
2435         * gnulib/import/opendir.c: Update.
2436         * gnulib/import/pathmax.h: Update.
2437         * gnulib/import/pipe-safer.c: Update.
2438         * gnulib/import/rawmemchr.c: Update.
2439         * gnulib/import/readdir.c: Update.
2440         * gnulib/import/readlink.c: Update.
2441         * gnulib/import/realloc.c: Update.
2442         * gnulib/import/ref-add.sin: Update.
2443         * gnulib/import/ref-del.sin: Update.
2444         * gnulib/import/rename.c: Update.
2445         * gnulib/import/rewinddir.c: Update.
2446         * gnulib/import/rmdir.c: Update.
2447         * gnulib/import/same-inode.h: Update.
2448         * gnulib/import/save-cwd.c: Update.
2449         * gnulib/import/save-cwd.h: Update.
2450         * gnulib/import/scratch_buffer.h: Update.
2451         * gnulib/import/secure_getenv.c: Update.
2452         * gnulib/import/setenv.c: Update.
2453         * gnulib/import/signal.in.h: Update.
2454         * gnulib/import/stat-time.c: Update.
2455         * gnulib/import/stat-time.h: Update.
2456         * gnulib/import/stat-w32.c: Update.
2457         * gnulib/import/stat-w32.h: Update.
2458         * gnulib/import/stat.c: Update.
2459         * gnulib/import/stdbool.in.h: Update.
2460         * gnulib/import/stddef.in.h: Update.
2461         * gnulib/import/stdint.in.h: Update.
2462         * gnulib/import/stdio.in.h: Update.
2463         * gnulib/import/stdlib.in.h: Update.
2464         * gnulib/import/str-two-way.h: Update.
2465         * gnulib/import/strchrnul.c: Update.
2466         * gnulib/import/strdup.c: Update.
2467         * gnulib/import/streq.h: Update.
2468         * gnulib/import/strerror-override.c: Update.
2469         * gnulib/import/strerror-override.h: Update.
2470         * gnulib/import/strerror.c: Update.
2471         * gnulib/import/string.in.h: Update.
2472         * gnulib/import/stripslash.c: Update.
2473         * gnulib/import/strnlen1.c: Update.
2474         * gnulib/import/strnlen1.h: Update.
2475         * gnulib/import/strstr.c: Update.
2476         * gnulib/import/strtok_r.c: Update.
2477         * gnulib/import/sys_stat.in.h: Update.
2478         * gnulib/import/sys_time.in.h: Update.
2479         * gnulib/import/sys_types.in.h: Update.
2480         * gnulib/import/tempname.c: Update.
2481         * gnulib/import/tempname.h: Update.
2482         * gnulib/import/time.in.h: Update.
2483         * gnulib/import/unistd--.h: Update.
2484         * gnulib/import/unistd-safer.h: Update.
2485         * gnulib/import/unistd.in.h: Update.
2486         * gnulib/import/unsetenv.c: Update.
2487         * gnulib/import/verify.h: Update.
2488         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2489         * gnulib/import/wchar.in.h: Update.
2490         * gnulib/import/wctype.in.h: Update.
2491         * gnulib/import/xalloc-oversized.h: Update.
2492         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2493         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2494
2495 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2496
2497         * record-btrace.c (get_thread_current_frame): Remove
2498         old_inferior_ptid.
2499
2500 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2501
2502         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2503         with check_tag to 1 if and only if the type is tagged and the
2504         component being searched cannot been found in the current
2505         view. Otherwise, always call ada_to_fixed_type with
2506         check_tag to 0.
2507
2508 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2509
2510         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2511         declaration.
2512         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2513         * ada-varobj.c (ada_varobj_get_number_of_children,
2514         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2515
2516 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2517
2518         * ada-valprint.c (ada_value_print): Use type instead of
2519         enclosing type.
2520
2521 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2522
2523         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2524         an array of access to unconstrained array.
2525
2526 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2527
2528         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2529         (ada_check_typedef): Use it.
2530
2531 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2532
2533         * ada-varobj.c (ada_varobj_describe_struct_child)
2534         (ada_varobj_describe_child): Handle union case like struct one.
2535
2536 2018-09-10  Tom Tromey  <tom@tromey.com>
2537
2538         PR python/18380:
2539         * python/python.c (_initialize_python): Make example in "python"
2540         help work in Python 3.
2541
2542 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2543
2544         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2545         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2546         $(EXEEXT) to the script, as it is not a program.
2547
2548 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2549
2550         * python/py-prettyprint.c (pretty_print_one_value): Return
2551         gdbpy_ref<>.
2552         (print_string_repr): Adjust.
2553         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2554         * python/python-internal.h (apply_varobj_pretty_printer): Return
2555         gdbpy_ref<>.
2556         * varobj.c (varobj_value_get_print_value): Adjust.
2557
2558 2018-09-08  Tom Tromey  <tom@tromey.com>
2559
2560         PR python/16047:
2561         * python/py-prettyprint.c (pretty_print_one_value): Check for
2562         to_string method.
2563
2564 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2565
2566         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2567         replace_operator_with_call.
2568
2569 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2570
2571         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2572
2573 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2574
2575         * ada-typeprint.c (print_range): Print the bounds using TYPE
2576         rather than its TYPE_TARGET_TYPE.
2577
2578 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2579
2580         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2581         call to ada_to_fixed_value_create.
2582
2583 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2584
2585         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2586
2587 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2588
2589         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2590         by calls to error.
2591
2592 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2593
2594         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2595         Move update of loop variable "fi".
2596
2597 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2598
2599         * ada-lang.c (value_assign_to_component): In the case of
2600         big-endian targets, extract the bits of the given VAL
2601         using an src_offset of zero if container is not a scalar.
2602
2603 2018-09-06  Simon Ser  <contact@emersion.fr>
2604
2605         PR gdb/23105
2606         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2607         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2608         * fbsd-tdep.c (fbsd_make_note_desc): New.
2609         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2610         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2611         * target.h (enum target_object) Add FreeBSD-specific
2612         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2613
2614 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2615
2616         * compile/compile-c.h (generate_c_for_variable_locations):
2617         Change reference to pointer.
2618         * compile/compile-c-support.c (compile_program) <compute>:
2619         Likewise.
2620         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2621         (generate_c_for_for_one_variable): Likewise
2622         (generate_c_for_variable_locations): Likewise
2623         * compile/compile-c-types.c (compile_c_instance::convert_type):
2624         Likewise
2625         * compile/compile-cplus-symbols.c (convert_one_symbol):
2626         std::move the scope passed to enter_scope.
2627         * compile/compile-cplus-types.c
2628         (compile_cplus_instance::enter_scope): Make parameter
2629         rvalue-reference.
2630         (compile_cplus_instance::new_scope): Change reference to
2631         pointer.
2632         (compile_cplus_instance::convert_type): Likewise
2633         (compile_cplus_convert_typedef): std::move the scope passed to
2634         enter_scope.
2635         (compile_cplus_convert_struct_or_union): Likewise.
2636         (compile_cplus_convert_enum): Likewise.
2637         (compile_cplus_convert_namespace): Likewise.
2638         * compile/compile-cplus.h (compile_cplus_instance)
2639         <enter_scope>: Make parameter rvalue-reference.
2640         * compile/compile-internal.h (compile_instance)
2641         <get_cached_type>: Likewise
2642         * compile/compile-loc2c.c (push): Likewise
2643         (pushf): Likewise
2644         (unary): Likewise
2645         (binary): Likewise
2646         (print_label): Likewise
2647         (pushf_register_address): Likewise
2648         (pushf_register): Likewise
2649         (do_compile_dwarf_expr_to_c): Likewise
2650         (compile_dwarf_expr_to_c): Likewise
2651         (compile_dwarf_bounds_to_c): Likewise
2652         * compile/compile.c (compile_instance::get_cached_type):
2653         Likewise
2654         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2655         (compile_dwarf_bounds_to_c): Likewise
2656         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2657         (dwarf2_compile_property_to_c): Likewise
2658         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2659         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2660         Likewise
2661
2662 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2663
2664         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2665         * tui/tui-data.c (init_content_element): Don't initialize it.
2666
2667 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2668
2669         * tui/tui-data.h (struct tui_win_info)
2670         <detail::opaque>: Remove.
2671         * tui/tui-data.c (init_win_info): Remove assignment.
2672
2673 2018-09-05  Tom Tromey  <tom@tromey.com>
2674
2675         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2676         -Wformat-nonliteral.
2677         * target-float.c (host_float_ops<T>::to_string)
2678         (host_float_ops<T>::from_string): Use
2679         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2680         * configure: Rebuild.
2681
2682 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2683
2684         * printcmd.c (printf_c_string): Use
2685         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2686         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2687
2688 2018-09-05  Tom Tromey  <tom@tromey.com>
2689
2690         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2691
2692 2018-09-05  Tom de Vries  <tdevries@suse.de>
2693
2694         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2695         with resolve_abstract_p == true.
2696         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2697         defaulting to false. Propagate resolve_abstract_p to
2698         dwarf2_fetch_die_loc_sect_off.
2699         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2700         parameter, defaulting to false.
2701         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2702         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2703         parameter.
2704         * dwarf2read.h (struct die_info): Forward-declare.
2705         (die_info_ptr): New typedef.
2706         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2707
2708 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2709
2710         GDB 8.2 released.
2711
2712 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2713             Pedro Alves  <palves@redhat.com>
2714
2715         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2716         "aclocal-m4-deps.mk".  Include file here.
2717         $(srcdir)/aclocal.m4: Add "configure.ac".
2718         * gnulib/aclocal-m4-deps.mk: New file.
2719         * gnulib/update-gnulib.sh: Automatically update
2720         "aclocal-m4-deps.mk".
2721
2722 2018-09-04  Tom Tromey  <tom@tromey.com>
2723
2724         * configure: Rebuild.
2725         * configure.ac: Remove multi-ice code.
2726
2727 2018-09-04  Tom Tromey  <tom@tromey.com>
2728
2729         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2730         (ada-exp.o): Update.
2731
2732 2018-09-04  Tom Tromey  <tom@tromey.com>
2733
2734         * Makefile.in (printcmd.o, target-float.o): Remove.
2735         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2736
2737 2018-09-04  Tom Tromey  <tom@tromey.com>
2738
2739         * gnulib/Makefile.in: Remove obsolete comment.
2740         * Makefile.in: Remove obsolete comment.
2741
2742 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2743
2744         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2745         line with '+'.
2746
2747 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2748
2749         * riscv-tdep.c: Add 'prologue-value.h' include.
2750         (struct riscv_unwind_cache): New struct.
2751         (riscv_debug_unwinder): New global.
2752         (riscv_scan_prologue): Update arguments, capture register details
2753         from prologue scan.
2754         (riscv_skip_prologue): Reformat arguments line, move end of
2755         prologue calculation into riscv_scan_prologue.
2756         (riscv_frame_cache): Update return type, create
2757         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2758         details.
2759         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2760         (riscv_frame_prev_register): Use the trad_frame within the
2761         riscv_unwind_cache.
2762         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2763         flag.
2764
2765 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2766
2767         * trad-frame.h (trad_frame_set_realreg): Declare.
2768         (trad_frame_set_addr): Declare.
2769         * trad-frame.c (trad_frame_set_realreg): Define new function.
2770         (trad_frame_set_addr): Define new function.
2771         (trad_frame_set_reg_realreg): Use new function.
2772         (trad_frame_set_reg_addr): Use new function.
2773
2774 2018-09-01  Keith Seitz  <keiths@redhat.com>
2775
2776         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2777         pulongest instead of "%lld".
2778         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2779         ATTRIBUTE_UNUSED.
2780
2781 2018-08-31  Tom Tromey  <tom@tromey.com>
2782
2783         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2784         variant part type.
2785
2786 2018-08-31  Pedro Alves  <palves@redhat.com>
2787
2788         * gdbarch.h: Regenerate.
2789
2790 2018-08-31  Pedro Alves  <palves@redhat.com>
2791
2792         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2793         * target.h (Hardware watchpoint interfaces): Describe
2794         continuable/steppable/non-steppable watchpoints.
2795         * gdbarch.h, gdbarch.c: Regenerate.
2796
2797 2018-08-31  Pedro Alves  <palves@redhat.com>
2798
2799         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2800         Delete.
2801         * s390-linux-nat.c
2802         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2803         * target.h (target_ops::have_continuable_watchpoint): Delete.
2804         (target_have_continuable_watchpoint): Delete.
2805         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2806         * target-delegates.c: Regenerate.
2807
2808 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2809
2810         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2811         the files present in "gnulib/import/m4/".
2812
2813 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2814
2815         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2816         c.sw, c.swsp, and c.sdsp.
2817
2818 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2819
2820         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2821         (riscv_read_misa_reg): Don't cache value read into inferior data.
2822         (riscv_new_inferior_data): Delete.
2823         (riscv_inferior_data_cleanup): Delete.
2824         (riscv_inferior_data): Delete.
2825         (riscv_invalidate_inferior_data): Delete.
2826         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2827
2828 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2829
2830         * compile/compile-cplus-types.c
2831         (compile_cplus_instance::leave_scope): Take the address of scope
2832         object.
2833         (compile_cplus_instance::convert_qualified_base): Compare quals
2834         to 0.
2835
2836 2018-08-30  Keith Seitz  <keiths@redhat.com>
2837
2838         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2839         Use "%s" and host_address_to_string instead of "%p" in printf.
2840
2841 2018-08-29  Keith Seitz  <keiths@redhat.com>
2842
2843         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2844         and compile-cplus-types.c.
2845         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2846         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2847         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2848         Declare.
2849         * compile/compile-c-support.c: Include compile-cplus.h.
2850         (load_libcompile): Templatize.
2851         (get_compile_context): "New" function.
2852         (c_get_compile_context): Use get_compile_context.
2853         (cplus_get_compile_context): New function.
2854         (cplus_push_user_expression, cplus_pop_user_expression)
2855         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2856         (cplus_compute_program): Define new structs/functions.
2857         * compile/compile-cplus-symmbols.c: New file.
2858         * compile/compile-cplus-types.c: New file.
2859         * compile/compile-cplus.h: New file.
2860         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2861         Declare.
2862         * compile/compile-object-load.c (get_out_value_type): Use
2863         strncmp_iw when comparing symbol names.
2864         (compile_object_load): Add mst_bss and mst_data.
2865         * compile/compile.c (_initialize_compile): Remove
2866         -Wno-implicit-function-declaration from `compile_args'.
2867         * compile/gcc-cp-plugin.h: New file.
2868         * NEWS: Mention C++ compile support and new debug options.
2869
2870 2018-08-29  Keith Seitz  <keiths@redhat.com>
2871
2872         * linespec.c (collect_info::add_symbol): Make virtual.
2873         (struct symbol_searcher_collect_info): New struct.
2874         (symbol_searcher::find_all_symbols): New method.
2875         * symtab.h (class symbol_searcher): New class.
2876
2877 2018-08-29  Keith Seitz  <keiths@redhat.com>
2878
2879         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2880         Change to vector of block_symbol.  Update all users.
2881         (struct collect_info) <symbols>: Likewise.
2882         (collect_info::add_symbol): Take block_symbol as argument.
2883         Update all callers.
2884         (decode_compound_collector) <m_symbols>: Change type to vector
2885         of block_symbol.  Update all users.
2886         (decode_compound_collector::operator ()): Change parameter type
2887         to block_symbol.
2888         (find_method, find_function_symbols, find_linespec_symbols)
2889         (find_label_symbols_in_block, find_label_symbols): Change symbol
2890         vectors to block_symbol vectors.
2891         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2892         block_symbol.
2893
2894 2018-08-29  Keith Seitz  <keiths@redhat.com>
2895
2896         * linespec.c (symbolp): Remove typedef and VEC definitions.
2897         (bound_minimal_symbol_d): Likewise.
2898
2899 2018-08-29  Keith Seitz  <keiths@redhat.com>
2900
2901         * linespec.c (decode_compound_collector::decode_compound_collector):
2902         Remove initialization for `m_symtabs'.
2903         (decode_compound_collector::release_symbols): Change return type
2904         to std::vector.  Update all callers.
2905         (class decode_compound_collector) <m_symbols>: Change type to
2906         std::vector.
2907         (lookup_prefix_sym): Change return type to std::vector.  Update all
2908         callers.
2909         (compare_symbols): Remove.
2910         (std_compare_symbols): Rename to `compare_symbols'.
2911         (find_method): Change `sym_classes' parameter to std::vector.
2912         Update all callers.  Use std::sort to sort sym_classes.
2913         (find_linespec_symbols): Remove cleanup.
2914
2915 2018-08-29  Keith Seitz  <keiths@redhat.com>
2916
2917         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2918         std::vector.  Update all users.
2919         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2920         (struct collect_info) <minimal_symbols>: Likewise.
2921         (compare_msymbols): Return bool.  Change parameters to const
2922         bound_minimal_symbol references.
2923         (find_method, find_function_symbols, find_linespec_symbols): Change
2924         `minsyms' parameter to std::vector.  Update all callers.
2925
2926 2018-08-29  Keith Seitz  <keiths@redhat.com>
2927
2928         * linespec.c (struct linespec) <label_symbols>: Change type to
2929         std::vector.  Update all users.
2930         (find_label_symbols_in_block): Change `result' parameter to
2931         std::vector.  Update all callers.
2932         (find_label_symbols): Return std::vector.  Update all callers.
2933
2934 2018-08-29  Keith Seitz  <keiths@redhat.com>
2935
2936         * linespec.c (struct linespec) <function_symbols>: Change type to
2937         std::vector.  Update all users.
2938         (struct collect_info) <function_symbols>: Likewise.
2939         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2940         (std_compare_symbols): New function.
2941         (find_method, find_function_symbols, find_linespec_symbols)
2942         (find_label_symbols_in_block): Change `symbols' parameter to
2943         std::vector.  Update all callers.
2944         (find_label_symbols): Likewise for `function_symbols' and
2945         `label_funcs_ret'.
2946
2947 2018-08-29  Keith Seitz  <keiths@redhat.com>
2948
2949         * linespec.c (symtab_vector_up): Define.
2950         (struct linespec) <file_symtabs>: Change type to std::vector *.
2951         Update all uses.
2952         (struct collect_info) <file_symtabs>: Likewise.
2953         (collect_symtabs_from_filename): Return symtab_vector_up.
2954         Update all callers.
2955         (decode_objc): Remove cleanup.
2956         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2957         (symtab_collector::release_symtabs): Return symtab_vector_up.
2958         Update all callers.
2959         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2960         Update all users.
2961         (collect_symtabs_from_filename, symtabs_from_filename): Return
2962         symtab_vector_up.  Update all callers.
2963
2964 2018-08-29  Tom Tromey  <tom@tromey.com>
2965
2966         * csky-tdep.c (csky_analyze_prologue): Use
2967         core_addr_to_string_nz.
2968
2969 2018-08-29  Tom Tromey  <tom@tromey.com>
2970
2971         * windows-nat.c (struct xlate_exception) <them>: Change type to
2972         DWORD.
2973         (xlate): Fix formatting.  Remove last entry.
2974         (struct xlate_exception, xlate): Comment out.
2975         (windows_nat_target::resume): Use ranged for.
2976
2977 2018-08-29  Jim Wilson  <jimw@sifive.com>
2978
2979         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2980         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2981         of NT_PRFPREG.
2982         (riscv_linux_nat_target::store_registers): Likewise.
2983
2984 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2985
2986         PR gdb/23555
2987         PR gdb/23558
2988         * gnulib/aclocal.m4: Regenerate.
2989         * gnulib/config.in: Regenerate.
2990         * gnulib/configure: Regenerate.
2991         * gnulib/import/Makefile.am: Update.
2992         * gnulib/import/Makefile.in: Update.
2993         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2994         * gnulib/import/_Noreturn.h: ... this.
2995         * gnulib/import/alloca.in.h: Update.
2996         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2997         * gnulib/import/arg-nonnull.h: ... this.
2998         * gnulib/import/assure.h: Update.
2999         * gnulib/import/at-func.c: Update.
3000         * gnulib/import/basename-lgpl.c: Update.
3001         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3002         * gnulib/import/c++defs.h: ... this.
3003         * gnulib/import/canonicalize-lgpl.c: Update.
3004         * gnulib/import/cdefs.h: Update.
3005         * gnulib/import/chdir-long.c: Update.
3006         * gnulib/import/chdir-long.h: Update.
3007         * gnulib/import/cloexec.c: Update.
3008         * gnulib/import/cloexec.h: Update.
3009         * gnulib/import/close.c: Update.
3010         * gnulib/import/closedir.c: Update.
3011         * gnulib/import/config.charset: Update.
3012         * gnulib/import/dirent-private.h: Update.
3013         * gnulib/import/dirent.in.h: Update.
3014         * gnulib/import/dirfd.c: Update.
3015         * gnulib/import/dirname-lgpl.c: Update.
3016         * gnulib/import/dirname.h: Update.
3017         * gnulib/import/dosname.h: Update.
3018         * gnulib/import/dup-safer-flag.c: Update.
3019         * gnulib/import/dup-safer.c: Update.
3020         * gnulib/import/dup.c: Update.
3021         * gnulib/import/dup2.c: Update.
3022         * gnulib/import/errno.in.h: Update.
3023         * gnulib/import/error.c: Update.
3024         * gnulib/import/error.h: Update.
3025         * gnulib/import/exitfail.c: Update.
3026         * gnulib/import/exitfail.h: Update.
3027         * gnulib/import/extra/update-copyright: Update.
3028         * gnulib/import/fchdir.c: Update.
3029         * gnulib/import/fcntl.c: Update.
3030         * gnulib/import/fcntl.in.h: Update.
3031         * gnulib/import/fd-hook.c: Update.
3032         * gnulib/import/fd-hook.h: Update.
3033         * gnulib/import/fd-safer-flag.c: Update.
3034         * gnulib/import/fd-safer.c: Update.
3035         * gnulib/import/fdopendir.c: Update.
3036         * gnulib/import/filename.h: Update.
3037         * gnulib/import/filenamecat-lgpl.c: Update.
3038         * gnulib/import/filenamecat.h: Update.
3039         * gnulib/import/flexmember.h: Update.
3040         * gnulib/import/float+.h: Update.
3041         * gnulib/import/float.c: Update.
3042         * gnulib/import/float.in.h: Update.
3043         * gnulib/import/fnmatch.c: Update.
3044         * gnulib/import/fnmatch.in.h: Update.
3045         * gnulib/import/fnmatch_loop.c: Update.
3046         * gnulib/import/fpucw.h: Update.
3047         * gnulib/import/frexp.c: Update.
3048         * gnulib/import/frexpl.c: Update.
3049         * gnulib/import/fstat.c: Update.
3050         * gnulib/import/fstatat.c: Update.
3051         * gnulib/import/getcwd-lgpl.c: Update.
3052         * gnulib/import/getcwd.c: Update.
3053         * gnulib/import/getdtablesize.c: Update.
3054         * gnulib/import/getlogin_r.c: Update.
3055         * gnulib/import/getprogname.c: Update.
3056         * gnulib/import/getprogname.h: Update.
3057         * gnulib/import/gettext.h: Update.
3058         * gnulib/import/gettimeofday.c: Update.
3059         * gnulib/import/glob-libc.h: Update.
3060         * gnulib/import/glob.c: Update.
3061         * gnulib/import/glob.in.h: Update.
3062         * gnulib/import/glob_internal.h: Update.
3063         * gnulib/import/glob_pattern_p.c: Update.
3064         * gnulib/import/globfree.c: Update.
3065         * gnulib/import/hard-locale.c: Update.
3066         * gnulib/import/hard-locale.h: Update.
3067         * gnulib/import/intprops.h: Update.
3068         * gnulib/import/inttypes.in.h: Update.
3069         * gnulib/import/isnan.c: Update.
3070         * gnulib/import/isnand-nolibm.h: Update.
3071         * gnulib/import/isnand.c: Update.
3072         * gnulib/import/isnanl-nolibm.h: Update.
3073         * gnulib/import/isnanl.c: Update.
3074         * gnulib/import/itold.c: Update.
3075         * gnulib/import/libc-config.h: Update.
3076         * gnulib/import/limits.in.h: Update.
3077         * gnulib/import/localcharset.c: Update.
3078         * gnulib/import/localcharset.h: Update.
3079         * gnulib/import/localtime-buffer.c: Update.
3080         * gnulib/import/localtime-buffer.h: Update.
3081         * gnulib/import/lstat.c: Update.
3082         * gnulib/import/m4/00gnulib.m4: Update.
3083         * gnulib/import/m4/__inline.m4: Update.
3084         * gnulib/import/m4/absolute-header.m4: Update.
3085         * gnulib/import/m4/alloca.m4: Update.
3086         * gnulib/import/m4/builtin-expect.m4: Update.
3087         * gnulib/import/m4/canonicalize.m4: Update.
3088         * gnulib/import/m4/chdir-long.m4: Update.
3089         * gnulib/import/m4/close.m4: Update.
3090         * gnulib/import/m4/closedir.m4: Update.
3091         * gnulib/import/m4/configmake.m4: Update.
3092         * gnulib/import/m4/d-ino.m4: Update.
3093         * gnulib/import/m4/d-type.m4: Update.
3094         * gnulib/import/m4/dirent_h.m4: Update.
3095         * gnulib/import/m4/dirfd.m4: Update.
3096         * gnulib/import/m4/dirname.m4: Update.
3097         * gnulib/import/m4/double-slash-root.m4: Update.
3098         * gnulib/import/m4/dup.m4: Update.
3099         * gnulib/import/m4/dup2.m4: Update.
3100         * gnulib/import/m4/eealloc.m4: Update.
3101         * gnulib/import/m4/environ.m4: Update.
3102         * gnulib/import/m4/errno_h.m4: Update.
3103         * gnulib/import/m4/error.m4: Update.
3104         * gnulib/import/m4/exponentd.m4: Update.
3105         * gnulib/import/m4/exponentl.m4: Update.
3106         * gnulib/import/m4/extensions.m4: Update.
3107         * gnulib/import/m4/extern-inline.m4: Update.
3108         * gnulib/import/m4/fchdir.m4: Update.
3109         * gnulib/import/m4/fcntl-o.m4: Update.
3110         * gnulib/import/m4/fcntl.m4: Update.
3111         * gnulib/import/m4/fcntl_h.m4: Update.
3112         * gnulib/import/m4/fdopendir.m4: Update.
3113         * gnulib/import/m4/filenamecat.m4: Update.
3114         * gnulib/import/m4/flexmember.m4: Update.
3115         * gnulib/import/m4/float_h.m4: Update.
3116         * gnulib/import/m4/fnmatch.m4: Update.
3117         * gnulib/import/m4/fnmatch_h.m4: Update.
3118         * gnulib/import/m4/fpieee.m4: Update.
3119         * gnulib/import/m4/frexp.m4: Update.
3120         * gnulib/import/m4/frexpl.m4: Update.
3121         * gnulib/import/m4/fstat.m4: Update.
3122         * gnulib/import/m4/fstatat.m4: Update.
3123         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3124         * gnulib/import/m4/getcwd-path-max.m4: Update.
3125         * gnulib/import/m4/getcwd.m4: Update.
3126         * gnulib/import/m4/getdtablesize.m4: Update.
3127         * gnulib/import/m4/getlogin.m4: Update.
3128         * gnulib/import/m4/getlogin_r.m4: Update.
3129         * gnulib/import/m4/getpagesize.m4: Update.
3130         * gnulib/import/m4/getprogname.m4: Update.
3131         * gnulib/import/m4/gettimeofday.m4: Update.
3132         * gnulib/import/m4/glibc21.m4: Update.
3133         * gnulib/import/m4/glob.m4: Update.
3134         * gnulib/import/m4/glob_h.m4: Update.
3135         * gnulib/import/m4/gnulib-cache.m4: Update.
3136         * gnulib/import/m4/gnulib-common.m4: Update.
3137         * gnulib/import/m4/gnulib-comp.m4: Update.
3138         * gnulib/import/m4/gnulib-tool.m4: Update.
3139         * gnulib/import/m4/hard-locale.m4: Update.
3140         * gnulib/import/m4/include_next.m4: Update.
3141         * gnulib/import/m4/inttypes-pri.m4: Update.
3142         * gnulib/import/m4/inttypes.m4: Update.
3143         * gnulib/import/m4/isnand.m4: Update.
3144         * gnulib/import/m4/isnanl.m4: Update.
3145         * gnulib/import/m4/largefile.m4: Update.
3146         * gnulib/import/m4/limits-h.m4: Update.
3147         * gnulib/import/m4/localcharset.m4: Update.
3148         * gnulib/import/m4/locale-fr.m4: Update.
3149         * gnulib/import/m4/locale-ja.m4: Update.
3150         * gnulib/import/m4/locale-zh.m4: Update.
3151         * gnulib/import/m4/localtime-buffer.m4: Update.
3152         * gnulib/import/m4/longlong.m4: Update.
3153         * gnulib/import/m4/lstat.m4: Update.
3154         * gnulib/import/m4/malloc.m4: Update.
3155         * gnulib/import/m4/malloca.m4: Update.
3156         * gnulib/import/m4/math_h.m4: Update.
3157         * gnulib/import/m4/mbrtowc.m4: Update.
3158         * gnulib/import/m4/mbsinit.m4: Update.
3159         * gnulib/import/m4/mbsrtowcs.m4: Update.
3160         * gnulib/import/m4/mbstate_t.m4: Update.
3161         * gnulib/import/m4/memchr.m4: Update.
3162         * gnulib/import/m4/memmem.m4: Update.
3163         * gnulib/import/m4/mempcpy.m4: Update.
3164         * gnulib/import/m4/memrchr.m4: Update.
3165         * gnulib/import/m4/mkdir.m4: Update.
3166         * gnulib/import/m4/mkstemp.m4: Update.
3167         * gnulib/import/m4/mmap-anon.m4: Update.
3168         * gnulib/import/m4/mode_t.m4: Update.
3169         * gnulib/import/m4/msvc-inval.m4: Update.
3170         * gnulib/import/m4/msvc-nothrow.m4: Update.
3171         * gnulib/import/m4/multiarch.m4: Update.
3172         * gnulib/import/m4/nocrash.m4: Update.
3173         * gnulib/import/m4/off_t.m4: Update.
3174         * gnulib/import/m4/onceonly.m4: Update.
3175         * gnulib/import/m4/open-cloexec.m4: Update.
3176         * gnulib/import/m4/open.m4: Update.
3177         * gnulib/import/m4/openat.m4: Update.
3178         * gnulib/import/m4/opendir.m4: Update.
3179         * gnulib/import/m4/pathmax.m4: Update.
3180         * gnulib/import/m4/rawmemchr.m4: Update.
3181         * gnulib/import/m4/readdir.m4: Update.
3182         * gnulib/import/m4/readlink.m4: Update.
3183         * gnulib/import/m4/realloc.m4: Update.
3184         * gnulib/import/m4/rename.m4: Update.
3185         * gnulib/import/m4/rewinddir.m4: Update.
3186         * gnulib/import/m4/rmdir.m4: Update.
3187         * gnulib/import/m4/save-cwd.m4: Update.
3188         * gnulib/import/m4/secure_getenv.m4: Update.
3189         * gnulib/import/m4/setenv.m4: Update.
3190         * gnulib/import/m4/signal_h.m4: Update.
3191         * gnulib/import/m4/ssize_t.m4: Update.
3192         * gnulib/import/m4/stat-time.m4: Update.
3193         * gnulib/import/m4/stat.m4: Update.
3194         * gnulib/import/m4/std-gnu11.m4: Update.
3195         * gnulib/import/m4/stdbool.m4: Update.
3196         * gnulib/import/m4/stddef_h.m4: Update.
3197         * gnulib/import/m4/stdint.m4: Update.
3198         * gnulib/import/m4/stdio_h.m4: Update.
3199         * gnulib/import/m4/stdlib_h.m4: Update.
3200         * gnulib/import/m4/strchrnul.m4: Update.
3201         * gnulib/import/m4/strdup.m4: Update.
3202         * gnulib/import/m4/strerror.m4: Update.
3203         * gnulib/import/m4/string_h.m4: Update.
3204         * gnulib/import/m4/strstr.m4: Update.
3205         * gnulib/import/m4/strtok_r.m4: Update.
3206         * gnulib/import/m4/sys_socket_h.m4: Update.
3207         * gnulib/import/m4/sys_stat_h.m4: Update.
3208         * gnulib/import/m4/sys_time_h.m4: Update.
3209         * gnulib/import/m4/sys_types_h.m4: Update.
3210         * gnulib/import/m4/tempname.m4: Update.
3211         * gnulib/import/m4/time_h.m4: Update.
3212         * gnulib/import/m4/unistd-safer.m4: Update.
3213         * gnulib/import/m4/unistd_h.m4: Update.
3214         * gnulib/import/m4/warn-on-use.m4: Update.
3215         * gnulib/import/m4/wchar_h.m4: Update.
3216         * gnulib/import/m4/wchar_t.m4: Update.
3217         * gnulib/import/m4/wctype_h.m4: Update.
3218         * gnulib/import/m4/wint_t.m4: Update.
3219         * gnulib/import/malloc.c: Update.
3220         * gnulib/import/malloc/scratch_buffer.h: Update.
3221         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3222         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3223         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3224         * gnulib/import/malloca.c: Update.
3225         * gnulib/import/malloca.h: Update.
3226         * gnulib/import/malloca.valgrind: Update.
3227         * gnulib/import/math.in.h: Update.
3228         * gnulib/import/mbrtowc.c: Update.
3229         * gnulib/import/mbsinit.c: Update.
3230         * gnulib/import/mbsrtowcs-impl.h: Update.
3231         * gnulib/import/mbsrtowcs-state.c: Update.
3232         * gnulib/import/mbsrtowcs.c: Update.
3233         * gnulib/import/memchr.c: Update.
3234         * gnulib/import/memmem.c: Update.
3235         * gnulib/import/mempcpy.c: Update.
3236         * gnulib/import/memrchr.c: Update.
3237         * gnulib/import/mkdir.c: Update.
3238         * gnulib/import/mkstemp.c: Update.
3239         * gnulib/import/msvc-inval.c: Update.
3240         * gnulib/import/msvc-inval.h: Update.
3241         * gnulib/import/msvc-nothrow.c: Update.
3242         * gnulib/import/msvc-nothrow.h: Update.
3243         * gnulib/import/open.c: Update.
3244         * gnulib/import/openat-die.c: Update.
3245         * gnulib/import/openat-priv.h: Update.
3246         * gnulib/import/openat-proc.c: Update.
3247         * gnulib/import/openat.c: Update.
3248         * gnulib/import/openat.h: Update.
3249         * gnulib/import/opendir.c: Update.
3250         * gnulib/import/pathmax.h: Update.
3251         * gnulib/import/pipe-safer.c: Update.
3252         * gnulib/import/rawmemchr.c: Update.
3253         * gnulib/import/readdir.c: Update.
3254         * gnulib/import/readlink.c: Update.
3255         * gnulib/import/realloc.c: Update.
3256         * gnulib/import/ref-add.sin: Update.
3257         * gnulib/import/ref-del.sin: Update.
3258         * gnulib/import/rename.c: Update.
3259         * gnulib/import/rewinddir.c: Update.
3260         * gnulib/import/rmdir.c: Update.
3261         * gnulib/import/same-inode.h: Update.
3262         * gnulib/import/save-cwd.c: Update.
3263         * gnulib/import/save-cwd.h: Update.
3264         * gnulib/import/scratch_buffer.h: Update.
3265         * gnulib/import/secure_getenv.c: Update.
3266         * gnulib/import/setenv.c: Update.
3267         * gnulib/import/signal.in.h: Update.
3268         * gnulib/import/stat-time.c: Update.
3269         * gnulib/import/stat-time.h: Update.
3270         * gnulib/import/stat-w32.c: Update.
3271         * gnulib/import/stat-w32.h: Update.
3272         * gnulib/import/stat.c: Update.
3273         * gnulib/import/stdbool.in.h: Update.
3274         * gnulib/import/stddef.in.h: Update.
3275         * gnulib/import/stdint.in.h: Update.
3276         * gnulib/import/stdio.in.h: Update.
3277         * gnulib/import/stdlib.in.h: Update.
3278         * gnulib/import/str-two-way.h: Update.
3279         * gnulib/import/strchrnul.c: Update.
3280         * gnulib/import/strdup.c: Update.
3281         * gnulib/import/streq.h: Update.
3282         * gnulib/import/strerror-override.c: Update.
3283         * gnulib/import/strerror-override.h: Update.
3284         * gnulib/import/strerror.c: Update.
3285         * gnulib/import/string.in.h: Update.
3286         * gnulib/import/stripslash.c: Update.
3287         * gnulib/import/strnlen1.c: Update.
3288         * gnulib/import/strnlen1.h: Update.
3289         * gnulib/import/strstr.c: Update.
3290         * gnulib/import/strtok_r.c: Update.
3291         * gnulib/import/sys_stat.in.h: Update.
3292         * gnulib/import/sys_time.in.h: Update.
3293         * gnulib/import/sys_types.in.h: Update.
3294         * gnulib/import/tempname.c: Update.
3295         * gnulib/import/tempname.h: Update.
3296         * gnulib/import/time.in.h: Update.
3297         * gnulib/import/unistd--.h: Update.
3298         * gnulib/import/unistd-safer.h: Update.
3299         * gnulib/import/unistd.in.h: Update.
3300         * gnulib/import/unsetenv.c: Update.
3301         * gnulib/import/verify.h: Update.
3302         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3303         * gnulib/import/wchar.in.h: Update.
3304         * gnulib/import/wctype.in.h: Update.
3305         * gnulib/import/xalloc-oversized.h: Update.
3306         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3307         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3308
3309 2018-08-16  Gary Benson <gbenson@redhat.com>
3310
3311         PR gdb/13000:
3312         * gdb/main.c (captured_main_1): Exit with nonzero status
3313         in batch mode if the last command to be executed failed.
3314         * NEWS: Mention the above.
3315
3316 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3317
3318         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3319         end of warning message.
3320
3321 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3322
3323         PR gdb/22943:
3324         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3325         (aarch64_extract_return_value): Use
3326         aapcs_is_vfp_call_or_return_candidate.
3327         (aarch64_return_in_memory): Likewise.
3328         (aarch64_store_return_value): Likewise.
3329
3330 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3331
3332         * aarch64-tdep.c
3333         (aapcs_is_vfp_call_or_return_candidate): Make static
3334         (pass_in_v_or_stack): Remove function.
3335         (pass_in_v_vfp_candidate): New function.
3336         (aarch64_push_dummy_call): Check for float register candidates.
3337
3338 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3339
3340         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3341         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3342         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3343
3344 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3345
3346         PR build/23399
3347         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3348         (struct ipa_sym_addresses): Rename to...
3349         (struct ipa_sym_addresses_common): ... this.
3350         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3351
3352 2018-08-28  Tom Tromey  <tom@tromey.com>
3353
3354         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3355         (token_fifo): Now a std::vector.
3356         (yylex, c_parse): Update.
3357         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3358         (token_fifo): Now a std::vector.
3359         (yylex, d_parse): Update.
3360         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3361         (token_fifo): Now a std::vector.
3362         (yylex, go_parse): Update.
3363
3364 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3365
3366         * parser-defs.h (struct type_stack) <elements>: Change type to
3367         std::vector<union type_stack_elt>.
3368         <depth, size>: Remove.
3369         * parse.c (parse_exp_in_context_1): Adjust.
3370         (type_stack_reserve): Remove.
3371         (check_type_stack_depth): Remove.
3372         (insert_into_type_stack): Adjust to std::vector.
3373         (insert_type): Likewise.
3374         (push_type): Likewise.
3375         (push_type_int): Likewise.
3376         (insert_type_address_space): Likewise.
3377         (pop_type): Likewise.
3378         (pop_type_int): Likewise.
3379         (pop_typelist): Likewise.
3380         (pop_type_stack): Likewise.
3381         (append_type_stack): Likewise.
3382         (push_type_stack): Likewise.
3383         (get_type_stack): Likewise.
3384         (type_stack_cleanup): Likewise.
3385         (push_typelist): Likewise.
3386         (follow_types): Likewise.
3387         (_initialize_parse): Likewise.
3388
3389 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3390
3391         * NEWS: Mention csky target.
3392
3393 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3394             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3395             Don Breazeal  <donb@codesourcery.com>
3396
3397         * csky-linux-tdep.c: New file.
3398         * csky-tdep.c: Likewise.
3399         * csky-tdep.h: Likewise.
3400         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3401         csky-tdep.o.
3402         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3403         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3404         * configure.tgt: Add csky support.
3405
3406 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3407
3408         * python/py-framefilter.c (py_print_frame): Print frame architecture
3409         when printing on an MI output.
3410
3411 2018-08-27  Tom Tromey  <tom@tromey.com>
3412
3413         PR build/23087:
3414         * configure: Rebuild.
3415         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3416
3417 2018-08-27  Tom Tromey  <tom@tromey.com>
3418
3419         * aarch64-linux-tdep.c
3420         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3421         casts to int.
3422
3423 2018-08-27  Tom Tromey  <tom@tromey.com>
3424
3425         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3426         unsigned.
3427         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3428         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3429         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3430         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3431         unsigned.
3432
3433 2018-08-27  Tom Tromey  <tom@tromey.com>
3434
3435         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3436         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3437
3438 2018-08-27  Tom Tromey  <tom@tromey.com>
3439
3440         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3441         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3442         ULONGEST_MAX.
3443         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3444         ULONGEST_MAX.
3445         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3446         ULONGEST_MAX.
3447         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3448         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3449         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3450         ULONGEST_MAX.
3451         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3452         (ppc64_linux_sigaction_tramp_frame)
3453         (ppc32_linux_sighandler_tramp_frame)
3454         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3455         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3456         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3457         * mn10300-linux-tdep.c (am33_linux_sigframe)
3458         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3459         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3460         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3461         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3462         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3463         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3464         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3465         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3466         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3467         * microblaze-linux-tdep.c
3468         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3469         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3470         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3471         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3472         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3473         * common/common-types.h (ULONGEST_MAX): New define.
3474         (CORE_ADDR_MAX): Fix formatting.
3475         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3476         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3477         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3478         (arm_linux_rt_sigreturn_tramp_frame)
3479         (arm_eabi_linux_sigreturn_tramp_frame)
3480         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3481         (thumb2_eabi_linux_sigreturn_tramp_frame)
3482         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3483         (arm_linux_restart_syscall_tramp_frame)
3484         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3485         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3486         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3487         ULONGEST_MAX.
3488         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3489
3490 2018-08-27  Tom Tromey  <tom@tromey.com>
3491
3492         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3493         CORE_ADDR_MAX.
3494         * mips-tdep.c (mips_deal_with_atomic_sequence)
3495         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3496         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3497         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3498         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3499         CORE_ADDR_MAX.
3500         * aarch64-tdep.c (aarch64_software_single_step): Use
3501         CORE_ADDR_MAX.
3502
3503 2018-08-27  Tom Tromey  <tom@tromey.com>
3504
3505         * linespec.c (complete_linespec_component): Add cast to "char".
3506         * completer.c (completion_tracker::build_completion_result): Add
3507         cast to "char".
3508
3509 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3510
3511         * solist.h (struct solist, struct target_so_ops): Fix
3512         indentation.
3513
3514 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3515
3516         * ada-tasks.c (ada_task_info_s): Remove typedef.
3517         (DEF_VEC_O(ada_task_info_s)): Remove.
3518         (struct ada_tasks_inferior_data): Initialize fields.
3519         <task_list>: Make an std::vector.
3520         (get_ada_tasks_inferior_data): Allocate with new.
3521         (ada_get_task_number): Adjust.
3522         (get_task_number_from_id): Likewise.
3523         (valid_task_id): Likewise.
3524         (ada_get_task_info_from_ptid): Likewise.
3525         (iterate_over_live_ada_tasks): Likewise.
3526         (add_ada_task): Likewise.
3527         (read_known_tasks): Likewise.
3528         (ada_build_task_list): Likewise.
3529         (print_ada_task_info): Likewise.
3530         (info_task): Likewise.
3531         (task_command_1): Likewise.
3532
3533 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3534
3535         * ada-lang.c (add_angle_brackets): Return std::string.
3536
3537 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3538
3539         * python/py-threadevent.c (py_get_event_thread): Initialize
3540         pythread.
3541
3542 2018-08-24  Pedro Alves  <palves@redhat.com>
3543
3544         * python/py-bpevent.c (create_breakpoint_event_object): Use
3545         copy-initialization.
3546         * python/py-continueevent.c (emit_continue_event): Use
3547         copy-initialization.
3548         * python/py-exitedevent.c (create_exited_event_object): Return a
3549         gdbpy_ref<>.
3550         (emit_exited_event): Use copy-initialization.
3551         * python/py-inferior.c (python_new_inferior)
3552         (python_inferior_deleted, add_thread_object): Use
3553         copy-initialization.
3554         * python/py-infevents.c (create_inferior_call_event_object)
3555         (create_register_changed_event_object)
3556         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3557         (emit_inferior_call_event, emit_memory_changed_event)
3558         (emit_register_changed_event): Use copy-initialization.
3559         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3560         Return a gdbpy_ref<>.
3561         (emit_new_objfile_event): Use copy-initialization.
3562         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3563         (emit_clear_objfiles_event): Use copy-initialization.
3564         * python/py-signalevent.c (create_signal_event_object): Use
3565         copy-initialization.
3566         * python/py-threadevent.c (create_thread_event_object): Use
3567         copy-initialization.
3568
3569 2018-08-24  Pedro Alves  <palves@redhat.com>
3570             Simon Marchi  <simon.marchi@ericsson.com>
3571
3572         PR gdb/23379
3573         * python/py-continueevent.c: Include "gdbthread.h".
3574         (create_continue_event_object): Add intro comment.  Add 'ptid'
3575         parameter.  Use it to find thread to pass to
3576         create_thread_event_object.
3577         (emit_continue_event): Pass PTID down to
3578         create_continue_event_object.
3579         * python/py-event.h (py_get_event_thread): Declare.
3580         (create_thread_event_object): Remove default from 'thread'
3581         parameter.
3582         * python/py-stopevent.c (create_stop_event_object): Use
3583         py_get_event_thread.
3584         * python/py-threadevent.c (get_event_thread): Rename to ...
3585         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3586         and use it to find the thread.
3587         (create_thread_event_object): Assert that THREAD isn't null.
3588         Don't find the event thread here.
3589
3590 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3591
3592         * block.h (blockrange, blockranges): New struct declarations.
3593         (struct block): Add new field named `ranges'.
3594         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3595         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3596         macros for accessing ranges in struct block.
3597         (make_blockranges): New declaration.
3598         block.c (make_blockranges): New function.
3599         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3600         for block.
3601         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3602         * blockframe.c (cache_pc_function_block): New static global.
3603         (clear_pc_function_cache): Clear cache_pc_function_block.
3604         (find_pc_partial_function): Move comment to symtab.h.  Add
3605         support for non-contiguous blocks.
3606         * cli/cli-cmds.c (block.h): Include.
3607         (print_disassembly): Handle printing of non-contiguous blocks.
3608         (disassemble_current_function): Likewise.
3609         (disassemble_command): Likewise.
3610
3611         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3612         BLOCK_START.
3613         * blockframe.c (get_pc_function_start): Likewise.
3614         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3615         (gcc_symbol_address): Likewise.
3616         * compile/compile-object-run.c (compile_object_run): Likewise.
3617         * compile/compile.c (get_expr_block_and_pc): Likewise.
3618         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3619         (func_addr_to_tail_call_list): Likewise.
3620         * findvar.c (default_read_var_value): Likewise.
3621         * inline-frame.c (inline_frame_this_id): Likewise.
3622         (skip-inline_frames): Likewise.
3623         * infcmd.c (until_next_command): Likewise.
3624         * linespec.c (convert_linespec_to_sals): Likewise.
3625         * parse.c (parse_exp_in_context_1): Likewise.
3626         * printcmd.c (build_address_symbolic): likewise.
3627         (info_address_command): Likewise.
3628         symtab.c (find_function_start_sal): Likewise.
3629         (skip_prologue_sal): Likewise.
3630         (find_function_alias_target): Likewise.
3631         (find_gnu_ifunc): Likewise.
3632         * stack.c (find_frame_funname): Likewise.
3633         * symtab.c (fixup_symbol_section): Likewise.
3634         (find_function_start_sal): Likewise.
3635         (skip_prologue_sal): Likewsie.
3636         (find_function_alias_target): Likewise.
3637         (find_gnu_ifunc): Likewise.
3638         * tracepoint.c (info_scope_command): Likewise.
3639         * value.c (value_fn_field): Likewise.
3640
3641         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3642         in place of find_pc_partial_function.
3643         * blockframe.c (find_function_entry_range_from_pc): New function.
3644         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3645         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3646         for each range in a block.
3647
3648
3649 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3650
3651         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3652         incrementation.
3653
3654 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3655
3656         * solib-svr4.c (read_program_headers_from_bfd): Return
3657         gdb::optional<gdb::byte_vector>.
3658         (svr4_exec_displacement): Adjust.
3659
3660 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3661
3662         * solib-svr4.c (read_program_header): Return
3663         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3664         (find_program_interpreter): Return
3665         gdb::optional<gdb::byte_vector>.
3666         (scan_dyntag_auxv): Adjust.
3667         (enable_break): Adjust.
3668         (svr4_exec_displacement): Adjust.
3669
3670 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3671
3672         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3673         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3674
3675 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3676
3677         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3678         string_vprintf.
3679         * guile/scm-utils.c (gdbscm_printf): Likewise.
3680         * serial.c (serial_printf): Likewise.
3681         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3682
3683 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3684
3685         * stack.c (print_frame): Print frame architecture when printing on
3686         an MI output.
3687         * NEWS: Mention new "arch" attribute in frame output.
3688
3689 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3690
3691         * arch/aarch64.h (aarch64_regnum): Update comment.
3692
3693 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3694
3695         * NEWS: Add SVE to 8.2 section.
3696
3697 2018-08-21  Pedro Alves  <palves@redhat.com>
3698
3699         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3700         out from gdbscm_parse_function_args.
3701         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3702         gdbscm_parse_function_args_1.
3703
3704 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3705
3706         PR gdb/17816
3707         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3708         operator.
3709
3710 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3711
3712         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3713
3714 2018-08-19  Michael Spang  <spang@google.com>
3715
3716         PR gdb/11786
3717         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3718         for PT_TLS segments.
3719
3720 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3721
3722         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3723         dwarf_variable_value.
3724         * dwarf2-frame.c (class dwarf_expr_executor):
3725         Add override for dwarf_variable_value.
3726         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3727         (class symbol_needs_eval_context): Likewise.
3728         (indirect_synthetic_pointer): Add forward declaration.
3729         (sect_variable_value): New function.
3730         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3731         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3732         for DW_OP_GNU_variable_value.
3733
3734 2018-08-16  Tom Tromey  <tom@tromey.com>
3735
3736         * top.c (read_command_file): Update.
3737         (command_line_input): Remove "repeat" argument.
3738         * ada-lang.c (get_selections): Update.
3739         * linespec.c (decode_line_2): Update.
3740         * defs.h (command_line_input): Remove argument.
3741         * cli/cli-script.c (read_next_line): Update.
3742         * python/py-gdb-readline.c: Update.
3743
3744 2018-08-17  Tom Tromey  <tom@tromey.com>
3745
3746         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3747         command_line_input.
3748
3749 2018-08-15  Tom Tromey  <tom@tromey.com>
3750
3751         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3752
3753 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3754
3755         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3756         If used, use find_pc_partial_function to find address range
3757         to disassemble.
3758         * mi/mi-main.c (mi_cmd_list_features): Report
3759         "data-disassemble-a-option" feature.
3760         * NEWS: Mention new -data-disassemble option -a.
3761
3762 2018-08-13  Tom Tromey  <tom@tromey.com>
3763
3764         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3765
3766 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3767
3768         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3769         (aarch64_linux_collect_sve_regset): Likewise.
3770         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3771         * regcache.h (regcache_map_entry_size): New function.
3772
3773 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3774
3775         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3776         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3777         (SVE_HEADER_VL_LENGTH): Likewise.
3778         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3779         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3780         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3781         (SVE_HEADER_SIZE_OFFSET): Likewise.
3782         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3783         (SVE_HEADER_VL_OFFSET): Likewise.
3784         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3785         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3786         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3787         (SVE_HEADER_SIZE): Likewise.
3788         (aarch64_linux_core_read_vq): Add function.
3789         (aarch64_linux_core_read_description): Check for SVE section.
3790
3791 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3792
3793         * aarch64-fbsd-tdep.c
3794         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3795         collect_size.
3796         * aarch64-linux-tdep.c
3797         (aarch64_linux_iterate_over_regset_sections): Likewise.
3798         * alpha-linux-tdep.c
3799         (alpha_linux_iterate_over_regset_sections):
3800         * alpha-nbsd-tdep.c
3801         (alphanbsd_iterate_over_regset_sections): Likewise.
3802         * amd64-fbsd-tdep.c
3803         (amd64fbsd_iterate_over_regset_sections): Likewise.
3804         * amd64-linux-tdep.c
3805         (amd64_linux_iterate_over_regset_sections): Likewise.
3806         * arm-bsd-tdep.c
3807         (armbsd_iterate_over_regset_sections): Likewise.
3808         * arm-fbsd-tdep.c
3809         (arm_fbsd_iterate_over_regset_sections): Likewise.
3810         * arm-linux-tdep.c
3811         (arm_linux_iterate_over_regset_sections): Likewise.
3812         * corelow.c (get_core_registers_cb): Likewise.
3813         (core_target::fetch_registers): Likewise.
3814         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3815         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3816         * gdbarch.h (void): Regenerate.
3817         * gdbarch.sh: Add supply_size and collect_size.
3818         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3819         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3820         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3821         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3822         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3823         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3824         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3825         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3826         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3827         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3828         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3829         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3830         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3831         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3832         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3833         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3834         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3835         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3836         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3837         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3838         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3839         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3840         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3841         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3842         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3843         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3844         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3845         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3846         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3847         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3848
3849 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3850
3851         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3852         with string_printf.
3853
3854 2018-08-10  Keith Seitz  <keiths@redhat.com>
3855
3856         * compile/compile-c-support.c (add_code_header, add_code_footer):
3857         Move into policy class.
3858         (c_push_user_expression, pop_user_expression_nop)
3859         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3860         (compile_program): New host class.
3861         (c_compile_program): New typedef.
3862         (c_compute_porgram): Use c_compile_program.
3863
3864 2018-08-10  Keith Seitz  <keiths@redhat.com>
3865
3866         * compile/compile-internal.h (compile_instance::~compile_instance):
3867         Remove calls to htab_delete.
3868         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3869         * compile.c (compile_instance::compile_instance): Initialize
3870         htab unique pointers.
3871         (compile_instance::get_cached_type, compile_instance::insert_type)
3872         (compile_instance::error_symbol_once): Update for unique_ptr.
3873
3874 2018-08-10  Keith Seitz  <keiths@redhat.com>
3875
3876         * compile/compile-c-symbols.c (struct symbol_error)
3877         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3878         (compile_instance::insert_symbol_error)
3879         (compile_instance::error_symbol_once): Move to ...
3880         * compile/compile.c: ... here.
3881
3882 2018-08-10  Keith Seitz  <keiths@redhat.com>
3883
3884         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3885         instead of `new_compile_instance'.
3886         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3887         Update description.
3888         If the symbol error map is not initialized, create it.
3889         (generate_c_for_for_one_symbol): Do not check/initialize
3890         the symbol error map.
3891         * compile/compile-c-types.c (compile_c_instance): Make a class.
3892         Update all callers.
3893         (compile_instance::compile_instance): Initialize the type cache.
3894         (get_cached_type): New function.
3895         (insert_type): Update description.
3896         (compile_c_instance::m_default_cflags): Define.
3897         (convert_type): Update description.  Use get_cached_type.
3898         (delete_instance): Moved to destructor.
3899         (new_compile_instance): Moved to constructor.
3900         * compile/compile-c.h (compile_c_instance): Make class inheriting
3901         from compile_instance.
3902         <base>: Remove field.
3903         <type_map, symbol_err_map>: Move to base class.
3904         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3905         * compile/compile-internal.h (compile_instance): Make class.
3906         <type_map_t, symbol_err_map_t>: Define.
3907         <fe>: Rename to `m_gcc_fe'.
3908         <scope, block, gcc_target_options>: Add `m_' prefix.
3909         <m_type_map, m_symbol_err_map>: New fields, moved from
3910         compile_c_instance.
3911         <destroy>: Remove.
3912         (convert_type, new_compile_instance): Remove.
3913         * compile/compile.c (cleanup_compile_instance): Remove.
3914         (compile_to_object): Use unique_ptr to eliminate cleanups.
3915         (compile_instance::set_print_callback, compile_instance::version)
3916         (compile_instance::set_verbose)
3917         (compile_instance::set_driver_filename)
3918         (compile_instance::set_triplet_regexp)
3919         (compile_instance::set_arguments)
3920         (compile_instance::set_source_file)
3921         (compile_instance::compile): Define.
3922
3923 2018-08-10  Keith Seitz  <keiths@redhat.com>
3924
3925         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3926         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3927         gcc-c-fe.def to define C plugin.
3928         (delete_instance): Delete `c_plugin'.
3929         (new_compile_instance): Initialize `c_plugin'.
3930         * compile/compile-c.h: Include gcc_c_plugin.h.
3931         (struct compile_c_instance) <c_plugin>: New member.
3932         * gcc-c-plugin.h: New file.
3933         Update all callers with API change.
3934
3935 2018-08-10  Keith Seitz  <keiths@redhat.com>
3936
3937         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3938         (HFILES_NO_SRCDIR): ... to here.
3939         Add compile-internal.h and compile-c.h.
3940         * compile/compile-c-support.c: Include compile-c.h.
3941         * compile/compile-c-symbols.c: Include compile-c.h.
3942         (generate_c_for_variable_locations): Update comment.
3943         * compile/compile-c-types.c: Include compile-c.h.
3944         * compile/compile-c.h: New file -- moved C language declarations
3945         from other files here.
3946         * compile/compile-internal.h: Do not include hashtab.h or
3947         common/enum-flags.h.
3948         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3949         (gcc_convert_symbol, gcc_symbol_address)
3950         (generate_c_for_variable_locations, c_get_mode_for_size)
3951         (c_get_range_decl_name): Definitions moved to compile-c.h.
3952         * compile/compile-loc2c.c: Include compile-c.h.
3953
3954 2018-08-10  Keith Seitz  <keiths@redhat.com>
3955
3956         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3957         (c_symbol_substitution_name): ... this.
3958         Update all callers.
3959
3960 2018-08-10  Keith Seitz  <keiths@redhat.com>
3961
3962         * compile/compile-c-support.c (c_compute_program): Use
3963         unique_xmalloc_ptr to eliminate cleanup.
3964         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3965         Return a unique_xmalloc_ptr and eliminate cleanup.
3966         * compile/compile-internal.h (generate_c_for_variable_locations):
3967         Return unique_xmalloc_ptr and update description.
3968
3969 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3970
3971         * corelow.c (core_target::get_core_register_section): Rename
3972         min_size to section_min_size.
3973
3974 2018-08-09  Jim Wilson  <jimw@sifive.com>
3975
3976         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3977         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3978         * NEWS: Mention new GNU/Linux RISC-V target.
3979         * configure.host: Add riscv*-*-linux*.
3980         * configure.nat: Add riscv*.
3981         * configure.tgt: Add riscv*-*-linux*.
3982         * riscv-linux-nat.c: New file.
3983         * riscv-linux-tdep.c: New file.
3984
3985 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3986
3987         * infrun.c (resume): Make static, add forward declaration.
3988         (proceed): Update header comment.
3989         * infrun.h (resume): Delete declaration.
3990
3991 2018-08-09  Tom Tromey  <tom@tromey.com>
3992
3993         * riscv-tdep.h: Minor formatting fixes.
3994
3995 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3996
3997         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3998         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3999         (test_mkdir_recursive): Likewise.
4000         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4001
4002 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4003
4004         * valarith.c (value_subscripted_rvalue): If an array is not in
4005         memory, and we don't know the upper bound, then we can't know that
4006         the requested element exists or not.
4007
4008 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4009
4010         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4011         (target_options_to_string): Add comment.
4012
4013 2018-08-08  Tom Tromey  <tom@tromey.com>
4014
4015         * unittests/scoped_mmap-selftests.c: Check result of "write".
4016
4017 2018-08-08  Jim Wilson  <jimw@sifive.com>
4018
4019         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4020         (decode_register_index_short): New.
4021         (decode_j_type_insn, decode_cj_type_insn): New.
4022         (decode_b_type_insn, decode_cb_type_insn): New.
4023         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4024         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4025         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4026         is_c_sw_insn instead of is_sw_insn.
4027         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4028         (riscv_software_single_step): New.
4029         * riscv-tdep.h (riscv_software_single_step): Declare.
4030
4031         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4032         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4033
4034 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4035
4036         PR gdb/18050:
4037         * target.c (dispose_inferior): Don't dispose of inferiors that are
4038         already killed.
4039
4040 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4041
4042         * remote.c (remote_target::download_tracepoint): Change char* to
4043         const char*.
4044
4045 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4046
4047         * target.h (target_options_to_string): Return an std::string.
4048         * target.c (str_comma_list_concat_elem): Return void, use
4049         std::string.
4050         (do_option): Likewise.
4051         (target_options_to_string): Return an std::string.
4052         * linux-nat.c (linux_nat_target::wait): Adjust.
4053         * target-debug.h (target_debug_print_options): Adjust.
4054
4055 2018-08-07  Tom Tromey  <tom@tromey.com>
4056
4057         * Makefile.in (CPPFLAGS): New variable.
4058         (INTERNAL_CPPFLAGS): Use it.
4059
4060 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4061
4062         * NEWS: Mention the index cache.
4063
4064 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4065
4066         * common/pathstuff.h (get_standard_cache_dir): New.
4067         * common/pathstuff.c (get_standard_cache_dir): New.
4068         * build-id.h (build_id_to_string): New.
4069         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4070         DEBUG_STR_SUFFIX): Move to here.
4071         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4072         DEBUG_STR_SUFFIX): Move from there.
4073         (write_psymtabs_to_index): Make non-static, add basename
4074         parameter.  Write to temporary files, rename when done.
4075         (save_gdb_index_command): Adjust call to
4076         write_psymtabs_to_index.
4077         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4078         field.
4079         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4080         (get_gdb_index_contents_from_cache): New.
4081         (get_gdb_index_contents_from_cache_dwz): New.
4082         (dwarf2_initialize_objfile): Read index from cache.
4083         (dwarf2_build_psymtabs): Save to index.
4084         * dwarf-index-cache.h: New file.
4085         * dwarf-index-cache.c: New file.
4086         * dwarf-index-write.h: New file.
4087
4088 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4089
4090         * gnulib/aclocal.m4: Re-generate.
4091         * gnulib/config.in: Re-generate.
4092         * gnulib/configure: Re-generate.
4093         * gnulib/import/Makefile.am: Re-generate.
4094         * gnulib/import/Makefile.in: Re-generate.
4095         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4096         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4097         * gnulib/import/m4/mkdir.m4: New file.
4098         * gnulib/import/mkdir.c: New file.
4099         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4100         module.
4101
4102 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4103
4104         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4105         * common/scoped_mmap.c: New file.
4106         * common/scoped_mmap.h (destroy): New method.
4107         (~scoped_mmap, reset): Use destroy.
4108         (scoped_mmap): New move constructor.
4109         (mmap_file): New declaration.
4110         * unittests/scoped_mmap-selftests.c (test_normal,
4111         test_invalid_filename, run_tests): New functions.
4112         (_initialize_scoped_mmap_selftests): Register selftest.
4113
4114 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4115
4116         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4117         (read_gdb_index_from_buffer): ... this.  Remove section
4118         parameter, add buffer parameter.
4119         (get_gdb_index_contents_ftype,
4120         get_gdb_index_contents_dwz_ftype): New typedefs.
4121         (dwarf2_read_gdb_index): Add callback parameters to get the
4122         index contents.
4123         (get_gdb_index_contents_from_section): New.
4124         (dwarf2_initialize_objfile): Update call to
4125         dwarf2_read_gdb_index.
4126
4127 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4128
4129         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4130         (gdb_open_cloexec): Likewise.
4131         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4132         (commandline_from_pid): Likewise.
4133         (linux_xfer_osdata_threads): Likewise.
4134         (linux_xfer_osdata_fds): Likewise.
4135         * ada-lang.c (is_package_name): Likewise.
4136         * auxv.c (procfs_xfer_auxv): Likewise.
4137         * breakpoint.c (print_one_breakpoint_location): Use
4138         uiout::field_fmt.
4139         (print_one_catch_solib): Use string_printf.
4140         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4141         (add_pe_forwarded_sym): Likewise.
4142         * dwarf2read.c (create_type_unit_group): Likewise.
4143         (build_error_marker_type): Likewise.
4144         * infcall.c (get_function_name): Likewise.
4145         * valprint.c (print_converted_chars_to_obstack): Likewise.
4146         * xtensa-tdep.c (xtensa_register_type): Likewise.
4147
4148 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4149
4150         * remote.c (remote_target::download_tracepoint): Fix format
4151         string errors.
4152
4153 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4154
4155         * tracefile.c: Include common/byte-vector.h.
4156         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4157         with trace_regblock_size if needed.  Update uses of buf.
4158
4159 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4160
4161         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4162         std::vector<unsigned char>.
4163         * tracepoint.c (collection_list::collection_list): Remove
4164         m_regs_mask initializer from initializer list.  Resize
4165         m_regs_mask using the largest remote register number.
4166         (collection_list::add_remote_register): Remove size check on
4167         m_regs_mask.  Use at to access element.
4168         (collection_list::stringify): Change type of temp_buf to
4169         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4170         stringify the register mask.  Use pack_hex_byte for the register
4171         mask.
4172
4173 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4174
4175         * tracepoint.h (class collection_list) <add_register>: Remove.
4176         <add_remote_register, add_ax_registers, add_local_register>:
4177         Declare.
4178         <add_memrange>: Add scope parameter.
4179         * tracepoint.c (encode_actions_1): Likewise.
4180         (collection_list::add_register): Rename to ...
4181         (collection_list::add_remote_register): ... this.  Update
4182         comment.
4183         (collection_list::add_ax_registers, add_local_register): New
4184         methods.
4185         (collection_list::add_memrange): Add scope parameter.  Call
4186         add_local_register instead of add_register.
4187         (finalize_tracepoint_aexpr): New function.
4188         (collection_list::collect_symbol): Update calls to add_memrange.
4189         Call add_local_register instead of add_register.  Call
4190         add_ax_registers.  Call finalize_tracepoint_aexpr.
4191         (encode_actions_1): Get remote regnos for $reg action.  Call
4192         add_remote_register, add_ax_registers, and add_local_register.
4193         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4194         (validate_actionline): Call finalize_tracepoint_aexpr.
4195
4196 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4197
4198         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4199         Replace array buf with gdb::char_vector buf, of size
4200         get_remote_packet_size ().  Replace references to buf and
4201         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4202         and xsnprintf with snprintf.  Raise errors if the buffer is too
4203         small.
4204
4205 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4206
4207         * remote.c (remote_target::download_tracepoint): Fix the has_more
4208         predicate in the QTDP action list iteration.
4209
4210 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4211
4212         * remote.c (remote_target::download_tracepoint): Fix indentation
4213         in for block.
4214
4215 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4216
4217         * proc-api.c (_initialize_proc_api): Remove c, unused.
4218         * procfs.c (procfs_init_inferior): Remove signals, unused.
4219         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4220         unused.
4221
4222 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4223             Andrew Burgess  <andrew.burgess@embecosm.com>
4224
4225         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4226         'W_STOPCODE (0)' as this could be ambiguous.
4227
4228 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4229
4230         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4231         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4232         "ai_socktype").
4233
4234 2018-08-02  Tom Tromey  <tom@tromey.com>
4235
4236         PR symtab/16842.
4237         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4238         symbols.
4239         (process_structure_scope): Likewise.
4240
4241 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4242
4243         PR gdb/22629:
4244         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4245         kill inferior.
4246
4247 2018-08-02  Tom Tromey  <tom@tromey.com>
4248
4249         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4250         (darwin_suspend_inferior, darwin_resume_inferior)
4251         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4252         (darwin_check_new_threads): Check result of get_darwin_inferior.
4253
4254 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4255
4256         GDB 8.1.1 released.
4257
4258 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4259
4260         * varobj.c (varobj_get_path_expr_parent): Report an error if
4261         parent is a dynamic varobj.
4262
4263 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4264
4265         * gnulib/aclocal.m4: Re-generate.
4266         * gnulib/config.in: Re-generate.
4267         * gnulib/configure: Re-generate.
4268         * gnulib/import/Makefile.in: Re-generate.
4269         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4270         * gnulib/import/m4/onceonly.m4: Re-generate.
4271
4272 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4273
4274         * target-descriptions.c (struct xml_test_tdesc): New.
4275         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4276         (record_xml_tdesc): Update.
4277         (maintenance_check_xml_descriptions): Update.
4278         * target-descriptions.h (record_xml_tdesc): Update comment.
4279
4280 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4281
4282         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4283         checking array bounds are defined.
4284
4285 2018-07-30  Tom Tromey  <tom@tromey.com>
4286
4287         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4288         irreflexivity violation.
4289
4290 2018-07-30  Tom Tromey  <tom@tromey.com>
4291
4292         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4293         * value.c (unpack_long): Remove lint code.
4294         * valops.c (value_ind): Remove lint code.
4295         * valarith.c (value_x_binop, value_x_unop, value_equal)
4296         (value_pos): Remove lint code.
4297
4298 2018-07-28  Tom de Vries  <tdevries@suse.de>
4299
4300         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4301         with undefined upper bound as <optimized out>.
4302
4303 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4304
4305         * gcore.in: Rename variable "name" to "prefix".  Expand
4306         "usage" text.
4307
4308 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4309
4310         * windows-nat.c (windows_nat_target::create_inferior): Update to
4311         call close() in global namespace.
4312
4313 2018-07-26  Tom Tromey  <tom@tromey.com>
4314
4315         * dwarf-index-write.c (add_address_entry): Don't add objfile
4316         offsets.
4317         * dbxread.c (find_stab_function): Rename from
4318         find_stab_function_addr.  Return a bound_minimal_symbol.
4319         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4320         Don't add objfile offsets.
4321         (end_psymtab): Use raw_text_low, raw_text_high,
4322         MSYMBOL_VALUE_RAW_ADDRESS.
4323         (read_ofile_symtab): Update.
4324         (process_one_symbol): Update.
4325         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4326         offsets.
4327         (dw2_relocate): Remove.
4328         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4329         searching addrmap.
4330         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4331         Update.
4332         (process_psymtab_comp_unit_reader, add_partial_symbol)
4333         (add_partial_subprogram, dwarf2_ranges_read): Update.
4334         (load_partial_dies): Update.
4335         (add_address_entry): Don't add objfile offsets.
4336         (dwarf2_build_include_psymtabs): Update.
4337         (create_addrmap_from_aranges): Don't add objfile offsets.
4338         (dw2_find_pc_sect_compunit_symtab): Update.
4339         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4340         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4341         Update.
4342         (parse_partial_symbols): Don't add objfile offsets.  Use
4343         raw_text_low, raw_text_high.  Update.
4344         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4345         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4346         or call 'relocate' quick function.  Clear psymbol_map.
4347         * psympriv.h (struct partial_symbol) <address>: Add section
4348         offset.
4349         <set_unrelocated_address>: Rename from set_address.
4350         <raw_text_low, raw_text_high>: New methods.
4351         <text_low, text_high>: Add objfile parameter.
4352         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4353         set_unrelocated_address.
4354         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4355         (find_pc_psymbol): Update.
4356         (fixup_psymbol_section, relocate_psymtabs): Remove.
4357         (dump_psymtab, psym_functions): Update.
4358         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4359         parameter.
4360         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4361         (start_psymtab_common): Update.
4362         * symfile-debug.c (debug_qf_relocate): Remove.
4363         (debug_sym_quick_functions): Update.
4364         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4365         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4366         Update.
4367
4368 2018-07-26  Tom Tromey  <tromey@redhat.com>
4369
4370         * dbxread.c (end_psymtab): Use text_high_valid and
4371         text_low_valid.
4372         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4373         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4374         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4375         Update comment.
4376         <text_low_valid, text_high_valid>: New fields.
4377         <set_text_low, set_text_high>: Update.
4378         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4379
4380 2018-07-26  Tom Tromey  <tom@tromey.com>
4381
4382         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4383         Update.
4384         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4385         textlow and texthigh fields.
4386         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4387         Update.
4388         * mdebugread.c (parse_lines, parse_partial_symbols)
4389         (psymtab_to_symtab_1): Update.
4390         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4391         Rename fields.  Update comment.  Now private.
4392         <text_low, text_high, set_text_low, set_text_high>: New methods.
4393         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4394         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4395         (start_psymtab_common, maintenance_info_psymtabs)
4396         (maintenance_check_psymtabs): Update.
4397         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4398         texthigh fields.
4399         (scan_xcoff_symtab): Update.
4400
4401 2018-07-26  Tom Tromey  <tromey@redhat.com>
4402
4403         * psympriv.h (struct partial_symbol) <unrelocated_address,
4404         address, set_address>: New methods.
4405         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4406         (fixup_psymbol_section, relocate_psymtabs): Update.
4407         (print_partial_symbols): Add 'objfile' parameter.  Update.
4408         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4409         Update.
4410
4411 2018-07-26  Tom Tromey  <tom@tromey.com>
4412
4413         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4414         (debug_names::write_psymbols): Update.
4415         * psympriv.h (struct partial_symbol): Derive from
4416         general_symbol_info.
4417         <obj_section>: New method.
4418         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4419         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4420         (find_pc_sect_psymbol, fixup_psymbol_section)
4421         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4422         (print_partial_symbols, recursively_search_psymtabs)
4423         (compare_psymbols, psymbol_hash, psymbol_compare)
4424         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4425         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4426
4427 2018-07-26  Tom Tromey  <tromey@redhat.com>
4428
4429         * dbxread.c (end_psymtab): Remove dead code.
4430
4431 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4432
4433         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4434         DWARF unwinders are disabled.
4435         * dwarf2-frame.c: Add dwarf2read.h include.
4436         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4437         disabled.
4438         (dwarf2_frame_unwinders_enabled_p): Define.
4439         (show_dwarf_unwinders_enabled_p): New function.
4440         (_initialize_dwarf2_frame): Register switch to control DWARF
4441         unwinder use.
4442         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4443         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4444         (show_dwarf_cmdlist): Remove static keyword.
4445         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4446         (show_dwarf_cmdlist): Declare.
4447         * NEWS: Document new feature.
4448
4449 2018-07-26  Tom de Vries  <tdevries@suse.de>
4450
4451         PR breakpoints/23366
4452         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4453
4454 2018-07-26  Tom de Vries  <tdevries@suse.de>
4455
4456         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4457         DW_AT_count can't be translated to a dynamic prop.
4458
4459 2018-07-25  Tom de Vries  <tdevries@suse.de>
4460
4461         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4462         try/catch.
4463
4464 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4465
4466         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4467
4468 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4469
4470         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4471
4472 2018-07-24  Keith Seitz  <keiths@redhat.comt
4473
4474         PR symtab/23010
4475         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4476         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4477         instead of add_symbol_to_list.
4478         (read_file_scope): Call prepare_one_comp_unit before reading
4479         any other DIEs.
4480
4481 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4482
4483         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4484
4485 2018-07-24  Tom Tromey  <tom@tromey.com>
4486
4487         * utils.c (malloc, realloc, free): Don't declare.
4488         * configure, config.in: Rebuild.
4489         * configure.ac: Don't check for declarations of free, malloc, or
4490         realloc.
4491
4492 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4493
4494         * aarch64-linux-nat.c
4495         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4496         variable.
4497         * arm-linux-nat.c (fetch_regs): Likewise.
4498         (store_regs): Likewise.
4499         (fetch_vfp_regs): Likewise.
4500         (store_vfp_regs): Likewise.
4501         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4502         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4503         (arm_linux_nat_target::insert_watchpoint): Likewise.
4504         (arm_linux_nat_target::remove_watchpoint): Likewise.
4505         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4506         Likewise.
4507         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4508         Likewise.
4509         * ppc-linux-nat.c (fetch_register): Likewise.
4510         (fetch_all_gp_regs): Likewise.
4511         (fetch_ppc_registers): Likewise.
4512         (store_all_gp_regs): Likewise.
4513         (store_ppc_registers): Likewise.
4514         (hwdebug_insert_point): Likewise.
4515         (can_use_watchpoint_cond_accel): Likewise.
4516         * remote-sim.c (gdb_os_write_stdout): Likewise.
4517
4518 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4519             Tom Tromey  <tom@tromey.com>
4520
4521         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4522         test for it.
4523         * configure: Rebuild.
4524
4525 2018-07-22  Tom Tromey  <tom@tromey.com>
4526
4527         * regformats/regdat.sh: Define xmltarget_${name} inside
4528         #ifndef IN_PROCESS_AGENT.
4529
4530 2018-07-22  Tom Tromey  <tom@tromey.com>
4531
4532         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4533
4534 2018-07-22  Tom Tromey  <tom@tromey.com>
4535
4536         * symfile.c (reread_symbols): Notify iter, not objfile.
4537
4538 2018-07-22  Tom Tromey  <tom@tromey.com>
4539
4540         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4541         Use arch_ops.
4542         (ravenscar_thread_target::prepare_to_store): Likewise.
4543
4544 2018-07-22  Tom Tromey  <tom@tromey.com>
4545
4546         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4547         unused variable.  Call value_fetch_lazy when needed.
4548         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4549         Remove unused variable.  Call value_fetch_lazy when needed.
4550
4551 2018-07-22  Tom Tromey  <tom@tromey.com>
4552
4553         * m32c-tdep.c (mark_dma): Return void.
4554         (make_regs): Remove unused declarations.
4555
4556 2018-07-22  Tom Tromey  <tom@tromey.com>
4557
4558         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4559         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4560         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4561         bkscm_get_valid_block_smob_arg_unsafe for effect.
4562
4563 2018-07-22  Tom Tromey  <tom@tromey.com>
4564
4565         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4566         value_type.
4567
4568 2018-07-22  Tom Tromey  <tom@tromey.com>
4569
4570         * windows-nat.c (saved_context): Conditionally define.
4571         * remote.c (remote_target::remote_btrace_maybe_reopen):
4572         Conditionally declare "warned".
4573         * inflow.c (sigquit_ours): Conditionally define.
4574         (new_tty): Move "tty" declaration inside #if.
4575         * guile/guile.c (guile_datadir): Conditionally define.
4576         * charset.c (set_be_le_names): Move some declarations inside #if.
4577         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4578         #if.
4579         (parse_xml_btrace_conf): Likewise.
4580
4581 2018-07-22  Tom Tromey  <tom@tromey.com>
4582
4583         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4584
4585 2018-07-22  Tom Tromey  <tom@tromey.com>
4586
4587         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4588         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4589         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4590         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4591         * stack.c (frame_apply_level_command): Remove unused variable.
4592         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4593         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4594         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4595         unused variable.
4596         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4597         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4598         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4599         variable.
4600         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4601         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4602         variable.
4603         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4604         Remove unused variable.
4605         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4606         variable.
4607         * common/tdesc.c (print_xml_feature::visit): Remove unused
4608         variable.
4609         * compile/compile-object-load.c (store_regs): Remove unused
4610         variables.
4611         * complaints.c (clear_complaints): Remove unused variable.
4612         * corelow.c (core_target_open): Remove unused variable.
4613         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4614         variable.
4615         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4616         variable.
4617         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4618         variable.
4619         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4620         variable.
4621         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4622         variable.
4623         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4624         variable.
4625         * ia64-tdep.c (examine_prologue): Remove unused variable.
4626         * infcall.c (run_inferior_call): Remove unused variable.
4627         * inferior.c (exit_inferior): Remove unused variable.
4628         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4629         * linespec.c (decode_line_2): Remove unused variable.
4630         * linux-nat.c (super_close): Remove.
4631         * linux-tdep.c (linux_info_proc): Remove unused variable.
4632         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4633         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4634         Remove unused variable.
4635         * parse.c (find_minsym_type_and_address): Remove unused variable.
4636         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4637         variable.
4638         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4639         variable.
4640         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4641         variables.
4642         * record-btrace.c (record_btrace_target::store_registers): Remove
4643         unused variable.
4644         (cmd_show_record_btrace_cpu): Remove unused variable.
4645         * riscv-tdep.c (riscv_register_reggroup_p)
4646         (riscv_push_dummy_call, riscv_return_value): Remove unused
4647         variable.
4648         * rust-exp.y (literal): Remove unused variable.
4649         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4650         unused variable.
4651         <STRUCTOP_ANONYMOUS>: Likewise.
4652         * s390-linux-tdep.c (s390_linux_init_abi_31)
4653         (s390_linux_init_abi_64): Remove unused variable.
4654         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4655         (file_select_thread, net_windows_open, _initialize_ser_windows):
4656         Remove unused variables.
4657         * symtab.c (find_pc_sect_line): Remove unused variable.
4658         * target-memory.c (compute_garbled_blocks): Remove unused
4659         variable.
4660         (target_write_memory_blocks): Remove unused variable.
4661         * target.c (target_stack::unpush): Remove unused variables.
4662         * tracepoint.c (start_tracing, all_tracepoint_actions)
4663         (merge_uploaded_trace_state_variables)
4664         (print_one_static_tracepoint_marker): Remove unused variable.
4665         * unittests/basic_string_view/element_access/char/1.cc (test01):
4666         Remove unused variable.
4667         * windows-nat.c (windows_continue, windows_add_all_dlls)
4668         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4669         Remove unused variables.
4670
4671 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4672
4673         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4674         attr_profile in HAVE_ELF.
4675         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4676         HAVE_ELF.
4677
4678 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4679
4680         * frame.c (frame_register_unwind): Change parameter name.
4681         (frame_unwind_register): Likewise.
4682         (frame_unwind_register_value): Likewise.
4683         (frame_unwind_register_signed): Likewise.
4684         (frame_unwind_register_unsigned): Likewise.
4685         * frame.h (frame_register_unwind): Likewise.
4686         (frame_unwind_register): Likewise.
4687         (frame_unwind_register_value): Likewise.
4688         (frame_unwind_register_signed): Likewise.
4689         (frame_unwind_register_unsigned): Likewise.
4690         (frame_unwind_arch): Likewise.
4691
4692 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4693
4694         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4695         ISA maintenance.
4696
4697 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4698
4699         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4700         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4701         hand.
4702
4703 2018-07-20  Keith Seitz  <keiths@redhat.com>
4704
4705         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4706         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4707         m_compunit_symtab, m_language>: Add "m_" prefix.
4708         Update all uses.
4709         * buildsym.c: Update all uses.
4710
4711 2018-07-20  Tom Tromey  <tom@tromey.com>
4712
4713         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4714         * buildsym.h (record_line_ftype): Remove typedef.
4715
4716 2018-07-20  Tom Tromey  <tom@tromey.com>
4717
4718         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4719         (end_expandable_symtab): Likewise.
4720         (end_symtab_get_static_block): Likewise.
4721         (end_symtab_from_static_block): Likewise.
4722         * buildsym-legacy.c (augment_type_symtab): Remove.
4723         (end_expandable_symtab): Remove.
4724         (end_symtab_get_static_block): Remove.
4725         (end_symtab_from_static_block): Remove.
4726
4727 2018-07-20  Tom Tromey  <tom@tromey.com>
4728
4729         * dwarf2read.c: Include buildsym.h.
4730         (struct dwarf2_cu) <builder>: New method.
4731         (fixup_go_packaging): Update.
4732         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4733         use scoped_free_pendings.
4734         (using_directives): Add "cu" parameter, remove "language".
4735         (read_import_statement, setup_type_unit_groups, )
4736         (read_func_scope, read_lexical_block_scope)
4737         (dwarf2_record_block_ranges, read_namespace): Update.
4738         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4739         (lnp_state_machine::handle_end_sequence): Update.
4740         (class lnp_state_machine) <m_cu>: New member.
4741         <m_record_line_callback>: Remove.
4742         <m_currently_recording_lines>: New member.
4743         (lnp_state_machine::handle_set_file): Update.
4744         (noop_record_line): Remove.
4745         (dwarf_record_line_p): Add cu parameter.
4746         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4747         (lnp_state_machine::record_line)
4748         (lnp_state_machine::lnp_state_machine)
4749         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4750         (dwarf_decode_lines): Update.
4751         (dwarf2_start_subfile): Add cu parameter.
4752         (dwarf2_start_symtab, new_symbol): Update.
4753         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4754         Remove dwarf2_per_objfile parameter.
4755         (dwarf_decode_macros): Update.
4756
4757 2018-07-20  Tom Tromey  <tom@tromey.com>
4758
4759         * stabsread.c (define_symbol): Update.
4760         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4761         * dwarf2read.c (new_symbol): Update.
4762         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4763         * cp-namespace.c: Include buildsym.h.
4764         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4765         * buildsym-legacy.c (get_buildsym_compunit): New function.
4766
4767 2018-07-20  Tom Tromey  <tom@tromey.com>
4768
4769         * xcoffread.c: Include buildsym-legacy.h.
4770         * windows-nat.c: Include buildsym-legacy.h.
4771         * stabsread.c: Include buildsym-legacy.h.
4772         * mdebugread.c: Include buildsym-legacy.h.
4773         * buildsym-legacy.h: New file.
4774         * buildsym-legacy.c: New file, from buildsym.c.
4775         * go32-nat.c: Include buildsym-legacy.h.
4776         * dwarf2read.c: Include buildsym-legacy.h.
4777         * dbxread.c: Include buildsym-legacy.h.
4778         * cp-namespace.c: Include buildsym-legacy.h.
4779         * coffread.c: Include buildsym-legacy.h.
4780         * buildsym.h: Move some contents to buildsym-legacy.h.
4781         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4782         buildsym-legacy.c.
4783         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4784
4785 2018-07-20  Tom Tromey  <tom@tromey.com>
4786
4787         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4788         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4789         (buildsym_compunit::buildsym_compunit)
4790         (buildsym_compunit::~buildsym_compunit)
4791         (buildsym_compunit::get_macro_table): Define.
4792
4793 2018-07-20  Tom Tromey  <tom@tromey.com>
4794
4795         * buildsym.c (reset_symtab_globals): Remove.
4796         (buildsym_compunit::end_symtab_from_static_block): Update.
4797         (buildsym_compunit::augment_type_symtab): Update.
4798         (end_symtab_from_static_block): Call free_buildsym_compunit.
4799         (augment_type_symtab, end_symtab, end_expandable_symtab):
4800         Likewise.
4801
4802 2018-07-20  Tom Tromey  <tom@tromey.com>
4803
4804         * arch-utils.c: Do not include buildsym.h.
4805         * mipsread.c: Do not include buildsym.h.
4806         * machoread.c: Do not include buildsym.h.
4807         * elfread.c: Do not include buildsym.h.
4808
4809 2018-07-20  Tom Tromey  <tom@tromey.com>
4810
4811         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4812         initialization.
4813         (buildsym_compunit): Add new constructor.
4814         (struct buildsym_compunit) <get_last_source_file, finish_block,
4815         record_block_range, start_subfile, patch_subfile_names,
4816         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4817         set_last_source_start_addr, get_last_source_start_addr,
4818         get_local_using_directives, set_local_using_directives,
4819         get_global_using_directives, outermost_context_p,
4820         get_current_context_stack, get_context_stack_depth,
4821         get_current_subfile, get_local_symbols, get_file_symbols,
4822         get_global_symbols, record_debugformat, record_producer,
4823         push_context, pop_context, end_symtab_get_static_block,
4824         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4825         New public methods.
4826         <record_pending_block, finish_block_internal, make_blockvector,
4827         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4828         private methods.
4829         Update all users.
4830
4831 2018-05-22  Tom Tromey  <tom@tromey.com>
4832
4833         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4834         parameter.
4835         (finish_block_internal): Update.
4836
4837 2018-07-20  Tom Tromey  <tom@tromey.com>
4838
4839         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4840         parameter.
4841         (finish_block_internal): Update.
4842
4843 2018-07-20  Tom Tromey  <tom@tromey.com>
4844
4845         * buildsym.h (EXTERN): Don't define or undef.
4846         * buildsym.c (EXTERN): Don't define.
4847
4848 2018-07-20  Tom Tromey  <tom@tromey.com>
4849
4850         * buildsym.c: Remove TODO comment.
4851
4852 2018-07-20  Tom Tromey  <tom@tromey.com>
4853
4854         * coffread.c (coff_symtab_read): Update.
4855         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4856         (xcoff_new_init): Update.
4857         * mipsread.c (mipscoff_new_init): Update.
4858         * mdebugread.c (mdebug_build_psymtabs): Update.
4859         * elfread.c (elf_new_init): Update.
4860         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4861         Update.
4862         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4863         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4864         (stabsect_build_psymtabs): Update.
4865         * buildsym.h (buildsym_init): Don't declare.
4866         * buildsym.c: Update comment.
4867         (prepare_for_building): Remove.
4868         (start_symtab, restart_symtab): Update.
4869         (reset_symtab_globals): Update comment.
4870         (buildsym_init): Remove.
4871
4872 2018-07-20  Tom Tromey  <tom@tromey.com>
4873
4874         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4875         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4876         (read_enum_type, common_block_start, common_block_end)
4877         (cleanup_undefined_types_1, finish_global_stabs): Update.
4878         * mdebugread.c (psymtab_to_symtab_1): Update.
4879         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4880         (read_lexical_block_scope, new_symbol): Update.
4881         * dbxread.c (process_one_symbol): Update.
4882         * coffread.c (coff_symtab_read, process_coff_symbol)
4883         (coff_read_enum_type): Update.
4884         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4885         declare.
4886         (get_local_symbols, get_file_symbols, get_global_symbols): New
4887         functions.
4888         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4889         m_global_symbols.
4890         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4891         (~scoped_free_pendings): Update.
4892         (finish_block, prepare_for_building, reset_symtab_globals)
4893         (end_symtab_get_static_block, end_symtab_with_blockvector)
4894         (augment_type_symtab, push_context): Update.
4895         (get_local_symbols, get_file_symbols, get_global_symbols): New
4896         functions.
4897         (buildsym_init): Update.
4898
4899 2018-07-20  Tom Tromey  <tom@tromey.com>
4900
4901         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4902         (process_full_type_unit): Likewise.
4903         (dwarf2_start_symtab): Set list_in_scope.
4904
4905 2018-07-20  Tom Tromey  <tom@tromey.com>
4906
4907         * dwarf2read.c (process_psymtab_comp_unit_reader)
4908         (build_type_psymtabs_reader): Do not set list_in_scope.
4909
4910 2018-07-20  Tom Tromey  <tom@tromey.com>
4911
4912         * buildsym.c (free_pendings): Remove.
4913         (add_symbol_to_list, scoped_free_pendings)
4914         (finish_block_internal, buildsym_init): Update.
4915
4916 2018-07-20  Tom Tromey  <tom@tromey.com>
4917
4918         * xcoffread.c (read_xcoff_symtab): Update.
4919         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4920         Update.
4921         * dbxread.c (process_one_symbol): Update.
4922         * coffread.c (coff_symtab_read): Update.
4923         * buildsym.h (finish_block): Update.
4924         * buildsym.c (finish_block): Remove "listhead" argument.
4925         (end_symtab_get_static_block): Update.
4926
4927 2018-07-20  Tom Tromey  <tom@tromey.com>
4928
4929         * buildsym.h (class scoped_free_pendings): Remove constructor.
4930         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4931         method.
4932         <m_pending_block_obstack, m_pending_blocks>: New members.
4933         (pending_block_obstack, pending_blocks): Remove.
4934         (scoped_free_pendings::scoped_free_pendings): Default.
4935         (~scoped_free_pendings): Update.
4936         (free_pending_blocks): Remove.
4937         (finish_block_internal, record_pending_block, make_blockvector)
4938         (end_symtab_get_static_block, augment_type_symtab, push_context)
4939         (buildsym_init): Update.
4940
4941 2018-07-20  Tom Tromey  <tom@tromey.com>
4942
4943         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4944         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4945         members.
4946         (pending_addrmap, pending_addrmap_obstack)
4947         (pending_addrmap_interesting): Remove.
4948         (scoped_free_pendings, record_block_range, make_blockvector)
4949         (prepare_for_building, reset_symtab_globals, buildsym_init):
4950         Update.
4951
4952 2018-07-20  Tom Tromey  <tom@tromey.com>
4953
4954         * xcoffread.c (process_linenos): Update.
4955         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4956         * mdebugread.c (psymtab_to_symtab_1): Update.
4957         * dwarf2read.c (setup_type_unit_groups)
4958         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4959         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4960         * dbxread.c (process_one_symbol): Update.
4961         * coffread.c (coff_symtab_read, enter_linenos)
4962         (process_coff_symbol): Update.
4963         * buildsym.h (current_subfile): Don't declare.
4964         (get_current_subfile): Declare.
4965         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4966         member.
4967         (start_subfile, free_buildsym_compunit, push_subfile)
4968         (prepare_for_building, start_symtab): Update.
4969         (get_current_subfile): New function.
4970
4971 2018-07-20  Tom Tromey  <tom@tromey.com>
4972
4973         * coffread.c (coff_symtab_read): Update.
4974         * xcoffread.c (read_xcoff_symtab): Update.
4975         * dwarf2read.c (new_symbol): Update.
4976         (read_func_scope, read_lexical_block_scope): Update.
4977         * dbxread.c (process_one_symbol): Update.
4978         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4979         (outermost_context_p): Remove macro.
4980         (outermost_context_p, get_current_context_stack)
4981         (get_context_stack_depth): Declare.
4982         (pop_context): Return struct context_stack.
4983         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4984         member.
4985         (context_stack_size): Remove.
4986         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4987         (prepare_for_building, end_symtab_get_static_block)
4988         (augment_type_symtab, push_context): Update.
4989         (pop_context): Return struct context_stack.
4990         (outermost_context_p, get_current_context_stack)
4991         (get_context_stack_depth): New functions.
4992         (buildsym_init): Update.
4993
4994 2018-07-20  Tom Tromey  <tom@tromey.com>
4995
4996         * rust-exp.y: Now a pure parser.  Update all rules.
4997         (%union): Move earlier.
4998         (current_parser, work_obstack): Remove globals.
4999         (rust_parser, ~rust_parser): Update.
5000         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5001         lex_character, lex_number, lex_string, lex_identifier,
5002         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5003         convert_name, convert_params_to_expression,
5004         convert_ast_to_expression, ast_basic_type, ast_operation,
5005         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5006         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5007         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5008         ast_array_type, ast_slice_type, ast_reference_type,
5009         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5010         (rust_parse): Update.
5011         (rustyyerror, rustyylex): Add parser parameter.
5012         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5013         (rust_lex_stringish_test, rust_lex_test_sequence)
5014         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5015         (rust_lex_test_push_back, rust_lex_tests): Update.
5016
5017 2018-07-19  Pedro Alves  <palves@redhat.com>
5018
5019         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5020         gdb::unique_xmalloc_ptr.
5021         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5022         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5023         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5024         copy-initialization.
5025         * guile/scm-pretty-print.c (ppscm_print_children): Use
5026         gdb::unique_xmalloc_ptr instead of cleanups.
5027         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5028         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5029         gdb::unique_xmalloc_ptr.
5030         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5031         Adjust to use gdb::unique_xmalloc_ptr.
5032         * guile/scm-utils.c (extract_arg): Adjust.
5033         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5034         gdb::unique_xmalloc_ptr instead of a cleanup.
5035
5036 2018-07-19  Tom Tromey  <tom@tromey.com>
5037
5038         * utils.c (do_value_free_to_mark)
5039         (make_cleanup_value_free_to_mark): Remove.
5040         * utils.h (make_cleanup_value_free_to_mark): Remove.
5041
5042 2018-07-19  Pedro Alves  <palves@redhat.com>
5043
5044         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5045         forwarding reference.
5046
5047 2018-07-18  Pedro Alves  <palves@redhat.com>
5048
5049         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5050         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5051         cleanup.
5052
5053 2018-07-18  Pedro Alves  <palves@redhat.com>
5054
5055         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5056         exceptions.
5057         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5058         (gdbscm_wrap): New.
5059         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5060         directly instead of a cleanup.
5061         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5062         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5063         (vlscm_binop_gdbthrow): New, factored out from ...
5064         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5065         (vlscm_rich_compare): Use gdbscm_wrap.
5066         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5067         instead of a cleanup.
5068         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5069         cleanup.
5070         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5071         Use xfree directly instead of a cleanup.
5072         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5073         Adjust to use gdbscm_wrap and scoped_value_mark.
5074         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5075         (gdbscm_value_address, gdbscm_value_dereference)
5076         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5077         scoped_value_mark.
5078         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5079         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5080         scoped_value_mark.
5081         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5082         gdbscm_wrap and scoped_value_mark.
5083         (gdbscm_value_to_string): Use xfree directly instead of a
5084         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5085         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5086         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5087         scoped_value_mark.
5088         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5089         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5090         scoped_value_mark.
5091         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5092         gdbscm_wrap.
5093
5094 2018-07-18  Tom de Vries  <tdevries@suse.de>
5095
5096         * findvar.c (default_read_var_value): Also resolve dynamic type for
5097         LOC_OPTIMIZED_OUT vars.
5098
5099 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5100
5101         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5102         decoding.
5103
5104 2018-07-17  Tom Tromey  <tom@tromey.com>
5105
5106         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5107         (compute_enum_list, pascm_set_param_value_x)
5108         (gdbscm_parameter_value): Update.
5109         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5110         (gdbscm_scm_to_host_string): Update.
5111         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5112         Update.
5113         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5114         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5115         * guile/scm-string.c (gdbscm_scm_to_string): Return
5116         unique_xmalloc_ptr.
5117         (gdbscm_scm_to_host_string): Likewise.
5118
5119 2018-07-17  Tom Tromey  <tom@tromey.com>
5120
5121         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5122         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5123         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5124         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5125         unique_xmalloc_ptr.
5126
5127 2018-07-17  Tom Tromey  <tom@tromey.com>
5128
5129         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5130         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5131         Update.
5132         * guile/scm-cmd.c (cmdscm_function): Update.
5133         * guile/scm-pretty-print.c
5134         (ppscm_print_exception_unless_memory_error): Update.
5135         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5136         Return unique_xmalloc_ptr.
5137
5138 2018-07-17  Tom Tromey  <tom@tromey.com>
5139
5140         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5141         Use string_printf.
5142
5143 2018-07-17  Jim Wilson  <jimw@sifive.com>
5144
5145         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5146         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5147         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5148         unecessary braces after EF_RISCV_RVC test.  Delete call to
5149         set_gdbarch_decr_pc_after_break.
5150
5151         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5152         RISCV_LAST_FP_REGNUM + 1.
5153         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5154
5155 2018-07-17  Tom Tromey  <tom@tromey.com>
5156
5157         * configure.ac: Remove --disable-gdbcli.
5158         * configure: Rebuild.
5159         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5160         (SUBDIR_CLI_CFLAGS): Remove.
5161         (SFILES): Use SUBDIR_CLI_SRCS.
5162         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5163
5164 2018-07-17  Tom Tromey  <tom@tromey.com>
5165
5166         PR gdb/18624:
5167         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5168
5169 2018-07-16  Jim Wilson  <jimw@sifive.com>
5170
5171         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5172
5173 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5174
5175         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5176         variable.
5177         (libunwind_frame_sniffer): Likewise.
5178         (libunwind_frame_prev_register): Likewise.
5179         (libunwind_sigtramp_frame_sniffer): Likewise.
5180         * ia64-tdep.c (ia64_access_reg): Likewise.
5181         (ia64_access_rse_reg): Likewise.
5182         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5183         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5184
5185 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5186
5187         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5188
5189 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5190
5191         * remote-sim.c (gdbsim_target::close,
5192         gdbsim_target::mourn_inferior): Remove unused variables.
5193
5194 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5195
5196         * ia64-tdep.c (ktab_buf): New global.
5197         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5198         (get_kernel_table): Adjust.
5199
5200 2018-07-16  Tom Tromey  <tom@tromey.com>
5201
5202         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5203         * dwarf2read.c (using_directives, new_symbol): Use
5204         outermost_context_p.
5205         * dbxread.c (process_one_symbol): Use outermost_context_p.
5206         * coffread.c (coff_symtab_read): Use outermost_context_p.
5207
5208 2018-07-16  Tom Tromey  <tom@tromey.com>
5209
5210         * dwarf2read.c (using_directives, read_func_scope)
5211         (read_lexical_block_scope): Update.
5212         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5213         * buildsym.h (local_using_directives, global_using_directives):
5214         Don't declare.
5215         (get_local_using_directives, set_local_using_directives)
5216         (get_global_using_directives): Declare.
5217         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5218         m_global_using_directives>: New members.
5219         (finish_block_internal, prepare_for_building)
5220         (reset_symtab_globals, end_symtab_get_static_block)
5221         (push_context): Update.
5222         (get_local_using_directives, set_local_using_directives)
5223         (get_global_using_directives): New functions.
5224         (buildsym_init): Update.
5225
5226 2018-07-16  Tom Tromey  <tom@tromey.com>
5227
5228         * xcoffread.c (xcoff_initial_scan): Don't call
5229         free_pending_blocks.
5230         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5231         * buildsym.h (class scoped_free_pendings): Add constructor.
5232         (free_pending_blocks): Don't declare.
5233         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5234         (free_pending_blocks): Now static.
5235
5236 2018-07-16  Tom Tromey  <tom@tromey.com>
5237
5238         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5239         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5240         member.
5241         (struct subfile_stack): Remove.
5242         (subfile_stack): Remove.
5243         (push_subfile, pop_subfile, buildsym_init): Update.
5244
5245 2018-07-16  Tom Tromey  <tom@tromey.com>
5246
5247         * buildsym.c (push_subfile): Use gdb_assert.
5248         (pop_subfile): Use gdb_assert.
5249
5250 2018-07-16  Tom Tromey  <tom@tromey.com>
5251
5252         * buildsym.h (merge_symbol_lists): Remove.
5253         * buildsym.c (merge_symbol_lists): Remove.
5254
5255 2018-07-16  Tom Tromey  <tom@tromey.com>
5256
5257         * stabsread.c (scan_file_globals): Update comment.
5258         * stabsread.h (scan_file_globals): Move from buildsym.h.
5259         * buildsym.h (scan_file_globals): Move to stabsread.h.
5260
5261 2018-07-16  Tom Tromey  <tom@tromey.com>
5262
5263         * xcoffread.c (xcoff_new_init): Update.
5264         * mipsread.c (mipscoff_new_init): Update.
5265         * mdebugread.c (mdebug_build_psymtabs): Update.
5266         * elfread.c (elf_new_init): Update.
5267         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5268         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5269         * buildsym.h (buildsym_new_init): Don't declare.
5270         * buildsym.c (buildsym_new_init): Remove.
5271
5272 2018-07-16  Tom Tromey  <tom@tromey.com>
5273
5274         * stabsread.h (within_function): Move from buildsym.h.
5275         * stabsread.c (start_stabs): Clear within_function.
5276         * coffread.c (coff_start_symtab): Clear within_function.
5277         * buildsym.h (within_function): Move to stabsread.h.
5278         * buildsym.c (prepare_for_building): Update.
5279
5280 2018-07-16  Tom Tromey  <tom@tromey.com>
5281
5282         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5283         * dwarf2read.c (dwarf2_start_symtab): Don't set
5284         processing_gcc_compilation.
5285         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5286
5287 2018-07-16  Tom Tromey  <tom@tromey.com>
5288
5289         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5290         (next_symbol_text_func): Move from buildsym.h.
5291         * stabsread.c (hashname): Move from buildsym.c.
5292         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5293         (next_symbol_text_func, hashname): Move to stabsread.h.
5294         * buildsym.c: Don't include bcache.h
5295         (hashname): Move to stasbread.c.
5296
5297 2018-07-16  Tom Tromey  <tom@tromey.com>
5298
5299         * buildsym.h (context_stack_size): Don't declare.
5300         * buildsym.c (context_stack_size): New global.
5301
5302 2018-07-16  Tom Tromey  <tom@tromey.com>
5303
5304         * dbxread.c (processing_acc_compilation): New global.
5305         * buildsym.h (processing_acc_compilation): Don't declare.
5306
5307 2018-07-16  Tom Tromey  <tom@tromey.com>
5308
5309         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5310         * dbxread.c (read_ofile_symtab): Update.
5311         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5312         * buildsym.h (last_source_start_addr): Remove.
5313         (set_last_source_start_addr, get_last_source_start_addr):
5314         Declare.
5315         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5316         parameter.
5317         (struct buildsym_compunit) <m_last_source_start_addr>: New
5318         member.
5319         (prepare_for_building): Remove start_addr parameter.
5320         (start_symtab, restart_symtab, end_symtab_get_static_block)
5321         (end_symtab_with_blockvector): Update.
5322         (set_last_source_start_addr, get_last_source_start_addr): New
5323         functions.
5324
5325 2018-07-16  Tom Tromey  <tom@tromey.com>
5326
5327         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5328         member.
5329         (have_line_numbers): Remove.
5330         (record_line, prepare_for_building, end_symtab_get_static_block)
5331         (augment_type_symtab): Update.
5332
5333 2018-07-16  Tom Tromey  <tom@tromey.com>
5334
5335         * buildsym.c (~buildsym_compunit): Free the macro table.
5336         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5337         methods.
5338         <m_pending_macros>: New member.
5339         (pending_macros): Remove.
5340         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5341         (reset_symtab_globals, end_symtab_get_static_block)
5342         (end_symtab_with_blockvector, augment_type_symtab)
5343         (buildsym_init): Update.
5344
5345 2018-07-16  Tom Tromey  <tom@tromey.com>
5346
5347         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5348         parameter.
5349         (buildsym_compunit::set_last_source_file): New method.
5350         <m_last_source_file>: New member.
5351         (prepare_for_building): Remove "name" parameter.
5352         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5353         (last_source_file): Remove.
5354         (set_last_source_file, get_last_source_file): Update.
5355
5356 2018-07-16  Tom Tromey  <tom@tromey.com>
5357
5358         * buildsym.c (prepare_for_building): Add assert.
5359
5360 2018-07-16  Tom Tromey  <tom@tromey.com>
5361
5362         * buildsym.c (~buildsym_compunit): Update.
5363         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5364         (start_subfile, patch_subfile_names)
5365         (end_symtab_with_blockvector): Update.
5366
5367 2018-07-16  Tom Tromey  <tom@tromey.com>
5368
5369         * buildsym.c (struct buildsym_compunit): Add constructor,
5370         destructor, initializers.
5371         (start_buildsym_compunit): Remove.
5372         (free_buildsym_compunit): Use "delete".
5373         (start_symtab, restart_symtab): Use "new".
5374
5375 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5376
5377         * symfile.c (set_objfile_default_section_offset): Remove struct
5378         keyword.
5379
5380 2018-07-14  Stafford Horne  <shorne@gmail.com>
5381
5382         * (Responsible Maintainers): Add myself as or1k maintainer.
5383
5384 2018-07-13  Tom Tromey  <tom@tromey.com>
5385
5386         * symfile.c (set_objfile_default_section_offset): Use extra braces
5387         around initializer.
5388
5389 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5390
5391         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5392         non-branching basr.
5393
5394 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5395
5396         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5397         unittests/cli-utils-selftests.c
5398         * unittests/cli-utils-selftests.c: New file.
5399
5400 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5401
5402         * NEWS: Mention new commands. Mention change to 'thread apply'.
5403
5404 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5405
5406         * thread.c (thr_try_catch_cmd): New function.
5407         (thread_apply_all_command): Handle qcs flags.
5408         (thread_apply_command): Handle qcs flags.
5409         (taas_command): New function.
5410         (tfaas_command): New function.
5411         (_initialize_thread): Update to setup the new commands 'taas
5412         and 'tfaas'. Change doc string for 'thread apply'.
5413
5414 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5415
5416         * stack.c: (trailing_outermost_frame): New function, mostly
5417         extracted from backtrace_command_1.
5418         (leading_innermost_frame): New function.
5419         (backtrace_command_1): Update to call trailing_outermost_frame.
5420         (frame_apply_command_count): New function.
5421         (frame_apply_level_command): New function.
5422         (frame_apply_all_command): New function.
5423         (frame_apply_command): New function.
5424         (faas_command): New function.
5425         (frame_cmd_list): New variable.
5426         (_initialize_stack): Update to setup the new commands 'frame apply'
5427         and 'faas'.
5428
5429 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5430
5431         * cli-utils.c (number_or_range_parser::get_number): Only handle
5432         numbers or convenience var as numbers.
5433         (parse_flags): New function.
5434         (parse_flags_qcs): New function.
5435         (number_or_range_parser::finished): Ensure parsing end is detected
5436         before end of string.
5437         * cli-utils.h (parse_flags): New function.
5438         (parse_flags_qcs): New function.
5439         (number_or_range_parser): Remove m_finished bool.
5440         (number_or_range_parser::skip_range): Set m_in_range to false.
5441
5442 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5443
5444         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5445         on Windows.
5446
5447 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5448             Jan Kratochvil  <jan.kratochvil@redhat.com>
5449             Paul Fertser  <fercerpav@gmail.com>
5450             Tsutomu Seki  <sekiriki@gmail.com>
5451             Pedro Alves  <palves@redhat.com>
5452
5453         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5454         'unittests/parse-connection-spec-selftests.c'.
5455         (COMMON_SFILES): Add 'common/netstuff.c'.
5456         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5457         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5458         * common/netstuff.c: New file.
5459         * common/netstuff.h: New file.
5460         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5461         (wait_for_connect): Update comment.  New parameter
5462         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5463         Use 'sock' directly instead of 'scb->fd'.
5464         (try_connect): New function, with code from 'net_open'.
5465         (net_open): Rewrite main loop to deal with multiple
5466         sockets/addresses.  Handle IPv6-style hostnames; implement
5467         support for IPv6 connections.
5468         * unittests/parse-connection-spec-selftests.c: New file.
5469
5470 2018-07-11  Pedro Alves  <palves@redhat.com>
5471
5472         PR gdb/23377
5473         * remote.c (remote_target::remote_detach_pid): Call
5474         set_current_process.
5475
5476 2018-07-11  Pedro Alves  <palves@redhat.com>
5477
5478         * h8300-tdep.c (h8300_gdbarch_init): Remove
5479         set_gdbarch_ecoff_reg_to_regnum calls.
5480
5481 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5482
5483         PR c++/23373
5484         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5485         offsets/sizes for static members of a class/struct.
5486
5487 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5488
5489         * target-descriptions.c (tdesc_register_bitsize): Rename.
5490         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5491         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5492         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5493
5494 2018-07-10  Tom Tromey  <tom@tromey.com>
5495
5496         * breakpoint.c (moribund_locations): Now static and a
5497         std::vector.
5498         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5499         (build_bpstat_chain, update_global_location_list)
5500         (breakpoint_retire_moribund): Update.
5501         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5502         VEC.
5503
5504 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5505
5506         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5507         (riscv_register_reggroup_p): Use new function, remove unneeded
5508         parenthesis.
5509         (riscv_push_dummy_call): Extend assert to compare against xlen or
5510         flen based on register type.
5511
5512 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5513
5514         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5515
5516 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5517
5518         * remote.c (show_hardware_watchpoint_limit): New function.
5519         (show_hardware_watchpoint_length_limit): New function.
5520         (show_hardware_breakpoint_limit): New function.
5521         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5522         where appropriate, update help text.
5523
5524 2018-07-09  Tom Tromey  <tom@tromey.com>
5525
5526         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5527         (CLIBS): Don't mention NAT_CLIBS.
5528
5529 2018-07-09  Tom Tromey  <tom@tromey.com>
5530
5531         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5532         (LIBGDB_OBS, clean mostlyclean): Update.
5533         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5534
5535 2018-07-09  Tom Tromey  <tom@tromey.com>
5536
5537         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5538         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5539         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5540
5541 2018-07-09  Tom Tromey  <tom@tromey.com>
5542
5543         * Makefile.in (ALLDEPFILES): Remove exec.c.
5544         (COMMON_OBS): Remove exec.o.
5545         (COMMON_SFILES): Add exec.c.
5546
5547 2018-07-09  Tom Tromey  <tom@tromey.com>
5548
5549         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5550
5551 2018-07-09  Tom Tromey  <tom@tromey.com>
5552
5553         * Makefile.in (clean mostlyclean): Remove stamp-version.
5554         (version.c): Depend on stamp-version.
5555         (stamp-version): New rule, from version.c rule.
5556
5557 2018-07-09  Tom Tromey  <tom@tromey.com>
5558
5559         * Makefile.in (init.c): Depend on stamp-init.
5560         (stamp-init): New rule, from init.c rule.
5561         (clean mostlyclean): Remove stamp-init.
5562
5563 2018-07-09  Tom Tromey  <tom@tromey.com>
5564
5565         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5566         SUBDIR_GCC_COMPILE_SRCS.
5567
5568 2018-07-09  Tom Tromey  <tom@tromey.com>
5569
5570         * Makefile.in (init.c): Remove some unused sed rules.
5571
5572 2018-07-09  Tom Tromey  <tom@tromey.com>
5573
5574         * Makefile.in (TSOBS): Remove.
5575         (INIT_FILES): Update.
5576         (LIBGDB_OBS): Update.
5577         (COMMON_SFILES): Add inflow.c.
5578         (SFILES): Remove inflow.c.
5579
5580 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5581
5582         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5583
5584 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5585
5586         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5587         get_saveloc_name, is_signal_frame_name, step_name,
5588         init_remote_name, create_addr_space_name,
5589         destroy_addr_space_name, search_unwind_table_name,
5590         find_dyn_list_name): Constify.
5591
5592 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5593
5594         * darwin-nat.c (darwin_pthread_kill): New function.
5595         (darwin_resume_thread): Use darwin_pthread_kill.
5596
5597 2018-07-05  Tom de Vries  <tdevries@suse.de>
5598
5599         * macroexp.c (macro_buffer) <operator=>: New member function.
5600
5601 2018-07-04  Tom Tromey  <tom@tromey.com>
5602
5603         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5604
5605 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5606
5607         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5608         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5609         * maint.c: Likewise.
5610         * top.c: Likewise.
5611
5612 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5613
5614         * NEWS: Create a new section for the next release branch.
5615         Rename the section of the current branch, now that it has
5616         been cut.
5617
5618 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5619
5620         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5621         * version.in: Bump version to 8.2.50.DATE-git.
5622
5623 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5624             Pedro Alves  <palves@redhat.com>
5625
5626         * linux-nat.c (linux_init_ptrace): Rename to ...
5627         (linux_init_ptrace_procfs): ... this.  Call
5628         linux_proc_init_warnings.
5629         (linux_nat_target::post_attach)
5630         (linux_nat_target::post_startup_inferior): Adjust.
5631         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5632         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5633
5634 2018-07-04  Tom de Vries  <tdevries@suse.de>
5635
5636         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5637         check ...
5638         (read_comp_unit_head): ... here.
5639
5640 2018-07-03  Tom Tromey  <tom@tromey.com>
5641
5642         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5643         (stop_tracing, tstatus_command)
5644         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5645         (print_one_static_tracepoint_marker): Update.
5646         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5647         std::vector.
5648         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5649         VEC.
5650         (all_tracepoints, static_tracepoints_here): Return std::vector.
5651
5652 2018-07-03  Tom Tromey  <tom@tromey.com>
5653
5654         * common/ptid.c (ptid_equal): Remove.
5655         * common/ptid.h (ptid_equal): Don't declare.
5656         * ada-tasks.c: Update.
5657         * breakpoint.c: Update.
5658         * common/agent.c: Update.
5659         * corelow.c: Update.
5660         * darwin-nat-info.c: Update.
5661         * darwin-nat.c: Update.
5662         * dcache.c: Update.
5663         * dtrace-probe.c: Update.
5664         * dummy-frame.c: Update.
5665         * fbsd-nat.c: Update.
5666         * frame.c: Update.
5667         * gdbthread.h: Update.
5668         * gnu-nat.c: Update.
5669         * go32-nat.c: Update.
5670         * inf-loop.c: Update.
5671         * inf-ptrace.c: Update.
5672         * infcall.c: Update.
5673         * infcmd.c: Update.
5674         * inflow.c: Update.
5675         * infrun.c: Update.
5676         * linux-fork.c: Update.
5677         * linux-nat.c: Update.
5678         * linux-thread-db.c: Update.
5679         * mi/mi-cmd-var.c: Update.
5680         * mi/mi-interp.c: Update.
5681         * mi/mi-main.c: Update.
5682         * nto-procfs.c: Update.
5683         * ppc-linux-tdep.c: Update.
5684         * procfs.c: Update.
5685         * python/py-inferior.c: Update.
5686         * python/py-record-btrace.c: Update.
5687         * python/py-record.c: Update.
5688         * ravenscar-thread.c: Update.
5689         * regcache.c: Update.
5690         * remote-sim.c: Update.
5691         * remote.c: Update.
5692         * sol-thread.c: Update.
5693         * solib.c: Update.
5694         * target.c: Update.
5695         * tui/tui-stack.c: Update.
5696         * varobj.c: Update.
5697         * windows-nat.c: Update.
5698         * windows-tdep.c: Update.
5699
5700 2018-07-03  Tom Tromey  <tom@tromey.com>
5701
5702         * common/ptid.c (ptid_match): Remove.
5703         * common/ptid.h (ptid_match): Don't declare.
5704         * fbsd-nat.c: Update.
5705         * infcmd.c: Update.
5706         * infrun.c: Update.
5707         * linux-nat.c: Update.
5708         * record-btrace.c: Update.
5709         * regcache.c: Update.
5710         * remote.c: Update.
5711
5712 2018-07-03  Tom Tromey  <tom@tromey.com>
5713
5714         * common/ptid.c (ptid_tid_p): Remove.
5715         * common/ptid.h (ptid_tid_p): Don't declare.
5716         * sol-thread.c: Update.
5717
5718 2018-07-03  Tom Tromey  <tom@tromey.com>
5719
5720         * common/ptid.c (ptid_lwp_p): Remove.
5721         * common/ptid.h (ptid_lwp_p): Don't declare.
5722         * fbsd-nat.c: Update.
5723         * linux-nat.c: Update.
5724         * nat/linux-procfs.c: Update.
5725         * nat/x86-linux-dregs.c: Update.
5726         * sol-thread.c: Update.
5727
5728 2018-07-03  Tom Tromey  <tom@tromey.com>
5729
5730         * common/ptid.c (ptid_is_pid): Remove.
5731         * common/ptid.h (ptid_is_pid): Don't declare.
5732         * infrun.c: Update.
5733         * linux-nat.c: Update.
5734         * mi/mi-interp.c: Update.
5735         * remote.c: Update.
5736         * thread.c: Update.
5737
5738 2018-07-03  Tom Tromey  <tom@tromey.com>
5739
5740         * common/ptid.c (ptid_get_tid): Remove.
5741         * common/ptid.h (ptid_get_tid): Don't declare.
5742         * ada-tasks.c: Update.
5743         * aix-thread.c: Update.
5744         * bsd-uthread.c: Update.
5745         * darwin-nat.c: Update.
5746         * fbsd-nat.c: Update.
5747         * i386-darwin-nat.c: Update.
5748         * infrun.c: Update.
5749         * linux-tdep.c: Update.
5750         * nto-procfs.c: Update.
5751         * ppc-ravenscar-thread.c: Update.
5752         * python/py-infthread.c: Update.
5753         * ravenscar-thread.c: Update.
5754         * sol-thread.c: Update.
5755         * sparc-ravenscar-thread.c: Update.
5756         * windows-nat.c: Update.
5757
5758 2018-07-03  Tom Tromey  <tom@tromey.com>
5759
5760         * common/ptid.c (ptid_get_lwp): Remove.
5761         * common/ptid.h (ptid_get_lwp): Don't declare.
5762         * aarch64-linux-nat.c: Update.
5763         * ada-tasks.c: Update.
5764         * aix-thread.c: Update.
5765         * amd64-linux-nat.c: Update.
5766         * arm-linux-nat.c: Update.
5767         * corelow.c: Update.
5768         * fbsd-nat.c: Update.
5769         * fbsd-tdep.c: Update.
5770         * gnu-nat.c: Update.
5771         * i386-cygwin-tdep.c: Update.
5772         * i386-gnu-nat.c: Update.
5773         * i386-linux-nat.c: Update.
5774         * ia64-linux-nat.c: Update.
5775         * inf-ptrace.c: Update.
5776         * infrun.c: Update.
5777         * linux-fork.c: Update.
5778         * linux-nat.c: Update.
5779         * linux-tdep.c: Update.
5780         * linux-thread-db.c: Update.
5781         * mips-linux-nat.c: Update.
5782         * nat/aarch64-linux-hw-point.c: Update.
5783         * nat/aarch64-linux.c: Update.
5784         * nat/linux-btrace.c: Update.
5785         * nat/linux-osdata.c: Update.
5786         * nat/linux-procfs.c: Update.
5787         * nat/x86-linux-dregs.c: Update.
5788         * obsd-nat.c: Update.
5789         * ppc-fbsd-nat.c: Update.
5790         * ppc-linux-nat.c: Update.
5791         * procfs.c: Update.
5792         * python/py-infthread.c: Update.
5793         * ravenscar-thread.c: Update.
5794         * remote.c: Update.
5795         * s390-linux-nat.c: Update.
5796         * sol-thread.c: Update.
5797         * sol2-tdep.c: Update.
5798         * spu-linux-nat.c: Update.
5799         * x86-linux-nat.c: Update.
5800         * xtensa-linux-nat.c: Update.
5801
5802 2018-07-03  Tom Tromey  <tom@tromey.com>
5803
5804         * common/ptid.c (ptid_get_pid): Remove.
5805         * common/ptid.h (ptid_get_pid): Don't declare.
5806         * aarch64-linux-nat.c: Update.
5807         * ada-lang.c: Update.
5808         * aix-thread.c: Update.
5809         * alpha-bsd-nat.c: Update.
5810         * amd64-fbsd-nat.c: Update.
5811         * amd64-linux-nat.c: Update.
5812         * arm-linux-nat.c: Update.
5813         * arm-nbsd-nat.c: Update.
5814         * auxv.c: Update.
5815         * break-catch-syscall.c: Update.
5816         * breakpoint.c: Update.
5817         * bsd-uthread.c: Update.
5818         * corelow.c: Update.
5819         * ctf.c: Update.
5820         * darwin-nat.c: Update.
5821         * fbsd-nat.c: Update.
5822         * fbsd-tdep.c: Update.
5823         * gcore.c: Update.
5824         * gnu-nat.c: Update.
5825         * hppa-nbsd-nat.c: Update.
5826         * hppa-obsd-nat.c: Update.
5827         * i386-fbsd-nat.c: Update.
5828         * ia64-linux-nat.c: Update.
5829         * inf-ptrace.c: Update.
5830         * infcmd.c: Update.
5831         * inferior.c: Update.
5832         * inferior.h: Update.
5833         * inflow.c: Update.
5834         * infrun.c: Update.
5835         * linux-fork.c: Update.
5836         * linux-nat.c: Update.
5837         * linux-tdep.c: Update.
5838         * linux-thread-db.c: Update.
5839         * m68k-bsd-nat.c: Update.
5840         * mi/mi-interp.c: Update.
5841         * mi/mi-main.c: Update.
5842         * mips-linux-nat.c: Update.
5843         * mips-nbsd-nat.c: Update.
5844         * mips64-obsd-nat.c: Update.
5845         * nat/aarch64-linux-hw-point.c: Update.
5846         * nat/aarch64-linux.c: Update.
5847         * nat/linux-btrace.c: Update.
5848         * nat/linux-osdata.c: Update.
5849         * nat/linux-procfs.c: Update.
5850         * nat/x86-linux-dregs.c: Update.
5851         * nto-procfs.c: Update.
5852         * obsd-nat.c: Update.
5853         * ppc-linux-nat.c: Update.
5854         * ppc-nbsd-nat.c: Update.
5855         * ppc-obsd-nat.c: Update.
5856         * proc-service.c: Update.
5857         * procfs.c: Update.
5858         * python/py-inferior.c: Update.
5859         * python/py-infthread.c: Update.
5860         * ravenscar-thread.c: Update.
5861         * record.c: Update.
5862         * remote-sim.c: Update.
5863         * remote.c: Update.
5864         * rs6000-nat.c: Update.
5865         * s390-linux-nat.c: Update.
5866         * sh-nbsd-nat.c: Update.
5867         * sol-thread.c: Update.
5868         * sparc-nat.c: Update.
5869         * sparc64-tdep.c: Update.
5870         * spu-linux-nat.c: Update.
5871         * spu-tdep.c: Update.
5872         * target-debug.h: Update.
5873         * target.c: Update.
5874         * thread.c: Update.
5875         * tid-parse.c: Update.
5876         * tracefile-tfile.c: Update.
5877         * vax-bsd-nat.c: Update.
5878         * windows-nat.c: Update.
5879         * x86-linux-nat.c: Update.
5880         * x86-nat.c: Update.
5881
5882 2018-07-03  Tom Tromey  <tom@tromey.com>
5883
5884         * common/ptid.c (pid_to_ptid): Remove.
5885         * common/ptid.h (pid_to_ptid): Don't declare.
5886         * aix-thread.c: Update.
5887         * arm-linux-nat.c: Update.
5888         * common/ptid.c: Update.
5889         * common/ptid.h: Update.
5890         * corelow.c: Update.
5891         * ctf.c: Update.
5892         * darwin-nat.c: Update.
5893         * fbsd-nat.c: Update.
5894         * fork-child.c: Update.
5895         * gnu-nat.c: Update.
5896         * go32-nat.c: Update.
5897         * inf-ptrace.c: Update.
5898         * infcmd.c: Update.
5899         * inferior.c: Update.
5900         * infrun.c: Update.
5901         * linux-fork.c: Update.
5902         * linux-nat.c: Update.
5903         * nat/aarch64-linux-hw-point.c: Update.
5904         * nat/fork-inferior.c: Update.
5905         * nat/x86-linux-dregs.c: Update.
5906         * nto-procfs.c: Update.
5907         * obsd-nat.c: Update.
5908         * procfs.c: Update.
5909         * progspace.c: Update.
5910         * remote.c: Update.
5911         * rs6000-nat.c: Update.
5912         * s390-linux-nat.c: Update.
5913         * sol-thread.c: Update.
5914         * spu-linux-nat.c: Update.
5915         * target.c: Update.
5916         * top.c: Update.
5917         * tracefile-tfile.c: Update.
5918         * windows-nat.c: Update.
5919
5920 2018-07-03  Tom Tromey  <tom@tromey.com>
5921
5922         * common/ptid.h (ptid_build): Don't declare.
5923         * common/ptid.c (ptid_build): Remove.
5924         * aix-thread.c: Update.
5925         * bsd-kvm.c: Update.
5926         * bsd-uthread.c: Update.
5927         * common/agent.c: Update.
5928         * common/ptid.c: Update.
5929         * common/ptid.h: Update.
5930         * corelow.c: Update.
5931         * darwin-nat.c: Update.
5932         * fbsd-nat.c: Update.
5933         * gnu-nat.c: Update.
5934         * linux-fork.c: Update.
5935         * linux-nat.c: Update.
5936         * linux-thread-db.c: Update.
5937         * nat/linux-osdata.c: Update.
5938         * nat/linux-procfs.c: Update.
5939         * nto-procfs.c: Update.
5940         * obsd-nat.c: Update.
5941         * proc-service.c: Update.
5942         * procfs.c: Update.
5943         * ravenscar-thread.c: Update.
5944         * remote-sim.c: Update.
5945         * remote.c: Update.
5946         * sol-thread.c: Update.
5947         * target.c: Update.
5948         * windows-nat.c: Update.
5949
5950 2018-07-03  Tom Tromey  <tom@tromey.com>
5951
5952         * infrun.c (follow_exec): Use exit_inferior_silent.
5953         * inferior.c (exit_inferior_num_silent): Remove.
5954         * inferior.h (exit_inferior_num_silent): Don't declare.
5955
5956 2018-07-03  Tom Tromey  <tom@tromey.com>
5957
5958         PR cli/23340:
5959         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5960         inferior_ptid on error.
5961
5962 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5963             Simon Marchi  <simon.marchi@polymtl.ca>
5964
5965         PR tdep/8282
5966         * disasm.h (gdb_disassembler): Add
5967         `m_disassembler_options_holder'. member
5968         * disasm.c (get_all_disassembler_options): New function.
5969         (gdb_disassembler::gdb_disassembler): Use it.
5970         (gdb_buffered_insn_length_init_dis): Likewise.
5971         (gdb_buffered_insn_length): Adjust accordingly.
5972         (set_disassembler_options): Handle options with arguments.
5973         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5974         line if showing options with descriptions.
5975         (disassembler_options_completer): Adapt to using the
5976         `disasm_options_and_args_t' structure.
5977         * mips-tdep.c (mips_disassembler_options): New variable.
5978         (mips_disassembler_options_o32): Likewise.
5979         (mips_disassembler_options_n32): Likewise.
5980         (mips_disassembler_options_n64): Likewise.
5981         (gdb_print_insn_mips): Don't set `disassembler_options'.
5982         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5983         functions.
5984         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5985         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5986         `gdbarch_disassembler_options_implicit' and
5987         `gdbarch_valid_disassembler_options'.
5988         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5989         `disasm_options_and_args_t' structure.
5990         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5991         method.
5992         (valid_disassembler_options): Switch from `disasm_options_t' to
5993         the `disasm_options_and_args_t' structure.
5994         * NEWS: Document `set disassembler-options' support for the MIPS
5995         target.
5996         * gdbarch.h: Regenerate.
5997         * gdbarch.c: Regenerate.
5998
5999 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6000
6001         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6002
6003 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6004
6005         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6006         parameter in call to amd64_target_description.
6007         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6008         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6009         (amd64fbsd_init_abi): Likewise.
6010         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6011         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6012         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6013         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6014
6015 2018-06-29  Pedro Alves  <palves@redhat.com>
6016
6017         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6018         "segments" parameter.
6019         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6020         (_initialize_amd64_tdep): Update call to
6021         amd64_create_target_description.
6022         (amd64_target_description): Add "segments" parameter.  Adjust
6023         the implementation to use it.
6024         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6025         call to amd64_create_target_description.
6026         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6027         * gdb/arch/amd64.h (amd64_create_target_description): Add
6028         "segments" register.
6029         * gdb/arch/amd64.c (amd64_create_target_description): Add
6030         "segments" parameter.  Call create_feature_i386_64bit_segments
6031         only if SEGMENTS is true.
6032         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6033         call to amd64_create_target_description.
6034
6035 2018-06-29  Pedro Alves  <palves@redhat.com>
6036
6037         * thread.c (thread_target_id_str): New, factored out from ...
6038         (print_thread_info_1): ... here.  Use it to compute the max
6039         "Target Id" column width.
6040
6041 2018-06-29  Pedro Alves  <palves@redhat.com>
6042
6043         * remote.c (remote_target::extra_thread_info): Delete
6044         'display_buf' and 'n' locals.  from the cache, regardless of
6045         packet mechanims is in use.  Use cache for qThreadExtra and qP
6046         methods too.
6047
6048 2018-06-29  Pedro Alves  <palves@redhat.com>
6049
6050         * blockframe.c (find_pc_sect_containing_function): New function.
6051         * breakpoint.c (print_breakpoint_location): Don't call
6052         find_pc_sect_function.
6053         * linespec.c (create_sals_line_offset): Record the location's
6054         symbol in the sal.
6055         * linespec.c (convert_address_location_to_sals): Fill in sal's
6056         symbol with find_pc_sect_containing_function.
6057         * symtab.c (find_function_start_sal): Rename to ...
6058         (find_function_start_sal_1): ... this.
6059         (find_function_start_sal): Reimplement as wrapper around
6060         find_function_start_sal_1, and use
6061         find_pc_sect_containing_function to fill in the sal's symbol.
6062         (find_function_start_sal(symbol*, bool)): Adjust.
6063         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6064         comments.
6065         (find_pc_sect_containing_function): Declare.
6066
6067 2018-06-29  Pedro Alves  <palves@redhat.com>
6068
6069         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6070         true if the the location has no symbol.
6071
6072 2018-06-28  Tom Tromey  <tom@tromey.com>
6073
6074         * NEWS: Mention --enable-codesign.
6075         * silent-rules.mk (ECHO_SIGN): New variable.
6076         * configure.ac: Add --enable-codesign.
6077         * configure: Rebuild.
6078         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6079         (gdb$(EXEEXT)): Optionally invoke codesign.
6080
6081 2018-06-28  Pedro Alves  <palves@redhat.com>
6082
6083         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6084         comments.
6085         (switch_to_thread_no_regs): Adjust comment.
6086         * infcmd.c (stop_pc): Delete.
6087         (post_create_inferior, info_program_command): Replace references
6088         to stop_pc with references to thread_info->suspend.stop_pc.
6089         * inferior.h (stop_pc): Delete declaration.
6090         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6091         (handle_inferior_event_1, handle_signal_stop)
6092         (process_event_stop_test, keep_going_stepped_thread)
6093         (handle_step_into_function, handle_step_into_function_backward)
6094         (print_stop_location): Replace references to stop_pc with
6095         references to thread_info->suspend.stop_pc.
6096         (struct infcall_suspend_state) <stop_pc>: Delete field.
6097         (save_infcall_suspend_state, restore_infcall_suspend_state):
6098         Remove references to inf_stat->stop_pc.
6099         * linux-fork.c (fork_load_infrun_state): Likewise.
6100         * record-btrace.c (record_btrace_set_replay): Likewise.
6101         * record-full.c (record_full_goto_entry): Likewise.
6102         * remote.c (print_one_stopped_thread): Likewise.
6103         * target.c (target_resume): Extend comment.
6104         * thread.c (set_executing_thread): New.
6105         (set_executing): Use it.
6106         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6107         Remove references to stop_pc.
6108
6109 2018-06-28  Pedro Alves  <palves@redhat.com>
6110
6111         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6112         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6113
6114 2018-06-28  Tom Tromey  <tom@tromey.com>
6115
6116         * coffread.c (coff_symfile_finish): Update.
6117         * xcoffread.c (xcoff_symfile_finish): Update.
6118         * elfread.c (elf_symfile_finish): Update.
6119         * symfile.h (dwarf2_free_objfile): Don't declare.
6120         * dwarf2read.c (_initialize_dwarf2_read): Use
6121         register_objfile_data_with_cleanup.
6122         (dwarf2_free_objfile): Now static.  Change signature.
6123
6124 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6125
6126         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6127         option "-o" to add-symbol-file-load to add an offset to each
6128         section's load address.
6129         * symfile.c (set_objfile_default_section_offset): New function.
6130
6131 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6132
6133         * symfile.c (add_symbol_file_command): Make sure that sections
6134         with the same name are sorted in the same order.
6135
6136 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6137
6138         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6139         require the second argument.  If omitted, load sections at the
6140         addresses specified in the file.
6141
6142 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6143
6144         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6145         (_initialize_symfile): Add option "-o" to symbol-file to add an
6146         offset to each section of the symbol file.
6147
6148 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6149
6150         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6151
6152 2018-06-27  Tom Tromey  <tom@tromey.com>
6153
6154         * stack.c (_initialize_stack): Update "func" help text.
6155
6156 2018-06-27  Tom Tromey  <tom@tromey.com>
6157
6158         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6159         std::vector.
6160         (unwind_infopy_str, pyuw_create_unwind_info)
6161         (unwind_infopy_add_saved_register, pyuw_sniffer)
6162         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6163         Update.
6164         (struct saved_reg): Add constructor.
6165         <value>: Now a gdbpy_ref<>.
6166
6167 2018-06-27  Tom Tromey  <tom@tromey.com>
6168
6169         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6170
6171 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6172
6173         * gdb-gdb.py.in: Format using autopep8.
6174
6175 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6176
6177         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6178         (type_lookup_function): Recognize CORE_ADDR values.
6179
6180 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6181
6182         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6183         print tag_name.
6184
6185 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6186
6187         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6188         <__lt__>: Add.
6189
6190 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6191
6192         * gdb-gdb.py: Move to...
6193         * gdb-gdb.py.in: ... here.
6194         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6195         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6196         dependencies.
6197         (distclean): Remove gdb-gdb.py when cleaning.
6198         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6199         * configure: Re-generate.
6200
6201 2018-06-27  Pedro Alves  <palves@redhat.com>
6202
6203         * proc-service.c (get_ps_regcache): New.
6204         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6205         (ps_lsetfpregs): Use it.
6206
6207 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6208
6209         PR gdb/21695
6210         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6211         (dwarf_decode_lines_1): Adjust.
6212
6213 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6214
6215         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6216         override.
6217         <info_proc>: Likewise.
6218
6219 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6220
6221         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6222         to windows_fetch_one_register, and only handle the case of
6223         fetching one register.  Move the code that reloads the context
6224         and iterates over all registers if R is negative to...
6225         (windows_nat_target::fetch_registers): ... here.
6226         (do_windows_store_inferior_registers): Rename to
6227         windows_store_one_register, and only handle the case of storing
6228         one register.  Move the code that handles the case where r is
6229         negative to...
6230         (windows_nat_target::store_registers) ... here.
6231
6232 2018-06-26  Tom Tromey  <tom@tromey.com>
6233
6234         PR rust/22574:
6235         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6236         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6237         Update.
6238         (rust_internal_print_type): Add podata parameter.
6239         (rust_print_type): Update.
6240
6241 2018-06-26  Tom Tromey  <tom@tromey.com>
6242
6243         * typeprint.h (struct print_offset_data) <update, finish,
6244         maybe_print_hole>: New methods.
6245         <indentation>: New constant.
6246         * typeprint.c (print_offset_data::indentation): Define.
6247         (print_offset_data::maybe_print_hole, print_offset_data::update)
6248         (print_offset_data::finish): Move from c-typeprint.c and rename.
6249         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6250         (print_spaces_filtered_with_print_options): Update.
6251         (c_print_type_union_field_offset, maybe_print_hole)
6252         (c_print_type_struct_field_offset): Move to typeprint.c and
6253         rename.
6254         (c_type_print_base_struct_union): Update.
6255
6256 2018-06-25  Pedro Alves  <palves@redhat.com>
6257
6258         * gdbthread.h (thread_info_ref, delete_thread)
6259         (delete_thread_silent, first_thread_of_inferior)
6260         (any_thread_of_inferior, switch_to_thread)
6261         (enable_thread_stack_temporaries)
6262         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6263         (get_last_thread_stack_temporary)
6264         (value_in_thread_stack_temporaries, can_access_registers_thread):
6265         Spell out "struct thread_info" instead of just "thread_info".
6266         * inferior.h (notice_new_inferior): Likewise.
6267
6268 2018-06-25  Pedro Alves  <palves@redhat.com>
6269
6270         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6271         pass thread_info pointer to delete_thread.
6272         (windows_nat_target::detach): Pass inferior pointer to
6273         detach_inferior.
6274         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6275         delete_thread.
6276         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6277         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6278         and pass a thread_info pointer to delete_thread.
6279         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6280         pass thread_info pointer to delete_thread.
6281         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6282         delete_thread_silent call.
6283         * procfs.c (procfs_target::detach): Pass inferior pointer to
6284         detach_inferior.
6285         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6286         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6287         delete_thread_silent call.
6288         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6289         pass thread_info pointer to delete_thread.
6290         (windows_nat_target::detach): Pass inferior pointer to
6291         delete_inferior.
6292
6293 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6294
6295         * regcache.c (readable_regcache::read_part): Fix asserts.
6296         (reg_buffer::raw_collect_part): New function.
6297         (regcache::write_part): Fix asserts.
6298         (reg_buffer::raw_supply_part): New function.
6299         (regcache::transfer_regset_register): New helper function.
6300         (regcache::transfer_regset): Call new functions.
6301         (regcache_supply_regset): Use gdb_byte*.
6302         (regcache::supply_regset): Likewise.
6303         (regcache_collect_regset): Likewise.
6304         (regcache::collect_regset): Likewise.
6305         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6306         (reg_buffer::raw_supply_part): Likewise.
6307         (regcache::transfer_regset_register): Likewise.
6308         (regcache::transfer_regset): Use gdb_byte*.
6309
6310 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6311
6312         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6313
6314 2018-06-21  Pedro Alves  <palves@redhat.com>
6315
6316         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6317         instead of a ptid_t.  All callers adjusted.
6318         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6319         adjusted.
6320         (print_ada_task_info, display_current_task_id, task_command_1):
6321         Adjust.
6322         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6323         inferior_thread.
6324         (breakpoint_kind): Adjust.
6325         (remove_breakpoints_pid): Rename to ...
6326         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6327         pointer.  All callers adjusted.
6328         (bpstat_clear_actions): Use inferior_thread.
6329         (get_bpstat_thread): New.
6330         (bpstat_do_actions): Use it.
6331         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6332         to take a thread_info pointer.  All callers adjusted.
6333         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6334         (breakpoint_re_set_thread): Use inferior_thread.
6335         * breakpoint.h (struct inferior): Forward declare.
6336         (bpstat_stop_status): Update.
6337         (remove_breakpoints_pid): Delete.
6338         (remove_breakpoints_inf): New.
6339         * bsd-uthread.c (bsd_uthread_target::wait)
6340         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6341         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6342         (maint_btrace_packet_history_cmd)
6343         (maint_btrace_clear_packet_history_cmd): Adjust.
6344         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6345         inferior_thread.
6346         * cli/cli-interp.c: Include "inferior.h".
6347         * common/refcounted-object.h (struct
6348         refcounted_object_ref_policy): New.
6349         * compile/compile-object-load.c: Include gdbthread.h.
6350         (store_regs): Use inferior_thread.
6351         * corelow.c (core_target::close): Use current_inferior.
6352         (core_target_open): Adjust to use first_thread_of_inferior and use
6353         the current inferior.
6354         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6355         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6356         <thread>: ... this new field.  All references adjusted.
6357         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6358         Take a thread_info pointer instead of a ptid_t.
6359         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6360         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6361         thread_info pointer instead of a ptid_t.
6362         * elfread.c: Include "inferior.h".
6363         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6364         Use inferior_thread.
6365         * eval.c (evaluate_subexp): Likewise.
6366         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6367         inferior_thread.
6368         * gdb_proc_service.h (struct thread_info): Forward declare.
6369         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6370         <thread>: ... this new field.  All references adjusted.
6371         * gdbarch.h, gdbarch.c: Regenerate.
6372         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6373         'thread' parameter.  All implementations and callers adjusted.
6374         * gdbthread.h (thread_info) <set_running>: New method.
6375         (delete_thread, delete_thread_silent): Take a thread_info pointer
6376         instead of a ptid.
6377         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6378         (first_thread_of_process): Delete, replaced by ...
6379         (first_thread_of_inferior): ... this new function.  All callers
6380         adjusted.
6381         (any_live_thread_of_process): Delete, replaced by ...
6382         (any_live_thread_of_inferior): ... this new function.  All callers
6383         adjusted.
6384         (switch_to_thread, switch_to_no_thread): Declare.
6385         (is_executing): Delete.
6386         (enable_thread_stack_temporaries): Update comment.
6387         <enable_thread_stack_temporaries>: Take a thread_info pointer
6388         instead of a ptid_t.  Incref the thread.
6389         <~enable_thread_stack_temporaries>: Decref the thread.
6390         <m_ptid>: Delete
6391         <m_thr>: New.
6392         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6393         (get_last_thread_stack_temporary)
6394         (value_in_thread_stack_temporaries, can_access_registers_thread):
6395         Take a thread_info pointer instead of a ptid_t.  All callers
6396         adjusted.
6397         * infcall.c (get_call_return_value): Use inferior_thread.
6398         (run_inferior_call): Work with thread pointers instead of ptid_t.
6399         (call_function_by_hand_dummy): Work with thread pointers instead
6400         of ptid_t.  Use thread_info_ref.
6401         * infcmd.c (proceed_thread_callback): Access thread's state
6402         directly.
6403         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6404         access thread's state directly.
6405         (continue_command): Use inferior_thread.
6406         (info_program_command): Use find_thread_ptid and access thread
6407         state directly.
6408         (proceed_after_attach_callback): Use thread state directly.
6409         (notice_new_inferior): Take a thread_info pointer instead of a
6410         ptid_t.  All callers adjusted.
6411         (exit_inferior): Take an inferior pointer instead of a pid.  All
6412         callers adjusted.
6413         (exit_inferior_silent): New.
6414         (detach_inferior): Delete.
6415         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6416         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6417         (detach_inferior_command, kill_inferior_command): Use
6418         find_inferior_id instead of valid_gdb_inferior_id and
6419         gdb_inferior_id_to_pid.
6420         (inferior_command): Use inferior and thread pointers.
6421         * inferior.h (struct thread_info): Forward declare.
6422         (notice_new_inferior): Take a thread_info pointer instead of a
6423         ptid_t.  All callers adjusted.
6424         (detach_inferior): Delete declaration.
6425         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6426         instead of a pid.  All callers adjusted.
6427         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6428         (valid_gdb_inferior_id): Delete.
6429         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6430         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6431         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6432         ...
6433         <inf>: ... this new field.
6434         <step_ptid>: Delete, replaced by ...
6435         <step_thread>: ... this new field.
6436         (get_displaced_stepping_state): Take an inferior pointer instead
6437         of a pid.  All callers adjusted.
6438         (displaced_step_in_progress_any_inferior): Adjust.
6439         (displaced_step_in_progress_thread): Take a thread pointer instead
6440         of a ptid_t.  All callers adjusted.
6441         (displaced_step_in_progress, add_displaced_stepping_state): Take
6442         an inferior pointer instead of a pid.  All callers adjusted.
6443         (get_displaced_step_closure_by_addr): Adjust.
6444         (remove_displaced_stepping_state): Take an inferior pointer
6445         instead of a pid.  All callers adjusted.
6446         (displaced_step_prepare_throw, displaced_step_prepare)
6447         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6448         All callers adjusted.
6449         (start_step_over): Adjust.
6450         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6451         displaced step queue.
6452         (do_target_resume): Adjust.
6453         (fetch_inferior_event): Use inferior_thread.
6454         (context_switch, get_inferior_stop_soon): Take an
6455         execution_control_state pointer instead of a ptid_t.  All callers
6456         adjusted.
6457         (switch_to_thread_cleanup): Delete.
6458         (stop_all_threads): Use scoped_restore_current_thread.
6459         * inline-frame.c: Include "gdbthread.h".
6460         (inline_state) <inline_state>: Take a thread pointer instead of a
6461         ptid_t.  All callers adjusted.
6462         <ptid>: Delete, replaced by ...
6463         <thread>: ... this new field.
6464         (find_inline_frame_state): Take a thread pointer instead of a
6465         ptid_t.  All callers adjusted.
6466         (skip_inline_frames, step_into_inline_frame)
6467         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6468         pointer instead of a ptid_t.  All callers adjusted.
6469         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6470         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6471         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6472         pointers directly.
6473         * linux-nat.c (get_detach_signal): Likewise.
6474         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6475         (thread_db_notice_clone): Adjust.
6476         (thread_db_find_new_threads_silently)
6477         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6478         a thread pointer instead of a ptid_t.  All callers adjusted.
6479         * mi/mi-cmd-var.c: Include "inferior.h".
6480         (mi_cmd_var_update_iter): Update to use thread pointers.
6481         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6482         inferior directly.
6483         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6484         out to ...
6485         (mi_output_running): ... this new function.
6486         (mi_on_resume_1): Adjust to use it.
6487         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6488         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6489         directly.
6490         (interrupt_thread_callback): : Adjust to use thread and inferior
6491         pointers.
6492         * proc-service.c: Include "gdbthread.h".
6493         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6494         * progspace-and-thread.c: Include "inferior.h".
6495         * progspace.c: Include "inferior.h".
6496         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6497         hold a reference to an inferior_object.
6498         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6499         inferior_thread.
6500         * python/py-inferior.c (struct inferior_object): Give the type a
6501         tag name instead of a typedef.
6502         (python_on_normal_stop): No need to check if the current thread is
6503         listed.
6504         (inferior_to_inferior_object): Change return type to
6505         inferior_object.  All callers adjusted.
6506         (find_thread_object): Delete, bits factored out to ...
6507         (thread_to_thread_object): ... this new function.
6508         * python/py-infthread.c (create_thread_object): Use
6509         inferior_to_inferior_object.
6510         (thpy_is_stopped): Use thread pointer directly.
6511         (gdbpy_selected_thread): Use inferior_thread.
6512         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6513         field, replaced with ...
6514         <thread>: ... this new field.  All users adjusted.
6515         (btpy_insn_or_gap_new): Drop const.
6516         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6517         callers adjusted.
6518         * python/py-record.c: Include "gdbthread.h".
6519         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6520         a ptid_t.  All callers adjusted.
6521         (gdbpy_current_recording): Use inferior_thread.
6522         * python/py-record.h (recpy_record_object) <ptid>: Delete
6523         field, replaced with ...
6524         <thread>: ... this new field.  All users adjusted.
6525         (recpy_element_object) <ptid>: Delete
6526         field, replaced with ...
6527         <thread>: ... this new field.  All users adjusted.
6528         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6529         a ptid_t.  All callers adjusted.
6530         * python/py-threadevent.c: Include "gdbthread.h".
6531         (get_event_thread): Use thread_to_thread_object.
6532         * python/python-internal.h (struct inferior_object): Forward
6533         declare.
6534         (find_thread_object, find_inferior_object): Delete declarations.
6535         (thread_to_thread_object, inferior_to_inferior_object): New
6536         declarations.
6537         * record-btrace.c: Include "inferior.h".
6538         (require_btrace_thread): Use inferior_thread.
6539         (record_btrace_frame_sniffer)
6540         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6541         (get_thread_current_frame): Use scoped_restore_current_thread and
6542         switch_to_thread.
6543         (get_thread_current_frame): Use thread pointer directly.
6544         (record_btrace_replay_at_breakpoint): Use thread's inferior
6545         pointer directly.
6546         * record-full.c: Include "inferior.h".
6547         * regcache.c: Include "gdbthread.h".
6548         (get_thread_arch_regcache): Use the inferior's address space
6549         directly.
6550         (get_thread_regcache, registers_changed_thread): New.
6551         * regcache.h (get_thread_regcache(thread_info *thread)): New
6552         overload.
6553         (registers_changed_thread): New.
6554         (remote_target) <remote_detach_1>: Swap order of parameters.
6555         (remote_add_thread): <remote_add_thread>: Return the new thread.
6556         (get_remote_thread_info(ptid_t)): New overload.
6557         (remote_target::remote_notice_new_inferior): Use thread pointers
6558         directly.
6559         (remote_target::process_initial_stop_replies): Use
6560         thread_info::set_running.
6561         (remote_target::remote_detach_1, remote_target::detach)
6562         (extended_remote_target::detach): Adjust.
6563         * stack.c (frame_show_address): Use inferior_thread.
6564         * target-debug.h (target_debug_print_thread_info_pp): New.
6565         * target-delegates.c: Regenerate.
6566         * target.c (default_thread_address_space): Delete.
6567         (memory_xfer_partial_1): Use current_inferior.
6568         (target_detach): Use current_inferior.
6569         (target_thread_address_space): Delete.
6570         (generic_mourn_inferior): Use current_inferior.
6571         * target.h (struct target_ops) <thread_address_space>: Delete.
6572         (target_thread_address_space): Delete.
6573         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6574         pointers directly.
6575         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6576         thread pointer instead of a ptid_t.  Adjust all callers.
6577         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6578         (first_thread_of_process): Delete, replaced by ...
6579         (first_thread_of_inferior): ... this new function.  All callers
6580         adjusted.
6581         (any_thread_of_process): Rename to ...
6582         (any_thread_of_inferior): ... this, and take an inferior pointer.
6583         (any_live_thread_of_process): Rename to ...
6584         (any_live_thread_of_inferior): ... this, and take an inferior
6585         pointer.
6586         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6587         (value_in_thread_stack_temporaries)
6588         (get_last_thread_stack_temporary): Take a thread pointer instead
6589         of a ptid_t.  Adjust all callers.
6590         (thread_info::set_running): New.
6591         (validate_registers_access): Use inferior_thread.
6592         (can_access_registers_ptid): Rename to ...
6593         (can_access_registers_thread): ... this, and take a thread
6594         pointer.
6595         (print_thread_info_1): Adjust to compare thread pointers instead
6596         of ptids.
6597         (switch_to_no_thread, switch_to_thread): Make extern.
6598         (scoped_restore_current_thread::~scoped_restore_current_thread):
6599         Use m_thread pointer directly.
6600         (scoped_restore_current_thread::scoped_restore_current_thread):
6601         Use inferior_thread.
6602         (thread_command): Use thread pointer directly.
6603         (thread_num_make_value_helper): Use inferior_thread.
6604         * top.c (execute_command): Use inferior_thread.
6605         * tui/tui-interp.c: Include "inferior.h".
6606         * varobj.c (varobj_create): Use inferior_thread.
6607         (value_of_root_1): Use find_thread_global_id instead of
6608         global_thread_id_to_ptid.
6609
6610 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6611
6612         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6613         possible.
6614         (regcache::write_part): Likewise.
6615         (readable_regcache::cooked_read_part): Update comment.
6616         (readable_regcache::cooked_write_part): Likewise.
6617         * regcache.h: (readable_regcache::read_part): Likewise.
6618         (regcache::write_part): Likewise.
6619
6620 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6621             Dirk Schubert  <dirk.schubert@arm.com>
6622
6623         * aarch64-linux-nat.c (post_attach): New.
6624         (aarch64_linux_nat_target::post_attach): Override post_attach to
6625         record the number of hardware debug registers.
6626
6627 2018-06-20  Tom Tromey  <tom@tromey.com>
6628
6629         * python/py-param.c (add_setshow_generic): Make parameters const.
6630         (parmpy_init): Update.
6631
6632 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6633
6634         * regcache.h (regcache_cooked_read_ftype): Rename to...
6635         (register_read_ftype): ...this, change type to function_view.
6636         (class reg_buffer) <save>: Remove src parameter.
6637         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6638         parameter non-const in first overload.  Remove src parameter in
6639         second overload.
6640         * regcache.c (do_cooked_read): Remove.
6641         (readonly_detached_regcache::readonly_detached_regcache): Make
6642         parameter non-const, adjust call to other constructor.
6643         (reg_buffer::save): Remove src parameter.
6644         * frame.c (do_frame_register_read): Remove.
6645         (frame_save_as_regcache): Use lambda function.
6646         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6647         parameter to ppu2spu_data *.
6648         (ppu2spu_sniffer): Use lambda function.
6649
6650 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6651
6652         * record-full.c (record_full_target::insert_breakpoint): Remove
6653         "struct" keyword, add const.
6654
6655 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6656
6657         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6658         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6659         * configure.ac: Remove AC_PREREQ, add missing quoting.
6660         * gnulib/configure.ac: Modernize usage of
6661         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6662         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6663         (AUTOMAKE_VERSION): Bump to 1.15.1.
6664         * configure: Re-generate.
6665         * config.in: Re-generate.
6666         * aclocal.m4: Re-generate.
6667         * gnulib/aclocal.m4: Re-generate.
6668         * gnulib/config.in: Re-generate.
6669         * gnulib/configure: Re-generate.
6670         * gnulib/import/Makefile.in: Re-generate.
6671
6672 2018-06-19  Pedro Alves  <palves@redhat.com>
6673
6674         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6675         (lookup_minimal_symbol_by_pc_section): ... here with
6676         gdb_assert_not_reached added.
6677
6678 2018-06-19  Pedro Alves  <palves@redhat.com>
6679
6680         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6681         parameter with a block parameter.  Compare location's block symbol
6682         with the frame's block instead of addresses.
6683         (skip_inline_frames): Pass the current block instead of the
6684         frame's address.  Break out as soon as we determine the frame
6685         should not be skipped.
6686
6687 2018-06-18  Tom Tromey  <tom@tromey.com>
6688
6689         * solib-aix.c (solib_aix_get_section_offsets): Return
6690         unique_xmalloc_ptr.
6691         (solib_aix_solib_create_inferior_hook): Update.
6692
6693 2018-06-18  Tom Tromey  <tom@tromey.com>
6694
6695         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6696
6697 2018-06-18  Tom Tromey  <tom@tromey.com>
6698
6699         * solib-frv.c (frv_relocate_main_executable): Use
6700         unique_xmalloc_ptr.
6701         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6702         unique_xmalloc_ptr.
6703
6704 2018-06-18  Tom Tromey  <tom@tromey.com>
6705
6706         * objfiles.h (inhibit_section_map_updates): Update.
6707         (resume_section_map_updates, resume_section_map_updates_cleanup):
6708         Remove.
6709         * solib-svr4.c (svr4_handle_solib_event): Update.
6710         * objfiles.c (inhibit_section_map_updates): Return
6711         scoped_restore_tmpl<int>.
6712         (resume_section_map_updates, resume_section_map_updates_cleanup):
6713         Remove.
6714
6715 2018-06-18  Tom Tromey  <tom@tromey.com>
6716
6717         * valprint.h (read_string): Update.
6718         * valprint.c (read_string): Change type of "buffer".
6719         (val_print_string): Update.
6720         * python/py-value.c (valpy_string): Update.
6721         * language.h (struct language_defn) <la_get_string>: Change
6722         type of "buffer".
6723         (default_get_string, c_get_string): Update.
6724         * language.c (default_get_string): Change type of "buffer".
6725         * guile/scm-value.c (gdbscm_value_to_string): Update.
6726         * c-lang.c (c_get_string): Change type of "buffer".
6727
6728 2018-06-18  Tom Tromey  <tom@tromey.com>
6729
6730         * ser-mingw.c (struct pipe_state_destroyer): New.
6731         (pipe_state_up): New typedef.
6732         (cleanup_pipe_state): Remove.
6733         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6734
6735 2018-06-18  Tom Tromey  <tom@tromey.com>
6736
6737         * rust-lang.h (rust_yyerror): Don't declare.
6738         * rust-lang.c (rust_language_defn): Update.
6739         * rust-exp.y (yyerror): Now static.
6740         * parse.c (parse_exp_in_context_1): Update.
6741         * p-lang.h (p_yyerror): Don't declare.
6742         * p-lang.c (p_language_defn): Update.
6743         * p-exp.y (yyerror): Now static.
6744         * opencl-lang.c (opencl_language_defn): Update.
6745         * objc-lang.c (objc_language_defn): Update.
6746         * m2-lang.h (m2_yyerror): Don't declare.
6747         * m2-lang.c (m2_language_defn): Update.
6748         * m2-exp.y (yyerror): Now static.
6749         * language.h (struct language_defn) <la_error>: Remove.
6750         * language.c (unk_lang_error): Remove.
6751         (unknown_language_defn, auto_language_defn): Remove.
6752         * go-lang.h (go_yyerror): Don't declare.
6753         * go-lang.c (go_language_defn): Update.
6754         * go-exp.y (yyerror): Now static.
6755         * f-lang.h (f_yyerror): Don't declare.
6756         * f-lang.c (f_language_defn): Update.
6757         * f-exp.y (yyerror): Now static.
6758         * d-lang.h (d_yyerror): Don't declare.
6759         * d-lang.c (d_language_defn): Update.
6760         * d-exp.y (yyerror): Now static.
6761         * c-lang.h (c_yyerror): Don't declare.
6762         * c-lang.c (c_language_defn, cplus_language_defn)
6763         (asm_language_defn, minimal_language_defn): Update.
6764         * c-exp.y (yyerror): Now static.
6765         * ada-lang.h (ada_yyerror): Don't declare.
6766         * ada-lang.c (ada_language_defn): Update.
6767         * ada-exp.y (yyerror): Now static.
6768
6769 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6770
6771         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6772         (store_sveregs_to_thread): Likewise.
6773         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6774         (aarch64_linux_store_inferior_registers): Likewise.
6775         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6776         function.
6777         (aarch64_sve_regs_copy_to_regcache): Likewise.
6778         (aarch64_sve_regs_copy_from_regcache): Likewise.
6779         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6780         declaration.
6781         (aarch64_sve_regs_copy_to_regcache): Likewise.
6782         (aarch64_sve_regs_copy_from_regcache): Likewise.
6783         (sve_context): Structure from Linux headers.
6784         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6785         (SVE_SIG_ZREG_SIZE): Likewise.
6786         (SVE_SIG_PREG_SIZE): Likewise.
6787         (SVE_SIG_FFR_SIZE): Likewise.
6788         (SVE_SIG_REGS_OFFSET): Likewise.
6789         (SVE_SIG_ZREGS_OFFSET): Likewise.
6790         (SVE_SIG_ZREG_OFFSET): Likewise.
6791         (SVE_SIG_ZREGS_SIZE): Likewise.
6792         (SVE_SIG_PREGS_OFFSET): Likewise.
6793         (SVE_SIG_PREG_OFFSET): Likewise.
6794         (SVE_SIG_PREGS_SIZE): Likewise.
6795         (SVE_SIG_FFR_OFFSET): Likewise.
6796         (SVE_SIG_REGS_SIZE): Likewise.
6797         (SVE_SIG_CONTEXT_SIZE): Likewise.
6798         (SVE_PT_REGS_MASK): Likewise.
6799         (SVE_PT_REGS_FPSIMD): Likewise.
6800         (SVE_PT_REGS_SVE): Likewise.
6801         (SVE_PT_VL_INHERIT): Likewise.
6802         (SVE_PT_VL_ONEXEC): Likewise.
6803         (SVE_PT_REGS_OFFSET): Likewise.
6804         (SVE_PT_FPSIMD_OFFSET): Likewise.
6805         (SVE_PT_FPSIMD_SIZE): Likewise.
6806         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6807         (SVE_PT_SVE_PREG_SIZE): Likewise.
6808         (SVE_PT_SVE_FFR_SIZE): Likewise.
6809         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6810         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6811         (__SVE_SIG_TO_PT): Likewise.
6812         (SVE_PT_SVE_OFFSET): Likewise.
6813         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6814         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6815         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6816         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6817         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6818         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6819         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6820         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6821         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6822         (SVE_PT_SVE_SIZE): Likewise.
6823         (SVE_PT_SIZE): Likewise.
6824         (HAS_SVE_STATE): New define.
6825
6826 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6827
6828         * nat/aarch64-sve-linux-sigcontext.h: New file.
6829         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6830         new files.
6831         (SVE_VQ_MIN): Likewise.
6832         (SVE_VQ_MAX): Likewise.
6833         (SVE_VL_MIN): Likewise.
6834         (SVE_VL_MAX): Likewise.
6835         (SVE_NUM_ZREGS): Likewise.
6836         (SVE_NUM_PREGS): Likewise.
6837         (sve_vl_valid): Likewise.
6838         (struct user_sve_header): Likewise.
6839
6840 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6841             Richard Bunt <Richard.Bunt@arm.com>
6842
6843         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6844         was requested by GDB.
6845
6846 2018-06-15  Tom de Vries  <tdevries@suse.de>
6847
6848         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6849
6850 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6851
6852         * gnulib/update-gnulib.sh: Print expected versions of
6853         autoconf/aclocal.
6854
6855 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6856
6857         * arch-utils.c (default_type_align): Use type_length_units.
6858         * gdbtypes.c (type_align): Use type_length_units.
6859
6860 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6861
6862         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6863         of 'define' command.
6864
6865 2018-06-14  Tom de Vries  <tdevries@suse.de>
6866
6867         PR cli/22573
6868         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6869         get_no_prettyformat_print_options.
6870
6871 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6872
6873         * sparc-nat.h: Include target.h.
6874         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6875         <fetch_registers>: Remove this argument in function call.
6876         <store_registers>: Remove this argument in function call, remove
6877         extra semicolon.
6878         <low_forget_process>: Call sparc64_forget_process instead of
6879         sparc_forget_process.
6880
6881 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6882
6883         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6884         (procfs_target::make_corefile_notes): Adjust to new
6885         target_read_alloc return type.
6886
6887 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6888             Stephen Roberts  <stephen.roberts@arm.com>
6889
6890         PR gdb/22882
6891         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6892         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6893         Move should_notify_stop local into more inner scope.
6894
6895 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6896             Stephen Roberts  <stephen.roberts@arm.com>
6897
6898         PR gdb/22882
6899         * infrun.c (resume_1): Add call to mark_async_event_handler.
6900
6901 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6902
6903         * infrun.c (do_target_wait): Change old version of $pc printed.
6904
6905 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6906
6907         * dwarf2read.c (read_index_from_section): Rename to...
6908         (read_gdb_index_from_section): ... this, update all callers.
6909         (dwarf2_read_index): Rename to...
6910         (dwarf2_read_gdb_index): ... this, update all callers.
6911
6912 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6913
6914         * gdb/hppa-linux-nat.c
6915         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6916         hppa_linux_nat_target::fetch_registers.
6917
6918 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6919
6920         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6921         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6922         (AARCH64_DWARF_SVE_FFR): Likewise.
6923         (AARCH64_DWARF_SVE_P0): Likewise.
6924         (AARCH64_DWARF_SVE_Z0): Likewise.
6925
6926 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6927
6928         * common/common-regcache.h (raw_compare): New function.
6929         * regcache.c (regcache::raw_compare): Likewise.
6930         * regcache.h (regcache::raw_compare): New declaration.
6931
6932 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6933
6934         * common/common-regcache.h (reg_buffer_common): New structure.
6935         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6936         (reg_buffer::raw_supply): Likewise.
6937         (reg_buffer::raw_supply_integer): Likewise.
6938         (reg_buffer::raw_supply_zeroed): Likewise.
6939         (reg_buffer::raw_collect): Likewise.
6940         (reg_buffer::raw_collect_integer): Likewise.
6941         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6942         (reg_buffer::raw_supply): Likewise.
6943         (reg_buffer::raw_supply_integer): Likewise.
6944         (reg_buffer::raw_supply_zeroed): Likewise.
6945         (reg_buffer::raw_collect): Likewise.
6946         (reg_buffer::raw_collect_integer): Likewise.
6947
6948 2018-06-10  Tom Tromey  <tom@tromey.com>
6949
6950         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6951         (class remote_state) <stop_reply_queue>: Now std::vector.
6952         (remote_state::~remote_state)
6953         (remote_target::stop_reply_queue_length): Update.
6954         (struct queue_iter_param, remove_child_of_pending_fork)
6955         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6956         (check_pending_event_prevents_wildcard_vcont_callback)
6957         (remove_stop_reply_for_inferior)
6958         (remove_stop_reply_of_remote_state)
6959         (remote_notif_remove_once_on_match)
6960         (stop_reply_match_ptid_and_ws)
6961         (remote_kill_child_of_pending_fork): Remove.
6962         (remote_target::remove_new_fork_children)
6963         (remote_target::check_pending_events_prevent_wildcard_vcont)
6964         (remote_target::discard_pending_stop_replies)
6965         (remote_target::discard_pending_stop_replies_in_queue)
6966         (remote_target::remote_notif_remove_queued_reply)
6967         (remote_target::queued_stop_reply)
6968         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6969         (remote_target::wait, remote_target::kill_new_fork_children)
6970         (remote_target::async): Update.
6971
6972 2018-06-10  Tom Tromey  <tom@tromey.com>
6973
6974         * record-full.c (record_full_arch_list_cleanups): Remove.
6975         (record_full_message): Use try/catch.
6976         (record_full_wait_cleanups): Remove.
6977         (record_full_wait_1): Use try/catch.
6978         (record_full_restore): Likewise.
6979
6980 2018-06-10  Tom Tromey  <tom@tromey.com>
6981
6982         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6983         declare VEC.  Add constructor.
6984         <in_target_beneath>: Now bool.
6985         (record_full_breakpoints): Now a std::vector, static.
6986         (record_full_sync_record_breakpoints)
6987         (record_full_init_record_breakpoints)
6988         (record_full_target::insert_breakpoint)
6989         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6990
6991 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6992
6993         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6994         * serial.c (serial_interface_lookup): Remove struct keyword.
6995
6996 2018-06-10  Tom Tromey  <tom@tromey.com>
6997
6998         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6999         method.
7000         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7001         a method.
7002         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7003         method.
7004         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7005         "beneath" as a method.
7006         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7007         Use "beneath" as a method.
7008
7009 2018-06-10  Tom Tromey  <tom@tromey.com>
7010
7011         * tracefile.c (struct trace_file_writer_deleter): New.
7012         <operator()>: Rename from trace_file_writer_xfree.
7013         (trace_file_writer_up): New typedef.
7014         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7015
7016 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7017
7018         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7019         <m_registers, m_register_status>: Change type to
7020         std::unique_ptr.
7021         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7022         XCNEWVEC.
7023
7024 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7025
7026         * common/common-regcache.h (enum register_status): Add
7027         underlying type "signed char".
7028         * regcache.h (reg_buffer) <m_register_status>: Change type to
7029         register_status *.
7030         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7031         register_status instead of signed char.
7032         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7033         (reg_buffer::get_register_status): Remove cast.
7034         (readable_regcache::raw_read): Remove cast.
7035         (readable_regcache::cooked_read): Remove cast.
7036
7037 2018-06-09  Tom Tromey  <tom@tromey.com>
7038
7039         * source.c (reverse_search_command, forward_search_command): Use
7040         scoped_fd.
7041
7042 2018-06-09  Tom Tromey  <tom@tromey.com>
7043
7044         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7045         (serial_ops_list): Now static, std::vector.
7046         (serial_interface_lookup, serial_add_interface): Update.
7047
7048 2018-06-09  Tom Tromey  <tom@tromey.com>
7049
7050         * dwarf2read.c (process_cu_includes): Update.
7051         (process_full_comp_unit): Update.
7052         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7053         std::vector.
7054
7055 2018-06-08  Paul Koning  <paul_koning@dell.com>
7056
7057         PR gdb/23252
7058
7059         * python/python.c (do_start_initialization):
7060         Avoid call to internal Python API.
7061         (init__gdb_module): New function.
7062
7063 2018-06-08  Gary Benson <gbenson@redhat.com>
7064
7065         * linux-thread-db.c (valprint.h): New include.
7066         (struct check_thread_db_info): New structure.
7067         (check_thread_db_on_load, tdb_testinfo): New static globals.
7068         (check_thread_db, check_thread_db_callback): New functions.
7069         (try_thread_db_load_1): Run integrity checks if requested.
7070         (maintenance_check_libthread_db): New function.
7071         (_initialize_thread_db): Register "maint check libthread-db"
7072         and "maint set/show check-libthread-db".
7073         * NEWS: Mention the above new commands.
7074
7075 2018-06-08  Tom Tromey  <tom@tromey.com>
7076
7077         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7078         now a method.
7079
7080 2018-06-08  Tom Tromey  <tom@tromey.com>
7081
7082         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7083
7084 2018-06-08  Tom Tromey  <tom@tromey.com>
7085
7086         * common/btrace-common.h (struct btrace_data): Add constructor,
7087         destructor, move assignment operator.
7088         <empty, clear, fini>: New methods.
7089         <format>: Initialize.
7090         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7091         (btrace_data_empty): Don't declare.
7092         * common/btrace-common.c (btrace_data_init): Remove.
7093         (btrace_data::fini): Rename from btrace_data_fini.
7094         (btrace_data::empty): Rename from btrace_data_empty.
7095         (btrace_data::clear): Rename from btrace_data_clear.  Return
7096         bool.
7097         * btrace.h (make_cleanup_btrace_data): Don't declare.
7098         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7099         (parse_xml_btrace): Update.
7100         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7101         (maint_btrace_clear_packet_history_cmd): Update.
7102
7103 2018-06-07  Pedro Alves  <palves@redhat.com>
7104
7105         * target.h (target_ops) <beneath>: Now a method.  All references
7106         updated.
7107         (class target_stack): New.
7108         * target.c (g_target_stack): New.
7109         (g_current_top_target): Delete.
7110         (current_top_target): Get the top target out of g_target_stack.
7111         (target_stack::push, target_stack::unpush): New.
7112         (push_target, unpush_target): Reimplement.
7113         (target_is_pushed): Reimplement in terms of g_target_stack.
7114         (target_ops::beneath, target_stack::find_beneath): New.
7115
7116 2018-06-07  Pedro Alves  <palves@redhat.com>
7117
7118         * target.h (find_target_beneath): Delete declaration.
7119         * target.c (find_target_beneath): Delete definition.
7120         * aix-thread.c: All callers of find_target_beneath adjusted to
7121         call target_ops::beneath instead.
7122         * bsd-uthread.c: Likewise.
7123         * linux-thread-db.c: Likewise.
7124         * ravenscar-thread.c: Likewise.
7125         * sol-thread.c: Likewise.
7126         * spu-multiarch.c: Likewise.
7127
7128 2018-06-07  Pedro Alves  <palves@redhat.com>
7129
7130         * target.h (target_ops) <beneath>: Now a method.  All references
7131         updated.
7132         (target_ops) <m_beneath>: New.
7133         * target.c (target_ops::beneath): New.
7134         * corelow.c: Adjust all references to target_ops::beneath.
7135         * linux-thread-db.c: Likewise.
7136         * make-target-delegates: Likewise.
7137         * record-btrace.c: Likewise.
7138         * record-full.c: Likewise.
7139         * remote.c: Likewise.
7140         * target.c: Likewise.
7141         * target-delegates.c: Regenerate.
7142
7143 2018-06-07  Pedro Alves  <palves@redhat.com>
7144
7145         * target.h (target_stack): Delete.
7146         (current_top_target): Declare function.
7147         * target.c (target_stack): Delete.
7148         (g_current_top_target): New.
7149         (current_top_target): New function.
7150         * auxv.c: Use current_top_target instead of target_stack
7151         throughout.
7152         * avr-tdep.c: Likewise.
7153         * breakpoint.c: Likewise.
7154         * corefile.c: Likewise.
7155         * elfread.c: Likewise.
7156         * eval.c: Likewise.
7157         * exceptions.c: Likewise.
7158         * frame.c: Likewise.
7159         * gdbarch-selftests.c: Likewise.
7160         * gnu-v3-abi.c: Likewise.
7161         * ia64-tdep.c: Likewise.
7162         * ia64-vms-tdep.c: Likewise.
7163         * infcall.c: Likewise.
7164         * infcmd.c: Likewise.
7165         * infrun.c: Likewise.
7166         * linespec.c: Likewise.
7167         * linux-tdep.c: Likewise.
7168         * minsyms.c: Likewise.
7169         * ppc-linux-nat.c: Likewise.
7170         * ppc-linux-tdep.c: Likewise.
7171         * procfs.c: Likewise.
7172         * regcache.c: Likewise.
7173         * remote.c: Likewise.
7174         * rs6000-tdep.c: Likewise.
7175         * s390-linux-nat.c: Likewise.
7176         * s390-tdep.c: Likewise.
7177         * solib-aix.c: Likewise.
7178         * solib-darwin.c: Likewise.
7179         * solib-dsbt.c: Likewise.
7180         * solib-spu.c: Likewise.
7181         * solib-svr4.c: Likewise.
7182         * solib-target.c: Likewise.
7183         * sparc-tdep.c: Likewise.
7184         * sparc64-tdep.c: Likewise.
7185         * spu-tdep.c: Likewise.
7186         * symfile.c: Likewise.
7187         * symtab.c: Likewise.
7188         * target-descriptions.c: Likewise.
7189         * target-memory.c: Likewise.
7190         * target.c: Likewise.
7191         * target.h: Likewise.
7192         * tracefile-tfile.c: Likewise.
7193         * tracepoint.c: Likewise.
7194         * valops.c: Likewise.
7195         * valprint.c: Likewise.
7196         * value.c: Likewise.
7197         * windows-tdep.c: Likewise.
7198         * mi/mi-main.c: Likewise.
7199
7200 2018-06-07  Tom Tromey  <tom@tromey.com>
7201
7202         * valprint.h (build_address_symbolic): Declare.
7203         * printcmd.c (print_address_symbolic): Update.
7204         (build_address_symbolic): Change "name" and "filename" to
7205         std::string.
7206         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7207         Update.
7208         * defs.h (build_address_symbolic): Remove declaration.
7209
7210 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7211
7212         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7213         (aarch64_vnv_type): Add function.
7214         (aarch64_pseudo_register_name): Add V regs for SVE.
7215         (aarch64_pseudo_register_type): Likewise.
7216         (aarch64_pseudo_register_reggroup_p): Likewise.
7217         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7218         (aarch64_pseudo_read_value): Add V regs for SVE.
7219         (aarch64_pseudo_write_2): Use V0 offset for SVE
7220         (aarch64_pseudo_write): Add V regs for SVE.
7221         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7222
7223 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7224
7225         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7226         (sve_vl_from_vq): Likewise.
7227
7228 2018-06-05  Tom Tromey  <tom@tromey.com>
7229
7230         * cli/cli-cmds.c (show_version): Update.
7231         * top.c (print_gdb_version): Add "interactive" parameter.
7232         Update.
7233         * main.c (captured_main_1): Update.
7234         * top.h (print_gdb_version): Add "interactive" parameter and a
7235         comment.
7236
7237 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7238
7239         * common/enum-flags.h: Add trailing semicolon to example in
7240         comment.
7241
7242 2018-06-05  Tom Tromey  <tom@tromey.com>
7243
7244         PR cli/12326:
7245         * NEWS: Add entry about pager.
7246         * utils.c (pagination_disabled_for_command): New global.
7247         (prompt_for_continue): Allow "c" response to prompt.
7248         (reinitialize_more_filter): Clear
7249         pagination_disabled_for_command.
7250         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7251
7252 2018-06-04  Tom Tromey  <tom@tromey.com>
7253
7254         * ada-lang.h (ada_lookup_symbol_list): Update.
7255         * ada-lang.c (resolve_subexp): Update.
7256         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7257         parameter.
7258         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7259         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7260         results parameter to std::vector.
7261         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7262         Update.
7263         * ada-exp.y (block_lookup): Update.
7264         (select_possible_type_sym): Change type of syms.  Remove nsyms
7265         parameter.
7266         (write_var_or_type, write_name_assoc): Update.
7267
7268 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7269
7270         * windows-nat.c (windows_nat_target::xfer_partial): Return
7271         TARGET_XFER_E_IO if we need to delegate to the target beneath
7272         but BENEATH is NULL.
7273
7274 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7275
7276         * Makefile.in (config.status): Add configure.nat as a
7277         dependency.
7278
7279 2018-06-04  Tom Tromey  <tom@tromey.com>
7280
7281         * cp-name-parser.y (cpname_state): Add method declarations.
7282         (HANDLE_QUAL): Update.
7283         (cpname_state::d_grab, cpname_state::fill_comp)
7284         (cpname_state::make_operator, cpname_state::make_dtor)
7285         (cpname_state::make_builtin_type, cpname_state::make_name)
7286         (cpname_state::d_qualify, cpname_state::d_int_type)
7287         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7288         (%union): Move earlier.
7289
7290 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7291
7292         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7293
7294 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7295
7296         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7297         (aarch64_pseudo_write_1): Likewise.
7298         (aarch64_pseudo_read_value): Use helper.
7299         (aarch64_pseudo_write): Likewise.
7300
7301 2018-06-04  Pedro Alves  <palves@redhat.com>
7302
7303         * darwin-nat.c (darwin_ops): Delete.
7304         (darwin_attach_pid): Use get_native_target.
7305
7306 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7307
7308         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7309         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7310
7311 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7312
7313         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7314         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7315         (aarch64_gdbarch_init): Check for SVE.
7316         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7317
7318 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7319
7320         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7321         * aarch64-tdep.h (aarch64_read_description): Likewise.
7322         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7323         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7324         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7325         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7326         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7327
7328 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7329
7330         * value.c (value_fetch_lazy_bitfield): New.
7331         (value_fetch_lazy_memory): New.
7332         (value_fetch_lazy_register): New.
7333         (value_fetch_lazy): Factor out to smaller functions.
7334
7335 2018-06-01  Tom Tromey  <tom@tromey.com>
7336
7337         * cp-name-parser.y (backslashable, represented): Now const.
7338
7339 2018-06-01  Tom Tromey  <tom@tromey.com>
7340
7341         * cp-name-parser.y: Include parser-defs.h.
7342         (parser_fprintf): Remove declaration.
7343
7344 2018-06-01  Tom Tromey  <tom@tromey.com>
7345
7346         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7347         %parse-param.
7348         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7349         (global_result): Remove globals.
7350         (struct cpname_state): New.
7351         (yyparse): Don't declare.
7352         (yylex, yyerror): Move declarations after %union.
7353         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7354         (make_name): Add state parameter.
7355         Update all callers.
7356         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7357         parameter.
7358         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7359         Update.
7360         (yylex): Add lvalp, state parameters.
7361         (yyerror): Add state parameter.
7362         (cp_demangled_name_to_comp): Update.
7363
7364 2018-06-01  Tom Tromey  <tom@tromey.com>
7365
7366         * cp-name-parser.y (parser_fprintf): Declare.
7367         (GDB_YY_REMAP_PREFIX): Define.
7368         Include yy-remap.h.  Don't redefine yy* identifiers.
7369
7370 2018-06-01  Tom Tromey  <tom@tromey.com>
7371
7372         * python/py-type.c (typy_legacy_template_argument): Update.
7373         * cp-support.h (cp_demangled_name_to_comp): Update.
7374         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7375         parameter to be a "std::string *".
7376         (main): Update.
7377
7378 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7379
7380         * ada-lex.l: Include "diagnostics.h" instead of
7381         "common/diagnostics.h".
7382         * unittests/environ-selftests.c: Likewise.
7383         * common/diagnostics.h: Moved to ../include.
7384
7385 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7386
7387         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7388         to language_mode_manual while calling breakpoint_re_set_one.
7389
7390 2018-06-01  Tom Tromey  <tom@tromey.com>
7391
7392         * valops.c (value_cast_structs, destructor_name_p): Update.
7393         * symtab.c (gdb_mangle_name): Update.
7394         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7395         Update.
7396         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7397         (pascal_object_print_value_fields, pascal_object_print_value):
7398         Update.
7399         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7400         * linespec.c (find_methods): Update.
7401         * gdbtypes.h (type_name_no_tag): Remove.
7402         (type_name_or_error): Rename from type_name_no_tag_or_error.
7403         * gdbtypes.c (type_name_no_tag): Remove.
7404         (type_name_or_error): Rename from type_name_no_tag_or_error.
7405         (lookup_struct_elt_type, check_typedef): Update.
7406         * expprint.c (print_subexp_standard): Update.
7407         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7408         * d-namespace.c (d_lookup_nested_symbol): Update.
7409         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7410         (cp_print_class_member): Update.
7411         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7412         * completer.c (add_struct_fields): Update.
7413         * c-typeprint.c (cp_type_print_derivation_info)
7414         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7415         Update.
7416         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7417         (ada_prefer_type, ada_is_exception_sym): Update.
7418
7419 2018-06-01  Tom Tromey  <tom@tromey.com>
7420
7421         * valops.c (enum_constant_from_type, value_namespace_elt)
7422         (value_maybe_namespace_elt): Update.
7423         * valarith.c (find_size_for_pointer_math): Update.
7424         * target-descriptions.c (make_gdb_type): Update.
7425         * symmisc.c (print_symbol): Update.
7426         * stabsread.c (define_symbol, read_type)
7427         (complain_about_struct_wipeout, add_undefined_type)
7428         (cleanup_undefined_types_1): Update.
7429         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7430         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7431         (rust_internal_print_type, rust_composite_type)
7432         (rust_evaluate_funcall, rust_evaluate_subexp)
7433         (rust_inclusive_range_type_p): Update.
7434         * python/py-type.c (typy_get_tag): Update.
7435         * p-typeprint.c (pascal_type_print_base): Update.
7436         * mdebugread.c (parse_symbol, parse_type): Update.
7437         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7438         Update.
7439         * guile/scm-type.c (gdbscm_type_tag): Update.
7440         * go-lang.c (sixg_string_p): Update.
7441         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7442         Update.
7443         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7444         (TYPE_TAG_NAME): Remove.
7445         * gdbtypes.c (type_name_no_tag): Simplify.
7446         (check_typedef, check_types_equal, recursive_dump_type)
7447         (copy_type_recursive, arch_composite_type): Update.
7448         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7449         in summary mode when needed.
7450         * eval.c (evaluate_funcall): Update.
7451         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7452         (process_structure_scope, read_enumeration_type)
7453         (read_namespace_type, read_module_type, determine_prefix): Update.
7454         * cp-support.c (inspect_type): Update.
7455         * coffread.c (process_coff_symbol, decode_base_type): Update.
7456         * c-varobj.c (c_is_path_expr_parent): Update.
7457         * c-typeprint.c (c_type_print_base_struct_union): Update.
7458         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7459         summary when using C language.
7460         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7461         (gen_maybe_namespace_elt): Update.
7462         * ada-lang.c (ada_type_name): Simplify.
7463         (empty_record, ada_template_to_fixed_record_type_1)
7464         (template_to_static_fixed_type)
7465         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7466
7467 2018-06-01  Tom Tromey  <tom@tromey.com>
7468
7469         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7470         c_print_type.
7471         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7472         (c_print_type): Update.
7473         (c_print_type): New overload.
7474         (c_type_print_varspec_prefix, c_type_print_args)
7475         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7476         (c_type_print_base_struct_union, c_type_print_base_1)
7477         (cp_type_print_method_args): Add "language" parameter.
7478         (c_type_print_base): Update.
7479         * c-lang.h (c_print_type): Add new overload.
7480
7481 2018-06-01  Tom Tromey  <tom@tromey.com>
7482
7483         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7484         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7485
7486 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7487
7488         * aarch64-tdep.c (aarch64_sve_register_names): New const
7489         var.
7490         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7491         (AARCH64_SVE_Z_REGS_NUM): New define.
7492         (AARCH64_SVE_P_REGS_NUM): Likewise.
7493         (AARCH64_SVE_NUM_REGS): Likewise.
7494
7495 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7496
7497         * nat/linux-ptrace.h [__alpha__]
7498         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7499         definitions.
7500
7501 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7502
7503         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7504         the endianness selected.
7505         * NEWS: Document `set endian auto' mode operation update.
7506
7507 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7508
7509         * Makefile.in: Add new header.
7510         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7511         (sve_vl_from_vg): Likewise.
7512         (sve_vq_from_vl): Likewise.
7513         (sve_vl_from_vq): Likewise.
7514         (sve_vq_from_vg): Likewise.
7515         (sve_vg_from_vq): Likewise.
7516         * configure.nat: Add new c file.
7517         * nat/aarch64-sve-linux-ptrace.c: New file.
7518         * nat/aarch64-sve-linux-ptrace.h: New file.
7519
7520 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7521
7522         * aarch64-linux-nat.c (aarch64_linux_read_description):
7523         Add parmeter zero.
7524         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7525         Likewise.
7526         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7527         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7528         (aarch64_gdbarch_init): Add parmeter zero.
7529         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7530         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7531         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7532         parmeter.
7533         * doc/gdb.texinfo: Describe SVE feature
7534         * features/aarch64-sve.c: New file.
7535
7536 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7537
7538         PR gdb/23210
7539         * gdbarch.sh (significant_addr_bit): Default to zero when
7540         not set by target architecture.
7541         * gdbarch.c: Re-generated.
7542         * utils.c (address_significant): Update.
7543
7544 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7545
7546         * stack.c (func_command): Remove trailing newline in call to error.
7547
7548 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7549
7550         * regcache.h (regcache_raw_collect): Remove, update callers to
7551         use regcache::raw_collect.
7552         * regcache.c (regcache_raw_collect): Remove.
7553
7554 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7555
7556         * regcache.h (regcache_raw_supply): Remove, update callers to
7557         use detached_regcache::raw_supply.
7558         * regcache.c (regcache_raw_supply): Remove.
7559
7560 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7561
7562         * regcache.h (regcache_cooked_write_part): Remove, update
7563         callers to use regcache::cooked_write_part.
7564         * regcache.c (regcache_cooked_write_part): Remove.
7565
7566 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7567
7568         * regcache.h (regcache_cooked_read_part): Remove, update callers
7569         to use readable_regcache::cooked_read_part.
7570         * regcache.c (regcache_cooked_read_part): Remove.
7571
7572 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7573
7574         * regcache.h (regcache_cooked_read_value): Remove, update
7575         callers to use readable_regcache::cooked_read_value.
7576         * regcache.c (regcache_cooked_read_value): Remove.
7577
7578 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7579
7580         * regcache.h (regcache_cooked_write): Remove, update callers to
7581         use regcache::cooked_write.
7582         * regcache.c (regcache_cooked_write): Remove.
7583
7584 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7585
7586         * regcache.h (regcache_invalidate): Remove, update callers to
7587         use detached_regcache::invalidate instead.
7588         * regcache.c (regcache_invalidate): Remove.
7589
7590 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7591
7592         * regcache.h (regcache_raw_write_part): Remove, update callers
7593         to use regcache::raw_write_part instead.
7594         * regcache.c (regcache_raw_write_part): Remove.
7595
7596 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7597
7598         * regcache.h (regcache_raw_read_part): Remove, update callers to
7599         use readable_regcache::raw_read_part instead.
7600         * regcache.c (regcache_raw_read_part): Remove.
7601
7602 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7603
7604         * regcache.h (regcache_cooked_read): Remove, update callers to
7605         use readable_regcache::cooked_read instead.
7606         * regcache.c (regcache_cooked_read): Remove.
7607
7608 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7609
7610         * regcache.h (regcache_raw_write): Remove, update callers to use
7611         regcache::raw_write instead.
7612         * regcache.c (regcache_raw_write): Remove.
7613
7614 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7615
7616         * regcache.h (regcache_raw_read): Remove, update callers to use
7617         readable_regcache::raw_read instead.
7618         * regcache.c (regcache_raw_read): Remove.
7619
7620 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7621
7622         * regcache.h (regcache_raw_update): Remove, update callers to
7623         use readable_regcache::raw_update instead.
7624         * regcache.c (regcache_raw_update): Remove.
7625
7626 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7627
7628         * regcache.h (regcache_register_status): Remove, update callers
7629         to use reg_buffer::get_register_status directly instead.
7630         * regcache.c (regcache_register_status): Remove.
7631
7632 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7633
7634         * regcache.h (regcache_get_ptid): Remove, update all callers to
7635         call regcache::ptid instead.
7636         * regcache.c (regcache_get_ptid): Remove.
7637
7638 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7639
7640         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7641
7642 2018-05-30  Pedro Alves  <palves@redhat.com>
7643
7644         * common/common-exceptions.h (exception_rethrow): Use
7645         ATTRIBUTE_NORETURN.
7646
7647 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7648
7649         * breakpoint.c (print_solib_event, check_status_catch_solib):
7650         Remove struct keyword in range-based for loops.
7651         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7652         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7653         Likewise.
7654         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7655         Likewise.
7656         * symfile.c (addr_info_make_relative): Likewise.
7657         * thread.c (value_in_thread_stack_temporaries): Likewise.
7658
7659 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7660
7661         PR gdb/16841
7662         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7663         aggregate type to get its real type before accessing it.
7664
7665 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7666
7667         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7668         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7669         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7670         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7671         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7672         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7673         * printcmd.c (info_address_command): Likewise.
7674
7675 2018-05-29  Tom Tromey  <tom@tromey.com>
7676
7677         * windows-nat.c (handle_exception): Update fall-through comment.
7678
7679 2018-05-29  Tom Tromey  <tom@tromey.com>
7680
7681         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7682         (struct program_space) <added_solibs>: Now a std::vector.
7683         * breakpoint.c (print_solib_event): Update.
7684         (check_status_catch_solib): Update.
7685         * progspace.c (clear_program_space_solib_cache): Update.
7686         * solib.c (update_solib_list): Update.
7687
7688 2018-05-29  Tom Tromey  <tom@tromey.com>
7689
7690         * python/py-type.c (typy_richcompare): Update.
7691         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7692         * gdbtypes.h (types_deeply_equal): Return bool.
7693         (types_equal): Likewise.
7694         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7695         declare VEC.
7696         (check_types_equal): Change worklist to std::vector.  Return
7697         bool.
7698         (struct type_equality_entry): Add constructor.
7699         (compare_maybe_null_strings): Return bool.
7700         (check_types_worklist): Return bool.  Change worklist to
7701         std::vector.
7702         (types_deeply_equal): Use std::vector.
7703         (types_equal): Return bool.
7704         (compare_maybe_null_strings): Simplify.
7705
7706 2018-05-29  Tom Tromey  <tom@tromey.com>
7707
7708         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7709
7710 2018-05-29  Tom Tromey  <tom@tromey.com>
7711
7712         * objc-lang.h: Don't include cp-support.h.
7713         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7714         declare VEC.
7715
7716 2018-05-27  Tom Tromey  <tom@tromey.com>
7717
7718         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7719
7720 2018-05-25  Tom Tromey  <tom@tromey.com>
7721
7722         * value.c (value::location): Initialize.
7723
7724 2018-05-25  Tom Tromey  <tom@tromey.com>
7725
7726         * dbxread.c (init_bincl_list): Remove.
7727         (bincl_list): Now a std::vector.
7728         (bincls_allocated, next_bincl): Remove.
7729         (free_bincl_list, do_free_bincl_list_cleanup)
7730         (make_cleanup_free_bincl_list): Remove.
7731         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7732         unique_xmalloc_ptr.
7733         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7734         (struct header_file_location): Add constructor.
7735         (add_bincl_to_list): Remove.
7736
7737 2018-05-25  Tom Tromey  <tom@tromey.com>
7738
7739         * tui/tui.c (tui_enable): Update.
7740         * mi/mi-interp.c (mi_interp::init): Update.
7741         * interps.h (class interp) <name>: New method.
7742         <m_name>: Rename from name.
7743         (~scoped_restore_interp): Update.
7744         * interps.c (interp::interp): Update.
7745         (interp_add, interp_set, interp_lookup_existing)
7746         (current_interp_named_p): Update.
7747
7748 2018-05-25  Tom Tromey  <tom@tromey.com>
7749
7750         * interps.c (interp_name): Remove.
7751         * mi/mi-interp.c (mi_interp::init): Update.
7752         * interps.h (interp_name): Remove.
7753         (~scoped_restore_interp): Update.
7754         * tui/tui.c (tui_enable): Update.
7755
7756 2018-05-25  Tom Tromey  <tom@tromey.com>
7757
7758         * utils.c (fputs_maybe_filtered): Update.
7759         * linespec.c (decode_line_full): Update.
7760         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7761         (mi_print_breakpoint_for_event, mi_solib_loaded)
7762         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7763         (mi_user_selected_context_changed): Update.
7764         * mi/mi-main.c (mi_execute_command): Update.
7765         * cli/cli-script.c (execute_control_command): Update.
7766         * python/python.c (execute_gdb_command): Update.
7767         * solib.c (info_sharedlibrary_command): Update.
7768         * interps.c (interp_ui_out): Remove.
7769         * interps.h (interp_ui_out): Remove.
7770
7771 2018-05-25  Tom Tromey  <tom@tromey.com>
7772
7773         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7774         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7775         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7776
7777 2018-05-25  Tom Tromey  <tom@tromey.com>
7778
7779         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7780         * interps.c (interp_exec): Use scoped_restore.
7781
7782 2018-05-25  Tom Tromey  <tom@tromey.com>
7783
7784         * remote.c (remote_target::remote_file_get): Use
7785         gdb::byte_vector.
7786         (remote_target::remote_file_put): Likewise.
7787
7788 2018-05-25  Tom Tromey  <tom@tromey.com>
7789
7790         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7791         a std::string.
7792         (get_pe_section_index, add_pe_exported_sym): Update.
7793         (read_pe_exported_syms): Use gdb::def_vector.
7794
7795 2018-05-25  Tom Tromey  <tom@tromey.com>
7796
7797         * frame.c (remove_prev_frame): Remove.
7798         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7799
7800 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7801
7802         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7803         Remove prototypes.
7804         * mips-linux-nat.c (supply_fpregset): Always call
7805         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7806         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7807         `mips_fill_fpregset'.
7808         * mips-linux-tdep.c (mips_supply_fpregset)
7809         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7810         (mips_fill_fpregset_wrapper): Remove functions.
7811         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7812         (mips_linux_fpregset): Remove variable.
7813         (mips_linux_iterate_over_regset_sections): Use
7814         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7815         (mips_linux_o32_sigframe_init): Remove comment.
7816
7817 2018-05-25  Pedro Alves  <palves@redhat.com>
7818
7819         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7820         (struct readahead_cache, struct packet_reg, struct
7821         remote_arch_state, class remote_state): Move higher up in the
7822         file.
7823         (remote_target::m_remote_state): Now an object instead of a pointer.
7824         (remote_target::get_remote_state): Adjust.
7825
7826 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7827
7828         * stack.c (select_and_print_frame): Delete.
7829         (struct function_bounds): Move struct within function.
7830         (func_command): Most content moved into new function
7831         find_frame_for_function, use new function, print result, add
7832         function comment.
7833         (find_frame_for_function): New function, now returns a result.
7834
7835 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7836
7837         * stack.c (iterate_over_block_arg_vars): Fix comment.
7838         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7839
7840 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7841
7842         PR gdb/23203
7843         * frame.c
7844         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7845         Define.
7846         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7847         Define.
7848         * frame.h (class scoped_restore_selected_frame): New class.
7849         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7850         of any exception, use scoped_restore_selected_frame to restore the
7851         frame instead.
7852
7853 2018-05-24  Pedro Alves  <palves@redhat.com>
7854
7855         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7856         override.
7857
7858 2018-05-23  Tom Tromey  <tom@tromey.com>
7859
7860         * complaints.c (struct complaints): Remove.
7861         (symfile_complaint_book): Remove.
7862         (series): New global.
7863         (complaint_internal): Update.
7864         (clear_complaints): Update.
7865
7866 2018-05-23  Tom Tromey  <tom@tromey.com>
7867
7868         * complaints.c (counters): New global.
7869         (struct complain): Remove.
7870         (struct complaints) <root>: Remove.
7871         (complaint_sentinel): Remove.
7872         (symfile_complaint_book): Update.
7873         (find_complaint) Remove.
7874         (complaint_internal, clear_complaints): Update.
7875
7876 2018-05-23  Tom Tromey  <tom@tromey.com>
7877
7878         * complaints.c (struct complain) <file, line>: Remove.
7879         (find_complaint): Remove file, line parameters.
7880         (complaint_internal): Update.
7881
7882 2018-05-23  Tom Tromey  <tom@tromey.com>
7883
7884         * complaints.c (vcomplaint): Remove.
7885         (complaint_internal) Merge in contents of vcomplaint.
7886
7887 2018-05-23  Tom Tromey  <tom@tromey.com>
7888
7889         * complaints.c (struct complaints) <explanation>: Remove.
7890         (symfile_explanations): Remove.
7891         (symfile_complaint_book): Update.
7892         (vcomplaint): Update.
7893         (struct explanation): Remove.
7894
7895 2018-05-23  Tom Tromey  <tom@tromey.com>
7896
7897         * complaints.c (symfile_complaints): Remove.
7898         (complaint_internal): Remove "complaints" parameter.
7899         (clear_complaints, vcomplaint): Remove "c" parameter.
7900         (get_complaints): Remove.
7901         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7902         (dwarf2_debug_line_missing_file_complaint)
7903         (dwarf2_debug_line_missing_end_sequence_complaint)
7904         (dwarf2_complex_location_expr_complaint)
7905         (dwarf2_const_value_length_mismatch_complaint)
7906         (dwarf2_section_buffer_overflow_complaint)
7907         (dwarf2_macro_malformed_definition_complaint)
7908         (dwarf2_invalid_attrib_class_complaint)
7909         (create_addrmap_from_index, dw2_symtab_iter_next)
7910         (dw2_expand_marked_cus)
7911         (dw2_debug_names_iterator::find_vec_in_debug_names)
7912         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7913         (create_debug_type_hash_table, init_cutu_and_read_dies)
7914         (partial_die_parent_scope, add_partial_enumeration)
7915         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7916         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7917         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7918         (create_cus_hash_table, create_dwp_hash_table)
7919         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7920         (dwarf2_rnglists_process, dwarf2_ranges_process)
7921         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7922         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7923         (handle_struct_member_die, process_structure_scope)
7924         (read_array_type, read_common_block, read_module_type)
7925         (read_tag_pointer_type, read_typedef, read_base_type)
7926         (read_subrange_type, load_partial_dies, partial_die_info::read)
7927         (partial_die_info::read, partial_die_info::read)
7928         (partial_die_info::read, read_checked_initial_length_and_offset)
7929         (dwarf2_string_attr, read_formatted_entries)
7930         (dwarf_decode_line_header)
7931         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7932         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7933         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7934         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7935         (get_signatured_type, get_DW_AT_signature_type)
7936         (decode_locdesc, file_file_name, consume_improper_spaces)
7937         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7938         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7939         (dwarf2_symbol_mark_computed, set_die_type)
7940         (read_attribute_value): Update.
7941         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7942         Update.
7943         * dbxread.c (unknown_symtype_complaint)
7944         (lbrac_mismatch_complaint, repeated_header_complaint)
7945         (set_namestring, function_outside_compilation_unit_complaint)
7946         (read_dbx_symtab, process_one_symbol): Update.
7947         * gdbtypes.c (stub_noname_complaint): Update.
7948         * windows-nat.c (handle_unload_dll): Update.
7949         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7950         (decode_base_type): Update.
7951         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7952         (eb_complaint, record_include_begin, record_include_end)
7953         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7954         (process_xcoff_symbol, read_symbol)
7955         (function_outside_compilation_unit_complaint)
7956         (scan_xcoff_symtab): Update.
7957         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7958         * buildsym.c (finish_block_internal, make_blockvector)
7959         (end_symtab_get_static_block, augment_type_symtab): Update.
7960         * dtrace-probe.c (dtrace_process_dof)
7961         (dtrace_static_probe_ops::get_probes): Update.
7962         * complaints.h (struct complaint): Don't declare.
7963         (symfile_complaints): Remove.
7964         (complaint_internal): Remove "complaints" parameter.
7965         (complaint): Likewise.
7966         (clear_complaints): Likewise.
7967         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7968         (reread_symbols): Update.
7969         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7970         (dwarf2_frame_cache, decode_frame_entry): Update.
7971         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7972         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7973         (info_selectors_command): Update.
7974         * macrotab.c (macro_include, check_for_redefinition)
7975         (macro_undef): Update.
7976         * objfiles.c (filter_overlapping_sections): Update.
7977         * stabsread.c (invalid_cpp_abbrev_complaint)
7978         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7979         (define_symbol, error_type, read_type, rs6000_builtin_type)
7980         (stabs_method_name_from_physname, read_member_functions)
7981         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7982         (attach_fields_to_type, complain_about_struct_wipeout)
7983         (read_range_type, read_args, common_block_start)
7984         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7985         Update.
7986         * mdebugread.c (index_complaint, unknown_ext_complaint)
7987         (basic_type_complaint, bad_tag_guess_complaint)
7988         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7989         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7990         (parse_procedure, parse_lines)
7991         (function_outside_compilation_unit_complaint)
7992         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7993         (bad_tag_guess_complaint, reg_value_complaint): Update.
7994         * cp-support.c (demangled_name_complaint): Update.
7995         * macroscope.c (sal_macro_scope): Update.
7996         * dwarf-index-write.c (class debug_names): Update.
7997
7998 2018-05-23  Tom Tromey  <tom@tromey.com>
7999
8000         * complaints.c (clear_complaints): Remove "noisy" parameter.
8001         * complaints.h (clear_complaints): Update.
8002         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8003         (reread_symbols): Update.
8004
8005 2018-05-23  Tom Tromey  <tom@tromey.com>
8006
8007         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8008         SUBSEQUENT_MESSAGE.
8009         (vcomplaint, clear_complaints): Update.
8010         (symfile_explanations): Remove some messages.
8011
8012 2018-05-23  Tom Tromey  <tom@tromey.com>
8013
8014         * complaints.c (internal_complaint): Remove.
8015         * complaints.h (internal_complaint): Remove.
8016
8017 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8018
8019         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8020
8021 2018-05-22  Pedro Alves  <palves@redhat.com>
8022
8023         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8024         (remote_fileio_badfd, remote_fileio_return_errno)
8025         (remote_fileio_return_success, remote_fileio_func_open)
8026         (remote_fileio_func_open, remote_fileio_func_close)
8027         (remote_fileio_func_read, remote_fileio_func_write)
8028         (remote_fileio_func_lseek, remote_fileio_func_rename)
8029         (remote_fileio_func_unlink, remote_fileio_func_stat)
8030         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8031         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8032         remote_target parameter.
8033         (remote_fio_func_map) <func>: Add remote_target parameter.
8034         (do_remote_fileio_request, remote_fileio_request):
8035         * remote-fileio.h (remote_fileio_request):
8036         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8037         remote_target parameter.
8038         (remote_notif_process, handle_notification): Adjust to pass down
8039         the remote.
8040         (remote_notif_state_allocate): Add remote_target parameter.  Save
8041         it.
8042         * remote-notif.h (struct remote_target): Forward declare.
8043         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8044         remote_target parameter.
8045         (struct remote_notif_state) <remote>: New field.
8046         (remote_notif_ack, remote_notif_parse): Add remote_target
8047         parameter.
8048         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8049         remote_target parameter.
8050         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8051         (threads_listing_context, rmt_thread_action, protocol_feature)
8052         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8053         (packet_result, struct threads_listing_context, remote_state):
8054         Move definitions and declarations higher up.
8055         (remote_target) <~remote_target>: Declare.
8056         (remote_download_command_source, remote_file_put, remote_file_get)
8057         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8058         (remote_hostio_pread_vFile, remote_hostio_send_command)
8059         (remote_hostio_set_filesystem, remote_hostio_open)
8060         (remote_hostio_close, remote_hostio_unlink, remote_state)
8061         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8062         (get_memory_write_packet_size, get_memory_read_packet_size)
8063         (append_pending_thread_resumptions, remote_detach_1)
8064         (append_resumption, remote_resume_with_vcont)
8065         (add_current_inferior_and_thread, wait_ns, wait_as)
8066         (process_stop_reply, remote_notice_new_inferior)
8067         (process_initial_stop_replies, remote_add_thread)
8068         (btrace_sync_conf, remote_btrace_maybe_reopen)
8069         (remove_new_fork_children, kill_new_fork_children)
8070         (discard_pending_stop_replies, stop_reply_queue_length)
8071         (check_pending_events_prevent_wildcard_vcont)
8072         (discard_pending_stop_replies_in_queue, stop_reply)
8073         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8074         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8075         (remote_interrupt_as, remote_interrupt_ns)
8076         (remote_get_noisy_reply, remote_query_attached)
8077         (remote_add_inferior, remote_current_thread, get_current_thread)
8078         (set_thread, set_general_thread, set_continue_thread)
8079         (set_general_process, write_ptid)
8080         (remote_unpack_thread_info_response, remote_get_threadinfo)
8081         (parse_threadlist_response, remote_get_threadlist)
8082         (remote_threadlist_iterator, remote_get_threads_with_ql)
8083         (remote_get_threads_with_qxfer)
8084         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8085         (get_offsets, remote_check_symbols, remote_supported_packet)
8086         (remote_query_supported, remote_packet_size)
8087         (remote_serial_quit_handler, remote_detach_pid)
8088         (remote_vcont_probe, remote_resume_with_hc)
8089         (send_interrupt_sequence, interrupt_query)
8090         (remote_notif_get_pending_events, fetch_register_using_p)
8091         (send_g_packet, process_g_packet, fetch_registers_using_g)
8092         (store_register_using_P, store_registers_using_G)
8093         (set_remote_traceframe, check_binary_download)
8094         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8095         (remote_xfer_live_readonly_partial, remote_read_bytes)
8096         (remote_send_printf, remote_flash_write, readchar)
8097         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8098         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8099         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8100         (extended_remote_disable_randomization, extended_remote_run)
8101         (send_environment_packet, extended_remote_environment_support)
8102         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8103         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8104         (packet_command): Now methods of ...
8105         (remote_target): ... this class.
8106         (m_remote_state) <remote_target>: New field.
8107         (struct remote_state) <stop_reply_queue,
8108         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8109         fields.
8110         (remote_state::remote_state): Allocate stop_reply_queue.
8111         (remote_state): Delete global.
8112         (get_remote_state_raw): Delete.
8113         (remote_target::get_remote_state): Allocate m_remote_state on
8114         demand.
8115         (get_current_remote_target): New.
8116         (remote_ops, extended_remote_ops): Delete.
8117         (wait_forever_enabled_p, remote_async_inferior_event_token):
8118         Delete, moved to struct remote_state.
8119         (remote_target::close): Delete self.  Destruction bits split to
8120         ...
8121         (remote_target::~remote_target): ... this.
8122         (show_memory_packet_size): Adjust to use
8123         get_current_remote_target.
8124         (struct protocol_feature) <func>: Add remote_target parameter.
8125         All callers adjusted.
8126         (curr_quit_handler_target): New.
8127         (remote_serial_quit_handler): Reimplement.
8128         (remote_target::open_1): Adjust to use get_current_remote_target.
8129         Heap-allocate remote_target/extended_remote_target instances.
8130         (vcont_builder::vcont_builder): Add remote_target parameter, and
8131         save it in m_remote.  All callers adjusted.
8132         (vcont_builder::m_remote): New field.
8133         (vcont_builder::restart, vcont_builder::flush)
8134         (vcont_builder::push_action): Use it.
8135         (remote_target::commit_resume): Use it.
8136         (struct queue_iter_param) <remote>: New field.
8137         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8138         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8139         (check_pending_event_prevents_wildcard_vcont_callback)
8140         (remote_target::check_pending_events_prevent_wildcard_vcont)
8141         (remote_target::discard_pending_stop_replies)
8142         (remote_target::discard_pending_stop_replies_in_queue)
8143         (remote_target::remote_notif_remove_queued_reply): Fill in
8144         'remote' field.
8145         (remote_notif_get_pending_events): New.
8146         (remote_target::readchar, remote_target::remote_serial_write):
8147         Save/restore curr_quit_handler_target.
8148         (putpkt): New.
8149         (kill_new_fork_children): Fill in 'remote' field.
8150         (packet_command): Use get_current_remote_target, defer to
8151         remote_target method of same name.
8152         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8153         parameter, and save it in m_remote.  All callers adjusted.
8154         (scoped_remote_fd::release): Use m_remote.
8155         (scoped_remote_fd::m_remote): New field.
8156         (remote_file_put, remote_file_get, remote_file_delete): Use
8157         get_current_remote_target, defer to remote_target method of same
8158         name.
8159         (remote_btrace_reset): Add remote_state paremeter.  Update all
8160         callers.
8161         (remote_async_inferior_event_handler). Pass down 'data'.
8162         (remote_new_objfile): Use get_current_remote_target.
8163         (remote_target::vcont_r_supported): New.
8164         (set_range_stepping): Use get_current_remote_target and
8165         remote_target::vcont_r_supported.
8166         (_initialize_remote): Don't allocate 'remote_state' and
8167         'stop_reply_queue' globals.
8168         * remote.h (struct remote_target): Forward declare.
8169         (getpkt, putpkt, remote_notif_get_pending_events): Add
8170         'remote_target' parameter.
8171
8172 2018-05-22  Pedro Alves  <palves@redhat.com>
8173
8174         * remote.c (vcont_builder): Now a class.  Make all data members
8175         private.
8176         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8177         Declare methods.
8178         (vcont_builder_restart): Rename to ...
8179         (vcont_builder::restart): ... this.
8180         (vcont_builder_flush): Rename to ...
8181         (vcont_builder::flush): ... this.
8182         (vcont_builder_push_action): Rename to ...
8183         (vcont_builder::push_action): ... this.
8184         (remote_target::commit_resume): Adjust.
8185
8186 2018-05-22  Pedro Alves  <palves@redhat.com>
8187
8188         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8189         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8190         (get_fixed_memory_packet_size): New.
8191         (get_memory_packet_size): Use it.
8192         (set_memory_packet_size): Don't override the config size with
8193         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8194         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8195         Don't refer to get_memory_packet_size if not connected to a remote
8196         target.  Show "(default)" if configured size is 0.
8197
8198 2018-05-22  Pedro Alves  <palves@redhat.com>
8199
8200         * remote.c (remote_target::mourn_inferior): Move
8201         discard_pending_stop_replies call here from ...
8202         (_initialize_remote): ... here.
8203
8204 2018-05-22  Pedro Alves  <palves@redhat.com>
8205
8206         * remote.c (compare_section_command): Remove set_general_process
8207         call.
8208
8209 2018-05-22  Pedro Alves  <palves@redhat.com>
8210
8211         * remote.c (struct packet_reg, struct remote_arch_state):
8212         Move higher up in the file.
8213         (remote_state) <m_arch_states>: Store remote_arch_state values
8214         instead of remote_arch_state pointers.
8215         (remote_state::get_remote_arch_state): Adjust.
8216
8217 2018-05-22  Pedro Alves  <palves@redhat.com>
8218
8219         * remote.c: Include <unordered_map>.
8220         (remote_state): Now a class.
8221         (remote_state) <get_remote_arch_state>: Declare method.
8222         <get_remote_arch_state>: New field.
8223         (remote_arch_state) <remote_arch_state>: Declare ctor.
8224         <regs>: Now a unique_ptr.
8225         (remote_gdbarch_data_handle): Delete.
8226         (get_remote_arch_state): Delete.
8227         (remote_state::get_remote_arch_state): New.
8228         (get_remote_state): Adjust to call remote_state's
8229         get_remote_arch_state method.
8230         (init_remote_state): Delete, bits factored out to ...
8231         (remote_arch_state::remote_arch_state): ... this new method.
8232         (get_remote_packet_size, get_memory_packet_size)
8233         (process_g_packet, remote_target::fetch_registers)
8234         (remote_target::prepare_to_store, store_registers_using_G)
8235         (remote_target::store_registers, remote_target::get_trace_status):
8236         Adjust to call remote_state's method.
8237         (_initialize_remote): Remove reference to
8238         remote_gdbarch_data_handle.
8239
8240 2018-05-22  Pedro Alves  <palves@redhat.com>
8241
8242         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8243         pread>: New method declarations.
8244         (remote_target::open_1): Adjust.
8245         (readahead_cache_invalidate): Rename to ...
8246         (readahead_cache::invalidate): ... this, and adjust to be a class
8247         method.
8248         (readahead_cache_invalidate_fd): Rename to ...
8249         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8250         class method.
8251         (remote_hostio_pwrite): Adjust.
8252         (remote_hostio_pread_from_cache): Rename to ...
8253         (readahead_cache::pread): ... this, and adjust to be a class
8254         method.
8255         (remote_hostio_close): Adjust.
8256
8257 2018-05-22  Pedro Alves  <palves@redhat.com>
8258
8259         * remote.c (remote_hostio_close_cleanup): Delete.
8260         (class scoped_remote_fd): New.
8261         (remote_file_put, remote_file_get): Use it.
8262
8263 2018-05-22  Pedro Alves  <palves@redhat.com>
8264
8265         (struct vCont_action_support): Use bool and initialize all fields.
8266         (struct readahead_cache): Initialize all fields.
8267         (remote_state): Use bool and initialize all fields.
8268         (remote_state::remote_state, remote_state::~remote_state): New.
8269         (new_remote_state): Delete.
8270         (_initialize_remote): Use new to allocate remote_state.
8271
8272 2018-05-22  Pedro Alves  <palves@redhat.com>
8273             張俊芝  <zjz@zjz.name>
8274
8275         PR gdb/22973
8276         * c-exp.y: Include "c-support.h".
8277         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8278         of tolower.  Use c_ident_is_alpha to scan names.
8279         * c-lang.c: Include "c-support.h".
8280         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8281         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8282         * c-support.h: New file, with bits factored out from ...
8283         * cp-name-parser.y: ... this file.
8284         Include "c-support.h".
8285         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8286         c-support.h and renamed.
8287         (symbol_end, yylex): Adjust.
8288
8289 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8290
8291         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8292         parameter type to CORE_ADDR.
8293         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8294         parameter type in declaration to CORE_ADDR.
8295         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8296         target_auxv_search to get AT_HWCAP and use the result to get the
8297         target description.
8298         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8299         to CORE_ADDR. Remove the cast of the return value to unsigned
8300         long. Fix error predicate of target_auxv_search.
8301         (ppc_linux_nat_target::read_description): Change the type of the
8302         hwcap variable to CORE_ADDR.
8303
8304 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8305
8306         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8307         if the size of fpscr is larger than 32 bits.
8308
8309 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8310
8311         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8312         (ppc32_linux_vsxregmap): New global.
8313         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8314         regcache_supply_regset, and regcache_collect_regset.
8315         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8316         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8317         (fetch_vsx_register, store_vsx_register): Remove.
8318         (fetch_vsx_registers): Add regno parameter. Get regset using
8319         ppc_linux_vsxregset. Use regset to supply registers.
8320         (store_vsx_registers): Add regno parameter. Get regset using
8321         ppc_linux_vsxregset. Use regset to collect registers.
8322         (fetch_register): Call fetch_vsx_registers instead of
8323         fetch_vsx_register.
8324         (store_register): Call store_vsx_registers instead of
8325         store_vsx_register.
8326         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8327         new regno parameter.
8328         (store_ppc_registers): Call store_vsx_registers with -1 for the
8329         new regno parameter.
8330         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8331         (ppc_collect_vsxregset): Remove.
8332
8333 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8334
8335         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8336         offset fields.
8337         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8338         for vector register offset fields.
8339         (ppc64_fbsd_reg_offsets): Likewise.
8340         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8341         to vector register offset fields.
8342         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8343         to vector register offset fields.
8344         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8345         vector register offset fields.
8346         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8347         initializers for vector register offset fields.
8348         (rs6000_aix64_reg_offsets): Likewise.
8349         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8350         (ppc_supply_vrregset): Remove.
8351         (ppc_collect_vrregset): Remove.
8352         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8353         (ppc_linux_vrregset) : New function.
8354         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8355         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8356         (ppc32_linux_vrregset): Remove.
8357         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8358         and use result instead of ppc32_linux_vrregset.
8359         (ppc32_linux_reg_offsets): Remove initializers for vector register
8360         offset fields.
8361         (ppc64_linux_reg_offsets): Likewise.
8362         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8363         * ppc-linux-nat.c: Include regset.h.
8364         (gdb_vrregset_t): Adjust comment to account for little-endian
8365         mode.
8366         (supply_vrregset, fill_vrregset): Remove.
8367         (fetch_altivec_register, store_altivec_register): Remove.
8368         (fetch_altivec_registers): Add regno parameter. Get regset using
8369         ppc_linux_vrregset. Use regset to supply registers.
8370         (store_altivec_registers): Add regno parameter. Get regset using
8371         ppc_linux_vrregset. Use regset to collect registers.
8372         (fetch_register): Call fetch_altivec_registers instead of
8373         fetch_altivec_register.
8374         (store_register): Call store_altivec_registers instead of
8375         store_altivec_register.
8376         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8377         the new regno parameter.
8378         (store_ppc_registers): Call store_altivec_registers with -1 for
8379         the new regno parameter.
8380
8381 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8382
8383         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8384         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8385         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8386         (gdb_vrregset_t): Change array type size to
8387         PPC_LINUX_SIZEOF_VRREGSET.
8388         (gdb_vsxregset_t): Change array type size to
8389         PPC_LINUX_SIZEOF_VSXREGSET.
8390         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8391         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8392         PPC_LINUX_SIZEOF_VSXREGSET.
8393
8394 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8395
8396         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8397         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8398         nat/ppc-linux.c.
8399         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8400         ppc_linux_target_wordsize with tid.
8401         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8402         wordsize with tid.
8403         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8404         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8405         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8406         tid parameter. Remove static specifier.
8407         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8408         (ppc_linux_target_wordsize): New declaration.
8409
8410 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8411
8412         * arch/ppc-linux-common.c: New file.
8413         * arch/ppc-linux-common.h: New file.
8414         * arch/ppc-linux-tdesc.h: New file.
8415         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8416         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8417         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8418         arch/ppc-linux-tdesc.h.
8419         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8420         arch/ppc-linux-tdesc.h.
8421         (ppc_linux_nat_target::read_description): Remove target
8422         description matching code. Fill a ppc_linux_features struct and
8423         call ppc_linux_match_description with it. Move comment about ISA
8424         2.05 to ppc-linux-common.c.
8425         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8426         arch/ppc-linux-tdesc.h.
8427         (ppc_linux_core_read_description): Remove target description
8428         matching code. Fill a ppc_linux_features struct and call
8429         ppc_linux_match_description with it.
8430         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8431         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8432         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8433         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8434         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8435         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8436         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8437         (tdesc_powerpc_e500l): Remove.
8438
8439 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8440
8441         * ada-lang.c (catch_assert_command): Pass empty string instead
8442         of NULL for excep_string argument.
8443
8444 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8445
8446         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8447         the width of the requested register exceeds the width of the
8448         `ptrace' data type.
8449
8450 2018-05-21  Tom Tromey  <tom@tromey.com>
8451
8452         * printcmd.c (output_command): Remove.
8453         (output_command_const): Rename to output_command.
8454         * valprint.h (output_command): Rename from output_command_const.
8455         * tracepoint.c (trace_dump_actions): Call output_command.
8456
8457 2018-05-21  Tom Tromey  <tom@tromey.com>
8458
8459         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8460         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8461         * ada-lang.h (create_ada_exception_catchpoint): Update.
8462         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8463         std::string.
8464         (create_excep_cond_exprs, ~ada_catchpoint)
8465         (should_stop_exception, print_one_exception)
8466         (print_mention_exception, print_recreate_exception): Update.
8467         (ada_get_next_arg): Remove.
8468         (catch_ada_exception_command_split): Use std::string.  Change type
8469         of "excep_string", "cond_string".
8470         (catch_ada_exception_command): Update.
8471         (create_ada_exception_catchpoint): Change type of excep_string.
8472         (ada_exception_sal): Remove excep_string parameter.
8473         (~ada_catchpoint): Remove.
8474
8475 2018-05-21  Tom Tromey  <tom@tromey.com>
8476
8477         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8478         cleanup.
8479
8480 2018-05-21  Tom Tromey  <tom@tromey.com>
8481
8482         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8483         Return unique_xmalloc_ptr.
8484         (print_it_exception): Update.
8485
8486 2018-05-21  Tom Tromey  <tom@tromey.com>
8487
8488         * tracepoint.c (trace_dump_actions): Use std::string.
8489
8490 2018-05-21  Tom Tromey  <tom@tromey.com>
8491
8492         * symfile.c (reread_symbols): Use std::string for original_name.
8493
8494 2018-05-21  Tom Tromey  <tom@tromey.com>
8495
8496         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8497         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8498         constructor.
8499
8500 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8501
8502         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8503         instance to...
8504         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8505         * objfiles.c (get_objfile_bfd_data): Allocate
8506         objfile_per_bfd_storage with obstack_new when allocating on
8507         obstack.
8508
8509 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8510
8511         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8512         OBSTACK_ZALLOC.
8513         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8514         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8515         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8516         (add_pending): Likewise.
8517         (parse_symbol): Likewise.
8518         (parse_partial_symbols): Likewise.
8519         (psymtab_to_symtab_1): Likewise.
8520         (new_psymtab): Likewise.
8521         (elfmdebug_build_psymtabs): Likewise.
8522         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8523         * objfiles.c (get_objfile_bfd_data): Likewise.
8524         (objfile_register_static_link): Likewise.
8525         * psymtab.c (allocate_psymtab): Likewise.
8526         * stabsread.c (read_member_functions): Likewise.
8527         * xcoffread.c (xcoff_end_psymtab): Likewise.
8528
8529 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8530
8531         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8532         compiler supports std::is_trivially_constructible.
8533         * common/poison.h: Include obstack.h.
8534         (IsMallocable): Define to is_trivially_constructible if the
8535         compiler supports it, define to true_type otherwise.
8536         (xobnew): New.
8537         (XOBNEW): Redefine.
8538         (xobnewvec): New.
8539         (XOBNEWVEC): Redefine.
8540         * gdb_obstack.h (obstack_zalloc): New.
8541         (OBSTACK_ZALLOC): Redefine.
8542         (obstack_calloc): New.
8543         (OBSTACK_CALLOC): Redefine.
8544         (obstack_new): New.
8545         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8546         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8547         gdbarch.c.
8548         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8549         obstack_calloc/obstack_zalloc.
8550         (gdbarch_obstack_zalloc): Remove.
8551         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8552
8553 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8554
8555         * stack.c (backtrace_command_1): Remove useless variable int i.
8556
8557 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8558
8559         * stack.c (print_frame_info): Fix comment.
8560
8561 2018-05-18  Tom Tromey  <tom@tromey.com>
8562
8563         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8564         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8565         (~dwarf2_per_objfile): Update
8566         (dwarf2_get_dwz_file): Use new.
8567         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8568         unique_ptr.
8569
8570 2018-05-18  Tom Tromey  <tom@tromey.com>
8571
8572         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8573         unique_ptr.
8574         * dwarf2read.c (struct dwp_file): Add constructor and
8575         initializers.
8576         (open_and_init_dwp_file): Return a unique_ptr.
8577         (dwarf2_per_objfile, create_dwp_hash_table)
8578         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8579         (lookup_dwo_unit_in_dwp): Update.
8580         (open_and_init_dwp_file, get_dwp_file): Update.
8581
8582 2018-05-18  Tom Tromey  <tom@tromey.com>
8583
8584         * dwarf2read.c (dwarf2_per_objfile): Update.
8585         (struct mapped_index): Add initializers.
8586         (dwarf2_read_index): Use new.
8587         (dw2_symtab_iter_init): Update.
8588         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8589         unique_ptr.
8590
8591 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8592
8593         * dwarf2read.c (mapped_index) <total_size>: Remove.
8594
8595 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8596
8597         * unittests/format_pieces-selftests.c (test_format_specifier):
8598         Add ARI comments.
8599
8600 2018-05-18  Tom Tromey  <tom@tromey.com>
8601
8602         * c-typeprint.c (maybe_print_hole): New function.
8603         (c_print_type_struct_field_offset): Update.
8604         (c_type_print_base_struct_union): Call maybe_print_hole.
8605
8606 2018-05-17  Keith Seitz  <keiths@redhat.com>
8607
8608         * breakpoint.c (build_bpstat_chain): New function, moved from
8609         bpstat_stop_status.
8610         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8611         If no stop chain is passed, call build_bpstat_chain to build it.
8612         * breakpoint.h (build_bpstat_chain): Declare.
8613         (bpstat_stop_status): Move documentation here from breakpoint.c.
8614         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8615         build the stop chain and pass it to skip_inline_frames.
8616         Pass this stop chain to bpstat_stop_status.
8617         * inline-frame.c: Include breakpoint.h.
8618         (stopped_by_user_bp_inline_frame): New function.
8619         (skip_inline_frames): Add parameter `stop_chain'.
8620         Move documention to inline-frame.h.
8621         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8622         whether the frame should be elided.
8623         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8624         Add moved documentation and update for new parameter.
8625
8626 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8627
8628         PR cli/14975
8629         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8630         unittests/format_pieces-selftests.c.
8631         * common/format.h (format_piece) <operator==>: New.
8632         (format_pieces) <operator[]>: Remove.
8633         * common/format.c (format_pieces::format_pieces): Handle \e.
8634         * unittests/format_pieces-selftests.c: New.
8635
8636 2018-05-17  Tom Tromey  <tom@tromey.com>
8637
8638         PR symtab/23010:
8639         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8640         (dw2_instantiate_symtab): Add skip_partial parameter.
8641         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8642         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8643         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8644         (dw2_expand_symtabs_matching_one)
8645         (dw2_find_pc_sect_compunit_symtab)
8646         (dw2_debug_names_lookup_symbol)
8647         (dw2_debug_names_expand_symtabs_for_function): Update.
8648         (init_cutu_and_read_dies): Add skip_partial parameter.
8649         (process_psymtab_comp_unit, build_type_psymtabs_1)
8650         (process_skeletonless_type_unit, load_partial_comp_unit)
8651         (psymtab_to_symtab_1): Update.
8652         (load_full_comp_unit): Add skip_partial parameter.
8653         (process_imported_unit_die, dwarf2_read_addr_index)
8654         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8655         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8656         (read_signatured_type): Update.
8657
8658 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8659
8660         * value.c (release_value): Remove unused variable.
8661         (record_latest_value): Likewise.
8662         (access_value_history): Likewise.
8663         (preserve_values): Likewise.
8664
8665 2018-05-17  Tom Tromey  <tom@tromey.com>
8666
8667         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8668         Initialize.
8669
8670 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8671
8672         PR gdb/22286
8673         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8674         Also handle registers whose width is not a multiple of
8675         PTRACE_TYPE_RET.
8676         (linux_nat_trad_target::store_register): Likewise.
8677
8678 2018-05-16  Tom Tromey  <tom@tromey.com>
8679
8680         * gdbcore.h (core_bfd): Redefine.
8681         * corelow.c (core_target::close): Update.
8682         (core_target_open): Update.
8683         * progspace.h (struct program_space) <cbfd>: Now a
8684         gdb_bfd_ref_ptr.
8685
8686 2018-05-16  Tom Tromey  <tom@tromey.com>
8687
8688         PR cli/19551:
8689         * symfile-add-flags.h (enum symfile_add_flags)
8690         <SYMFILE_NOT_FILENAME>: New constant.
8691         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8692         objfile name from BFD.
8693         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8694         * minidebug.c (find_separate_debug_file_in_section): Put
8695         ".gnu_debugdata" into BFD's file name.
8696
8697 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8698
8699         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8700         Remove.
8701
8702 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8703
8704         PR binutils/21446
8705         * aarch64-tdep.c (aarch64_analyze_prologue,
8706         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8707         Indicate not interested in errors.
8708
8709 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8710
8711         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8712         Supply the MIPS_ZERO_REGNUM register.
8713
8714 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8715
8716         * mips-tdep.c (mask_address_var): Make variable static.
8717
8718 2018-05-14  Tom Tromey  <tom@tromey.com>
8719
8720         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8721
8722 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8723
8724         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8725         FXSAVE_ADDR for the mxcsr register.
8726
8727 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8728
8729         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8730
8731 2018-05-11  Pedro Alves  <palves@redhat.com>
8732
8733         * corelow.c (core_target) <core_target>: No longer inline.
8734         Initialize m_core_gdbarch, m_core_vec and build the section table
8735         here.
8736         <~core_target>: New.
8737         <core_gdbarch, get_core_register_section>: New methods.
8738         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8739         factored out from ...
8740         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8741         (core_ops): Delete.
8742         (sniff_core_bfd): Add gdbarch parameter.
8743         (core_close): Delete, merged into ...
8744         (core_target::close): ... here.  Delete self.
8745         (core_close_cleanup): Delete.
8746         (core_target_open): Allocate a core_target on the heap.  Use a
8747         unique_ptr instead of a cleanup.  Bits moved into the core_target
8748         ctor.  Adjust to use core_target methods instead of globals.
8749         (get_core_register_section): Rename to ...
8750         (core_target::get_core_register_section): ... this and adjust.
8751         (struct get_core_registers_cb_data): New.
8752         (get_core_registers_cb): Use it.  Use bool.
8753         (core_target::fetch_registers, core_target::files_info)
8754         (core_target::xfer_partial, core_target::read_description)
8755         (core_target::pid_to, core_target::thread_name): Adjust to
8756         reference class fields instead of globals.
8757         * target.h (struct target_ops_deleter, target_ops_up): New.
8758
8759 2018-05-11  Pedro Alves  <palves@redhat.com>
8760
8761         * corefile.c (core_file_command): Move to corelow.c.
8762         * corelow.c (the_core_target): Delete.
8763         (core_file_command): Moved from corefile.c.  Check exec_bfd
8764         instead of the_core_target.  Use target_detach instead of calling
8765         into the_core_target directly.
8766         (maybe_say_no_core_file_now): New.
8767         (core_target::detach): Use it.
8768         (_initialize_corelow): Remove references to the_core_target.
8769         * gdbcore.h (the_core_target): Delete.
8770
8771 2018-05-11  Tom Tromey  <tromey@redhat.com>
8772             Pedro Alves  <palves@redhat.com>
8773
8774         * corefile.c (core_bfd): Remove.
8775         * gdbcore.h (core_bfd): Now a macro.
8776         * progspace.h (struct program_space) <cbfd>: New field.
8777
8778 2018-05-11  Tom Tromey  <tom@tromey.com>
8779
8780         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8781         gdb::def_vector.
8782
8783 2018-05-10  Tom Tromey  <tom@tromey.com>
8784
8785         * configure: Rebuild.
8786         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8787
8788 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8789
8790         PR server/23158:
8791         * regformats/regdat.sh: Adjust script, following the addition
8792         of the new expedite_regs parameter to init_target_desc.
8793
8794 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8795     
8796         PR gdb/23127
8797         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8798         set_gdbarch_significant_addr_bit.
8799         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8800         set_gdbarch_significant_addr_bit.
8801         * utils.c (address_significant): Update to sign extend addr.
8802
8803 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8804
8805         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8806         (xtensa_linux_init_abi): Limit tdep->num_regs by
8807         tdep->num_nopriv_regs.
8808         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8809         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8810         not initialized.
8811
8812 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8813
8814         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8815
8816 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8817
8818         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8819         (I387_MXCSR_INIT_VAL): New constant.
8820         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8821         buffer if it was supplied by the inferior.
8822         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8823         (i387_xsave_get_clear_bv): New function.
8824         (i387_supply_xsave): Only read x87 control registers from the
8825         xsave buffer if the feature is enabled, and the state will have
8826         been written, otherwise, provide a suitable default.
8827         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8828         including x87 control registers.  Update control registers if they
8829         have changed from the default value, and mark features as enabled
8830         as required.
8831         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8832
8833 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8834
8835         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8836
8837 2018-05-07  Tom Tromey  <tom@tromey.com>
8838
8839         * configure: Rebuild.
8840         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8841
8842 2018-05-07  Tom Tromey  <tom@tromey.com>
8843
8844         PR tdep/20362:
8845         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8846         bit.  Use correct value for VDIV.
8847
8848 2018-05-04  Tom Tromey  <tom@tromey.com>
8849
8850         * configure: Rebuild.
8851         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8852
8853 2018-05-04  Tom Tromey  <tom@tromey.com>
8854
8855         * linux-record.c (record_linux_system_call) <case
8856         RECORD_SYS_RECVFROM>: Add "break".
8857
8858 2018-05-04  Tom Tromey  <tom@tromey.com>
8859
8860         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8861         Add missing "break".
8862         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8863         Add missing "break".
8864
8865 2018-05-04  Tom Tromey  <tom@tromey.com>
8866
8867         * rs6000-tdep.c (ppc_process_record_op4)
8868         (ppc_process_record_op63): Add fall-through comment.
8869
8870 2018-05-04  Tom Tromey  <tom@tromey.com>
8871
8872         * i386-tdep.c (i386_process_record): Add fall-through comment.
8873
8874 2018-05-04  Tom Tromey  <tom@tromey.com>
8875
8876         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8877         comment.
8878
8879 2018-05-04  Tom Tromey  <tom@tromey.com>
8880
8881         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8882         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8883         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8884         comment.
8885         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8886         comment.
8887         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8888         comment.
8889
8890 2018-05-04  Tom Tromey  <tom@tromey.com>
8891
8892         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8893
8894 2018-05-04  Tom Tromey  <tom@tromey.com>
8895
8896         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8897         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8898         * symfile.c (section_is_mapped): Fix fall-through comment.
8899         * stabsread.c (define_symbol, read_member_functions): Fix
8900         fall-through comment.
8901         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8902         comment.
8903         * remote.c (remote_wait_as): Fix fall-through comment.
8904         * p-exp.y (yylex): Fix fall-through comment.
8905         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8906         comment.
8907         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8908         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8909         * jv-exp.y (yylex): Fix fall-through comment.
8910         * go-exp.y (lex_one_token): Fix fall-through comment.
8911         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8912         fall-through comment.
8913         * f-exp.y (yylex): Fix fall-through comment.
8914         * dwarf2read.c (process_die): Fix fall-through comments.
8915         * dbxread.c (process_one_symbol): Fix fall-through comment.
8916         * d-exp.y (lex_one_token): Fix fall-through comment.
8917         * cp-name-parser.y (yylex): Fix fall-through comment.
8918         * coffread.c (coff_symtab_read): Fix fall-through comment.
8919         * c-exp.y (lex_one_token): Fix fall-through comment.
8920         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8921         comment.
8922         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8923         comment.
8924
8925 2018-05-04  Tom Tromey  <tom@tromey.com>
8926
8927         PR python/22730:
8928         * NEWS: Mention gdb.execute change.
8929         * gdbcmd.h (execute_control_command): Don't declare.
8930         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8931         execute_control_commands, execute_control_commands_to_string.
8932         * cli/cli-script.h (execute_control_commands)
8933         (execute_control_commands_to_string): Declare.
8934         (execute_control_command): Add from_tty parameter.
8935         * cli/cli-script.c (execute_control_commands)
8936         (execute_control_commands_to_string): New functions.
8937         (execute_user_command): Use execute_control_commands.
8938         (execute_control_command_1): Add "from_tty" parameter.  Update.
8939         (execute_control_command): Likewise.
8940
8941 2018-05-04  Tom Tromey  <tom@tromey.com>
8942
8943         PR python/22731:
8944         * NEWS: Mention that breakpoint commands are writable.
8945         * python/py-breakpoint.c (bppy_set_commands): New function.
8946         (breakpoint_object_getset) <"commands">: Use it.
8947
8948 2018-05-04  Tom Tromey  <tom@tromey.com>
8949
8950         * tracepoint.c (actions_command): Update.
8951         * mi/mi-cmd-break.c (mi_command_line_array)
8952         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8953         (mi_read_next_line): Remove.
8954         (mi_cmd_break_commands): Update.
8955         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8956         function_view.
8957         * cli/cli-script.c (get_command_line): Update.
8958         (process_next_line): Use function_view.  Constify.
8959         (recurse_read_control_structure, read_command_lines)
8960         (read_command_lines_1): Change argument types to function_view.
8961         (do_define_command, document_command): Update.
8962         * breakpoint.h (check_tracepoint_command): Don't declare.
8963         * breakpoint.c (check_tracepoint_command): Remove.
8964         (commands_command_1, create_tracepoint_from_upload): Update.
8965
8966 2018-05-04  Tom Tromey  <tom@tromey.com>
8967
8968         PR gdb/11750:
8969         * cli/cli-script.h (enum command_control_type) <define_control>:
8970         New constant.
8971         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8972         (build_command_line, execute_control_command_1)
8973         (process_next_line): Likewise.
8974         (do_define_command): New function, extracted from define_command.
8975         (define_command): Use it.
8976
8977 2018-05-04  Tom Tromey  <tom@tromey.com>
8978
8979         * tracepoint.c (actions_command): Update.
8980         * cli/cli-script.h (read_command_lines): Update.
8981         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8982         (MAX_TMPBUF): Remove define.
8983         (define_command): Use string_printf.
8984         (document_command): Likewise.
8985         * breakpoint.c (commands_command_1): Update.
8986
8987 2018-05-04  Tom Tromey  <tom@tromey.com>
8988
8989         * top.c (execute_command): Update.
8990         * cli/cli-script.h (print_command_lines): Now varargs.
8991         * cli/cli-script.c (print_command_lines): Now varargs.
8992         (execute_control_command_1) <case while_control, case if_control>:
8993         Update.
8994
8995 2018-05-04  Tom Tromey  <tom@tromey.com>
8996
8997         * tracepoint.c (all_tracepoint_actions): Rename from
8998         all_tracepoint_actions_and_cleanup.  Change return type.
8999         (actions_command, encode_actions_1, encode_actions)
9000         (trace_dump_actions, tdump_command): Update.
9001         * remote.c (remote_download_command_source): Update.
9002         * python/python.c (gdbpy_eval_from_control_command)
9003         (python_command, python_interactive_command): Update.
9004         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9005         * guile/guile.c (guile_command)
9006         (gdbscm_eval_from_control_command, guile_command): Update.
9007         * compile/compile.c (compile_code_command)
9008         (compile_print_command, compile_to_object): Update.
9009         * cli/cli-script.h (struct command_lines_deleter): New.
9010         (counted_command_line): New typedef.
9011         (struct command_line): Add constructor, destructor.
9012         <body_list>: Remove.
9013         <body_list_0, body_list_1>: New members.
9014         (command_line_up): Remove typedef.
9015         (read_command_lines, read_command_lines_1, get_command_line):
9016         Update.
9017         (copy_command_lines): Don't declare.
9018         * cli/cli-script.c (build_command_line): Use "new".
9019         (get_command_line): Return counted_command_line.
9020         (print_command_lines, execute_user_command)
9021         (execute_control_command_1, while_command, if_command): Update.
9022         (realloc_body_list): Remove.
9023         (process_next_line, recurse_read_control_structure): Update.
9024         (read_command_lines, read_command_lines_1): Return counted_command_line.
9025         (free_command_lines): Use "delete".
9026         (copy_command_lines): Remove.
9027         (define_command, document_command, show_user_1): Update.
9028         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9029         a counted_command_line.
9030         * breakpoint.h (counted_command_line): Remove typedef.
9031         (breakpoint_set_commands): Update.
9032         * breakpoint.c (check_no_tracepoint_commands)
9033         (validate_commands_for_breakpoint): Update.
9034         (breakpoint_set_commands): Change commands to be a
9035         counted_command_line.
9036         (commands_command_1, update_dprintf_command_list)
9037         (create_tracepoint_from_upload): Update.
9038
9039 2018-05-04  Tom Tromey  <tom@tromey.com>
9040
9041         * cli/cli-decode.h (cmd_list_element): New constructor.
9042         (~cmd_list_element): New destructor.
9043         (struct cmd_list_element): Add initializers.
9044         * cli/cli-decode.c (do_add_cmd): Use "new".
9045         (delete_cmd): Use "delete".
9046
9047 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9048             Pedro Alves <palves@redhat.com>
9049
9050         PR breakpoints/19806 and support for PR external/20207.
9051         * NEWS: Mention Aarch64 watchpoint improvements.
9052         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9053         watchpoints and PR external/20207 watchpoints.
9054         * nat/aarch64-linux-hw-point.c
9055         (kernel_supports_any_contiguous_range): New.
9056         (aarch64_watchpoint_offset): New.
9057         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9058         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9059         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9060         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9061         next_addr_orig_p.  Support PR external/20207 watchpoints.
9062         (aarch64_downgrade_regs): New.
9063         (aarch64_dr_state_insert_one_point): New parameters offset and
9064         addr_orig.
9065         (aarch64_dr_state_remove_one_point): Likewise.
9066         (aarch64_handle_breakpoint): Update caller.
9067         (aarch64_handle_aligned_watchpoint): Likewise.
9068         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9069         aligned_offset.
9070         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9071         aarch64_downgrade_regs.
9072         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9073         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9074         (DR_CONTROL_MASK): ... this.
9075         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9076         (unsigned int aarch64_watchpoint_offset): New prototype.
9077         (aarch64_linux_set_debug_regs): Remove const from state.
9078         * utils.c (align_up, align_down): Move to ...
9079         * common/common-utils.c (align_up, align_down): ... here.
9080         * utils.h (align_up, align_down): Move to ...
9081         * common/common-utils.h (align_up, align_down): ... here.
9082
9083 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9084
9085         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9086         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9087         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9088         Re-implement to match the ABI as summarized in GCC's
9089         gcc/config/sparc/sparc.c.  All callers updated.
9090         (sparc32_store_arguments): Remove assertion.
9091
9092 2018-05-04  Tom Tromey  <tom@tromey.com>
9093
9094         * printcmd.c: Don't include tui.h.
9095         (decode_format): Use skip_spaces.
9096
9097 2018-05-04  Tom Tromey  <tom@tromey.com>
9098
9099         PR gdb/22619:
9100         * printcmd.c (last_count): New global.
9101         (x_command): Use saved count when repeating.
9102
9103 2018-05-04  Tom Tromey  <tom@tromey.com>
9104
9105         * nto-procfs.c (do_closedir_cleanup): Remove.
9106         (procfs_pidlist): Use gdb_dir_up.
9107         * procfs.c (do_closedir_cleanup): Remove.
9108         (proc_update_threads): Use gdb_dir_up.
9109         * common/filestuff.h (struct gdb_dir_deleter): New.
9110         (gdb_dir_up): New typedef.
9111
9112 2018-05-04  Tom Tromey  <tom@tromey.com>
9113
9114         * ada-lang.c (print_mention_exception): Use std::string.
9115
9116 2018-05-04  Tom Tromey  <tom@tromey.com>
9117
9118         * ada-lang.c (create_excep_cond_exprs): Update.
9119         (ada_exception_catchpoint_cond_string): Use std::string.
9120
9121 2018-05-04  Tom Tromey  <tom@tromey.com>
9122
9123         * ada-lang.c (xget_renaming_scope): Return std::string.
9124         (old_renaming_is_invisible): Update.
9125
9126 2018-05-04  Tom Tromey  <tom@tromey.com>
9127
9128         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9129         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9130
9131 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9132
9133         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9134
9135 2018-05-04  Tom Tromey  <tom@tromey.com>
9136
9137         * remote.c (remote_query_supported_append): Change type.
9138         (remote_check_symbols): Update.
9139
9140 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9141
9142         PR gdb/11420
9143         * configure.ac: Prepend libpython.
9144         * python/python-config.py: Likewise.
9145         * configure: Regenerate.
9146
9147 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9148
9149         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9150
9151 2018-05-03  Pedro Alves  <palves@redhat.com>
9152
9153         * s390-linux-nat.c
9154         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9155         override.  Write 'true' instead of '1'.
9156         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9157         declaration.
9158
9159 2018-05-02  Pedro Alves  <palves@redhat.com>
9160
9161         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9162         add_inf_child_target.
9163         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9164         add_inf_child_target.
9165         * aix-thread.c (aix_thread_target_info): New.
9166         (aix_thread_target) <shortname, longname, doc>: Delete.
9167         <info>: New.
9168         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9169         add_inf_child_target.
9170         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9171         add_inf_child_target.
9172         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9173         add_inf_child_target.
9174         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9175         add_inf_child_target.
9176         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9177         add_inf_child_target.
9178         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9179         add_inf_child_target.
9180         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9181         add_inf_child_target.
9182         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9183         add_inf_child_target.
9184         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9185         add_inf_child_target.
9186         * bfd-target.c (target_bfd_target_info): New.
9187         (target_bfd) <shortname, longname, doc>: Delete.
9188         <info>: New.
9189         * bsd-kvm.c (bsd_kvm_target_info): New.
9190         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9191         <info>: New.
9192         (bsd_kvm_target::open): Rename to ...
9193         (bsd_kvm_target_open): ... this.  Adjust.
9194         * bsd-uthread.c (bsd_uthread_target_info): New.
9195         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9196         <info>: New.
9197         * corefile.c (core_file_command): Adjust.
9198         * corelow.c (core_target_info): New.
9199         (core_target) <shortname, longname, doc>: Delete.
9200         <info>: New.
9201         (core_target::open): Rename to ...
9202         (core_target_open): ... this.  Adjust.
9203         * ctf.c (ctf_target_info): New.
9204         (ctf_target) <shortname, longname, doc>: Delete.
9205         <info>: New.
9206         (ctf_target::open): Rename to ...
9207         (ctf_target_open): ... this.
9208         (_initialize_ctf): Adjust.
9209         * exec.c (exec_target_info): New.
9210         (exec_target) <shortname, longname, doc>: Delete.
9211         <info>: New.
9212         (exec_target::open): Rename to ...
9213         (exec_target_open): ... this.
9214         * gdbcore.h (core_target_open): Declare.
9215         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9216         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9217         add_inf_child_target.
9218         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9219         add_inf_child_target.
9220         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9221         add_inf_child_target.
9222         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9223         add_inf_child_target.
9224         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9225         add_inf_child_target.
9226         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9227         add_inf_child_target.
9228         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9229         add_inf_child_target.
9230         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9231         add_inf_child_target.
9232         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9233         add_inf_child_target.
9234         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9235         add_inf_child_target.
9236         * inf-child.c (inf_child_target_info): New.
9237         (inf_child_target::info): New.
9238         (inf_child_open_target): Remove 'target' parameter.  Use
9239         get_native_target instead.
9240         (inf_child_target::open): Delete.
9241         (add_inf_child_target): New.
9242         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9243         Delete.
9244         <info>: New.
9245         (add_inf_child_target): Declare.
9246         (inf_child_open_target): Declare.
9247         * linux-thread-db.c (thread_db_target_info): New.
9248         (thread_db_target) <shortname, longname, doc>: Delete.
9249         <info>: New.
9250         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9251         add_inf_child_target.
9252         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9253         add_inf_child_target.
9254         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9255         add_inf_child_target.
9256         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9257         add_inf_child_target.
9258         * make-target-delegates (print_class): Adjust.
9259         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9260         add_inf_child_target.
9261         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9262         add_inf_child_target.
9263         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9264         add_inf_child_target.
9265         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9266         add_inf_child_target.
9267         * nto-procfs.c (nto_native_target_info): New.
9268         (nto_procfs_target_native) <shortname, longname, doc>:
9269         Delete.
9270         <info>: New.
9271         (nto_procfs_target_info): New.
9272         (nto_procfs_target_procfs) <shortname, longname, doc>:
9273         Delete.
9274         <info>: New.
9275         (init_procfs_targets): Adjust.
9276         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9277         add_inf_child_target.
9278         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9279         add_inf_child_target.
9280         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9281         add_inf_child_target.
9282         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9283         add_inf_child_target.
9284         * ravenscar-thread.c (ravenscar_target_info): New.
9285         (ravenscar_thread_target) <shortname, longname, doc>:
9286         Delete.
9287         <info>: New.
9288         * record-btrace.c (record_btrace_target_info):
9289         (record_btrace_target) <shortname, longname, doc>: Delete.
9290         <info>: New.
9291         (record_btrace_target::open): Rename to ...
9292         (record_btrace_target_open): ... this.  Adjust.
9293         * record-full.c (record_longname, record_doc): New.
9294         (record_full_base_target) <shortname, longname, doc>: Delete.
9295         <info>: New.
9296         (record_full_target_info): New.
9297         (record_full_target): <shortname>: Delete.
9298         <info>: New.
9299         (record_full_core_open_1, record_full_open_1): Update comments.
9300         (record_full_base_target::open): Rename to ...
9301         (record_full_open): ... this.
9302         (cmd_record_full_restore): Update.
9303         (_initialize_record_full): Update.
9304         * remote-sim.c (remote_sim_target_info): New.
9305         (gdbsim_target) <shortname, longname, doc>: Delete.
9306         <info>: New.
9307         (gdbsim_target::open): Rename to ...
9308         (gdbsim_target_open): ... this.
9309         (_initialize_remote_sim): Adjust.
9310         * remote.c (remote_doc): New.
9311         (remote_target_info): New.
9312         (remote_target) <shortname, longname, doc>: Delete.
9313         <info>: New.
9314         (extended_remote_target_info): New.
9315         (extended_remote_target) <shortname, longname, doc>: Delete.
9316         <info>: New.
9317         (remote_target::open_1): Make static.  Adjust.
9318         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9319         * s390-linux-nat.c (_initialize_s390_nat): Use
9320         add_inf_child_target.
9321         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9322         add_inf_child_target.
9323         * sol-thread.c (thread_db_target_info): New.
9324         (sol_thread_target) <shortname, longname, doc>: Delete.
9325         <info>: New.
9326         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9327         add_inf_child_target.
9328         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9329         add_inf_child_target.
9330         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9331         add_inf_child_target.
9332         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9333         add_inf_child_target.
9334         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9335         add_inf_child_target.
9336         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9337         add_inf_child_target.
9338         * spu-linux-nat.c (_initialize_spu_nat): Use
9339         add_inf_child_target.
9340         * spu-multiarch.c (spu_multiarch_target_info): New.
9341         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9342         <info>: New.
9343         * target-delegates.c: Regenerate.
9344         * target.c: Include <unordered_map>.
9345         (target_ops_p): Delete.
9346         (DEF_VEC_P(target_ops_p)): Delete.
9347         (target_factories): New.
9348         (test_target_info): New.
9349         (test_target_ops::info): New.
9350         (open_target): Adjust to use target_factories.
9351         (add_target_with_completer): Rename to ...
9352         (add_target): ... this.  Change prototype.  Register target_info
9353         and open callback in target_factories.  Register target_info in
9354         command context instead of target_ops.
9355         (add_target): Delete old implementation.
9356         (add_deprecated_target_alias): Change prototype.  Adjust.
9357         (the_native_target): New.
9358         (set_native_target, get_native_target): New.
9359         (find_default_run_target): Use the_native_target.
9360         (find_attach_target, find_run_target): Simplify.
9361         (target_ops::open): Delete.
9362         (dummy_target_info): New.
9363         (dummy_target::shortname, dummy_target::longname)
9364         (dummy_target::doc): Delete.
9365         (dummy_target::info): New.
9366         (debug_target::shortname, debug_target::longname)
9367         (debug_target::doc): Delete.
9368         (debug_target::info): New.
9369         * target.h (struct target_info): New.
9370         (target_ops::~target_ops): Add comment.
9371         (target_ops::info): New.
9372         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9373         longer virtual.  Implement in terms of target_info.
9374         (set_native_target, get_native_target): Declare.
9375         (target_open_ftype): New.
9376         (add_target, add_target_with_completer)
9377         (add_deprecated_target_alias): Change prototype.
9378         (test_target) <shortname, longname, doc>: Delete.
9379         <info>: New.
9380         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9381         add_inf_child_target.
9382         * tracefile-tfile.c (tfile_target_info): New.
9383         (tfile_target) <shortname, longname, doc>: Delete.
9384         <info>: New.
9385         (tfile_target::open): Rename to ...
9386         (tfile_target_open): ... this.
9387         (_initialize_tracefile_tfile): Adjust.
9388         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9389         add_inf_child_target.
9390         * windows-nat.c (_initialize_windows_nat): Use
9391         add_inf_child_target.
9392         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9393         add_inf_child_target.
9394
9395 2018-05-02  Pedro Alves  <palves@redhat.com>
9396
9397         * linux-nat.h (linux_nat_target) <low_new_thread,
9398         low_delete_thread, low_new_fork, low_forget_process,
9399         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9400         New virtual methods.
9401         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9402         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9403         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9404         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9405         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9406         Delete.
9407         * linux-fork.c (delete_fork): Adjust to call low method.
9408         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9409         (linux_nat_new_fork, linux_nat_forget_process_hook)
9410         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9411         (linux_nat_status_is_event):
9412         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9413         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9414         to call low method.
9415         (sigtrap_is_event): Rename to ...
9416         (linux_nat_target::low_status_is_event): ... this.
9417         (linux_nat_set_status_is_event): Delete.
9418         (save_stop_reason, linux_nat_wait_1)
9419         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9420         low methods.
9421         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9422         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9423         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9424         (linux_nat_set_prepare_to_resume): Delete.
9425         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9426         low virtual methods.
9427         * amd64-linux-nat.c: Likewise.
9428         * arm-linux-nat.c: Likewise.
9429         * i386-linux-nat.c: Likewise.
9430         * ia64-linux-nat.c: Likewise.
9431         * mips-linux-nat.c: Likewise.
9432         * ppc-linux-nat.c: Likewise.
9433         * s390-linux-nat.c: Likewise.
9434         * sparc64-linux-nat.c: Likewise.
9435         * x86-linux-nat.c: Likewise.
9436         * x86-linux-nat.h: Include "nat/x86-linux.h".
9437         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9438         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9439         Override methods.
9440
9441 2018-05-02  Pedro Alves  <palves@redhat.com>
9442
9443         * target.h (target_ops)
9444         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9445         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9446         stopped_by_watchpoint, have_continuable_watchpoint,
9447         stopped_data_address, watchpoint_addr_within_range,
9448         can_accel_watchpoint_condition, can_run, thread_alive,
9449         has_all_memory, has_memory, has_stack, has_registers,
9450         has_execution, can_async_p, is_async_p, supports_non_stop,
9451         always_non_stop_p, can_execute_reverse, supports_multi_process,
9452         supports_enable_disable_tracepoint,
9453         supports_disable_randomization, supports_string_tracing,
9454         supports_evaluation_of_breakpoint_conditions,
9455         can_run_breakpoint_commands, filesystem_is_local,
9456         can_download_tracepoint, get_trace_state_variable_value,
9457         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9458         record_is_replaying, record_will_replay,
9459         augmented_libraries_svr4_read>: Adjust to return bool.
9460         * aarch64-linux-nat.c: All implementations adjusted.
9461         * aix-thread.c: All implementations adjusted.
9462         * arm-linux-nat.c: All implementations adjusted.
9463         * breakpoint.c: All implementations adjusted.
9464         * bsd-kvm.c: All implementations adjusted.
9465         * bsd-uthread.c: All implementations adjusted.
9466         * corelow.c: All implementations adjusted.
9467         * ctf.c: All implementations adjusted.
9468         * darwin-nat.c: All implementations adjusted.
9469         * darwin-nat.h: All implementations adjusted.
9470         * exec.c: All implementations adjusted.
9471         * fbsd-nat.c: All implementations adjusted.
9472         * fbsd-nat.h: All implementations adjusted.
9473         * gnu-nat.c: All implementations adjusted.
9474         * gnu-nat.h: All implementations adjusted.
9475         * go32-nat.c: All implementations adjusted.
9476         * ia64-linux-nat.c: All implementations adjusted.
9477         * inf-child.c: All implementations adjusted.
9478         * inf-child.h: All implementations adjusted.
9479         * inf-ptrace.c: All implementations adjusted.
9480         * inf-ptrace.h: All implementations adjusted.
9481         * linux-nat.c: All implementations adjusted.
9482         * linux-nat.h: All implementations adjusted.
9483         * mips-linux-nat.c: All implementations adjusted.
9484         * nto-procfs.c: All implementations adjusted.
9485         * ppc-linux-nat.c: All implementations adjusted.
9486         * procfs.c: All implementations adjusted.
9487         * ravenscar-thread.c: All implementations adjusted.
9488         * record-btrace.c: All implementations adjusted.
9489         * record-full.c: All implementations adjusted.
9490         * remote-sim.c: All implementations adjusted.
9491         * remote.c: All implementations adjusted.
9492         * s390-linux-nat.c: All implementations adjusted.
9493         * sol-thread.c: All implementations adjusted.
9494         * spu-multiarch.c: All implementations adjusted.
9495         * target-delegates.c: All implementations adjusted.
9496         * target.c: All implementations adjusted.
9497         * target.h: All implementations adjusted.
9498         * tracefile-tfile.c: All implementations adjusted.
9499         * tracefile.c: All implementations adjusted.
9500         * tracefile.h: All implementations adjusted.
9501         * windows-nat.c: All implementations adjusted.
9502         * x86-linux-nat.h: All implementations adjusted.
9503         * x86-nat.h: All implementations adjusted.
9504
9505 2018-05-02  Pedro Alves  <palves@redhat.com>
9506
9507         * make-target-delegates (scan_target_h): Don't trim lines here.
9508         Replace sequences of tabs and/or whitespace with a single
9509         whitespace.
9510         (top level, parsing methods): Trim each line before processing it
9511         here.
9512
9513 2018-05-02  Pedro Alves  <palves@redhat.com>
9514             John Baldwin  <jhb@freebsd.org>
9515
9516         * target.h (enum strata) <debug_stratum>: New.
9517         (struct target_ops) <all delegation methods>: Replace by C++
9518         virtual methods, and drop "to_" prefix.  All references updated
9519         throughout.
9520         <to_shortname, to_longname, to_doc, to_data,
9521         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9522         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9523         virtual methods.  All references updated throughout.
9524         <can_attach, supports_terminal_ours, can_create_inferior,
9525         get_thread_control_capabilities, attach_no_wait>: New
9526         virtual methods.
9527         <insert_breakpoint, remove_breakpoint>: Now
9528         TARGET_DEFAULT_NORETURN methods.
9529         <info_proc>: Now returns bool.
9530         <to_magic>: Delete.
9531         (OPS_MAGIC): Delete.
9532         (current_target): Delete.  All references replaced by references
9533         to ...
9534         (target_stack): ... this.  New.
9535         (target_shortname, target_longname): Adjust.
9536         (target_can_run): Now a function declaration.
9537         (default_child_has_all_memory, default_child_has_memory)
9538         (default_child_has_stack, default_child_has_registers)
9539         (default_child_has_execution): Remove target_ops parameter.
9540         (complete_target_initialization): Delete.
9541         (memory_breakpoint_target): New template class.
9542         (test_target_ops): Refactor as a C++ class with virtual methods.
9543         * make-target-delegates (NAME_PART): Tighten.
9544         (POINTER_PART, CP_SYMBOL): New.
9545         (SIMPLE_RETURN_PART): Reimplement.
9546         (VEC_RETURN_PART): Expect less.
9547         (RETURN_PART, VIRTUAL_PART): New.
9548         (METHOD): Adjust to C++ virtual methods.
9549         (scan_target_h): Remove reference to C99.
9550         (dname): Output "target_ops::" prefix.
9551         (write_function_header): Adjust to output a C++ class method.
9552         (write_declaration): New.
9553         (write_delegator): Adjust to output a C++ class method.
9554         (tdname): Output "dummy_target::" prefix.
9555         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9556         method.
9557         (tdefault_names, debug_names): Delete.
9558         (return_types, tdefaults, styles, argtypes_array): New.
9559         (top level): All methods are delegators.
9560         (print_class): New.
9561         (top level): Print dummy_target and debug_target classes.
9562         * target-delegates.c: Regenerate.
9563         * target-debug.h (target_debug_print_enum_info_proc_what)
9564         (target_debug_print_thread_control_capabilities)
9565         (target_debug_print_thread_info_p): New.
9566         * target.c (dummy_target): Delete.
9567         (the_dummy_target, the_debug_target): New.
9568         (target_stack): Now extern.
9569         (set_targetdebug): Push/unpush debug target.
9570         (default_child_has_all_memory, default_child_has_memory)
9571         (default_child_has_stack, default_child_has_registers)
9572         (default_child_has_execution): Remove target_ops parameter.
9573         (complete_target_initialization): Delete.
9574         (add_target_with_completer): No longer call
9575         complete_target_initialization.
9576         (target_supports_terminal_ours): Use regular delegation.
9577         (update_current_target): Delete.
9578         (push_target): No longer check magic number.  Don't call
9579         update_current_target.
9580         (unpush_target): Don't call update_current_target.
9581         (target_is_pushed): No longer check magic number.
9582         (target_require_runnable): Skip for all stratums over
9583         process_stratum.
9584         (target_ops::info_proc): New.
9585         (target_info_proc): Use find_target_at and
9586         find_default_run_target.
9587         (target_supports_disable_randomization): Use regular delegation.
9588         (target_get_osdata): Use find_target_at.
9589         (target_ops::open, target_ops::close, target_ops::can_attach)
9590         (target_ops::attach, target_ops::can_create_inferior)
9591         (target_ops::create_inferior, target_ops::can_run)
9592         (target_can_run): New.
9593         (default_fileio_target): Use regular delegation.
9594         (target_ops::fileio_open, target_ops::fileio_pwrite)
9595         (target_ops::fileio_pread, target_ops::fileio_fstat)
9596         (target_ops::fileio_close, target_ops::fileio_unlink)
9597         (target_ops::fileio_readlink): New.
9598         (target_fileio_open_1, target_fileio_unlink)
9599         (target_fileio_readlink): Always call the target method.  Handle
9600         FILEIO_ENOSYS.
9601         (return_zero, return_zero_has_execution): Delete.
9602         (init_dummy_target): Delete.
9603         (dummy_target::dummy_target, dummy_target::shortname)
9604         (dummy_target::longname, dummy_target::doc)
9605         (debug_target::debug_target, debug_target::shortname)
9606         (debug_target::longname, debug_target::doc): New.
9607         (target_supports_delete_record): Use regular delegation.
9608         (setup_target_debug): Delete.
9609         (maintenance_print_target_stack): Skip debug_stratum.
9610         (initialize_targets): Instantiate the_dummy_target and
9611         the_debug_target.
9612         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9613         use target_stack.
9614         (target_auxv_search, fprint_target_auxv): Adjust.
9615         (info_auxv_command): Adjust to use target_stack.
9616         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9617         * exceptions.c (print_flush): Handle a NULL target_stack.
9618         * regcache.c (target_ops_no_register): Refactor as class with
9619         virtual methods.
9620
9621         * exec.c (exec_target): New class.
9622         (exec_ops): Now an exec_target.
9623         (exec_open, exec_close_1, exec_get_section_table)
9624         (exec_xfer_partial, exec_files_info, exec_has_memory)
9625         (exec_make_note_section): Refactor as exec_target methods.
9626         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9627         Delete.
9628         (exec_target::find_memory_regions): New.
9629         (_initialize_exec): Don't call init_exec_ops.
9630         * gdbcore.h (exec_file_clear): Delete.
9631
9632         * corefile.c (core_target): Delete.
9633         (core_file_command): Adjust.
9634         * corelow.c (core_target): New class.
9635         (the_core_target): New.
9636         (core_close): Remove target_ops parameter.
9637         (core_close_cleanup): Adjust.
9638         (core_target::close): New.
9639         (core_open, core_detach, get_core_registers, core_files_info)
9640         (core_xfer_partial, core_thread_alive, core_read_description)
9641         (core_pid_to_str, core_thread_name, core_has_memory)
9642         (core_has_stack, core_has_registers, core_info_proc): Rework as
9643         core_target methods.
9644         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9645         (_initialize_corelow): Initialize the_core_target.
9646         * gdbcore.h (core_target): Delete.
9647         (the_core_target): New.
9648
9649         * ctf.c: (ctf_target): New class.
9650         (ctf_ops): Now a ctf_target.
9651         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9652         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9653         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9654         methods.
9655         (init_ctf_ops): Delete.
9656         (_initialize_ctf): Don't call it.
9657         * tracefile-tfile.c (tfile_target): New class.
9658         (tfile_ops): Now a tfile_target.
9659         (tfile_open, tfile_close, tfile_files_info)
9660         (tfile_get_tracepoint_status, tfile_trace_find)
9661         (tfile_fetch_registers, tfile_xfer_partial)
9662         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9663         Refactor as tfile_target methods.
9664         (tfile_xfer_partial_features): Remove target_ops parameter.
9665         (init_tfile_ops): Delete.
9666         (_initialize_tracefile_tfile): Don't call it.
9667         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9668         (tracefile_has_stack, tracefile_has_registers)
9669         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9670         tracefile_target methods.
9671         (init_tracefile_ops): Delete.
9672         (tracefile_target::tracefile_target): New.
9673         * tracefile.h: Include "target.h".
9674         (tracefile_target): New class.
9675         (init_tracefile_ops): Delete.
9676
9677         * spu-multiarch.c (spu_multiarch_target): New class.
9678         (spu_ops): Now a spu_multiarch_target.
9679         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9680         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9681         (spu_search_memory, spu_mourn_inferior): Refactor as
9682         spu_multiarch_target methods.
9683         (init_spu_ops): Delete.
9684         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9685         complete_target_initialization.
9686
9687         * ravenscar-thread.c (ravenscar_thread_target): New class.
9688         (ravenscar_ops): Now a ravenscar_thread_target.
9689         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9690         (ravenscar_thread_alive, ravenscar_pid_to_str)
9691         (ravenscar_fetch_registers, ravenscar_store_registers)
9692         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9693         (ravenscar_stopped_by_hw_breakpoint)
9694         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9695         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9696         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9697         methods.
9698         (init_ravenscar_thread_ops): Delete.
9699         (_initialize_ravenscar): Remove references to
9700         init_ravenscar_thread_ops and complete_target_initialization.
9701
9702         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9703         (bsd_uthread_target): New class.
9704         (bsd_uthread_ops): Now a bsd_uthread_target.
9705         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9706         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9707         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9708         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9709         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9710         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9711         (bsd_uthread_target): Delete function.
9712         (_initialize_bsd_uthread): Remove reference to
9713         complete_target_initialization.
9714
9715         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9716         (target_bfd): ... this new class.
9717         (target_bfd_xfer_partial, target_bfd_get_section_table)
9718         (target_bfd_close): Refactor as target_bfd methods.
9719         (target_bfd::~target_bfd): New.
9720         (target_bfd_reopen): Adjust.
9721         (target_bfd::close): New.
9722
9723         * record-btrace.c (record_btrace_target): New class.
9724         (record_btrace_ops): Now a record_btrace_target.
9725         (record_btrace_open, record_btrace_stop_recording)
9726         (record_btrace_disconnect, record_btrace_close)
9727         (record_btrace_async, record_btrace_info)
9728         (record_btrace_insn_history, record_btrace_insn_history_range)
9729         (record_btrace_insn_history_from, record_btrace_call_history)
9730         (record_btrace_call_history_range)
9731         (record_btrace_call_history_from, record_btrace_record_method)
9732         (record_btrace_is_replaying, record_btrace_will_replay)
9733         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9734         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9735         (record_btrace_store_registers, record_btrace_prepare_to_store)
9736         (record_btrace_to_get_unwinder)
9737         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9738         (record_btrace_commit_resume, record_btrace_wait)
9739         (record_btrace_stop, record_btrace_can_execute_reverse)
9740         (record_btrace_stopped_by_sw_breakpoint)
9741         (record_btrace_supports_stopped_by_sw_breakpoint)
9742         (record_btrace_stopped_by_hw_breakpoint)
9743         (record_btrace_supports_stopped_by_hw_breakpoint)
9744         (record_btrace_update_thread_list, record_btrace_thread_alive)
9745         (record_btrace_goto_begin, record_btrace_goto_end)
9746         (record_btrace_goto, record_btrace_stop_replaying_all)
9747         (record_btrace_execution_direction)
9748         (record_btrace_prepare_to_generate_core)
9749         (record_btrace_done_generating_core): Refactor as
9750         record_btrace_target methods.
9751         (init_record_btrace_ops): Delete.
9752         (_initialize_record_btrace): Remove reference to
9753         init_record_btrace_ops.
9754         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9755         the execution_direction global.
9756         (record_full_base_target, record_full_target)
9757         (record_full_core_target): New classes.
9758         (record_full_ops): Now a record_full_target.
9759         (record_full_core_ops): Now a record_full_core_target.
9760         (record_full_target::detach, record_full_target::disconnect)
9761         (record_full_core_target::disconnect)
9762         (record_full_target::mourn_inferior, record_full_target::kill):
9763         New.
9764         (record_full_open, record_full_close, record_full_async): Refactor
9765         as methods of the record_full_base_target class.
9766         (record_full_resume, record_full_commit_resume): Refactor
9767         as methods of the record_full_target class.
9768         (record_full_wait, record_full_stopped_by_watchpoint)
9769         (record_full_stopped_data_address)
9770         (record_full_stopped_by_sw_breakpoint)
9771         (record_full_supports_stopped_by_sw_breakpoint)
9772         (record_full_stopped_by_hw_breakpoint)
9773         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9774         methods of the record_full_base_target class.
9775         (record_full_store_registers, record_full_xfer_partial)
9776         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9777         Refactor as methods of the record_full_target class.
9778         (record_full_can_execute_reverse, record_full_get_bookmark)
9779         (record_full_goto_bookmark, record_full_execution_direction)
9780         (record_full_record_method, record_full_info, record_full_delete)
9781         (record_full_is_replaying, record_full_will_replay)
9782         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9783         (record_full_stop_replaying): Refactor as methods of the
9784         record_full_base_target class.
9785         (record_full_core_resume, record_full_core_kill)
9786         (record_full_core_fetch_registers)
9787         (record_full_core_prepare_to_store)
9788         (record_full_core_store_registers, record_full_core_xfer_partial)
9789         (record_full_core_insert_breakpoint)
9790         (record_full_core_remove_breakpoint)
9791         (record_full_core_has_execution): Refactor
9792         as methods of the record_full_core_target class.
9793         (record_full_base_target::supports_delete_record): New.
9794         (init_record_full_ops): Delete.
9795         (init_record_full_core_ops): Delete.
9796         (record_full_save): Refactor as method of the
9797         record_full_base_target class.
9798         (_initialize_record_full): Remove references to
9799         init_record_full_ops and init_record_full_core_ops.
9800
9801         * remote.c (remote_target, extended_remote_target): New classes.
9802         (remote_ops): Now a remote_target.
9803         (extended_remote_ops): Now an extended_remote_target.
9804         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9805         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9806         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9807         (remote_pass_signals, remote_set_syscall_catchpoint)
9808         (remote_program_signals, )
9809         (remote_thread_always_alive): Remove target_ops parameter.
9810         (remote_thread_alive, remote_thread_name)
9811         (remote_update_thread_list, remote_threads_extra_info)
9812         (remote_static_tracepoint_marker_at)
9813         (remote_static_tracepoint_markers_by_strid)
9814         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9815         (remote_open): Refactor as methods of remote_target.
9816         (extended_remote_open, extended_remote_detach)
9817         (extended_remote_attach, extended_remote_post_attach):
9818         (extended_remote_supports_disable_randomization)
9819         (extended_remote_create_inferior): : Refactor as method of
9820         extended_remote_target.
9821         (remote_set_permissions, remote_open_1, remote_detach)
9822         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9823         (remote_resume, remote_commit_resume, remote_stop)
9824         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9825         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9826         (remote_prepare_to_store, remote_store_registers)
9827         (remote_flash_erase, remote_flash_done, remote_files_info)
9828         (remote_kill, remote_mourn, remote_insert_breakpoint)
9829         (remote_remove_breakpoint, remote_insert_watchpoint)
9830         (remote_watchpoint_addr_within_range)
9831         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9832         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9833         (remote_supports_stopped_by_sw_breakpoint)
9834         (remote_stopped_by_hw_breakpoint)
9835         (remote_supports_stopped_by_hw_breakpoint)
9836         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9837         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9838         (remote_verify_memory): Refactor as methods of remote_target.
9839         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9840         parameter.
9841         (remote_xfer_partial, remote_get_memory_xfer_limit)
9842         (remote_search_memory, remote_rcmd, remote_memory_map)
9843         (remote_pid_to_str, remote_get_thread_local_address)
9844         (remote_get_tib_address, remote_read_description): Refactor as
9845         methods of remote_target.
9846         (remote_target::fileio_open, remote_target::fileio_pwrite)
9847         (remote_target::fileio_pread, remote_target::fileio_close): New.
9848         (remote_hostio_readlink, remote_hostio_fstat)
9849         (remote_filesystem_is_local, remote_can_execute_reverse)
9850         (remote_supports_non_stop, remote_supports_disable_randomization)
9851         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9852         (remote_supports_enable_disable_tracepoint)
9853         (remote_supports_string_tracing)
9854         (remote_can_run_breakpoint_commands, remote_trace_init)
9855         (remote_download_tracepoint, remote_can_download_tracepoint)
9856         (remote_download_trace_state_variable, remote_enable_tracepoint)
9857         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9858         (remote_trace_start, remote_get_trace_status)
9859         (remote_get_tracepoint_status, remote_trace_stop)
9860         (remote_trace_find, remote_get_trace_state_variable_value)
9861         (remote_save_trace_data, remote_get_raw_trace_data)
9862         (remote_set_disconnected_tracing, remote_core_of_thread)
9863         (remote_set_circular_trace_buffer, remote_traceframe_info)
9864         (remote_get_min_fast_tracepoint_insn_len)
9865         (remote_set_trace_buffer_size, remote_set_trace_notes)
9866         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9867         (remote_disable_btrace, remote_teardown_btrace)
9868         (remote_read_btrace, remote_btrace_conf)
9869         (remote_augmented_libraries_svr4_read, remote_load)
9870         (remote_pid_to_exec_file, remote_can_do_single_step)
9871         (remote_execution_direction, remote_thread_handle_to_thread_info):
9872         Refactor as methods of remote_target.
9873         (init_remote_ops, init_extended_remote_ops): Delete.
9874         (remote_can_async_p, remote_is_async_p, remote_async)
9875         (remote_thread_events, remote_upload_tracepoints)
9876         (remote_upload_trace_state_variables): Refactor as methods of
9877         remote_target.
9878         (_initialize_remote): Remove references to init_remote_ops and
9879         init_extended_remote_ops.
9880
9881         * remote-sim.c (gdbsim_target): New class.
9882         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9883         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9884         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9885         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9886         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9887         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9888         Refactor as methods of gdbsim_target.
9889         (gdbsim_ops): Now a gdbsim_target.
9890         (init_gdbsim_ops): Delete.
9891         (gdbsim_cntrl_c): Adjust.
9892         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9893
9894         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9895         (the_amd64_linux_nat_target): New.
9896         (amd64_linux_fetch_inferior_registers)
9897         (amd64_linux_store_inferior_registers): Refactor as methods of
9898         amd64_linux_nat_target.
9899         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9900         * i386-linux-nat.c: Don't include "linux-nat.h".
9901         (i386_linux_nat_target): New class.
9902         (the_i386_linux_nat_target): New.
9903         (i386_linux_fetch_inferior_registers)
9904         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9905         as methods of i386_linux_nat_target.
9906         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9907         * inf-child.c (inf_child_ops): Delete.
9908         (inf_child_fetch_inferior_registers)
9909         (inf_child_store_inferior_registers): Delete.
9910         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9911         methods of inf_child_target.
9912         (inf_child_target::supports_terminal_ours)
9913         (inf_child_target::terminal_init)
9914         (inf_child_target::terminal_inferior)
9915         (inf_child_target::terminal_ours_for_output)
9916         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9917         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9918         New.
9919         (inf_child_open, inf_child_disconnect, inf_child_close)
9920         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9921         (inf_child_post_startup_inferior, inf_child_can_run)
9922         (inf_child_pid_to_exec_file): Refactor as methods of
9923         inf_child_target.
9924         (inf_child_follow_fork): Delete.
9925         (inf_child_target::can_create_inferior)
9926         (inf_child_target::can_attach): New.
9927         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9928         (inf_child_target::has_stack, inf_child_target::has_registers)
9929         (inf_child_target::has_execution): New.
9930         (inf_child_fileio_open, inf_child_fileio_pwrite)
9931         (inf_child_fileio_pread, inf_child_fileio_fstat)
9932         (inf_child_fileio_close, inf_child_fileio_unlink)
9933         (inf_child_fileio_readlink, inf_child_use_agent)
9934         (inf_child_can_use_agent): Refactor as methods of
9935         inf_child_target.
9936         (return_zero, inf_child_target): Delete.
9937         (inf_child_target::inf_child_target): New.
9938         * inf-child.h: Include "target.h".
9939         (inf_child_target): Delete function prototype.
9940         (inf_child_target): New class.
9941         (inf_child_open_target, inf_child_mourn_inferior)
9942         (inf_child_maybe_unpush_target): Delete.
9943         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9944         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9945         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9946         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9947         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9948         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9949         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9950         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9951         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9952         methods of inf_ptrace_target.
9953         (inf_ptrace_target): Delete function.
9954         * inf-ptrace.h: Include "inf-child.h".
9955         (inf_ptrace_target): Delete function declaration.
9956         (inf_ptrace_target): New class.
9957         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9958         * linux-nat.c (linux_target): New.
9959         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9960         (linux_nat_target::~linux_nat_target): New.
9961         (linux_child_post_attach, linux_child_post_startup_inferior)
9962         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9963         (linux_child_remove_fork_catchpoint)
9964         (linux_child_insert_vfork_catchpoint)
9965         (linux_child_remove_vfork_catchpoint)
9966         (linux_child_insert_exec_catchpoint)
9967         (linux_child_remove_exec_catchpoint)
9968         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9969         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9970         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9971         (linux_nat_stopped_data_address)
9972         (linux_nat_stopped_by_sw_breakpoint)
9973         (linux_nat_supports_stopped_by_sw_breakpoint)
9974         (linux_nat_stopped_by_hw_breakpoint)
9975         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9976         (linux_nat_kill, linux_nat_mourn_inferior)
9977         (linux_nat_xfer_partial, linux_nat_thread_alive)
9978         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9979         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9980         (linux_child_static_tracepoint_markers_by_strid)
9981         (linux_nat_is_async_p, linux_nat_can_async_p)
9982         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9983         (linux_nat_supports_multi_process)
9984         (linux_nat_supports_disable_randomization, linux_nat_async)
9985         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9986         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9987         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9988         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9989         methods of linux_nat_target.
9990         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9991         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9992         parameter.
9993         (check_stopped_by_watchpoint): Adjust.
9994         (linux_xfer_partial): Delete.
9995         (linux_target_install_ops, linux_target, linux_nat_add_target):
9996         Delete.
9997         (linux_nat_target::linux_nat_target): New.
9998         * linux-nat.h: Include "inf-ptrace.h".
9999         (linux_nat_target): New.
10000         (linux_target, linux_target_install_ops, linux_nat_add_target):
10001         Delete function declarations.
10002         (linux_target): Declare global.
10003         * linux-thread-db.c (thread_db_target): New.
10004         (thread_db_target::thread_db_target): New.
10005         (thread_db_ops): Delete.
10006         (the_thread_db_target): New.
10007         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10008         (thread_db_update_thread_list, thread_db_pid_to_str)
10009         (thread_db_extra_thread_info)
10010         (thread_db_thread_handle_to_thread_info)
10011         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10012         (thread_db_resume): Refactor as methods of thread_db_target.
10013         (init_thread_db_ops): Delete.
10014         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10015         * x86-linux-nat.c: Don't include "linux-nat.h".
10016         (super_post_startup_inferior): Delete.
10017         (x86_linux_nat_target::~x86_linux_nat_target): New.
10018         (x86_linux_child_post_startup_inferior)
10019         (x86_linux_read_description, x86_linux_enable_btrace)
10020         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10021         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10022         methods of x86_linux_nat_target.
10023         (x86_linux_create_target): Delete.  Bits folded ...
10024         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10025         pointer.
10026         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10027         (x86_linux_nat_target): New class.
10028         (x86_linux_create_target): Delete.
10029         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10030         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10031         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10032         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10033         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10034         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10035         make extern.
10036         (x86_use_watchpoints): Delete.
10037         * x86-nat.h: Include "breakpoint.h" and "target.h".
10038         (x86_use_watchpoints): Delete.
10039         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10040         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10041         (x86_insert_watchpoint, x86_remove_watchpoint)
10042         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10043         (x86_stopped_by_hw_breakpoint): New declarations.
10044         (x86_nat_target): New template class.
10045
10046         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10047         (the_ppc_linux_nat_target): New.
10048         (ppc_linux_fetch_inferior_registers)
10049         (ppc_linux_can_use_hw_breakpoint)
10050         (ppc_linux_region_ok_for_hw_watchpoint)
10051         (ppc_linux_ranged_break_num_registers)
10052         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10053         (ppc_linux_insert_mask_watchpoint)
10054         (ppc_linux_remove_mask_watchpoint)
10055         (ppc_linux_can_accel_watchpoint_condition)
10056         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10057         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10058         (ppc_linux_watchpoint_addr_within_range)
10059         (ppc_linux_masked_watch_num_registers)
10060         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10061         (ppc_linux_read_description): Refactor as methods of
10062         ppc_linux_nat_target.
10063         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10064
10065         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10066         (procfs_target): New class.
10067         (the_procfs_target): New.
10068         (procfs_target): Delete function.
10069         (procfs_auxv_parse, procfs_attach, procfs_detach)
10070         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10071         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10072         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10073         (procfs_create_inferior, procfs_update_thread_list)
10074         (procfs_thread_alive, procfs_pid_to_str)
10075         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10076         (procfs_stopped_data_address, procfs_insert_watchpoint)
10077         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10078         (proc_find_memory_regions, procfs_info_proc)
10079         (procfs_make_note_section): Refactor as methods of procfs_target.
10080         (_initialize_procfs): Adjust.
10081         * sol-thread.c (sol_thread_target): New class.
10082         (sol_thread_ops): Now a sol_thread_target.
10083         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10084         (sol_thread_fetch_registers, sol_thread_store_registers)
10085         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10086         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10087         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10088         (init_sol_thread_ops): Delete.
10089         (_initialize_sol_thread): Adjust.  Remove references to
10090         init_sol_thread_ops and complete_target_initialization.
10091
10092         * windows-nat.c (windows_nat_target): New class.
10093         (windows_fetch_inferior_registers)
10094         (windows_store_inferior_registers, windows_resume, windows_wait)
10095         (windows_attach, windows_detach, windows_pid_to_exec_file)
10096         (windows_files_info, windows_create_inferior)
10097         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10098         (windows_close, windows_pid_to_str, windows_xfer_partial)
10099         (windows_get_tib_address, windows_get_ada_task_ptid)
10100         (windows_thread_name, windows_thread_alive): Refactor as
10101         windows_nat_target methods.
10102         (do_initial_windows_stuff): Adjust.
10103         (windows_target): Delete function.
10104         (_initialize_windows_nat): Adjust.
10105
10106         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10107         (darwin_mourn_inferior, darwin_kill_inferior)
10108         (darwin_create_inferior, darwin_attach, darwin_detach)
10109         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10110         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10111         (darwin_supports_multi_process): Refactor as darwin_nat_target
10112         methods.
10113         (darwin_resume_to, darwin_files_info): Delete.
10114         (_initialize_darwin_inferior): Rename to ...
10115         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10116         * darwin-nat.h: Include "inf-child.h".
10117         (darwin_nat_target): New class.
10118         (darwin_complete_target): Delete.
10119         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10120         (darwin_target): New.
10121         (i386_darwin_fetch_inferior_registers)
10122         (i386_darwin_store_inferior_registers): Refactor as methods of
10123         darwin_nat_target.
10124         (darwin_complete_target): Delete, with ...
10125         (_initialize_i386_darwin_nat): ... bits factored out here.
10126
10127         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10128         (the_alpha_linux_nat_target): New.
10129         (alpha_linux_register_u_offset): Refactor as
10130         alpha_linux_nat_target method.
10131         (_initialize_alpha_linux_nat): Adjust.
10132         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10133         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10134         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10135         methods of linux_nat_trad_target.
10136         (linux_trad_target): Delete.
10137         * linux-nat-trad.h (linux_trad_target): Delete function.
10138         (linux_nat_trad_target): New class.
10139         * mips-linux-nat.c (mips_linux_nat_target): New class.
10140         (super_fetch_registers, super_store_registers, super_close):
10141         Delete.
10142         (the_mips_linux_nat_target): New.
10143         (mips64_linux_regsets_fetch_registers)
10144         (mips64_linux_regsets_store_registers)
10145         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10146         (mips_linux_register_u_offset, mips_linux_read_description)
10147         (mips_linux_can_use_hw_breakpoint)
10148         (mips_linux_stopped_by_watchpoint)
10149         (mips_linux_stopped_data_address)
10150         (mips_linux_region_ok_for_hw_watchpoint)
10151         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10152         (mips_linux_close): Refactor as methods of mips_linux_nat.
10153         (_initialize_mips_linux_nat): Adjust to C++ification.
10154
10155         * aix-thread.c (aix_thread_target): New class.
10156         (aix_thread_ops): Now an aix_thread_target.
10157         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10158         (aix_thread_fetch_registers, aix_thread_store_registers)
10159         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10160         (aix_thread_thread_alive, aix_thread_pid_to_str)
10161         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10162         Refactor as methods of aix_thread_target.
10163         (init_aix_thread_ops): Delete.
10164         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10165         and complete_target_initialization.
10166         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10167         (rs6000_nat_target): New class.
10168         (the_rs6000_nat_target): New.
10169         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10170         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10171         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10172         (super_create_inferior): Delete.
10173         (_initialize_rs6000_nat): Adjust to C++ification.
10174
10175         * arm-linux-nat.c (arm_linux_nat_target): New class.
10176         (the_arm_linux_nat_target): New.
10177         (arm_linux_fetch_inferior_registers)
10178         (arm_linux_store_inferior_registers, arm_linux_read_description)
10179         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10180         (arm_linux_remove_hw_breakpoint)
10181         (arm_linux_region_ok_for_hw_watchpoint)
10182         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10183         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10184         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10185         arm_linux_nat_target.
10186         (_initialize_arm_linux_nat): Adjust to C++ification.
10187
10188         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10189         (the_aarch64_linux_nat_target): New.
10190         (aarch64_linux_fetch_inferior_registers)
10191         (aarch64_linux_store_inferior_registers)
10192         (aarch64_linux_child_post_startup_inferior)
10193         (aarch64_linux_read_description)
10194         (aarch64_linux_can_use_hw_breakpoint)
10195         (aarch64_linux_insert_hw_breakpoint)
10196         (aarch64_linux_remove_hw_breakpoint)
10197         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10198         (aarch64_linux_region_ok_for_hw_watchpoint)
10199         (aarch64_linux_stopped_data_address)
10200         (aarch64_linux_stopped_by_watchpoint)
10201         (aarch64_linux_watchpoint_addr_within_range)
10202         (aarch64_linux_can_do_single_step): Refactor as methods of
10203         aarch64_linux_nat_target.
10204         (super_post_startup_inferior): Delete.
10205         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10206
10207         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10208         (the_hppa_linux_nat_target): New.
10209         (hppa_linux_fetch_inferior_registers)
10210         (hppa_linux_store_inferior_registers): Refactor as methods of
10211         hppa_linux_nat_target.
10212         (_initialize_hppa_linux_nat): Adjust to C++ification.
10213
10214         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10215         (the_ia64_linux_nat_target): New.
10216         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10217         (ia64_linux_stopped_data_address)
10218         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10219         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10220         ia64_linux_nat_target methods.
10221         (super_xfer_partial): Delete.
10222         (_initialize_ia64_linux_nat): Adjust to C++ification.
10223
10224         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10225         (the_m32r_linux_nat_target): New.
10226         (m32r_linux_fetch_inferior_registers)
10227         (m32r_linux_store_inferior_registers): Refactor as
10228         m32r_linux_nat_target methods.
10229         (_initialize_m32r_linux_nat): Adjust to C++ification.
10230
10231         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10232         (the_m68k_linux_nat_target): New.
10233         (m68k_linux_fetch_inferior_registers)
10234         (m68k_linux_store_inferior_registers): Refactor as
10235         m68k_linux_nat_target methods.
10236         (_initialize_m68k_linux_nat): Adjust to C++ification.
10237
10238         * s390-linux-nat.c (s390_linux_nat_target): New class.
10239         (the_s390_linux_nat_target): New.
10240         (s390_linux_fetch_inferior_registers)
10241         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10242         (s390_insert_watchpoint, s390_remove_watchpoint)
10243         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10244         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10245         (s390_auxv_parse, s390_read_description): Refactor as methods of
10246         s390_linux_nat_target.
10247         (_initialize_s390_nat): Adjust to C++ification.
10248
10249         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10250         (the_sparc_linux_nat_target): New.
10251         (_initialize_sparc_linux_nat): Adjust to C++ification.
10252         * sparc-nat.c (sparc_fetch_inferior_registers)
10253         (sparc_store_inferior_registers): Remove target_ops parameter.
10254         * sparc-nat.h (sparc_fetch_inferior_registers)
10255         (sparc_store_inferior_registers): Remove target_ops parameter.
10256         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10257         (the_sparc64_linux_nat_target): New.
10258         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10259
10260         * spu-linux-nat.c (spu_linux_nat_target): New class.
10261         (the_spu_linux_nat_target): New.
10262         (spu_child_post_startup_inferior, spu_child_post_attach)
10263         (spu_child_wait, spu_fetch_inferior_registers)
10264         (spu_store_inferior_registers, spu_xfer_partial)
10265         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10266         methods.
10267         (_initialize_spu_nat): Adjust to C++ification.
10268
10269         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10270         (the_tilegx_linux_nat_target): New.
10271         (fetch_inferior_registers, store_inferior_registers):
10272         Refactor as methods.
10273         (_initialize_tile_linux_nat): Adjust to C++ification.
10274
10275         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10276         (the_xtensa_linux_nat_target): New.
10277         (xtensa_linux_fetch_inferior_registers)
10278         (xtensa_linux_store_inferior_registers): Refactor as
10279         xtensa_linux_nat_target methods.
10280         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10281
10282         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10283         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10284         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10285         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10286         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10287         (fbsd_stopped_by_sw_breakpoint)
10288         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10289         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10290         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10291         (fbsd_post_startup_inferior, fbsd_post_attach)
10292         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10293         (fbsd_set_syscall_catchpoint)
10294         (super_xfer_partial, super_resume, super_wait)
10295         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10296         (fbsd_handle_debug_trap): Remove target_ops parameter.
10297         (fbsd_nat_add_target): Delete.
10298         * fbsd-nat.h: Include "inf-ptrace.h".
10299         (fbsd_nat_add_target): Delete.
10300         (USE_SIGTRAP_SIGINFO): Define.
10301         (fbsd_nat_target): New class.
10302
10303         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10304         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10305         (amd64bsd_target): Delete.
10306         * amd64-bsd-nat.h: New file.
10307         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10308         "x86-bsd-nat.h".
10309         (amd64_fbsd_nat_target): New class.
10310         (the_amd64_fbsd_nat_target): New.
10311         (amd64fbsd_read_description): Refactor as method of
10312         amd64_fbsd_nat_target.
10313         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10314         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10315         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10316         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10317         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10318         (i386bsd_target): Delete.
10319         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10320         (i386bsd_fetch_inferior_registers)
10321         (i386bsd_store_inferior_registers): Declare.
10322         (i386_bsd_nat_target): New class.
10323         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10324         (the_i386_fbsd_nat_target): New.
10325         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10326         i386_fbsd_nat_target methods.
10327         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10328         (_initialize_i386fbsd_nat): Adjust to C++ification.
10329         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10330         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10331         (_initialize_x86_bsd_nat): Adjust to C++ification.
10332         * x86-bsd-nat.h: Include "x86-nat.h".
10333         (x86bsd_target): Delete declaration.
10334         (x86bsd_nat_target): New class.
10335
10336         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10337         (the_aarch64_fbsd_nat_target): New.
10338         (aarch64_fbsd_fetch_inferior_registers)
10339         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10340         aarch64_fbsd_nat_target.
10341         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10342         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10343         (the_alpha_bsd_nat_target): New.
10344         (alphabsd_fetch_inferior_registers)
10345         (alphabsd_store_inferior_registers): Refactor as
10346         alpha_bsd_nat_target methods.
10347         (_initialize_alphabsd_nat): Refactor as methods of
10348         alpha_bsd_nat_target.
10349         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10350         (the_amd64_nbsd_nat_target): New.
10351         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10352         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10353         (the_amd64_obsd_nat_target): New.
10354         (_initialize_amd64obsd_nat): Adjust to C++ification.
10355         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10356         (the_arm_fbsd_nat_target): New.
10357         (arm_fbsd_fetch_inferior_registers)
10358         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10359         (_initialize_arm_fbsd_nat): Refactor as methods of
10360         arm_fbsd_nat_target.
10361         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10362         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10363         (the_arm_netbsd_nat_target): New.
10364         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10365         arm_netbsd_nat_target.
10366         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10367         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10368         (the_hppa_nbsd_nat_target): New.
10369         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10370         hppa_nbsd_nat_target methods.
10371         (_initialize_hppanbsd_nat): Adjust to C++ification.
10372         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10373         (the_hppa_obsd_nat_target): New.
10374         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10375         methods of hppa_obsd_nat_target.
10376         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10377         add_target.
10378         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10379         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10380         add_target.
10381         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10382         (_initialize_i386obsd_nat): Use add_target.
10383         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10384         (the_m68k_bsd_nat_target): New.
10385         (m68kbsd_fetch_inferior_registers)
10386         (m68kbsd_store_inferior_registers): Refactor as methods of
10387         m68k_bsd_nat_target.
10388         (_initialize_m68kbsd_nat): Adjust to C++ification.
10389         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10390         (the_mips_fbsd_nat_target): New.
10391         (mips_fbsd_fetch_inferior_registers)
10392         (mips_fbsd_store_inferior_registers): Refactor as methods of
10393         mips_fbsd_nat_target.
10394         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10395         add_target.
10396         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10397         (the_mips_nbsd_nat_target): New.
10398         (mipsnbsd_fetch_inferior_registers)
10399         (mipsnbsd_store_inferior_registers): Refactor as methods of
10400         mips_nbsd_nat_target.
10401         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10402         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10403         (the_mips64_obsd_nat_target): New.
10404         (mips64obsd_fetch_inferior_registers)
10405         (mips64obsd_store_inferior_registers): Refactor as methods of
10406         mips64_obsd_nat_target.
10407         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10408         add_target.
10409         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10410         nbsd_nat_target.
10411         * nbsd-nat.h: Include "inf-ptrace.h".
10412         (nbsd_nat_target): New class.
10413         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10414         (obsd_wait): Refactor as methods of obsd_nat_target.
10415         (obsd_add_target): Delete.
10416         * obsd-nat.h: Include "inf-ptrace.h".
10417         (obsd_nat_target): New class.
10418         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10419         (the_ppc_fbsd_nat_target): New.
10420         (ppcfbsd_fetch_inferior_registers)
10421         (ppcfbsd_store_inferior_registers): Refactor as methods of
10422         ppc_fbsd_nat_target.
10423         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10424         add_target.
10425         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10426         (the_ppc_nbsd_nat_target): New.
10427         (ppcnbsd_fetch_inferior_registers)
10428         (ppcnbsd_store_inferior_registers): Refactor as methods of
10429         ppc_nbsd_nat_target.
10430         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10431         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10432         (the_ppc_obsd_nat_target): New.
10433         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10434         methods of ppc_obsd_nat_target.
10435         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10436         add_target.
10437         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10438         (the_sh_nbsd_nat_target): New.
10439         (shnbsd_fetch_inferior_registers)
10440         (shnbsd_store_inferior_registers): Refactor as methods of
10441         sh_nbsd_nat_target.
10442         (_initialize_shnbsd_nat): Adjust to C++ification.
10443         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10444         (inf_ptrace_xfer_partial): Delete.
10445         (sparc_xfer_partial, sparc_target): Delete.
10446         * sparc-nat.h (sparc_fetch_inferior_registers)
10447         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10448         (sparc_target): Delete function declaration.
10449         (sparc_target): New template class.
10450         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10451         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10452         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10453         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10454         add_target.
10455         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10456         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10457         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10458         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10459         add_target.
10460         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10461         (the_vax_bsd_nat_target): New.
10462         (vaxbsd_fetch_inferior_registers)
10463         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10464         methods.
10465         (_initialize_vaxbsd_nat): Adjust to C++ification.
10466
10467         * bsd-kvm.c (bsd_kvm_target): New class.
10468         (bsd_kvm_ops): Now a bsd_kvm_target.
10469         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10470         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10471         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10472         bsd_kvm_target.
10473         (bsd_kvm_return_one): Delete.
10474         (bsd_kvm_add_target): Adjust to C++ification.
10475
10476         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10477         (nto_procfs_target_procfs): New classes.
10478         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10479         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10480         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10481         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10482         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10483         (procfs_remove_hw_breakpoint, procfs_resume)
10484         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10485         (procfs_kill_inferior, procfs_store_registers)
10486         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10487         as methods of nto_procfs_target.
10488         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10489         (nto_native_ops): Delete.
10490         (procfs_open, procfs_native_open): Delete.
10491         (nto_native_ops): Now an nto_procfs_target_native.
10492         (init_procfs_targets): Adjust to C++ification.
10493         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10494         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10495         Refactor as methods of nto_procfs_target.
10496
10497         * go32-nat.c (go32_nat_target): New class.
10498         (the_go32_nat_target): New.
10499         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10500         (go32_store_registers, go32_xfer_partial, go32_files_info)
10501         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10502         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10503         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10504         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10505         (go32_target): Delete.
10506         (_initialize_go32_nat): Adjust to C++ification.
10507
10508         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10509         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10510         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10511         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10512         gnu_nat_target.
10513         (gnu_target): Delete.
10514         * gnu-nat.h (gnu_target): Delete.
10515         (gnu_nat_target): New class.
10516         * i386-gnu-nat.c (gnu_base_target): New.
10517         (i386_gnu_nat_target): New class.
10518         (the_i386_gnu_nat_target): New.
10519         (_initialize_i386gnu_nat): Adjust to C++ification.
10520
10521 2018-05-02  Pedro Alves  <palves@redhat.com>
10522
10523         * bfd-target.c (target_bfd_xclose): Rename to ...
10524         (target_bfd_close): ... this.
10525         (target_bfd_reopen): Adjust.
10526         * target.c (target_close): Remove references to to_xclose.
10527         * target.h (target_ops::to_xclose): Delete.
10528         (target_ops::to_close): Update comments.
10529
10530 2018-05-02  Pedro Alves  <palves@redhat.com>
10531
10532         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10533         "linux-nat.h".
10534         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10535         * inf-ptrace.c (inf_ptrace_register_u_offset)
10536         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10537         (inf_ptrace_store_register, inf_ptrace_store_registers)
10538         (inf_ptrace_trad_target): Move to ...
10539         * linux-nat-trad.c: ... this new file.
10540         * linux-nat-trad.h: New file.
10541         * linux-nat.c (linux_target_install_ops): Make extern.
10542         (linux_trad_target): Delete.
10543         * linux-nat.h (linux_trad_target): Delete declaration.
10544         (linux_target_install_ops): Declare.
10545         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10546         "linux-nat.h".
10547
10548 2018-05-02  Pedro Alves  <palves@redhat.com>
10549
10550         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10551         procfs_target/add_target here.
10552         * procfs.c (procfs_target): Make static.
10553         (_initialize_procfs): Call add_target here.
10554         * procfs.h (struct target_ops): Remove forward declaration.
10555         (procfs_target): Remove declaration.
10556         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10557
10558 2018-05-02  Pedro Alves  <palves@redhat.com>
10559
10560         * procfs.c (procfs_stopped_by_watchpoint)
10561         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10562         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10563         Forward declare.
10564         (procfs_use_watchpoints): Delete, move contents...
10565         (procfs_target): ... here.
10566         * procfs.h (procfs_use_watchpoints): Delete declaration.
10567         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10568         procfs_use_watchpoints.
10569         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10570         procfs_use_watchpoints.
10571
10572 2018-05-02  Tom Tromey  <tom@tromey.com>
10573
10574         PR python/20084:
10575         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10576         and var_zuinteger_unlimited.
10577         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10578         and PARAM_ZUINTEGER_UNLIMITED.
10579         (set_parameter_value): Handle var_zuinteger and
10580         var_zuinteger_unlimited.
10581         (add_setshow_generic): Likewise.
10582         (parmpy_init): Likewise.
10583
10584 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10585
10586         PR rust/23124
10587         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10588         pointer is not null before dereferencing it.
10589
10590 2018-04-30  Tom Tromey  <tom@tromey.com>
10591
10592         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10593         is_mi_like_p.
10594
10595 2018-04-30  Tom Tromey  <tom@tromey.com>
10596
10597         * breakpoint.c (mention): Remove use of is_mi_like_p.
10598         (print_mention_ranged_breakpoint): Likewise.
10599         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10600         of is_mi_like_p.
10601
10602 2018-04-30  Tom Tromey  <tom@tromey.com>
10603
10604         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10605
10606 2018-04-30  Tom Tromey  <tom@tromey.com>
10607
10608         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10609         (info_spu_event_command): Remove some uses of is_mi_like_p.
10610
10611 2018-04-30  Tom Tromey  <tom@tromey.com>
10612
10613         * python/py-framefilter.c (py_print_single_arg)
10614         (enumerate_locals, py_print_args, py_print_frame): Remove some
10615         uses of is_mi_like_p.
10616
10617 2018-04-30  Tom Tromey  <tom@tromey.com>
10618
10619         * ui-out.c: Update.
10620         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10621         * ui-out.h (ui_out::is_mi_like_p): Now const.
10622         (ui_out::do_is_mi_like_p): Now const.
10623         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10624
10625 2018-04-30  Tom Tromey  <tom@tromey.com>
10626
10627         * varobj.c (varobj_set_visualizer): Use new_reference.
10628         * python/python.c (gdbpy_decode_line): Use new_reference.
10629         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10630         new_reference.
10631
10632 2018-04-30  Tom Tromey  <tom@tromey.com>
10633
10634         * varobj.c (install_new_value): Use new_reference.
10635         * value.h (value_incref): Return void.  Swap intro comment with
10636         value_decref.
10637         * value.c (set_value_parent): Use new_reference.
10638         (value_incref): Return void.  Update intro comment.
10639         (release_value): Use new_reference.
10640         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10641
10642 2018-04-30  Tom Tromey  <tom@tromey.com>
10643
10644         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10645         * gdb_bfd.h (new_bfd_ref): Remove.
10646         (gdb_bfd_open): Update comment.
10647         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10648         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10649         (gdb_bfd_fdopenr): Use new_reference.
10650         * exec.c (exec_file_attach): Use new_reference.
10651
10652 2018-04-30  Tom Tromey  <tom@tromey.com>
10653
10654         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10655         method.
10656
10657 2018-04-30  Tom Tromey  <tom@tromey.com>
10658
10659         * jit.c (jit_read_code_entry): Use type_align.
10660         * i386-tdep.c (i386_gdbarch_init): Don't call
10661         set_gdbarch_long_long_align_bit.
10662         * gdbarch.sh: Remove long_long_align_bit.
10663         * gdbarch.c, gdbarch.h: Rebuild.
10664         * arc-tdep.c (arc_type_align): New function.
10665         (arc_gdbarch_init): Use arc_type_align.  Don't call
10666         set_gdbarch_long_long_align_bit.
10667
10668 2018-04-30  Tom Tromey  <tom@tromey.com>
10669
10670         * rust-lang.c (rust_type_alignment): Remove.
10671         (rust_composite_type): Use type_align.
10672
10673 2018-04-30  Tom Tromey  <tom@tromey.com>
10674
10675         * NEWS: Mention Type.align.
10676         * python/py-type.c (typy_get_alignof): New function.
10677         (type_object_getset): Add "alignof".
10678
10679 2018-04-30  Tom Tromey  <tom@tromey.com>
10680
10681         PR exp/17095:
10682         * NEWS: Update.
10683         * std-operator.def (UNOP_ALIGNOF): New operator.
10684         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10685         New.
10686         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10687         * c-lang.c (c_op_print_tab): Add alignof.
10688         * c-exp.y (ALIGNOF): New token.
10689         (exp): Add "ALIGNOF" production.
10690         (ident_tokens): Add _Alignof and alignof.
10691
10692 2018-04-30  Tom Tromey  <tom@tromey.com>
10693
10694         * i386-tdep.c (i386_type_align): New function.
10695         (i386_gdbarch_init): Update.
10696         * gdbarch.sh (type_align): New method.
10697         * gdbarch.c, gdbarch.h: Rebuild.
10698         * arch-utils.h (default_type_align): Declare.
10699         * arch-utils.c (default_type_align): New function.
10700         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10701         (struct type) <align_log2>: New field.
10702         <instance_flags>: Now a bitfield.
10703         (TYPE_RAW_ALIGN): New macro.
10704         (type_align, type_raw_align, set_type_align): Declare.
10705         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10706         functions.
10707         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10708         (get_alignment, maybe_set_alignment): New functions.
10709         (read_structure_type, read_enumeration_type, read_array_type)
10710         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10711         (read_subrange_type, read_base_type): Set type alignment.
10712
10713 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10714
10715         * dwarf2read.c (read_index_from_section): Use bool.
10716
10717 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10718
10719         PR gdb/22950
10720         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10721         with #ifdef.
10722
10723 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10724
10725         PR build/22873
10726         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10727         last step, and do it atomically.
10728
10729 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10730
10731         * compile/compile-c-types.c (convert_int, convert_float):
10732         Update for C FE v1.
10733
10734 2018-04-27  Tom Tromey  <tom@tromey.com>
10735
10736         PR rust/22545:
10737         * rust-lang.c (rust_inclusive_range_type_p): New function.
10738         (rust_range): Handle inclusive ranges.
10739         (rust_compute_range): Likewise.
10740         * rust-exp.y (struct rust_op) <inclusive>: New field.
10741         (DOTDOTEQ): New constant.
10742         (range_expr): Add "..=" productions.
10743         (operator_tokens): Add "..=" token.
10744         (ast_range): Add "inclusive" parameter.
10745         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10746         ranges.
10747         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10748         bounds values.
10749         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10750         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10751         Update comments.
10752         * expprint.c (print_subexp_standard): Handle new bounds values.
10753         (dump_subexp_body_standard): Likewise.
10754
10755 2018-04-27  Tom Tromey  <tom@tromey.com>
10756
10757         * configure: Rebuild.
10758         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10759         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10760         "OVERRIDE".
10761         (class symbol_needs_eval_context): Likewise.
10762         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10763         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10764         "virtual".
10765         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10766         "override".
10767         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10768         * aarch64-tdep.c (instruction_reader::read): Use "override".
10769         (instruction_reader_test::read): Likewise.
10770         * arm-tdep.c (instruction_reader::read): Use "override".
10771         (instruction_reader_thumb::read): Likewise.
10772
10773 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10774
10775         PR remote/9665
10776         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10777         instead of remote_send.
10778         (remote_send): Remove.
10779
10780 2018-04-26  Pedro Alves  <palves@redhat.com>
10781
10782         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10783         find_function_start_sal instead of find_pc_line.
10784
10785 2018-04-26  Pedro Alves  <palves@redhat.com>
10786
10787         * breakpoint.c (set_breakpoint_location_function): Handle
10788         mst_data_gnu_ifunc.
10789         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10790         * elfread.c (elf_symtab_read): Give data symbols with
10791         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10792         (elf_rel_plt_read): Update comment.
10793         * linespec.c (convert_linespec_to_sals): Handle
10794         mst_data_gnu_ifunc.
10795         (minsym_found): Handle mst_data_gnu_ifunc.
10796         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10797         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10798         * parse.c (find_minsym_type_and_address): Handle
10799         mst_data_gnu_ifunc.
10800         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10801         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10802         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10803         comment.
10804         <mst_data_gnu_ifunc>: New enumerator.
10805
10806 2018-04-26  Pedro Alves  <palves@redhat.com>
10807
10808         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10809         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10810         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10811         Handle it.
10812         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10813         (lookup_minimal_symbol_by_pc): Adjust.
10814         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10815         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10816         * minsyms.h (lookup_msym_prefer): New enum.
10817         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10818         parameter by a lookup_msym_prefer parameter.
10819
10820 2018-04-26  Pedro Alves  <palves@redhat.com>
10821
10822         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10823         ends in "@plt" instead of looking at the symbol's section.
10824
10825 2018-04-26  Pedro Alves  <palves@redhat.com>
10826
10827         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10828         all references.
10829         (find_pc_partial_function_gnu_ifunc): Rename to ...
10830         (find_pc_partial_function): ... this, and remove references to
10831         'is_gnu_ifunc_p'.
10832         (find_pc_partial_function): Delete old implementation.
10833         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10834
10835 2018-04-26  Pedro Alves  <palves@redhat.com>
10836
10837         * linespec.c (struct bound_minimal_symbol_search_key): New.
10838         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10839         skip first line if we found a GNU ifunc minimal symbol by name.
10840         (compare_msymbols): Change parameters to work with a destructured
10841         lhs minsym.
10842         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10843         functions.
10844
10845 2018-04-26  Pedro Alves  <palves@redhat.com>
10846
10847         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10848         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10849         address/name.
10850         (add_location_to_breakpoint): Store the minsym and the objfile in
10851         the breakpoint location.
10852         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10853         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10854         Record the minsym in the sal.
10855         * symtab.h (symtab_and_line) <msymbol>: New field.
10856
10857 2018-04-26  Pedro Alves  <palves@redhat.com>
10858
10859         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10860         unless we actually resolved the ifunc.
10861
10862 2018-04-26  Pedro Alves  <palves@redhat.com>
10863
10864         * c-exp.y (variable production): Prefer ifunc minsyms over
10865         regular function symbols.
10866         * symtab.c (find_gnu_ifunc): New function.
10867         * minsyms.h (lookup_msym_prefer): New enum.
10868         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10869         parameter by a lookup_msym_prefer parameter.
10870         * symtab.h (find_gnu_ifunc): New declaration.
10871
10872 2018-04-26  Pedro Alves  <palves@redhat.com>
10873
10874         * blockframe.c (find_gnu_ifunc_target_type): New function.
10875         (find_function_type): New.
10876         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10877         return a value with a memory address.
10878         (eval_call): For calls to GNU ifunc functions, try to find the
10879         type of the target function from the type that the resolver
10880         returns.
10881         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10882         symbols.
10883         * infcall.c (find_function_return_type): Delete.
10884         (find_function_addr): Add 'function_type' parameter.  For calls to
10885         GNU ifunc functions, try to find the type of the target function
10886         from the type that the resolver returns, and return it via
10887         FUNCTION_TYPE.
10888         (call_function_by_hand_dummy): Adjust to use the function type
10889         returned by find_function_addr.
10890         (find_function_addr): Add 'function_type' parameter and move
10891         description here.
10892         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10893         declarations.
10894
10895 2018-04-26  Pedro Alves  <palves@redhat.com>
10896
10897         * c-exp.y (variable production): Skip finding an alias for ifunc
10898         symbols.
10899
10900 2018-04-26  Pedro Alves  <palves@redhat.com>
10901
10902         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10903
10904 2018-04-25  Pedro Alves  <palves@redhat.com>
10905
10906         * infcmd.c (kill_command): Print the pid as string, not the whole
10907         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10908         message.
10909         * remote.c (remote_detach_1): Print the pid as string, not the
10910         whole thread's ptid.
10911
10912 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10913             Sergio Durigan Junior  <sergiodj@redhat.com>
10914             Pedro Alves  <palves@redhat.com>
10915
10916         * infcmd.c (kill_command): Print message when inferior has
10917         been killed.
10918         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10919         '1'.
10920         (add_inferior): Improve message printed when
10921         'print_inferior_events' is on.
10922         (exit_inferior): Remove message printed when
10923         'print_inferior_events' is on.
10924         (detach_inferior): Improve message printed when
10925         'print_inferior_events' is on.
10926         (initialize_inferiors): Use 'add_inferior_silent' to set
10927         'current_inferior_'.
10928         * inferior.h (print_inferior_events): Declare here as
10929         'extern'.
10930         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10931         '[Detaching...]' messages when 'print_inferior_events' is on.
10932         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10933         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10934         'Detaching after fork from child...', replace it by '... from
10935         parent...'.
10936         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10937         prefix/suffix when printing 'Detaching...' messages.  Print
10938         them when 'print_inferior_events' is on.
10939         * remote.c (remote_detach_1): Print message when detaching
10940         from inferior and '!is_fork_parent'.
10941
10942 2018-04-24  Tom Tromey  <tom@tromey.com>
10943
10944         * cli-out.h: Reindent.
10945
10946 2018-04-24  Tom Tromey  <tom@tromey.com>
10947
10948         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10949         (cli_ui_out::do_field_string): Use fputs_filtered.
10950         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10951
10952 2018-04-23  Tom Tromey  <tom@tromey.com>
10953
10954         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10955         gdb::unique_xmalloc_ptr.
10956
10957 2018-04-23  Tom Tromey  <tom@tromey.com>
10958
10959         * configure: Rebuild.
10960
10961 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10962
10963         PR gdb/23095
10964         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10965         prepare_for_testing.  Set normal_bp to r_debug_state if target
10966         is bsd.
10967
10968 2018-04-21  Pedro Alves  <palves@redhat.com>
10969             Rajendra SY  <rajendra.sy@gmail.com>
10970
10971         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10972         * remote.c (extended_remote_attach): In all-stop mode, mark the
10973         thread as executing.
10974
10975 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10976
10977         * thread.c (thread_apply_all_command): Fix comment.
10978         (thread_command): Fix comment.
10979
10980 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10981
10982         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10983         parameter.
10984         * features/aarch64-core.c (create_feature_aarch64_core):
10985         Regenerate.
10986         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10987         Likewise.
10988         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10989         Likewise.
10990         * features/i386/32bit-avx512.c
10991         (create_feature_i386_32bit_avx512): Likewise.
10992         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10993         Likewise.
10994         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10995         Likewise.
10996         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10997         Likewise.
10998         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10999         Likewise.
11000         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11001         Likewise.
11002         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11003         Likewise.
11004         * features/i386/64bit-avx512.c
11005         (create_feature_i386_64bit_avx512): Likewise.
11006         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11007         Likewise.
11008         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11009         Likewise.
11010         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11011         Likewise.
11012         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11013         Likewise.
11014         * features/i386/64bit-segments.c
11015         (create_feature_i386_64bit_segments): Likewise.
11016         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11017         Likewise.
11018         * features/i386/x32-core.c
11019         (create_feature_i386_x32_core): Likewise.
11020         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11021         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11022         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11023         * target-descriptions.c: In generated code, don't pass xml
11024         filename.
11025
11026 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11027
11028         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11029         (print_xml_feature::visit_post): Likewise.
11030         (print_xml_feature::visit): Likewise.
11031         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11032         (print_xml_feature): Add new class.
11033         * regformats/regdat.sh: Null xmltarget on feature targets.
11034         * target-descriptions.c (struct target_desc): Add xmltarget.
11035         (maintenance_check_tdesc_xml_convert): Add unittest function.
11036         (tdesc_get_features_xml): Add function to get xml.
11037         (maintenance_check_xml_descriptions): Test xml generation.
11038         * xml-tdesc.c (string_read_description_xml): Add function.
11039         * xml-tdesc.h (string_read_description_xml): Add declaration.
11040
11041 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11042
11043         * features/Makefile: Add feature marker to targets with new style
11044         target descriptions.
11045         * regformats/aarch64.dat: Regenerate.
11046         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11047         * regformats/i386/amd64-avx-linux.dat: Likewise.
11048         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11049         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11050         * regformats/i386/amd64-linux.dat: Likewise.
11051         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11052         * regformats/i386/amd64.dat: Likewise.
11053         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11054         * regformats/i386/i386-avx-linux.dat: Likewise.
11055         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11056         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11057         * regformats/i386/i386-linux.dat: Likewise.
11058         * regformats/i386/i386-mmx-linux.dat: Likewise.
11059         * regformats/i386/i386-mpx-linux.dat: Likewise.
11060         * regformats/i386/i386.dat: Likewise.
11061         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11062         * regformats/i386/x32-avx-linux.dat: Likewise.
11063         * regformats/i386/x32-linux.dat: Likewise.
11064         * regformats/tic6x-c62x-linux.dat: Likewise.
11065         * regformats/tic6x-c64x-linux.dat: Likewise.
11066         * regformats/tic6x-c64xp-linux.dat: Likewise.
11067         * regformats/regdat.sh: Parse feature marker.
11068
11069 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11070
11071         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11072         (tdesc_osabi_name): Likewise.
11073         * target-descriptions.c (tdesc_architecture_name): Add new
11074         function.
11075         (tdesc_osabi_name): Likewise.
11076
11077 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11078
11079         * common/tdesc.c (tdesc_predefined_type): Move to here.
11080         (tdesc_named_type): Likewise.
11081         (tdesc_create_vector): Likewise.
11082         (tdesc_create_struct): Likewise.
11083         (tdesc_set_struct_size): Likewise.
11084         (tdesc_create_union): Likewise.
11085         (tdesc_create_flags): Likewise.
11086         (tdesc_create_enum): Likewise.
11087         (tdesc_add_field): Likewise.
11088         (tdesc_add_typed_bitfield): Likewise.
11089         (tdesc_add_bitfield): Likewise.
11090         (tdesc_add_flag): Likewise.
11091         (tdesc_add_enum_value): Likewise.
11092         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11093         (struct tdesc_type_vector): Likewise.
11094         (struct tdesc_type_field): Likewise.
11095         (struct tdesc_type_with_fields): Likewise.
11096         (tdesc_create_enum): Add declaration.
11097         (tdesc_add_typed_bitfield): Likewise.
11098         (tdesc_add_enum_value): Likewise.
11099         * target-descriptions.c (tdesc_type_field): Move from here.
11100         (tdesc_type_builtin): Likewise.
11101         (tdesc_type_vector): Likewise.
11102         (tdesc_type_with_fields): Likewise.
11103         (tdesc_predefined_types): Likewise.
11104         (tdesc_named_type): Likewise.
11105         (tdesc_create_vector): Likewise.
11106         (tdesc_create_struct): Likewise.
11107         (tdesc_set_struct_size): Likewise.
11108         (tdesc_create_union): Likewise.
11109         (tdesc_create_flags): Likewise.
11110         (tdesc_create_enum): Likewise.
11111         (tdesc_add_field): Likewise.
11112         (tdesc_add_typed_bitfield): Likewise.
11113         (tdesc_add_bitfield): Likewise.
11114         (tdesc_add_flag): Likewise.
11115         (tdesc_add_enum_value): Likewise.
11116         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11117         (tdesc_add_typed_bitfield): Likewise.
11118         (tdesc_add_enum_value): Likewise.
11119
11120 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11121
11122         * common/tdesc.c (tdesc_feature::accept): Move to here.
11123         (tdesc_feature::operator==): Likewise.
11124         (tdesc_create_reg): Likewise.
11125         * common/tdesc.h (tdesc_type_kind): Likewise.
11126         (struct tdesc_type): Likewise.
11127         (struct tdesc_feature): Likewise.
11128         * regformats/regdat.sh: Create a feature.
11129         * target-descriptions.c (tdesc_type_kind): Move from here.
11130         (tdesc_type): Likewise.
11131         (tdesc_type_up): Likewise.
11132         (tdesc_feature): Likewise.
11133         (tdesc_create_reg): Likewise.
11134
11135 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11136
11137         * Makefile.in: Add arch/tdesc.c
11138         * common/tdesc.c: New file.
11139         * common/tdesc.h (tdesc_element_visitor): Move to here.
11140         (tdesc_element): Likewise.
11141         (tdesc_reg): Likewise.
11142         (tdesc_reg_up): Likewise.
11143         * regformats/regdef.h (reg): Add offset to constructors.
11144         * target-descriptions.c (tdesc_element_visitor): Move from here.
11145         (tdesc_element): Likewise.
11146         (tdesc_reg): Likewise.
11147         (tdesc_reg_up): Likewise.
11148
11149 2018-04-17  Tom Tromey  <tom@tromey.com>
11150
11151         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11152         discriminant field.
11153
11154 2018-04-17  Tom Tromey  <tom@tromey.com>
11155
11156         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11157
11158 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11159
11160         * symtab.c (print_symbol_info): Skip printing filename and line
11161         number when `last' is NULL.
11162         (symtab_symbol_info): Use empty string instead of NULL for first
11163         invocation of print_symbol_info.
11164         (rbreak_command): Pass NULL to `last' parameter of
11165         print_symbol_info.
11166
11167 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11168
11169         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11170         instead of nullptr.
11171
11172 2018-04-16  Pedro Alves  <palves@redhat.com>
11173
11174         * MAINTAINERS (sh): Remove.
11175         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11176         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11177         (ALLDEPFILES): Remove sh64-tdep.c.
11178         * NEWS: Mentions that support for SH-5/SH64 is removed.
11179         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11180         (sh*-*-openbsd*): Ditto.
11181         (sh64-*-elf*): Remove.
11182         (sh*): Remove.
11183         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11184         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11185         * sh-tdep.c: No longer include "sh64-tdep.h".
11186         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11187         * sh64-tdep.c, sh64-tdep.h: Remove files.
11188
11189 2018-04-16  Pedro Alves  <palves@redhat.com>
11190
11191         * MAINTAINERS: Remove m88k.
11192         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11193         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11194         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11195         * NEWS: Mention that support for m88k was removed.
11196         * configure.host (m88*-*-*): Remove support.
11197         * configure.nat (m88k-*-*): Remove support.
11198         * configure.tgt (m88*-*-openbsd*): Remove.
11199         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11200
11201 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11202
11203         * configure.tgt (x86_tobjs): New variable.
11204         (amd64_tobjs, i386_tobjs): Use it.
11205
11206 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11207
11208         * symtab.c (print_symbol_info): Precede the symbol definition by
11209         the line number when available.
11210         * NEWS: Advertise this enhancement.
11211
11212 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11213
11214         * NEWS (New options): announce set/show record btrace cpu.
11215         * btrace.c: Include record-btrace.h.
11216         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11217         the vendor is unknown.
11218         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11219         Maybe overwrite the btrace configuration's cpu.
11220         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11221         (btrace_fetch): Add cpu parameter.  Update callers.
11222         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11223         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11224         errata workarounds if the vendor is unknown.
11225         * python/py-record-btrace.c: Include record-btrace.h.
11226         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11227         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11228         * record-btrace.c (record_btrace_cpu_state_kind): New.
11229         (record_btrace_cpu): New.
11230         (set_record_btrace_cpu_cmdlist): New.
11231         (record_btrace_get_cpu): New.
11232         (require_btrace_thread, record_btrace_info)
11233         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11234         (cmd_set_record_btrace_cpu_none): New.
11235         (cmd_set_record_btrace_cpu_auto): New.
11236         (cmd_set_record_btrace_cpu): New.
11237         (cmd_show_record_btrace_cpu): New.
11238         (_initialize_record_btrace): Initialize set/show record btrace cpu
11239         commands.
11240         * record-btrace.h (record_btrace_get_cpu): New.
11241
11242 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11243
11244         * record.c (set_record_command): Fix typo in message.
11245
11246 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11247
11248         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11249
11250 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11251
11252         * infrun.c (process_event_stop_test): Call
11253         gdbarch_in_indirect_branch_thunk.
11254         * gdbarch.sh (in_indirect_branch_thunk): New.
11255         * gdbarch.c: Regenerated.
11256         * gdbarch.h: Regenerated.
11257         * x86-tdep.h: New.
11258         * x86-tdep.c: New.
11259         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11260         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11261         (ALLDEPFILES): Add x86-tdep.c.
11262         * arch-utils.h (default_in_indirect_branch_thunk): New.
11263         * arch-utils.c (default_in_indirect_branch_thunk): New.
11264         * i386-tdep: Include x86-tdep.h.
11265         (i386_in_indirect_branch_thunk): New.
11266         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11267         function.
11268         * amd64-tdep: Include x86-tdep.h.
11269         (amd64_in_indirect_branch_thunk): New.
11270         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11271
11272 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11273
11274         PR gdb/23053
11275         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11276         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11277         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11278         regression.
11279
11280 2018-04-12  Tom Tromey  <tom@tromey.com>
11281
11282         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11283         (rust_evaluate_subexp): Likewise.
11284
11285 2018-04-12  Pedro Alves  <palves@redhat.com>
11286
11287         * procfs.c (procfs_detach): Make forward declaration's prototype
11288         match definition's protototype.
11289         (proc_get_LDT_entry): Remove stale do_cleanups call.
11290
11291 2018-04-12  Pedro Alves  <palves@redhat.com>
11292
11293         * target.h (target_ops::to_has_exited): Delete.
11294         (target_has_exited): Delete.
11295         * target-delegates.c: Regenerate.
11296
11297 2018-04-11  Pedro Alves  <palves@redhat.com>
11298
11299         * target.c (fileio_fh_t::t): Add comment.
11300         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11301         (target_fileio_close): Handle a NULL target.
11302         (invalidate_fileio_fh): New.
11303         (target_close): Call it.
11304         * remote.c (remote_hostio_send_command): No longer check whether
11305         remote_desc is open.
11306
11307 2018-04-11  Pedro Alves  <palves@redhat.com>
11308
11309         * target.c (fileio_fh_t): Make it a named struct instead of a
11310         typedef.
11311         (fileio_fh_t::is_closed): New method.
11312         (DEF_VEC_O (fileio_fh_t)): Remove.
11313         (fileio_fhandles): Now a std::vector.
11314         (is_closed_fileio_fh): Delete.
11315         (acquire_fileio_fd): Adjust.  Rename parameters.
11316         (release_fileio_fd): Adjust.
11317         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11318         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11319         (target_fileio_close): Adjust.
11320
11321 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11322
11323         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11324         index.
11325
11326 2018-04-10  Pedro Alves  <palves@redhat.com>
11327
11328         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11329         (scoped_finish_thread_state): New class.
11330         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11331         cleanup.
11332         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11333         (fetch_inferior_event, normal_stop): Likewise.
11334         * thread.c (finish_thread_state_cleanup): Delete.
11335
11336 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11337             Pedro Alves  <palves@redhat.com>
11338
11339         * value.c: Include "selftest.h" and "common/array-view.h".
11340         (struct range) <operator ==>: New.
11341         (test_ranges_contain): New.
11342         (check_ranges_vector): New.
11343         (test_insert_into_bit_range_vector): New.
11344         (_initialize_values): Register selftests.
11345         * common/array-view.h (operator==, operator!=): New.
11346
11347 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11348
11349         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11350         an iterator.
11351         * inline-frame.c: Include <algorithm>.
11352         (struct inline_state): Add constructor.
11353         (inline_state_s): Remove.
11354         (DEF_VEC_O(inline_state_s)): Remove.
11355         (inline_states): Change type to std::vector.
11356         (find_inline_frame_state): Adjust to std::vector.
11357         (allocate_inline_frame_state): Remove.
11358         (clear_inline_frame_state): Adjust to std::vector.
11359         (skip_inline_frames): Adjust to std::vector.
11360
11361 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11362
11363         * tracepoint.h (struct trace_state_variable): Add constructor.
11364         <name>: Change type to std::string.
11365         * tracepoint.c (tsv_s): Remove.
11366         (DEF_VEC_O(tsv_s)): Remove.
11367         (tvariables): Change to std::vector.
11368         (create_trace_state_variable): Adjust to std::vector.
11369         (find_trace_state_variable): Likewise.
11370         (find_trace_state_variable_by_number): Likewise.
11371         (delete_trace_state_variable): Likewise.
11372         (trace_variable_command): Adjust to std::string.
11373         (delete_trace_variable_command): Likewise.
11374         (tvariables_info_1): Adjust to std::vector.
11375         (save_trace_state_variables): Likewise.
11376         (start_tracing): Likewise.
11377         (merge_uploaded_trace_state_variables): Adjust to std::vector
11378         and std::string.
11379         * target.h (struct target_ops)
11380         <to_download_trace_state_variable>: Pass reference to
11381         trace_state_variable.
11382         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11383         * target-delegates.c: Re-generate.
11384         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11385         (mi_tsv_deleted): Likewise.
11386         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11387         * remote.c (remote_download_trace_state_variable): Change
11388         pointer to reference and adjust.
11389         * make-target-delegates (parse_argtypes): Handle references.
11390         (write_function_header): Likewise.
11391         (munge_type): Likewise.
11392
11393 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11394
11395         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11396         string_view-selftests.c.
11397         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11398         testsuite.
11399         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11400         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11401         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11402         * unittests/basic_string_view/element_access/char/1.cc:
11403         Likewise.
11404         * unittests/basic_string_view/element_access/char/empty.cc:
11405         Likewise.
11406         * unittests/basic_string_view/element_access/char/front_back.cc:
11407         Likewise.
11408         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11409         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11410         Likewise.
11411         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11412         Likewise.
11413         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11414         Likewise.
11415         * unittests/basic_string_view/operations/compare/char/1.cc:
11416         Likewise.
11417         * unittests/basic_string_view/operations/compare/char/13650.cc:
11418         Likewise.
11419         * unittests/basic_string_view/operations/copy/char/1.cc:
11420         Likewise.
11421         * unittests/basic_string_view/operations/data/char/1.cc:
11422         Likewise.
11423         * unittests/basic_string_view/operations/find/char/1.cc:
11424         Likewise.
11425         * unittests/basic_string_view/operations/find/char/2.cc:
11426         Likewise.
11427         * unittests/basic_string_view/operations/find/char/3.cc:
11428         Likewise.
11429         * unittests/basic_string_view/operations/find/char/4.cc:
11430         Likewise.
11431         * unittests/basic_string_view/operations/rfind/char/1.cc:
11432         Likewise.
11433         * unittests/basic_string_view/operations/rfind/char/2.cc:
11434         Likewise.
11435         * unittests/basic_string_view/operations/rfind/char/3.cc:
11436         Likewise.
11437         * unittests/basic_string_view/operations/substr/char/1.cc:
11438         Likewise.
11439         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11440         * unittests/string_view-selftests.c: New file.
11441
11442 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11443
11444         * unittests/basic_string_view/capacity/1.cc: New file.
11445         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11446         * unittests/basic_string_view/cons/char/1.cc: New file.
11447         * unittests/basic_string_view/cons/char/2.cc: New file.
11448         * unittests/basic_string_view/cons/char/3.cc: New file.
11449         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11450         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11451         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11452         * unittests/basic_string_view/element_access/char/1.cc: New file.
11453         * unittests/basic_string_view/element_access/char/2.cc: New file.
11454         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11455         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11456         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11457         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11458         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11459         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11460         * unittests/basic_string_view/include.cc: New file.
11461         * unittests/basic_string_view/inserters/char/1.cc: New file.
11462         * unittests/basic_string_view/inserters/char/2.cc: New file.
11463         * unittests/basic_string_view/inserters/char/3.cc: New file.
11464         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11465         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11466         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11467         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11468         * unittests/basic_string_view/literals/types.cc: New file.
11469         * unittests/basic_string_view/literals/values.cc: New file.
11470         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11471         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11472         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11473         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11474         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11475         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11476         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11477         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11478         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11479         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11480         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11481         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11482         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11483         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11484         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11485         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11486         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11487         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11488         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11489         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11490         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11491         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11492         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11493         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11494         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11495         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11496         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11497         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11498         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11499         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11500         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11501         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11502         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11503         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11504         * unittests/basic_string_view/operators/char/2.cc: New file.
11505         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11506         * unittests/basic_string_view/range_access/char/1.cc: New file.
11507         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11508         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11509         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11510         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11511         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11512         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11513         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11514         * unittests/basic_string_view/typedefs.cc: New file.
11515         * unittests/basic_string_view/types/1.cc: New file.
11516
11517 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11518
11519         * common/gdb_string_view.h: Remove libstdc++ implementation
11520         details, adjust to gdb reality.
11521         * common/gdb_string_view.tcc: Likewise.
11522         * cli/cli-script.c (struct string_view): Remove.
11523         (user_args) <m_args>: Change element type to gdb::string_view.
11524         (user_args::insert_args): Adjust.
11525
11526 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11527
11528         * common/gdb_string_view.h: New file.
11529         * common/gdb_string_view.tcc: New file.
11530
11531 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11532
11533         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11534         * configure: Re-generate.
11535
11536 2018-04-09  Pedro Alves  <palves@redhat.com>
11537
11538         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11539         (set_target_gdbarch): Call
11540         gdb::observers::architecture_changed.notify instead of
11541         observer_notify_architecture_changed.
11542
11543 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11544
11545         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11546         (do_restore_current_traceframe_cleanup): Remove.
11547         (restore_current_traceframe_cleanup_dtor): Remove.
11548         (make_cleanup_restore_current_traceframe): Remove.
11549         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11550         New.
11551         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11552         * infrun.c (fetch_inferior_event): Use
11553         scoped_restore_current_traceframe.
11554
11555 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11556
11557         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11558         Remove.
11559         <n_allocated_type_units>: Remove.
11560         <all_type_units>: Change to std::vector.
11561         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11562         to std::vector change.
11563         (dwarf2_per_objfile::get_cutu): Likewise.
11564         (dwarf2_per_objfile::get_tu): Likewise.
11565         (create_signatured_type_table_from_index): Likewise.
11566         (create_signatured_type_table_from_debug_names): Likewise.
11567         (dw2_symtab_iter_next): Likewise.
11568         (dw2_print_stats): Likewise.
11569         (dw2_expand_all_symtabs): Likewise.
11570         (dw2_expand_marked_cus): Likewise.
11571         (dw2_debug_names_iterator::next): Likewise.
11572         (dwarf2_initialize_objfile): Likewise.
11573         (add_signatured_type_cu_to_table): Likewise.
11574         (create_all_type_units): Likewise.
11575         (add_type_unit): Likewise.
11576         (struct tu_abbrev_offset): Add constructor.
11577         (build_type_psymtabs_1): Adjust to std::vector change.
11578         (print_tu_stats): Likewise.
11579         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11580         (write_debug_names): Likewise.
11581
11582 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11583
11584         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11585         Make an std::vector.
11586         <n_comp_units>: Remove.
11587         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11588         to std::vector change.
11589         (dwarf2_per_objfile::get_cutu): Likewise.
11590         (dwarf2_per_objfile::get_cu): Likewise.
11591         (create_cus_from_index): Likewise.
11592         (create_addrmap_from_index): Likewise.
11593         (create_addrmap_from_aranges): Likewise.
11594         (dwarf2_read_index): Likewise.
11595         (dw2_find_last_source_symtab): Likewise.
11596         (dw2_map_symtabs_matching_filename): Likewise.
11597         (dw2_symtab_iter_next): Likewise.
11598         (dw2_print_stats): Likewise.
11599         (dw2_expand_all_symtabs): Likewise.
11600         (dw2_expand_symtabs_with_fullname): Likewise.
11601         (dw2_expand_marked_cus): Likewise.
11602         (dw2_map_symbol_filenames): Likewise.
11603         (create_cus_from_debug_names): Likewise.
11604         (dwarf2_read_debug_names): Likewise.
11605         (dw2_debug_names_iterator::next): Likewise.
11606         (dwarf2_initialize_objfile): Likewise.
11607         (set_partial_user): Likewise.
11608         (dwarf2_build_psymtabs_hard): Likewise.
11609         (read_comp_units_from_section): Remove arguments, adjust to
11610         std::vector change.
11611         (create_all_comp_units): Adjust to std::vector and
11612         read_comp_units_from_section changes.
11613         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11614         change.
11615         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11616         (psyms_seen_size): Likewise.
11617         (write_gdbindex): Likewise.
11618         (write_debug_names): Likewise.
11619
11620 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11621
11622         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11623         with dwarf2_per_objfile.
11624         (create_cus_from_index): Likewise.
11625         (create_signatured_type_table_from_index): Likewise.
11626         (dwarf2_read_index): Likewise.
11627         (dwarf2_initialize_objfile): Likewise.
11628         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11629         per_cu rather than get_dwarf2_per_objfile.
11630
11631 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11632
11633         * dwarf2read.h (struct signatured_type): Forward declare.
11634         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11635         New methods.
11636         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11637         (dw2_get_cutu): ...this.
11638         (dwarf2_per_objfile::get_cu): Rename from...
11639         (dw2_get_cu): ...this.
11640         (dwarf2_per_objfile::get_tu): New.
11641         (create_addrmap_from_index): Adjust.
11642         (create_addrmap_from_aranges): Adjust.
11643         (dw2_find_last_source_symtab): Adjust.
11644         (dw2_map_symtabs_matching_filename): Adjust.
11645         (dw2_symtab_iter_next): Adjust.
11646         (dw2_print_stats): Adjust.
11647         (dw2_expand_all_symtabs): Adjust.
11648         (dw2_expand_symtabs_with_fullname): Adjust.
11649         (dw2_expand_marked_cus): Adjust.
11650         (dw_expand_symtabs_matching_file_matcher): Adjust.
11651         (dw2_map_symbol_filenames): Adjust.
11652         (dw2_debug_names_iterator::next): Adjust.
11653         (dwarf2_initialize_objfile): Adjust.
11654         (set_partial_user): Adjust.
11655         (dwarf2_build_psymtabs_hard): Adjust.
11656
11657 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11658
11659         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11660         Remove unused variables.
11661         (dw2_map_symtabs_matching_filename): Likewise.
11662         (dwarf2_record_block_ranges): Likewise.
11663         (dwarf2_read_addr_index): Likewise.
11664         (follow_die_offset): Likewise.
11665
11666 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11667
11668         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11669         to symbol_file_add_main.
11670
11671 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11672
11673         PR mi/22299
11674         * mi/mi-console.c (do_fputc_async_safe): New.
11675         (mi_console_file::write_async_safe): New.
11676         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11677         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11678         New.
11679         * ui-file.c (ui_file::putstrn): Adjust call to
11680         fputstrn_unfiltered.
11681         * utils.c (printchar): Replace do_fputs and do_fprintf
11682         parameters by do_fputc.
11683         (fputstr_filtered): Adjust call to printchar.
11684         (fputstr_unfiltered): Likewise.
11685         (fputstrn_filtered): Likewise.
11686         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11687         printchar.
11688         * utils.h (do_fputc_ftype): New typedef.
11689         (fputstrn_unfiltered): Add do_fputc parameter.
11690
11691 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11692
11693         * regformats/i386/i386-avx.dat: Remove.
11694
11695 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11696
11697         PR gdb/22979
11698         * amd64-tdep.c (amd64_none_init_abi): New function.
11699         (amd64_x32_none_init_abi): New function.
11700         (_initialize_amd64_tdep): Register handlers for x86-64 and
11701         x64_32 with GDB_OSABI_NONE.
11702         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11703         GDB_OSABI_NONE osabi.
11704
11705 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11706
11707         PR gdb/22980
11708         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11709         GDB_OSABI_NONE.
11710         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11711         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11712
11713 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11714
11715         * common/byte-vector.h (char_vector): New type.
11716         * target.h (target_read_alloc): Return
11717         gdb::optional<byte_vector>.
11718         (target_read_stralloc): Return gdb::optional<char_vector>.
11719         (target_get_osdata): Return gdb::optional<char_vector>.
11720         * target.c (target_read_alloc_1): Templatize.  Replacement
11721         manual memory management with vector.
11722         (target_read_alloc): Change return type, adjust.
11723         (target_read_stralloc): Change return type, adjust.
11724         (target_get_osdata): Change return type, adjust.
11725         * auxv.c (struct auxv_info) <length>: Remove.
11726         <data>: Change type to gdb::optional<byte_vector>.
11727         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11728         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11729         (target_auxv_search): Adjust.
11730         (fprint_target_auxv): Adjust.
11731         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11732         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11733         (linux_make_corefile_notes): Adjust.
11734         * osdata.c (get_osdata): Adjust.
11735         * remote.c (remote_get_threads_with_qxfer): Adjust.
11736         (remote_memory_map): Adjust.
11737         (remote_traceframe_info): Adjust.
11738         (btrace_read_config): Adjust.
11739         (remote_read_btrace): Adjust.
11740         (remote_pid_to_exec_file): Adjust.
11741         * solib-aix.c (solib_aix_get_library_list): Adjust.
11742         * solib-dsbt.c (decode_loadmap): Don't free buf.
11743         (dsbt_get_initial_loadmaps): Adjust.
11744         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11745         * solib-target.c (solib_target_current_sos): Adjust.
11746         * tracepoint.c (sdata_make_value): Adjust.
11747         * xml-support.c (xinclude_start_include): Adjust.
11748         (xml_fetch_content_from_file): Adjust.
11749         * xml-support.h (xml_fetch_another): Change return type.
11750         (xml_fetch_content_from_file): Change return type.
11751         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11752         * xml-tdesc.c (file_read_description_xml): Adjust.
11753         (fetch_available_features_from_target): Change return type.
11754         (target_fetch_description_xml): Adjust.
11755         (target_read_description_xml): Adjust.
11756
11757 2018-04-06  Tom Tromey  <tom@tromey.com>
11758
11759         * value.c (~value): Update.
11760         (struct value) <contents>: Now unique_xmalloc_ptr.
11761         (value_contents_bits_eq, allocate_value_contents)
11762         (value_contents_raw, value_contents_all_raw)
11763         (value_contents_for_printing, value_contents_for_printing_const)
11764         (set_value_enclosing_type): Update.
11765
11766 2018-04-06  Tom Tromey  <tom@tromey.com>
11767
11768         * value.c (range_s): Remove typedef, VEC.
11769         (struct range): Add operator<.
11770         (range_lessthan): Remove.
11771         (ranges_contain): Change type.
11772         (~value): Update.
11773         (struct value) <unavailable, optimized_out>: Now std::vector.
11774         (value_entirely_available)
11775         (value_entirely_covered_by_range_vector)
11776         (value_entirely_unavailable, value_entirely_optimized_out):
11777         Update.
11778         (insert_into_bit_range_vector): Change argument type.
11779         (find_first_range_overlap): Likewise.
11780         (struct ranges_and_idx, value_contents_bits_eq)
11781         (require_not_optimized_out, require_available): Update.
11782         (ranges_copy_adjusted): Change argument types.
11783         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11784
11785 2018-04-06  Tom Tromey  <tom@tromey.com>
11786
11787         * value.c (~value): Update.
11788         (struct value) <parent>: Now a value_ref_ptr.
11789         (value_parent, set_value_parent, value_address, value_copy):
11790         Update.
11791
11792 2018-04-06  Tom Tromey  <tom@tromey.com>
11793
11794         * value.c (struct value): Add constructor, destructor, and member
11795         initializers.
11796         (allocate_value_lazy, value_decref): Update.
11797
11798 2018-04-06  Tom Tromey  <tom@tromey.com>
11799
11800         * value.c (struct value) <released, next>: Remove.
11801         (all_values): Now a std::vector.
11802         (allocate_value_lazy): Update.
11803         (value_next): Remove.
11804         (value_mark, value_free_to_mark, release_value)
11805         (value_release_to_mark): Update.
11806
11807 2018-04-06  Tom Tromey  <tom@tromey.com>
11808
11809         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11810         (free_value_chain): Remove.
11811         * value.c (free_value_chain): Remove.
11812         (value_release_to_mark): Return a std::vector.
11813         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11814         std::vector.
11815         (check_condition): Update.
11816         * eval.c (fetch_subexp_value): Change "val_chain" to a
11817         std::vector.
11818         * breakpoint.c (update_watchpoint): Update.
11819         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11820
11821 2018-04-06  Tom Tromey  <tom@tromey.com>
11822
11823         * value.h (free_all_values): Remove.
11824         * value.c (free_all_values): Remove.
11825
11826 2018-04-06  Tom Tromey  <tom@tromey.com>
11827
11828         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11829         (value_history_chain, value_history_count): Remove.
11830         (value_history): New global.
11831         (record_latest_value, access_value_history, show_values)
11832         (preserve_values): Update.
11833
11834 2018-04-06  Tom Tromey  <tom@tromey.com>
11835
11836         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11837         * varobj.c (varobj_set_display_format, varobj_set_value)
11838         (install_default_visualizer, construct_visualizer)
11839         (install_new_value, ~varobj, varobj_get_value_type)
11840         (my_value_of_variable, varobj_editable_p): Update.
11841         * c-varobj.c (c_describe_child, c_value_of_variable)
11842         (cplus_number_of_children, cplus_describe_child): Update.
11843         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11844         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11845         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11846
11847 2018-04-06  Tom Tromey  <tom@tromey.com>
11848
11849         * printcmd.c (last_examine_address): Change type to
11850         value_ref_ptr.
11851         (do_examine, x_command): Update.
11852
11853 2018-04-06  Tom Tromey  <tom@tromey.com>
11854
11855         * value.c (release_value): Update.
11856         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11857         (struct bpstats) <val>: Now a value_ref_ptr.
11858         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11859         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11860         (~watchpoint, print_it_watchpoint, watch_command_1)
11861         (invalidate_bp_value_on_memory_change): Update.
11862
11863 2018-04-06  Tom Tromey  <tom@tromey.com>
11864
11865         * varobj.c (varobj_clear_saved_item)
11866         (update_dynamic_varobj_children, install_new_value, ~varobj):
11867         Update.
11868         * value.h (value_incref): Move declaration earlier.
11869         (value_decref): Rename from value_free.
11870         (struct value_ref_policy): New.
11871         (value_ref_ptr): New typedef.
11872         (struct value_deleter): Remove.
11873         (gdb_value_up): Remove typedef.
11874         (release_value): Change return type.
11875         (release_value_or_incref): Remove.
11876         * value.c (set_value_parent): Update.
11877         (value_incref): Change return type.
11878         (value_decref): Rename from value_free.
11879         (value_free_to_mark, free_all_values, free_value_chain): Update.
11880         (release_value): Return value_ref_ptr.
11881         (release_value_or_incref): Remove.
11882         (record_latest_value, set_internalvar, clear_internalvar):
11883         Update.
11884         * stack.c (info_frame_command): Don't call value_free.
11885         * python/py-value.c (valpy_dealloc, valpy_new)
11886         (value_to_value_object): Update.
11887         * printcmd.c (do_examine): Update.
11888         * opencl-lang.c (lval_func_free_closure): Update.
11889         * mi/mi-main.c (register_changed_p): Don't call value_free.
11890         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11891         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11892         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11893         value_free.
11894         * guile/scm-value.c (vlscm_free_value_smob)
11895         (vlscm_scm_from_value): Update.
11896         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11897         (frame_unwind_register_unsigned, get_frame_register_bytes)
11898         (put_frame_register_bytes): Don't call value_free.
11899         * findvar.c (address_from_register): Don't call value_free.
11900         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11901         * dwarf2loc.c (entry_data_value_free_closure)
11902         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11903         (dwarf2_evaluate_loc_desc_full): Update.
11904         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11905         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11906         (~watchpoint, watch_command_1)
11907         (invalidate_bp_value_on_memory_change): Update.
11908         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11909
11910 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11911
11912         PR gdb/23022
11913         * warning.m4: Add -Wno-error=deprecated-register.
11914         * configure: Re-generate.
11915
11916 2018-04-05  Tom Tromey  <tom@tromey.com>
11917
11918         * linespec.h: Remove include of "vec.h".
11919
11920 2018-04-05  Tom Tromey  <tom@tromey.com>
11921
11922         * linespec.c (typep): Remove typedef.
11923         (find_methods, find_superclass_methods): Take a std::vector.
11924         (find_method): Use std::vector.
11925
11926 2018-04-05  Tom Tromey  <tom@tromey.com>
11927
11928         * utils.c (compare_strings): Remove.
11929         * utils.h (compare_strings): Remove.
11930         * objc-lang.h (find_imps): Update.
11931         * objc-lang.c (find_methods): Take a std::vector.
11932         (uniquify_strings, find_imps): Likewise.
11933         * linespec.c (find_methods): Take a std::vector.
11934         (decode_objc): Use std::vector.
11935         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11936         a std::vector.
11937         (find_method, find_function_symbols): Use std::vector.
11938
11939 2018-04-05  Tom Tromey  <tom@tromey.com>
11940
11941         * completer.c (completion_tracker::completion_tracker): Remove
11942         cast.
11943         (completion_tracker::discard_completions): Likewise.
11944         * breakpoint.c (ambiguous_names_p): Remove cast.
11945         * ada-lang.c (_initialize_ada_language): Remove cast.
11946         * utils.h (streq): Update.
11947         (streq_hash): Add new declaration.
11948         * utils.c (streq): Return bool.
11949         (streq_hash): New function.
11950
11951 2018-04-05  Tom Tromey  <tom@tromey.com>
11952
11953         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11954         Remove a string copy.
11955
11956 2018-04-05  Tom Tromey  <tom@tromey.com>
11957
11958         * linespec.c (filter_results): Use std::vector.
11959         (decode_line_2, decode_line_full): Update.
11960
11961 2018-04-05  Tom Tromey  <tom@tromey.com>
11962
11963         * linespec.c (canonical_to_fullform): Return std::string.
11964         (filter_results): Update.
11965         (struct decode_line_2_item): Add constructor.
11966         <fullform, displayform>: Now std::string.
11967         (decode_line_2_compare_items): Now a std::sort comparator.
11968         (decode_line_2): Update.
11969
11970 2018-04-05  Tom Tromey  <tom@tromey.com>
11971
11972         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11973         (unexpected_linespec_error): Update.
11974         (linespec_parse_basic, parse_linespec): Update.
11975
11976 2018-04-05  Tom Tromey  <tom@tromey.com>
11977
11978         * linespec.c (linespec_parse_basic): Reindent.
11979
11980 2018-04-05  Tom Tromey  <tom@tromey.com>
11981
11982         * minsyms.h (iterate_over_minimal_symbols): Update.
11983         * minsyms.c (iterate_over_minimal_symbols): Take a
11984         gdb::function_view.
11985         * linespec.c (struct collect_minsyms): Remove.
11986         (compare_msyms): Now a std::sort comparator.
11987         (add_minsym): Add parameters.
11988         (search_minsyms_for_name): Update.  Use std::vector.
11989
11990 2018-04-03  Tom Tromey  <tom@tromey.com>
11991
11992         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11993         gdb::byte_vector.
11994
11995 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11996
11997         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11998
11999 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12000
12001         PR gdb/16959
12002         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12003         printing static type.
12004
12005 2018-04-01  Tom Tromey  <tom@tromey.com>
12006
12007         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12008         (rs6000_xfer_shared_libraries): Update.
12009
12010 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12011
12012         * common/gdb_vecs.h (char_ptr): Remove.
12013         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12014
12015 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12016
12017         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12018         with std::vector.
12019         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12020
12021 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12022
12023         * tracepoint.h (struct uploaded_tp): Initialize fields.
12024         <actions, step_actions, cmd_strings>: Change type to
12025         std::vector<char *>.
12026         * tracepoint.c (get_uploaded_tp): Allocate with new.
12027         (free_uploaded_tps): Free with delete.
12028         (parse_tracepoint_definition): Adjust to std::vector change.
12029         * breakpoint.c (read_uploaded_action): Likewise.
12030         (create_tracepoint_from_upload): Likewise.
12031         * ctf.c (ctf_write_uploaded_tp): Likewise.
12032         (SET_ARRAY_FIELD): Likewise.
12033         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12034
12035 2018-03-30  Tom Tromey  <tom@tromey.com>
12036
12037         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12038         std::unique_ptr.
12039         (svr4_keep_data_in_core): Update.
12040         (svr4_read_so_list): Update.
12041
12042 2018-03-30  Tom Tromey  <tom@tromey.com>
12043
12044         * windows-nat.c (handle_output_debug_string, handle_exception):
12045         Update.
12046         * target.h (target_read_string): Update.
12047         * target.c (target_read_string): Change "string" to
12048         unique_xmalloc_ptr.
12049         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12050         Update.
12051         * solib-frv.c (frv_current_sos): Update.
12052         * solib-dsbt.c (dsbt_current_sos): Update.
12053         * solib-darwin.c (darwin_current_sos): Update.
12054         * linux-thread-db.c (inferior_has_bug): Update.
12055         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12056         Update.  Remove alloca.
12057         * ada-lang.c (ada_main_name): Update.
12058
12059 2018-03-30  Tom Tromey  <tom@tromey.com>
12060
12061         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12062         (struct dwo_file_deleter): New.
12063         (dwo_file_up): New typedef.
12064         (open_and_init_dwo_file): Use dwo_file_up.
12065         (free_dwo_file_cleanup): Remove.
12066
12067 2018-03-30  Tom Tromey  <tom@tromey.com>
12068
12069         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12070         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12071
12072 2018-03-30  Tom Tromey  <tom@tromey.com>
12073
12074         * dwarf2read.c (class free_cached_comp_units): New class.
12075         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12076         (free_cached_comp_units): Remove function.
12077
12078 2018-03-30  Tom Tromey  <tom@tromey.com>
12079
12080         * utils.h (make_cleanup_unpush_target): Remove.
12081         * inf-ptrace.c (struct target_unpusher): New.
12082         (target_unpush_up) New typedef.
12083         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12084         target_unpush_up.
12085         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12086
12087 2018-03-27  Tom Tromey  <tom@tromey.com>
12088
12089         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12090
12091 2018-03-27  Pedro Alves  <palves@redhat.com>
12092             Tom Tromey  <tom@tromey.com>
12093
12094         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12095         destructor.  Now a class.
12096         (gdb_readline_wrapper_cleanup): Remove function.
12097         (gdb_readline_wrapper): Remove cleanups.
12098
12099 2018-03-27  Tom Tromey  <tom@tromey.com>
12100
12101         * typeprint.h (struct type_print_options) <local_typedefs,
12102         global_typedefs>: Remove "struct" keyword.
12103         (class typedef_hash_table): New class.
12104         (recursively_update_typedef_hash, add_template_parameters)
12105         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12106         (find_typedef_in_hash): Don't declare.
12107         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12108         (typedef_hash_table::recursively_update): Rename from
12109         recursively_update_typedef_hash.  Now a member.
12110         (typedef_hash_table::add_template_parameters): Rename from
12111         add_template_parameters.  Now a member.
12112         (typedef_hash_table::typedef_hash_table): Now a constructor;
12113         rename from create_typedef_hash.
12114         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12115         rename from free_typedef_hash.
12116         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12117         (do_free_global_table): Remove.
12118         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12119         from copy_type_recursive.
12120         (create_global_typedef_table): Remove.
12121         (typedef_hash_table::find_global_typedef): Now a member of
12122         typedef_hash_table.
12123         (typedef_hash_table::find_typedef): Rename from
12124         find_typedef_in_hash; now a member.
12125         (whatis_exp): Update.
12126         * extension.h (struct ext_lang_type_printers): Add constructor and
12127         destructor.
12128         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12129         declare.
12130         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12131         Now a constructor; rename from start_ext_lang_type_printers.
12132         (ext_lang_type_printers): Now a destructor; rename from
12133         free_ext_lang_type_printers.
12134         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12135         Update.
12136         (c_type_print_base_struct_union): Update.  Remove cleanups.
12137
12138 2018-03-27  Tom Tromey  <tom@tromey.com>
12139
12140         * dwarf-index-write.c: Include <cmath>.
12141
12142 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12143
12144         * NEWS: Add entry describing new "set|show varsize-limit" command.
12145         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12146         command.
12147         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12148         "set variable".
12149
12150 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12151
12152         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12153         dwarf-index-write.c
12154         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12155         * dwarf-index-common.c: New file.
12156         * dwarf-index-common.h: New file.
12157         * dwarf-index-write.c: New file.
12158         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12159         (struct dwarf2_section_info): Move from here.
12160         (dwarf2_section_info_def): Likewise.
12161         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12162         (offset_type): Likewise.
12163         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12164         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12165         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12166         (byte_swap): Likewise.
12167         (MAYBE_SWAP): Likewise.
12168         (dwarf2_per_cu_ptr): Likewise.
12169         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12170         (struct tu_stats): Likewise.
12171         (struct dwarf2_per_objfile): Likewise.
12172         (struct dwarf2_per_cu_data): Likewise.
12173         (struct signatured_type): Likewise.
12174         (sig_type_ptr): Likewise.
12175         (DEF_VEC_P (sig_type_ptr)): Likewise.
12176         (INDEX4_SUFFIX): Likewise.
12177         (INDEX5_SUFFIX): Likewise.
12178         (DEBUG_STR_SUFFIX): Likewise.
12179         (dwarf2_read_section): Make non-static.
12180         (mapped_index_string_hash): Move from here.
12181         (dwarf5_djb_hash): Likewise.
12182         (file_write): Likewise.
12183         (class data_buf): Likewise.
12184         (struct symtab_index_entry): Likewise.
12185         (struct mapped_symtab): Likewise.
12186         (find_slot): Likewise.
12187         (hash_expand): Likewise.
12188         (add_index_entry): Likewise.
12189         (uniquify_cu_indices): Likewise.
12190         (class c_str_view): Likewise.
12191         (class c_str_view_hasher): Likewise.
12192         (class vector_hasher): Likewise.
12193         (write_hash_table): Likewise.
12194         (psym_index_map): Likewise.
12195         (struct addrmap_index_data): Likewise.
12196         (add_address_entry): Likewise.
12197         (add_address_entry_worker): Likewise.
12198         (write_address_map): Likewise.
12199         (symbol_kind): Likewise.
12200         (write_psymbols): Likewise.
12201         (struct signatured_type_index_data): Likewise.
12202         (write_one_signatured_type): Likewise.
12203         (recursively_count_psymbols): Likewise.
12204         (recursively_write_psymbols): Likewise.
12205         (class debug_names): Likewise.
12206         (check_dwarf64_offsets): Likewise.
12207         (psyms_seen_size): Likewise.
12208         (write_gdbindex): Likewise.
12209         (write_debug_names): Likewise.
12210         (assert_file_size): Likewise.
12211         (write_psymtabs_to_index): Likewise.
12212         (save_gdb_index_command): Likewise.
12213         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12214         command.
12215         * dwarf2read.h: New file.
12216
12217 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12218
12219         PR gdb/22670
12220         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12221         symbol name if the CU's language stores symbol names in linkage
12222         format.
12223         * language.h (struct language_defn)
12224         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12225         all instances of this struct.
12226
12227 2018-03-26  Tom Tromey  <tom@tromey.com>
12228
12229         * stack.c (backtrace_command_1): Remove verbose code.
12230
12231 2018-03-26  Tom Tromey  <tom@tromey.com>
12232
12233         * python/py-framefilter.c (py_print_type): Don't catch
12234         exceptions.  Return void.
12235         (py_print_value): Likewise.
12236         (py_print_single_arg): Likewise.
12237         (enumerate_args): Don't catch exceptions.
12238         (py_print_args): Likewise.
12239         (py_print_frame): Likewise.
12240         (gdbpy_apply_frame_filter): Catch exceptions here.
12241
12242 2018-03-26  Tom Tromey  <tom@tromey.com>
12243
12244         * stack.c (_initialize_stack): Remove trailing newlines from help
12245         text.  Add "Usage" line to "backtrace" help.
12246
12247 2018-03-26  Tom Tromey  <tom@tromey.com>
12248
12249         PR python/16486:
12250         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12251
12252 2018-03-26  Tom Tromey  <tom@tromey.com>
12253
12254         * python/py-framefilter.c (py_print_single_arg): Return
12255         EXT_LANG_BT_ERROR from catch.
12256
12257 2018-03-26  Tom Tromey  <tom@tromey.com>
12258
12259         PR backtrace/15584:
12260         * stack.c (backtrace_command_1): Move some code into no-filters
12261         "if".
12262
12263 2018-03-26  Tom Tromey  <tom@tromey.com>
12264
12265         * python/py-framefilter.c (throw_quit_or_print_exception): New
12266         function.
12267         (gdbpy_apply_frame_filter): Use it.
12268
12269 2018-03-26  Tom Tromey  <tom@tromey.com>
12270
12271         PR cli/17716:
12272         * python/py-framefilter.c (py_print_type, py_print_value)
12273         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12274         RETURN_MASK_ERROR.
12275
12276 2018-03-26  Tom Tromey  <tom@tromey.com>
12277
12278         * python/py-framefilter.c (enumerate_args): Use
12279         gdb::unique_xmalloc_ptr.
12280
12281 2018-03-26  Tom Tromey  <tom@tromey.com>
12282
12283         * python/py-framefilter.c (py_print_frame): Return
12284         EXT_LANG_BT_OK.
12285         (gdbpy_apply_frame_filter): Update comment.
12286         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12287         Remove.
12288         <EXT_LANG_BT_NO_FILTERS>: Change value.
12289
12290 2018-03-26  Tom Tromey  <tom@tromey.com>
12291
12292         PR backtrace/15582:
12293         * stack.c (backtrace_command): Parse "hide" argument.
12294         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12295         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12296         constant.
12297
12298 2018-03-26  Tom Tromey  <tom@tromey.com>
12299
12300         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12301         add "flags".
12302         (backtrace_command): Remove "fulltrace", add "flags".
12303
12304 2018-03-26  Tom Tromey  <tom@tromey.com>
12305
12306         * stack.c (backtrace_command): Rewrite command line parsing.
12307
12308 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12309
12310         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12311
12312 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12313
12314         * filename-seen-cache.h: Add include guard.
12315
12316 2018-03-26  Keith Seitz  <keiths@redhat.com>
12317
12318         * symfile.c (place_section): Remove "struct" from section_addr_info
12319         in comment.
12320         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12321         "struct" keyword from section_addr_info.
12322
12323 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12324
12325         * regformats/regdef.h (reg): Add constructors.
12326
12327 2018-03-25  Pedro Alves  <palves@redhat.com>
12328
12329         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12330         if then/else bodies in var_func_name extraction.
12331
12332 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12333
12334         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12335         lookup_minimal_symbol() to find symbol entry.
12336         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12337
12338 2018-03-23  Keith Seitz  <keiths@redhat.com>
12339
12340         PR c++/22968
12341         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12342         nested type definitions for C++, too.
12343
12344 2018-03-23  Tom Tromey  <tom@tromey.com>
12345
12346         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12347         a typedef.
12348         (macho_register_oso): Remove.
12349         (macho_symtab_read): Take a std::vector.
12350         (oso_el_compare_name): Now a std::sort comparator.
12351         (macho_symfile_read_all_oso): Take a std::vector.
12352         (macho_symfile_read): Use std::vector.  Remove cleanups.
12353
12354 2018-03-22  Tom Tromey  <tom@tromey.com>
12355
12356         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12357         (record_full_goto_bookmark): Use std::string.
12358
12359 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12360
12361         PR tdep/18295
12362         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12363         a single mask.
12364
12365 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12366
12367         * rs6000-tdep.c (store_insn_p): New function.
12368         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12369         and cr_reg to their unshifted values. Use store_insn_p to
12370         match LR saves using either R1 or fdata->alloca_reg. Use
12371         store_insn_p to match CR saves. Set alloca_reg_offset
12372         when alloca_reg and framep are set. Remove lr_reg shift
12373         when assigning to fdata->lr_register.
12374
12375 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12376
12377         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12378         command line args instead of emitting a warning.
12379
12380 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12381
12382         * tracepoint.h (struct static_tracepoint_marker): Initialize
12383         fields, define default constructor, move constructor and move
12384         assignment, disable the rest.
12385         <str_id, extra>: Make std::string.
12386         (release_static_tracepoint_marker): Remove.
12387         (free_current_marker): Remove.
12388         * tracepoint.c (free_current_marker): Remove.
12389         (parse_static_tracepoint_marker_definition): Adjust to
12390         std::string, use new hex2str overload.
12391         (release_static_tracepoint_marker): Remove.
12392         (print_one_static_tracepoint_marker): Get marker by reference
12393         and adjust to std::string.
12394         (info_static_tracepoint_markers_command): Adjust to std::vector
12395         changes
12396         * target.h (static_tracepoint_marker_p): Remove typedef.
12397         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12398         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12399         bool.
12400         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12401         * target-debug.h
12402         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12403         (target_debug_print_std_vector_static_tracepoint_marker): New.
12404         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12405         to...
12406         (target_debug_print_static_tracepoint_marker_p): ... this.
12407         * target-delegates.c: Re-generate.
12408         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12409         Make std::string.
12410         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12411         (decode_static_tracepoint_spec): Adjust to std::vector.
12412         (tracepoint_print_one_detail): Adjust to std::string.
12413         (strace_marker_decode_location): Adjust to std::string.
12414         (update_static_tracepoint): Adjust to std::string, remove call
12415         to release_static_tracepoint_marker.
12416         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12417         Adjust to std::vector.
12418         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12419         (remote_static_tracepoint_markers_by_strid): Adjust to
12420         std::vector.
12421         * common/rsp-low.h (hex2str): New overload with explicit count
12422         of bytes.
12423         * common/rsp-low.c (hex2str): New overload with explicit count
12424         of bytes.
12425         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12426         (_initialize_rsp_low_selftests): Add test_hex2str test.
12427         * unittests/tracepoint-selftests.c
12428         (test_parse_static_tracepoint_marker_definition): Adjust to
12429         std::string.
12430
12431 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12432
12433         * tracepoint.c (parse_static_tracepoint_marker_definition):
12434         Consider case where the definition is followed by more
12435         definitions.
12436         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12437         tracepoint-selftests.c.
12438         * unittests/tracepoint-selftests.c: New.
12439
12440 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12441
12442         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12443         Carvalho.
12444
12445 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12446
12447         * symtab.c (find_pc_sect_line): fixed indentation.
12448
12449 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12450
12451         * symtab.c (find_pc_sect_line): now uses binary search.
12452
12453 2018-03-19  Tom Tromey  <tom@tromey.com>
12454
12455         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12456         "IDENT" production.
12457
12458 2018-03-19  Pedro Alves  <palves@redhat.com>
12459             Tom Tromey  <tom@tromey.com>
12460
12461         * unittests/observable-selftests.c: New file.
12462         * common/observable.h: New file.
12463         * observable.h: New file.
12464         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12465         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12466         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12467         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12468         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12469         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12470         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12471         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12472         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12473         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12474         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12475         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12476         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12477         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12478         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12479         tui/tui-interp.c, valops.c: Update all users.
12480         * tui/tui-hooks.c (tui_bp_created_observer)
12481         (tui_bp_deleted_observer, tui_bp_modified_observer)
12482         (tui_inferior_exit_observer, tui_before_prompt_observer)
12483         (tui_normal_stop_observer, tui_register_changed_observer):
12484         Remove.
12485         (tui_observers_token): New global.
12486         (attach_or_detach, tui_attach_detach_observers): New functions.
12487         (tui_install_hooks, tui_remove_hooks): Use
12488         tui_attach_detach_observers.
12489         * record-btrace.c (record_btrace_thread_observer): Remove.
12490         (record_btrace_thread_observer_token): New global.
12491         * observer.sh: Remove.
12492         * observer.c: Rename to observable.c.
12493         * observable.c (namespace gdb_observers): Define new objects.
12494         (observer_debug): Move into gdb_observers namespace.
12495         (struct observer, struct observer_list, xalloc_observer_list_node)
12496         (xfree_observer_list_node, generic_observer_attach)
12497         (generic_observer_detach, generic_observer_notify): Remove.
12498         (_initialize_observer): Update.
12499         Don't include observer.inc.
12500         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12501         (clean mostlyclean): Likewise.
12502         (observer.h, observer.inc): Remove targets.
12503         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12504         (COMMON_SFILES): Use observable.c, not observer.c.
12505         * .gitignore: Remove observer.h.
12506
12507 2018-03-18  Tom Tromey  <tom@tromey.com>
12508
12509         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12510         gdb::def_vector.
12511         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12512
12513 2018-03-17  Tom Tromey  <tom@tromey.com>
12514
12515         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12516
12517 2018-03-17  Tom Tromey  <tom@tromey.com>
12518
12519         * target.c (class scoped_target_fd): New.
12520         (target_fileio_close_cleanup): Remove.
12521         (target_fileio_read_alloc_1): Use scoped_target_fd.
12522
12523 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12524
12525         * silent-rules.mk: New.
12526         * Makefile.in: Include silent-rules.mk
12527         (srcdir, VPATH, top_srcdir): Move up.
12528         (COMPILE): Add ECHO_CXX.
12529         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12530         (init.c): Add ECHO_INIT_C.
12531         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12532         (version.c): Add ECHO_GEN.
12533         (printcmd.o): Add ECHO_CXX.
12534         (target-float.o): Add ECHO_CXX.
12535         (ada-exp.o): Add ECHO_CXX.
12536         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12537         (insight$(EXEEXT)): Add ECHO_CXXLD.
12538         * gnulib/configure.ac: Add AM_SILENT_RULES.
12539         * gnulib/aclocal.m4: Re-generate.
12540         * gnulib/configure: Re-generate.
12541         * gnulib/import/Makefile.in: Re-generate.
12542
12543 2018-03-16  Tom Tromey  <tom@tromey.com>
12544
12545         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12546         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12547         * utils.c (do_free_section_addr_info)
12548         (make_cleanup_free_section_addr_info): Remove.
12549         * symfile.h (struct other_sections): Add constructor.
12550         (struct section_addr_info): Remove.
12551         (section_addr_info): New typedef.
12552         (struct sym_fns) <sym_offsets>: Change type of parameter.
12553         (build_section_addr_info_from_objfile)
12554         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12555         (default_symfile_offsets, symbol_file_add)
12556         (symbol_file_add_from_bfd)
12557         (build_section_addr_info_from_section_table): Update.
12558         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12559         * symfile.c (alloc_section_addr_info): Remove.
12560         (build_section_addr_info_from_section_table): Change return type.
12561         Update.
12562         (build_section_addr_info_from_bfd)
12563         (build_section_addr_info_from_objfile): Likewise.
12564         (free_section_addr_info): Remove.
12565         (relative_addr_info_to_section_offsets): Change type of "addrs".
12566         (addrs_section_compar): Now a std::sort comparator.
12567         (addrs_section_sort): Change return type.
12568         (addr_info_make_relative): Change type of "addrs".  Update.
12569         (default_symfile_offsets, syms_from_objfile_1)
12570         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12571         (symbol_file_add_separate): Update.
12572         (symbol_file_add): Change type of "addrs".  Update.
12573         (add_symbol_file_command): Update.  Remove cleanups.
12574         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12575         cleanups.
12576         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12577         * solib.c (solib_read_symbols): Update.
12578         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12579         * machoread.c (macho_symfile_offsets): Update.
12580         * jit.c (jit_bfd_try_read_symtab): Update.
12581
12582 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12583
12584         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12585         unittests/utils-selftests.c.
12586         * unittests/utils-selftests.c: New file.
12587
12588 2018-03-14  Tom Tromey  <tom@tromey.com>
12589
12590         PR cli/14977:
12591         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12592         for NULL.
12593
12594 2018-03-14  Tom Tromey  <tom@tromey.com>
12595
12596         PR cli/19918:
12597         * printcmd.c (printf_pointer): Allow "-" in format.
12598
12599 2018-03-14  Tom Tromey  <tom@tromey.com>
12600
12601         * printcmd.c (_initialize_printcmd): Add usage to printf.
12602
12603 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12604
12605         * MAINTAINERS: Update my email address.
12606
12607 2018-03-13  Tom Tromey  <tom@tromey.com>
12608
12609         * machoread.c (macho_check_dsym): Change filenamep to a
12610         std::string*.
12611         (macho_symfile_read): Update.
12612         * symfile.c (load_command): Use std::string.
12613
12614 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12615
12616         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12617         to error message string.
12618         (riscv_register_name): Use xsnprintf instead of sprintf.
12619         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12620         internal_error.
12621         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12622         error.
12623         (riscv_push_dummy_call): Likewise.
12624
12625 2018-03-12  Tom Tromey  <tom@tromey.com>
12626
12627         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12628         Use gdb::byte_vector.
12629         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12630
12631 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12632
12633         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12634         parameter type to readable_regcache.
12635         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12636         the declaration.
12637
12638 2018-03-11  Tom Tromey  <tom@tromey.com>
12639
12640         * dwarf2read.c (struct nextfield): Add initializers.
12641         (struct nextfnfield): Remove.
12642         (struct fnfieldlist): Add initializers.  Remove "length" and
12643         "head", use std::vector.
12644         (struct decl_field_list): Remove.
12645         (struct field_info): Add initializers.
12646         <fields, baseclasses>: Now std::vector.
12647         <nbaseclasses, nfnfields, typedef_field_list_count,
12648         nested_types_list_count>: Remove.
12649         (dwarf2_add_field, dwarf2_add_type_defn)
12650         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12651         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12652         (process_structure_scope): Update.
12653
12654 2018-03-11  Tom Tromey  <tom@tromey.com>
12655
12656         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12657         for use by std::sort.
12658         (build_type_psymtabs_1): Use std::vector.
12659
12660 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12661
12662         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12663         and LIBMPFR in the printed configuration.
12664
12665 2018-03-08  Tom Tromey  <tom@tromey.com>
12666
12667         * source.c (get_filename_and_charpos): Use scoped_fd.
12668         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12669         (procfs_pidlist): Likewise.
12670         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12671         (iterate_over_mappings): Likewise.
12672
12673 2018-03-08  Tom Tromey  <tom@tromey.com>
12674
12675         * infcall.c (struct call_return_meta_info)
12676         <stack_temporaries_enabled>: Remove.
12677         (get_call_return_value, call_function_by_hand_dummy): Update.
12678         * thread.c (disable_thread_stack_temporaries): Remove.
12679         (enable_thread_stack_temporaries): Remove.
12680         (thread_stack_temporaries_enabled_p): Return bool.
12681         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12682         (get_last_thread_stack_temporary): Update.
12683         * eval.c (evaluate_subexp): Update.
12684         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12685         class, not a function.
12686         (value_ptr, value_vec): Remove typedefs.
12687         (class thread_info) <stack_temporaries_enabled>: Now bool.
12688         <stack_temporaries>: Now a std::vector.
12689         (thread_stack_temporaries_enabled_p)
12690         (value_in_thread_stack_temporaries): Return bool.
12691
12692 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12693
12694         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12695         (getpkt_or_notif_sane_1): Likewise.
12696
12697 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12698
12699         * build-id.c (build_id_to_debug_bfd): Use std::string.
12700
12701 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12702
12703         * build-id.c (find_separate_debug_file_by_buildid): Return
12704         std::string.
12705         * build-id.h (find_separate_debug_file_by_buildid): Return
12706         std::string.
12707         * coffread.c (coff_symfile_read): Adjust to std::string.
12708         * elfread.c (elf_symfile_read): Adjust to std::string.
12709         * symfile.c (separate_debug_file_exists): Change parameter to
12710         std::string.
12711         (find_separate_debug_file): Return std::string.
12712         (find_separate_debug_file_by_debuglink): Return std::string.
12713         * symfile.h (find_separate_debug_file_by_debuglink): Return
12714         std::string.
12715
12716 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12717
12718         * common/xml-utils.c (xml_escape_text): Move code to...
12719         (xml_escape_text_append): ... this new function.
12720         * common/xml-utils.h (xml_escape_text_append): New declaration.
12721         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12722         New function.
12723         (_initialize_xml_utils): register test_xml_escape_text_append as
12724         a selftest.
12725
12726 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12727
12728         * defs.h: Remove MAX_REGISTER_SIZE.
12729         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12730         asserts.
12731         * python/py-unwind.c (pyuw_sniffer): Likewise.
12732
12733 2018-03-07  Tom Tromey  <tom@tromey.com>
12734
12735         * linux-tdep.c (linux_info_proc): Update.
12736         * target.h (struct target_ops) <to_fileio_readlink>: Return
12737         optional<string>.
12738         (target_fileio_readlink): Return optional<string>.
12739         * remote.c (remote_hostio_readlink): Return optional<string>.
12740         * inf-child.c (inf_child_fileio_readlink): Return
12741         optional<string>.
12742         * target.c (target_fileio_readlink): Return optional<string>.
12743
12744 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12745
12746         * regcache.c (cooked_read_test): Add riscv to the list of
12747         architectures that have a save_reggroup.
12748
12749 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12750
12751         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12752         value is not a dynamic class object.
12753
12754 2018-03-06  Tom Tromey  <tom@tromey.com>
12755
12756         * rust-exp.y: Formatting fixes.
12757
12758 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12759
12760         * riscv-tdep.c (riscv_register_name): Remove target description
12761         support.
12762         (riscv_gdbarch_init): Remove target description check.
12763
12764 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12765
12766         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12767         comment.
12768         * riscv-tdep.h: Likewise.
12769
12770 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12771
12772         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12773         (riscv_pseudo_register_write): Delete.
12774         (riscv_gdbarch_init): Remove all use of pseudo registers.
12775
12776 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12777
12778         * record-btrace.c (btrace_print_lines): Replace cleanup
12779         parameter with RAII equivalents.
12780         (btrace_insn_history): Replace cleanup with RAII equivalents.
12781         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12782         make_cleanup_ui_out_tuple_begin_end): Remove.
12783         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12784         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12785         make_cleanup_ui_out_list_begin_end): Remove.
12786
12787 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12788
12789         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12790         parameter types to std::vector.  Use bool.
12791         (record_btrace_wait): Replace VEC(tp_t) with
12792         std::vector<thread_info *>.
12793         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12794
12795 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12796
12797         * record-btrace.c (record_btrace_disable_callback): Remove.
12798         (struct scoped_btrace_disable): New.
12799         (record_btrace_open): Use scoped_btrace_disable.
12800
12801 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12802
12803         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12804         reading values from registers.
12805
12806 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12807
12808         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12809         where appropriate.
12810
12811 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12812
12813         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12814         change parameter type.  Use GDB's print functions, and use
12815         core_addr_to_string where appropriate.
12816         (riscv_push_dummy_call): Use core_addr_to_string where
12817         appropriate, update call to riscv_print_arg_location, and reindent
12818         a few lines.
12819         (riscv_return_value): Update call to riscv_print_arg_location.
12820
12821 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12822             Tim Newsome <tim@sifive.com>
12823             Albert Ou <a0u@eecs.berkeley.edu>
12824             Darius Rad <darius@bluespec.com>
12825
12826         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12827         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12828         (ALLDEPFILES): Add riscv-tdep.c
12829         * configure.tgt: Add riscv support.
12830         * riscv-tdep.c: New file.
12831         * riscv-tdep.h: New file.
12832         * NEWS: Mention new target.
12833         * MAINTAINERS: Add entry for riscv.
12834
12835 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12836
12837         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12838         fields within aggregates.
12839
12840 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12841
12842         * record-btrace.c (btrace_print_lines): Change type of flags to
12843         gdb_disassembly_flags.
12844
12845 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12846
12847         * fbsd-nat.c: Include "inf-ptrace.h".
12848         (USE_SIGTRAP_SIGINFO): Conditionally define.
12849         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12850         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12851         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12852         function.
12853         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12854         Likewise.
12855         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12856         Likewise.
12857         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12858         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12859         "supports_stopped_by_hw_breakpoint" target methods.
12860
12861 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12862
12863         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12864         * fbsd-nat.c (debug_fbsd_nat): New variable.
12865         (show_fbsd_nat_debug): New function.
12866         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12867         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12868
12869 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12870
12871         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12872         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12873         prototype.
12874         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12875         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12876         method.
12877
12878 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12879
12880         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12881         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12882
12883 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12884
12885         * charset.c (struct charset_vector): New.
12886         (charsets): Change type to charset_vector.
12887         (find_charset_names): Adjust.
12888         (add_one): Adjust.
12889         (_initialize_charset): Adjust.
12890
12891 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12892
12893         * progspace.h (struct program_space) <deleted_solibs>: Change
12894         type to std::vector<std::string>.
12895         * progspace.c (clear_program_space_solib_cache): Adjust.
12896         * breakpoint.c (print_solib_event): Adjust.
12897         (check_status_catch_solib): Adjust.
12898         * solib.c (update_solib_list): Adjust.
12899         * ui-out.h (class ui_out) <field_string>: New overload.
12900         * ui-out.c (ui_out::field_string): New overload.
12901
12902 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12903
12904         * progspace.h (struct program_space): Add constructor and
12905         destructor, initialize fields.
12906         (add_program_space): Remove.
12907         * progspace.c (add_program_space): Rename to...
12908         (program_space::program_space): ... this.
12909         (release_program_space): Rename to...
12910         (program_space::~program_space): ... this.
12911         (delete_program_space): Use delete to delete program_space.
12912         (initialize_progspace): Use new to allocate program_space.
12913         * inferior.c (add_inferior_with_spaces): Likewise.
12914         (clone_inferior_command): Likewise.
12915         * infrun.c (follow_fork_inferior): Likewise.
12916         (handle_vfork_child_exec_or_exit): Likewise.
12917
12918 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12919
12920         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12921         (delim_string_to_char_ptr_vec): Return std::vector of
12922         gdb::unique_xmalloc_ptr.
12923         (dirnames_to_char_ptr_vec_append): Take std::vector of
12924         gdb::unique_xmalloc_ptr.
12925         (dirnames_to_char_ptr_vec): Return std::vector of
12926         gdb::unique_xmalloc_ptr.
12927         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12928         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12929         (delim_string_to_char_ptr_vec): Return an std::vector of
12930         gdb::unique_xmalloc_ptr, adjust the code.
12931         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12932         gdb::unique_xmalloc_ptr, adjust the code.
12933         (dirnames_to_char_ptr_vec): Return an std::vector of
12934         gdb::unique_xmalloc_ptr, adjust the code.
12935         * auto-load.c (auto_load_safe_path_vec): Change type to
12936         std::vector of gdb::unique_xmalloc_ptr.
12937         (auto_load_expand_dir_vars): Return an std::vector of
12938         gdb::unique_xmalloc_ptr, adjust the code.
12939         (auto_load_safe_path_vec_update): Adjust.
12940         (filename_is_in_auto_load_safe_path_vec): Adjust.
12941         (auto_load_objfile_script_1): Adjust.
12942         * build-id.c (build_id_to_debug_bfd): Adjust.
12943         * linux-thread-db.c (thread_db_load_search): Adjust.
12944         * source.c (add_path): Adjust.
12945         (openp): Adjust.
12946         * symfile.c (find_separate_debug_file): Adjust.
12947         * utils.c (do_free_char_ptr_vec): Remove.
12948         (make_cleanup_free_char_ptr_vec): Remove.
12949
12950 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12951
12952         PR gdb/22907
12953         * common/pathstuff.c: Conditionally include "<windows.h>".
12954
12955 2018-03-01  Georg Sauthoff  <mail@georg.so>
12956
12957         PR gdb/22888
12958         * gcore.in: Quote variables and switch interpreter to bash.
12959
12960 2018-03-01  Tom Tromey  <tom@tromey.com>
12961
12962         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12963         assertion.  Add assertion for discriminant_index.
12964         (quirk_rust_enum): Use correct base type name in univariant case.
12965
12966 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12967
12968         * record.c (get_call_history_modifiers): Return a
12969         record_print_flags.
12970         (cmd_record_call_history): Adjust.
12971         * record-btrace.c (record_btrace_call_history): Adjust.
12972         (record_btrace_call_history_range): Adjust.
12973         (record_btrace_call_history_from): Adjust.
12974         * target-debug.h (target_debug_print_record_print_flags): New.
12975         * target-delegates.c: Re-generate.
12976         * target.c (target_call_history): Change flags type.
12977         (target_call_history_from): Likewise.
12978         (target_call_history_range): Likewise.
12979         * target.h (struct target_ops) <target_call_history>: Likewise.
12980         (target_call_history_from): Likewise.
12981         (target_call_history_range): Likewise.
12982
12983 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12984             Simon Marchi  <simon.marchi@polymtl.ca>
12985
12986         * common/common-utils.c: Include "sys/stat.h".
12987         (is_regular_file): Move here from "source.c"; change return
12988         type to "bool".
12989         * common/common-utils.h (is_regular_file): New prototype.
12990         * common/pathstuff.c (contains_dir_separator): New function.
12991         * common/pathstuff.h (contains_dir_separator): New prototype.
12992         * source.c: Don't include "sys/stat.h".
12993         (is_regular_file): Move to "common/common-utils.c".
12994
12995 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12996
12997         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12998         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12999         * auto-load.c: Include "common/pathstuff.h".
13000         * common/common-def.h (current_directory): Move here.
13001         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13002         function.
13003         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13004         prototype.
13005         * common/pathstuff.c: New file.
13006         * common/pathstuff.h: New file.
13007         * compile/compile.c: Include "common/pathstuff.h".
13008         * defs.h (current_directory): Move to "common/common-defs.h".
13009         * dwarf2read.c: Include "common/pathstuff.h".
13010         * exec.c: Likewise.
13011         * guile/scm-safe-call.c: Likewise.
13012         * linux-thread-db.c: Likewise.
13013         * main.c: Likewise.
13014         * nto-tdep.c: Likewise.
13015         * objfiles.c: Likewise.
13016         * source.c: Likewise.
13017         * symtab.c: Likewise.
13018         * utils.c: Include "common/pathstuff.h".
13019         (gdb_realpath): Move to "common/pathstuff.c".
13020         (gdb_realpath_keepfile): Likewise.
13021         (gdb_abspath): Likewise.
13022         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13023         (gdb_realpath_keepfile): Likewise.
13024         (gdb_abspath): Likewise.
13025
13026 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13027
13028         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13029         wildcard process pid for super_resume for kernels with a
13030         specific bug.
13031
13032 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13033
13034         * compile/compile.c (get_args): Add additional comments
13035         explaining function.
13036
13037 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13038             Tom Tromey  <tom@tromey.com>
13039
13040         * target.h (memory_write_request_s): Remove typedef.  Don't define
13041         VEC.
13042         (target_write_memory_blocks): Change argument to std::vector.
13043         (struct memory_write_request): Add constructor.
13044         * target-memory.c (compare_block_starting_address): Return bool.
13045         Change argument types.
13046         (claim_memory): Change arguments to use std::vector.
13047         (split_regular_and_flash_blocks, blocks_to_erase)
13048         (compute_garbled_blocks): Likewise.
13049         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13050         (target_write_memory_blocks): Change argument to std::vector.
13051         * symfile.c (struct load_section_data): Add constructor and
13052         destructor.  Use std::vector for "requests".
13053         (struct load_progress_data): Add initializers.
13054         (load_section_callback): Update.  Use "new".
13055         (clear_memory_write_data): Remove.
13056         (generic_load): Update.
13057
13058 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13059
13060         * arch/aarch64.h: Use common/tdesc.h.
13061
13062 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13063
13064         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13065         architecture with a 64-bit ABI.
13066
13067 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13068
13069         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13070         ahead of target description loading.
13071
13072 2018-02-26  Tom Tromey  <tom@tromey.com>
13073
13074         * stack.c (backtrace_command_1): Update.
13075         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13076         of "flags".
13077         * python/py-framefilter.c (py_print_frame)
13078         (gdbpy_apply_frame_filter): Change type of "flags".
13079         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13080         of "flags".
13081         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13082         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13083         * extension.h (enum frame_filter_flag): Rename from
13084         frame_filter_flags.
13085         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13086         (apply_ext_lang_frame_filter): Change type of "flags".
13087         * extension.c (apply_ext_lang_frame_filter): Change type of
13088         "flags".
13089         * extension-priv.h (struct extension_language_ops)
13090         <apply_frame_filter>: Change type of "flags".
13091
13092 2018-02-26  Tom Tromey  <tom@tromey.com>
13093
13094         PR python/16497:
13095         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13096         off-by-one in py_end computation.
13097         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13098         PRINT_MORE_FRAMES.
13099         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13100         constant.
13101
13102 2018-02-26  Tom Tromey  <tom@tromey.com>
13103
13104         * dwarf2read.c (struct variant_field): New.
13105         (struct nextfield) <variant>: New field.
13106         (dwarf2_add_field): Handle DW_TAG_variant_part.
13107         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13108         discriminated union.
13109         (read_structure_type): Handle DW_TAG_variant_part.
13110         (handle_struct_member_die): New function, extracted from
13111         process_structure_scope.  Handle DW_TAG_variant.
13112         (process_structure_scope): Handle discriminated unions.  Call
13113         handle_struct_member_die.
13114
13115 2018-02-26  Tom Tromey  <tom@tromey.com>
13116
13117         * rust-lang.h (rust_last_path_segment): Declare.
13118         * rust-lang.c (rust_last_path_segment): Now public.  Change
13119         contract.
13120         (struct disr_info): Remove.
13121         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13122         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13123         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13124         (rust_enum_p, rust_enum_variant): New function.
13125         (rust_underscore_fields): Remove "offset" parameter.
13126         (rust_print_enum): New function.
13127         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13128         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13129         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13130         enums.
13131         (rust_internal_print_type): New function, from rust_print_type.
13132         Remove enum code.
13133         (rust_print_type): Call rust_internal_print_type.
13134         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13135         Update enum handling.
13136         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13137         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13138         (rust_union_quirks): New functions.
13139         (process_full_comp_unit, process_full_type_unit): Call
13140         rust_union_quirks.
13141         (process_structure_scope): Update rust_unions if necessary.
13142
13143 2018-02-26  Tom Tromey  <tom@tromey.com>
13144
13145         * value.h (value_union_variant): Declare.
13146         * valops.c (value_union_variant): New function.
13147         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13148         (struct discriminant_info): New.
13149         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13150         enumerator.
13151         (struct main_type) <flag_discriminated_union>: New field.
13152
13153 2018-02-26  Tom Tromey  <tom@tromey.com>
13154
13155         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13156         unittests/unpack-selftests.c.
13157         * unittests/unpack-selftests.c: New file.
13158         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13159
13160 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13161
13162         * dwarf2read.c (struct partial_die_info) <read>: New method.
13163         (read_partial_die): Remove the declaration.
13164         (load_partial_dies): Update.
13165         (partial_die_info::partial_die_info):
13166         (read_partial_die): Change it to partial_die_info::read.
13167
13168 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13169
13170         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13171         (fixup_partial_die): Remove declaration.
13172         (scan_partial_symbols): Update.
13173         (partial_die_parent_scope): Likewise.
13174         (partial_die_full_name): Likewise.
13175         (fixup_partial_die): Change it to partial_die_info::fixup.
13176
13177 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13178
13179         * dwarf2read.c (read_partial_die): Update the declaration.
13180         (load_partial_dies): Caller update.
13181         (read_partial_die): Remove one argument abbrev_len.
13182
13183 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13184
13185         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13186         assignment operator.
13187         (load_partial_dies): Use ctor and copy ctor.
13188         (read_partial_die): Update.
13189         (dwarf2_cu::find_partial_die): Use ctor.
13190
13191 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13192
13193         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13194         (find_partial_die_in_comp_unit): Change it to
13195         dwarf2_cu::find_partial_die.
13196         (find_partial_die): Update.
13197
13198 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13199
13200         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13201         is NULL.
13202
13203 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13204
13205         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13206
13207 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13208
13209         * arch/amd64.h: Use common/tdesc.h.
13210         * arch/i386.c: Likewise.
13211         * arch/i386.h: Likewise.
13212         * arch/tic6x.c: Likewise.
13213         * arch/tdesc.h: Move file from here...
13214         * common/tdesc.h: ...to here.
13215         * features/aarch64-core.c: Regenerate.
13216         * features/aarch64-fpu.c: Regenerate.
13217         * features/i386/32bit-avx.c: Regenerate.
13218         * features/i386/32bit-avx512.c: Regenerate.
13219         * features/i386/32bit-core.c: Regenerate.
13220         * features/i386/32bit-linux.c: Regenerate.
13221         * features/i386/32bit-mpx.c: Regenerate.
13222         * features/i386/32bit-pkeys.c: Regenerate.
13223         * features/i386/32bit-sse.c: Regenerate.
13224         * features/i386/64bit-avx.c: Regenerate.
13225         * features/i386/64bit-avx512.c: Regenerate.
13226         * features/i386/64bit-core.c: Regenerate.
13227         * features/i386/64bit-linux.c: Regenerate.
13228         * features/i386/64bit-mpx.c: Regenerate.
13229         * features/i386/64bit-pkeys.c: Regenerate.
13230         * features/i386/64bit-segments.c: Regenerate.
13231         * features/i386/64bit-sse.c: Regenerate.
13232         * features/i386/x32-core.c: Regenerate.
13233         * features/tic6x-c6xp.c: Regenerate.
13234         * features/tic6x-core.c: Regenerate.
13235         * features/tic6x-gp.c: Regenerate.
13236         * target-descriptions.c: Use common/tdesc.h.
13237         * target-descriptions.h: Likewise.
13238
13239 2018-02-24  Tom Tromey  <tom@tromey.com>
13240
13241         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13242         (try_thread_db_load_from_dir, thread_db_load_search): Use
13243         std::string.
13244         (info_auto_load_libthread_db_compare): Return bool.  Change
13245         argument types.
13246         (info_auto_load_libthread_db): Use std::vector, std::string.
13247         Remove cleanups.
13248
13249 2018-02-24  Tom Tromey  <tom@tromey.com>
13250
13251         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13252         std::string.
13253         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13254         std::string*.
13255         * gdbarch.c: Rebuild.
13256         * gdbarch.h: Rebuild.
13257         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13258         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13259         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13260         std::string*.
13261
13262 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13263
13264         * gdbtypes.h (sect_offset): Change type to uint64_t.
13265         (sect_offset_str): New function.
13266         * dwarf2read.c (create_addrmap_from_aranges): Use
13267         sect_offset_str.
13268         (error_check_comp_unit_head): Likewise.
13269         (create_debug_type_hash_table): Likewise.
13270         (read_cutu_die_from_dwo): Likewise.
13271         (init_cutu_and_read_dies): Likewise.
13272         (init_cutu_and_read_dies_no_follow): Likewise.
13273         (process_psymtab_comp_unit_reader): Likewise.
13274         (partial_die_parent_scope): Likewise.
13275         (peek_die_abbrev): Likewise.
13276         (process_queue): Likewise.
13277         (dwarf2_physname): Likewise.
13278         (read_namespace_alias): Likewise.
13279         (read_import_statement): Likewise.
13280         (create_dwo_cu_reader): Likewise.
13281         (create_cus_hash_table): Likewise.
13282         (lookup_dwo_cutu): Likewise.
13283         (inherit_abstract_dies): Likewise.
13284         (read_func_scope): Likewise.
13285         (read_call_site_scope): Likewise.
13286         (dwarf2_add_member_fn): Likewise.
13287         (read_common_block): Likewise.
13288         (read_module_type): Likewise.
13289         (read_typedef): Likewise.
13290         (read_subrange_type): Likewise.
13291         (load_partial_dies): Likewise.
13292         (read_partial_die): Likewise.
13293         (find_partial_die): Likewise.
13294         (read_str_index): Likewise.
13295         (dwarf2_string_attr): Likewise.
13296         (build_error_marker_type): Likewise.
13297         (lookup_die_type): Likewise.
13298         (dump_die_shallow): Likewise.
13299         (follow_die_ref): Likewise.
13300         (dwarf2_fetch_die_loc_sect_off): Likewise.
13301         (dwarf2_fetch_constant_bytes): Likewise.
13302         (follow_die_sig): Likewise.
13303         (get_signatured_type): Likewise.
13304         (get_DW_AT_signature_type): Likewise.
13305         (dwarf2_find_containing_comp_unit): Likewise.
13306         (set_die_type): Likewise.
13307
13308 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13309
13310         * arch/aarch64.c: Include "common-defs.h".
13311         * arch/amd64.c: Likewise.
13312         * arch/i386.c: Likewise.
13313
13314 2018-02-21  Tom Tromey  <tom@tromey.com>
13315
13316         * value.h: (extract_field_op): Update.
13317         * eval.c (extract_field_op): Return a const char *.
13318         * expression.h (parse_expression_for_completion): Update.
13319         * completer.c (complete_expression): Update.
13320         (add_struct_fields): Make fieldname const.
13321         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13322         (mark_completion_tag, parse_exp_in_context_1): Update.
13323         (parse_expression_for_completion): Change "name" to
13324         unique_xmalloc_ptr*.
13325
13326 2018-02-21  Tom Tromey  <tom@tromey.com>
13327
13328         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13329
13330 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13331
13332         * avr-tdep.c (avr_read_pc): Change parameter type to
13333         readable_regcache.
13334         * gdbarch.sh (read_pc): Likewise.
13335         * gdbarch.c: Re-generated.
13336         * gdbarch.h: Re-generated.
13337         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13338         readable_regcache.
13339         * ia64-tdep.c (ia64_read_pc): Likewise.
13340         * mips-tdep.c (mips_read_pc): Likewise.
13341         * spu-tdep.c (spu_read_pc): Likewise.
13342
13343 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13344
13345         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13346         * regcache-dump.c: New file.
13347         * regcache.c: Move register_dump to regcache-dump.c.
13348         (maintenance_print_registers): Likewise.
13349         (maintenance_print_raw_registers): Likewise.
13350         (maintenance_print_cooked_registers): Likewise.
13351         (maintenance_print_register_groups): Likewise.
13352         (maintenance_print_remote_registers): Likewise.
13353         (_initialize_regcache): Likewise.
13354         * regcache.h (register_dump): Moved from regcache.c.
13355
13356 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13357
13358         * regcache.c (regcache::regcache): Update.
13359         (regcache::invalidate): Move it to detached_regcache::invalidate.
13360         (get_thread_arch_aspace_regcache): Update.
13361         (regcache::raw_update): Update.
13362         (regcache::cooked_read): Remove some code.
13363         (regcache::cooked_read_value): Likewise.
13364         (regcache::raw_write): Remove assert on m_readonly_p.
13365         (regcache::raw_supply_integer): Move it to
13366         detached_regcache::raw_supply_integer.
13367         (regcache::raw_supply_zeroed): Likewise.
13368         * regcache.h (detached_regcache) <raw_supply_integer>: New
13369         declaration.
13370         <raw_supply_zeroed, invalidate>: Likewise.
13371         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13372         <invalidate>: Likewise.
13373         <m_readonly_p>: Removed.
13374
13375 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13376
13377         * infcmd.c (get_return_value): Let stop_regs point to
13378         get_current_regcache.
13379         * regcache.c (regcache::regcache): Remove.
13380         (register_dump_reg_buffer): New class.
13381         (regcache_print): Adjust.
13382         * regcache.h (regcache): Remove constructors.
13383
13384 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13385
13386         * regcache.c (class register_dump): New class.
13387         (register_dump_regcache, register_dump_none): New class.
13388         (register_dump_remote, register_dump_groups): New class.
13389         (regcache_print): Update.
13390         * regcache.h (regcache_dump_what): Move it to regcache.c.
13391         (regcache) <dump>: Remove.
13392
13393 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13394
13395         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13396          reg_buffer_rw *.
13397         (jit_unwind_reg_set_impl): Call raw_supply.
13398         (jit_frame_sniffer): Use reg_buffer_rw.
13399         * record-full.c (record_full_core_regbuf): Change its type.
13400         (record_full_core_open_1): Use reg_buffer_rw.
13401         (record_full_close): Likewise.
13402         (record_full_core_fetch_registers): Use regcache->raw_supply.
13403         (record_full_core_store_registers): Likewise.
13404         * regcache.c (regcache::get_register_status): Move it to
13405         reg_buffer.
13406         (regcache_raw_set_cached_value): Remove.
13407         (regcache::raw_set_cached_value): Remove.
13408         (regcache::raw_write): Call raw_supply.
13409         (regcache::raw_supply): Move it to reg_buffer_rw.
13410         * regcache.h (regcache_raw_set_cached_value): Remove.
13411         (reg_buffer_rw): New class.
13412
13413 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13414
13415         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13416         readonly_detached_regcache.
13417         (dummy_frame_prev_register): Use regcache->cooked_read.
13418         * frame.c (frame_save_as_regcache): Change return type.
13419         (frame_pop): Update.
13420         * frame.h (frame_save_as_regcache): Update declaration.
13421         * inferior.h (get_infcall_suspend_state_regcache): Update
13422         declaration.
13423         * infrun.c (infcall_suspend_state) <registers>: use
13424         readonly_detached_regcache.
13425         (save_infcall_suspend_state): Don't use regcache_dup.
13426         (get_infcall_suspend_state_regcache): Change return type.
13427         * linux-fork.c (struct fork_info) <savedregs>: Change to
13428         readonly_detached_regcache.
13429         <pc>: New field.
13430         (fork_save_infrun_state): Don't use regcache_dup.
13431         (info_checkpoints_command): Adjust.
13432         * mi/mi-main.c (register_changed_p): Update declaration.
13433         (mi_cmd_data_list_changed_registers): Use
13434         readonly_detached_regcache.
13435         (register_changed_p): Change parameter type to
13436         readonly_detached_regcache.
13437         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13438         readonly_detached_regcache.
13439         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13440         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13441         New.
13442         (regcache::save): Move it to reg_buffer.
13443         (regcache::restore): Change parameter type.
13444         (regcache_dup): Remove.
13445         * regcache.h (reg_buffer) <save>: New method.
13446         (readonly_detached_regcache): New class.
13447         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13448         readonly_detached_regcache.
13449         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13450
13451 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13452
13453         * frame.c (frame_save_as_regcache): Use regcache method save.
13454         (frame_pop): Use regcache method restore.
13455         * infrun.c (restore_infcall_suspend_state): Likewise.
13456         * linux-fork.c (fork_load_infrun_state): Likewise.
13457         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13458         save.
13459         * regcache.c (regcache_save): Remove.
13460         (regcache::restore): More asserts.
13461         (regcache_cpy): Remove.
13462         * regcache.h (regcache_save): Remove the declaration.
13463         (regcache::restore): Move from private to public.
13464         Remove the friend declaration of regcache_cpy.
13465         (regcache_cpy): Remove declaration.
13466
13467 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13468
13469         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13470         parameter type to 'readable_regcache *'.
13471         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13472         * arm-tdep.c (arm_neon_quad_read): Likewise.
13473         (arm_pseudo_read): Likewise.
13474         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13475         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13476         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13477         * gdbarch.c: Re-generated.
13478         * gdbarch.h: Re-generated.
13479         * gdbarch.sh (pseudo_register_read): Change parameter type to
13480         'readable_regcache *'.
13481         (pseudo_register_read_value): Likewise.
13482         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13483         (h8300_pseudo_register_read): Likewise.
13484         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13485         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13486         (i386_pseudo_register_read_into_value): Likewise.
13487         (i386_pseudo_register_read_value): Likewise.
13488         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13489         declaration.
13490         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13491         * m32c-tdep.c (m32c_raw_read): Likewise.
13492         (m32c_read_flg): Likewise.
13493         (m32c_banked_register): Likewise.
13494         (m32c_banked_read): Likewise.
13495         (m32c_sb_read): Likewise.
13496         (m32c_part_read): Likewise.
13497         (m32c_cat_read): Likewise.
13498         (m32c_r3r2r1r0_read): Likewise.
13499         (m32c_pseudo_register_read): Likewise.
13500         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13501         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13502         (mep_pseudo_cr64_read): Likewise.
13503         (mep_pseudo_register_read): Likewise.
13504         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13505         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13506         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13507         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13508         (regcache::cooked_read): Likewise.
13509         (regcache::cooked_read_value): Likewise.
13510         (regcache_cooked_read_signed):
13511         (regcache::cooked_read): Likewise.
13512         * regcache.h (readable_regcache): New class.
13513         (regcache): Inherit readable_regcache.  Move some methods to
13514         readable_regcache.
13515         * rl78-tdep.c (rl78_pseudo_register_read): Change
13516         parameter type to 'readable_regcache *'.
13517         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13518         (e500_pseudo_register_read): Change parameter type to
13519         'readable_regcache *'.
13520         (dfp_pseudo_register_read): Likewise.
13521         (vsx_pseudo_register_read): Likewise.
13522         (efpr_pseudo_register_read): Likewise.
13523         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13524         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13525         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13526         (sh64_pseudo_register_read): Likewise.
13527         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13528         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13529         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13530         (spu_pseudo_register_read): Likewise.
13531         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13532         (xtensa_pseudo_register_read): Likewise.
13533
13534 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13535
13536         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13537         (regcache::arch): Move it to reg_buffer::arch.
13538         (regcache::register_buffer): Likewise.
13539         (regcache::assert_regnum): Likewise.
13540         (regcache::num_raw_registers): Likewise.
13541         * regcache.h (reg_buffer): New class.
13542         (regcache): Inherit reg_buffer.
13543
13544 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13545
13546         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13547         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13548
13549 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13550
13551         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13552
13553 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13554
13555         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13556         (SFILES): Remove common/*.c files.
13557         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13558         * common/common.host: Add common reference.
13559         * configure.ac: Likewise.
13560         * configure: Regenerate.
13561
13562 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13563
13564         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13565         (block_initialize_namespace): Use new.
13566         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13567         (dwarf2_free_objfile): Use delete.
13568         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13569         (copy_type_recursive): Use new.
13570         * gdb_obstack.h (allocate_on_obstack): New.
13571
13572 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13573
13574         PR gdb/22849
13575         * inferior.c (exit_inferior_1): Reset inf->control.
13576
13577 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13578
13579         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13580         declaration.
13581
13582 2018-02-14  Pedro Alves  <palves@redhat.com>
13583
13584         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13585         frame_cleanup_after_sniffer on exception.
13586
13587 2018-02-14  Tom Tromey  <tom@tromey.com>
13588
13589         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13590         const.
13591         (solib_bfd_open): Make pathname const.
13592         * solib.c (solib_bfd_open): Make pathname const.
13593         * solib-spu.c (spu_bfd_fopen): Make name const.
13594         (spu_bfd_open): Make pathname const.
13595         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13596         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13597
13598 2018-02-14  Tom Tromey  <tom@tromey.com>
13599
13600         * symfile.c (symfile_bfd_open): Update.
13601         * source.h (openp, source_full_path_of, find_and_open_source):
13602         Change argument type to unique_xmalloc_ptr.
13603         * source.c (openp): Take a unique_xmalloc_ptr.
13604         (source_full_path_of, find_and_open_source): Likewise.
13605         (open_source_file, symtab_to_fullname): Update.
13606         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13607         unique_xmalloc_ptr.
13608         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13609         (exec_file_find): Update.
13610         * psymtab.c (psymtab_to_fullname): Update.
13611         * nto-tdep.h (nto_find_and_open_solib): Update.
13612         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13613         unique_xmalloc_ptr.
13614         * exec.c (exec_file_attach): Update.
13615         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13616         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13617
13618 2018-02-14  Tom Tromey  <tom@tromey.com>
13619
13620         * solib.c: Include source.h.
13621         * nto-tdep.c: Include source.h.
13622         * mi/mi-cmd-env.c: Include source.h.
13623         * infcmd.c: Include source.h.
13624         * exec.c: Include source.h.
13625         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13626         (add_path, directory_switch, source_path, init_source_path): Move
13627         declarations...
13628         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13629         (add_path, directory_switch, source_path, init_source_path):
13630         ...here.
13631
13632 2018-02-14  Tom Tromey  <tom@tromey.com>
13633
13634         * solist.h (exec_file_find, solib_find): Return
13635         unique_xmalloc_ptr.
13636         (solib_bfd_fopen): Take a const char *.
13637         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13638         (exec_file_find, solib_find): Likewise.
13639         (solib_bfd_fopen): Do not take ownership of "pathname".
13640         (solib_bfd_open): Use unique_xmalloc_ptr.
13641         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13642         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13643         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13644         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13645
13646 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13647
13648         * ada-lang.c (name_match_type_from_name): Remove reference to
13649         ada_name_for_lookup in function's documentation.
13650         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13651
13652 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13653
13654         * defs.h (enum openp_flags): New enum.
13655         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13656         Move to enum openp_flags.
13657         (openp_flags): New enum flags.
13658         (openp): Change parameter type to openp_flags.
13659         * source.c (openp): Change parameter type to openp_flags.
13660         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13661         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13662
13663 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13664
13665         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13666         per-command.
13667
13668 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13669
13670         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13671         into...
13672         (class dwarf2_queue_guard): ...the destructor of this new class.
13673         (dw2_do_instantiate_symtab): Create instance of the new class
13674         dwarf2_queue_guard, remove cleanup.
13675
13676 2018-02-09  Tom Tromey  <tom@tromey.com>
13677
13678         * source.c (find_source_lines): Don't reference past the end of
13679         the vector.
13680
13681 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13682
13683         * remote.c (remote_btrace_maybe_reopen): Change error message.
13684         * btrace.c (btrace_enable): Likewise.
13685         (parse_xml_btrace): Likewise.
13686         (parse_xml_btrace_conf): Likewise.
13687
13688 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13689
13690         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13691         (linux_enable_pt, linux_enable_bts): Call
13692         diagnose_perf_event_open_fail.
13693
13694 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13695
13696         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13697         Remove parameter and change return type.  Update callers.  Move it.
13698         (linux_enable_bts, linux_enable_pt): Improve error message.
13699         (linux_enable_pt): Remove zero buffer size check.
13700         (linux_enable_btrace): Improve error messages.  Remove NULL return
13701         check.
13702
13703 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13704
13705         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13706         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13707         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13708         (linux_supports_pt, linux_supports_btrace): Remove.
13709         (linux_enable_bts): Call cpu_supports_bts.
13710         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13711         * remote.c (remote_supports_btrace): Remove.
13712         (init_remote_ops): Remove remote_supports_btrace.
13713         * target-delegates.c: Regenerated.
13714         * target.c (target_supports_btrace): Remove.
13715         * target.h (target_ops) <to_supports_btrace>: Remove
13716         (target_supports_btrace): Remove.
13717         * x86-linux-nat.c (x86_linux_create_target): Remove
13718         linux_supports_btrace.
13719
13720 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13721
13722         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13723         btrace failed.
13724         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13725         exception and use message in own exception.
13726
13727 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13728
13729         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13730         (perf_event_pt_event_type): Use gdb_file_up.
13731         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13732         scoped_fd, and scoped_mmap.
13733
13734 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13735
13736         * common/scoped_mmap.h: New.
13737         * unittests/scoped_mmap-selftest.c: New.
13738         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13739         unittests/scoped_mmap-selftest.c.
13740
13741 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13742
13743         * common/scoped_fd.h: New.
13744         * unittests/scoped_fd-selftest.c: New.
13745         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13746         unittests/scoped_fd-selftest.c.
13747
13748 2018-02-09  Tom Tromey  <tom@tromey.com>
13749
13750         * auto-load.c (auto_load_section_scripts): Use
13751         gdb::unique_xmalloc_ptr.
13752
13753 2018-02-09  Tom Tromey  <tom@tromey.com>
13754
13755         * auto-load.c (execute_script_contents): Use std::string.
13756
13757 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13758
13759         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13760         Python function, rather than a new command.
13761
13762 2018-02-08  Tom Tromey  <tom@tromey.com>
13763
13764         * solib.c (solib_find_1): Use std::string.
13765         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13766
13767 2018-02-08  Tom Tromey  <tom@tromey.com>
13768
13769         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13770
13771 2018-02-08  Tom Tromey  <tom@tromey.com>
13772
13773         * source.c (find_source_lines): Use gdb::def_vector.
13774
13775 2018-02-08  Tom Tromey  <tom@tromey.com>
13776
13777         * macrocmd.c (struct temporary_macro_definition): New.
13778         (macro_define_command): Use temporary_macro_definition.  Remove
13779         cleanups.
13780         (free_macro_definition_ptr): Remove.
13781
13782 2018-02-08  Tom Tromey  <tom@tromey.com>
13783
13784         * macroexp.c (maybe_expand): Use std::string.
13785
13786 2018-02-08  Tom Tromey  <tom@tromey.com>
13787
13788         * macroexp.c (struct macro_buffer): Add initializers for some
13789         members.
13790         (init_buffer, init_shared_buffer, free_buffer)
13791         (free_buffer_return_text): Remove.
13792         (macro_buffer): New constructors.
13793         (~macro_buffer): New destructor.
13794         (macro_buffer::set_shared): New method.
13795         (macro_buffer::resize_buffer, macro_buffer::appendc)
13796         (macro_buffer::appendmem): Now methods, not free functions.
13797         (set_token, append_tokens_without_splicing, stringify)
13798         (macro_stringify): Update.
13799         (gather_arguments): Change return type.  Remove argc_p argument,
13800         add args_ptr argument.  Use std::vector.
13801         (substitute_args): Remove argc argument.  Accept std::vector.
13802         (expand): Update.  Use std::vector.
13803         (scan, macro_expand, macro_expand_next): Update.
13804
13805 2018-02-08  Tom Tromey  <tom@tromey.com>
13806
13807         * symtab.c (default_collect_symbol_completion_matches_break_on):
13808         Use unique_xmalloc_ptr.
13809         * macroscope.h: (sal_macro_scope, user_macro_scope)
13810         (default_macro_scope): Return unique_xmalloc_ptr.
13811         * macroscope.c (sal_macro_scope, user_macro_scope)
13812         (default_macro_scope): Return unique_xmalloc_ptr.
13813         * macroexp.h (macro_expand, macro_expand_once): Return
13814         unique_xmalloc_ptr.
13815         * macroexp.c (macro_expand, macro_expand_once): Return
13816         unique_xmalloc_ptr.
13817         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13818         (info_macro_command, info_macros_command): Use
13819         unique_xmalloc_ptr.
13820         * compile/compile-c-support.c (write_macro_definitions): Use
13821         unique_xmalloc_ptr.
13822         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13823
13824 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13825
13826         * value.c (value_static_field): Assign field type instead of
13827         containing type when returning an optimized out value.
13828
13829 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13830
13831         * ft32-tdep.c (ft32_read_pc): Remove.
13832         (ft32_write_pc): Remove.
13833         (ft32_gdbarch_init): Update.
13834         * m32r-tdep.c (m32r_read_pc): Remove.
13835         (m32r_gdbarch_init): Update.
13836         * mep-tdep.c (mep_read_pc): Remove.
13837         (mep_gdbarch_init): Update.
13838         * microblaze-tdep.c (microblaze_write_pc): Remove.
13839         (microblaze_gdbarch_init): Update.
13840         * mn10300-tdep.c (mn10300_read_pc): Remove.
13841         (mn10300_write_pc): Remove.
13842         (mn10300_gdbarch_init): Update.
13843         * moxie-tdep.c (moxie_read_pc): Remove.
13844         (moxie_write_pc): Remove.
13845         (moxie_gdbarch_init): Update.
13846
13847 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13848
13849         * expprint.c (print_subexp_standard): Handle
13850         OP_F77_UNDETERMINED_ARGLIST.
13851         (dump_subexp_body_standard): Likewise.
13852
13853 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13854
13855         * target-descriptions.c (tdesc_element_visitor) Add empty
13856         implementations.
13857         (tdesc_type): Move make_gdb_type from here.
13858         (tdesc_type_builtin): Likewise.
13859         (tdesc_type_vector): Likewise.
13860         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13861         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13862         (make_gdb_type_union): Likewise.
13863         (make_gdb_type_flags): Likewise.
13864         (make_gdb_type_enum): Likewise.
13865         (make_gdb_type): New function.
13866         (tdesc_register_type): Use static make_gdb_type.
13867
13868 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13869
13870         * infcmd.c (default_print_one_register_info): Align natural-format
13871         column values consistently one under another.
13872         (pad_to_column): New function.
13873
13874 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13875
13876         * dwarf2read.c (dwarf2_physname): Move commment.
13877
13878 2018-02-01  Leszek Swirski  <leszeks@google.com>
13879
13880         * varobj.c (varobj_formatted_print_options): Allow recursive
13881         pretty printing if pretty printing is enabled.
13882
13883 2018-02-01  Leszek Swirski  <leszeks@google.com>
13884
13885         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13886         names after a structop as a filename.
13887
13888 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13889
13890         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13891         (arm_record_coproc_data_proc): Likewise.
13892
13893 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13894
13895         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13896
13897 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13898
13899         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13900         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13901
13902 2018-01-31  Pedro Alves  <palves@redhat.com>
13903
13904         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13905         * inflow.c (child_terminal_save_inferior): Wrap reference to
13906         tcgetpgrp in HAVE_TERMIOS_H.
13907         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13908         _WIN32.
13909         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13910         always iterate over all inferiors.
13911         (gdbsim_cntrl_c): Adjust.
13912         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13913
13914 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13915
13916         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13917         index type is objfile-owned if the element type is as well.
13918
13919 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13920
13921         GDB 8.1 released.
13922
13923 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13924
13925         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13926         "features/s390x-linux64.c".
13927         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13928         s390_linux32 and s390x_linux64.
13929         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13930         default tdesc.
13931         * s390-tdep.c: Include "features/s390-linux32.c" and
13932         "features/s390x-linux64.c".
13933         (s390_tdesc_valid): Add check for tdesc_has_registers.
13934         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13935         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13936         tdesc_s390x_linux64.
13937         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13938         tdesc_s390x_linux64 to...
13939         * s390-tdep.h: ...here.
13940
13941 2018-01-30  Pedro Alves  <palves@redhat.com>
13942
13943         PR gdb/13211
13944         * config.in, configure: Regenerate.
13945         * configure.ac: Check for getpgid.
13946         * go32-nat.c (go32_pass_ctrlc): New.
13947         (go32_target): Install it.
13948         * inf-child.c (inf_child_target): Install
13949         child_terminal_save_inferior, child_pass_ctrlc and
13950         child_interrupt.
13951         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13952         (inf_ptrace_target): No longer install it.
13953         * infcmd.c (interrupt_target_1): Adjust.
13954         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13955         (child_interrupt): Declare.
13956         (inferior::terminal_state): New.
13957         * inflow.c (struct terminal_info): Update comments.
13958         (inferior_process_group): Delete.
13959         (terminal_is_ours): Delete.
13960         (gdb_tty_state): New.
13961         (child_terminal_init): Adjust.
13962         (is_gdb_terminal, sharing_input_terminal_1)
13963         (sharing_input_terminal): New functions.
13964         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13965         Set the process's actual process group in the foreground if
13966         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13967         mark terminal as the inferior's if not sharing GDB's terminal.
13968         Don't check attach_flag.
13969         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13970         pass down a target_terminal_state.
13971         (child_terminal_save_inferior): New, factored out from ...
13972         (child_terminal_ours_1): ... this.  Handle
13973         target_terminal_state::is_ours_for_output.
13974         (child_interrupt, child_pass_ctrlc): New.
13975         (inflow_inferior_exit): Clear the inferior's terminal_state.
13976         (copy_terminal_info): Copy the inferior's terminal state.
13977         (_initialize_inflow): Remove reference to terminal_is_ours.
13978         * inflow.h (inferior_process_group): Delete.
13979         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13980         * procfs.c (procfs_target): Don't install procfs_interrupt.
13981         (procfs_interrupt): Delete.
13982         * remote.c (remote_serial_quit_handler): Adjust.
13983         (remote_interrupt): Remove ptid parameter.  Adjust.
13984         * target-delegates.c: Regenerate.
13985         * target.c: Include "terminal.h".
13986         (target_terminal::terminal_state): Rename to ...
13987         (target_terminal::m_terminal_state): ... this.
13988         (target_terminal::init): Adjust.
13989         (target_terminal::inferior): Adjust to per-inferior
13990         terminal_state.
13991         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13992         (target_terminal::ours, target_terminal::ours_for_output): Use
13993         target_terminal_is_ours_kind.
13994         (target_interrupt): Remove ptid parameter.  Adjust.
13995         (default_target_pass_ctrlc): Adjust.
13996         * target.h (target_ops::to_terminal_save_inferior): New field.
13997         (target_ops::to_interrupt): Remove ptid_t parameter.
13998         (target_interrupt): Remove ptid_t parameter.  Update comment.
13999         (target_pass_ctrlc): Update comment.
14000         * target/target.h (target_terminal_state): New scoped enum,
14001         factored out of ...
14002         (target_terminal::terminal_state): ... here.
14003         (target_terminal::inferior): Update comments.
14004         (target_terminal::restore_inferior): New.
14005         (target_terminal::is_inferior, target_terminal::is_ours)
14006         (target_terminal::is_ours_for_output): Adjust.
14007         (target_terminal::scoped_restore_terminal_state): Adjust to
14008         rename, and call restore_inferior() instead of inferior().
14009         (target_terminal::scoped_restore_terminal_state::m_state): Change
14010         type.
14011         (target_terminal::terminal_state): Rename to ...
14012         (target_terminal::m_terminal_state): ... this and change type.
14013
14014 2018-01-30  Pedro Alves  <palves@redhat.com>
14015
14016         * linux-nat.c (wait_for_signal): New function.
14017         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14018         directly.
14019         (async_terminal_is_ours)
14020         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14021         (linux_nat_add_target): Don't override
14022         to_terminal_inferior/to_terminal_ours.
14023
14024 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14025
14026         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14027
14028 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14029
14030         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14031         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14032         dwarf2_per_objfile_free here.
14033         (dwarf2_per_objfile_free): Remove.
14034         (_initialize_dwarf2_read): Don't register
14035         dwarf2_per_objfile_free as a registry cleanup.
14036
14037 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14038
14039         Avoid compilation errors in MinGW native builds
14040
14041         The error is triggered by including python-internal.h, and the
14042         error message is:
14043
14044              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14045                       from build-gnulib/import/math.h:27,
14046                       from d:/usr/Python26/include/pyport.h:235,
14047                       from d:/usr/Python26/include/Python.h:58,
14048                       from python/python-internal.h:94,
14049                       from python/py-arch.c:24:
14050              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14051         using ::hypot;
14052                 ^~~~~
14053
14054         This happens because Python headers define 'hypot' to expand t
14055         '_hypot' in the Windows builds.
14056         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14057         'hypoth'.  This avoids a compilation error.
14058
14059 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14060
14061         * MAINTAINERS (Write After Approval): Fix ordering.
14062
14063 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14064
14065         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14066
14067 2018-01-26  Alan Modra  <amodra@gmail.com>
14068
14069         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14070         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14071         Remove nop.  Make const.  Comment.
14072         (powerpc32_plt_stub_so_2): New.
14073         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14074         Correct count.  Update uses.
14075         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14076         Move common code reading PLT entry word.  Correct
14077         powerpc32_plt_stub PLT address calculation.
14078         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14079         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14080         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14081         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14082         (ppc64_standard_linkage8): Likewise.
14083         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14084         Correct insns description.
14085         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14086
14087 2018-01-24  Pedro Alves  <palves@redhat.com>
14088
14089         GCC PR libstdc++/83906
14090         * gdbtypes.c (operator==(const dynamic_prop &,
14091         const dynamic_prop &)): New.
14092         (operator==(const range_bounds &, const range_bounds &)): New.
14093         (check_types_equal): Use them instead of memcmp.
14094         * gdbtypes.h (operator==(const dynamic_prop &,
14095         const dynamic_prop &)): Declare.
14096         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14097         (operator==(const range_bounds &, const range_bounds &)): Declare.
14098         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14099
14100 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14101
14102         * s390-linux-tdep.c (s390_record_address_mask)
14103         (s390_record_calc_disp_common, s390_record_calc_disp)
14104         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14105         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14106         (s390_process_record): Move to s390-tdep.c.
14107         (s390_linux_init_abi_any): Adjust.
14108         * s390-tdep.c (s390_record_address_mask)
14109         (s390_record_calc_disp_common, s390_record_calc_disp)
14110         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14111         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14112         (s390_process_record): Moved from s390-linux-tdep.c
14113         (s390_gdbarch_init): Adjust.
14114
14115 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14116
14117         * s390-linux-nat.c (s390-tdep.h): New include.
14118         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14119         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14120         (ALLDEPFILES): Add s390-tdep.c.
14121         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14122         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14123         * s390-tdep.h: ...this.  New file.
14124         * s390-linux-tdep.c (s390-tdep.h): New include.
14125         (_initialize_s390_tdep): Rename to...
14126         (_initialize_s390_linux_tdep): ...this and adjust.
14127         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14128         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14129         s390-tdep.h.
14130         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14131         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14132         (s390_is_partial_instruction, s390_software_single_step)
14133         (is_non_branch_ril, s390_displaced_step_copy_insn)
14134         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14135         (s390_prologue_data, s390_addr, s390_store, s390_load)
14136         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14137         (s390_register_call_saved, s390_guess_tracepoint_registers)
14138         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14139         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14140         (s390_pseudo_register_name, s390_pseudo_register_type)
14141         (s390_pseudo_register_read, s390_pseudo_register_write)
14142         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14143         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14144         (s390_addr_bits_remove, s390_address_class_type_flags)
14145         (s390_address_class_type_flags_to_name)
14146         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14147         (s390_function_arg_float, s390_function_arg_vector)
14148         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14149         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14150         (s390_frame_align, s390_register_return_value, s390_return_value)
14151         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14152         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14153         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14154         (s390_trad_frame_prev_register, s390_unwind_cache)
14155         (s390_prologue_frame_unwind_cache)
14156         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14157         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14158         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14159         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14160         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14161         (s390_frame_base_address, s390_local_base_address)
14162         (s390_frame_base, s390_gcc_target_options)
14163         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14164         (s390_validate_reg_range, s390_tdesc_valid)
14165         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14166         * s390-tdep.c: ...this.  New file.
14167
14168 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14169
14170         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14171         (s390_process_record, s390_gdbarch_tdep_alloc)
14172         (s390_linux_init_abi_any): Use/set new hook.
14173
14174 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14175
14176         * s390-linux-tdep.c (osabi.h): New include.
14177         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14178         (s390_linux_init_abi_any): New functions.
14179         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14180
14181 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14182
14183         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14184         tdesc_has_registers check
14185
14186 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14187
14188         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14189         (s390_validate_reg_range): New macro.
14190         (s390_gdbarch_init): Adjust.
14191
14192 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14193
14194         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14195         (s390_gdbarch_tdep_alloc): Adjust.
14196         (s390_gdbarch_init): Adjust.
14197
14198 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14199
14200         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14201         <have_tdb>: Change type to bool.
14202         (s390_gdbarch_tdep_alloc): Adjust.
14203         (s390_gdbarch_init): Adjust.
14204
14205 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14206
14207         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14208         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14209         (s390_gdbarch_tdep_alloc): New function.
14210         (s390_gdbarch_init): Allocate tdep at start and use its fields
14211         instead of separate variables.
14212
14213 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14214
14215         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14216         when looking for cached gdbarch and add comment for remaining.
14217
14218 2018-01-22  Pedro Alves  <palves@redhat.com>
14219             Sergio Durigan Junior  <sergiodj@redhat.com>
14220
14221         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14222         case.
14223
14224 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14225
14226         * MAINTAINERS: Update my company e-mail address.
14227
14228 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14229
14230         * regcache.c (cooked_write_test): New function.
14231         (_initialize_regcache): Register the test.
14232
14233 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14234
14235         * ia64-tdep.c (ia64_pseudo_register_read): Call
14236         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14237         * m32c-tdep.c (m32c_cat_read): Likewise.
14238         (m32c_r3r2r1r0_read): Likewise.
14239         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14240         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14241
14242 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14243
14244         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14245         method raw_read instead of regcache_raw_read.
14246         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14247         * arm-tdep.c (arm_neon_quad_read): Likewise.
14248         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14249         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14250         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14251         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14252         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14253         (i386_pseudo_register_read_into_value): Likewise.
14254         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14255         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14256         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14257         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14258         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14259         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14260         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14261         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14262         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14263
14264 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14265
14266         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14267         * configure.tgt: Remove target mt.
14268         * mt-tdep.c: Remove.
14269         * regcache.c (cooked_read_test): Remove the check for mt.
14270
14271 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14272
14273         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14274         instead of gdbarch_pseudo_register_read_value.
14275
14276 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14277
14278         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14279         language is Ada.
14280
14281 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14282
14283         * linespec.c (create_sals_line_offset): Remove code that preserved
14284         the symtab_and_line's line number.
14285
14286 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14287
14288         * varobj.c (varobj_create): Don't set valid_block when creating a
14289         floating varobj.
14290
14291 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14292
14293         * varobj.c (varobj_create): Remove out of date comment.
14294
14295 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14296
14297         PR mi/20395
14298         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14299         updating innermost block.
14300         * parse.c (innermost_block_tracker::update): Take extra type
14301         parameter, and check types match before updating innermost block.
14302         (write_dollar_variable): Update innermost block for registers.
14303         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14304         (innermost_block_tracker::innermost_block_tracker): Initialise
14305         m_types member.
14306         (innermost_block_tracker::reset): Take type parameter.
14307         (innermost_block_tracker::update): Take type parameter, and pass
14308         type through as needed.
14309         (innermost_block_tracker::m_types): New member.
14310         * varobj.c (varobj_create): Pass type when reseting innermost
14311         block.
14312
14313 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14314
14315         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14316         * ada-lang.c (resolve_subexp): Likewise.
14317         * breakpoint.c (set_breakpoint_condition) Likewise.
14318         (watch_command_1) Likewise.
14319         * c-exp.y (variable): Likewise.
14320         * d-exp.y (PrimaryExpression): Likewise.
14321         * f-exp.y (variable): Likewise.
14322         * go-exp.y (variable): Likewise.
14323         * m2-exp.y (variable): Likewise.
14324         * objfiles.c (objfile::~objfile): Likewise.
14325         * p-exp.y (variable): Likewise.
14326         * parse.c (innermost_block): Change type.
14327         * parser-defs.h (class innermost_block_tracker): New.
14328         (innermost_block): Change to innermost_block_tracker.
14329         * printcmd.c (display_command): Switch to innermost_block API.
14330         (do_one_display): Likewise.
14331         * rust-exp.y (do_one_display): Likewise.
14332         * symfile.c (clear_symtab_users): Likewise.
14333         * varobj.c (varobj_create): Switch to innermost_block API, replace
14334         use of innermost_block with block stored on varobj object.
14335
14336 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14337
14338         * expression.h (innermost_block): Remove declaration.
14339         * varobj.c: Add 'parser-defs.h' include.
14340
14341 2018-01-19  Tom Tromey  <tom@tromey.com>
14342
14343         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14344         symbols in the static and global blocks.
14345
14346 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14347
14348         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14349         gdb_ptrace.h, and move including gdb_wait.h ...
14350         * nat/linux-ptrace.h: ... to here.
14351
14352 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14353
14354         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14355         inf_ptrace_detach_success.
14356         (inf_ptrace_detach_success): Add inferior parameter, use it
14357         instead of inferior_ptid, pass it to detach_inferior.
14358         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14359         parameter.
14360         * inferior.c (detach_inferior): Add overload that takes an
14361         inferior object.
14362         * inferior.h (detach_inferior): Likewise.
14363         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14364         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14365         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14366
14367 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14368
14369         * target.h (struct target_ops) <to_detach>: Add inferior
14370         parameter.
14371         (target_detach): Likewise.
14372         * target.c (dispose_inferior): Pass inferior down.
14373         (target_detach): Pass inferior down.  Assert that it is equal to
14374         the current inferior.
14375         * aix-thread.c (aix_thread_detach): Pass inferior down.
14376         * corefile.c (core_file_command): Pass current_inferior() down.
14377         * corelow.c (core_detach): Add inferior parameter.
14378         * darwin-nat.c (darwin_detach): Likewise.
14379         * gnu-nat.c (gnu_detach): Likewise.
14380         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14381         * infcmd.c (detach_command): Pass current_inferior() down to
14382         target_detach.
14383         * infrun.c (follow_fork_inferior): Pass parent_inf to
14384         target_detach.
14385         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14386         target_detach.
14387         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14388         * linux-thread-db.c (thread_db_detach): Likewise.
14389         * nto-procfs.c (procfs_detach): Likewise.
14390         * procfs.c (procfs_detach): Likewise.
14391         * record.c (record_detach): Likewise.
14392         * record.h (struct inferior): Forward-declare.
14393         (record_detach): Add inferior parameter.
14394         * remote-sim.c (gdbsim_detach): Likewise.
14395         * remote.c (remote_detach_1): Likewise.
14396         (remote_detach): Likewise.
14397         (extended_remote_detach): Likewise.
14398         * sol-thread.c (sol_thread_detach): Likewise.
14399         * target-debug.h (target_debug_print_inferior_p): New macro.
14400         * target-delegates.c: Re-generate.
14401         * top.c (kill_or_detach): Pass inferior down to target_detach.
14402         * windows-nat.c (windows_detach): Add inferior parameter.
14403
14404 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14405
14406         * target.h (struct target_ops) <to_detach>: Remove args
14407         parameter.
14408         (target_detach): Likewise.
14409         * target.c (dispose_inferior): Adjust.
14410         (target_detach): Remove args parameter, adjust.
14411         * aix-thread.c (aix_thread_detach): Adjust.
14412         * corefile.c (core_file_command): Adjust.
14413         * corelow.c (core_detach): Adjust.
14414         * darwin-nat.c (darwin_detach): Adjust.
14415         * gnu-nat.c (gnu_detach): Adjust.
14416         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14417         * infcmd.c (detach_command): Adjust
14418         * infrun.c (follow_fork_inferior): Adjust.
14419         (handle_vfork_child_exec_or_exit): Adjust.
14420         * linux-fork.c (linux_fork_detach): Remove args parameter.
14421         * linux-fork.h (linux_fork_detach): Likewise.
14422         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14423         * linux-thread-db.c (thread_db_detach): Likewise.
14424         * nto-procfs.c (procfs_detach): Likewise.
14425         * procfs.c (procfs_detach): Likewise.
14426         (do_detach): Remove signo parameter.
14427         * record.c (record_detach): Remove args parameter.
14428         * record.h (record_detach): Likewise.
14429         * remote-sim.c (gdbsim_detach): Likewise.
14430         * remote.c (remote_detach_1): Likewise.
14431         (remote_detach): Likewise.
14432         (extended_remote_detach): Likewise.
14433         * sol-thread.c (sol_thread_detach): Likewise.
14434         * target-delegates.c: Re-generate.
14435         * top.c (struct qt_args) <args>: Remove field.
14436         (kill_or_detach): Don't pass args.
14437         (quit_force): Don't set args.
14438         * windows-nat.c (windows_detach): Remove args parameter.
14439
14440 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14441
14442         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14443         (arm_linux_init_abi): Install it.
14444
14445 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14446
14447         * osabi.c (gdb_osabi_names): Extend the regexp for
14448         arm-linux-gnueabihf.
14449
14450 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14451
14452         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14453         m_abbrevs.
14454         (abbrev_table::add_abbrev): Update.
14455         (abbrev_table::lookup_abbrev): Update.
14456
14457 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14458
14459         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14460
14461 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14462
14463         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14464         to "std::string".
14465
14466 2018-01-17  Tom Tromey  <tom@tromey.com>
14467
14468         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14469
14470 2018-01-17  Tom Tromey  <tom@tromey.com>
14471
14472         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14473         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14474         (create_array_type_with_stride): Update.
14475         * dwarf2read.c (set_die_type): Update.
14476
14477 2018-01-17  Tom Tromey  <tom@tromey.com>
14478
14479         * dwarf2read.c (delayed_method_info): Remove typedef.
14480         (dwarf2_cu::method_info): Now a std::vector.
14481         (add_to_method_list): Update.
14482         (free_delayed_list): Remove.
14483         (compute_delayed_physnames): Update.
14484         (process_full_comp_unit, process_full_type_unit): Clear the method
14485         list.  Remove cleanups.
14486         (psymtab_include_file_name): Add name_holder parameter.  Use
14487         unique_xmalloc_ptr.
14488         (dwarf_decode_lines): Update.
14489
14490 2018-01-17  Tom Tromey  <tom@tromey.com>
14491             Simon Marchi  <simon.marchi@ericsson.com>
14492
14493         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14494         (dwarf2_per_objfile::free_cached_comp_units)
14495         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14496         (init_cutu_and_read_dies_no_follow): Update.
14497         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14498         (dwarf2_cu::~dwarf2_cu): New.
14499         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14500         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14501
14502 2018-01-17  Tom Tromey  <tom@tromey.com>
14503             Simon Marchi  <simon.marchi@ericsson.com>
14504
14505         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14506         (struct die_reader_specs) <abbrev_table>: New member.
14507         (struct abbrev_table): Add constructor.
14508         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14509         <abbrev_obstack>: Now an auto_obstack.
14510         (abbrev_table_up): New typedef.
14511         (init_cu_die_reader): Add abbrev_table parameter.
14512         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14513         Add result_dwo_abbrev_table.
14514         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14515         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14516         Update.
14517         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14518         parameter.
14519         (skip_children): Update.
14520         (abbrev_table::alloc_abbrev): Rename from
14521         abbrev_table_alloc_abbrev.
14522         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14523         (abbrev_table::lookup_abbrev): Rename from
14524         abbrev_table_lookup_abbrev.
14525         (abbrev_table_read_table): Return abbrev_table_up.
14526         (abbrev_table_free, abbrev_table_free_cleanup)
14527         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14528         (load_partial_dies): Update.
14529
14530 2018-01-17  Tom Tromey  <tom@tromey.com>
14531
14532         * dwarf2read.c (dwarf2_compute_name): Update comment.
14533         (read_func_scope, read_variable): Update.
14534         (new_symbol): Remove.
14535         (new_symbol_full): Rename to new_symbol.
14536
14537 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14538
14539         PR gdb/16577
14540         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14541         a warning instead of throwing an error, set section size to 0 and return
14542         NULL.
14543         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14544
14545 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14546
14547         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14548         std::string.
14549         (linux_ptrace_attach_fail_reason_string): Likewise.
14550         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14551         Likewise.
14552         (linux_ptrace_attach_fail_reason_string): Likewise.
14553         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14554
14555 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14556
14557         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14558
14559 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14560
14561         PR gdb/21559
14562         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14563         checking for fs_base/gs_base fields in struct user_regs_struct.
14564         * configure: Regenerate.
14565
14566 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14567
14568         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14569         function.
14570         (aarch64_linux_init_abi): Install it to gdbarch hook
14571         gcc_target_options.
14572
14573 2018-01-15  Pedro Alves  <palves@redhat.com>
14574
14575         * common/signals-state-save-restore.c
14576         (save_original_signals_state): Fix typos.
14577
14578 2017-01-12  Tom Tromey  <tom@tromey.com>
14579             Sergio Durigan Junior  <sergiodj@redhat.com>
14580
14581         * Makefile.in (install-only): Install gdb-add-index.
14582
14583 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14584
14585         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14586
14587 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14588
14589         * infrun.c (keep_going_pass_signal): Clear step-over info when
14590         insert_breakpoints fails.
14591
14592 2018-01-11  Pedro Alves  <palves@redhat.com>
14593
14594         PR gdb/22583
14595         * infrun.c (resume): Rename to ...
14596         (resume_1): ... this.
14597         (resume): Reimplement as wrapper around resume_1.
14598
14599 2018-01-11  Pedro Alves  <palves@redhat.com>
14600
14601         PR remote/22597
14602         * remote.c (remote_parse_stop_reply): Default to the last-set
14603         general thread instead of to 'magic_null_ptid'.
14604
14605 2018-01-10  Pedro Alves  <palves@redhat.com>
14606
14607         * language.h (language_get_symbol_name_matcher): Rename ...
14608         (get_symbol_name_matcher): ... this.
14609         * language.c (language_get_symbol_name_matcher): Ditto.
14610         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14611         callers adjusted.
14612
14613 2018-01-10  Pedro Alves  <palves@redhat.com>
14614
14615         PR gdb/22670
14616         * dwarf2read.c
14617         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14618         Adjust to use language_get_symbol_name_matcher instead of
14619         language_defn::la_get_symbol_name_matcher.
14620         * language.c (language_get_symbol_name_matcher): If in Ada mode
14621         and the lookup name is a verbatim match, return Ada's matcher.
14622         * language.h (language_get_symbol_name_matcher): Adjust comment.
14623         (ada_lookup_name_info::verbatim_p):: New method.
14624
14625 2018-01-10  Pedro Alves  <palves@redhat.com>
14626
14627         PR gdb/22670
14628         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14629         minsym's language is language_auto or language_cplus, pass down
14630         language_ada instead.
14631         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14632
14633 2018-01-10  Pedro Alves  <palves@redhat.com>
14634
14635         PR gdb/22670
14636         * minsyms.c (linkage_name_str): New function.
14637         (iterate_over_minimal_symbols): Use it.
14638
14639 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14640
14641         * NEWS: Document that 'info proc' now works on FreeBSD.
14642
14643 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14644
14645         * configure.ac: Check for kinfo_getfile in libutil.
14646         * configure: Regenerate.
14647         * config.in: Regenerate.
14648         * fbsd-nat.c: Include "fbsd-tdep.h".
14649         (fbsd_fetch_cmdline): New.
14650         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14651         rather than calling error.
14652         (fbsd_info_proc): New.
14653         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14654         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14655         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14656
14657 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14658
14659         * fbsd-nat.c (struct free_deleter): Remove.
14660         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14661
14662 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14663
14664         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14665         NULL for an empty pathname.
14666
14667 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14668
14669         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14670         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14671         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14672         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14673         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14674         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14675         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14676         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14677         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14678         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14679         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14680         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14681         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14682         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14683         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14684
14685 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14686
14687         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14688         (gnu_xfer_auxv): New function.
14689         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14690         TARGET_OBJECT_AUXV.
14691
14692 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14693             Simon Marchi  <simon.marchi@ericsson.com>
14694
14695         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14696         common/selftest.c.
14697         (COMMON_OBS): Remove selftest.o.
14698         * configure.ac: Append selftest-arch.c and common/selftest.c to
14699         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14700         * configure: Re-generated.
14701         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14702         GDB_SELF_TEST.
14703         (maintenance_info_selftests): Likewise.
14704
14705 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14706
14707         * ada-valprint.c (val_print_packed_array_elements): Use
14708         proper number of elements when printing an array indexed
14709         by an enumeration type.
14710
14711 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14712
14713         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14714         (dw2_get_file_names_reader): Adjust.
14715         (lookup_dwo_signatured_type): Adjust.
14716         (lookup_dwp_signatured_type): Adjust.
14717         (lookup_signatured_type): Adjust.
14718         (create_type_unit_group): Adjust.
14719         (get_type_unit_group): Adjust.
14720         (process_psymtab_comp_unit_reader): Adjust.
14721         (build_type_psymtabs_reader): Adjust.
14722         (scan_partial_symbols): Adjust.
14723         (add_partial_symbol): Adjust.
14724         (add_partial_subprogram): Adjust.
14725         (peek_die_abbrev): Adjust.
14726         (fixup_go_packaging): Adjust.
14727         (process_imported_unit_die): Adjust.
14728         (dwarf2_compute_name): Adjust.
14729         (dwarf2_physname): Adjust.
14730         (read_import_statement): Adjust.
14731         (handle_DW_AT_stmt_list): Adjust.
14732         (read_file_scope): Adjust.
14733         (read_func_scope): Adjust.
14734         (read_lexical_block_scope): Adjust.
14735         (read_call_site_scope): Adjust.
14736         (read_variable): Adjust.
14737         (dwarf2_rnglists_process): Adjust.
14738         (dwarf2_ranges_process): Adjust.
14739         (dwarf2_ranges_read): Adjust.
14740         (dwarf2_get_pc_bounds): Adjust.
14741         (dwarf2_record_block_ranges): Adjust.
14742         (dwarf2_add_field): Adjust.
14743         (dwarf2_add_member_fn): Adjust.
14744         (read_structure_type): Adjust.
14745         (process_structure_scope): Adjust.
14746         (read_enumeration_type): Adjust.
14747         (read_array_type): Adjust.
14748         (mark_common_block_symbol_computed): Adjust.
14749         (read_common_block): Adjust.
14750         (read_namespace_type): Adjust.
14751         (read_namespace): Adjust.
14752         (read_module_type): Adjust.
14753         (read_tag_pointer_type): Adjust.
14754         (read_tag_ptr_to_member_type): Adjust.
14755         (read_tag_string_type): Adjust.
14756         (read_subroutine_type): Adjust.
14757         (read_typedef): Adjust.
14758         (read_base_type): Adjust.
14759         (attr_to_dynamic_prop): Adjust.
14760         (read_subrange_type): Adjust.
14761         (read_unspecified_type): Adjust.
14762         (dwarf2_read_abbrevs): Adjust.
14763         (load_partial_dies): Adjust.
14764         (read_partial_die): Adjust.
14765         (find_partial_die): Adjust.
14766         (guess_partial_die_structure_name): Adjust.
14767         (fixup_partial_die): Adjust.
14768         (read_attribute_value): Adjust.
14769         (read_addr_index): Adjust.
14770         (read_addr_index_from_leb128): Adjust.
14771         (read_str_index): Adjust.
14772         (dwarf2_string_attr): Adjust.
14773         (get_debug_line_section): Adjust.
14774         (dwarf_decode_line_header): Adjust.
14775         (lnp_state_machine::check_line_address): Adjust.
14776         (dwarf_decode_lines_1): Adjust.
14777         (dwarf_decode_lines): Adjust.
14778         (dwarf2_start_symtab): Adjust.
14779         (var_decode_location): Adjust.
14780         (new_symbol_full): Adjust.
14781         (dwarf2_const_value_data): Adjust.
14782         (dwarf2_const_value_attr): Adjust.
14783         (dwarf2_const_value): Adjust.
14784         (die_type): Adjust.
14785         (die_containing_type): Adjust.
14786         (build_error_marker_type): Adjust.
14787         (lookup_die_type): Adjust.
14788         (guess_full_die_structure_name): Adjust.
14789         (anonymous_struct_prefix): Adjust.
14790         (determine_prefix): Adjust.
14791         (dwarf2_name): Adjust.
14792         (follow_die_ref_or_sig): Adjust.
14793         (follow_die_offset): Adjust.
14794         (follow_die_ref): Adjust.
14795         (follow_die_sig_1): Adjust.
14796         (follow_die_sig): Adjust.
14797         (get_signatured_type): Adjust.
14798         (get_DW_AT_signature_type): Adjust.
14799         (decode_locdesc): Adjust.
14800         (dwarf_decode_macros): Adjust.
14801         (cu_debug_loc_section): Adjust.
14802         (fill_in_loclist_baton): Adjust.
14803         (dwarf2_symbol_mark_computed): Adjust.
14804         (init_one_comp_unit): Don't assign
14805         dwarf2_cu::dwarf2_per_objfile.
14806         (set_die_type): Adjust.
14807
14808 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14809
14810         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14811         <dwarf2_per_objfile>: New field.
14812         (dwarf2_per_objfile): Remove global.
14813         (get_dwarf2_per_objfile): New function.
14814         (set_dwarf2_per_objfile): New function.
14815         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14816         dwarf2_per_objfile.
14817         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14818         (read_abbrev_offset): Likewise.
14819         (read_indirect_string): Likewise.
14820         (read_indirect_line_string): Likewise.
14821         (read_indirect_string_at_offset): Likewise.
14822         (read_indirect_string_from_dwz): Likewise.
14823         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14824         dwarf2_per_objfile.
14825         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14826         (create_all_comp_units): Change objfile parameter to
14827         dwarf2_per_objfile.
14828         (create_all_type_units): Likewise.
14829         (process_queue): Add dwarf2_per_objfile parameter.
14830         (read_and_check_comp_unit_head): Likewise.
14831         (lookup_dwo_unit_in_dwp): Likewise.
14832         (get_dwp_file): Likewise.
14833         (process_cu_includes): Likewise.
14834         (struct free_dwo_file_cleanup_data): New struct.
14835         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14836         set_dwarf2_per_objfile.
14837         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14838         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14839         context, adjust calls.
14840         (dw2_instantiate_symtab): Likewise.
14841         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14842         (dw2_get_cu): Likewise.
14843         (create_cu_from_index_list): Change objfile parameter to
14844         dwarf2_per_objfile.
14845         (create_cus_from_index_list): Get dwarf2_per_objfile from
14846         context, adjust calls.
14847         (create_cus_from_index): Likewise.
14848         (create_signatured_type_table_from_index): Change objfile
14849         parameter to dwarf2_per_objfile.
14850         (create_signatured_type_table_from_debug_names): Change objfile
14851         parameter to dwarf2_per_objfile.
14852         (create_addrmap_from_index): Likewise.
14853         (create_addrmap_from_aranges): Likewise.
14854         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14855         (dw2_setup): Remove.
14856         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14857         context.
14858         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14859         get_dwarf2_per_objfile.
14860         (dw2_forget_cached_source_info): Likewise.
14861         (dw2_map_symtabs_matching_filename): Likewise.
14862         (struct dw2_symtab_iterator) <index>: Remove.
14863         <dwarf2_per_objfile>: New field.
14864         (dw2_symtab_iter_init): Replace index parameter with
14865         dwarf2_per_objfile.
14866         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14867         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14868         (dw2_print_stats): Likewise.
14869         (dw2_dump): Likewise.
14870         (dw2_expand_symtabs_for_function): Likewise.
14871         (dw2_expand_all_symtabs): Likewise.
14872         (dw2_expand_symtabs_with_fullname): Likewise.
14873         (dw2_expand_marked_cus): Replace index and objfile parameters
14874         with dwarf2_per_objfile.
14875         (dw_expand_symtabs_matching_file_matcher): Add
14876         dwarf2_per_objfile parameter and adjust calls.
14877         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14878         adjust calls.
14879         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14880         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14881         adjust calls.
14882         (create_cus_from_debug_names_list): Replace objfile parameter
14883         with dwarf2_per_objfile and adjust calls.
14884         (create_cus_from_debug_names): Likewise.
14885         (dwarf2_read_debug_names): Likewise.
14886         (mapped_debug_names::namei_to_name): Adjust call.
14887         (dw2_debug_names_iterator::next): Likewise.
14888         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14889         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14890         (dw2_debug_names_dump): Likewise.
14891         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14892         (dw2_debug_names_expand_symtabs_matching): Likewise.
14893         (dwarf2_initialize_objfile): Likewise.
14894         (dwarf2_build_psymtabs): Likewise.
14895         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14896         this_cu.
14897         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14898         (read_and_check_comp_unit_head): Likewise.
14899         (read_abbrev_offset): Likewise.
14900         (create_debug_type_hash_table): Likewise.
14901         (create_debug_types_hash_table): Likewise.
14902         (create_all_type_units): Replace objfile parameter with
14903         dwarf2_per_objfile.
14904         (add_type_unit): Add dwarf2_per_objfile parameter.
14905         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14906         with dwarf2_per_objfile.
14907         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14908         (lookup_dwp_signatured_type): Likewise.
14909         (lookup_signatured_type): Likewise.
14910         (read_cutu_die_from_dwo): Likewise.
14911         (init_tu_and_read_dwo_dies): Likewise.
14912         (init_cutu_and_read_dies): Likewise.
14913         (init_cutu_and_read_dies_no_follow): Likewise.
14914         (allocate_type_unit_groups_table): Add objfile parameter.
14915         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14916         (get_type_unit_group): Likewise.
14917         (process_psymtab_comp_unit): Update call.
14918         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14919         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14920         (print_tu_stats): Likewise.
14921         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14922         in void* parameter.
14923         (build_type_psymtabs): Change objfile parameter to
14924         dwarf2_per_objfile.
14925         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14926         passed in void* parameter.
14927         (process_skeletonless_type_units): Change objfile parameter to
14928         dwarf2_per_objfile.
14929         (set_partial_user): Likewise.
14930         (dwarf2_build_psymtabs_hard): Likewise.
14931         (read_comp_units_from_section): Likewise.
14932         (create_all_comp_units): Likewise.
14933         (scan_partial_symbols): Update calls.
14934         (add_partial_symbol): Likewise.
14935         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14936         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14937         (process_queue): Add dwarf2_per_objfile parameter.
14938         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14939         (compute_compunit_symtab_includes): Likewise.
14940         (process_cu_includes): Add dwarf2_per_objfile parameter.
14941         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14942         (process_full_type_unit): Likewise.
14943         (process_imported_unit_die): Update call.
14944         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14945         (read_file_scope): Likewise.
14946         (allocate_dwo_file_hash_table): Add objfile parameter.
14947         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14948         (create_cus_hash_table): Likewise.
14949         (create_dwp_hash_table): Likewise.
14950         (create_dwo_unit_in_dwp_v1): Likewise.
14951         (create_dwp_v2_section): Likewise.
14952         (create_dwo_unit_in_dwp_v2): Likewise.
14953         (lookup_dwo_unit_in_dwp): Likewise.
14954         (try_open_dwop_file): Likewise.
14955         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14956         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14957         cleanup to include a reference to dwarf2_per_objfile.
14958         (open_dwp_file): Add dwarf2_per_objfile parameter.
14959         (open_and_init_dwp_file): Likewise.
14960         (get_dwp_file): Likewise.
14961         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14962         (queue_and_load_all_dwo_tus): Update call.
14963         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14964         data.
14965         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14966         (dwarf2_ranges_process): Likewise.
14967         (dwarf2_get_pc_bounds): Likewise.
14968         (mark_common_block_symbol_computed): Likewise.
14969         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14970         (dwarf2_read_abbrevs): Update call.
14971         (read_partial_die): Use dwarf2_per_objfile from cu.
14972         (find_partial_die): Likewise.
14973         (fixup_partial_die): Likewise.
14974         (read_attribute_value): Likewise.
14975         (read_indirect_string_at_offset_from): Add objfile parameter.
14976         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14977         parameter.
14978         (read_indirect_string_from_dwz): Add objfile parameter.
14979         (read_indirect_string): Add objfile parameter.
14980         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14981         (read_addr_index): Use dwarf2_per_objfile from cu.
14982         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14983         call dw2_setup.
14984         (read_str_index): Use dwarf2_per_objfile from cu.
14985         (get_debug_line_section): Likewise.
14986         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14987         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14988         (new_symbol_full): Use dwarf2_per_objfile from cu.
14989         (build_error_marker_type): Likewise.
14990         (lookup_die_type): Likewise.
14991         (determine_prefix): Likewise.
14992         (follow_die_offset): Likewise.
14993         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14994         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14995         (dwarf2_fetch_die_type_sect_off): Likewise.
14996         (dwarf2_get_die_type): Likewise.
14997         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14998         (get_signatured_type): Likewise.
14999         (get_DW_AT_signature_type): Likewise.
15000         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15001         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15002         (cu_debug_loc_section): Likewise.
15003         (fill_in_loclist_baton): Likewise.
15004         (dwarf2_symbol_mark_computed): Likewise.
15005         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15006         dwarf2_per_objfile.
15007         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15008         parameter.
15009         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15010         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15011         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15012         (set_die_type): Use dwarf2_free_objfile from cu.
15013         (get_die_type_at_offset): Likewise.
15014         (dwarf2_per_objfile_free): Don't assign global variable.
15015         (debug_names) <constructor>: Add dwarf2_per_objfile
15016         parameter, update m_debugstrlookup construction.
15017         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15018         parameter.
15019         <m_dwarf2_per_objfile>: New field.
15020         <lookup>: Use m_dwarf2_per_objfile.
15021         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15022         (psyms_seen_size): Likewise.
15023         (write_gdbindex): Replace objfile parameter with
15024         dwarf2_per_objfile.
15025         (write_debug_names): Likewise.
15026         (write_psymtabs_to_index): Likewise.
15027         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15028         calls.
15029
15030 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15031
15032         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15033         <dwarf2_per_objfile>: New field.
15034         (struct dwarf2_per_cu_data) <objfile>: Remove.
15035         <dwarf2_per_objfile>: New field.
15036         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15037         of objfile.
15038         (create_signatured_type_table_from_index): Likewise.
15039         (create_debug_type_hash_table): Likewise.
15040         (fill_in_sig_entry_from_dwo_entry): Likewise.
15041         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15042         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15043         objfile.
15044         (create_partial_symtab): Access objfile through
15045         dwarf2_per_objfile.
15046         (process_psymtab_comp_unit_reader): Likewise.
15047         (read_comp_units_from_section): Likewise.
15048         (scan_partial_symbols): Likewise.
15049         (add_partial_symbol): Likewise.
15050         (add_partial_subprogram): Likewise.
15051         (peek_die_abbrev): Likewise.
15052         (fixup_go_packaging): Likewise.
15053         (process_full_comp_unit): Likewise.
15054         (process_full_type_unit): Likewise.
15055         (process_imported_unit_die): Likewise.
15056         (dwarf2_compute_name): Likewise.
15057         (dwarf2_physname): Likewise.
15058         (read_import_statement): Likewise.
15059         (create_cus_hash_table): Assign dwarf2_physname instead of
15060         objfile.
15061         (read_func_scope): Access objfile through dwarf2_per_objfile.
15062         (read_lexical_block_scope): Likewise.
15063         (read_call_site_scope): Likewise.
15064         (read_variable): Likewise.
15065         (dwarf2_rnglists_process): Likewise.
15066         (dwarf2_ranges_process): Likewise.
15067         (dwarf2_ranges_read): Likewise.
15068         (dwarf2_record_block_ranges): Likewise.
15069         (dwarf2_add_field): Likewise.
15070         (dwarf2_add_member_fn): Likewise.
15071         (read_structure_type): Likewise.
15072         (process_structure_scope): Likewise.
15073         (read_enumeration_type): Likewise.
15074         (read_array_type): Likewise.
15075         (read_common_block): Likewise.
15076         (read_namespace_type): Likewise.
15077         (read_namespace): Likewise.
15078         (read_module_type): Likewise.
15079         (read_tag_pointer_type): Likewise.
15080         (read_tag_ptr_to_member_type): Likewise.
15081         (read_tag_string_type): Likewise.
15082         (read_subroutine_type): Likewise.
15083         (read_typedef): Likewise.
15084         (read_base_type): Likewise.
15085         (attr_to_dynamic_prop): Likewise.
15086         (read_subrange_type): Likewise.
15087         (read_unspecified_type): Likewise.
15088         (load_partial_dies): Likewise.
15089         (read_partial_die): Likewise.
15090         (find_partial_die): Likewise.
15091         (guess_partial_die_structure_name): Likewise.
15092         (fixup_partial_die): Likewise.
15093         (read_attribute_value): Likewise.
15094         (read_addr_index_from_leb128): Likewise.
15095         (dwarf2_read_addr_index): Likewise.
15096         (dwarf2_string_attr): Likewise.
15097         (lnp_state_machine::check_line_address): Likewise.
15098         (dwarf_decode_lines_1): Likewise.
15099         (dwarf_decode_lines): Likewise.
15100         (dwarf2_start_symtab): Likewise.
15101         (var_decode_location): Likewise.
15102         (new_symbol_full): Likewise.
15103         (dwarf2_const_value_data): Likewise.
15104         (dwarf2_const_value_attr): Likewise.
15105         (dwarf2_const_value): Likewise.
15106         (die_type): Likewise.
15107         (die_containing_type): Likewise.
15108         (lookup_die_type): Likewise.
15109         (guess_full_die_structure_name): Likewise.
15110         (anonymous_struct_prefix): Likewise.
15111         (dwarf2_name): Likewise.
15112         (follow_die_ref_or_sig): Likewise.
15113         (follow_die_offset): Likewise.
15114         (follow_die_ref): Likewise.
15115         (dwarf2_fetch_die_loc_sect_off): Likewise.
15116         (dwarf2_fetch_constant_bytes): Likewise.
15117         (dwarf2_fetch_die_type_sect_off): Likewise.
15118         (dwarf2_get_die_type): Likewise.
15119         (follow_die_sig): Likewise.
15120         (decode_locdesc): Likewise.
15121         (dwarf2_per_cu_objfile): Likewise.
15122         (dwarf2_per_cu_text_offset): Likewise.
15123         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15124         objfile.
15125         (set_die_type): Access objfile through
15126         dwarf2_per_objfile.
15127
15128 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15129
15130         * valprint.c (converted_character_d): Remove typedef.
15131         (DEF_VEC_O (converted_character_d)): Remove.
15132         (count_next_character): Use std::vector.
15133         (print_converted_chars_to_obstack): Likewise.
15134         (generic_printstr): Likewise.
15135
15136 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15137
15138         * xml-support.h (struct gdb_xml_value): Add constructor.
15139         <value>: Change type to unique_xmalloc_ptr.
15140         (gdb_xml_value_s): Remove typedef.
15141         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15142         (gdb_xml_element_start_handler): Change parameter type to
15143         std::vector.
15144         (xml_find_attribute): Likewise.
15145         * xml-support.c (xml_find_attribute): Change parameter type to
15146         std::vector and adjust.
15147         (gdb_xml_values_cleanup): Remove.
15148         (gdb_xml_parser::start_element): Adjust to std::vector.
15149         (xinclude_start_include): Change paraeter type to std::vector
15150         and adjust.
15151         * btrace.c (check_xml_btrace_version): Likewise.
15152         (parse_xml_btrace_block): Likewise.
15153         (parse_xml_btrace_pt_config_cpu): Likewise.
15154         (parse_xml_btrace_pt): Likewise.
15155         (parse_xml_btrace_conf_bts): Likewise.
15156         (parse_xml_btrace_conf_pt): Likewise.
15157         * memory-map.c (memory_map_start_memory): Likewise.
15158         (memory_map_start_property): Likewise.
15159         * osdata.c (osdata_start_osdata): Likewise.
15160         (osdata_start_item): Likewise.
15161         (osdata_start_column): Likewise.
15162         * remote.c (start_thread): Likewise.
15163         * solib-aix.c (library_list_start_library): Likewise.
15164         (library_list_start_list): Likewise.
15165         * solib-svr4.c (library_list_start_library): Likewise.
15166         (svr4_library_list_start_list): Likewise.
15167         * solib-target.c (library_list_start_segment): Likewise.
15168         (library_list_start_section): Likewise.
15169         (library_list_start_library): Likewise.
15170         (library_list_start_list): Likewise.
15171         * tracepoint.c (traceframe_info_start_memory): Likewise.
15172         (traceframe_info_start_tvar): Likewise.
15173         * xml-syscall.c (syscall_start_syscall): Likewise.
15174         * xml-tdesc.c (tdesc_start_target): Likewise.
15175         (tdesc_start_feature): Likewise.
15176         (tdesc_start_reg): Likewise.
15177         (tdesc_start_union): Likewise.
15178         (tdesc_start_struct): Likewise.
15179         (tdesc_start_flags): Likewise.
15180         (tdesc_start_enum): Likewise.
15181         (tdesc_start_field): Likewise.
15182         (tdesc_start_enum_value): Likewise.
15183         (tdesc_start_vector): Likewise.
15184
15185 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15186
15187         * extension.h (struct xmethod_worker) <clone>: Remove.
15188         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15189         Remove.
15190         (python_xmethod_worker::clone): Remove.
15191         * valops.c (find_overload_match): Use std::move instead of
15192         clone.
15193
15194 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15195
15196         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15197         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15198         <free_xmethod_worker_data>: Remove.
15199         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15200         <get_xmethod_arg_types>: Remove.
15201         <get_xmethod_result_type>: Remove.
15202         <invoke_xmethod>: Remove.
15203         * extension.c (new_xmethod_worker): Remove.
15204         (clone_xmethod_worker): Remove.
15205         (get_matching_xmethod_workers): Return void, pass std::vector by
15206         pointer.
15207         (get_xmethod_arg_types): Rename to...
15208         (xmethod_worker::get_arg_types): ... this, and adjust.
15209         (get_xmethod_result_type): Rename to...
15210         (xmethod_worker::get_result_type): ... this, and adjust.
15211         (invoke_xmethod): Remove.
15212         (free_xmethod_worker): Remove.
15213         (free_xmethod_worker_vec): Remove.
15214         * extension.h (enum ext_lang_rc): Move here from
15215         extension-priv.h.
15216         (struct xmethod_worker): Add constructor and destructor.
15217         <data>: Remove.
15218         <value>: Remove.
15219         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15220         virtual pure methods.
15221         <get_arg_types, get_result_type>: New methods.
15222         (xmethod_worker_ptr): Remove typedef.
15223         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15224         (xmethod_worker_vec): Remove typedef.
15225         (xmethod_worker_up): New typedef.
15226         (invoke_xmethod): Remove.
15227         (clone_xmethod_worker): Remove.
15228         (free_xmethod_worker): Remove.
15229         (free_xmethod_worker_vec): Remove.
15230         (get_xmethod_arg_types): Remove.
15231         (get_xmethod_result_type): Remove.
15232         * valops.c (find_method_list): Use std::vector, don't use
15233         intermediate vector.
15234         (value_find_oload_method_list): Use std::vector.
15235         (find_overload_match): Use std::vector.
15236         (find_oload_champ): Use std::vector.
15237         * value.c (value_free): Use operator delete.
15238         (value_of_xmethod): Rename to...
15239         (value_from_xmethod): ... this.  Don't assign
15240         xmethod_worker::value, take rvalue-reference.
15241         (result_type_of_xmethod): Adjust.
15242         (call_xmethod): Adjust.
15243         * value.h: Include extension.h.
15244         (struct xmethod_worker): Don't forward-declare.
15245         (value_of_xmethod): Rename to...
15246         (value_from_xmethod): ... this, take rvalue-reference.
15247         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15248         (struct python_xmethod_worker): ... this, add constructor and
15249         destructor.
15250         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15251         (gdbpy_free_xmethod_worker_data): Rename to...
15252         (python_xmethod_worker::~python_xmethod_worker): ... this and
15253         adjust.
15254         (gdbpy_clone_xmethod_worker_data): Rename to...
15255         (python_xmethod_worker::clone): ... this and adjust.
15256         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15257         temporary vector.
15258         (gdbpy_get_xmethod_arg_types): Rename to...
15259         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15260         (gdbpy_get_xmethod_result_type): Rename to...
15261         (python_xmethod_worker::do_get_result_type): ... this and
15262         adjust.
15263         (gdbpy_invoke_xmethod): Rename to...
15264         (python_xmethod_worker::invoke): ... this and adjust.
15265         (new_python_xmethod_worker): Rename to...
15266         (python_xmethod_worker::python_xmethod_worker): ... this and
15267         adjust.
15268         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15269         Remove.
15270         (gdbpy_free_xmethod_worker_data): Remove.
15271         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15272         (gdbpy_get_xmethod_arg_types): Remove.
15273         (gdbpy_get_xmethod_result_type): Remove.
15274         (gdbpy_invoke_xmethod): Remove.
15275         * python/python.c (python_extension_ops): Remove obsolete
15276         callbacks.
15277
15278 2018-01-05  Pedro Alves  <palves@redhat.com>
15279
15280         PR gdb/18653
15281         * common/signals-state-save-restore.c
15282         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15283         find a custom handler preinstalled, instead of internal erroring.
15284         But only warn if !quiet.
15285         * common/signals-state-save-restore.h
15286         (save_original_signals_state): New parameter 'quiet'.
15287         * main.c (captured_main_1): Move save_original_signals_state call
15288         after option handling, and pass QUIET.
15289
15290 2018-01-05  Pedro Alves  <palves@redhat.com>
15291
15292         * spu-tdep.c (spu_catch_start): Pass
15293         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15294
15295 2018-01-05  Pedro Alves  <palves@redhat.com>
15296
15297         PR gdb/22670
15298         * ada-lang.c (literal_symbol_name_matcher): New function.
15299         (ada_get_symbol_name_matcher): Use it for
15300         symbol_name_match_type::SEARCH_NAME.
15301         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15302         it down instead of assuming symbol_name_match_type::FULL.
15303         * block.h (block_lookup_symbol): New parameter 'match_type'.
15304         * c-valprint.c (print_unpacked_pointer): Use
15305         lookup_symbol_search_name instead of lookup_symbol.
15306         * compile/compile-object-load.c (get_out_value_type): Pass down
15307         symbol_name_match_type::SEARCH_NAME.
15308         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15309         symbol_name_match_type::FULL.
15310         * cp-support.c (cp_get_symbol_name_matcher): Handle
15311         symbol_name_match_type::SEARCH_NAME.
15312         * infrun.c (insert_exception_resume_breakpoint): Use
15313         lookup_symbol_search_name.
15314         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15315         * psymtab.c (maintenance_check_psymtabs): Use
15316         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15317         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15318         SYMBOL_SEARCH_NAME.
15319         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15320         if symbol_name_match_type::SEARCH_NAME.
15321         (lookup_symbol_in_language): Pass down
15322         symbol_name_match_type::FULL.
15323         (lookup_symbol_search_name): New.
15324         (lookup_language_this): Pass down
15325         symbol_name_match_type::SEARCH_NAME.
15326         (lookup_symbol_aux, lookup_local_symbol): New parameter
15327         'match_type'.  Pass it down.
15328         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15329         (lookup_symbol_search_name): New declaration.
15330         (lookup_symbol_in_block): New 'match_type' parameter.
15331
15332 2018-01-05  Pedro Alves  <palves@redhat.com>
15333
15334         PR gdb/22670
15335         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15336         ada_lookup_symbol.
15337         (ada_lookup_symbol): Reimplement in terms of
15338         ada_lookup_symbol_list, bits factored out from
15339         ada_lookup_encoded_symbol.
15340
15341 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15342
15343         * ada-exp.y (write_object_renaming): When subscripting an array
15344         using a symbol as the index, pass the block in call to
15345         ada_lookup_encoded_symbol when looking that symbol up.
15346
15347 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15348
15349         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15350         TYPE_INDEX_TYPE.
15351
15352 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15353
15354         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15355         the case where VALUE_LVAL (val0) is not lval_memory.
15356
15357 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15358
15359         * ada-valprint.c (print_optional_low_bound): Handle
15360         character-indexed array printing like boolean-indexed array
15361         printing.
15362
15363 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15364
15365         * NEWS: Create a new section for the next release branch.
15366         Rename the section of the current branch, now that it has
15367         been cut.
15368
15369 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15370
15371         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15372         * version.in: Bump version to 8.1.50.DATE-git.
15373
15374 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15375
15376         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15377         Add field.
15378         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15379         Add field.
15380         (default_exception_support_info) <catch_handlers_sym>: Add field.
15381         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15382         (ada_exception_name_addr_1): Add "catch handlers" handling.
15383         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15384         Update all callers.
15385         (create_excep_cond_exprs) <ex>: Add parameter.
15386         (re_set_exception): Update create_excep_cond_exprs call.
15387         (print_it_exception, print_one_exception, print_mention_exception)
15388         (print_recreate_exception): Add "catch handler" handling.
15389         (allocate_location_catch_handlers, re_set_catch_handlers)
15390         (check_status_catch_handlers, print_it_catch_handlers)
15391         (print_one_catch_handlers, print_mention_catch_handlers)
15392         (print_recreate_catch_handlers): New function.
15393         (catch_handlers_breakpoint_ops): New variable.
15394         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15395         Add parameter.  Add "catch handler" handling.
15396         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15397         Add "catch handler" handling.
15398         (ada_exception_catchpoint_cond_string): Add "catch handler"
15399         handling.
15400         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15401         call.
15402         (catch_ada_handlers_command): New function.
15403         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15404         operations structure.
15405         (_initialize_ada_language): Add "catch handlers" command entry.
15406         * NEWS: Document "catch handlers" feature.
15407
15408 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15409
15410         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15411         account when creating the array type of the slice.
15412         (ada_value_slice): Likewise.
15413
15414 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15415
15416         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15417         New enum value.
15418         (create_array_type_with_stride): Add byte_stride_prop parameter.
15419         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15420         New parameter.  Update all callers in this file.
15421         (array_type_has_dynamic_stride): New function.
15422         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15423         of arrays with dynamic byte strides.
15424         * dwarf2read.c (read_array_type): Add support for dynamic
15425         DW_AT_byte_stride attributes.
15426
15427 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15428
15429         * dwarf2read.c (read_unspecified_type): Treat
15430         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15431
15432 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15433
15434         Update copyright year range in all GDB files.
15435
15436 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15437
15438         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15439         and gdb/testsuite/gdb.base/step-line.c.
15440
15441 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15442
15443         * copyright.py (main): Dump the contents of
15444         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15445         even if BY_HAND is empty.
15446
15447 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15448
15449         * top.c (print_gdb_version): Update Copyright year in version
15450         message.
15451
15452 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15453
15454         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15455
15456 For older changes see ChangeLog-2017.
15457 \f
15458 Local Variables:
15459 mode: change-log
15460 left-margin: 8
15461 fill-column: 74
15462 version-control: never
15463 coding: utf-8
15464 End: