Fix PR gdb/23835: Don't redefine _FORTIFY_SOURCE if it's already defined
[external/binutils.git] / gdb / ChangeLog
1 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2
3         PR gdb/23835
4         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
5         already defined.
6
7 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
8
9         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
10
11 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
12
13         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
14         (producer_is_icc): New function.
15         (check_producer): Set producer_is_icc field on dwarf2_cu.
16         (dwarf2_init_integer_type): New function.
17         (read_base_type): Call dwarf2_init_integer_type instead of
18         init_integer_type in all cases.
19         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
20         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
21         LEN is greater than 0.
22
23 2018-10-30  Tom Tromey  <tom@tromey.com>
24
25         * main.c (captured_main_1): Check return value of bfd_init.
26
27 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
28
29         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
30         Adjust comments.
31
32 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
33
34         * procfs.c: Include common/pathstuff.h.
35
36 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
37
38         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
39         Add missing braces.  No functional change.
40
41 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
42
43         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
44         to report a bad option and fix indentation.
45         * demangle.c (demangle_command): Use report_unrecognized_option_error
46         to report a bad option and correctly report the bad option.
47
48 2018-10-27  Tom Tromey  <tom@tromey.com>
49
50         PR cli/23364:
51         * darwin-nat.c (copied_shell): New global.
52         (may_have_sip): Rename from should_disable_startup_with_shell.
53         (copy_shell_to_cache, maybe_cache_shell): New functions.
54         (darwin_nat_target::create_inferior): Update.  Use
55         copied_shell.
56
57 2018-10-27  Tom Tromey  <tom@tromey.com>
58
59         * unittests/scoped_fd-selftests.c (test_to_file): New function.
60         (run_tests): Call test_to_file.
61         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
62         temporary files.
63         * common/scoped_fd.h (scoped_fd::to_file): New method.
64
65 2018-10-27  Tom Tromey  <tom@tromey.com>
66
67         * unittests/scoped_mmap-selftests.c (test_normal): Use
68         gdb_mkostemp_cloexec.
69         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
70         Use gdb_mkostemp_cloexec.
71         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
72         gnulib/config.in, gnulib/configure,
73         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
74         gnulib/import/m4/gnulib-cache.m4,
75         gnulib/import/m4/gnulib-comp.m4: Update.
76         * gnulib/import/m4/mkostemp.m4: New file.
77         * gnulib/import/m4/mkstemp.m4: Remove.
78         * gnulib/import/mkostemp.c: New file.
79         * gnulib/import/mkstemp.m4: Remove.
80         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
81         mkstemp, add mkostemp.  Apply new patch.
82         * gnulib/import/stdlib.in.h: Apply patch.
83         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
84         New file.
85         * dwarf-index-write.c (write_psymtabs_to_index): Use
86         gdb_mkostemp_cloexec.
87         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
88
89 2018-10-27  Tom Tromey  <tom@tromey.com>
90
91         * unittests/mkdir-recursive-selftests.c: New file.
92         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
93         unittests/mkdir-recursive-selftests.c.
94         * dwarf-index-cache.c (mkdir_recursive): Move to
95         common/filestuff.c.
96         (index_cache::store): Check return value of mkdir_recursive.
97         (create_dir_and_check, test_mkdir_recursive): Move to new file.
98         (_initialize_index_cache): Don't register test.
99         * common/filestuff.h (mkdir_recursive): Declare.
100         * common/filestuff.c (mkdir_recursive): Move from
101         dwarf-index-cache.c.  Return bool.
102
103 2018-10-27  Tom Tromey  <tom@tromey.com>
104
105         * dwarf-index-write.c (write_psymtabs_to_index): Move
106         make_temp_filename to common/pathstuff.c.
107         * common/pathstuff.h (make_temp_filename): Declare.
108         * common/pathstuff.c (make_temp_filename): New function, moved
109         from dwarf-index-write.c.
110
111 2018-10-27  Tom Tromey  <tom@tromey.com>
112
113         * procfs.c (procfs_target::create_inferior): Use get_shell.
114         * cli/cli-cmds.c (shell_escape): Use get_shell.
115         * windows-nat.c (windows_nat_target::create_inferior): Use
116         get_shell.
117         * common/pathstuff.c (get_shell): New function.
118         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
119         (fork_inferior): Use get_shell.
120         * common/pathstuff.h (get_shell): Declare.
121
122 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
123
124         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
125
126 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
127
128         * stack.c (print_variable_and_value_data): Add preg and treg.
129         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
130         and update callers.
131         (print_frame_arg_vars): Likewise.
132         (prepare_reg): New function.
133         (info_locals_command): Extract info print args and use them.
134         (info_args_command): Likewise.
135         (_initialize_stack): Modify on-line help.
136         * symtab.c (treg_matches_sym_type_name): New function.
137         (search_symbols): New arg t_regexp.
138         (symtab_symbol_info): New args quiet, regexp, t_regexp.
139         (info_variables_command): Extract info print args and use them.
140         (info_functions_command): Likewise.
141         (info_types_command): Update call to symtab_symbol_info.
142         (_initialize_symtab): Modify on-line help.
143         * symtab.h (treg_matches_sym_type_name): New function.
144         (search_symbols): New t_regexp arg.
145
146 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
147
148         * cli-utils.c (extract_arg_maybe_quoted): New function.
149         (extract_info_print_args): New function.
150         (info_print_args_help): New function.
151         (report_unrecognized_option_error): New function.
152         * cli-utils.h (extract_arg_maybe_quoted): New function.
153         (extract_info_print_args): New function.
154         (info_print_args_help): New function.
155         (report_unrecognized_option_error): New function.
156
157 2018-10-26  Tom Tromey  <tom@tromey.com>
158
159         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
160         (compute_compunit_symtab_includes): Update.
161         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
162         (compunit_symtab_ptr): Likewise.
163
164 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
165
166         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
167         default_print_auxv_entry for specific tag values.
168
169 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
170
171         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
172
173 2018-10-26  Jim Wilson  <jimw@sifive.com>
174
175         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
176         (riscv_linux_sigframe_init): Declare.
177         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
178         (riscv_linux_sigframe): New.
179         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
180         (riscv_linux_sigframe_init): Define.
181         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
182
183         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
184         (riscv_isa_flen): Likewise.  Drop static.
185         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
186         (riscv_isa_flen): Likewise.  Declare.
187
188 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
189             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
190
191         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
192         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
193         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
194         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
195         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
196         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
197         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
198         Define.
199         (struct ppc_linux_features) <htm>: New field.
200         (ppc_linux_no_features): Add initializer for htm field.
201         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
202         new tdescs.
203         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
204         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
205         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
206         Define if not already defined.
207         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
208         and rs6000/powerpc-isa207-htm-vsx64l.
209         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
210         rs6000/powerpc-isa207-htm-vsx64l.xml.
211         * features/rs6000/power-htm-spr.xml: New file.
212         * features/rs6000/power-htm-core.xml: New file.
213         * features/rs6000/power64-htm-core.xml: New file.
214         * features/rs6000/power-htm-fpu.xml: New file.
215         * features/rs6000/power-htm-altivec.xml: New file.
216         * features/rs6000/power-htm-vsx.xml: New file.
217         * features/rs6000/power-htm-ppr.xml: New file.
218         * features/rs6000/power-htm-dscr.xml: New file.
219         * features/rs6000/power-htm-tar.xml: New file.
220         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
221         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
222         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
223         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
224         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
225         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
226         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
227         fetch_regset with HTM regsets.
228         (store_register, store_ppc_registers): Call store_regset with HTM
229         regsets.
230         (ppc_linux_nat_target::read_description): Set htm field in the
231         features struct if needed.
232         * ppc-linux-tdep.c: Include
233         features/rs6000/powerpc-isa207-htm-vsx32l.c and
234         features/rs6000/powerpc-isa207-htm-vsx64l.c.
235         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
236         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
237         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
238         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
239         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
240         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
241         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
242         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
243         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
244         (ppc32_linux_ctarregset): New globals.
245         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
246         (ppc_linux_collect_core_cpgrregset): New function.
247         (ppc_linux_iterate_over_regset_sections): Call back with the htm
248         regsets.
249         (ppc_linux_core_read_description): Check if the tm spr section is
250         present and set htm in the features struct.
251         (_initialize_ppc_linux_tdep): Call
252         initialize_tdesc_powerpc_isa207_htm_vsx32l and
253         initialize_tdesc_powerpc_isa207_htm_vsx64l.
254         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
255         Declare.
256         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
257         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
258         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
259         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
260         New fields.
261         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
262         Likewise.
263         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
264         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
265         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
266         New enum fields.
267         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
268         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
269         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
270         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
271         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
272         <PPC_CTAR_REGNUM>: Likewise.
273         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
274         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
275         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
276         (IS_CEFP_PSEUDOREG): Define.
277         (rs6000_register_name): Hide the upper halves of checkpointed VSX
278         registers.  Return names for the checkpointed DFP, VSX, and EFP
279         pseudo registers.
280         (rs6000_pseudo_register_type): Remove initial assert and raise an
281         internal error in the else clause instead.  Return types for the
282         checkpointed DFP, VSX, and EFP pseudo registers.
283         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
284         checkpointed DFP pseudo registers.
285         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
286         checkpointed VSX pseudo registers.
287         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
288         from efpr_pseudo_register_read and
289         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
290         registers.
291         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
292         Handle checkpointed DFP, VSX, and EFP registers.
293         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
294         (efp_ax_pseudo_register_collect): New functions.
295         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
296         register logic to new functions.  Handle checkpointed DFP, VSX,
297         and EFP pseudo registers.
298         (rs6000_gdbarch_init): Look for and validate the htm features.
299         Include checkpointed DFP, VSX and EFP pseudo-registers.
300         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
301         HTM registers.
302
303 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
304
305         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
306         without altivec or fpu.
307
308 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
309             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
310
311         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
312         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
313         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
314         Define if not already defined.
315         * features/rs6000/power-ebb.xml: New file.
316         * features/rs6000/power-linux-pmu.xml: New file.
317         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
318         features.
319         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
320         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
321         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
322         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
323         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
324         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
325         fetch_regset with ebb and pmu regsets.
326         (store_register, store_ppc_registers): Call store_regset with ebb
327         and pmu regsets.
328         (ppc_linux_nat_target::read_description): Set isa207 field in the
329         features struct if ebb and pmu are avaiable.
330         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
331         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
332         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
333         and pmu regsets.
334         (ppc_linux_core_read_description): Check if the pmu section is
335         present and set isa207 in the features struct.
336         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
337         (ppc32_linux_pmuregset): Declare.
338         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
339         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
340         <ppc_sier_regnum>: New field.
341         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
342         New enum values.
343         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
344         values.
345         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
346         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
347         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
348         ebb and pmu features.
349
350 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
351             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
352
353         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
354         (tdesc_powerpc_isa207_vsx64l): Declare.
355         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
356         (struct ppc_linux_features) <isa207>: New field.
357         (ppc_linux_no_features): Add initializer for isa207 field.
358         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
359         new tdescs.
360         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
361         (NT_PPC_TAR): Define if not already defined.
362         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
363         rs6000/powerpc-isa207-vsx64l.
364         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
365         rs6000/powerpc-isa207-vsx64l.xml.
366         * features/rs6000/power-tar.xml: New file.
367         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
368         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
369         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
370         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
371         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
372         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
373         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
374         fetch_regset with the TAR regset.
375         (store_register, store_ppc_registers): Call store_regset with the
376         TAR regset.
377         (ppc_linux_nat_target::read_description): Set isa207 field in the
378         features struct if needed.
379         * ppc-linux-tdep.c: Include
380         features/rs6000/powerpc-isa207-vsx32l.c and
381         features/rs6000/powerpc-isa207-vsx64l.c.
382         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
383         (ppc_linux_iterate_over_regset_sections): Call back with the tar
384         regset.
385         (ppc_linux_core_read_description): Check if the tar section is
386         present and set isa207 in the features struct.
387         (_initialize_ppc_linux_tdep): Call
388         initialize_tdesc_powerpc_isa207_vsx32l and
389         initialize_tdesc_powerpc_isa207_vsx64l.
390         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
391         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
392         (enum) <PPC_TAR_REGNUM>: New enum value.
393         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
394         feature.
395         (ppc_process_record_op31): Record changes to TAR.
396
397 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
398             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
399
400         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
401         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
402         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
403         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
404         (struct ppc_linux_features) <ppr_dscr>: New field.
405         (ppc_linux_no_features): Add initializer for ppr_dscr field.
406         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
407         new tdescs.
408         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
409         Define if not already defined.
410         * features/Makefile (WHICH): Add
411         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
412         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
413         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
414         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
415         * features/rs6000/power-dscr.xml: New file.
416         * features/rs6000/power-ppr.xml: New file.
417         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
418         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
419         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
420         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
421         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
422         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
423         * ppc-linux-nat.c: Include <sys/uio.h>.
424         (fetch_regset, store_regset, check_regset): New functions.
425         (fetch_register, fetch_ppc_registers): Call fetch_regset with
426         DSCR and PPR regsets.
427         (store_register, store_ppc_registers): Call store_regset with
428         DSCR and PPR regsets.
429         (ppc_linux_get_hwcap2): New function.
430         (ppc_linux_nat_target::read_description): Call
431         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
432         features struct if needed.
433         * ppc-linux-tdep.c: Include
434         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
435         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
436         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
437         (ppc32_linux_dscrregset): New globals.
438         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
439         and dscr regsets.
440         (ppc_linux_core_read_description): Check if the ppr and dscr
441         sections are present and set ppr_dscr in the features struct.
442         (_initialize_ppc_linux_tdep): Call
443         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
444         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
445         * ppc-linux-tdep.h (ppc32_linux_pprregset)
446         (ppc32_linux_dscrregset): Declare.
447         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
448         <ppc_dscr_regnum>: New field.
449         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
450         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
451         and dscr features.
452         (ppc_process_record_op31): Record changes to PPR and DSCR.
453
454 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
455
456         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
457         second initializer line for the have_* variables.  Initialize
458         have_fpu to 0 instead of 1.
459
460 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
461
462         * arch/ppc-linux-common.c (ppc_linux_match_description):
463         Parenthesize tdesc assignements and indent them properly.
464
465 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
466
467         * ppc-linux-nat.c (fetch_register): Change if statement to else
468         if.
469         (store_register): Likewise.
470
471 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
472
473         * rs6000-tdep.c: Remove reggroups.h include.
474         (rs6000_pseudo_register_reggroup_p): Remove.
475         (rs6000_gdbarch_init): Remove call to
476         set_tdesc_pseudo_register_reggroup_p.
477
478 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
479
480         * reggroups.c (default_register_reggroup_p): Return true for
481         decfloat registers and float_reggroup.
482
483 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
484
485         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
486         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
487         ppc_linux_collect_vrregset by regcache_collect_regset.
488
489 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
490
491         * linux-tdep.c (linux_collect_regset_section_cb): Use
492         std::vector<gdb_byte> instead of char * and malloc for buf.
493         Remove xfree.
494
495 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
496
497         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
498         symtab_start instead of always using language_unknown.
499
500 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
501
502         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
503         READ_P parameter, catch and ignore register access errors from
504         either the old or new MISA location.
505         (riscv_has_feature): Update call to riscv_read_misa_reg.
506
507 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
508
509         * python/py-function.c (convert_values_to_python): Return
510         gdbpy_ref<>.  Add header comment.
511         (fnpy_call): Adjust.
512
513 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
514
515         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
516         (cmdpy_completer_handle_brkchars): Adjust.
517         (cmdpy_completer): Adjust.
518
519 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
520
521         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
522         Pass correct regnum to raw_supply_zeroed.
523
524 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
525
526         * regcache.c (cooked_read_test): Add CSKY to the list of
527         architectures with a save_reggroup
528
529 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
530
531         PR gdb/23368
532         * infrun.c (follow_exec): In the follow_exec_mode_new case,
533         transfer terminal state from old new new inferior.
534         * terminal.h (swap_terminal_info): New function.
535         * inflow.c (swap_terminal_info): New function.
536
537 2018-10-23  Tom Tromey  <tom@tromey.com>
538
539         * record-btrace.c (get_thread_current_frame_id): Rename from
540         get_thread_current_frame.  Return a frame_id.
541         (record_btrace_start_replaying): Update.
542
543 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
544
545         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
546         for CSRs.
547
548 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
549
550         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
551         have_nonsteppable_watchpoint attribute to 1.
552
553 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
554
555         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
556         register names.
557         (struct register_alias): Rename to...
558         (struct riscv_register_alias): ...this, and update comment.
559         (riscv_register_aliases): Update type, and alias names.  Remove
560         CSR names from this list.
561         (riscv_register_name): Use riscv_gdb_reg_names for int and float
562         register names.  Add an extra assertion.
563         (riscv_is_regnum_a_named_csr): New function.
564         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
565
566 2018-10-22  Jim Wilson  <jimw@sifive.com>
567
568         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
569         FP reg smaller than FP reg size, and fill with -1 instead of 0.
570
571         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
572         (riscv_register_type): Use them.
573         (riscv_print_one_register_info): Handle union of floats same as float.
574         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
575         riscv_fpreg_q_type fields.
576
577 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
578
579         * gdbarch.sh (gdbarch_num_cooked_regs): New.
580         * gdbarch.h: Re-generate.
581         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
582         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
583         * eval.c (evaluate_subexp_standard): Likewise.
584         * findvar.c (value_of_register): Likewise.
585         (value_of_register_lazy): Likewise.
586         (address_from_register): Likewise.
587         * frame.c (get_frame_register_bytes): Likewise.
588         * gdbarch-selftests.c (register_to_value_test): Likewise.
589         * h8300-tdep.c (h8300_register_type): Likewise.
590         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
591         (i386_svr4_reg_to_regnum): Likewise.
592         * infcmd.c (default_print_registers_info): Likewise.
593         (registers_info): Likewise.
594         (print_vector_info): Likewise.
595         (default_print_float_info): Likewise.
596         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
597         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
598         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
599         (mi_cmd_data_list_changed_registers): Likewise.
600         (mi_cmd_data_list_register_values): Likewise.
601         (mi_cmd_data_write_register_values): Likewise.
602         (mi_cmd_trace_frame_collected): Likewise.
603         * mips-tdep.c (print_gp_register_row): Likewise.
604         (mips_print_registers_info): Likewise.
605         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
606         * regcache.c (init_regcache_descr): Likewise.
607         (register_size): Likewise.
608         (register_dump::dump): Likewise.
609         (cooked_read_test): Likewise.
610         (cooked_write_test): Likewise.
611         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
612         (rs6000_gdbarch_init): Likewise.
613         * stabsread.c (stab_reg_to_regnum): Likewise.
614         * stack.c (info_frame_command): Likewise.
615         * target-descriptions.c (tdesc_register_name): Likewise.
616         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
617         * tui/tui-regs.c (tui_show_register_group): Likewise.
618         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
619         (user_reg_map_regnum_to_name): Likewise.
620         (value_of_user_reg): Likewise.
621         (maintenance_print_user_registers): Likewise.
622         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
623         (xtensa_register_name): Likewise.
624         (xtensa_register_type): Likewise.
625         (xtensa_reg_to_regnum): Likewise.
626         (xtensa_pseudo_register_read): Likewise.
627         (xtensa_pseudo_register_write): Likewise.
628
629 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
630
631         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
632         correctly-sized buffer with raw_read.
633         (amd64_pseudo_register_write): Use correctly-sized buffer for
634         raw_read/raw_write.
635
636 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
637
638         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
639         in add_prefix_cmd of set print type.
640
641 2018-10-19  Tom Tromey  <tom@tromey.com>
642
643         PR tui/18388:
644         * NEWS: Mention tabset deprecation.
645         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
646         (update_tab_width): New function.
647         (tui_set_tab_width, tui_show_tab_width): New functions.
648         (tui_set_tab_width_command): Use update_tab_width.
649         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
650         Add new "set tui tab-width" command.
651         * tui/tui-source.c (tui_set_source_content): Update.
652         * tui/tui-disasm.c (tui_set_disassem_content): Update.
653         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
654         Don't declare.
655         (tui_tab_width): Declare.
656         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
657         (tui_set_default_tab_len): Remove.
658
659 2018-10-19  Tom Tromey  <tom@tromey.com>
660
661         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
662         (key_is_backspace, tui_getc): Don't declare.
663         * tui/tui-io.c (key_is_start_sequence): Now static.
664         (key_is_end_sequence, key_is_backspace): Remove.
665         (tui_getc): Now static.
666
667 2018-10-19  Tom Tromey  <tom@tromey.com>
668
669         * symfile.c (reread_symbols): Clear "static_links".
670
671 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
672
673         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
674         define.
675         (aarch64_linux_sigframe_init): Extra boundary checks.
676
677 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
678
679         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
680         the possibly non-existent tdesc type 'vec128', but the type of raw
681         register v16 instead.
682
683 2018-10-19  Gary Benson <gbenson@redhat.com>
684
685         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
686
687 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
688
689         PR cli/23785
690         * cli/cli-dump.c (restore_binary_file): Check if "file" is
691         NULL.
692
693 2018-10-17  Paul Koning  <paul_koning@dell.com>
694
695         * charset.c (convert_between_encodings): Fix unsigned overflow.
696
697 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
698
699         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
700         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
701         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
702         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
703         New functions.
704         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
705         and fbsd_info_proc_mappings_header.
706         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
707         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
708         New.
709
710 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
711
712         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
713         Solaris Maintainer.
714
715 2018-10-15  Tom Tromey  <tom@tromey.com>
716
717         * tui/tui.c (strcat_to_buf): Remove casts.
718         * tui/tui-winsource.c (tui_show_source_line)
719         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
720         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
721         * tui/tui-windata.c (tui_first_data_item_displayed)
722         (tui_delete_data_content_windows, tui_erase_data_content)
723         (tui_display_all_data, tui_display_data_from)
724         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
725         * tui/tui-win.c (tui_set_win_height)
726         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
727         casts.
728         * tui/tui-win.c (tui_resize_all): Remove casts.
729         (tui_scroll_backward_command, tui_set_focus)
730         (tui_set_tab_width_command): Likewise.
731         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
732         * tui/tui-regs.c (tui_show_register_group): Remove cast.
733         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
734         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
735         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
736         Remove casts.
737
738 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
739
740         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
741         AArch64/ARM maintainer.
742
743 2018-10-11  Gary Benson <gbenson@redhat.com>
744
745         * interps.h (interp::m_name): Make private and mutable.
746         * interps.c (interp::~interp): Free m_name.
747
748 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
749             Simon Marchi <simark@simark.ca>
750
751         * README (`configure' options): Add documentation for new
752         "--enable-unit-tests" option.
753         * acinclude.m4: Include "selftest.m4".
754         * configure: Regenerate.
755         * configure.ac: Use "GDB_AC_SELFTEST".
756         * maint.c (maintenance_selftest): Update message informing
757         that selftests have been disabled.
758         (maintenance_info_selftests): Likewise.
759         * selftest.m4: New file.
760
761 2018-10-10  Gary Benson <gbenson@redhat.com>
762
763         * remote.c (remote_target::remote_send_printf): Add
764         missing va_end found by Coverity.
765
766 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
767
768         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
769
770 2018-10-09  Tom Tromey  <tom@tromey.com>
771
772         * configure: Rebuild.
773         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
774         * NEWS: Update --enable-ubsan documentation.
775
776 2018-10-09  Gary Benson <gbenson@redhat.com>
777
778         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
779         found by Coverity.
780
781 2018-10-08  Tom Tromey  <tom@tromey.com>
782
783         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
784         variable.
785         (riscv_fbsd_init_abi): Likewise.
786
787 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
788         * valops.c (value_struct_elt_for_reference): Rename local variable
789         to work around the shadowing a previous local warning.
790
791 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
792
793         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
794         * NEWS: Mention new FreeBSD/riscv native configuration.
795         * configure.host: Add riscv*-*-freebsd*.
796         * configure.nat: Likewise.
797         * riscv-fbsd-nat.c: New file.
798
799 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
800
801         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
802         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
803         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
804         * NEWS: Mention new FreeBSD/riscv target.
805         * configure.tgt: Add riscv*-*-freebsd*.
806         * riscv-fbsd-tdep.c: New file.
807         * riscv-fbsd-tdep.h: New file.
808
809 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
810
811         * regcache.h (struct regcache_map_entry): Note that this type can
812         be used with traditional frame caches.
813         * trad-frame.c (trad_frame_set_reg_regmap): New.
814         * trad-frame.h (trad_frame_set_reg_regmap): New.
815
816 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
817
818         PR c++/16841
819         * valops.c (get_virtual_base_offset): New function.
820         (value_struct_elt_for_reference): Use it to get virtual base offset
821         and add it in calculating class member address.
822
823 2018-10-08   John Darrington <john@darrington.wattle.id.au>
824
825     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
826       (check_producer): Check if the producer is codewarrior.
827       (producer_is_codewarrior): New function.
828       (lnp_state_machine::record_line): Ignore is_stmt flag for records
829        produced by codewarrior.
830       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
831
832 2018-10-06  Tom Tromey  <tom@tromey.com>
833
834         PR python/19399:
835         * python/py-inferior.c: Add "architecture" entry.
836         (infpy_architecture): New function.
837
838 2018-10-06  Tom Tromey  <tom@tromey.com>
839
840         PR python/21765:
841         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
842         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
843         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
844         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
845
846 2018-10-06  Tom Tromey  <tom@tromey.com>
847
848         PR build/17077:
849         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
850         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
851         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
852         #include.
853
854 2018-10-06  Tom Tromey  <tom@tromey.com>
855
856         * python/py-breakpoint.c (bppy_get_location): Handle a
857         bp_breakpoint without a location.
858
859 2018-10-06  Tom Tromey  <tom@tromey.com>
860
861         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
862         (_RegEx): Reformat help text.
863         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
864         (AnyCallerIs, AnyCallerMatches): Reformat help text.
865         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
866         text.
867         * python/lib/gdb/command/xmethods.py (InfoXMethod)
868         (EnableXMethod, DisableXMethod): Remove help indentation.
869         Capitalize meta-syntactic variables.
870         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
871         (EnableUnwinder, DisableUnwinder): Remove help indentation.
872         Capitalize meta-syntactic variables.
873         * python/lib/gdb/command/explore.py (ExploreCommand)
874         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
875         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
876         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
877         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
878         Remove help indentation.
879         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
880         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
881         (DisableFrameFilter, SetFrameFilterPriority)
882         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
883
884 2018-10-06  Tom Tromey  <tom@tromey.com>
885
886         PR tui/28819:
887         * tui/tui-io.c (gdb_wgetch): New function.
888         (tui_mld_getc, tui_getc): Use it.
889
890 2018-10-05  Tom Tromey  <tom@tromey.com>
891
892         * sol-thread.c (sol_thread_target::wait): Rename inner
893         "save_ptid".
894
895 2018-10-04  Tom Tromey  <tom@tromey.com>
896
897         * configure: Rebuild.
898         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
899
900 2018-10-04  Tom Tromey  <tom@tromey.com>
901
902         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
903         declaration of "block".
904
905 2018-10-04  Tom Tromey  <tom@tromey.com>
906
907         * common/filestuff.c (fdwalk): Remove inner declaration of
908         "result".
909
910 2018-10-04  Tom Tromey  <tom@tromey.com>
911
912         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
913         "structs_addr" and hoist declaration.
914
915 2018-10-04  Tom Tromey  <tom@tromey.com>
916
917         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
918         variable "size".
919
920 2018-10-04  Tom Tromey  <tom@tromey.com>
921
922         * mdebugread.c (parse_partial_symbols): Use std::string.
923
924 2018-10-04  Tom Tromey  <tom@tromey.com>
925
926         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
927         * p-valprint.c (pascal_val_print): Split inner "i" variable.
928         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
929         header.
930         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
931         more inner scope.
932         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
933         * varobj.c (varobj_update): Rename inner "newobj",
934         "type_changed".
935         * valprint.c (generic_emit_char): Rename inner "buf".
936         * valops.c (find_overload_match): Rename inner "temp".
937         (value_struct_elt_for_reference): Declare "v" in more inner
938         scope.
939         * v850-tdep.c (v850_push_dummy_call): Rename "len".
940         * unittests/array-view-selftests.c (run_tests): Rename inner
941         "vec".
942         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
943         header.
944         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
945         "tsv" in more inner scope.
946         (print_one_static_tracepoint_marker): Rename inner
947         "tuple_emitter".
948         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
949         (tic6x_push_dummy_call): Don't redeclare "addr".
950         * target-float.c: Declare "dto" lower.
951         * symtab.c (lookup_local_symbol): Rename inner "sym".
952         (find_pc_sect_line): Rename inner "pc".
953         * stack.c (print_frame): Don't redeclare "gdbarch".
954         (return_command): Rename inner "gdbarch".
955         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
956         "sp".
957         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
958         header.
959         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
960         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
961         scope.
962         * remote.c (remote_target::update_thread_list): Don't redeclare
963         "tp".
964         (remote_target::process_initial_stop_replies): Rename inner
965         "thread".
966         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
967         (remote_target::wait_as): Don't redeclare "stop_reply".
968         (remote_target::get_thread_local_address): Rename inner
969         "result".
970         (remote_target::get_tib_address): Likewise.
971
972         * regcache.c (cooked_read_test): Rename "regnum".
973         * record-btrace.c (cmd_record_btrace_start): Rename inner
974         "exception".
975         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
976         loop header.
977         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
978         header.
979         (ppu2spu_sniffer): Rename inner "buf".
980         * parse.c (operator_check_standard): Rename inner "type",
981         "objfile".
982         * p-valprint.c (pascal_val_print): Introduce new scope for
983         "low_bound", "high_bound".
984         * p-exp.y (yylex): Declare "i" in loop header.
985         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
986         Lower declaration of "s".
987         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
988         header.
989         (nios2_push_dummy_call): Rename "len".
990         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
991         "buf".
992         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
993         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
994         (linux_xfer_osdata_modules): Likewise.
995         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
996         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
997         (mips_o64_push_dummy_call): Likewise.
998         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
999         "op".
1000         * mi/mi-main.c (list_available_thread_groups): Rename inner
1001         "tuple_emitter".
1002         (mi_cmd_data_read_memory): Rename inner "opts".
1003         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1004         "tuple_emitter".
1005         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1006         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1007         more inner scope.
1008         (parse_partial_symbols): Rename inner "pst", "p", "name"
1009         * main.c (captured_main_1): Rename inner "i"s.
1010         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1011         "oso2".
1012         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1013         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1014         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1015         (handle_signal_stop): Rename inner "gdbarch".
1016         (handle_command): Declare "signum" in loop header.
1017         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1018         "status".
1019         (examine_prologue): Rename inner "sol" and "sof".
1020         (ia64_extract_return_value): Rename inner "val".  Declare another
1021         "val" in a more inner scope.
1022         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1023         inner scope.
1024         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1025         "except".
1026         * findvar.c (default_read_var_value): Don't redeclare "addr".
1027         * f-exp.y (yylex): Declare "i" in loop header.
1028         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1029         Rename inner "type", "expect_type".
1030         (evaluate_subexp_for_sizeof): Rename inner "pc".
1031         * elfread.c (elf_symfile_read): Rename inner "abfd".
1032         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1033         "bytes_read".
1034         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1035         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1036         (dwarf_decode_line_header): Rename inner "lh".
1037         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1038         "offset".  Declare "i" in loop header.
1039         (disassemble_dwarf_expression): Rename inner "addr_size".
1040         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1041         inner "result".
1042         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1043         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1044         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1045         "inner_list_emitter".
1046         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1047         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1048         declaration in a block.
1049         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1050         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1051         "obstack_final_size".
1052         * cp-support.c (inspect_type): Declare "i" in loop header.
1053         * compile/compile.c (compile_instance::insert_symbol_error):
1054         Rename inner "e".
1055         * common/agent.c (agent_run_command): Remove inner "ret"
1056         declaration.
1057         * coffread.c (coff_symfile_read): Rename inner "name".
1058         (coff_symfile_read): Rename inner "abfd".
1059         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1060         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1061         "high".
1062         * c-exp.y (lex_one_token): Move "len" declaration lower.
1063         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1064         "gdbarch".
1065         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1066         "b".
1067         (watch_command_1): Declare "mark" later.
1068         (clear_command): Don't shadow "a" or "b".
1069         (delete_command): Rename inner "b".
1070         (delete_trace_command): Likewise.
1071         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1072         "op".
1073         (arm_gdbarch_init): Remove inner "e_flags".
1074         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1075         "offset" in inner blocks.
1076
1077 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1078
1079         * dwarf-index-write.c (file_write): Don't write if the vector is
1080         empty.
1081
1082 2018-10-05  Tom de Vries  <tdevries@suse.de>
1083
1084         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1085         PyArg_ParseTuple call.
1086
1087 2018-10-05  Tom de Vries  <tdevries@suse.de>
1088
1089         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1090         PyArg_ParseTuple call.
1091
1092 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1093
1094         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1095         to avoid exceeding 80 characters per line limit.
1096
1097 2018-10-04  Tom Tromey  <tom@tromey.com>
1098
1099         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1100         (reread_symbols): Update.
1101         * complaints.h (clear_complaints): Remove argument.
1102         * complaints.c (enum complaint_series): Remove.
1103         (series): Remove global.
1104         (complaint_internal): Update.
1105         (clear_complaints): Remove argument.
1106
1107 2018-10-04  Tom Tromey  <tom@tromey.com>
1108
1109         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1110         debugging symbols" message if there is a separate debug objfile.
1111
1112 2018-10-04  Tom Tromey  <tom@tromey.com>
1113
1114         PR cli/19551:
1115         * symfile.c (symbol_file_add_with_addrs): Update output.
1116         * psymtab.c (require_partial_symbols): Update output.
1117
1118 2018-10-04  Tom Tromey  <tom@tromey.com>
1119
1120         PR cli/22234:
1121         * complaints.c: Emit \n.
1122
1123 2018-10-04  Tom Tromey  <tom@tromey.com>
1124
1125         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1126         (separate_debug_file_exists, find_separate_debug_file)
1127         (add_symbol_file_command, reread_symbols, allocate_symtab)
1128         (allocate_compunit_symtab): Use filtered printing, not
1129         unfiltered.
1130         * psymtab.c (require_partial_symbols, dump_psymtab)
1131         (allocate_psymtab): Use filtered printing, not unfiltered.
1132
1133 2018-10-04  Tom Tromey  <tom@tromey.com>
1134
1135         * complaints.c (complaint_internal): Correctly check complaint
1136         count.
1137
1138 2018-10-04  Tom Tromey  <tom@tromey.com>
1139
1140         * complaints.h (struct complaints): Remove declaration.
1141         * complaints.c (clear_complaints): Remove an unused variable.
1142
1143 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1144
1145         * MAINTAINERS (Write After Approval): Add self.
1146
1147 2018-10-03  Tom Tromey  <tom@tromey.com>
1148
1149         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1150         "buffer_contents".
1151         * coffread.c (coff_symtab_read): Initialize "newobj".
1152
1153 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1154
1155         * dwarf2read.c (read_func_scope): Remove struct keyword in
1156         range-based for.
1157
1158 2018-10-03  Tom Tromey  <tom@tromey.com>
1159
1160         * README: Mention --enable-ubsan.
1161         * NEWS: Mention --enable-ubsan.
1162         * acinclude.m4: Include sanitize.m4.
1163         * configure: Rebuild.
1164         * configure.ac: Call AM_GDB_UBSAN.
1165         * sanitize.m4: New file.
1166
1167 2018-10-03  Tom Tromey  <tom@tromey.com>
1168
1169         * expression.h (enum exp_opcode): Use uint8_t as base type.
1170         * expprint.c (op_name): Handle invalid opcodes.
1171
1172 2018-10-03  Tom Tromey  <tom@tromey.com>
1173
1174         * parse.c (prefixify_expression): Add assert.
1175         (parse_exp_in_context_1): Throw exception if the expression is
1176         empty.
1177
1178 2018-10-03  Tom Tromey  <tom@tromey.com>
1179
1180         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1181
1182 2018-10-03  Tom Tromey  <tom@tromey.com>
1183
1184         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1185
1186 2018-10-03  Tom Tromey  <tom@tromey.com>
1187
1188         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1189         unsigned.
1190
1191 2018-10-03  Tom Tromey  <tom@tromey.com>
1192
1193         * findvar.c (extract_integer): Do work in an unsigned type.
1194
1195 2018-10-03  Tom Tromey  <tom@tromey.com>
1196
1197         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1198         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1199         base type.
1200         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1201         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1202         type.
1203         * c-lang.h (enum c_string_type_values): Use unsigned as base
1204         type.
1205         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1206
1207 2018-10-03  Tom Tromey  <tom@tromey.com>
1208
1209         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1210         <~dwarf2_frame_state_reg_info>: Update.
1211         <dwarf2_frame_state_reg_info>: Update.
1212         <alloc_regs>: Add assertion.  Update.
1213         <reg>: Now a std::vector.
1214         <num_regs>: Remove.
1215         <swap>: Update.
1216         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1217         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1218
1219 2018-10-03  Tom Tromey  <tom@tromey.com>
1220
1221         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1222
1223 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1224
1225         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1226
1227 2018-10-02  Tom Tromey  <tom@tromey.com>
1228
1229         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1230
1231 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1232
1233         * NEWS: Mention changed commands.
1234         * ser-uds.c: New file.
1235         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1236         * configure: Regenerate.
1237         * Makefile.in: Add new file.
1238         * serial.c (serial_open): Check if filename is a socket
1239           and lookup the appropriate interface accordingly.
1240
1241 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1242
1243         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1244         define.
1245         (AARCH64_EXTRA_MAGIC): Likewise.
1246         (AARCH64_FPSIMD_MAGIC): Likewise.
1247         (AARCH64_SVE_MAGIC): Likewise.
1248         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1249         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1250         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1251         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1252         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1253         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1254         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1255         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1256         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1257         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1258         (read_aarch64_ctx): Add function.
1259         (aarch64_linux_sigframe_init): Detect FP registers.
1260
1261 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1262
1263         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1264         (AARCH64_D0_REGNUM): Likewise.
1265         (AARCH64_S0_REGNUM): Likewise.
1266         (AARCH64_H0_REGNUM): Likewise.
1267         (AARCH64_B0_REGNUM): Likewise.
1268         (AARCH64_SVE_V0_REGNUM): Likewise.
1269         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1270         (AARCH64_D0_REGNUM): Likewise.
1271         (AARCH64_S0_REGNUM): Likewise.
1272         (AARCH64_H0_REGNUM): Likewise.
1273         (AARCH64_B0_REGNUM): Likewise.
1274         (AARCH64_SVE_V0_REGNUM): Likewise.
1275
1276 2018-10-01  Gary Benson <gbenson@redhat.com>
1277
1278         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1279         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1280         prfpregset_t instead of gdb_prfpregset_t.
1281         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1282         * configure, config.in: Rebuild.
1283
1284 2018-10-01  Gary Benson <gbenson@redhat.com>
1285
1286         * common/gdb_proc_service.h: New file, factored out from...
1287         * gdb_proc_service.h: Moved common code to the above file.
1288         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1289
1290 2018-10-01  Gary Benson <gbenson@redhat.com>
1291
1292         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1293         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1294
1295 2018-10-01  Gary Benson <gbenson@redhat.com>
1296
1297         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1298         (AC_CHECK_HEADERS): Check for linux/elf.h.
1299         * configure, config.in: Rebuild.
1300         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1301         doesn't define elf_fpregset_t.
1302
1303 2018-10-01  Gary Benson <gbenson@redhat.com>
1304
1305         * gdb_proc_service.h: Whitespace change.
1306
1307 2018-10-01  Tom Tromey  <tom@tromey.com>
1308
1309         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1310         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1311         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1312
1313 2018-10-01  Tom Tromey  <tom@tromey.com>
1314
1315         * README: Minor change.
1316
1317 2018-09-30  Pedro Alves  <palves@redhat.com>
1318
1319         * darwin-nat-info.c (darwin_debug_regions_recurse)
1320         (info_mach_exceptions_command): Remove unused local variables.
1321         * darwin-nat.c (darwin_decode_notify_message)
1322         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1323         (darwin_stop_inferior, darwin_setup_exceptions)
1324         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1325         (darwin_nat_target::attach, darwin_nat_target::detach)
1326         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1327         local variables.
1328         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1329         variables.
1330
1331 2018-09-29  Tom Tromey  <tom@tromey.com>
1332
1333         * README: Remove some leftover text.
1334
1335 2018-09-29  Tom Tromey  <tom@tromey.com>
1336
1337         * PROBLEMS: Rewrite.
1338         * README: Update.
1339
1340 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1341
1342         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1343         case with explicit breakpoint kind.
1344         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1345         'additional_info' and related logic.
1346         (riscv_debug_breakpoints): New variable.
1347         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1348         instruction to determine the breakpoint kind.
1349         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1350         flag.  Update description of 'set/show riscv
1351         use-compressed-breakpoints' flag.
1352
1353 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1354
1355         (NEWS): Mention changes to frame related commands.
1356         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1357         (add_prefix_cmd_suppress_notification): New function.
1358         (add_com_suppress_notification): Call
1359         add_cmd_suppress_notification.
1360         * command.h (add_cmd_suppress_notification): Declare.
1361         (add_prefix_cmd_suppress_notification): Declare.
1362         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1363         (parse_frame_specification): Moved from stack.c, with
1364         simplification to handle a single argument.
1365         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1366         switch to the selected frame.  Add a header comment.
1367         * stack.c: Remove 'safe-ctype.h' include.
1368         (find_frame_for_function): Add declaration.
1369         (find_frame_for_address): New function.
1370         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1371         (frame_selection_by_function_completer): New function.
1372         (info_frame_command): Rename to...
1373         (info_frame_command_core): ...this, and update parameter types.
1374         (select_frame_command): Rename to...
1375         (select_frame_command_core): ...this, and update parameter types.
1376         (frame_command): Rename to...
1377         (frame_command_core): ...this, and update parameter types.
1378         (class frame_command_helper): New class to wrap implementations of
1379         frame related sub-commands.
1380         (frame_apply_cmd_list): New static global.
1381         (frame_cmd_list): Make static.
1382         (select_frame_cmd_list): New global for sub-commands.
1383         (info_frame_cmd_list): New global for sub-commands.
1384         (_initialize_stack): Register sub-commands for 'frame',
1385         'select-frame', and 'info frame'.  Update 'frame apply' commands
1386         to use frame_apply_cmd_list.  Move function local static
1387         frame_apply_list to file static frame_apply_cmd_list for
1388         consistency.
1389         * stack.h (select_frame_command): Delete declarationn.
1390         (select_frame_for_mi): Declare new function.
1391
1392 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1393
1394         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1395         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1396         and NOP.
1397
1398 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1399
1400         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1401
1402 2018-09-26  Tom Tromey  <tom@tromey.com>
1403
1404         * valops.c (auto_abandon): Remove dead code.
1405
1406 2018-09-26  Tom Tromey  <tom@tromey.com>
1407
1408         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1409
1410 2018-09-24  Tom Tromey  <tom@tromey.com>
1411
1412         * common/pathstuff.c (get_standard_cache_dir): Make
1413         "xdg_cache_home" and "home" const.
1414         * top.c (init_history): Make "tmpenv" const.
1415         * main.c (get_init_files): Make "homedir" const.
1416
1417 2018-09-23  Tom Tromey  <tom@tromey.com>
1418
1419         PR python/18852:
1420         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1421
1422 2018-09-23  Tom Tromey  <tom@tromey.com>
1423
1424         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1425         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1426         * python/python-internal.h (gdbpy_handle_exception): Declare.
1427         * python/py-utils.c (gdbpy_handle_exception): New function.
1428
1429 2018-09-23  Tom Tromey  <tom@tromey.com>
1430
1431         PR python/17284:
1432         * python/py-type.c (typy_template_argument): Check for negative
1433         argument number.
1434
1435 2018-09-23  Tom Tromey  <tom@tromey.com>
1436
1437         PR python/14062:
1438         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1439
1440 2018-09-23  Tom Tromey  <tom@tromey.com>
1441
1442         PR python/18170:
1443         * python/py-value.c (valpy_int): Allow conversion from pointer
1444         type.
1445
1446 2018-09-23  Tom Tromey  <tom@tromey.com>
1447
1448         PR python/20126:
1449         * python/py-value.c (valpy_int): Respect type sign.
1450
1451 2018-09-23  Tom Tromey  <tom@tromey.com>
1452
1453         PR python/18352;
1454         * python/py-value.c (valpy_float): Allow conversions from int or
1455         char.
1456         (valpy_int, valpy_long): Allow conversions from float.
1457
1458 2018-09-23  Tom Tromey  <tom@tromey.com>
1459
1460         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1461         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1462
1463 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1464
1465         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1466         __sighndlr.
1467         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1468
1469 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1470
1471         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1472         target_terminal::ours().
1473
1474 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1475
1476         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1477         of vl to ULONGEST.
1478
1479 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1480
1481         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1482         redundant condition.
1483
1484 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1485
1486         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1487
1488         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1489         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1490         * sol-thread.c (ps_pdmodel): Don't guard definition.
1491
1492         * procfs.c: Fix formatting.
1493
1494         * procfs.c (sysset_t_alloc): Remove.
1495         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1496         (procfs_debug_inferior): Likewise.
1497         (procfs_set_exec_trap): Likewise.
1498         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1499         (proc_set_traced_sysexit): Likewise.
1500
1501         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1502         (dead_procinfo): Likewise.
1503         (proc_warn): Likewise.
1504         (proc_error): Likewise.
1505         (proc_get_LDT_entry): Likewise.
1506         (do_attach): Likewise.
1507         (procfs_target::pid_to_str): Likewise.
1508         (iterate_over_mappings): Likewise.
1509
1510         * procfs.c (create_procinfo): Fix ARI warning.
1511         (proc_get_status): Likewise.
1512         (proc_stop_process): Likewise.
1513         (proc_run_process): Likewise.
1514         (proc_kill): Likewise.
1515         (proc_get_LDT_entry): Likewise.
1516         (procfs_find_LDT_entry): Likewise.
1517         (proc_update_threads): Likewise.
1518         (proc_iterate_over_threads): Likewise.
1519         (do_attach): Likewise.
1520         (procfs_xfer_memory): Likewise.
1521         (invalidate_cache): Likewise.
1522         (procfs_target::resume): Likewise.
1523         (procfs_init_inferior): Likewise.
1524         (procfs_set_exec_trap): Likewise.
1525         (procfs_target::thread_alive): Likewise.
1526         (procfs_target::pid_to_exec_file): Likewise.
1527         (iterate_over_mappings): Likewise.
1528         (procfs_target::make_corefile_notes): Likewise.
1529         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1530
1531         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1532         (procfs_find_LDT_entry): Likewise.
1533         * sol-thread.c (ps_lgetLDT): Likewise.
1534
1535 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1536
1537         PR tdep/17903
1538         * procfs.c (procfs_target): Declare pid_to_exec_file.
1539         (procfs_target::pid_to_exec_file): New.
1540
1541 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1542
1543         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1544         renaming.
1545         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1546         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1547
1548 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1549
1550         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1551         (supply_fpregset, fill_fpregset): Move ...
1552         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1553         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1554         Remove references to ioctl-based procfs.
1555         Include <sys/reg.h>.
1556         Remove PR_MODEL_NATIVE guards.
1557         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1558         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1559
1560 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1561
1562         PR gdb/20981:
1563         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1564         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1565         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1566
1567 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1568
1569         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1570         (fbsd_print_sockaddr_in6): Likewise.
1571
1572 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1573             Chris January  <chris.january@arm.com>
1574
1575         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1576         (evaluate_subexp_standard): Return a dummy type when
1577         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1578         OP_F77_UNDETERMINED_ARGLIST case.
1579         * expression.h (enum noside): Update comment.
1580
1581 2018-09-19  George Vasick <george.vasick@oracle.com>
1582
1583         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1584
1585 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1586             April Chin <april.chin@oracle.com>
1587             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1588
1589         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1590         uint_t lwpid_t.
1591         (create_procinfo): Print pids in /proc without leading zeros.
1592
1593 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1594
1595         * nios2-tdep.c (nios2_gcc_target_options): New.
1596         (nios2_gdb_arch_init): Install new hook.
1597
1598 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1599
1600         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1601         New file.
1602         * update-gnulib.sh: Apply patch.
1603         * configure: Re-generate.
1604
1605 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1606
1607         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1608         description.  Make "info proc" command descriptions more
1609         consistent.
1610
1611 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1612
1613         * NEWS: Mention 'info proc files' command.
1614
1615 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1616
1617         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1618         descriptors for IP_FILES and IP_ALL.
1619
1620 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1621
1622         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1623         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1624         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1625         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1626         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1627         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1628         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1629         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1630         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1631         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1632         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1633         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1634         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1635         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1636         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1637         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1638         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1639         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1640         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1641         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1642         (struct fbsd_sockaddr_un): New types.
1643         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1644         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1645         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1646         (fbsd_core_info_proc_files): New functions.
1647         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1648         IP_ALL.
1649         * fbsd-tdep.h (fbsd_info_proc_files_header)
1650         (fbsd_info_proc_files_entry): New.
1651
1652 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1653
1654         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1655         * infcmd.c (info_proc_cmd_files): New function.
1656         (_initialize_infcmd): Register 'info proc files' command.
1657
1658 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1659
1660         * gnulib/aclocal-m4-deps.mk: Re-generate.
1661         * gnulib/aclocal.m4: Re-generate.
1662         * gnulib/config.in: Re-generate.
1663         * gnulib/configure: Re-generate.
1664         * gnulib/import/Makefile.am: Re-generate.
1665         * gnulib/import/Makefile.in: Re-generate.
1666         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1667         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1668         * gnulib/import/arpa_inet.in.h: New file.
1669         * gnulib/import/inet_ntop.c: New file.
1670         * gnulib/import/m4/arpa_inet_h.m4: New file.
1671         * gnulib/import/m4/inet_ntop.m4: New file.
1672         * gnulib/import/m4/netinet_in_h.m4: New file.
1673         * gnulib/import/m4/socklen.m4: New file.
1674         * gnulib/import/m4/sockpfaf.m4: New file.
1675         * gnulib/import/m4/stdalign.m4: New file.
1676         * gnulib/import/m4/sys_uio_h.m4: New file.
1677         * gnulib/import/netinet_in.in.h: New file.
1678         * gnulib/import/stdalign.in.h: New file.
1679         * gnulib/import/sys_socket.c: New file.
1680         * gnulib/import/sys_socket.in.h: New file.
1681         * gnulib/import/sys_uio.in.h: New file.
1682         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1683         module.
1684
1685 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1686
1687         * gnulib/aclocal-m4-deps.mk: New file.
1688         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1689         deterministically.
1690
1691 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1692
1693         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1694         KVE_PATH.
1695
1696 2018-09-18  Tom Tromey  <tom@tromey.com>
1697
1698         * compile/compile-object-load.c (struct
1699         link_hash_table_cleanup_data): Add constructor and destructor.
1700         Use DISABLE_COPY_AND_ASSIGN.
1701         (~link_hash_table_cleanup_data): Rename from
1702         link_hash_table_free.  Now a destructor.
1703         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1704
1705 2018-09-18  Tom Tromey  <tom@tromey.com>
1706
1707         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1708         * compile/compile-object-load.c (struct munmap_list): Move to
1709         header file.
1710         (munmap_list::add): Rename from munmap_list_add; rewrite.
1711         (munmap_list::~munmap_list): Rename from munmap_list_free.
1712         (munmap_listp_free_cleanup): Remove.
1713         (compile_object_load): Update.
1714         * compile/compile-object-load.h (struct munmap_list): Move from
1715         compile-object-load.c.  Rewrite.
1716
1717 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1718
1719         * aarch64-tdep.c (pass_in_v): Use register size.
1720         (aarch64_extract_return_value): Likewise.
1721         (aarch64_store_return_value): Likewise.
1722
1723 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1724
1725         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1726         rlim_t.
1727
1728 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1729
1730         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1731         Fix short help line.
1732
1733 2018-09-17  Tom Tromey  <tom@tromey.com>
1734
1735         PR python/20445:
1736         * configure: Rebuild.
1737         * configure.ac: Conditionally use -DNDEBUG for Python.
1738
1739 2018-09-17  Tom Tromey  <tom@tromey.com>
1740
1741         * configure: Rebuild.
1742         * configure.ac: Use gmp as a library dependency when checking for
1743         mpfr.
1744
1745 2018-09-17  Pedro Alves  <palves@redhat.com>
1746
1747         * python/py-inferior.c (find_inferior_object): Delete.
1748
1749 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1750
1751         * compile/compile-cplus-types.c
1752         (compile_cplus_instance::enter_scope): Don't use new_scope after
1753         std::move.
1754
1755 2018-09-17  Tom Tromey  <tom@tromey.com>
1756
1757         * common/pathstuff.c (get_standard_cache_dir): Use
1758         ~/Library/Caches on macOS.
1759         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1760
1761 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1762
1763         PR python/23669
1764         * breakpoint.c (commands_cmd_element): New.
1765         (_initialize_breakpoint): Assign commands_cmd_element.
1766         * breakpoint.h (commands_cmd_element): New.
1767         * cli/cli-script.c (while_cmd_element, if_command,
1768         define_cmd_element): New.
1769         (command_name_equals): Remove.
1770         (process_next_line): Compare commands by pointer, not by name.
1771         (_initialize_cli_script): Assign the various cmd_list_element
1772         variables.
1773         * compile/compile.c (compile_cmd_element): New.
1774         (_initialize_compile): Assign compile_cmd_element.
1775         * compile/compile.h (compile_cmd_element): New.
1776         * guile/guile.c (guile_cmd_element): New.
1777         (install_gdb_commands): Assign guile_cmd_element.
1778         * guile/guile.h (guile_cmd_element): New.
1779         * python/python.c (python_cmd_element): New.
1780         (_initialize_python): Assign python_cmd_element.
1781         * python/python.h (python_cmd_element): New.
1782         * tracepoint.c (while_stepping_cmd_element): New.
1783         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1784         * tracepoint.h (while_stepping_cmd_element): New.
1785
1786 2018-09-17  Tom Tromey  <tom@tromey.com>
1787
1788         * infrun.c (save_infcall_suspend_state): Return
1789         infcall_suspend_state_up.
1790         (save_infcall_control_state): Return infcall_control_state_up.
1791         * inferior.h (save_infcall_suspend_state)
1792         (save_infcall_control_state): Declare later.  Return unique
1793         pointers.
1794
1795 2018-09-17  Tom Tromey  <tom@tromey.com>
1796
1797         * infrun.c (struct stop_context): Declare constructor,
1798         destructor, "changed" method.
1799         (stop_context::stop_context): Rename from save_stop_context.
1800         (stop_context::~stop_context): Rename from
1801         release_stop_context_cleanup.
1802         (normal_stop): Update.
1803         (stop_context::changed): Rename from stop_context_changed.  Return
1804         bool.
1805
1806 2018-09-17  Tom Tromey  <tom@tromey.com>
1807
1808         * inferior.h (struct infcall_suspend_state_deleter): New.
1809         (infcall_suspend_state_up): New typedef.
1810         (struct infcall_control_state_deleter): New.
1811         (infcall_control_state_up): New typedef.
1812         (make_cleanup_restore_infcall_suspend_state)
1813         (make_cleanup_restore_infcall_control_state): Don't declare.
1814         * infcall.c (call_function_by_hand_dummy): Update.
1815         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1816         (make_cleanup_restore_infcall_suspend_state): Remove.
1817         (do_restore_infcall_control_state_cleanup)
1818         (make_cleanup_restore_infcall_control_state): Remove.
1819
1820 2018-09-17  Tom Tromey  <tom@tromey.com>
1821
1822         * gdbthread.h (struct thread_control_state): Add initializer.
1823         (class thread_info) <control>: Remove initializer.
1824         * inferior.h (struct inferior_control_state): Add initializer.
1825         (class inferior) <control>: Remove initializer.
1826         (exit_inferior_1): Update.
1827         * infrun.c (struct infcall_control_state): Add constructors.
1828         (save_infcall_control_state): Use new.
1829         (restore_infcall_control_state, discard_infcall_control_state):
1830         Use delete.
1831
1832 2018-09-17  Tom Tromey  <tom@tromey.com>
1833
1834         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1835         unique_ptr.
1836         <siginfo_data>: Now a unique_xmalloc_ptr.
1837         (save_infcall_suspend_state, restore_infcall_suspend_state)
1838         (discard_infcall_suspend_state)
1839         (get_infcall_suspend_state_regcache): Update.
1840
1841 2018-09-17  Tom Tromey  <tom@tromey.com>
1842
1843         * gdbthread.h (struct thread_suspend_state): Add initializers.
1844         (class thread_info) <suspend>: Remove initializer.
1845         * infrun.c (struct infcall_suspend_state): Add initializers.
1846         (save_infcall_suspend_state): Use new.
1847         (discard_infcall_suspend_state): Use delete.
1848
1849 2018-09-16  Tom Tromey  <tom@tromey.com>
1850
1851         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1852         Remove.
1853         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1854         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1855         (py_varobj_iter_new): Likewise.
1856         (py_varobj_get_iterator): Use gdbpy_ref.
1857
1858 2018-09-16  Tom Tromey  <tom@tromey.com>
1859
1860         * python/py-threadevent.c (py_get_event_thread): Simplify.
1861         * python/py-inferior.c (infpy_thread_from_thread_handle):
1862         Return immediately after calling thread_to_thread_object.  Use
1863         Py_RETURN_NONE.
1864         (thread_to_thread_object): Set the exception on a NULL return.
1865
1866 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1867
1868         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1869
1870 2018-09-16  Tom Tromey  <tom@tromey.com>
1871
1872         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1873         Remove.
1874
1875 2018-09-16  Tom Tromey  <tom@tromey.com>
1876
1877         * python/python-internal.h (thread_to_thread_object): Change
1878         return type.
1879         * python/py-inferior.c (thread_to_thread_object): Return a new
1880         reference.
1881         (infpy_thread_from_thread_handle): Update.
1882         * python/py-infthread.c (gdbpy_selected_thread): Update.
1883         * python/py-stopevent.c (create_stop_event_object): Update.
1884         * python/py-threadevent.c (py_get_event_thread): Return a new
1885         reference.
1886         (py_get_event_thread): Update.
1887         * python/py-event.h (py_get_event_thread): Change return type.
1888         * python/py-continueevent.c (create_continue_event_object):
1889         Update.
1890
1891 2018-09-16  Tom Tromey  <tom@tromey.com>
1892
1893         * python/py-progspace.c (pspy_get_objfiles): Update.
1894         * python/python-internal.h (objfile_to_objfile_object): Change
1895         return type.
1896         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1897         Update.
1898         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1899         Update.
1900         * python/python.c (gdbpy_get_current_objfile): Update.
1901         (gdbpy_objfiles): Update.
1902         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1903         Update.
1904         (objfile_to_objfile_object): Return a new reference.
1905         * python/py-symtab.c (stpy_get_objfile): Update.
1906         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1907         Update.
1908
1909 2018-09-16  Tom Tromey  <tom@tromey.com>
1910
1911         * python/py-inferior.c (infpy_get_progspace): Update.
1912         * python/python-internal.h (pspace_to_pspace_object): Change
1913         return type.
1914         * python/py-newobjfileevent.c
1915         (create_clear_objfiles_event_object): Update.
1916         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1917         Update.
1918         * python/python.c (gdbpy_get_current_progspace): Update.
1919         (gdbpy_progspaces): Update.
1920         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1921         reference.
1922         * python/py-objfile.c (objfpy_get_progspace): Update.
1923         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1924         Update.
1925
1926 2018-09-16  Tom Tromey  <tom@tromey.com>
1927
1928         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1929         (solib_name, block_for_pc, find_pc_line): New functions.
1930         (execute_unwinders): Update.
1931         * python/py-block.c (gdbpy_block_for_pc): Remove.
1932         * python/py-inferior.c (infpy_get_progspace): New function.
1933         (inferior_object_getset) <progspace>: Add.
1934         * python/py-progspace.c (pspy_objfiles): Rewrite.
1935         (pspy_solib_name, pspy_block_for_pc)
1936         (pspy_find_pc_line, pspy_is_valid): New functions.
1937         (progspace_object_methods): Add entries for solib_name,
1938         block_for_pc, find_pc_line, is_valid.
1939         * python/python-internal.h (gdbpy_block_for_pc)
1940         (build_objfiles_list): Don't declare.
1941         * python/python.c: Don't include solib.h.
1942         (gdbpy_solib_name, gdbpy_find_pc_line)
1943         (gdbpy_get_current_progspace, build_objfiles_list)
1944         (gdbpy_objfiles): Remove.
1945         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1946         solib_name, find_pc_line>: Remove entries.
1947
1948 2018-09-16  Tom Tromey  <tom@tromey.com>
1949
1950         * top.c (new_ui_command): Use GNU style for metasyntactic
1951         variables.
1952         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1953         variables.
1954         * maint.c (maintenance_translate_address): Remove "<>" around
1955         text.
1956         * interps.c (interpreter_exec_cmd): Use GNU style for
1957         metasyntactic variables.
1958         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1959         metasyntactic variables.
1960         * tracepoint.c (tfind_range_command): Use GNU style for
1961         metasyntactic variables.
1962         (tfind_outside_command): Likewise.
1963         (_initialize_tracepoint): Likewise.
1964         * remote.c (extended_remote_target::create_inferior): Use GNU
1965         style for metasyntactic variables.
1966         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1967         metasyntactic variables.
1968         (adi_assign_command): Likewise.
1969
1970 2018-09-16  Tom Tromey  <tom@tromey.com>
1971
1972         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1973         metasyntactic variables.  Print message if no disassembler options
1974         are available.
1975
1976 2018-09-15  Tom Tromey  <tom@tromey.com>
1977
1978         * infcmd.c (get_inferior_args): Return const char *.
1979         * inferior.h (get_inferior_args): Return type now const.
1980         * linux-tdep.c (linux_fill_prpsinfo): Update.
1981         * procfs.c (procfs_target::make_corefile_notes): Update.
1982
1983 2018-09-07  Tom Tromey  <tom@tromey.com>
1984
1985         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1986         inside the TRY.
1987
1988 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1989
1990         * nios2-tdep.c (nios2_type_align): New.
1991         (nios2_gdb_arch_init): Install type_align hook.
1992
1993 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1994
1995         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1996         type that is neither object file owned, nor gdbarch owned.
1997         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1998         gdbarch is non-NULL.
1999         (alloc_type_instance): Allocate non-objfile owned types on the
2000         gdbarch obstack.
2001         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2002         using TYPE_ALLOC to ensure memory is allocated on the correct
2003         obstack.
2004         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2005         obstack, or the gdbarch obstack.
2006         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2007
2008 2018-09-14  Tom Tromey  <tom@tromey.com>
2009
2010         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2011         block.
2012
2013 2018-09-14  Tom Tromey  <tom@tromey.com>
2014
2015         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2016
2017 2018-09-13  Tom Tromey  <tom@tromey.com>
2018
2019         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2020         static.
2021
2022 2018-09-13  Tom Tromey  <tom@tromey.com>
2023
2024         * exec.c (try_open_exec_file): Use std::string.
2025
2026 2018-09-13  Tom Tromey  <tom@tromey.com>
2027
2028         * utils.h (gdb_bfd_errmsg): Return std::string.
2029         * exec.c (exec_file_attach): Update.
2030         * compile/compile-object-load.c (compile_object_load): Update.
2031         * utils.c (gdb_bfd_errmsg): Return std::string.
2032
2033 2018-09-13  Tom Tromey  <tom@tromey.com>
2034
2035         * procfs.c (struct procinfo_deleter): New.
2036         (procinfo_up): New typedef.
2037         (do_destroy_procinfo_cleanup): Remove.
2038         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2039
2040 2018-09-13  Tom Tromey  <tom@tromey.com>
2041
2042         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2043
2044 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2045 2018-09-13  Tom Tromey  <tom@tromey.com>
2046
2047         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2048         (pspy_get_objfiles): New function.
2049         (progspace_object_methods): New.
2050         (pspace_object_type): Add tp_methods callback.
2051         * python/python-internal.h (build_objfiles_list): New
2052         declaration.
2053         * python/python.c (build_objfiles_list): New function.
2054         (gdbpy_objfiles): Implement using build_objfiles_list.
2055         * NEWS: Mention the Progspace.objfiles method.
2056
2057 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2058
2059         * python/py-inferior.c (infpy_get_progspace): New function.
2060         (inferior_object_getset): Add progspace property.
2061         * NEWS: Mention the new property.
2062
2063 2018-09-13  Tom Tromey  <tom@tromey.com>
2064
2065         PR rust/23650:
2066         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2067
2068 2018-09-13  Tom Tromey  <tom@tromey.com>
2069
2070         PR rust/23626:
2071         * rust-lang.c (rust_enum_variant): Now static.
2072         (rust_empty_enum_p): New function.
2073         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2074         Handle empty enum.
2075
2076 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2077
2078         * python/py-inferior.c (infpy_repr): New.
2079         (inferior_object_type): Register infpy_repr.
2080         * python/py-objfile.c (objfpy_repr): New.
2081         (objfile_object_type): Register objfpy_repr.
2082
2083 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2084
2085         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2086
2087 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2088
2089         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2090         typo.
2091
2092 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2093
2094         * common/common-utils.c: Don't include '<sys/stat.h>'.
2095         (is_regular_file): Move to...
2096         * common/filestuff.c (is_regular_file): ... here.
2097         * common/common-utils.h (is_regular_file): Move to...
2098         * common/filestuff.h (is_regular_file): ... here.
2099
2100 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2101
2102         * skip.c (debug_skip): New variable.
2103         (skiplist_entry::do_skip_file_p): Add debug output.
2104         (skiplist_entry::do_skip_gfile_p): Likewise.
2105         (skiplist_entry::skip_function_p): Likewise.
2106         (_initialize_step_skip): Create debug command.
2107         * NEWS: Mention set/show debug skip.
2108
2109 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2110
2111         * darwin-nat.c (should_disable_startup_with_shell):
2112         New function.
2113         (darwin_nat_target::create_inferior): Add call.
2114
2115 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2116
2117         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2118         inf_port, msg_state>: Initialize.
2119         (struct darwin_thread_info) <signaled, single_step>: Change
2120         type and initialize.
2121         (struct darwin_thread_info) <event>: Initialize.
2122
2123 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2124
2125         PR gdb/23555
2126         PR gdb/23558
2127         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2128         guesses.
2129
2130 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2131
2132         Revert:
2133         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2134
2135         PR gdb/23555
2136         PR gdb/23558
2137         * gnulib/aclocal.m4: Regenerate.
2138         * gnulib/config.in: Regenerate.
2139         * gnulib/configure: Regenerate.
2140         * gnulib/import/Makefile.am: Update.
2141         * gnulib/import/Makefile.in: Update.
2142         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2143         * gnulib/import/_Noreturn.h: ... this.
2144         * gnulib/import/alloca.in.h: Update.
2145         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2146         * gnulib/import/arg-nonnull.h: ... this.
2147         * gnulib/import/assure.h: Update.
2148         * gnulib/import/at-func.c: Update.
2149         * gnulib/import/basename-lgpl.c: Update.
2150         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2151         * gnulib/import/c++defs.h: ... this.
2152         * gnulib/import/canonicalize-lgpl.c: Update.
2153         * gnulib/import/cdefs.h: Update.
2154         * gnulib/import/chdir-long.c: Update.
2155         * gnulib/import/chdir-long.h: Update.
2156         * gnulib/import/cloexec.c: Update.
2157         * gnulib/import/cloexec.h: Update.
2158         * gnulib/import/close.c: Update.
2159         * gnulib/import/closedir.c: Update.
2160         * gnulib/import/config.charset: Update.
2161         * gnulib/import/dirent-private.h: Update.
2162         * gnulib/import/dirent.in.h: Update.
2163         * gnulib/import/dirfd.c: Update.
2164         * gnulib/import/dirname-lgpl.c: Update.
2165         * gnulib/import/dirname.h: Update.
2166         * gnulib/import/dosname.h: Update.
2167         * gnulib/import/dup-safer-flag.c: Update.
2168         * gnulib/import/dup-safer.c: Update.
2169         * gnulib/import/dup.c: Update.
2170         * gnulib/import/dup2.c: Update.
2171         * gnulib/import/errno.in.h: Update.
2172         * gnulib/import/error.c: Update.
2173         * gnulib/import/error.h: Update.
2174         * gnulib/import/exitfail.c: Update.
2175         * gnulib/import/exitfail.h: Update.
2176         * gnulib/import/extra/update-copyright: Update.
2177         * gnulib/import/fchdir.c: Update.
2178         * gnulib/import/fcntl.c: Update.
2179         * gnulib/import/fcntl.in.h: Update.
2180         * gnulib/import/fd-hook.c: Update.
2181         * gnulib/import/fd-hook.h: Update.
2182         * gnulib/import/fd-safer-flag.c: Update.
2183         * gnulib/import/fd-safer.c: Update.
2184         * gnulib/import/fdopendir.c: Update.
2185         * gnulib/import/filename.h: Update.
2186         * gnulib/import/filenamecat-lgpl.c: Update.
2187         * gnulib/import/filenamecat.h: Update.
2188         * gnulib/import/flexmember.h: Update.
2189         * gnulib/import/float+.h: Update.
2190         * gnulib/import/float.c: Update.
2191         * gnulib/import/float.in.h: Update.
2192         * gnulib/import/fnmatch.c: Update.
2193         * gnulib/import/fnmatch.in.h: Update.
2194         * gnulib/import/fnmatch_loop.c: Update.
2195         * gnulib/import/fpucw.h: Update.
2196         * gnulib/import/frexp.c: Update.
2197         * gnulib/import/frexpl.c: Update.
2198         * gnulib/import/fstat.c: Update.
2199         * gnulib/import/fstatat.c: Update.
2200         * gnulib/import/getcwd-lgpl.c: Update.
2201         * gnulib/import/getcwd.c: Update.
2202         * gnulib/import/getdtablesize.c: Update.
2203         * gnulib/import/getlogin_r.c: Update.
2204         * gnulib/import/getprogname.c: Update.
2205         * gnulib/import/getprogname.h: Update.
2206         * gnulib/import/gettext.h: Update.
2207         * gnulib/import/gettimeofday.c: Update.
2208         * gnulib/import/glob-libc.h: Update.
2209         * gnulib/import/glob.c: Update.
2210         * gnulib/import/glob.in.h: Update.
2211         * gnulib/import/glob_internal.h: Update.
2212         * gnulib/import/glob_pattern_p.c: Update.
2213         * gnulib/import/globfree.c: Update.
2214         * gnulib/import/hard-locale.c: Update.
2215         * gnulib/import/hard-locale.h: Update.
2216         * gnulib/import/intprops.h: Update.
2217         * gnulib/import/inttypes.in.h: Update.
2218         * gnulib/import/isnan.c: Update.
2219         * gnulib/import/isnand-nolibm.h: Update.
2220         * gnulib/import/isnand.c: Update.
2221         * gnulib/import/isnanl-nolibm.h: Update.
2222         * gnulib/import/isnanl.c: Update.
2223         * gnulib/import/itold.c: Update.
2224         * gnulib/import/libc-config.h: Update.
2225         * gnulib/import/limits.in.h: Update.
2226         * gnulib/import/localcharset.c: Update.
2227         * gnulib/import/localcharset.h: Update.
2228         * gnulib/import/localtime-buffer.c: Update.
2229         * gnulib/import/localtime-buffer.h: Update.
2230         * gnulib/import/lstat.c: Update.
2231         * gnulib/import/m4/00gnulib.m4: Update.
2232         * gnulib/import/m4/__inline.m4: Update.
2233         * gnulib/import/m4/absolute-header.m4: Update.
2234         * gnulib/import/m4/alloca.m4: Update.
2235         * gnulib/import/m4/builtin-expect.m4: Update.
2236         * gnulib/import/m4/canonicalize.m4: Update.
2237         * gnulib/import/m4/chdir-long.m4: Update.
2238         * gnulib/import/m4/close.m4: Update.
2239         * gnulib/import/m4/closedir.m4: Update.
2240         * gnulib/import/m4/configmake.m4: Update.
2241         * gnulib/import/m4/d-ino.m4: Update.
2242         * gnulib/import/m4/d-type.m4: Update.
2243         * gnulib/import/m4/dirent_h.m4: Update.
2244         * gnulib/import/m4/dirfd.m4: Update.
2245         * gnulib/import/m4/dirname.m4: Update.
2246         * gnulib/import/m4/double-slash-root.m4: Update.
2247         * gnulib/import/m4/dup.m4: Update.
2248         * gnulib/import/m4/dup2.m4: Update.
2249         * gnulib/import/m4/eealloc.m4: Update.
2250         * gnulib/import/m4/environ.m4: Update.
2251         * gnulib/import/m4/errno_h.m4: Update.
2252         * gnulib/import/m4/error.m4: Update.
2253         * gnulib/import/m4/exponentd.m4: Update.
2254         * gnulib/import/m4/exponentl.m4: Update.
2255         * gnulib/import/m4/extensions.m4: Update.
2256         * gnulib/import/m4/extern-inline.m4: Update.
2257         * gnulib/import/m4/fchdir.m4: Update.
2258         * gnulib/import/m4/fcntl-o.m4: Update.
2259         * gnulib/import/m4/fcntl.m4: Update.
2260         * gnulib/import/m4/fcntl_h.m4: Update.
2261         * gnulib/import/m4/fdopendir.m4: Update.
2262         * gnulib/import/m4/filenamecat.m4: Update.
2263         * gnulib/import/m4/flexmember.m4: Update.
2264         * gnulib/import/m4/float_h.m4: Update.
2265         * gnulib/import/m4/fnmatch.m4: Update.
2266         * gnulib/import/m4/fnmatch_h.m4: Update.
2267         * gnulib/import/m4/fpieee.m4: Update.
2268         * gnulib/import/m4/frexp.m4: Update.
2269         * gnulib/import/m4/frexpl.m4: Update.
2270         * gnulib/import/m4/fstat.m4: Update.
2271         * gnulib/import/m4/fstatat.m4: Update.
2272         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2273         * gnulib/import/m4/getcwd-path-max.m4: Update.
2274         * gnulib/import/m4/getcwd.m4: Update.
2275         * gnulib/import/m4/getdtablesize.m4: Update.
2276         * gnulib/import/m4/getlogin.m4: Update.
2277         * gnulib/import/m4/getlogin_r.m4: Update.
2278         * gnulib/import/m4/getpagesize.m4: Update.
2279         * gnulib/import/m4/getprogname.m4: Update.
2280         * gnulib/import/m4/gettimeofday.m4: Update.
2281         * gnulib/import/m4/glibc21.m4: Update.
2282         * gnulib/import/m4/glob.m4: Update.
2283         * gnulib/import/m4/glob_h.m4: Update.
2284         * gnulib/import/m4/gnulib-cache.m4: Update.
2285         * gnulib/import/m4/gnulib-common.m4: Update.
2286         * gnulib/import/m4/gnulib-comp.m4: Update.
2287         * gnulib/import/m4/gnulib-tool.m4: Update.
2288         * gnulib/import/m4/hard-locale.m4: Update.
2289         * gnulib/import/m4/include_next.m4: Update.
2290         * gnulib/import/m4/inttypes-pri.m4: Update.
2291         * gnulib/import/m4/inttypes.m4: Update.
2292         * gnulib/import/m4/isnand.m4: Update.
2293         * gnulib/import/m4/isnanl.m4: Update.
2294         * gnulib/import/m4/largefile.m4: Update.
2295         * gnulib/import/m4/limits-h.m4: Update.
2296         * gnulib/import/m4/localcharset.m4: Update.
2297         * gnulib/import/m4/locale-fr.m4: Update.
2298         * gnulib/import/m4/locale-ja.m4: Update.
2299         * gnulib/import/m4/locale-zh.m4: Update.
2300         * gnulib/import/m4/localtime-buffer.m4: Update.
2301         * gnulib/import/m4/longlong.m4: Update.
2302         * gnulib/import/m4/lstat.m4: Update.
2303         * gnulib/import/m4/malloc.m4: Update.
2304         * gnulib/import/m4/malloca.m4: Update.
2305         * gnulib/import/m4/math_h.m4: Update.
2306         * gnulib/import/m4/mbrtowc.m4: Update.
2307         * gnulib/import/m4/mbsinit.m4: Update.
2308         * gnulib/import/m4/mbsrtowcs.m4: Update.
2309         * gnulib/import/m4/mbstate_t.m4: Update.
2310         * gnulib/import/m4/memchr.m4: Update.
2311         * gnulib/import/m4/memmem.m4: Update.
2312         * gnulib/import/m4/mempcpy.m4: Update.
2313         * gnulib/import/m4/memrchr.m4: Update.
2314         * gnulib/import/m4/mkdir.m4: Update.
2315         * gnulib/import/m4/mkstemp.m4: Update.
2316         * gnulib/import/m4/mmap-anon.m4: Update.
2317         * gnulib/import/m4/mode_t.m4: Update.
2318         * gnulib/import/m4/msvc-inval.m4: Update.
2319         * gnulib/import/m4/msvc-nothrow.m4: Update.
2320         * gnulib/import/m4/multiarch.m4: Update.
2321         * gnulib/import/m4/nocrash.m4: Update.
2322         * gnulib/import/m4/off_t.m4: Update.
2323         * gnulib/import/m4/onceonly.m4: Update.
2324         * gnulib/import/m4/open-cloexec.m4: Update.
2325         * gnulib/import/m4/open.m4: Update.
2326         * gnulib/import/m4/openat.m4: Update.
2327         * gnulib/import/m4/opendir.m4: Update.
2328         * gnulib/import/m4/pathmax.m4: Update.
2329         * gnulib/import/m4/rawmemchr.m4: Update.
2330         * gnulib/import/m4/readdir.m4: Update.
2331         * gnulib/import/m4/readlink.m4: Update.
2332         * gnulib/import/m4/realloc.m4: Update.
2333         * gnulib/import/m4/rename.m4: Update.
2334         * gnulib/import/m4/rewinddir.m4: Update.
2335         * gnulib/import/m4/rmdir.m4: Update.
2336         * gnulib/import/m4/save-cwd.m4: Update.
2337         * gnulib/import/m4/secure_getenv.m4: Update.
2338         * gnulib/import/m4/setenv.m4: Update.
2339         * gnulib/import/m4/signal_h.m4: Update.
2340         * gnulib/import/m4/ssize_t.m4: Update.
2341         * gnulib/import/m4/stat-time.m4: Update.
2342         * gnulib/import/m4/stat.m4: Update.
2343         * gnulib/import/m4/std-gnu11.m4: Update.
2344         * gnulib/import/m4/stdbool.m4: Update.
2345         * gnulib/import/m4/stddef_h.m4: Update.
2346         * gnulib/import/m4/stdint.m4: Update.
2347         * gnulib/import/m4/stdio_h.m4: Update.
2348         * gnulib/import/m4/stdlib_h.m4: Update.
2349         * gnulib/import/m4/strchrnul.m4: Update.
2350         * gnulib/import/m4/strdup.m4: Update.
2351         * gnulib/import/m4/strerror.m4: Update.
2352         * gnulib/import/m4/string_h.m4: Update.
2353         * gnulib/import/m4/strstr.m4: Update.
2354         * gnulib/import/m4/strtok_r.m4: Update.
2355         * gnulib/import/m4/sys_socket_h.m4: Update.
2356         * gnulib/import/m4/sys_stat_h.m4: Update.
2357         * gnulib/import/m4/sys_time_h.m4: Update.
2358         * gnulib/import/m4/sys_types_h.m4: Update.
2359         * gnulib/import/m4/tempname.m4: Update.
2360         * gnulib/import/m4/time_h.m4: Update.
2361         * gnulib/import/m4/unistd-safer.m4: Update.
2362         * gnulib/import/m4/unistd_h.m4: Update.
2363         * gnulib/import/m4/warn-on-use.m4: Update.
2364         * gnulib/import/m4/wchar_h.m4: Update.
2365         * gnulib/import/m4/wchar_t.m4: Update.
2366         * gnulib/import/m4/wctype_h.m4: Update.
2367         * gnulib/import/m4/wint_t.m4: Update.
2368         * gnulib/import/malloc.c: Update.
2369         * gnulib/import/malloc/scratch_buffer.h: Update.
2370         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2371         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2372         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2373         * gnulib/import/malloca.c: Update.
2374         * gnulib/import/malloca.h: Update.
2375         * gnulib/import/malloca.valgrind: Update.
2376         * gnulib/import/math.in.h: Update.
2377         * gnulib/import/mbrtowc.c: Update.
2378         * gnulib/import/mbsinit.c: Update.
2379         * gnulib/import/mbsrtowcs-impl.h: Update.
2380         * gnulib/import/mbsrtowcs-state.c: Update.
2381         * gnulib/import/mbsrtowcs.c: Update.
2382         * gnulib/import/memchr.c: Update.
2383         * gnulib/import/memmem.c: Update.
2384         * gnulib/import/mempcpy.c: Update.
2385         * gnulib/import/memrchr.c: Update.
2386         * gnulib/import/mkdir.c: Update.
2387         * gnulib/import/mkstemp.c: Update.
2388         * gnulib/import/msvc-inval.c: Update.
2389         * gnulib/import/msvc-inval.h: Update.
2390         * gnulib/import/msvc-nothrow.c: Update.
2391         * gnulib/import/msvc-nothrow.h: Update.
2392         * gnulib/import/open.c: Update.
2393         * gnulib/import/openat-die.c: Update.
2394         * gnulib/import/openat-priv.h: Update.
2395         * gnulib/import/openat-proc.c: Update.
2396         * gnulib/import/openat.c: Update.
2397         * gnulib/import/openat.h: Update.
2398         * gnulib/import/opendir.c: Update.
2399         * gnulib/import/pathmax.h: Update.
2400         * gnulib/import/pipe-safer.c: Update.
2401         * gnulib/import/rawmemchr.c: Update.
2402         * gnulib/import/readdir.c: Update.
2403         * gnulib/import/readlink.c: Update.
2404         * gnulib/import/realloc.c: Update.
2405         * gnulib/import/ref-add.sin: Update.
2406         * gnulib/import/ref-del.sin: Update.
2407         * gnulib/import/rename.c: Update.
2408         * gnulib/import/rewinddir.c: Update.
2409         * gnulib/import/rmdir.c: Update.
2410         * gnulib/import/same-inode.h: Update.
2411         * gnulib/import/save-cwd.c: Update.
2412         * gnulib/import/save-cwd.h: Update.
2413         * gnulib/import/scratch_buffer.h: Update.
2414         * gnulib/import/secure_getenv.c: Update.
2415         * gnulib/import/setenv.c: Update.
2416         * gnulib/import/signal.in.h: Update.
2417         * gnulib/import/stat-time.c: Update.
2418         * gnulib/import/stat-time.h: Update.
2419         * gnulib/import/stat-w32.c: Update.
2420         * gnulib/import/stat-w32.h: Update.
2421         * gnulib/import/stat.c: Update.
2422         * gnulib/import/stdbool.in.h: Update.
2423         * gnulib/import/stddef.in.h: Update.
2424         * gnulib/import/stdint.in.h: Update.
2425         * gnulib/import/stdio.in.h: Update.
2426         * gnulib/import/stdlib.in.h: Update.
2427         * gnulib/import/str-two-way.h: Update.
2428         * gnulib/import/strchrnul.c: Update.
2429         * gnulib/import/strdup.c: Update.
2430         * gnulib/import/streq.h: Update.
2431         * gnulib/import/strerror-override.c: Update.
2432         * gnulib/import/strerror-override.h: Update.
2433         * gnulib/import/strerror.c: Update.
2434         * gnulib/import/string.in.h: Update.
2435         * gnulib/import/stripslash.c: Update.
2436         * gnulib/import/strnlen1.c: Update.
2437         * gnulib/import/strnlen1.h: Update.
2438         * gnulib/import/strstr.c: Update.
2439         * gnulib/import/strtok_r.c: Update.
2440         * gnulib/import/sys_stat.in.h: Update.
2441         * gnulib/import/sys_time.in.h: Update.
2442         * gnulib/import/sys_types.in.h: Update.
2443         * gnulib/import/tempname.c: Update.
2444         * gnulib/import/tempname.h: Update.
2445         * gnulib/import/time.in.h: Update.
2446         * gnulib/import/unistd--.h: Update.
2447         * gnulib/import/unistd-safer.h: Update.
2448         * gnulib/import/unistd.in.h: Update.
2449         * gnulib/import/unsetenv.c: Update.
2450         * gnulib/import/verify.h: Update.
2451         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2452         * gnulib/import/wchar.in.h: Update.
2453         * gnulib/import/wctype.in.h: Update.
2454         * gnulib/import/xalloc-oversized.h: Update.
2455         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2456         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2457
2458 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2459
2460         * record-btrace.c (get_thread_current_frame): Remove
2461         old_inferior_ptid.
2462
2463 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2464
2465         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2466         with check_tag to 1 if and only if the type is tagged and the
2467         component being searched cannot been found in the current
2468         view. Otherwise, always call ada_to_fixed_type with
2469         check_tag to 0.
2470
2471 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2472
2473         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2474         declaration.
2475         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2476         * ada-varobj.c (ada_varobj_get_number_of_children,
2477         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2478
2479 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2480
2481         * ada-valprint.c (ada_value_print): Use type instead of
2482         enclosing type.
2483
2484 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2485
2486         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2487         an array of access to unconstrained array.
2488
2489 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2490
2491         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2492         (ada_check_typedef): Use it.
2493
2494 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2495
2496         * ada-varobj.c (ada_varobj_describe_struct_child)
2497         (ada_varobj_describe_child): Handle union case like struct one.
2498
2499 2018-09-10  Tom Tromey  <tom@tromey.com>
2500
2501         PR python/18380:
2502         * python/python.c (_initialize_python): Make example in "python"
2503         help work in Python 3.
2504
2505 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2506
2507         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2508         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2509         $(EXEEXT) to the script, as it is not a program.
2510
2511 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2512
2513         * python/py-prettyprint.c (pretty_print_one_value): Return
2514         gdbpy_ref<>.
2515         (print_string_repr): Adjust.
2516         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2517         * python/python-internal.h (apply_varobj_pretty_printer): Return
2518         gdbpy_ref<>.
2519         * varobj.c (varobj_value_get_print_value): Adjust.
2520
2521 2018-09-08  Tom Tromey  <tom@tromey.com>
2522
2523         PR python/16047:
2524         * python/py-prettyprint.c (pretty_print_one_value): Check for
2525         to_string method.
2526
2527 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2528
2529         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2530         replace_operator_with_call.
2531
2532 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2533
2534         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2535
2536 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2537
2538         * ada-typeprint.c (print_range): Print the bounds using TYPE
2539         rather than its TYPE_TARGET_TYPE.
2540
2541 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2542
2543         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2544         call to ada_to_fixed_value_create.
2545
2546 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2547
2548         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2549
2550 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2551
2552         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2553         by calls to error.
2554
2555 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2556
2557         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2558         Move update of loop variable "fi".
2559
2560 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2561
2562         * ada-lang.c (value_assign_to_component): In the case of
2563         big-endian targets, extract the bits of the given VAL
2564         using an src_offset of zero if container is not a scalar.
2565
2566 2018-09-06  Simon Ser  <contact@emersion.fr>
2567
2568         PR gdb/23105
2569         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2570         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2571         * fbsd-tdep.c (fbsd_make_note_desc): New.
2572         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2573         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2574         * target.h (enum target_object) Add FreeBSD-specific
2575         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2576
2577 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2578
2579         * compile/compile-c.h (generate_c_for_variable_locations):
2580         Change reference to pointer.
2581         * compile/compile-c-support.c (compile_program) <compute>:
2582         Likewise.
2583         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2584         (generate_c_for_for_one_variable): Likewise
2585         (generate_c_for_variable_locations): Likewise
2586         * compile/compile-c-types.c (compile_c_instance::convert_type):
2587         Likewise
2588         * compile/compile-cplus-symbols.c (convert_one_symbol):
2589         std::move the scope passed to enter_scope.
2590         * compile/compile-cplus-types.c
2591         (compile_cplus_instance::enter_scope): Make parameter
2592         rvalue-reference.
2593         (compile_cplus_instance::new_scope): Change reference to
2594         pointer.
2595         (compile_cplus_instance::convert_type): Likewise
2596         (compile_cplus_convert_typedef): std::move the scope passed to
2597         enter_scope.
2598         (compile_cplus_convert_struct_or_union): Likewise.
2599         (compile_cplus_convert_enum): Likewise.
2600         (compile_cplus_convert_namespace): Likewise.
2601         * compile/compile-cplus.h (compile_cplus_instance)
2602         <enter_scope>: Make parameter rvalue-reference.
2603         * compile/compile-internal.h (compile_instance)
2604         <get_cached_type>: Likewise
2605         * compile/compile-loc2c.c (push): Likewise
2606         (pushf): Likewise
2607         (unary): Likewise
2608         (binary): Likewise
2609         (print_label): Likewise
2610         (pushf_register_address): Likewise
2611         (pushf_register): Likewise
2612         (do_compile_dwarf_expr_to_c): Likewise
2613         (compile_dwarf_expr_to_c): Likewise
2614         (compile_dwarf_bounds_to_c): Likewise
2615         * compile/compile.c (compile_instance::get_cached_type):
2616         Likewise
2617         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2618         (compile_dwarf_bounds_to_c): Likewise
2619         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2620         (dwarf2_compile_property_to_c): Likewise
2621         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2622         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2623         Likewise
2624
2625 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2626
2627         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2628         * tui/tui-data.c (init_content_element): Don't initialize it.
2629
2630 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2631
2632         * tui/tui-data.h (struct tui_win_info)
2633         <detail::opaque>: Remove.
2634         * tui/tui-data.c (init_win_info): Remove assignment.
2635
2636 2018-09-05  Tom Tromey  <tom@tromey.com>
2637
2638         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2639         -Wformat-nonliteral.
2640         * target-float.c (host_float_ops<T>::to_string)
2641         (host_float_ops<T>::from_string): Use
2642         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2643         * configure: Rebuild.
2644
2645 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2646
2647         * printcmd.c (printf_c_string): Use
2648         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2649         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2650
2651 2018-09-05  Tom Tromey  <tom@tromey.com>
2652
2653         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2654
2655 2018-09-05  Tom de Vries  <tdevries@suse.de>
2656
2657         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2658         with resolve_abstract_p == true.
2659         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2660         defaulting to false. Propagate resolve_abstract_p to
2661         dwarf2_fetch_die_loc_sect_off.
2662         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2663         parameter, defaulting to false.
2664         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2665         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2666         parameter.
2667         * dwarf2read.h (struct die_info): Forward-declare.
2668         (die_info_ptr): New typedef.
2669         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2670
2671 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2672
2673         GDB 8.2 released.
2674
2675 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2676             Pedro Alves  <palves@redhat.com>
2677
2678         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2679         "aclocal-m4-deps.mk".  Include file here.
2680         $(srcdir)/aclocal.m4: Add "configure.ac".
2681         * gnulib/aclocal-m4-deps.mk: New file.
2682         * gnulib/update-gnulib.sh: Automatically update
2683         "aclocal-m4-deps.mk".
2684
2685 2018-09-04  Tom Tromey  <tom@tromey.com>
2686
2687         * configure: Rebuild.
2688         * configure.ac: Remove multi-ice code.
2689
2690 2018-09-04  Tom Tromey  <tom@tromey.com>
2691
2692         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2693         (ada-exp.o): Update.
2694
2695 2018-09-04  Tom Tromey  <tom@tromey.com>
2696
2697         * Makefile.in (printcmd.o, target-float.o): Remove.
2698         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2699
2700 2018-09-04  Tom Tromey  <tom@tromey.com>
2701
2702         * gnulib/Makefile.in: Remove obsolete comment.
2703         * Makefile.in: Remove obsolete comment.
2704
2705 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2706
2707         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2708         line with '+'.
2709
2710 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2711
2712         * riscv-tdep.c: Add 'prologue-value.h' include.
2713         (struct riscv_unwind_cache): New struct.
2714         (riscv_debug_unwinder): New global.
2715         (riscv_scan_prologue): Update arguments, capture register details
2716         from prologue scan.
2717         (riscv_skip_prologue): Reformat arguments line, move end of
2718         prologue calculation into riscv_scan_prologue.
2719         (riscv_frame_cache): Update return type, create
2720         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2721         details.
2722         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2723         (riscv_frame_prev_register): Use the trad_frame within the
2724         riscv_unwind_cache.
2725         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2726         flag.
2727
2728 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2729
2730         * trad-frame.h (trad_frame_set_realreg): Declare.
2731         (trad_frame_set_addr): Declare.
2732         * trad-frame.c (trad_frame_set_realreg): Define new function.
2733         (trad_frame_set_addr): Define new function.
2734         (trad_frame_set_reg_realreg): Use new function.
2735         (trad_frame_set_reg_addr): Use new function.
2736
2737 2018-09-01  Keith Seitz  <keiths@redhat.com>
2738
2739         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2740         pulongest instead of "%lld".
2741         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2742         ATTRIBUTE_UNUSED.
2743
2744 2018-08-31  Tom Tromey  <tom@tromey.com>
2745
2746         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2747         variant part type.
2748
2749 2018-08-31  Pedro Alves  <palves@redhat.com>
2750
2751         * gdbarch.h: Regenerate.
2752
2753 2018-08-31  Pedro Alves  <palves@redhat.com>
2754
2755         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2756         * target.h (Hardware watchpoint interfaces): Describe
2757         continuable/steppable/non-steppable watchpoints.
2758         * gdbarch.h, gdbarch.c: Regenerate.
2759
2760 2018-08-31  Pedro Alves  <palves@redhat.com>
2761
2762         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2763         Delete.
2764         * s390-linux-nat.c
2765         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2766         * target.h (target_ops::have_continuable_watchpoint): Delete.
2767         (target_have_continuable_watchpoint): Delete.
2768         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2769         * target-delegates.c: Regenerate.
2770
2771 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2772
2773         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2774         the files present in "gnulib/import/m4/".
2775
2776 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2777
2778         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2779         c.sw, c.swsp, and c.sdsp.
2780
2781 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2782
2783         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2784         (riscv_read_misa_reg): Don't cache value read into inferior data.
2785         (riscv_new_inferior_data): Delete.
2786         (riscv_inferior_data_cleanup): Delete.
2787         (riscv_inferior_data): Delete.
2788         (riscv_invalidate_inferior_data): Delete.
2789         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2790
2791 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2792
2793         * compile/compile-cplus-types.c
2794         (compile_cplus_instance::leave_scope): Take the address of scope
2795         object.
2796         (compile_cplus_instance::convert_qualified_base): Compare quals
2797         to 0.
2798
2799 2018-08-30  Keith Seitz  <keiths@redhat.com>
2800
2801         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2802         Use "%s" and host_address_to_string instead of "%p" in printf.
2803
2804 2018-08-29  Keith Seitz  <keiths@redhat.com>
2805
2806         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2807         and compile-cplus-types.c.
2808         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2809         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2810         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2811         Declare.
2812         * compile/compile-c-support.c: Include compile-cplus.h.
2813         (load_libcompile): Templatize.
2814         (get_compile_context): "New" function.
2815         (c_get_compile_context): Use get_compile_context.
2816         (cplus_get_compile_context): New function.
2817         (cplus_push_user_expression, cplus_pop_user_expression)
2818         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2819         (cplus_compute_program): Define new structs/functions.
2820         * compile/compile-cplus-symmbols.c: New file.
2821         * compile/compile-cplus-types.c: New file.
2822         * compile/compile-cplus.h: New file.
2823         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2824         Declare.
2825         * compile/compile-object-load.c (get_out_value_type): Use
2826         strncmp_iw when comparing symbol names.
2827         (compile_object_load): Add mst_bss and mst_data.
2828         * compile/compile.c (_initialize_compile): Remove
2829         -Wno-implicit-function-declaration from `compile_args'.
2830         * compile/gcc-cp-plugin.h: New file.
2831         * NEWS: Mention C++ compile support and new debug options.
2832
2833 2018-08-29  Keith Seitz  <keiths@redhat.com>
2834
2835         * linespec.c (collect_info::add_symbol): Make virtual.
2836         (struct symbol_searcher_collect_info): New struct.
2837         (symbol_searcher::find_all_symbols): New method.
2838         * symtab.h (class symbol_searcher): New class.
2839
2840 2018-08-29  Keith Seitz  <keiths@redhat.com>
2841
2842         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2843         Change to vector of block_symbol.  Update all users.
2844         (struct collect_info) <symbols>: Likewise.
2845         (collect_info::add_symbol): Take block_symbol as argument.
2846         Update all callers.
2847         (decode_compound_collector) <m_symbols>: Change type to vector
2848         of block_symbol.  Update all users.
2849         (decode_compound_collector::operator ()): Change parameter type
2850         to block_symbol.
2851         (find_method, find_function_symbols, find_linespec_symbols)
2852         (find_label_symbols_in_block, find_label_symbols): Change symbol
2853         vectors to block_symbol vectors.
2854         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2855         block_symbol.
2856
2857 2018-08-29  Keith Seitz  <keiths@redhat.com>
2858
2859         * linespec.c (symbolp): Remove typedef and VEC definitions.
2860         (bound_minimal_symbol_d): Likewise.
2861
2862 2018-08-29  Keith Seitz  <keiths@redhat.com>
2863
2864         * linespec.c (decode_compound_collector::decode_compound_collector):
2865         Remove initialization for `m_symtabs'.
2866         (decode_compound_collector::release_symbols): Change return type
2867         to std::vector.  Update all callers.
2868         (class decode_compound_collector) <m_symbols>: Change type to
2869         std::vector.
2870         (lookup_prefix_sym): Change return type to std::vector.  Update all
2871         callers.
2872         (compare_symbols): Remove.
2873         (std_compare_symbols): Rename to `compare_symbols'.
2874         (find_method): Change `sym_classes' parameter to std::vector.
2875         Update all callers.  Use std::sort to sort sym_classes.
2876         (find_linespec_symbols): Remove cleanup.
2877
2878 2018-08-29  Keith Seitz  <keiths@redhat.com>
2879
2880         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2881         std::vector.  Update all users.
2882         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2883         (struct collect_info) <minimal_symbols>: Likewise.
2884         (compare_msymbols): Return bool.  Change parameters to const
2885         bound_minimal_symbol references.
2886         (find_method, find_function_symbols, find_linespec_symbols): Change
2887         `minsyms' parameter to std::vector.  Update all callers.
2888
2889 2018-08-29  Keith Seitz  <keiths@redhat.com>
2890
2891         * linespec.c (struct linespec) <label_symbols>: Change type to
2892         std::vector.  Update all users.
2893         (find_label_symbols_in_block): Change `result' parameter to
2894         std::vector.  Update all callers.
2895         (find_label_symbols): Return std::vector.  Update all callers.
2896
2897 2018-08-29  Keith Seitz  <keiths@redhat.com>
2898
2899         * linespec.c (struct linespec) <function_symbols>: Change type to
2900         std::vector.  Update all users.
2901         (struct collect_info) <function_symbols>: Likewise.
2902         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2903         (std_compare_symbols): New function.
2904         (find_method, find_function_symbols, find_linespec_symbols)
2905         (find_label_symbols_in_block): Change `symbols' parameter to
2906         std::vector.  Update all callers.
2907         (find_label_symbols): Likewise for `function_symbols' and
2908         `label_funcs_ret'.
2909
2910 2018-08-29  Keith Seitz  <keiths@redhat.com>
2911
2912         * linespec.c (symtab_vector_up): Define.
2913         (struct linespec) <file_symtabs>: Change type to std::vector *.
2914         Update all uses.
2915         (struct collect_info) <file_symtabs>: Likewise.
2916         (collect_symtabs_from_filename): Return symtab_vector_up.
2917         Update all callers.
2918         (decode_objc): Remove cleanup.
2919         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2920         (symtab_collector::release_symtabs): Return symtab_vector_up.
2921         Update all callers.
2922         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2923         Update all users.
2924         (collect_symtabs_from_filename, symtabs_from_filename): Return
2925         symtab_vector_up.  Update all callers.
2926
2927 2018-08-29  Tom Tromey  <tom@tromey.com>
2928
2929         * csky-tdep.c (csky_analyze_prologue): Use
2930         core_addr_to_string_nz.
2931
2932 2018-08-29  Tom Tromey  <tom@tromey.com>
2933
2934         * windows-nat.c (struct xlate_exception) <them>: Change type to
2935         DWORD.
2936         (xlate): Fix formatting.  Remove last entry.
2937         (struct xlate_exception, xlate): Comment out.
2938         (windows_nat_target::resume): Use ranged for.
2939
2940 2018-08-29  Jim Wilson  <jimw@sifive.com>
2941
2942         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2943         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2944         of NT_PRFPREG.
2945         (riscv_linux_nat_target::store_registers): Likewise.
2946
2947 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2948
2949         PR gdb/23555
2950         PR gdb/23558
2951         * gnulib/aclocal.m4: Regenerate.
2952         * gnulib/config.in: Regenerate.
2953         * gnulib/configure: Regenerate.
2954         * gnulib/import/Makefile.am: Update.
2955         * gnulib/import/Makefile.in: Update.
2956         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2957         * gnulib/import/_Noreturn.h: ... this.
2958         * gnulib/import/alloca.in.h: Update.
2959         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2960         * gnulib/import/arg-nonnull.h: ... this.
2961         * gnulib/import/assure.h: Update.
2962         * gnulib/import/at-func.c: Update.
2963         * gnulib/import/basename-lgpl.c: Update.
2964         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2965         * gnulib/import/c++defs.h: ... this.
2966         * gnulib/import/canonicalize-lgpl.c: Update.
2967         * gnulib/import/cdefs.h: Update.
2968         * gnulib/import/chdir-long.c: Update.
2969         * gnulib/import/chdir-long.h: Update.
2970         * gnulib/import/cloexec.c: Update.
2971         * gnulib/import/cloexec.h: Update.
2972         * gnulib/import/close.c: Update.
2973         * gnulib/import/closedir.c: Update.
2974         * gnulib/import/config.charset: Update.
2975         * gnulib/import/dirent-private.h: Update.
2976         * gnulib/import/dirent.in.h: Update.
2977         * gnulib/import/dirfd.c: Update.
2978         * gnulib/import/dirname-lgpl.c: Update.
2979         * gnulib/import/dirname.h: Update.
2980         * gnulib/import/dosname.h: Update.
2981         * gnulib/import/dup-safer-flag.c: Update.
2982         * gnulib/import/dup-safer.c: Update.
2983         * gnulib/import/dup.c: Update.
2984         * gnulib/import/dup2.c: Update.
2985         * gnulib/import/errno.in.h: Update.
2986         * gnulib/import/error.c: Update.
2987         * gnulib/import/error.h: Update.
2988         * gnulib/import/exitfail.c: Update.
2989         * gnulib/import/exitfail.h: Update.
2990         * gnulib/import/extra/update-copyright: Update.
2991         * gnulib/import/fchdir.c: Update.
2992         * gnulib/import/fcntl.c: Update.
2993         * gnulib/import/fcntl.in.h: Update.
2994         * gnulib/import/fd-hook.c: Update.
2995         * gnulib/import/fd-hook.h: Update.
2996         * gnulib/import/fd-safer-flag.c: Update.
2997         * gnulib/import/fd-safer.c: Update.
2998         * gnulib/import/fdopendir.c: Update.
2999         * gnulib/import/filename.h: Update.
3000         * gnulib/import/filenamecat-lgpl.c: Update.
3001         * gnulib/import/filenamecat.h: Update.
3002         * gnulib/import/flexmember.h: Update.
3003         * gnulib/import/float+.h: Update.
3004         * gnulib/import/float.c: Update.
3005         * gnulib/import/float.in.h: Update.
3006         * gnulib/import/fnmatch.c: Update.
3007         * gnulib/import/fnmatch.in.h: Update.
3008         * gnulib/import/fnmatch_loop.c: Update.
3009         * gnulib/import/fpucw.h: Update.
3010         * gnulib/import/frexp.c: Update.
3011         * gnulib/import/frexpl.c: Update.
3012         * gnulib/import/fstat.c: Update.
3013         * gnulib/import/fstatat.c: Update.
3014         * gnulib/import/getcwd-lgpl.c: Update.
3015         * gnulib/import/getcwd.c: Update.
3016         * gnulib/import/getdtablesize.c: Update.
3017         * gnulib/import/getlogin_r.c: Update.
3018         * gnulib/import/getprogname.c: Update.
3019         * gnulib/import/getprogname.h: Update.
3020         * gnulib/import/gettext.h: Update.
3021         * gnulib/import/gettimeofday.c: Update.
3022         * gnulib/import/glob-libc.h: Update.
3023         * gnulib/import/glob.c: Update.
3024         * gnulib/import/glob.in.h: Update.
3025         * gnulib/import/glob_internal.h: Update.
3026         * gnulib/import/glob_pattern_p.c: Update.
3027         * gnulib/import/globfree.c: Update.
3028         * gnulib/import/hard-locale.c: Update.
3029         * gnulib/import/hard-locale.h: Update.
3030         * gnulib/import/intprops.h: Update.
3031         * gnulib/import/inttypes.in.h: Update.
3032         * gnulib/import/isnan.c: Update.
3033         * gnulib/import/isnand-nolibm.h: Update.
3034         * gnulib/import/isnand.c: Update.
3035         * gnulib/import/isnanl-nolibm.h: Update.
3036         * gnulib/import/isnanl.c: Update.
3037         * gnulib/import/itold.c: Update.
3038         * gnulib/import/libc-config.h: Update.
3039         * gnulib/import/limits.in.h: Update.
3040         * gnulib/import/localcharset.c: Update.
3041         * gnulib/import/localcharset.h: Update.
3042         * gnulib/import/localtime-buffer.c: Update.
3043         * gnulib/import/localtime-buffer.h: Update.
3044         * gnulib/import/lstat.c: Update.
3045         * gnulib/import/m4/00gnulib.m4: Update.
3046         * gnulib/import/m4/__inline.m4: Update.
3047         * gnulib/import/m4/absolute-header.m4: Update.
3048         * gnulib/import/m4/alloca.m4: Update.
3049         * gnulib/import/m4/builtin-expect.m4: Update.
3050         * gnulib/import/m4/canonicalize.m4: Update.
3051         * gnulib/import/m4/chdir-long.m4: Update.
3052         * gnulib/import/m4/close.m4: Update.
3053         * gnulib/import/m4/closedir.m4: Update.
3054         * gnulib/import/m4/configmake.m4: Update.
3055         * gnulib/import/m4/d-ino.m4: Update.
3056         * gnulib/import/m4/d-type.m4: Update.
3057         * gnulib/import/m4/dirent_h.m4: Update.
3058         * gnulib/import/m4/dirfd.m4: Update.
3059         * gnulib/import/m4/dirname.m4: Update.
3060         * gnulib/import/m4/double-slash-root.m4: Update.
3061         * gnulib/import/m4/dup.m4: Update.
3062         * gnulib/import/m4/dup2.m4: Update.
3063         * gnulib/import/m4/eealloc.m4: Update.
3064         * gnulib/import/m4/environ.m4: Update.
3065         * gnulib/import/m4/errno_h.m4: Update.
3066         * gnulib/import/m4/error.m4: Update.
3067         * gnulib/import/m4/exponentd.m4: Update.
3068         * gnulib/import/m4/exponentl.m4: Update.
3069         * gnulib/import/m4/extensions.m4: Update.
3070         * gnulib/import/m4/extern-inline.m4: Update.
3071         * gnulib/import/m4/fchdir.m4: Update.
3072         * gnulib/import/m4/fcntl-o.m4: Update.
3073         * gnulib/import/m4/fcntl.m4: Update.
3074         * gnulib/import/m4/fcntl_h.m4: Update.
3075         * gnulib/import/m4/fdopendir.m4: Update.
3076         * gnulib/import/m4/filenamecat.m4: Update.
3077         * gnulib/import/m4/flexmember.m4: Update.
3078         * gnulib/import/m4/float_h.m4: Update.
3079         * gnulib/import/m4/fnmatch.m4: Update.
3080         * gnulib/import/m4/fnmatch_h.m4: Update.
3081         * gnulib/import/m4/fpieee.m4: Update.
3082         * gnulib/import/m4/frexp.m4: Update.
3083         * gnulib/import/m4/frexpl.m4: Update.
3084         * gnulib/import/m4/fstat.m4: Update.
3085         * gnulib/import/m4/fstatat.m4: Update.
3086         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3087         * gnulib/import/m4/getcwd-path-max.m4: Update.
3088         * gnulib/import/m4/getcwd.m4: Update.
3089         * gnulib/import/m4/getdtablesize.m4: Update.
3090         * gnulib/import/m4/getlogin.m4: Update.
3091         * gnulib/import/m4/getlogin_r.m4: Update.
3092         * gnulib/import/m4/getpagesize.m4: Update.
3093         * gnulib/import/m4/getprogname.m4: Update.
3094         * gnulib/import/m4/gettimeofday.m4: Update.
3095         * gnulib/import/m4/glibc21.m4: Update.
3096         * gnulib/import/m4/glob.m4: Update.
3097         * gnulib/import/m4/glob_h.m4: Update.
3098         * gnulib/import/m4/gnulib-cache.m4: Update.
3099         * gnulib/import/m4/gnulib-common.m4: Update.
3100         * gnulib/import/m4/gnulib-comp.m4: Update.
3101         * gnulib/import/m4/gnulib-tool.m4: Update.
3102         * gnulib/import/m4/hard-locale.m4: Update.
3103         * gnulib/import/m4/include_next.m4: Update.
3104         * gnulib/import/m4/inttypes-pri.m4: Update.
3105         * gnulib/import/m4/inttypes.m4: Update.
3106         * gnulib/import/m4/isnand.m4: Update.
3107         * gnulib/import/m4/isnanl.m4: Update.
3108         * gnulib/import/m4/largefile.m4: Update.
3109         * gnulib/import/m4/limits-h.m4: Update.
3110         * gnulib/import/m4/localcharset.m4: Update.
3111         * gnulib/import/m4/locale-fr.m4: Update.
3112         * gnulib/import/m4/locale-ja.m4: Update.
3113         * gnulib/import/m4/locale-zh.m4: Update.
3114         * gnulib/import/m4/localtime-buffer.m4: Update.
3115         * gnulib/import/m4/longlong.m4: Update.
3116         * gnulib/import/m4/lstat.m4: Update.
3117         * gnulib/import/m4/malloc.m4: Update.
3118         * gnulib/import/m4/malloca.m4: Update.
3119         * gnulib/import/m4/math_h.m4: Update.
3120         * gnulib/import/m4/mbrtowc.m4: Update.
3121         * gnulib/import/m4/mbsinit.m4: Update.
3122         * gnulib/import/m4/mbsrtowcs.m4: Update.
3123         * gnulib/import/m4/mbstate_t.m4: Update.
3124         * gnulib/import/m4/memchr.m4: Update.
3125         * gnulib/import/m4/memmem.m4: Update.
3126         * gnulib/import/m4/mempcpy.m4: Update.
3127         * gnulib/import/m4/memrchr.m4: Update.
3128         * gnulib/import/m4/mkdir.m4: Update.
3129         * gnulib/import/m4/mkstemp.m4: Update.
3130         * gnulib/import/m4/mmap-anon.m4: Update.
3131         * gnulib/import/m4/mode_t.m4: Update.
3132         * gnulib/import/m4/msvc-inval.m4: Update.
3133         * gnulib/import/m4/msvc-nothrow.m4: Update.
3134         * gnulib/import/m4/multiarch.m4: Update.
3135         * gnulib/import/m4/nocrash.m4: Update.
3136         * gnulib/import/m4/off_t.m4: Update.
3137         * gnulib/import/m4/onceonly.m4: Update.
3138         * gnulib/import/m4/open-cloexec.m4: Update.
3139         * gnulib/import/m4/open.m4: Update.
3140         * gnulib/import/m4/openat.m4: Update.
3141         * gnulib/import/m4/opendir.m4: Update.
3142         * gnulib/import/m4/pathmax.m4: Update.
3143         * gnulib/import/m4/rawmemchr.m4: Update.
3144         * gnulib/import/m4/readdir.m4: Update.
3145         * gnulib/import/m4/readlink.m4: Update.
3146         * gnulib/import/m4/realloc.m4: Update.
3147         * gnulib/import/m4/rename.m4: Update.
3148         * gnulib/import/m4/rewinddir.m4: Update.
3149         * gnulib/import/m4/rmdir.m4: Update.
3150         * gnulib/import/m4/save-cwd.m4: Update.
3151         * gnulib/import/m4/secure_getenv.m4: Update.
3152         * gnulib/import/m4/setenv.m4: Update.
3153         * gnulib/import/m4/signal_h.m4: Update.
3154         * gnulib/import/m4/ssize_t.m4: Update.
3155         * gnulib/import/m4/stat-time.m4: Update.
3156         * gnulib/import/m4/stat.m4: Update.
3157         * gnulib/import/m4/std-gnu11.m4: Update.
3158         * gnulib/import/m4/stdbool.m4: Update.
3159         * gnulib/import/m4/stddef_h.m4: Update.
3160         * gnulib/import/m4/stdint.m4: Update.
3161         * gnulib/import/m4/stdio_h.m4: Update.
3162         * gnulib/import/m4/stdlib_h.m4: Update.
3163         * gnulib/import/m4/strchrnul.m4: Update.
3164         * gnulib/import/m4/strdup.m4: Update.
3165         * gnulib/import/m4/strerror.m4: Update.
3166         * gnulib/import/m4/string_h.m4: Update.
3167         * gnulib/import/m4/strstr.m4: Update.
3168         * gnulib/import/m4/strtok_r.m4: Update.
3169         * gnulib/import/m4/sys_socket_h.m4: Update.
3170         * gnulib/import/m4/sys_stat_h.m4: Update.
3171         * gnulib/import/m4/sys_time_h.m4: Update.
3172         * gnulib/import/m4/sys_types_h.m4: Update.
3173         * gnulib/import/m4/tempname.m4: Update.
3174         * gnulib/import/m4/time_h.m4: Update.
3175         * gnulib/import/m4/unistd-safer.m4: Update.
3176         * gnulib/import/m4/unistd_h.m4: Update.
3177         * gnulib/import/m4/warn-on-use.m4: Update.
3178         * gnulib/import/m4/wchar_h.m4: Update.
3179         * gnulib/import/m4/wchar_t.m4: Update.
3180         * gnulib/import/m4/wctype_h.m4: Update.
3181         * gnulib/import/m4/wint_t.m4: Update.
3182         * gnulib/import/malloc.c: Update.
3183         * gnulib/import/malloc/scratch_buffer.h: Update.
3184         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3185         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3186         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3187         * gnulib/import/malloca.c: Update.
3188         * gnulib/import/malloca.h: Update.
3189         * gnulib/import/malloca.valgrind: Update.
3190         * gnulib/import/math.in.h: Update.
3191         * gnulib/import/mbrtowc.c: Update.
3192         * gnulib/import/mbsinit.c: Update.
3193         * gnulib/import/mbsrtowcs-impl.h: Update.
3194         * gnulib/import/mbsrtowcs-state.c: Update.
3195         * gnulib/import/mbsrtowcs.c: Update.
3196         * gnulib/import/memchr.c: Update.
3197         * gnulib/import/memmem.c: Update.
3198         * gnulib/import/mempcpy.c: Update.
3199         * gnulib/import/memrchr.c: Update.
3200         * gnulib/import/mkdir.c: Update.
3201         * gnulib/import/mkstemp.c: Update.
3202         * gnulib/import/msvc-inval.c: Update.
3203         * gnulib/import/msvc-inval.h: Update.
3204         * gnulib/import/msvc-nothrow.c: Update.
3205         * gnulib/import/msvc-nothrow.h: Update.
3206         * gnulib/import/open.c: Update.
3207         * gnulib/import/openat-die.c: Update.
3208         * gnulib/import/openat-priv.h: Update.
3209         * gnulib/import/openat-proc.c: Update.
3210         * gnulib/import/openat.c: Update.
3211         * gnulib/import/openat.h: Update.
3212         * gnulib/import/opendir.c: Update.
3213         * gnulib/import/pathmax.h: Update.
3214         * gnulib/import/pipe-safer.c: Update.
3215         * gnulib/import/rawmemchr.c: Update.
3216         * gnulib/import/readdir.c: Update.
3217         * gnulib/import/readlink.c: Update.
3218         * gnulib/import/realloc.c: Update.
3219         * gnulib/import/ref-add.sin: Update.
3220         * gnulib/import/ref-del.sin: Update.
3221         * gnulib/import/rename.c: Update.
3222         * gnulib/import/rewinddir.c: Update.
3223         * gnulib/import/rmdir.c: Update.
3224         * gnulib/import/same-inode.h: Update.
3225         * gnulib/import/save-cwd.c: Update.
3226         * gnulib/import/save-cwd.h: Update.
3227         * gnulib/import/scratch_buffer.h: Update.
3228         * gnulib/import/secure_getenv.c: Update.
3229         * gnulib/import/setenv.c: Update.
3230         * gnulib/import/signal.in.h: Update.
3231         * gnulib/import/stat-time.c: Update.
3232         * gnulib/import/stat-time.h: Update.
3233         * gnulib/import/stat-w32.c: Update.
3234         * gnulib/import/stat-w32.h: Update.
3235         * gnulib/import/stat.c: Update.
3236         * gnulib/import/stdbool.in.h: Update.
3237         * gnulib/import/stddef.in.h: Update.
3238         * gnulib/import/stdint.in.h: Update.
3239         * gnulib/import/stdio.in.h: Update.
3240         * gnulib/import/stdlib.in.h: Update.
3241         * gnulib/import/str-two-way.h: Update.
3242         * gnulib/import/strchrnul.c: Update.
3243         * gnulib/import/strdup.c: Update.
3244         * gnulib/import/streq.h: Update.
3245         * gnulib/import/strerror-override.c: Update.
3246         * gnulib/import/strerror-override.h: Update.
3247         * gnulib/import/strerror.c: Update.
3248         * gnulib/import/string.in.h: Update.
3249         * gnulib/import/stripslash.c: Update.
3250         * gnulib/import/strnlen1.c: Update.
3251         * gnulib/import/strnlen1.h: Update.
3252         * gnulib/import/strstr.c: Update.
3253         * gnulib/import/strtok_r.c: Update.
3254         * gnulib/import/sys_stat.in.h: Update.
3255         * gnulib/import/sys_time.in.h: Update.
3256         * gnulib/import/sys_types.in.h: Update.
3257         * gnulib/import/tempname.c: Update.
3258         * gnulib/import/tempname.h: Update.
3259         * gnulib/import/time.in.h: Update.
3260         * gnulib/import/unistd--.h: Update.
3261         * gnulib/import/unistd-safer.h: Update.
3262         * gnulib/import/unistd.in.h: Update.
3263         * gnulib/import/unsetenv.c: Update.
3264         * gnulib/import/verify.h: Update.
3265         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3266         * gnulib/import/wchar.in.h: Update.
3267         * gnulib/import/wctype.in.h: Update.
3268         * gnulib/import/xalloc-oversized.h: Update.
3269         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3270         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3271
3272 2018-08-16  Gary Benson <gbenson@redhat.com>
3273
3274         PR gdb/13000:
3275         * gdb/main.c (captured_main_1): Exit with nonzero status
3276         in batch mode if the last command to be executed failed.
3277         * NEWS: Mention the above.
3278
3279 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3280
3281         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3282         end of warning message.
3283
3284 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3285
3286         PR gdb/22943:
3287         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3288         (aarch64_extract_return_value): Use
3289         aapcs_is_vfp_call_or_return_candidate.
3290         (aarch64_return_in_memory): Likewise.
3291         (aarch64_store_return_value): Likewise.
3292
3293 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3294
3295         * aarch64-tdep.c
3296         (aapcs_is_vfp_call_or_return_candidate): Make static
3297         (pass_in_v_or_stack): Remove function.
3298         (pass_in_v_vfp_candidate): New function.
3299         (aarch64_push_dummy_call): Check for float register candidates.
3300
3301 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3302
3303         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3304         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3305         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3306
3307 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3308
3309         PR build/23399
3310         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3311         (struct ipa_sym_addresses): Rename to...
3312         (struct ipa_sym_addresses_common): ... this.
3313         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3314
3315 2018-08-28  Tom Tromey  <tom@tromey.com>
3316
3317         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3318         (token_fifo): Now a std::vector.
3319         (yylex, c_parse): Update.
3320         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3321         (token_fifo): Now a std::vector.
3322         (yylex, d_parse): Update.
3323         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3324         (token_fifo): Now a std::vector.
3325         (yylex, go_parse): Update.
3326
3327 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3328
3329         * parser-defs.h (struct type_stack) <elements>: Change type to
3330         std::vector<union type_stack_elt>.
3331         <depth, size>: Remove.
3332         * parse.c (parse_exp_in_context_1): Adjust.
3333         (type_stack_reserve): Remove.
3334         (check_type_stack_depth): Remove.
3335         (insert_into_type_stack): Adjust to std::vector.
3336         (insert_type): Likewise.
3337         (push_type): Likewise.
3338         (push_type_int): Likewise.
3339         (insert_type_address_space): Likewise.
3340         (pop_type): Likewise.
3341         (pop_type_int): Likewise.
3342         (pop_typelist): Likewise.
3343         (pop_type_stack): Likewise.
3344         (append_type_stack): Likewise.
3345         (push_type_stack): Likewise.
3346         (get_type_stack): Likewise.
3347         (type_stack_cleanup): Likewise.
3348         (push_typelist): Likewise.
3349         (follow_types): Likewise.
3350         (_initialize_parse): Likewise.
3351
3352 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3353
3354         * NEWS: Mention csky target.
3355
3356 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3357             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3358             Don Breazeal  <donb@codesourcery.com>
3359
3360         * csky-linux-tdep.c: New file.
3361         * csky-tdep.c: Likewise.
3362         * csky-tdep.h: Likewise.
3363         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3364         csky-tdep.o.
3365         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3366         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3367         * configure.tgt: Add csky support.
3368
3369 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3370
3371         * python/py-framefilter.c (py_print_frame): Print frame architecture
3372         when printing on an MI output.
3373
3374 2018-08-27  Tom Tromey  <tom@tromey.com>
3375
3376         PR build/23087:
3377         * configure: Rebuild.
3378         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3379
3380 2018-08-27  Tom Tromey  <tom@tromey.com>
3381
3382         * aarch64-linux-tdep.c
3383         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3384         casts to int.
3385
3386 2018-08-27  Tom Tromey  <tom@tromey.com>
3387
3388         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3389         unsigned.
3390         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3391         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3392         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3393         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3394         unsigned.
3395
3396 2018-08-27  Tom Tromey  <tom@tromey.com>
3397
3398         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3399         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3400
3401 2018-08-27  Tom Tromey  <tom@tromey.com>
3402
3403         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3404         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3405         ULONGEST_MAX.
3406         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3407         ULONGEST_MAX.
3408         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3409         ULONGEST_MAX.
3410         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3411         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3412         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3413         ULONGEST_MAX.
3414         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3415         (ppc64_linux_sigaction_tramp_frame)
3416         (ppc32_linux_sighandler_tramp_frame)
3417         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3418         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3419         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3420         * mn10300-linux-tdep.c (am33_linux_sigframe)
3421         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3422         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3423         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3424         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3425         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3426         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3427         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3428         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3429         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3430         * microblaze-linux-tdep.c
3431         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3432         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3433         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3434         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3435         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3436         * common/common-types.h (ULONGEST_MAX): New define.
3437         (CORE_ADDR_MAX): Fix formatting.
3438         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3439         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3440         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3441         (arm_linux_rt_sigreturn_tramp_frame)
3442         (arm_eabi_linux_sigreturn_tramp_frame)
3443         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3444         (thumb2_eabi_linux_sigreturn_tramp_frame)
3445         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3446         (arm_linux_restart_syscall_tramp_frame)
3447         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3448         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3449         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3450         ULONGEST_MAX.
3451         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3452
3453 2018-08-27  Tom Tromey  <tom@tromey.com>
3454
3455         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3456         CORE_ADDR_MAX.
3457         * mips-tdep.c (mips_deal_with_atomic_sequence)
3458         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3459         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3460         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3461         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3462         CORE_ADDR_MAX.
3463         * aarch64-tdep.c (aarch64_software_single_step): Use
3464         CORE_ADDR_MAX.
3465
3466 2018-08-27  Tom Tromey  <tom@tromey.com>
3467
3468         * linespec.c (complete_linespec_component): Add cast to "char".
3469         * completer.c (completion_tracker::build_completion_result): Add
3470         cast to "char".
3471
3472 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3473
3474         * solist.h (struct solist, struct target_so_ops): Fix
3475         indentation.
3476
3477 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3478
3479         * ada-tasks.c (ada_task_info_s): Remove typedef.
3480         (DEF_VEC_O(ada_task_info_s)): Remove.
3481         (struct ada_tasks_inferior_data): Initialize fields.
3482         <task_list>: Make an std::vector.
3483         (get_ada_tasks_inferior_data): Allocate with new.
3484         (ada_get_task_number): Adjust.
3485         (get_task_number_from_id): Likewise.
3486         (valid_task_id): Likewise.
3487         (ada_get_task_info_from_ptid): Likewise.
3488         (iterate_over_live_ada_tasks): Likewise.
3489         (add_ada_task): Likewise.
3490         (read_known_tasks): Likewise.
3491         (ada_build_task_list): Likewise.
3492         (print_ada_task_info): Likewise.
3493         (info_task): Likewise.
3494         (task_command_1): Likewise.
3495
3496 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3497
3498         * ada-lang.c (add_angle_brackets): Return std::string.
3499
3500 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3501
3502         * python/py-threadevent.c (py_get_event_thread): Initialize
3503         pythread.
3504
3505 2018-08-24  Pedro Alves  <palves@redhat.com>
3506
3507         * python/py-bpevent.c (create_breakpoint_event_object): Use
3508         copy-initialization.
3509         * python/py-continueevent.c (emit_continue_event): Use
3510         copy-initialization.
3511         * python/py-exitedevent.c (create_exited_event_object): Return a
3512         gdbpy_ref<>.
3513         (emit_exited_event): Use copy-initialization.
3514         * python/py-inferior.c (python_new_inferior)
3515         (python_inferior_deleted, add_thread_object): Use
3516         copy-initialization.
3517         * python/py-infevents.c (create_inferior_call_event_object)
3518         (create_register_changed_event_object)
3519         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3520         (emit_inferior_call_event, emit_memory_changed_event)
3521         (emit_register_changed_event): Use copy-initialization.
3522         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3523         Return a gdbpy_ref<>.
3524         (emit_new_objfile_event): Use copy-initialization.
3525         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3526         (emit_clear_objfiles_event): Use copy-initialization.
3527         * python/py-signalevent.c (create_signal_event_object): Use
3528         copy-initialization.
3529         * python/py-threadevent.c (create_thread_event_object): Use
3530         copy-initialization.
3531
3532 2018-08-24  Pedro Alves  <palves@redhat.com>
3533             Simon Marchi  <simon.marchi@ericsson.com>
3534
3535         PR gdb/23379
3536         * python/py-continueevent.c: Include "gdbthread.h".
3537         (create_continue_event_object): Add intro comment.  Add 'ptid'
3538         parameter.  Use it to find thread to pass to
3539         create_thread_event_object.
3540         (emit_continue_event): Pass PTID down to
3541         create_continue_event_object.
3542         * python/py-event.h (py_get_event_thread): Declare.
3543         (create_thread_event_object): Remove default from 'thread'
3544         parameter.
3545         * python/py-stopevent.c (create_stop_event_object): Use
3546         py_get_event_thread.
3547         * python/py-threadevent.c (get_event_thread): Rename to ...
3548         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3549         and use it to find the thread.
3550         (create_thread_event_object): Assert that THREAD isn't null.
3551         Don't find the event thread here.
3552
3553 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3554
3555         * block.h (blockrange, blockranges): New struct declarations.
3556         (struct block): Add new field named `ranges'.
3557         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3558         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3559         macros for accessing ranges in struct block.
3560         (make_blockranges): New declaration.
3561         block.c (make_blockranges): New function.
3562         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3563         for block.
3564         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3565         * blockframe.c (cache_pc_function_block): New static global.
3566         (clear_pc_function_cache): Clear cache_pc_function_block.
3567         (find_pc_partial_function): Move comment to symtab.h.  Add
3568         support for non-contiguous blocks.
3569         * cli/cli-cmds.c (block.h): Include.
3570         (print_disassembly): Handle printing of non-contiguous blocks.
3571         (disassemble_current_function): Likewise.
3572         (disassemble_command): Likewise.
3573
3574         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3575         BLOCK_START.
3576         * blockframe.c (get_pc_function_start): Likewise.
3577         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3578         (gcc_symbol_address): Likewise.
3579         * compile/compile-object-run.c (compile_object_run): Likewise.
3580         * compile/compile.c (get_expr_block_and_pc): Likewise.
3581         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3582         (func_addr_to_tail_call_list): Likewise.
3583         * findvar.c (default_read_var_value): Likewise.
3584         * inline-frame.c (inline_frame_this_id): Likewise.
3585         (skip-inline_frames): Likewise.
3586         * infcmd.c (until_next_command): Likewise.
3587         * linespec.c (convert_linespec_to_sals): Likewise.
3588         * parse.c (parse_exp_in_context_1): Likewise.
3589         * printcmd.c (build_address_symbolic): likewise.
3590         (info_address_command): Likewise.
3591         symtab.c (find_function_start_sal): Likewise.
3592         (skip_prologue_sal): Likewise.
3593         (find_function_alias_target): Likewise.
3594         (find_gnu_ifunc): Likewise.
3595         * stack.c (find_frame_funname): Likewise.
3596         * symtab.c (fixup_symbol_section): Likewise.
3597         (find_function_start_sal): Likewise.
3598         (skip_prologue_sal): Likewsie.
3599         (find_function_alias_target): Likewise.
3600         (find_gnu_ifunc): Likewise.
3601         * tracepoint.c (info_scope_command): Likewise.
3602         * value.c (value_fn_field): Likewise.
3603
3604         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3605         in place of find_pc_partial_function.
3606         * blockframe.c (find_function_entry_range_from_pc): New function.
3607         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3608         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3609         for each range in a block.
3610
3611
3612 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3613
3614         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3615         incrementation.
3616
3617 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3618
3619         * solib-svr4.c (read_program_headers_from_bfd): Return
3620         gdb::optional<gdb::byte_vector>.
3621         (svr4_exec_displacement): Adjust.
3622
3623 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3624
3625         * solib-svr4.c (read_program_header): Return
3626         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3627         (find_program_interpreter): Return
3628         gdb::optional<gdb::byte_vector>.
3629         (scan_dyntag_auxv): Adjust.
3630         (enable_break): Adjust.
3631         (svr4_exec_displacement): Adjust.
3632
3633 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3634
3635         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3636         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3637
3638 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3639
3640         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3641         string_vprintf.
3642         * guile/scm-utils.c (gdbscm_printf): Likewise.
3643         * serial.c (serial_printf): Likewise.
3644         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3645
3646 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3647
3648         * stack.c (print_frame): Print frame architecture when printing on
3649         an MI output.
3650         * NEWS: Mention new "arch" attribute in frame output.
3651
3652 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3653
3654         * arch/aarch64.h (aarch64_regnum): Update comment.
3655
3656 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3657
3658         * NEWS: Add SVE to 8.2 section.
3659
3660 2018-08-21  Pedro Alves  <palves@redhat.com>
3661
3662         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3663         out from gdbscm_parse_function_args.
3664         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3665         gdbscm_parse_function_args_1.
3666
3667 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3668
3669         PR gdb/17816
3670         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3671         operator.
3672
3673 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3674
3675         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3676
3677 2018-08-19  Michael Spang  <spang@google.com>
3678
3679         PR gdb/11786
3680         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3681         for PT_TLS segments.
3682
3683 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3684
3685         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3686         dwarf_variable_value.
3687         * dwarf2-frame.c (class dwarf_expr_executor):
3688         Add override for dwarf_variable_value.
3689         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3690         (class symbol_needs_eval_context): Likewise.
3691         (indirect_synthetic_pointer): Add forward declaration.
3692         (sect_variable_value): New function.
3693         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3694         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3695         for DW_OP_GNU_variable_value.
3696
3697 2018-08-16  Tom Tromey  <tom@tromey.com>
3698
3699         * top.c (read_command_file): Update.
3700         (command_line_input): Remove "repeat" argument.
3701         * ada-lang.c (get_selections): Update.
3702         * linespec.c (decode_line_2): Update.
3703         * defs.h (command_line_input): Remove argument.
3704         * cli/cli-script.c (read_next_line): Update.
3705         * python/py-gdb-readline.c: Update.
3706
3707 2018-08-17  Tom Tromey  <tom@tromey.com>
3708
3709         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3710         command_line_input.
3711
3712 2018-08-15  Tom Tromey  <tom@tromey.com>
3713
3714         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3715
3716 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3717
3718         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3719         If used, use find_pc_partial_function to find address range
3720         to disassemble.
3721         * mi/mi-main.c (mi_cmd_list_features): Report
3722         "data-disassemble-a-option" feature.
3723         * NEWS: Mention new -data-disassemble option -a.
3724
3725 2018-08-13  Tom Tromey  <tom@tromey.com>
3726
3727         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3728
3729 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3730
3731         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3732         (aarch64_linux_collect_sve_regset): Likewise.
3733         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3734         * regcache.h (regcache_map_entry_size): New function.
3735
3736 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3737
3738         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3739         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3740         (SVE_HEADER_VL_LENGTH): Likewise.
3741         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3742         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3743         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3744         (SVE_HEADER_SIZE_OFFSET): Likewise.
3745         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3746         (SVE_HEADER_VL_OFFSET): Likewise.
3747         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3748         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3749         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3750         (SVE_HEADER_SIZE): Likewise.
3751         (aarch64_linux_core_read_vq): Add function.
3752         (aarch64_linux_core_read_description): Check for SVE section.
3753
3754 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3755
3756         * aarch64-fbsd-tdep.c
3757         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3758         collect_size.
3759         * aarch64-linux-tdep.c
3760         (aarch64_linux_iterate_over_regset_sections): Likewise.
3761         * alpha-linux-tdep.c
3762         (alpha_linux_iterate_over_regset_sections):
3763         * alpha-nbsd-tdep.c
3764         (alphanbsd_iterate_over_regset_sections): Likewise.
3765         * amd64-fbsd-tdep.c
3766         (amd64fbsd_iterate_over_regset_sections): Likewise.
3767         * amd64-linux-tdep.c
3768         (amd64_linux_iterate_over_regset_sections): Likewise.
3769         * arm-bsd-tdep.c
3770         (armbsd_iterate_over_regset_sections): Likewise.
3771         * arm-fbsd-tdep.c
3772         (arm_fbsd_iterate_over_regset_sections): Likewise.
3773         * arm-linux-tdep.c
3774         (arm_linux_iterate_over_regset_sections): Likewise.
3775         * corelow.c (get_core_registers_cb): Likewise.
3776         (core_target::fetch_registers): Likewise.
3777         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3778         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3779         * gdbarch.h (void): Regenerate.
3780         * gdbarch.sh: Add supply_size and collect_size.
3781         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3782         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3783         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3784         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3785         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3786         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3787         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3788         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3789         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3790         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3791         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3792         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3793         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3794         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3795         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3796         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3797         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3798         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3799         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3800         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3801         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3802         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3803         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3804         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3805         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3806         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3807         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3808         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3809         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3810         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3811
3812 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3813
3814         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3815         with string_printf.
3816
3817 2018-08-10  Keith Seitz  <keiths@redhat.com>
3818
3819         * compile/compile-c-support.c (add_code_header, add_code_footer):
3820         Move into policy class.
3821         (c_push_user_expression, pop_user_expression_nop)
3822         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3823         (compile_program): New host class.
3824         (c_compile_program): New typedef.
3825         (c_compute_porgram): Use c_compile_program.
3826
3827 2018-08-10  Keith Seitz  <keiths@redhat.com>
3828
3829         * compile/compile-internal.h (compile_instance::~compile_instance):
3830         Remove calls to htab_delete.
3831         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3832         * compile.c (compile_instance::compile_instance): Initialize
3833         htab unique pointers.
3834         (compile_instance::get_cached_type, compile_instance::insert_type)
3835         (compile_instance::error_symbol_once): Update for unique_ptr.
3836
3837 2018-08-10  Keith Seitz  <keiths@redhat.com>
3838
3839         * compile/compile-c-symbols.c (struct symbol_error)
3840         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3841         (compile_instance::insert_symbol_error)
3842         (compile_instance::error_symbol_once): Move to ...
3843         * compile/compile.c: ... here.
3844
3845 2018-08-10  Keith Seitz  <keiths@redhat.com>
3846
3847         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3848         instead of `new_compile_instance'.
3849         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3850         Update description.
3851         If the symbol error map is not initialized, create it.
3852         (generate_c_for_for_one_symbol): Do not check/initialize
3853         the symbol error map.
3854         * compile/compile-c-types.c (compile_c_instance): Make a class.
3855         Update all callers.
3856         (compile_instance::compile_instance): Initialize the type cache.
3857         (get_cached_type): New function.
3858         (insert_type): Update description.
3859         (compile_c_instance::m_default_cflags): Define.
3860         (convert_type): Update description.  Use get_cached_type.
3861         (delete_instance): Moved to destructor.
3862         (new_compile_instance): Moved to constructor.
3863         * compile/compile-c.h (compile_c_instance): Make class inheriting
3864         from compile_instance.
3865         <base>: Remove field.
3866         <type_map, symbol_err_map>: Move to base class.
3867         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3868         * compile/compile-internal.h (compile_instance): Make class.
3869         <type_map_t, symbol_err_map_t>: Define.
3870         <fe>: Rename to `m_gcc_fe'.
3871         <scope, block, gcc_target_options>: Add `m_' prefix.
3872         <m_type_map, m_symbol_err_map>: New fields, moved from
3873         compile_c_instance.
3874         <destroy>: Remove.
3875         (convert_type, new_compile_instance): Remove.
3876         * compile/compile.c (cleanup_compile_instance): Remove.
3877         (compile_to_object): Use unique_ptr to eliminate cleanups.
3878         (compile_instance::set_print_callback, compile_instance::version)
3879         (compile_instance::set_verbose)
3880         (compile_instance::set_driver_filename)
3881         (compile_instance::set_triplet_regexp)
3882         (compile_instance::set_arguments)
3883         (compile_instance::set_source_file)
3884         (compile_instance::compile): Define.
3885
3886 2018-08-10  Keith Seitz  <keiths@redhat.com>
3887
3888         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3889         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3890         gcc-c-fe.def to define C plugin.
3891         (delete_instance): Delete `c_plugin'.
3892         (new_compile_instance): Initialize `c_plugin'.
3893         * compile/compile-c.h: Include gcc_c_plugin.h.
3894         (struct compile_c_instance) <c_plugin>: New member.
3895         * gcc-c-plugin.h: New file.
3896         Update all callers with API change.
3897
3898 2018-08-10  Keith Seitz  <keiths@redhat.com>
3899
3900         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3901         (HFILES_NO_SRCDIR): ... to here.
3902         Add compile-internal.h and compile-c.h.
3903         * compile/compile-c-support.c: Include compile-c.h.
3904         * compile/compile-c-symbols.c: Include compile-c.h.
3905         (generate_c_for_variable_locations): Update comment.
3906         * compile/compile-c-types.c: Include compile-c.h.
3907         * compile/compile-c.h: New file -- moved C language declarations
3908         from other files here.
3909         * compile/compile-internal.h: Do not include hashtab.h or
3910         common/enum-flags.h.
3911         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3912         (gcc_convert_symbol, gcc_symbol_address)
3913         (generate_c_for_variable_locations, c_get_mode_for_size)
3914         (c_get_range_decl_name): Definitions moved to compile-c.h.
3915         * compile/compile-loc2c.c: Include compile-c.h.
3916
3917 2018-08-10  Keith Seitz  <keiths@redhat.com>
3918
3919         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3920         (c_symbol_substitution_name): ... this.
3921         Update all callers.
3922
3923 2018-08-10  Keith Seitz  <keiths@redhat.com>
3924
3925         * compile/compile-c-support.c (c_compute_program): Use
3926         unique_xmalloc_ptr to eliminate cleanup.
3927         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3928         Return a unique_xmalloc_ptr and eliminate cleanup.
3929         * compile/compile-internal.h (generate_c_for_variable_locations):
3930         Return unique_xmalloc_ptr and update description.
3931
3932 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3933
3934         * corelow.c (core_target::get_core_register_section): Rename
3935         min_size to section_min_size.
3936
3937 2018-08-09  Jim Wilson  <jimw@sifive.com>
3938
3939         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3940         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3941         * NEWS: Mention new GNU/Linux RISC-V target.
3942         * configure.host: Add riscv*-*-linux*.
3943         * configure.nat: Add riscv*.
3944         * configure.tgt: Add riscv*-*-linux*.
3945         * riscv-linux-nat.c: New file.
3946         * riscv-linux-tdep.c: New file.
3947
3948 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3949
3950         * infrun.c (resume): Make static, add forward declaration.
3951         (proceed): Update header comment.
3952         * infrun.h (resume): Delete declaration.
3953
3954 2018-08-09  Tom Tromey  <tom@tromey.com>
3955
3956         * riscv-tdep.h: Minor formatting fixes.
3957
3958 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3959
3960         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3961         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3962         (test_mkdir_recursive): Likewise.
3963         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3964
3965 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3966
3967         * valarith.c (value_subscripted_rvalue): If an array is not in
3968         memory, and we don't know the upper bound, then we can't know that
3969         the requested element exists or not.
3970
3971 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3972
3973         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3974         (target_options_to_string): Add comment.
3975
3976 2018-08-08  Tom Tromey  <tom@tromey.com>
3977
3978         * unittests/scoped_mmap-selftests.c: Check result of "write".
3979
3980 2018-08-08  Jim Wilson  <jimw@sifive.com>
3981
3982         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3983         (decode_register_index_short): New.
3984         (decode_j_type_insn, decode_cj_type_insn): New.
3985         (decode_b_type_insn, decode_cb_type_insn): New.
3986         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3987         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3988         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3989         is_c_sw_insn instead of is_sw_insn.
3990         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3991         (riscv_software_single_step): New.
3992         * riscv-tdep.h (riscv_software_single_step): Declare.
3993
3994         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3995         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3996
3997 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3998
3999         PR gdb/18050:
4000         * target.c (dispose_inferior): Don't dispose of inferiors that are
4001         already killed.
4002
4003 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4004
4005         * remote.c (remote_target::download_tracepoint): Change char* to
4006         const char*.
4007
4008 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4009
4010         * target.h (target_options_to_string): Return an std::string.
4011         * target.c (str_comma_list_concat_elem): Return void, use
4012         std::string.
4013         (do_option): Likewise.
4014         (target_options_to_string): Return an std::string.
4015         * linux-nat.c (linux_nat_target::wait): Adjust.
4016         * target-debug.h (target_debug_print_options): Adjust.
4017
4018 2018-08-07  Tom Tromey  <tom@tromey.com>
4019
4020         * Makefile.in (CPPFLAGS): New variable.
4021         (INTERNAL_CPPFLAGS): Use it.
4022
4023 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4024
4025         * NEWS: Mention the index cache.
4026
4027 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4028
4029         * common/pathstuff.h (get_standard_cache_dir): New.
4030         * common/pathstuff.c (get_standard_cache_dir): New.
4031         * build-id.h (build_id_to_string): New.
4032         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4033         DEBUG_STR_SUFFIX): Move to here.
4034         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4035         DEBUG_STR_SUFFIX): Move from there.
4036         (write_psymtabs_to_index): Make non-static, add basename
4037         parameter.  Write to temporary files, rename when done.
4038         (save_gdb_index_command): Adjust call to
4039         write_psymtabs_to_index.
4040         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4041         field.
4042         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4043         (get_gdb_index_contents_from_cache): New.
4044         (get_gdb_index_contents_from_cache_dwz): New.
4045         (dwarf2_initialize_objfile): Read index from cache.
4046         (dwarf2_build_psymtabs): Save to index.
4047         * dwarf-index-cache.h: New file.
4048         * dwarf-index-cache.c: New file.
4049         * dwarf-index-write.h: New file.
4050
4051 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4052
4053         * gnulib/aclocal.m4: Re-generate.
4054         * gnulib/config.in: Re-generate.
4055         * gnulib/configure: Re-generate.
4056         * gnulib/import/Makefile.am: Re-generate.
4057         * gnulib/import/Makefile.in: Re-generate.
4058         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4059         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4060         * gnulib/import/m4/mkdir.m4: New file.
4061         * gnulib/import/mkdir.c: New file.
4062         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4063         module.
4064
4065 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4066
4067         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4068         * common/scoped_mmap.c: New file.
4069         * common/scoped_mmap.h (destroy): New method.
4070         (~scoped_mmap, reset): Use destroy.
4071         (scoped_mmap): New move constructor.
4072         (mmap_file): New declaration.
4073         * unittests/scoped_mmap-selftests.c (test_normal,
4074         test_invalid_filename, run_tests): New functions.
4075         (_initialize_scoped_mmap_selftests): Register selftest.
4076
4077 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4078
4079         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4080         (read_gdb_index_from_buffer): ... this.  Remove section
4081         parameter, add buffer parameter.
4082         (get_gdb_index_contents_ftype,
4083         get_gdb_index_contents_dwz_ftype): New typedefs.
4084         (dwarf2_read_gdb_index): Add callback parameters to get the
4085         index contents.
4086         (get_gdb_index_contents_from_section): New.
4087         (dwarf2_initialize_objfile): Update call to
4088         dwarf2_read_gdb_index.
4089
4090 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4091
4092         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4093         (gdb_open_cloexec): Likewise.
4094         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4095         (commandline_from_pid): Likewise.
4096         (linux_xfer_osdata_threads): Likewise.
4097         (linux_xfer_osdata_fds): Likewise.
4098         * ada-lang.c (is_package_name): Likewise.
4099         * auxv.c (procfs_xfer_auxv): Likewise.
4100         * breakpoint.c (print_one_breakpoint_location): Use
4101         uiout::field_fmt.
4102         (print_one_catch_solib): Use string_printf.
4103         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4104         (add_pe_forwarded_sym): Likewise.
4105         * dwarf2read.c (create_type_unit_group): Likewise.
4106         (build_error_marker_type): Likewise.
4107         * infcall.c (get_function_name): Likewise.
4108         * valprint.c (print_converted_chars_to_obstack): Likewise.
4109         * xtensa-tdep.c (xtensa_register_type): Likewise.
4110
4111 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4112
4113         * remote.c (remote_target::download_tracepoint): Fix format
4114         string errors.
4115
4116 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4117
4118         * tracefile.c: Include common/byte-vector.h.
4119         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4120         with trace_regblock_size if needed.  Update uses of buf.
4121
4122 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4123
4124         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4125         std::vector<unsigned char>.
4126         * tracepoint.c (collection_list::collection_list): Remove
4127         m_regs_mask initializer from initializer list.  Resize
4128         m_regs_mask using the largest remote register number.
4129         (collection_list::add_remote_register): Remove size check on
4130         m_regs_mask.  Use at to access element.
4131         (collection_list::stringify): Change type of temp_buf to
4132         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4133         stringify the register mask.  Use pack_hex_byte for the register
4134         mask.
4135
4136 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4137
4138         * tracepoint.h (class collection_list) <add_register>: Remove.
4139         <add_remote_register, add_ax_registers, add_local_register>:
4140         Declare.
4141         <add_memrange>: Add scope parameter.
4142         * tracepoint.c (encode_actions_1): Likewise.
4143         (collection_list::add_register): Rename to ...
4144         (collection_list::add_remote_register): ... this.  Update
4145         comment.
4146         (collection_list::add_ax_registers, add_local_register): New
4147         methods.
4148         (collection_list::add_memrange): Add scope parameter.  Call
4149         add_local_register instead of add_register.
4150         (finalize_tracepoint_aexpr): New function.
4151         (collection_list::collect_symbol): Update calls to add_memrange.
4152         Call add_local_register instead of add_register.  Call
4153         add_ax_registers.  Call finalize_tracepoint_aexpr.
4154         (encode_actions_1): Get remote regnos for $reg action.  Call
4155         add_remote_register, add_ax_registers, and add_local_register.
4156         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4157         (validate_actionline): Call finalize_tracepoint_aexpr.
4158
4159 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4160
4161         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4162         Replace array buf with gdb::char_vector buf, of size
4163         get_remote_packet_size ().  Replace references to buf and
4164         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4165         and xsnprintf with snprintf.  Raise errors if the buffer is too
4166         small.
4167
4168 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4169
4170         * remote.c (remote_target::download_tracepoint): Fix the has_more
4171         predicate in the QTDP action list iteration.
4172
4173 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4174
4175         * remote.c (remote_target::download_tracepoint): Fix indentation
4176         in for block.
4177
4178 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4179
4180         * proc-api.c (_initialize_proc_api): Remove c, unused.
4181         * procfs.c (procfs_init_inferior): Remove signals, unused.
4182         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4183         unused.
4184
4185 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4186             Andrew Burgess  <andrew.burgess@embecosm.com>
4187
4188         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4189         'W_STOPCODE (0)' as this could be ambiguous.
4190
4191 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4192
4193         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4194         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4195         "ai_socktype").
4196
4197 2018-08-02  Tom Tromey  <tom@tromey.com>
4198
4199         PR symtab/16842.
4200         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4201         symbols.
4202         (process_structure_scope): Likewise.
4203
4204 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4205
4206         PR gdb/22629:
4207         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4208         kill inferior.
4209
4210 2018-08-02  Tom Tromey  <tom@tromey.com>
4211
4212         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4213         (darwin_suspend_inferior, darwin_resume_inferior)
4214         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4215         (darwin_check_new_threads): Check result of get_darwin_inferior.
4216
4217 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4218
4219         GDB 8.1.1 released.
4220
4221 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4222
4223         * varobj.c (varobj_get_path_expr_parent): Report an error if
4224         parent is a dynamic varobj.
4225
4226 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4227
4228         * gnulib/aclocal.m4: Re-generate.
4229         * gnulib/config.in: Re-generate.
4230         * gnulib/configure: Re-generate.
4231         * gnulib/import/Makefile.in: Re-generate.
4232         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4233         * gnulib/import/m4/onceonly.m4: Re-generate.
4234
4235 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4236
4237         * target-descriptions.c (struct xml_test_tdesc): New.
4238         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4239         (record_xml_tdesc): Update.
4240         (maintenance_check_xml_descriptions): Update.
4241         * target-descriptions.h (record_xml_tdesc): Update comment.
4242
4243 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4244
4245         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4246         checking array bounds are defined.
4247
4248 2018-07-30  Tom Tromey  <tom@tromey.com>
4249
4250         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4251         irreflexivity violation.
4252
4253 2018-07-30  Tom Tromey  <tom@tromey.com>
4254
4255         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4256         * value.c (unpack_long): Remove lint code.
4257         * valops.c (value_ind): Remove lint code.
4258         * valarith.c (value_x_binop, value_x_unop, value_equal)
4259         (value_pos): Remove lint code.
4260
4261 2018-07-28  Tom de Vries  <tdevries@suse.de>
4262
4263         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4264         with undefined upper bound as <optimized out>.
4265
4266 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4267
4268         * gcore.in: Rename variable "name" to "prefix".  Expand
4269         "usage" text.
4270
4271 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4272
4273         * windows-nat.c (windows_nat_target::create_inferior): Update to
4274         call close() in global namespace.
4275
4276 2018-07-26  Tom Tromey  <tom@tromey.com>
4277
4278         * dwarf-index-write.c (add_address_entry): Don't add objfile
4279         offsets.
4280         * dbxread.c (find_stab_function): Rename from
4281         find_stab_function_addr.  Return a bound_minimal_symbol.
4282         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4283         Don't add objfile offsets.
4284         (end_psymtab): Use raw_text_low, raw_text_high,
4285         MSYMBOL_VALUE_RAW_ADDRESS.
4286         (read_ofile_symtab): Update.
4287         (process_one_symbol): Update.
4288         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4289         offsets.
4290         (dw2_relocate): Remove.
4291         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4292         searching addrmap.
4293         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4294         Update.
4295         (process_psymtab_comp_unit_reader, add_partial_symbol)
4296         (add_partial_subprogram, dwarf2_ranges_read): Update.
4297         (load_partial_dies): Update.
4298         (add_address_entry): Don't add objfile offsets.
4299         (dwarf2_build_include_psymtabs): Update.
4300         (create_addrmap_from_aranges): Don't add objfile offsets.
4301         (dw2_find_pc_sect_compunit_symtab): Update.
4302         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4303         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4304         Update.
4305         (parse_partial_symbols): Don't add objfile offsets.  Use
4306         raw_text_low, raw_text_high.  Update.
4307         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4308         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4309         or call 'relocate' quick function.  Clear psymbol_map.
4310         * psympriv.h (struct partial_symbol) <address>: Add section
4311         offset.
4312         <set_unrelocated_address>: Rename from set_address.
4313         <raw_text_low, raw_text_high>: New methods.
4314         <text_low, text_high>: Add objfile parameter.
4315         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4316         set_unrelocated_address.
4317         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4318         (find_pc_psymbol): Update.
4319         (fixup_psymbol_section, relocate_psymtabs): Remove.
4320         (dump_psymtab, psym_functions): Update.
4321         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4322         parameter.
4323         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4324         (start_psymtab_common): Update.
4325         * symfile-debug.c (debug_qf_relocate): Remove.
4326         (debug_sym_quick_functions): Update.
4327         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4328         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4329         Update.
4330
4331 2018-07-26  Tom Tromey  <tromey@redhat.com>
4332
4333         * dbxread.c (end_psymtab): Use text_high_valid and
4334         text_low_valid.
4335         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4336         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4337         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4338         Update comment.
4339         <text_low_valid, text_high_valid>: New fields.
4340         <set_text_low, set_text_high>: Update.
4341         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4342
4343 2018-07-26  Tom Tromey  <tom@tromey.com>
4344
4345         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4346         Update.
4347         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4348         textlow and texthigh fields.
4349         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4350         Update.
4351         * mdebugread.c (parse_lines, parse_partial_symbols)
4352         (psymtab_to_symtab_1): Update.
4353         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4354         Rename fields.  Update comment.  Now private.
4355         <text_low, text_high, set_text_low, set_text_high>: New methods.
4356         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4357         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4358         (start_psymtab_common, maintenance_info_psymtabs)
4359         (maintenance_check_psymtabs): Update.
4360         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4361         texthigh fields.
4362         (scan_xcoff_symtab): Update.
4363
4364 2018-07-26  Tom Tromey  <tromey@redhat.com>
4365
4366         * psympriv.h (struct partial_symbol) <unrelocated_address,
4367         address, set_address>: New methods.
4368         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4369         (fixup_psymbol_section, relocate_psymtabs): Update.
4370         (print_partial_symbols): Add 'objfile' parameter.  Update.
4371         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4372         Update.
4373
4374 2018-07-26  Tom Tromey  <tom@tromey.com>
4375
4376         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4377         (debug_names::write_psymbols): Update.
4378         * psympriv.h (struct partial_symbol): Derive from
4379         general_symbol_info.
4380         <obj_section>: New method.
4381         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4382         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4383         (find_pc_sect_psymbol, fixup_psymbol_section)
4384         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4385         (print_partial_symbols, recursively_search_psymtabs)
4386         (compare_psymbols, psymbol_hash, psymbol_compare)
4387         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4388         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4389
4390 2018-07-26  Tom Tromey  <tromey@redhat.com>
4391
4392         * dbxread.c (end_psymtab): Remove dead code.
4393
4394 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4395
4396         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4397         DWARF unwinders are disabled.
4398         * dwarf2-frame.c: Add dwarf2read.h include.
4399         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4400         disabled.
4401         (dwarf2_frame_unwinders_enabled_p): Define.
4402         (show_dwarf_unwinders_enabled_p): New function.
4403         (_initialize_dwarf2_frame): Register switch to control DWARF
4404         unwinder use.
4405         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4406         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4407         (show_dwarf_cmdlist): Remove static keyword.
4408         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4409         (show_dwarf_cmdlist): Declare.
4410         * NEWS: Document new feature.
4411
4412 2018-07-26  Tom de Vries  <tdevries@suse.de>
4413
4414         PR breakpoints/23366
4415         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4416
4417 2018-07-26  Tom de Vries  <tdevries@suse.de>
4418
4419         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4420         DW_AT_count can't be translated to a dynamic prop.
4421
4422 2018-07-25  Tom de Vries  <tdevries@suse.de>
4423
4424         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4425         try/catch.
4426
4427 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4428
4429         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4430
4431 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4432
4433         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4434
4435 2018-07-24  Keith Seitz  <keiths@redhat.comt
4436
4437         PR symtab/23010
4438         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4439         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4440         instead of add_symbol_to_list.
4441         (read_file_scope): Call prepare_one_comp_unit before reading
4442         any other DIEs.
4443
4444 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4445
4446         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4447
4448 2018-07-24  Tom Tromey  <tom@tromey.com>
4449
4450         * utils.c (malloc, realloc, free): Don't declare.
4451         * configure, config.in: Rebuild.
4452         * configure.ac: Don't check for declarations of free, malloc, or
4453         realloc.
4454
4455 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4456
4457         * aarch64-linux-nat.c
4458         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4459         variable.
4460         * arm-linux-nat.c (fetch_regs): Likewise.
4461         (store_regs): Likewise.
4462         (fetch_vfp_regs): Likewise.
4463         (store_vfp_regs): Likewise.
4464         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4465         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4466         (arm_linux_nat_target::insert_watchpoint): Likewise.
4467         (arm_linux_nat_target::remove_watchpoint): Likewise.
4468         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4469         Likewise.
4470         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4471         Likewise.
4472         * ppc-linux-nat.c (fetch_register): Likewise.
4473         (fetch_all_gp_regs): Likewise.
4474         (fetch_ppc_registers): Likewise.
4475         (store_all_gp_regs): Likewise.
4476         (store_ppc_registers): Likewise.
4477         (hwdebug_insert_point): Likewise.
4478         (can_use_watchpoint_cond_accel): Likewise.
4479         * remote-sim.c (gdb_os_write_stdout): Likewise.
4480
4481 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4482             Tom Tromey  <tom@tromey.com>
4483
4484         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4485         test for it.
4486         * configure: Rebuild.
4487
4488 2018-07-22  Tom Tromey  <tom@tromey.com>
4489
4490         * regformats/regdat.sh: Define xmltarget_${name} inside
4491         #ifndef IN_PROCESS_AGENT.
4492
4493 2018-07-22  Tom Tromey  <tom@tromey.com>
4494
4495         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4496
4497 2018-07-22  Tom Tromey  <tom@tromey.com>
4498
4499         * symfile.c (reread_symbols): Notify iter, not objfile.
4500
4501 2018-07-22  Tom Tromey  <tom@tromey.com>
4502
4503         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4504         Use arch_ops.
4505         (ravenscar_thread_target::prepare_to_store): Likewise.
4506
4507 2018-07-22  Tom Tromey  <tom@tromey.com>
4508
4509         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4510         unused variable.  Call value_fetch_lazy when needed.
4511         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4512         Remove unused variable.  Call value_fetch_lazy when needed.
4513
4514 2018-07-22  Tom Tromey  <tom@tromey.com>
4515
4516         * m32c-tdep.c (mark_dma): Return void.
4517         (make_regs): Remove unused declarations.
4518
4519 2018-07-22  Tom Tromey  <tom@tromey.com>
4520
4521         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4522         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4523         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4524         bkscm_get_valid_block_smob_arg_unsafe for effect.
4525
4526 2018-07-22  Tom Tromey  <tom@tromey.com>
4527
4528         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4529         value_type.
4530
4531 2018-07-22  Tom Tromey  <tom@tromey.com>
4532
4533         * windows-nat.c (saved_context): Conditionally define.
4534         * remote.c (remote_target::remote_btrace_maybe_reopen):
4535         Conditionally declare "warned".
4536         * inflow.c (sigquit_ours): Conditionally define.
4537         (new_tty): Move "tty" declaration inside #if.
4538         * guile/guile.c (guile_datadir): Conditionally define.
4539         * charset.c (set_be_le_names): Move some declarations inside #if.
4540         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4541         #if.
4542         (parse_xml_btrace_conf): Likewise.
4543
4544 2018-07-22  Tom Tromey  <tom@tromey.com>
4545
4546         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4547
4548 2018-07-22  Tom Tromey  <tom@tromey.com>
4549
4550         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4551         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4552         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4553         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4554         * stack.c (frame_apply_level_command): Remove unused variable.
4555         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4556         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4557         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4558         unused variable.
4559         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4560         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4561         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4562         variable.
4563         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4564         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4565         variable.
4566         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4567         Remove unused variable.
4568         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4569         variable.
4570         * common/tdesc.c (print_xml_feature::visit): Remove unused
4571         variable.
4572         * compile/compile-object-load.c (store_regs): Remove unused
4573         variables.
4574         * complaints.c (clear_complaints): Remove unused variable.
4575         * corelow.c (core_target_open): Remove unused variable.
4576         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4577         variable.
4578         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4579         variable.
4580         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4581         variable.
4582         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4583         variable.
4584         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4585         variable.
4586         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4587         variable.
4588         * ia64-tdep.c (examine_prologue): Remove unused variable.
4589         * infcall.c (run_inferior_call): Remove unused variable.
4590         * inferior.c (exit_inferior): Remove unused variable.
4591         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4592         * linespec.c (decode_line_2): Remove unused variable.
4593         * linux-nat.c (super_close): Remove.
4594         * linux-tdep.c (linux_info_proc): Remove unused variable.
4595         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4596         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4597         Remove unused variable.
4598         * parse.c (find_minsym_type_and_address): Remove unused variable.
4599         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4600         variable.
4601         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4602         variable.
4603         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4604         variables.
4605         * record-btrace.c (record_btrace_target::store_registers): Remove
4606         unused variable.
4607         (cmd_show_record_btrace_cpu): Remove unused variable.
4608         * riscv-tdep.c (riscv_register_reggroup_p)
4609         (riscv_push_dummy_call, riscv_return_value): Remove unused
4610         variable.
4611         * rust-exp.y (literal): Remove unused variable.
4612         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4613         unused variable.
4614         <STRUCTOP_ANONYMOUS>: Likewise.
4615         * s390-linux-tdep.c (s390_linux_init_abi_31)
4616         (s390_linux_init_abi_64): Remove unused variable.
4617         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4618         (file_select_thread, net_windows_open, _initialize_ser_windows):
4619         Remove unused variables.
4620         * symtab.c (find_pc_sect_line): Remove unused variable.
4621         * target-memory.c (compute_garbled_blocks): Remove unused
4622         variable.
4623         (target_write_memory_blocks): Remove unused variable.
4624         * target.c (target_stack::unpush): Remove unused variables.
4625         * tracepoint.c (start_tracing, all_tracepoint_actions)
4626         (merge_uploaded_trace_state_variables)
4627         (print_one_static_tracepoint_marker): Remove unused variable.
4628         * unittests/basic_string_view/element_access/char/1.cc (test01):
4629         Remove unused variable.
4630         * windows-nat.c (windows_continue, windows_add_all_dlls)
4631         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4632         Remove unused variables.
4633
4634 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4635
4636         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4637         attr_profile in HAVE_ELF.
4638         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4639         HAVE_ELF.
4640
4641 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4642
4643         * frame.c (frame_register_unwind): Change parameter name.
4644         (frame_unwind_register): Likewise.
4645         (frame_unwind_register_value): Likewise.
4646         (frame_unwind_register_signed): Likewise.
4647         (frame_unwind_register_unsigned): Likewise.
4648         * frame.h (frame_register_unwind): Likewise.
4649         (frame_unwind_register): Likewise.
4650         (frame_unwind_register_value): Likewise.
4651         (frame_unwind_register_signed): Likewise.
4652         (frame_unwind_register_unsigned): Likewise.
4653         (frame_unwind_arch): Likewise.
4654
4655 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4656
4657         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4658         ISA maintenance.
4659
4660 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4661
4662         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4663         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4664         hand.
4665
4666 2018-07-20  Keith Seitz  <keiths@redhat.com>
4667
4668         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4669         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4670         m_compunit_symtab, m_language>: Add "m_" prefix.
4671         Update all uses.
4672         * buildsym.c: Update all uses.
4673
4674 2018-07-20  Tom Tromey  <tom@tromey.com>
4675
4676         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4677         * buildsym.h (record_line_ftype): Remove typedef.
4678
4679 2018-07-20  Tom Tromey  <tom@tromey.com>
4680
4681         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4682         (end_expandable_symtab): Likewise.
4683         (end_symtab_get_static_block): Likewise.
4684         (end_symtab_from_static_block): Likewise.
4685         * buildsym-legacy.c (augment_type_symtab): Remove.
4686         (end_expandable_symtab): Remove.
4687         (end_symtab_get_static_block): Remove.
4688         (end_symtab_from_static_block): Remove.
4689
4690 2018-07-20  Tom Tromey  <tom@tromey.com>
4691
4692         * dwarf2read.c: Include buildsym.h.
4693         (struct dwarf2_cu) <builder>: New method.
4694         (fixup_go_packaging): Update.
4695         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4696         use scoped_free_pendings.
4697         (using_directives): Add "cu" parameter, remove "language".
4698         (read_import_statement, setup_type_unit_groups, )
4699         (read_func_scope, read_lexical_block_scope)
4700         (dwarf2_record_block_ranges, read_namespace): Update.
4701         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4702         (lnp_state_machine::handle_end_sequence): Update.
4703         (class lnp_state_machine) <m_cu>: New member.
4704         <m_record_line_callback>: Remove.
4705         <m_currently_recording_lines>: New member.
4706         (lnp_state_machine::handle_set_file): Update.
4707         (noop_record_line): Remove.
4708         (dwarf_record_line_p): Add cu parameter.
4709         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4710         (lnp_state_machine::record_line)
4711         (lnp_state_machine::lnp_state_machine)
4712         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4713         (dwarf_decode_lines): Update.
4714         (dwarf2_start_subfile): Add cu parameter.
4715         (dwarf2_start_symtab, new_symbol): Update.
4716         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4717         Remove dwarf2_per_objfile parameter.
4718         (dwarf_decode_macros): Update.
4719
4720 2018-07-20  Tom Tromey  <tom@tromey.com>
4721
4722         * stabsread.c (define_symbol): Update.
4723         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4724         * dwarf2read.c (new_symbol): Update.
4725         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4726         * cp-namespace.c: Include buildsym.h.
4727         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4728         * buildsym-legacy.c (get_buildsym_compunit): New function.
4729
4730 2018-07-20  Tom Tromey  <tom@tromey.com>
4731
4732         * xcoffread.c: Include buildsym-legacy.h.
4733         * windows-nat.c: Include buildsym-legacy.h.
4734         * stabsread.c: Include buildsym-legacy.h.
4735         * mdebugread.c: Include buildsym-legacy.h.
4736         * buildsym-legacy.h: New file.
4737         * buildsym-legacy.c: New file, from buildsym.c.
4738         * go32-nat.c: Include buildsym-legacy.h.
4739         * dwarf2read.c: Include buildsym-legacy.h.
4740         * dbxread.c: Include buildsym-legacy.h.
4741         * cp-namespace.c: Include buildsym-legacy.h.
4742         * coffread.c: Include buildsym-legacy.h.
4743         * buildsym.h: Move some contents to buildsym-legacy.h.
4744         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4745         buildsym-legacy.c.
4746         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4747
4748 2018-07-20  Tom Tromey  <tom@tromey.com>
4749
4750         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4751         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4752         (buildsym_compunit::buildsym_compunit)
4753         (buildsym_compunit::~buildsym_compunit)
4754         (buildsym_compunit::get_macro_table): Define.
4755
4756 2018-07-20  Tom Tromey  <tom@tromey.com>
4757
4758         * buildsym.c (reset_symtab_globals): Remove.
4759         (buildsym_compunit::end_symtab_from_static_block): Update.
4760         (buildsym_compunit::augment_type_symtab): Update.
4761         (end_symtab_from_static_block): Call free_buildsym_compunit.
4762         (augment_type_symtab, end_symtab, end_expandable_symtab):
4763         Likewise.
4764
4765 2018-07-20  Tom Tromey  <tom@tromey.com>
4766
4767         * arch-utils.c: Do not include buildsym.h.
4768         * mipsread.c: Do not include buildsym.h.
4769         * machoread.c: Do not include buildsym.h.
4770         * elfread.c: Do not include buildsym.h.
4771
4772 2018-07-20  Tom Tromey  <tom@tromey.com>
4773
4774         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4775         initialization.
4776         (buildsym_compunit): Add new constructor.
4777         (struct buildsym_compunit) <get_last_source_file, finish_block,
4778         record_block_range, start_subfile, patch_subfile_names,
4779         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4780         set_last_source_start_addr, get_last_source_start_addr,
4781         get_local_using_directives, set_local_using_directives,
4782         get_global_using_directives, outermost_context_p,
4783         get_current_context_stack, get_context_stack_depth,
4784         get_current_subfile, get_local_symbols, get_file_symbols,
4785         get_global_symbols, record_debugformat, record_producer,
4786         push_context, pop_context, end_symtab_get_static_block,
4787         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4788         New public methods.
4789         <record_pending_block, finish_block_internal, make_blockvector,
4790         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4791         private methods.
4792         Update all users.
4793
4794 2018-05-22  Tom Tromey  <tom@tromey.com>
4795
4796         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4797         parameter.
4798         (finish_block_internal): Update.
4799
4800 2018-07-20  Tom Tromey  <tom@tromey.com>
4801
4802         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4803         parameter.
4804         (finish_block_internal): Update.
4805
4806 2018-07-20  Tom Tromey  <tom@tromey.com>
4807
4808         * buildsym.h (EXTERN): Don't define or undef.
4809         * buildsym.c (EXTERN): Don't define.
4810
4811 2018-07-20  Tom Tromey  <tom@tromey.com>
4812
4813         * buildsym.c: Remove TODO comment.
4814
4815 2018-07-20  Tom Tromey  <tom@tromey.com>
4816
4817         * coffread.c (coff_symtab_read): Update.
4818         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4819         (xcoff_new_init): Update.
4820         * mipsread.c (mipscoff_new_init): Update.
4821         * mdebugread.c (mdebug_build_psymtabs): Update.
4822         * elfread.c (elf_new_init): Update.
4823         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4824         Update.
4825         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4826         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4827         (stabsect_build_psymtabs): Update.
4828         * buildsym.h (buildsym_init): Don't declare.
4829         * buildsym.c: Update comment.
4830         (prepare_for_building): Remove.
4831         (start_symtab, restart_symtab): Update.
4832         (reset_symtab_globals): Update comment.
4833         (buildsym_init): Remove.
4834
4835 2018-07-20  Tom Tromey  <tom@tromey.com>
4836
4837         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4838         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4839         (read_enum_type, common_block_start, common_block_end)
4840         (cleanup_undefined_types_1, finish_global_stabs): Update.
4841         * mdebugread.c (psymtab_to_symtab_1): Update.
4842         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4843         (read_lexical_block_scope, new_symbol): Update.
4844         * dbxread.c (process_one_symbol): Update.
4845         * coffread.c (coff_symtab_read, process_coff_symbol)
4846         (coff_read_enum_type): Update.
4847         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4848         declare.
4849         (get_local_symbols, get_file_symbols, get_global_symbols): New
4850         functions.
4851         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4852         m_global_symbols.
4853         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4854         (~scoped_free_pendings): Update.
4855         (finish_block, prepare_for_building, reset_symtab_globals)
4856         (end_symtab_get_static_block, end_symtab_with_blockvector)
4857         (augment_type_symtab, push_context): Update.
4858         (get_local_symbols, get_file_symbols, get_global_symbols): New
4859         functions.
4860         (buildsym_init): Update.
4861
4862 2018-07-20  Tom Tromey  <tom@tromey.com>
4863
4864         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4865         (process_full_type_unit): Likewise.
4866         (dwarf2_start_symtab): Set list_in_scope.
4867
4868 2018-07-20  Tom Tromey  <tom@tromey.com>
4869
4870         * dwarf2read.c (process_psymtab_comp_unit_reader)
4871         (build_type_psymtabs_reader): Do not set list_in_scope.
4872
4873 2018-07-20  Tom Tromey  <tom@tromey.com>
4874
4875         * buildsym.c (free_pendings): Remove.
4876         (add_symbol_to_list, scoped_free_pendings)
4877         (finish_block_internal, buildsym_init): Update.
4878
4879 2018-07-20  Tom Tromey  <tom@tromey.com>
4880
4881         * xcoffread.c (read_xcoff_symtab): Update.
4882         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4883         Update.
4884         * dbxread.c (process_one_symbol): Update.
4885         * coffread.c (coff_symtab_read): Update.
4886         * buildsym.h (finish_block): Update.
4887         * buildsym.c (finish_block): Remove "listhead" argument.
4888         (end_symtab_get_static_block): Update.
4889
4890 2018-07-20  Tom Tromey  <tom@tromey.com>
4891
4892         * buildsym.h (class scoped_free_pendings): Remove constructor.
4893         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4894         method.
4895         <m_pending_block_obstack, m_pending_blocks>: New members.
4896         (pending_block_obstack, pending_blocks): Remove.
4897         (scoped_free_pendings::scoped_free_pendings): Default.
4898         (~scoped_free_pendings): Update.
4899         (free_pending_blocks): Remove.
4900         (finish_block_internal, record_pending_block, make_blockvector)
4901         (end_symtab_get_static_block, augment_type_symtab, push_context)
4902         (buildsym_init): Update.
4903
4904 2018-07-20  Tom Tromey  <tom@tromey.com>
4905
4906         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4907         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4908         members.
4909         (pending_addrmap, pending_addrmap_obstack)
4910         (pending_addrmap_interesting): Remove.
4911         (scoped_free_pendings, record_block_range, make_blockvector)
4912         (prepare_for_building, reset_symtab_globals, buildsym_init):
4913         Update.
4914
4915 2018-07-20  Tom Tromey  <tom@tromey.com>
4916
4917         * xcoffread.c (process_linenos): Update.
4918         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4919         * mdebugread.c (psymtab_to_symtab_1): Update.
4920         * dwarf2read.c (setup_type_unit_groups)
4921         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4922         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4923         * dbxread.c (process_one_symbol): Update.
4924         * coffread.c (coff_symtab_read, enter_linenos)
4925         (process_coff_symbol): Update.
4926         * buildsym.h (current_subfile): Don't declare.
4927         (get_current_subfile): Declare.
4928         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4929         member.
4930         (start_subfile, free_buildsym_compunit, push_subfile)
4931         (prepare_for_building, start_symtab): Update.
4932         (get_current_subfile): New function.
4933
4934 2018-07-20  Tom Tromey  <tom@tromey.com>
4935
4936         * coffread.c (coff_symtab_read): Update.
4937         * xcoffread.c (read_xcoff_symtab): Update.
4938         * dwarf2read.c (new_symbol): Update.
4939         (read_func_scope, read_lexical_block_scope): Update.
4940         * dbxread.c (process_one_symbol): Update.
4941         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4942         (outermost_context_p): Remove macro.
4943         (outermost_context_p, get_current_context_stack)
4944         (get_context_stack_depth): Declare.
4945         (pop_context): Return struct context_stack.
4946         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4947         member.
4948         (context_stack_size): Remove.
4949         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4950         (prepare_for_building, end_symtab_get_static_block)
4951         (augment_type_symtab, push_context): Update.
4952         (pop_context): Return struct context_stack.
4953         (outermost_context_p, get_current_context_stack)
4954         (get_context_stack_depth): New functions.
4955         (buildsym_init): Update.
4956
4957 2018-07-20  Tom Tromey  <tom@tromey.com>
4958
4959         * rust-exp.y: Now a pure parser.  Update all rules.
4960         (%union): Move earlier.
4961         (current_parser, work_obstack): Remove globals.
4962         (rust_parser, ~rust_parser): Update.
4963         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4964         lex_character, lex_number, lex_string, lex_identifier,
4965         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4966         convert_name, convert_params_to_expression,
4967         convert_ast_to_expression, ast_basic_type, ast_operation,
4968         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4969         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4970         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4971         ast_array_type, ast_slice_type, ast_reference_type,
4972         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4973         (rust_parse): Update.
4974         (rustyyerror, rustyylex): Add parser parameter.
4975         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4976         (rust_lex_stringish_test, rust_lex_test_sequence)
4977         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4978         (rust_lex_test_push_back, rust_lex_tests): Update.
4979
4980 2018-07-19  Pedro Alves  <palves@redhat.com>
4981
4982         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4983         gdb::unique_xmalloc_ptr.
4984         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4985         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4986         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4987         copy-initialization.
4988         * guile/scm-pretty-print.c (ppscm_print_children): Use
4989         gdb::unique_xmalloc_ptr instead of cleanups.
4990         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4991         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4992         gdb::unique_xmalloc_ptr.
4993         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4994         Adjust to use gdb::unique_xmalloc_ptr.
4995         * guile/scm-utils.c (extract_arg): Adjust.
4996         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4997         gdb::unique_xmalloc_ptr instead of a cleanup.
4998
4999 2018-07-19  Tom Tromey  <tom@tromey.com>
5000
5001         * utils.c (do_value_free_to_mark)
5002         (make_cleanup_value_free_to_mark): Remove.
5003         * utils.h (make_cleanup_value_free_to_mark): Remove.
5004
5005 2018-07-19  Pedro Alves  <palves@redhat.com>
5006
5007         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5008         forwarding reference.
5009
5010 2018-07-18  Pedro Alves  <palves@redhat.com>
5011
5012         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5013         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5014         cleanup.
5015
5016 2018-07-18  Pedro Alves  <palves@redhat.com>
5017
5018         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5019         exceptions.
5020         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5021         (gdbscm_wrap): New.
5022         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5023         directly instead of a cleanup.
5024         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5025         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5026         (vlscm_binop_gdbthrow): New, factored out from ...
5027         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5028         (vlscm_rich_compare): Use gdbscm_wrap.
5029         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5030         instead of a cleanup.
5031         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5032         cleanup.
5033         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5034         Use xfree directly instead of a cleanup.
5035         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5036         Adjust to use gdbscm_wrap and scoped_value_mark.
5037         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5038         (gdbscm_value_address, gdbscm_value_dereference)
5039         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5040         scoped_value_mark.
5041         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5042         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5043         scoped_value_mark.
5044         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5045         gdbscm_wrap and scoped_value_mark.
5046         (gdbscm_value_to_string): Use xfree directly instead of a
5047         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5048         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5049         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5050         scoped_value_mark.
5051         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5052         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5053         scoped_value_mark.
5054         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5055         gdbscm_wrap.
5056
5057 2018-07-18  Tom de Vries  <tdevries@suse.de>
5058
5059         * findvar.c (default_read_var_value): Also resolve dynamic type for
5060         LOC_OPTIMIZED_OUT vars.
5061
5062 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5063
5064         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5065         decoding.
5066
5067 2018-07-17  Tom Tromey  <tom@tromey.com>
5068
5069         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5070         (compute_enum_list, pascm_set_param_value_x)
5071         (gdbscm_parameter_value): Update.
5072         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5073         (gdbscm_scm_to_host_string): Update.
5074         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5075         Update.
5076         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5077         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5078         * guile/scm-string.c (gdbscm_scm_to_string): Return
5079         unique_xmalloc_ptr.
5080         (gdbscm_scm_to_host_string): Likewise.
5081
5082 2018-07-17  Tom Tromey  <tom@tromey.com>
5083
5084         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5085         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5086         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5087         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5088         unique_xmalloc_ptr.
5089
5090 2018-07-17  Tom Tromey  <tom@tromey.com>
5091
5092         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5093         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5094         Update.
5095         * guile/scm-cmd.c (cmdscm_function): Update.
5096         * guile/scm-pretty-print.c
5097         (ppscm_print_exception_unless_memory_error): Update.
5098         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5099         Return unique_xmalloc_ptr.
5100
5101 2018-07-17  Tom Tromey  <tom@tromey.com>
5102
5103         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5104         Use string_printf.
5105
5106 2018-07-17  Jim Wilson  <jimw@sifive.com>
5107
5108         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5109         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5110         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5111         unecessary braces after EF_RISCV_RVC test.  Delete call to
5112         set_gdbarch_decr_pc_after_break.
5113
5114         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5115         RISCV_LAST_FP_REGNUM + 1.
5116         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5117
5118 2018-07-17  Tom Tromey  <tom@tromey.com>
5119
5120         * configure.ac: Remove --disable-gdbcli.
5121         * configure: Rebuild.
5122         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5123         (SUBDIR_CLI_CFLAGS): Remove.
5124         (SFILES): Use SUBDIR_CLI_SRCS.
5125         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5126
5127 2018-07-17  Tom Tromey  <tom@tromey.com>
5128
5129         PR gdb/18624:
5130         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5131
5132 2018-07-16  Jim Wilson  <jimw@sifive.com>
5133
5134         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5135
5136 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5137
5138         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5139         variable.
5140         (libunwind_frame_sniffer): Likewise.
5141         (libunwind_frame_prev_register): Likewise.
5142         (libunwind_sigtramp_frame_sniffer): Likewise.
5143         * ia64-tdep.c (ia64_access_reg): Likewise.
5144         (ia64_access_rse_reg): Likewise.
5145         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5146         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5147
5148 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5149
5150         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5151
5152 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5153
5154         * remote-sim.c (gdbsim_target::close,
5155         gdbsim_target::mourn_inferior): Remove unused variables.
5156
5157 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5158
5159         * ia64-tdep.c (ktab_buf): New global.
5160         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5161         (get_kernel_table): Adjust.
5162
5163 2018-07-16  Tom Tromey  <tom@tromey.com>
5164
5165         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5166         * dwarf2read.c (using_directives, new_symbol): Use
5167         outermost_context_p.
5168         * dbxread.c (process_one_symbol): Use outermost_context_p.
5169         * coffread.c (coff_symtab_read): Use outermost_context_p.
5170
5171 2018-07-16  Tom Tromey  <tom@tromey.com>
5172
5173         * dwarf2read.c (using_directives, read_func_scope)
5174         (read_lexical_block_scope): Update.
5175         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5176         * buildsym.h (local_using_directives, global_using_directives):
5177         Don't declare.
5178         (get_local_using_directives, set_local_using_directives)
5179         (get_global_using_directives): Declare.
5180         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5181         m_global_using_directives>: New members.
5182         (finish_block_internal, prepare_for_building)
5183         (reset_symtab_globals, end_symtab_get_static_block)
5184         (push_context): Update.
5185         (get_local_using_directives, set_local_using_directives)
5186         (get_global_using_directives): New functions.
5187         (buildsym_init): Update.
5188
5189 2018-07-16  Tom Tromey  <tom@tromey.com>
5190
5191         * xcoffread.c (xcoff_initial_scan): Don't call
5192         free_pending_blocks.
5193         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5194         * buildsym.h (class scoped_free_pendings): Add constructor.
5195         (free_pending_blocks): Don't declare.
5196         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5197         (free_pending_blocks): Now static.
5198
5199 2018-07-16  Tom Tromey  <tom@tromey.com>
5200
5201         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5202         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5203         member.
5204         (struct subfile_stack): Remove.
5205         (subfile_stack): Remove.
5206         (push_subfile, pop_subfile, buildsym_init): Update.
5207
5208 2018-07-16  Tom Tromey  <tom@tromey.com>
5209
5210         * buildsym.c (push_subfile): Use gdb_assert.
5211         (pop_subfile): Use gdb_assert.
5212
5213 2018-07-16  Tom Tromey  <tom@tromey.com>
5214
5215         * buildsym.h (merge_symbol_lists): Remove.
5216         * buildsym.c (merge_symbol_lists): Remove.
5217
5218 2018-07-16  Tom Tromey  <tom@tromey.com>
5219
5220         * stabsread.c (scan_file_globals): Update comment.
5221         * stabsread.h (scan_file_globals): Move from buildsym.h.
5222         * buildsym.h (scan_file_globals): Move to stabsread.h.
5223
5224 2018-07-16  Tom Tromey  <tom@tromey.com>
5225
5226         * xcoffread.c (xcoff_new_init): Update.
5227         * mipsread.c (mipscoff_new_init): Update.
5228         * mdebugread.c (mdebug_build_psymtabs): Update.
5229         * elfread.c (elf_new_init): Update.
5230         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5231         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5232         * buildsym.h (buildsym_new_init): Don't declare.
5233         * buildsym.c (buildsym_new_init): Remove.
5234
5235 2018-07-16  Tom Tromey  <tom@tromey.com>
5236
5237         * stabsread.h (within_function): Move from buildsym.h.
5238         * stabsread.c (start_stabs): Clear within_function.
5239         * coffread.c (coff_start_symtab): Clear within_function.
5240         * buildsym.h (within_function): Move to stabsread.h.
5241         * buildsym.c (prepare_for_building): Update.
5242
5243 2018-07-16  Tom Tromey  <tom@tromey.com>
5244
5245         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5246         * dwarf2read.c (dwarf2_start_symtab): Don't set
5247         processing_gcc_compilation.
5248         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5249
5250 2018-07-16  Tom Tromey  <tom@tromey.com>
5251
5252         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5253         (next_symbol_text_func): Move from buildsym.h.
5254         * stabsread.c (hashname): Move from buildsym.c.
5255         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5256         (next_symbol_text_func, hashname): Move to stabsread.h.
5257         * buildsym.c: Don't include bcache.h
5258         (hashname): Move to stasbread.c.
5259
5260 2018-07-16  Tom Tromey  <tom@tromey.com>
5261
5262         * buildsym.h (context_stack_size): Don't declare.
5263         * buildsym.c (context_stack_size): New global.
5264
5265 2018-07-16  Tom Tromey  <tom@tromey.com>
5266
5267         * dbxread.c (processing_acc_compilation): New global.
5268         * buildsym.h (processing_acc_compilation): Don't declare.
5269
5270 2018-07-16  Tom Tromey  <tom@tromey.com>
5271
5272         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5273         * dbxread.c (read_ofile_symtab): Update.
5274         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5275         * buildsym.h (last_source_start_addr): Remove.
5276         (set_last_source_start_addr, get_last_source_start_addr):
5277         Declare.
5278         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5279         parameter.
5280         (struct buildsym_compunit) <m_last_source_start_addr>: New
5281         member.
5282         (prepare_for_building): Remove start_addr parameter.
5283         (start_symtab, restart_symtab, end_symtab_get_static_block)
5284         (end_symtab_with_blockvector): Update.
5285         (set_last_source_start_addr, get_last_source_start_addr): New
5286         functions.
5287
5288 2018-07-16  Tom Tromey  <tom@tromey.com>
5289
5290         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5291         member.
5292         (have_line_numbers): Remove.
5293         (record_line, prepare_for_building, end_symtab_get_static_block)
5294         (augment_type_symtab): Update.
5295
5296 2018-07-16  Tom Tromey  <tom@tromey.com>
5297
5298         * buildsym.c (~buildsym_compunit): Free the macro table.
5299         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5300         methods.
5301         <m_pending_macros>: New member.
5302         (pending_macros): Remove.
5303         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5304         (reset_symtab_globals, end_symtab_get_static_block)
5305         (end_symtab_with_blockvector, augment_type_symtab)
5306         (buildsym_init): Update.
5307
5308 2018-07-16  Tom Tromey  <tom@tromey.com>
5309
5310         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5311         parameter.
5312         (buildsym_compunit::set_last_source_file): New method.
5313         <m_last_source_file>: New member.
5314         (prepare_for_building): Remove "name" parameter.
5315         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5316         (last_source_file): Remove.
5317         (set_last_source_file, get_last_source_file): Update.
5318
5319 2018-07-16  Tom Tromey  <tom@tromey.com>
5320
5321         * buildsym.c (prepare_for_building): Add assert.
5322
5323 2018-07-16  Tom Tromey  <tom@tromey.com>
5324
5325         * buildsym.c (~buildsym_compunit): Update.
5326         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5327         (start_subfile, patch_subfile_names)
5328         (end_symtab_with_blockvector): Update.
5329
5330 2018-07-16  Tom Tromey  <tom@tromey.com>
5331
5332         * buildsym.c (struct buildsym_compunit): Add constructor,
5333         destructor, initializers.
5334         (start_buildsym_compunit): Remove.
5335         (free_buildsym_compunit): Use "delete".
5336         (start_symtab, restart_symtab): Use "new".
5337
5338 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5339
5340         * symfile.c (set_objfile_default_section_offset): Remove struct
5341         keyword.
5342
5343 2018-07-14  Stafford Horne  <shorne@gmail.com>
5344
5345         * (Responsible Maintainers): Add myself as or1k maintainer.
5346
5347 2018-07-13  Tom Tromey  <tom@tromey.com>
5348
5349         * symfile.c (set_objfile_default_section_offset): Use extra braces
5350         around initializer.
5351
5352 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5353
5354         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5355         non-branching basr.
5356
5357 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5358
5359         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5360         unittests/cli-utils-selftests.c
5361         * unittests/cli-utils-selftests.c: New file.
5362
5363 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5364
5365         * NEWS: Mention new commands. Mention change to 'thread apply'.
5366
5367 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5368
5369         * thread.c (thr_try_catch_cmd): New function.
5370         (thread_apply_all_command): Handle qcs flags.
5371         (thread_apply_command): Handle qcs flags.
5372         (taas_command): New function.
5373         (tfaas_command): New function.
5374         (_initialize_thread): Update to setup the new commands 'taas
5375         and 'tfaas'. Change doc string for 'thread apply'.
5376
5377 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5378
5379         * stack.c: (trailing_outermost_frame): New function, mostly
5380         extracted from backtrace_command_1.
5381         (leading_innermost_frame): New function.
5382         (backtrace_command_1): Update to call trailing_outermost_frame.
5383         (frame_apply_command_count): New function.
5384         (frame_apply_level_command): New function.
5385         (frame_apply_all_command): New function.
5386         (frame_apply_command): New function.
5387         (faas_command): New function.
5388         (frame_cmd_list): New variable.
5389         (_initialize_stack): Update to setup the new commands 'frame apply'
5390         and 'faas'.
5391
5392 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5393
5394         * cli-utils.c (number_or_range_parser::get_number): Only handle
5395         numbers or convenience var as numbers.
5396         (parse_flags): New function.
5397         (parse_flags_qcs): New function.
5398         (number_or_range_parser::finished): Ensure parsing end is detected
5399         before end of string.
5400         * cli-utils.h (parse_flags): New function.
5401         (parse_flags_qcs): New function.
5402         (number_or_range_parser): Remove m_finished bool.
5403         (number_or_range_parser::skip_range): Set m_in_range to false.
5404
5405 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5406
5407         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5408         on Windows.
5409
5410 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5411             Jan Kratochvil  <jan.kratochvil@redhat.com>
5412             Paul Fertser  <fercerpav@gmail.com>
5413             Tsutomu Seki  <sekiriki@gmail.com>
5414             Pedro Alves  <palves@redhat.com>
5415
5416         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5417         'unittests/parse-connection-spec-selftests.c'.
5418         (COMMON_SFILES): Add 'common/netstuff.c'.
5419         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5420         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5421         * common/netstuff.c: New file.
5422         * common/netstuff.h: New file.
5423         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5424         (wait_for_connect): Update comment.  New parameter
5425         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5426         Use 'sock' directly instead of 'scb->fd'.
5427         (try_connect): New function, with code from 'net_open'.
5428         (net_open): Rewrite main loop to deal with multiple
5429         sockets/addresses.  Handle IPv6-style hostnames; implement
5430         support for IPv6 connections.
5431         * unittests/parse-connection-spec-selftests.c: New file.
5432
5433 2018-07-11  Pedro Alves  <palves@redhat.com>
5434
5435         PR gdb/23377
5436         * remote.c (remote_target::remote_detach_pid): Call
5437         set_current_process.
5438
5439 2018-07-11  Pedro Alves  <palves@redhat.com>
5440
5441         * h8300-tdep.c (h8300_gdbarch_init): Remove
5442         set_gdbarch_ecoff_reg_to_regnum calls.
5443
5444 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5445
5446         PR c++/23373
5447         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5448         offsets/sizes for static members of a class/struct.
5449
5450 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5451
5452         * target-descriptions.c (tdesc_register_bitsize): Rename.
5453         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5454         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5455         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5456
5457 2018-07-10  Tom Tromey  <tom@tromey.com>
5458
5459         * breakpoint.c (moribund_locations): Now static and a
5460         std::vector.
5461         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5462         (build_bpstat_chain, update_global_location_list)
5463         (breakpoint_retire_moribund): Update.
5464         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5465         VEC.
5466
5467 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5468
5469         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5470         (riscv_register_reggroup_p): Use new function, remove unneeded
5471         parenthesis.
5472         (riscv_push_dummy_call): Extend assert to compare against xlen or
5473         flen based on register type.
5474
5475 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5476
5477         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5478
5479 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5480
5481         * remote.c (show_hardware_watchpoint_limit): New function.
5482         (show_hardware_watchpoint_length_limit): New function.
5483         (show_hardware_breakpoint_limit): New function.
5484         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5485         where appropriate, update help text.
5486
5487 2018-07-09  Tom Tromey  <tom@tromey.com>
5488
5489         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5490         (CLIBS): Don't mention NAT_CLIBS.
5491
5492 2018-07-09  Tom Tromey  <tom@tromey.com>
5493
5494         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5495         (LIBGDB_OBS, clean mostlyclean): Update.
5496         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5497
5498 2018-07-09  Tom Tromey  <tom@tromey.com>
5499
5500         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5501         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5502         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5503
5504 2018-07-09  Tom Tromey  <tom@tromey.com>
5505
5506         * Makefile.in (ALLDEPFILES): Remove exec.c.
5507         (COMMON_OBS): Remove exec.o.
5508         (COMMON_SFILES): Add exec.c.
5509
5510 2018-07-09  Tom Tromey  <tom@tromey.com>
5511
5512         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5513
5514 2018-07-09  Tom Tromey  <tom@tromey.com>
5515
5516         * Makefile.in (clean mostlyclean): Remove stamp-version.
5517         (version.c): Depend on stamp-version.
5518         (stamp-version): New rule, from version.c rule.
5519
5520 2018-07-09  Tom Tromey  <tom@tromey.com>
5521
5522         * Makefile.in (init.c): Depend on stamp-init.
5523         (stamp-init): New rule, from init.c rule.
5524         (clean mostlyclean): Remove stamp-init.
5525
5526 2018-07-09  Tom Tromey  <tom@tromey.com>
5527
5528         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5529         SUBDIR_GCC_COMPILE_SRCS.
5530
5531 2018-07-09  Tom Tromey  <tom@tromey.com>
5532
5533         * Makefile.in (init.c): Remove some unused sed rules.
5534
5535 2018-07-09  Tom Tromey  <tom@tromey.com>
5536
5537         * Makefile.in (TSOBS): Remove.
5538         (INIT_FILES): Update.
5539         (LIBGDB_OBS): Update.
5540         (COMMON_SFILES): Add inflow.c.
5541         (SFILES): Remove inflow.c.
5542
5543 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5544
5545         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5546
5547 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5548
5549         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5550         get_saveloc_name, is_signal_frame_name, step_name,
5551         init_remote_name, create_addr_space_name,
5552         destroy_addr_space_name, search_unwind_table_name,
5553         find_dyn_list_name): Constify.
5554
5555 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5556
5557         * darwin-nat.c (darwin_pthread_kill): New function.
5558         (darwin_resume_thread): Use darwin_pthread_kill.
5559
5560 2018-07-05  Tom de Vries  <tdevries@suse.de>
5561
5562         * macroexp.c (macro_buffer) <operator=>: New member function.
5563
5564 2018-07-04  Tom Tromey  <tom@tromey.com>
5565
5566         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5567
5568 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5569
5570         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5571         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5572         * maint.c: Likewise.
5573         * top.c: Likewise.
5574
5575 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5576
5577         * NEWS: Create a new section for the next release branch.
5578         Rename the section of the current branch, now that it has
5579         been cut.
5580
5581 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5582
5583         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5584         * version.in: Bump version to 8.2.50.DATE-git.
5585
5586 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5587             Pedro Alves  <palves@redhat.com>
5588
5589         * linux-nat.c (linux_init_ptrace): Rename to ...
5590         (linux_init_ptrace_procfs): ... this.  Call
5591         linux_proc_init_warnings.
5592         (linux_nat_target::post_attach)
5593         (linux_nat_target::post_startup_inferior): Adjust.
5594         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5595         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5596
5597 2018-07-04  Tom de Vries  <tdevries@suse.de>
5598
5599         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5600         check ...
5601         (read_comp_unit_head): ... here.
5602
5603 2018-07-03  Tom Tromey  <tom@tromey.com>
5604
5605         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5606         (stop_tracing, tstatus_command)
5607         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5608         (print_one_static_tracepoint_marker): Update.
5609         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5610         std::vector.
5611         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5612         VEC.
5613         (all_tracepoints, static_tracepoints_here): Return std::vector.
5614
5615 2018-07-03  Tom Tromey  <tom@tromey.com>
5616
5617         * common/ptid.c (ptid_equal): Remove.
5618         * common/ptid.h (ptid_equal): Don't declare.
5619         * ada-tasks.c: Update.
5620         * breakpoint.c: Update.
5621         * common/agent.c: Update.
5622         * corelow.c: Update.
5623         * darwin-nat-info.c: Update.
5624         * darwin-nat.c: Update.
5625         * dcache.c: Update.
5626         * dtrace-probe.c: Update.
5627         * dummy-frame.c: Update.
5628         * fbsd-nat.c: Update.
5629         * frame.c: Update.
5630         * gdbthread.h: Update.
5631         * gnu-nat.c: Update.
5632         * go32-nat.c: Update.
5633         * inf-loop.c: Update.
5634         * inf-ptrace.c: Update.
5635         * infcall.c: Update.
5636         * infcmd.c: Update.
5637         * inflow.c: Update.
5638         * infrun.c: Update.
5639         * linux-fork.c: Update.
5640         * linux-nat.c: Update.
5641         * linux-thread-db.c: Update.
5642         * mi/mi-cmd-var.c: Update.
5643         * mi/mi-interp.c: Update.
5644         * mi/mi-main.c: Update.
5645         * nto-procfs.c: Update.
5646         * ppc-linux-tdep.c: Update.
5647         * procfs.c: Update.
5648         * python/py-inferior.c: Update.
5649         * python/py-record-btrace.c: Update.
5650         * python/py-record.c: Update.
5651         * ravenscar-thread.c: Update.
5652         * regcache.c: Update.
5653         * remote-sim.c: Update.
5654         * remote.c: Update.
5655         * sol-thread.c: Update.
5656         * solib.c: Update.
5657         * target.c: Update.
5658         * tui/tui-stack.c: Update.
5659         * varobj.c: Update.
5660         * windows-nat.c: Update.
5661         * windows-tdep.c: Update.
5662
5663 2018-07-03  Tom Tromey  <tom@tromey.com>
5664
5665         * common/ptid.c (ptid_match): Remove.
5666         * common/ptid.h (ptid_match): Don't declare.
5667         * fbsd-nat.c: Update.
5668         * infcmd.c: Update.
5669         * infrun.c: Update.
5670         * linux-nat.c: Update.
5671         * record-btrace.c: Update.
5672         * regcache.c: Update.
5673         * remote.c: Update.
5674
5675 2018-07-03  Tom Tromey  <tom@tromey.com>
5676
5677         * common/ptid.c (ptid_tid_p): Remove.
5678         * common/ptid.h (ptid_tid_p): Don't declare.
5679         * sol-thread.c: Update.
5680
5681 2018-07-03  Tom Tromey  <tom@tromey.com>
5682
5683         * common/ptid.c (ptid_lwp_p): Remove.
5684         * common/ptid.h (ptid_lwp_p): Don't declare.
5685         * fbsd-nat.c: Update.
5686         * linux-nat.c: Update.
5687         * nat/linux-procfs.c: Update.
5688         * nat/x86-linux-dregs.c: Update.
5689         * sol-thread.c: Update.
5690
5691 2018-07-03  Tom Tromey  <tom@tromey.com>
5692
5693         * common/ptid.c (ptid_is_pid): Remove.
5694         * common/ptid.h (ptid_is_pid): Don't declare.
5695         * infrun.c: Update.
5696         * linux-nat.c: Update.
5697         * mi/mi-interp.c: Update.
5698         * remote.c: Update.
5699         * thread.c: Update.
5700
5701 2018-07-03  Tom Tromey  <tom@tromey.com>
5702
5703         * common/ptid.c (ptid_get_tid): Remove.
5704         * common/ptid.h (ptid_get_tid): Don't declare.
5705         * ada-tasks.c: Update.
5706         * aix-thread.c: Update.
5707         * bsd-uthread.c: Update.
5708         * darwin-nat.c: Update.
5709         * fbsd-nat.c: Update.
5710         * i386-darwin-nat.c: Update.
5711         * infrun.c: Update.
5712         * linux-tdep.c: Update.
5713         * nto-procfs.c: Update.
5714         * ppc-ravenscar-thread.c: Update.
5715         * python/py-infthread.c: Update.
5716         * ravenscar-thread.c: Update.
5717         * sol-thread.c: Update.
5718         * sparc-ravenscar-thread.c: Update.
5719         * windows-nat.c: Update.
5720
5721 2018-07-03  Tom Tromey  <tom@tromey.com>
5722
5723         * common/ptid.c (ptid_get_lwp): Remove.
5724         * common/ptid.h (ptid_get_lwp): Don't declare.
5725         * aarch64-linux-nat.c: Update.
5726         * ada-tasks.c: Update.
5727         * aix-thread.c: Update.
5728         * amd64-linux-nat.c: Update.
5729         * arm-linux-nat.c: Update.
5730         * corelow.c: Update.
5731         * fbsd-nat.c: Update.
5732         * fbsd-tdep.c: Update.
5733         * gnu-nat.c: Update.
5734         * i386-cygwin-tdep.c: Update.
5735         * i386-gnu-nat.c: Update.
5736         * i386-linux-nat.c: Update.
5737         * ia64-linux-nat.c: Update.
5738         * inf-ptrace.c: Update.
5739         * infrun.c: Update.
5740         * linux-fork.c: Update.
5741         * linux-nat.c: Update.
5742         * linux-tdep.c: Update.
5743         * linux-thread-db.c: Update.
5744         * mips-linux-nat.c: Update.
5745         * nat/aarch64-linux-hw-point.c: Update.
5746         * nat/aarch64-linux.c: Update.
5747         * nat/linux-btrace.c: Update.
5748         * nat/linux-osdata.c: Update.
5749         * nat/linux-procfs.c: Update.
5750         * nat/x86-linux-dregs.c: Update.
5751         * obsd-nat.c: Update.
5752         * ppc-fbsd-nat.c: Update.
5753         * ppc-linux-nat.c: Update.
5754         * procfs.c: Update.
5755         * python/py-infthread.c: Update.
5756         * ravenscar-thread.c: Update.
5757         * remote.c: Update.
5758         * s390-linux-nat.c: Update.
5759         * sol-thread.c: Update.
5760         * sol2-tdep.c: Update.
5761         * spu-linux-nat.c: Update.
5762         * x86-linux-nat.c: Update.
5763         * xtensa-linux-nat.c: Update.
5764
5765 2018-07-03  Tom Tromey  <tom@tromey.com>
5766
5767         * common/ptid.c (ptid_get_pid): Remove.
5768         * common/ptid.h (ptid_get_pid): Don't declare.
5769         * aarch64-linux-nat.c: Update.
5770         * ada-lang.c: Update.
5771         * aix-thread.c: Update.
5772         * alpha-bsd-nat.c: Update.
5773         * amd64-fbsd-nat.c: Update.
5774         * amd64-linux-nat.c: Update.
5775         * arm-linux-nat.c: Update.
5776         * arm-nbsd-nat.c: Update.
5777         * auxv.c: Update.
5778         * break-catch-syscall.c: Update.
5779         * breakpoint.c: Update.
5780         * bsd-uthread.c: Update.
5781         * corelow.c: Update.
5782         * ctf.c: Update.
5783         * darwin-nat.c: Update.
5784         * fbsd-nat.c: Update.
5785         * fbsd-tdep.c: Update.
5786         * gcore.c: Update.
5787         * gnu-nat.c: Update.
5788         * hppa-nbsd-nat.c: Update.
5789         * hppa-obsd-nat.c: Update.
5790         * i386-fbsd-nat.c: Update.
5791         * ia64-linux-nat.c: Update.
5792         * inf-ptrace.c: Update.
5793         * infcmd.c: Update.
5794         * inferior.c: Update.
5795         * inferior.h: Update.
5796         * inflow.c: Update.
5797         * infrun.c: Update.
5798         * linux-fork.c: Update.
5799         * linux-nat.c: Update.
5800         * linux-tdep.c: Update.
5801         * linux-thread-db.c: Update.
5802         * m68k-bsd-nat.c: Update.
5803         * mi/mi-interp.c: Update.
5804         * mi/mi-main.c: Update.
5805         * mips-linux-nat.c: Update.
5806         * mips-nbsd-nat.c: Update.
5807         * mips64-obsd-nat.c: Update.
5808         * nat/aarch64-linux-hw-point.c: Update.
5809         * nat/aarch64-linux.c: Update.
5810         * nat/linux-btrace.c: Update.
5811         * nat/linux-osdata.c: Update.
5812         * nat/linux-procfs.c: Update.
5813         * nat/x86-linux-dregs.c: Update.
5814         * nto-procfs.c: Update.
5815         * obsd-nat.c: Update.
5816         * ppc-linux-nat.c: Update.
5817         * ppc-nbsd-nat.c: Update.
5818         * ppc-obsd-nat.c: Update.
5819         * proc-service.c: Update.
5820         * procfs.c: Update.
5821         * python/py-inferior.c: Update.
5822         * python/py-infthread.c: Update.
5823         * ravenscar-thread.c: Update.
5824         * record.c: Update.
5825         * remote-sim.c: Update.
5826         * remote.c: Update.
5827         * rs6000-nat.c: Update.
5828         * s390-linux-nat.c: Update.
5829         * sh-nbsd-nat.c: Update.
5830         * sol-thread.c: Update.
5831         * sparc-nat.c: Update.
5832         * sparc64-tdep.c: Update.
5833         * spu-linux-nat.c: Update.
5834         * spu-tdep.c: Update.
5835         * target-debug.h: Update.
5836         * target.c: Update.
5837         * thread.c: Update.
5838         * tid-parse.c: Update.
5839         * tracefile-tfile.c: Update.
5840         * vax-bsd-nat.c: Update.
5841         * windows-nat.c: Update.
5842         * x86-linux-nat.c: Update.
5843         * x86-nat.c: Update.
5844
5845 2018-07-03  Tom Tromey  <tom@tromey.com>
5846
5847         * common/ptid.c (pid_to_ptid): Remove.
5848         * common/ptid.h (pid_to_ptid): Don't declare.
5849         * aix-thread.c: Update.
5850         * arm-linux-nat.c: Update.
5851         * common/ptid.c: Update.
5852         * common/ptid.h: Update.
5853         * corelow.c: Update.
5854         * ctf.c: Update.
5855         * darwin-nat.c: Update.
5856         * fbsd-nat.c: Update.
5857         * fork-child.c: Update.
5858         * gnu-nat.c: Update.
5859         * go32-nat.c: Update.
5860         * inf-ptrace.c: Update.
5861         * infcmd.c: Update.
5862         * inferior.c: Update.
5863         * infrun.c: Update.
5864         * linux-fork.c: Update.
5865         * linux-nat.c: Update.
5866         * nat/aarch64-linux-hw-point.c: Update.
5867         * nat/fork-inferior.c: Update.
5868         * nat/x86-linux-dregs.c: Update.
5869         * nto-procfs.c: Update.
5870         * obsd-nat.c: Update.
5871         * procfs.c: Update.
5872         * progspace.c: Update.
5873         * remote.c: Update.
5874         * rs6000-nat.c: Update.
5875         * s390-linux-nat.c: Update.
5876         * sol-thread.c: Update.
5877         * spu-linux-nat.c: Update.
5878         * target.c: Update.
5879         * top.c: Update.
5880         * tracefile-tfile.c: Update.
5881         * windows-nat.c: Update.
5882
5883 2018-07-03  Tom Tromey  <tom@tromey.com>
5884
5885         * common/ptid.h (ptid_build): Don't declare.
5886         * common/ptid.c (ptid_build): Remove.
5887         * aix-thread.c: Update.
5888         * bsd-kvm.c: Update.
5889         * bsd-uthread.c: Update.
5890         * common/agent.c: Update.
5891         * common/ptid.c: Update.
5892         * common/ptid.h: Update.
5893         * corelow.c: Update.
5894         * darwin-nat.c: Update.
5895         * fbsd-nat.c: Update.
5896         * gnu-nat.c: Update.
5897         * linux-fork.c: Update.
5898         * linux-nat.c: Update.
5899         * linux-thread-db.c: Update.
5900         * nat/linux-osdata.c: Update.
5901         * nat/linux-procfs.c: Update.
5902         * nto-procfs.c: Update.
5903         * obsd-nat.c: Update.
5904         * proc-service.c: Update.
5905         * procfs.c: Update.
5906         * ravenscar-thread.c: Update.
5907         * remote-sim.c: Update.
5908         * remote.c: Update.
5909         * sol-thread.c: Update.
5910         * target.c: Update.
5911         * windows-nat.c: Update.
5912
5913 2018-07-03  Tom Tromey  <tom@tromey.com>
5914
5915         * infrun.c (follow_exec): Use exit_inferior_silent.
5916         * inferior.c (exit_inferior_num_silent): Remove.
5917         * inferior.h (exit_inferior_num_silent): Don't declare.
5918
5919 2018-07-03  Tom Tromey  <tom@tromey.com>
5920
5921         PR cli/23340:
5922         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5923         inferior_ptid on error.
5924
5925 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5926             Simon Marchi  <simon.marchi@polymtl.ca>
5927
5928         PR tdep/8282
5929         * disasm.h (gdb_disassembler): Add
5930         `m_disassembler_options_holder'. member
5931         * disasm.c (get_all_disassembler_options): New function.
5932         (gdb_disassembler::gdb_disassembler): Use it.
5933         (gdb_buffered_insn_length_init_dis): Likewise.
5934         (gdb_buffered_insn_length): Adjust accordingly.
5935         (set_disassembler_options): Handle options with arguments.
5936         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5937         line if showing options with descriptions.
5938         (disassembler_options_completer): Adapt to using the
5939         `disasm_options_and_args_t' structure.
5940         * mips-tdep.c (mips_disassembler_options): New variable.
5941         (mips_disassembler_options_o32): Likewise.
5942         (mips_disassembler_options_n32): Likewise.
5943         (mips_disassembler_options_n64): Likewise.
5944         (gdb_print_insn_mips): Don't set `disassembler_options'.
5945         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5946         functions.
5947         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5948         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5949         `gdbarch_disassembler_options_implicit' and
5950         `gdbarch_valid_disassembler_options'.
5951         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5952         `disasm_options_and_args_t' structure.
5953         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5954         method.
5955         (valid_disassembler_options): Switch from `disasm_options_t' to
5956         the `disasm_options_and_args_t' structure.
5957         * NEWS: Document `set disassembler-options' support for the MIPS
5958         target.
5959         * gdbarch.h: Regenerate.
5960         * gdbarch.c: Regenerate.
5961
5962 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5963
5964         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5965
5966 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5967
5968         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5969         parameter in call to amd64_target_description.
5970         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5971         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5972         (amd64fbsd_init_abi): Likewise.
5973         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5974         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5975         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5976         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5977
5978 2018-06-29  Pedro Alves  <palves@redhat.com>
5979
5980         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5981         "segments" parameter.
5982         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5983         (_initialize_amd64_tdep): Update call to
5984         amd64_create_target_description.
5985         (amd64_target_description): Add "segments" parameter.  Adjust
5986         the implementation to use it.
5987         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5988         call to amd64_create_target_description.
5989         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5990         * gdb/arch/amd64.h (amd64_create_target_description): Add
5991         "segments" register.
5992         * gdb/arch/amd64.c (amd64_create_target_description): Add
5993         "segments" parameter.  Call create_feature_i386_64bit_segments
5994         only if SEGMENTS is true.
5995         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5996         call to amd64_create_target_description.
5997
5998 2018-06-29  Pedro Alves  <palves@redhat.com>
5999
6000         * thread.c (thread_target_id_str): New, factored out from ...
6001         (print_thread_info_1): ... here.  Use it to compute the max
6002         "Target Id" column width.
6003
6004 2018-06-29  Pedro Alves  <palves@redhat.com>
6005
6006         * remote.c (remote_target::extra_thread_info): Delete
6007         'display_buf' and 'n' locals.  from the cache, regardless of
6008         packet mechanims is in use.  Use cache for qThreadExtra and qP
6009         methods too.
6010
6011 2018-06-29  Pedro Alves  <palves@redhat.com>
6012
6013         * blockframe.c (find_pc_sect_containing_function): New function.
6014         * breakpoint.c (print_breakpoint_location): Don't call
6015         find_pc_sect_function.
6016         * linespec.c (create_sals_line_offset): Record the location's
6017         symbol in the sal.
6018         * linespec.c (convert_address_location_to_sals): Fill in sal's
6019         symbol with find_pc_sect_containing_function.
6020         * symtab.c (find_function_start_sal): Rename to ...
6021         (find_function_start_sal_1): ... this.
6022         (find_function_start_sal): Reimplement as wrapper around
6023         find_function_start_sal_1, and use
6024         find_pc_sect_containing_function to fill in the sal's symbol.
6025         (find_function_start_sal(symbol*, bool)): Adjust.
6026         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6027         comments.
6028         (find_pc_sect_containing_function): Declare.
6029
6030 2018-06-29  Pedro Alves  <palves@redhat.com>
6031
6032         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6033         true if the the location has no symbol.
6034
6035 2018-06-28  Tom Tromey  <tom@tromey.com>
6036
6037         * NEWS: Mention --enable-codesign.
6038         * silent-rules.mk (ECHO_SIGN): New variable.
6039         * configure.ac: Add --enable-codesign.
6040         * configure: Rebuild.
6041         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6042         (gdb$(EXEEXT)): Optionally invoke codesign.
6043
6044 2018-06-28  Pedro Alves  <palves@redhat.com>
6045
6046         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6047         comments.
6048         (switch_to_thread_no_regs): Adjust comment.
6049         * infcmd.c (stop_pc): Delete.
6050         (post_create_inferior, info_program_command): Replace references
6051         to stop_pc with references to thread_info->suspend.stop_pc.
6052         * inferior.h (stop_pc): Delete declaration.
6053         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6054         (handle_inferior_event_1, handle_signal_stop)
6055         (process_event_stop_test, keep_going_stepped_thread)
6056         (handle_step_into_function, handle_step_into_function_backward)
6057         (print_stop_location): Replace references to stop_pc with
6058         references to thread_info->suspend.stop_pc.
6059         (struct infcall_suspend_state) <stop_pc>: Delete field.
6060         (save_infcall_suspend_state, restore_infcall_suspend_state):
6061         Remove references to inf_stat->stop_pc.
6062         * linux-fork.c (fork_load_infrun_state): Likewise.
6063         * record-btrace.c (record_btrace_set_replay): Likewise.
6064         * record-full.c (record_full_goto_entry): Likewise.
6065         * remote.c (print_one_stopped_thread): Likewise.
6066         * target.c (target_resume): Extend comment.
6067         * thread.c (set_executing_thread): New.
6068         (set_executing): Use it.
6069         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6070         Remove references to stop_pc.
6071
6072 2018-06-28  Pedro Alves  <palves@redhat.com>
6073
6074         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6075         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6076
6077 2018-06-28  Tom Tromey  <tom@tromey.com>
6078
6079         * coffread.c (coff_symfile_finish): Update.
6080         * xcoffread.c (xcoff_symfile_finish): Update.
6081         * elfread.c (elf_symfile_finish): Update.
6082         * symfile.h (dwarf2_free_objfile): Don't declare.
6083         * dwarf2read.c (_initialize_dwarf2_read): Use
6084         register_objfile_data_with_cleanup.
6085         (dwarf2_free_objfile): Now static.  Change signature.
6086
6087 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6088
6089         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6090         option "-o" to add-symbol-file-load to add an offset to each
6091         section's load address.
6092         * symfile.c (set_objfile_default_section_offset): New function.
6093
6094 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6095
6096         * symfile.c (add_symbol_file_command): Make sure that sections
6097         with the same name are sorted in the same order.
6098
6099 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6100
6101         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6102         require the second argument.  If omitted, load sections at the
6103         addresses specified in the file.
6104
6105 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6106
6107         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6108         (_initialize_symfile): Add option "-o" to symbol-file to add an
6109         offset to each section of the symbol file.
6110
6111 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6112
6113         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6114
6115 2018-06-27  Tom Tromey  <tom@tromey.com>
6116
6117         * stack.c (_initialize_stack): Update "func" help text.
6118
6119 2018-06-27  Tom Tromey  <tom@tromey.com>
6120
6121         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6122         std::vector.
6123         (unwind_infopy_str, pyuw_create_unwind_info)
6124         (unwind_infopy_add_saved_register, pyuw_sniffer)
6125         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6126         Update.
6127         (struct saved_reg): Add constructor.
6128         <value>: Now a gdbpy_ref<>.
6129
6130 2018-06-27  Tom Tromey  <tom@tromey.com>
6131
6132         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6133
6134 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6135
6136         * gdb-gdb.py.in: Format using autopep8.
6137
6138 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6139
6140         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6141         (type_lookup_function): Recognize CORE_ADDR values.
6142
6143 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6144
6145         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6146         print tag_name.
6147
6148 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6149
6150         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6151         <__lt__>: Add.
6152
6153 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6154
6155         * gdb-gdb.py: Move to...
6156         * gdb-gdb.py.in: ... here.
6157         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6158         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6159         dependencies.
6160         (distclean): Remove gdb-gdb.py when cleaning.
6161         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6162         * configure: Re-generate.
6163
6164 2018-06-27  Pedro Alves  <palves@redhat.com>
6165
6166         * proc-service.c (get_ps_regcache): New.
6167         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6168         (ps_lsetfpregs): Use it.
6169
6170 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6171
6172         PR gdb/21695
6173         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6174         (dwarf_decode_lines_1): Adjust.
6175
6176 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6177
6178         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6179         override.
6180         <info_proc>: Likewise.
6181
6182 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6183
6184         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6185         to windows_fetch_one_register, and only handle the case of
6186         fetching one register.  Move the code that reloads the context
6187         and iterates over all registers if R is negative to...
6188         (windows_nat_target::fetch_registers): ... here.
6189         (do_windows_store_inferior_registers): Rename to
6190         windows_store_one_register, and only handle the case of storing
6191         one register.  Move the code that handles the case where r is
6192         negative to...
6193         (windows_nat_target::store_registers) ... here.
6194
6195 2018-06-26  Tom Tromey  <tom@tromey.com>
6196
6197         PR rust/22574:
6198         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6199         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6200         Update.
6201         (rust_internal_print_type): Add podata parameter.
6202         (rust_print_type): Update.
6203
6204 2018-06-26  Tom Tromey  <tom@tromey.com>
6205
6206         * typeprint.h (struct print_offset_data) <update, finish,
6207         maybe_print_hole>: New methods.
6208         <indentation>: New constant.
6209         * typeprint.c (print_offset_data::indentation): Define.
6210         (print_offset_data::maybe_print_hole, print_offset_data::update)
6211         (print_offset_data::finish): Move from c-typeprint.c and rename.
6212         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6213         (print_spaces_filtered_with_print_options): Update.
6214         (c_print_type_union_field_offset, maybe_print_hole)
6215         (c_print_type_struct_field_offset): Move to typeprint.c and
6216         rename.
6217         (c_type_print_base_struct_union): Update.
6218
6219 2018-06-25  Pedro Alves  <palves@redhat.com>
6220
6221         * gdbthread.h (thread_info_ref, delete_thread)
6222         (delete_thread_silent, first_thread_of_inferior)
6223         (any_thread_of_inferior, switch_to_thread)
6224         (enable_thread_stack_temporaries)
6225         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6226         (get_last_thread_stack_temporary)
6227         (value_in_thread_stack_temporaries, can_access_registers_thread):
6228         Spell out "struct thread_info" instead of just "thread_info".
6229         * inferior.h (notice_new_inferior): Likewise.
6230
6231 2018-06-25  Pedro Alves  <palves@redhat.com>
6232
6233         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6234         pass thread_info pointer to delete_thread.
6235         (windows_nat_target::detach): Pass inferior pointer to
6236         detach_inferior.
6237         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6238         delete_thread.
6239         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6240         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6241         and pass a thread_info pointer to delete_thread.
6242         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6243         pass thread_info pointer to delete_thread.
6244         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6245         delete_thread_silent call.
6246         * procfs.c (procfs_target::detach): Pass inferior pointer to
6247         detach_inferior.
6248         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6249         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6250         delete_thread_silent call.
6251         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6252         pass thread_info pointer to delete_thread.
6253         (windows_nat_target::detach): Pass inferior pointer to
6254         delete_inferior.
6255
6256 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6257
6258         * regcache.c (readable_regcache::read_part): Fix asserts.
6259         (reg_buffer::raw_collect_part): New function.
6260         (regcache::write_part): Fix asserts.
6261         (reg_buffer::raw_supply_part): New function.
6262         (regcache::transfer_regset_register): New helper function.
6263         (regcache::transfer_regset): Call new functions.
6264         (regcache_supply_regset): Use gdb_byte*.
6265         (regcache::supply_regset): Likewise.
6266         (regcache_collect_regset): Likewise.
6267         (regcache::collect_regset): Likewise.
6268         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6269         (reg_buffer::raw_supply_part): Likewise.
6270         (regcache::transfer_regset_register): Likewise.
6271         (regcache::transfer_regset): Use gdb_byte*.
6272
6273 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6274
6275         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6276
6277 2018-06-21  Pedro Alves  <palves@redhat.com>
6278
6279         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6280         instead of a ptid_t.  All callers adjusted.
6281         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6282         adjusted.
6283         (print_ada_task_info, display_current_task_id, task_command_1):
6284         Adjust.
6285         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6286         inferior_thread.
6287         (breakpoint_kind): Adjust.
6288         (remove_breakpoints_pid): Rename to ...
6289         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6290         pointer.  All callers adjusted.
6291         (bpstat_clear_actions): Use inferior_thread.
6292         (get_bpstat_thread): New.
6293         (bpstat_do_actions): Use it.
6294         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6295         to take a thread_info pointer.  All callers adjusted.
6296         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6297         (breakpoint_re_set_thread): Use inferior_thread.
6298         * breakpoint.h (struct inferior): Forward declare.
6299         (bpstat_stop_status): Update.
6300         (remove_breakpoints_pid): Delete.
6301         (remove_breakpoints_inf): New.
6302         * bsd-uthread.c (bsd_uthread_target::wait)
6303         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6304         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6305         (maint_btrace_packet_history_cmd)
6306         (maint_btrace_clear_packet_history_cmd): Adjust.
6307         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6308         inferior_thread.
6309         * cli/cli-interp.c: Include "inferior.h".
6310         * common/refcounted-object.h (struct
6311         refcounted_object_ref_policy): New.
6312         * compile/compile-object-load.c: Include gdbthread.h.
6313         (store_regs): Use inferior_thread.
6314         * corelow.c (core_target::close): Use current_inferior.
6315         (core_target_open): Adjust to use first_thread_of_inferior and use
6316         the current inferior.
6317         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6318         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6319         <thread>: ... this new field.  All references adjusted.
6320         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6321         Take a thread_info pointer instead of a ptid_t.
6322         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6323         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6324         thread_info pointer instead of a ptid_t.
6325         * elfread.c: Include "inferior.h".
6326         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6327         Use inferior_thread.
6328         * eval.c (evaluate_subexp): Likewise.
6329         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6330         inferior_thread.
6331         * gdb_proc_service.h (struct thread_info): Forward declare.
6332         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6333         <thread>: ... this new field.  All references adjusted.
6334         * gdbarch.h, gdbarch.c: Regenerate.
6335         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6336         'thread' parameter.  All implementations and callers adjusted.
6337         * gdbthread.h (thread_info) <set_running>: New method.
6338         (delete_thread, delete_thread_silent): Take a thread_info pointer
6339         instead of a ptid.
6340         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6341         (first_thread_of_process): Delete, replaced by ...
6342         (first_thread_of_inferior): ... this new function.  All callers
6343         adjusted.
6344         (any_live_thread_of_process): Delete, replaced by ...
6345         (any_live_thread_of_inferior): ... this new function.  All callers
6346         adjusted.
6347         (switch_to_thread, switch_to_no_thread): Declare.
6348         (is_executing): Delete.
6349         (enable_thread_stack_temporaries): Update comment.
6350         <enable_thread_stack_temporaries>: Take a thread_info pointer
6351         instead of a ptid_t.  Incref the thread.
6352         <~enable_thread_stack_temporaries>: Decref the thread.
6353         <m_ptid>: Delete
6354         <m_thr>: New.
6355         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6356         (get_last_thread_stack_temporary)
6357         (value_in_thread_stack_temporaries, can_access_registers_thread):
6358         Take a thread_info pointer instead of a ptid_t.  All callers
6359         adjusted.
6360         * infcall.c (get_call_return_value): Use inferior_thread.
6361         (run_inferior_call): Work with thread pointers instead of ptid_t.
6362         (call_function_by_hand_dummy): Work with thread pointers instead
6363         of ptid_t.  Use thread_info_ref.
6364         * infcmd.c (proceed_thread_callback): Access thread's state
6365         directly.
6366         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6367         access thread's state directly.
6368         (continue_command): Use inferior_thread.
6369         (info_program_command): Use find_thread_ptid and access thread
6370         state directly.
6371         (proceed_after_attach_callback): Use thread state directly.
6372         (notice_new_inferior): Take a thread_info pointer instead of a
6373         ptid_t.  All callers adjusted.
6374         (exit_inferior): Take an inferior pointer instead of a pid.  All
6375         callers adjusted.
6376         (exit_inferior_silent): New.
6377         (detach_inferior): Delete.
6378         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6379         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6380         (detach_inferior_command, kill_inferior_command): Use
6381         find_inferior_id instead of valid_gdb_inferior_id and
6382         gdb_inferior_id_to_pid.
6383         (inferior_command): Use inferior and thread pointers.
6384         * inferior.h (struct thread_info): Forward declare.
6385         (notice_new_inferior): Take a thread_info pointer instead of a
6386         ptid_t.  All callers adjusted.
6387         (detach_inferior): Delete declaration.
6388         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6389         instead of a pid.  All callers adjusted.
6390         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6391         (valid_gdb_inferior_id): Delete.
6392         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6393         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6394         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6395         ...
6396         <inf>: ... this new field.
6397         <step_ptid>: Delete, replaced by ...
6398         <step_thread>: ... this new field.
6399         (get_displaced_stepping_state): Take an inferior pointer instead
6400         of a pid.  All callers adjusted.
6401         (displaced_step_in_progress_any_inferior): Adjust.
6402         (displaced_step_in_progress_thread): Take a thread pointer instead
6403         of a ptid_t.  All callers adjusted.
6404         (displaced_step_in_progress, add_displaced_stepping_state): Take
6405         an inferior pointer instead of a pid.  All callers adjusted.
6406         (get_displaced_step_closure_by_addr): Adjust.
6407         (remove_displaced_stepping_state): Take an inferior pointer
6408         instead of a pid.  All callers adjusted.
6409         (displaced_step_prepare_throw, displaced_step_prepare)
6410         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6411         All callers adjusted.
6412         (start_step_over): Adjust.
6413         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6414         displaced step queue.
6415         (do_target_resume): Adjust.
6416         (fetch_inferior_event): Use inferior_thread.
6417         (context_switch, get_inferior_stop_soon): Take an
6418         execution_control_state pointer instead of a ptid_t.  All callers
6419         adjusted.
6420         (switch_to_thread_cleanup): Delete.
6421         (stop_all_threads): Use scoped_restore_current_thread.
6422         * inline-frame.c: Include "gdbthread.h".
6423         (inline_state) <inline_state>: Take a thread pointer instead of a
6424         ptid_t.  All callers adjusted.
6425         <ptid>: Delete, replaced by ...
6426         <thread>: ... this new field.
6427         (find_inline_frame_state): Take a thread pointer instead of a
6428         ptid_t.  All callers adjusted.
6429         (skip_inline_frames, step_into_inline_frame)
6430         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6431         pointer instead of a ptid_t.  All callers adjusted.
6432         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6433         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6434         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6435         pointers directly.
6436         * linux-nat.c (get_detach_signal): Likewise.
6437         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6438         (thread_db_notice_clone): Adjust.
6439         (thread_db_find_new_threads_silently)
6440         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6441         a thread pointer instead of a ptid_t.  All callers adjusted.
6442         * mi/mi-cmd-var.c: Include "inferior.h".
6443         (mi_cmd_var_update_iter): Update to use thread pointers.
6444         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6445         inferior directly.
6446         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6447         out to ...
6448         (mi_output_running): ... this new function.
6449         (mi_on_resume_1): Adjust to use it.
6450         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6451         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6452         directly.
6453         (interrupt_thread_callback): : Adjust to use thread and inferior
6454         pointers.
6455         * proc-service.c: Include "gdbthread.h".
6456         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6457         * progspace-and-thread.c: Include "inferior.h".
6458         * progspace.c: Include "inferior.h".
6459         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6460         hold a reference to an inferior_object.
6461         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6462         inferior_thread.
6463         * python/py-inferior.c (struct inferior_object): Give the type a
6464         tag name instead of a typedef.
6465         (python_on_normal_stop): No need to check if the current thread is
6466         listed.
6467         (inferior_to_inferior_object): Change return type to
6468         inferior_object.  All callers adjusted.
6469         (find_thread_object): Delete, bits factored out to ...
6470         (thread_to_thread_object): ... this new function.
6471         * python/py-infthread.c (create_thread_object): Use
6472         inferior_to_inferior_object.
6473         (thpy_is_stopped): Use thread pointer directly.
6474         (gdbpy_selected_thread): Use inferior_thread.
6475         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6476         field, replaced with ...
6477         <thread>: ... this new field.  All users adjusted.
6478         (btpy_insn_or_gap_new): Drop const.
6479         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6480         callers adjusted.
6481         * python/py-record.c: Include "gdbthread.h".
6482         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6483         a ptid_t.  All callers adjusted.
6484         (gdbpy_current_recording): Use inferior_thread.
6485         * python/py-record.h (recpy_record_object) <ptid>: Delete
6486         field, replaced with ...
6487         <thread>: ... this new field.  All users adjusted.
6488         (recpy_element_object) <ptid>: Delete
6489         field, replaced with ...
6490         <thread>: ... this new field.  All users adjusted.
6491         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6492         a ptid_t.  All callers adjusted.
6493         * python/py-threadevent.c: Include "gdbthread.h".
6494         (get_event_thread): Use thread_to_thread_object.
6495         * python/python-internal.h (struct inferior_object): Forward
6496         declare.
6497         (find_thread_object, find_inferior_object): Delete declarations.
6498         (thread_to_thread_object, inferior_to_inferior_object): New
6499         declarations.
6500         * record-btrace.c: Include "inferior.h".
6501         (require_btrace_thread): Use inferior_thread.
6502         (record_btrace_frame_sniffer)
6503         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6504         (get_thread_current_frame): Use scoped_restore_current_thread and
6505         switch_to_thread.
6506         (get_thread_current_frame): Use thread pointer directly.
6507         (record_btrace_replay_at_breakpoint): Use thread's inferior
6508         pointer directly.
6509         * record-full.c: Include "inferior.h".
6510         * regcache.c: Include "gdbthread.h".
6511         (get_thread_arch_regcache): Use the inferior's address space
6512         directly.
6513         (get_thread_regcache, registers_changed_thread): New.
6514         * regcache.h (get_thread_regcache(thread_info *thread)): New
6515         overload.
6516         (registers_changed_thread): New.
6517         (remote_target) <remote_detach_1>: Swap order of parameters.
6518         (remote_add_thread): <remote_add_thread>: Return the new thread.
6519         (get_remote_thread_info(ptid_t)): New overload.
6520         (remote_target::remote_notice_new_inferior): Use thread pointers
6521         directly.
6522         (remote_target::process_initial_stop_replies): Use
6523         thread_info::set_running.
6524         (remote_target::remote_detach_1, remote_target::detach)
6525         (extended_remote_target::detach): Adjust.
6526         * stack.c (frame_show_address): Use inferior_thread.
6527         * target-debug.h (target_debug_print_thread_info_pp): New.
6528         * target-delegates.c: Regenerate.
6529         * target.c (default_thread_address_space): Delete.
6530         (memory_xfer_partial_1): Use current_inferior.
6531         (target_detach): Use current_inferior.
6532         (target_thread_address_space): Delete.
6533         (generic_mourn_inferior): Use current_inferior.
6534         * target.h (struct target_ops) <thread_address_space>: Delete.
6535         (target_thread_address_space): Delete.
6536         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6537         pointers directly.
6538         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6539         thread pointer instead of a ptid_t.  Adjust all callers.
6540         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6541         (first_thread_of_process): Delete, replaced by ...
6542         (first_thread_of_inferior): ... this new function.  All callers
6543         adjusted.
6544         (any_thread_of_process): Rename to ...
6545         (any_thread_of_inferior): ... this, and take an inferior pointer.
6546         (any_live_thread_of_process): Rename to ...
6547         (any_live_thread_of_inferior): ... this, and take an inferior
6548         pointer.
6549         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6550         (value_in_thread_stack_temporaries)
6551         (get_last_thread_stack_temporary): Take a thread pointer instead
6552         of a ptid_t.  Adjust all callers.
6553         (thread_info::set_running): New.
6554         (validate_registers_access): Use inferior_thread.
6555         (can_access_registers_ptid): Rename to ...
6556         (can_access_registers_thread): ... this, and take a thread
6557         pointer.
6558         (print_thread_info_1): Adjust to compare thread pointers instead
6559         of ptids.
6560         (switch_to_no_thread, switch_to_thread): Make extern.
6561         (scoped_restore_current_thread::~scoped_restore_current_thread):
6562         Use m_thread pointer directly.
6563         (scoped_restore_current_thread::scoped_restore_current_thread):
6564         Use inferior_thread.
6565         (thread_command): Use thread pointer directly.
6566         (thread_num_make_value_helper): Use inferior_thread.
6567         * top.c (execute_command): Use inferior_thread.
6568         * tui/tui-interp.c: Include "inferior.h".
6569         * varobj.c (varobj_create): Use inferior_thread.
6570         (value_of_root_1): Use find_thread_global_id instead of
6571         global_thread_id_to_ptid.
6572
6573 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6574
6575         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6576         possible.
6577         (regcache::write_part): Likewise.
6578         (readable_regcache::cooked_read_part): Update comment.
6579         (readable_regcache::cooked_write_part): Likewise.
6580         * regcache.h: (readable_regcache::read_part): Likewise.
6581         (regcache::write_part): Likewise.
6582
6583 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6584             Dirk Schubert  <dirk.schubert@arm.com>
6585
6586         * aarch64-linux-nat.c (post_attach): New.
6587         (aarch64_linux_nat_target::post_attach): Override post_attach to
6588         record the number of hardware debug registers.
6589
6590 2018-06-20  Tom Tromey  <tom@tromey.com>
6591
6592         * python/py-param.c (add_setshow_generic): Make parameters const.
6593         (parmpy_init): Update.
6594
6595 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6596
6597         * regcache.h (regcache_cooked_read_ftype): Rename to...
6598         (register_read_ftype): ...this, change type to function_view.
6599         (class reg_buffer) <save>: Remove src parameter.
6600         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6601         parameter non-const in first overload.  Remove src parameter in
6602         second overload.
6603         * regcache.c (do_cooked_read): Remove.
6604         (readonly_detached_regcache::readonly_detached_regcache): Make
6605         parameter non-const, adjust call to other constructor.
6606         (reg_buffer::save): Remove src parameter.
6607         * frame.c (do_frame_register_read): Remove.
6608         (frame_save_as_regcache): Use lambda function.
6609         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6610         parameter to ppu2spu_data *.
6611         (ppu2spu_sniffer): Use lambda function.
6612
6613 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6614
6615         * record-full.c (record_full_target::insert_breakpoint): Remove
6616         "struct" keyword, add const.
6617
6618 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6619
6620         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6621         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6622         * configure.ac: Remove AC_PREREQ, add missing quoting.
6623         * gnulib/configure.ac: Modernize usage of
6624         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6625         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6626         (AUTOMAKE_VERSION): Bump to 1.15.1.
6627         * configure: Re-generate.
6628         * config.in: Re-generate.
6629         * aclocal.m4: Re-generate.
6630         * gnulib/aclocal.m4: Re-generate.
6631         * gnulib/config.in: Re-generate.
6632         * gnulib/configure: Re-generate.
6633         * gnulib/import/Makefile.in: Re-generate.
6634
6635 2018-06-19  Pedro Alves  <palves@redhat.com>
6636
6637         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6638         (lookup_minimal_symbol_by_pc_section): ... here with
6639         gdb_assert_not_reached added.
6640
6641 2018-06-19  Pedro Alves  <palves@redhat.com>
6642
6643         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6644         parameter with a block parameter.  Compare location's block symbol
6645         with the frame's block instead of addresses.
6646         (skip_inline_frames): Pass the current block instead of the
6647         frame's address.  Break out as soon as we determine the frame
6648         should not be skipped.
6649
6650 2018-06-18  Tom Tromey  <tom@tromey.com>
6651
6652         * solib-aix.c (solib_aix_get_section_offsets): Return
6653         unique_xmalloc_ptr.
6654         (solib_aix_solib_create_inferior_hook): Update.
6655
6656 2018-06-18  Tom Tromey  <tom@tromey.com>
6657
6658         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6659
6660 2018-06-18  Tom Tromey  <tom@tromey.com>
6661
6662         * solib-frv.c (frv_relocate_main_executable): Use
6663         unique_xmalloc_ptr.
6664         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6665         unique_xmalloc_ptr.
6666
6667 2018-06-18  Tom Tromey  <tom@tromey.com>
6668
6669         * objfiles.h (inhibit_section_map_updates): Update.
6670         (resume_section_map_updates, resume_section_map_updates_cleanup):
6671         Remove.
6672         * solib-svr4.c (svr4_handle_solib_event): Update.
6673         * objfiles.c (inhibit_section_map_updates): Return
6674         scoped_restore_tmpl<int>.
6675         (resume_section_map_updates, resume_section_map_updates_cleanup):
6676         Remove.
6677
6678 2018-06-18  Tom Tromey  <tom@tromey.com>
6679
6680         * valprint.h (read_string): Update.
6681         * valprint.c (read_string): Change type of "buffer".
6682         (val_print_string): Update.
6683         * python/py-value.c (valpy_string): Update.
6684         * language.h (struct language_defn) <la_get_string>: Change
6685         type of "buffer".
6686         (default_get_string, c_get_string): Update.
6687         * language.c (default_get_string): Change type of "buffer".
6688         * guile/scm-value.c (gdbscm_value_to_string): Update.
6689         * c-lang.c (c_get_string): Change type of "buffer".
6690
6691 2018-06-18  Tom Tromey  <tom@tromey.com>
6692
6693         * ser-mingw.c (struct pipe_state_destroyer): New.
6694         (pipe_state_up): New typedef.
6695         (cleanup_pipe_state): Remove.
6696         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6697
6698 2018-06-18  Tom Tromey  <tom@tromey.com>
6699
6700         * rust-lang.h (rust_yyerror): Don't declare.
6701         * rust-lang.c (rust_language_defn): Update.
6702         * rust-exp.y (yyerror): Now static.
6703         * parse.c (parse_exp_in_context_1): Update.
6704         * p-lang.h (p_yyerror): Don't declare.
6705         * p-lang.c (p_language_defn): Update.
6706         * p-exp.y (yyerror): Now static.
6707         * opencl-lang.c (opencl_language_defn): Update.
6708         * objc-lang.c (objc_language_defn): Update.
6709         * m2-lang.h (m2_yyerror): Don't declare.
6710         * m2-lang.c (m2_language_defn): Update.
6711         * m2-exp.y (yyerror): Now static.
6712         * language.h (struct language_defn) <la_error>: Remove.
6713         * language.c (unk_lang_error): Remove.
6714         (unknown_language_defn, auto_language_defn): Remove.
6715         * go-lang.h (go_yyerror): Don't declare.
6716         * go-lang.c (go_language_defn): Update.
6717         * go-exp.y (yyerror): Now static.
6718         * f-lang.h (f_yyerror): Don't declare.
6719         * f-lang.c (f_language_defn): Update.
6720         * f-exp.y (yyerror): Now static.
6721         * d-lang.h (d_yyerror): Don't declare.
6722         * d-lang.c (d_language_defn): Update.
6723         * d-exp.y (yyerror): Now static.
6724         * c-lang.h (c_yyerror): Don't declare.
6725         * c-lang.c (c_language_defn, cplus_language_defn)
6726         (asm_language_defn, minimal_language_defn): Update.
6727         * c-exp.y (yyerror): Now static.
6728         * ada-lang.h (ada_yyerror): Don't declare.
6729         * ada-lang.c (ada_language_defn): Update.
6730         * ada-exp.y (yyerror): Now static.
6731
6732 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6733
6734         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6735         (store_sveregs_to_thread): Likewise.
6736         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6737         (aarch64_linux_store_inferior_registers): Likewise.
6738         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6739         function.
6740         (aarch64_sve_regs_copy_to_regcache): Likewise.
6741         (aarch64_sve_regs_copy_from_regcache): Likewise.
6742         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6743         declaration.
6744         (aarch64_sve_regs_copy_to_regcache): Likewise.
6745         (aarch64_sve_regs_copy_from_regcache): Likewise.
6746         (sve_context): Structure from Linux headers.
6747         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6748         (SVE_SIG_ZREG_SIZE): Likewise.
6749         (SVE_SIG_PREG_SIZE): Likewise.
6750         (SVE_SIG_FFR_SIZE): Likewise.
6751         (SVE_SIG_REGS_OFFSET): Likewise.
6752         (SVE_SIG_ZREGS_OFFSET): Likewise.
6753         (SVE_SIG_ZREG_OFFSET): Likewise.
6754         (SVE_SIG_ZREGS_SIZE): Likewise.
6755         (SVE_SIG_PREGS_OFFSET): Likewise.
6756         (SVE_SIG_PREG_OFFSET): Likewise.
6757         (SVE_SIG_PREGS_SIZE): Likewise.
6758         (SVE_SIG_FFR_OFFSET): Likewise.
6759         (SVE_SIG_REGS_SIZE): Likewise.
6760         (SVE_SIG_CONTEXT_SIZE): Likewise.
6761         (SVE_PT_REGS_MASK): Likewise.
6762         (SVE_PT_REGS_FPSIMD): Likewise.
6763         (SVE_PT_REGS_SVE): Likewise.
6764         (SVE_PT_VL_INHERIT): Likewise.
6765         (SVE_PT_VL_ONEXEC): Likewise.
6766         (SVE_PT_REGS_OFFSET): Likewise.
6767         (SVE_PT_FPSIMD_OFFSET): Likewise.
6768         (SVE_PT_FPSIMD_SIZE): Likewise.
6769         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6770         (SVE_PT_SVE_PREG_SIZE): Likewise.
6771         (SVE_PT_SVE_FFR_SIZE): Likewise.
6772         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6773         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6774         (__SVE_SIG_TO_PT): Likewise.
6775         (SVE_PT_SVE_OFFSET): Likewise.
6776         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6777         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6778         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6779         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6780         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6781         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6782         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6783         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6784         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6785         (SVE_PT_SVE_SIZE): Likewise.
6786         (SVE_PT_SIZE): Likewise.
6787         (HAS_SVE_STATE): New define.
6788
6789 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6790
6791         * nat/aarch64-sve-linux-sigcontext.h: New file.
6792         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6793         new files.
6794         (SVE_VQ_MIN): Likewise.
6795         (SVE_VQ_MAX): Likewise.
6796         (SVE_VL_MIN): Likewise.
6797         (SVE_VL_MAX): Likewise.
6798         (SVE_NUM_ZREGS): Likewise.
6799         (SVE_NUM_PREGS): Likewise.
6800         (sve_vl_valid): Likewise.
6801         (struct user_sve_header): Likewise.
6802
6803 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6804             Richard Bunt <Richard.Bunt@arm.com>
6805
6806         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6807         was requested by GDB.
6808
6809 2018-06-15  Tom de Vries  <tdevries@suse.de>
6810
6811         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6812
6813 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6814
6815         * gnulib/update-gnulib.sh: Print expected versions of
6816         autoconf/aclocal.
6817
6818 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6819
6820         * arch-utils.c (default_type_align): Use type_length_units.
6821         * gdbtypes.c (type_align): Use type_length_units.
6822
6823 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6824
6825         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6826         of 'define' command.
6827
6828 2018-06-14  Tom de Vries  <tdevries@suse.de>
6829
6830         PR cli/22573
6831         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6832         get_no_prettyformat_print_options.
6833
6834 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6835
6836         * sparc-nat.h: Include target.h.
6837         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6838         <fetch_registers>: Remove this argument in function call.
6839         <store_registers>: Remove this argument in function call, remove
6840         extra semicolon.
6841         <low_forget_process>: Call sparc64_forget_process instead of
6842         sparc_forget_process.
6843
6844 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6845
6846         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6847         (procfs_target::make_corefile_notes): Adjust to new
6848         target_read_alloc return type.
6849
6850 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6851             Stephen Roberts  <stephen.roberts@arm.com>
6852
6853         PR gdb/22882
6854         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6855         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6856         Move should_notify_stop local into more inner scope.
6857
6858 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6859             Stephen Roberts  <stephen.roberts@arm.com>
6860
6861         PR gdb/22882
6862         * infrun.c (resume_1): Add call to mark_async_event_handler.
6863
6864 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6865
6866         * infrun.c (do_target_wait): Change old version of $pc printed.
6867
6868 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6869
6870         * dwarf2read.c (read_index_from_section): Rename to...
6871         (read_gdb_index_from_section): ... this, update all callers.
6872         (dwarf2_read_index): Rename to...
6873         (dwarf2_read_gdb_index): ... this, update all callers.
6874
6875 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6876
6877         * gdb/hppa-linux-nat.c
6878         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6879         hppa_linux_nat_target::fetch_registers.
6880
6881 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6882
6883         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6884         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6885         (AARCH64_DWARF_SVE_FFR): Likewise.
6886         (AARCH64_DWARF_SVE_P0): Likewise.
6887         (AARCH64_DWARF_SVE_Z0): Likewise.
6888
6889 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6890
6891         * common/common-regcache.h (raw_compare): New function.
6892         * regcache.c (regcache::raw_compare): Likewise.
6893         * regcache.h (regcache::raw_compare): New declaration.
6894
6895 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6896
6897         * common/common-regcache.h (reg_buffer_common): New structure.
6898         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6899         (reg_buffer::raw_supply): Likewise.
6900         (reg_buffer::raw_supply_integer): Likewise.
6901         (reg_buffer::raw_supply_zeroed): Likewise.
6902         (reg_buffer::raw_collect): Likewise.
6903         (reg_buffer::raw_collect_integer): Likewise.
6904         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6905         (reg_buffer::raw_supply): Likewise.
6906         (reg_buffer::raw_supply_integer): Likewise.
6907         (reg_buffer::raw_supply_zeroed): Likewise.
6908         (reg_buffer::raw_collect): Likewise.
6909         (reg_buffer::raw_collect_integer): Likewise.
6910
6911 2018-06-10  Tom Tromey  <tom@tromey.com>
6912
6913         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6914         (class remote_state) <stop_reply_queue>: Now std::vector.
6915         (remote_state::~remote_state)
6916         (remote_target::stop_reply_queue_length): Update.
6917         (struct queue_iter_param, remove_child_of_pending_fork)
6918         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6919         (check_pending_event_prevents_wildcard_vcont_callback)
6920         (remove_stop_reply_for_inferior)
6921         (remove_stop_reply_of_remote_state)
6922         (remote_notif_remove_once_on_match)
6923         (stop_reply_match_ptid_and_ws)
6924         (remote_kill_child_of_pending_fork): Remove.
6925         (remote_target::remove_new_fork_children)
6926         (remote_target::check_pending_events_prevent_wildcard_vcont)
6927         (remote_target::discard_pending_stop_replies)
6928         (remote_target::discard_pending_stop_replies_in_queue)
6929         (remote_target::remote_notif_remove_queued_reply)
6930         (remote_target::queued_stop_reply)
6931         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6932         (remote_target::wait, remote_target::kill_new_fork_children)
6933         (remote_target::async): Update.
6934
6935 2018-06-10  Tom Tromey  <tom@tromey.com>
6936
6937         * record-full.c (record_full_arch_list_cleanups): Remove.
6938         (record_full_message): Use try/catch.
6939         (record_full_wait_cleanups): Remove.
6940         (record_full_wait_1): Use try/catch.
6941         (record_full_restore): Likewise.
6942
6943 2018-06-10  Tom Tromey  <tom@tromey.com>
6944
6945         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6946         declare VEC.  Add constructor.
6947         <in_target_beneath>: Now bool.
6948         (record_full_breakpoints): Now a std::vector, static.
6949         (record_full_sync_record_breakpoints)
6950         (record_full_init_record_breakpoints)
6951         (record_full_target::insert_breakpoint)
6952         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6953
6954 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6955
6956         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6957         * serial.c (serial_interface_lookup): Remove struct keyword.
6958
6959 2018-06-10  Tom Tromey  <tom@tromey.com>
6960
6961         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6962         method.
6963         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6964         a method.
6965         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6966         method.
6967         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6968         "beneath" as a method.
6969         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6970         Use "beneath" as a method.
6971
6972 2018-06-10  Tom Tromey  <tom@tromey.com>
6973
6974         * tracefile.c (struct trace_file_writer_deleter): New.
6975         <operator()>: Rename from trace_file_writer_xfree.
6976         (trace_file_writer_up): New typedef.
6977         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6978
6979 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6980
6981         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6982         <m_registers, m_register_status>: Change type to
6983         std::unique_ptr.
6984         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6985         XCNEWVEC.
6986
6987 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6988
6989         * common/common-regcache.h (enum register_status): Add
6990         underlying type "signed char".
6991         * regcache.h (reg_buffer) <m_register_status>: Change type to
6992         register_status *.
6993         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6994         register_status instead of signed char.
6995         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6996         (reg_buffer::get_register_status): Remove cast.
6997         (readable_regcache::raw_read): Remove cast.
6998         (readable_regcache::cooked_read): Remove cast.
6999
7000 2018-06-09  Tom Tromey  <tom@tromey.com>
7001
7002         * source.c (reverse_search_command, forward_search_command): Use
7003         scoped_fd.
7004
7005 2018-06-09  Tom Tromey  <tom@tromey.com>
7006
7007         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7008         (serial_ops_list): Now static, std::vector.
7009         (serial_interface_lookup, serial_add_interface): Update.
7010
7011 2018-06-09  Tom Tromey  <tom@tromey.com>
7012
7013         * dwarf2read.c (process_cu_includes): Update.
7014         (process_full_comp_unit): Update.
7015         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7016         std::vector.
7017
7018 2018-06-08  Paul Koning  <paul_koning@dell.com>
7019
7020         PR gdb/23252
7021
7022         * python/python.c (do_start_initialization):
7023         Avoid call to internal Python API.
7024         (init__gdb_module): New function.
7025
7026 2018-06-08  Gary Benson <gbenson@redhat.com>
7027
7028         * linux-thread-db.c (valprint.h): New include.
7029         (struct check_thread_db_info): New structure.
7030         (check_thread_db_on_load, tdb_testinfo): New static globals.
7031         (check_thread_db, check_thread_db_callback): New functions.
7032         (try_thread_db_load_1): Run integrity checks if requested.
7033         (maintenance_check_libthread_db): New function.
7034         (_initialize_thread_db): Register "maint check libthread-db"
7035         and "maint set/show check-libthread-db".
7036         * NEWS: Mention the above new commands.
7037
7038 2018-06-08  Tom Tromey  <tom@tromey.com>
7039
7040         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7041         now a method.
7042
7043 2018-06-08  Tom Tromey  <tom@tromey.com>
7044
7045         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7046
7047 2018-06-08  Tom Tromey  <tom@tromey.com>
7048
7049         * common/btrace-common.h (struct btrace_data): Add constructor,
7050         destructor, move assignment operator.
7051         <empty, clear, fini>: New methods.
7052         <format>: Initialize.
7053         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7054         (btrace_data_empty): Don't declare.
7055         * common/btrace-common.c (btrace_data_init): Remove.
7056         (btrace_data::fini): Rename from btrace_data_fini.
7057         (btrace_data::empty): Rename from btrace_data_empty.
7058         (btrace_data::clear): Rename from btrace_data_clear.  Return
7059         bool.
7060         * btrace.h (make_cleanup_btrace_data): Don't declare.
7061         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7062         (parse_xml_btrace): Update.
7063         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7064         (maint_btrace_clear_packet_history_cmd): Update.
7065
7066 2018-06-07  Pedro Alves  <palves@redhat.com>
7067
7068         * target.h (target_ops) <beneath>: Now a method.  All references
7069         updated.
7070         (class target_stack): New.
7071         * target.c (g_target_stack): New.
7072         (g_current_top_target): Delete.
7073         (current_top_target): Get the top target out of g_target_stack.
7074         (target_stack::push, target_stack::unpush): New.
7075         (push_target, unpush_target): Reimplement.
7076         (target_is_pushed): Reimplement in terms of g_target_stack.
7077         (target_ops::beneath, target_stack::find_beneath): New.
7078
7079 2018-06-07  Pedro Alves  <palves@redhat.com>
7080
7081         * target.h (find_target_beneath): Delete declaration.
7082         * target.c (find_target_beneath): Delete definition.
7083         * aix-thread.c: All callers of find_target_beneath adjusted to
7084         call target_ops::beneath instead.
7085         * bsd-uthread.c: Likewise.
7086         * linux-thread-db.c: Likewise.
7087         * ravenscar-thread.c: Likewise.
7088         * sol-thread.c: Likewise.
7089         * spu-multiarch.c: Likewise.
7090
7091 2018-06-07  Pedro Alves  <palves@redhat.com>
7092
7093         * target.h (target_ops) <beneath>: Now a method.  All references
7094         updated.
7095         (target_ops) <m_beneath>: New.
7096         * target.c (target_ops::beneath): New.
7097         * corelow.c: Adjust all references to target_ops::beneath.
7098         * linux-thread-db.c: Likewise.
7099         * make-target-delegates: Likewise.
7100         * record-btrace.c: Likewise.
7101         * record-full.c: Likewise.
7102         * remote.c: Likewise.
7103         * target.c: Likewise.
7104         * target-delegates.c: Regenerate.
7105
7106 2018-06-07  Pedro Alves  <palves@redhat.com>
7107
7108         * target.h (target_stack): Delete.
7109         (current_top_target): Declare function.
7110         * target.c (target_stack): Delete.
7111         (g_current_top_target): New.
7112         (current_top_target): New function.
7113         * auxv.c: Use current_top_target instead of target_stack
7114         throughout.
7115         * avr-tdep.c: Likewise.
7116         * breakpoint.c: Likewise.
7117         * corefile.c: Likewise.
7118         * elfread.c: Likewise.
7119         * eval.c: Likewise.
7120         * exceptions.c: Likewise.
7121         * frame.c: Likewise.
7122         * gdbarch-selftests.c: Likewise.
7123         * gnu-v3-abi.c: Likewise.
7124         * ia64-tdep.c: Likewise.
7125         * ia64-vms-tdep.c: Likewise.
7126         * infcall.c: Likewise.
7127         * infcmd.c: Likewise.
7128         * infrun.c: Likewise.
7129         * linespec.c: Likewise.
7130         * linux-tdep.c: Likewise.
7131         * minsyms.c: Likewise.
7132         * ppc-linux-nat.c: Likewise.
7133         * ppc-linux-tdep.c: Likewise.
7134         * procfs.c: Likewise.
7135         * regcache.c: Likewise.
7136         * remote.c: Likewise.
7137         * rs6000-tdep.c: Likewise.
7138         * s390-linux-nat.c: Likewise.
7139         * s390-tdep.c: Likewise.
7140         * solib-aix.c: Likewise.
7141         * solib-darwin.c: Likewise.
7142         * solib-dsbt.c: Likewise.
7143         * solib-spu.c: Likewise.
7144         * solib-svr4.c: Likewise.
7145         * solib-target.c: Likewise.
7146         * sparc-tdep.c: Likewise.
7147         * sparc64-tdep.c: Likewise.
7148         * spu-tdep.c: Likewise.
7149         * symfile.c: Likewise.
7150         * symtab.c: Likewise.
7151         * target-descriptions.c: Likewise.
7152         * target-memory.c: Likewise.
7153         * target.c: Likewise.
7154         * target.h: Likewise.
7155         * tracefile-tfile.c: Likewise.
7156         * tracepoint.c: Likewise.
7157         * valops.c: Likewise.
7158         * valprint.c: Likewise.
7159         * value.c: Likewise.
7160         * windows-tdep.c: Likewise.
7161         * mi/mi-main.c: Likewise.
7162
7163 2018-06-07  Tom Tromey  <tom@tromey.com>
7164
7165         * valprint.h (build_address_symbolic): Declare.
7166         * printcmd.c (print_address_symbolic): Update.
7167         (build_address_symbolic): Change "name" and "filename" to
7168         std::string.
7169         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7170         Update.
7171         * defs.h (build_address_symbolic): Remove declaration.
7172
7173 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7174
7175         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7176         (aarch64_vnv_type): Add function.
7177         (aarch64_pseudo_register_name): Add V regs for SVE.
7178         (aarch64_pseudo_register_type): Likewise.
7179         (aarch64_pseudo_register_reggroup_p): Likewise.
7180         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7181         (aarch64_pseudo_read_value): Add V regs for SVE.
7182         (aarch64_pseudo_write_2): Use V0 offset for SVE
7183         (aarch64_pseudo_write): Add V regs for SVE.
7184         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7185
7186 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7187
7188         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7189         (sve_vl_from_vq): Likewise.
7190
7191 2018-06-05  Tom Tromey  <tom@tromey.com>
7192
7193         * cli/cli-cmds.c (show_version): Update.
7194         * top.c (print_gdb_version): Add "interactive" parameter.
7195         Update.
7196         * main.c (captured_main_1): Update.
7197         * top.h (print_gdb_version): Add "interactive" parameter and a
7198         comment.
7199
7200 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7201
7202         * common/enum-flags.h: Add trailing semicolon to example in
7203         comment.
7204
7205 2018-06-05  Tom Tromey  <tom@tromey.com>
7206
7207         PR cli/12326:
7208         * NEWS: Add entry about pager.
7209         * utils.c (pagination_disabled_for_command): New global.
7210         (prompt_for_continue): Allow "c" response to prompt.
7211         (reinitialize_more_filter): Clear
7212         pagination_disabled_for_command.
7213         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7214
7215 2018-06-04  Tom Tromey  <tom@tromey.com>
7216
7217         * ada-lang.h (ada_lookup_symbol_list): Update.
7218         * ada-lang.c (resolve_subexp): Update.
7219         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7220         parameter.
7221         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7222         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7223         results parameter to std::vector.
7224         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7225         Update.
7226         * ada-exp.y (block_lookup): Update.
7227         (select_possible_type_sym): Change type of syms.  Remove nsyms
7228         parameter.
7229         (write_var_or_type, write_name_assoc): Update.
7230
7231 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7232
7233         * windows-nat.c (windows_nat_target::xfer_partial): Return
7234         TARGET_XFER_E_IO if we need to delegate to the target beneath
7235         but BENEATH is NULL.
7236
7237 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7238
7239         * Makefile.in (config.status): Add configure.nat as a
7240         dependency.
7241
7242 2018-06-04  Tom Tromey  <tom@tromey.com>
7243
7244         * cp-name-parser.y (cpname_state): Add method declarations.
7245         (HANDLE_QUAL): Update.
7246         (cpname_state::d_grab, cpname_state::fill_comp)
7247         (cpname_state::make_operator, cpname_state::make_dtor)
7248         (cpname_state::make_builtin_type, cpname_state::make_name)
7249         (cpname_state::d_qualify, cpname_state::d_int_type)
7250         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7251         (%union): Move earlier.
7252
7253 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7254
7255         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7256
7257 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7258
7259         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7260         (aarch64_pseudo_write_1): Likewise.
7261         (aarch64_pseudo_read_value): Use helper.
7262         (aarch64_pseudo_write): Likewise.
7263
7264 2018-06-04  Pedro Alves  <palves@redhat.com>
7265
7266         * darwin-nat.c (darwin_ops): Delete.
7267         (darwin_attach_pid): Use get_native_target.
7268
7269 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7270
7271         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7272         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7273
7274 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7275
7276         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7277         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7278         (aarch64_gdbarch_init): Check for SVE.
7279         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7280
7281 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7282
7283         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7284         * aarch64-tdep.h (aarch64_read_description): Likewise.
7285         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7286         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7287         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7288         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7289         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7290
7291 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7292
7293         * value.c (value_fetch_lazy_bitfield): New.
7294         (value_fetch_lazy_memory): New.
7295         (value_fetch_lazy_register): New.
7296         (value_fetch_lazy): Factor out to smaller functions.
7297
7298 2018-06-01  Tom Tromey  <tom@tromey.com>
7299
7300         * cp-name-parser.y (backslashable, represented): Now const.
7301
7302 2018-06-01  Tom Tromey  <tom@tromey.com>
7303
7304         * cp-name-parser.y: Include parser-defs.h.
7305         (parser_fprintf): Remove declaration.
7306
7307 2018-06-01  Tom Tromey  <tom@tromey.com>
7308
7309         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7310         %parse-param.
7311         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7312         (global_result): Remove globals.
7313         (struct cpname_state): New.
7314         (yyparse): Don't declare.
7315         (yylex, yyerror): Move declarations after %union.
7316         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7317         (make_name): Add state parameter.
7318         Update all callers.
7319         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7320         parameter.
7321         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7322         Update.
7323         (yylex): Add lvalp, state parameters.
7324         (yyerror): Add state parameter.
7325         (cp_demangled_name_to_comp): Update.
7326
7327 2018-06-01  Tom Tromey  <tom@tromey.com>
7328
7329         * cp-name-parser.y (parser_fprintf): Declare.
7330         (GDB_YY_REMAP_PREFIX): Define.
7331         Include yy-remap.h.  Don't redefine yy* identifiers.
7332
7333 2018-06-01  Tom Tromey  <tom@tromey.com>
7334
7335         * python/py-type.c (typy_legacy_template_argument): Update.
7336         * cp-support.h (cp_demangled_name_to_comp): Update.
7337         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7338         parameter to be a "std::string *".
7339         (main): Update.
7340
7341 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7342
7343         * ada-lex.l: Include "diagnostics.h" instead of
7344         "common/diagnostics.h".
7345         * unittests/environ-selftests.c: Likewise.
7346         * common/diagnostics.h: Moved to ../include.
7347
7348 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7349
7350         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7351         to language_mode_manual while calling breakpoint_re_set_one.
7352
7353 2018-06-01  Tom Tromey  <tom@tromey.com>
7354
7355         * valops.c (value_cast_structs, destructor_name_p): Update.
7356         * symtab.c (gdb_mangle_name): Update.
7357         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7358         Update.
7359         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7360         (pascal_object_print_value_fields, pascal_object_print_value):
7361         Update.
7362         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7363         * linespec.c (find_methods): Update.
7364         * gdbtypes.h (type_name_no_tag): Remove.
7365         (type_name_or_error): Rename from type_name_no_tag_or_error.
7366         * gdbtypes.c (type_name_no_tag): Remove.
7367         (type_name_or_error): Rename from type_name_no_tag_or_error.
7368         (lookup_struct_elt_type, check_typedef): Update.
7369         * expprint.c (print_subexp_standard): Update.
7370         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7371         * d-namespace.c (d_lookup_nested_symbol): Update.
7372         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7373         (cp_print_class_member): Update.
7374         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7375         * completer.c (add_struct_fields): Update.
7376         * c-typeprint.c (cp_type_print_derivation_info)
7377         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7378         Update.
7379         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7380         (ada_prefer_type, ada_is_exception_sym): Update.
7381
7382 2018-06-01  Tom Tromey  <tom@tromey.com>
7383
7384         * valops.c (enum_constant_from_type, value_namespace_elt)
7385         (value_maybe_namespace_elt): Update.
7386         * valarith.c (find_size_for_pointer_math): Update.
7387         * target-descriptions.c (make_gdb_type): Update.
7388         * symmisc.c (print_symbol): Update.
7389         * stabsread.c (define_symbol, read_type)
7390         (complain_about_struct_wipeout, add_undefined_type)
7391         (cleanup_undefined_types_1): Update.
7392         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7393         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7394         (rust_internal_print_type, rust_composite_type)
7395         (rust_evaluate_funcall, rust_evaluate_subexp)
7396         (rust_inclusive_range_type_p): Update.
7397         * python/py-type.c (typy_get_tag): Update.
7398         * p-typeprint.c (pascal_type_print_base): Update.
7399         * mdebugread.c (parse_symbol, parse_type): Update.
7400         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7401         Update.
7402         * guile/scm-type.c (gdbscm_type_tag): Update.
7403         * go-lang.c (sixg_string_p): Update.
7404         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7405         Update.
7406         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7407         (TYPE_TAG_NAME): Remove.
7408         * gdbtypes.c (type_name_no_tag): Simplify.
7409         (check_typedef, check_types_equal, recursive_dump_type)
7410         (copy_type_recursive, arch_composite_type): Update.
7411         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7412         in summary mode when needed.
7413         * eval.c (evaluate_funcall): Update.
7414         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7415         (process_structure_scope, read_enumeration_type)
7416         (read_namespace_type, read_module_type, determine_prefix): Update.
7417         * cp-support.c (inspect_type): Update.
7418         * coffread.c (process_coff_symbol, decode_base_type): Update.
7419         * c-varobj.c (c_is_path_expr_parent): Update.
7420         * c-typeprint.c (c_type_print_base_struct_union): Update.
7421         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7422         summary when using C language.
7423         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7424         (gen_maybe_namespace_elt): Update.
7425         * ada-lang.c (ada_type_name): Simplify.
7426         (empty_record, ada_template_to_fixed_record_type_1)
7427         (template_to_static_fixed_type)
7428         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7429
7430 2018-06-01  Tom Tromey  <tom@tromey.com>
7431
7432         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7433         c_print_type.
7434         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7435         (c_print_type): Update.
7436         (c_print_type): New overload.
7437         (c_type_print_varspec_prefix, c_type_print_args)
7438         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7439         (c_type_print_base_struct_union, c_type_print_base_1)
7440         (cp_type_print_method_args): Add "language" parameter.
7441         (c_type_print_base): Update.
7442         * c-lang.h (c_print_type): Add new overload.
7443
7444 2018-06-01  Tom Tromey  <tom@tromey.com>
7445
7446         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7447         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7448
7449 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7450
7451         * aarch64-tdep.c (aarch64_sve_register_names): New const
7452         var.
7453         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7454         (AARCH64_SVE_Z_REGS_NUM): New define.
7455         (AARCH64_SVE_P_REGS_NUM): Likewise.
7456         (AARCH64_SVE_NUM_REGS): Likewise.
7457
7458 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7459
7460         * nat/linux-ptrace.h [__alpha__]
7461         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7462         definitions.
7463
7464 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7465
7466         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7467         the endianness selected.
7468         * NEWS: Document `set endian auto' mode operation update.
7469
7470 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7471
7472         * Makefile.in: Add new header.
7473         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7474         (sve_vl_from_vg): Likewise.
7475         (sve_vq_from_vl): Likewise.
7476         (sve_vl_from_vq): Likewise.
7477         (sve_vq_from_vg): Likewise.
7478         (sve_vg_from_vq): Likewise.
7479         * configure.nat: Add new c file.
7480         * nat/aarch64-sve-linux-ptrace.c: New file.
7481         * nat/aarch64-sve-linux-ptrace.h: New file.
7482
7483 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7484
7485         * aarch64-linux-nat.c (aarch64_linux_read_description):
7486         Add parmeter zero.
7487         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7488         Likewise.
7489         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7490         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7491         (aarch64_gdbarch_init): Add parmeter zero.
7492         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7493         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7494         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7495         parmeter.
7496         * doc/gdb.texinfo: Describe SVE feature
7497         * features/aarch64-sve.c: New file.
7498
7499 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7500
7501         PR gdb/23210
7502         * gdbarch.sh (significant_addr_bit): Default to zero when
7503         not set by target architecture.
7504         * gdbarch.c: Re-generated.
7505         * utils.c (address_significant): Update.
7506
7507 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7508
7509         * stack.c (func_command): Remove trailing newline in call to error.
7510
7511 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7512
7513         * regcache.h (regcache_raw_collect): Remove, update callers to
7514         use regcache::raw_collect.
7515         * regcache.c (regcache_raw_collect): Remove.
7516
7517 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7518
7519         * regcache.h (regcache_raw_supply): Remove, update callers to
7520         use detached_regcache::raw_supply.
7521         * regcache.c (regcache_raw_supply): Remove.
7522
7523 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7524
7525         * regcache.h (regcache_cooked_write_part): Remove, update
7526         callers to use regcache::cooked_write_part.
7527         * regcache.c (regcache_cooked_write_part): Remove.
7528
7529 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7530
7531         * regcache.h (regcache_cooked_read_part): Remove, update callers
7532         to use readable_regcache::cooked_read_part.
7533         * regcache.c (regcache_cooked_read_part): Remove.
7534
7535 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7536
7537         * regcache.h (regcache_cooked_read_value): Remove, update
7538         callers to use readable_regcache::cooked_read_value.
7539         * regcache.c (regcache_cooked_read_value): Remove.
7540
7541 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7542
7543         * regcache.h (regcache_cooked_write): Remove, update callers to
7544         use regcache::cooked_write.
7545         * regcache.c (regcache_cooked_write): Remove.
7546
7547 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7548
7549         * regcache.h (regcache_invalidate): Remove, update callers to
7550         use detached_regcache::invalidate instead.
7551         * regcache.c (regcache_invalidate): Remove.
7552
7553 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7554
7555         * regcache.h (regcache_raw_write_part): Remove, update callers
7556         to use regcache::raw_write_part instead.
7557         * regcache.c (regcache_raw_write_part): Remove.
7558
7559 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7560
7561         * regcache.h (regcache_raw_read_part): Remove, update callers to
7562         use readable_regcache::raw_read_part instead.
7563         * regcache.c (regcache_raw_read_part): Remove.
7564
7565 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7566
7567         * regcache.h (regcache_cooked_read): Remove, update callers to
7568         use readable_regcache::cooked_read instead.
7569         * regcache.c (regcache_cooked_read): Remove.
7570
7571 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7572
7573         * regcache.h (regcache_raw_write): Remove, update callers to use
7574         regcache::raw_write instead.
7575         * regcache.c (regcache_raw_write): Remove.
7576
7577 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7578
7579         * regcache.h (regcache_raw_read): Remove, update callers to use
7580         readable_regcache::raw_read instead.
7581         * regcache.c (regcache_raw_read): Remove.
7582
7583 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7584
7585         * regcache.h (regcache_raw_update): Remove, update callers to
7586         use readable_regcache::raw_update instead.
7587         * regcache.c (regcache_raw_update): Remove.
7588
7589 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7590
7591         * regcache.h (regcache_register_status): Remove, update callers
7592         to use reg_buffer::get_register_status directly instead.
7593         * regcache.c (regcache_register_status): Remove.
7594
7595 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7596
7597         * regcache.h (regcache_get_ptid): Remove, update all callers to
7598         call regcache::ptid instead.
7599         * regcache.c (regcache_get_ptid): Remove.
7600
7601 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7602
7603         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7604
7605 2018-05-30  Pedro Alves  <palves@redhat.com>
7606
7607         * common/common-exceptions.h (exception_rethrow): Use
7608         ATTRIBUTE_NORETURN.
7609
7610 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7611
7612         * breakpoint.c (print_solib_event, check_status_catch_solib):
7613         Remove struct keyword in range-based for loops.
7614         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7615         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7616         Likewise.
7617         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7618         Likewise.
7619         * symfile.c (addr_info_make_relative): Likewise.
7620         * thread.c (value_in_thread_stack_temporaries): Likewise.
7621
7622 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7623
7624         PR gdb/16841
7625         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7626         aggregate type to get its real type before accessing it.
7627
7628 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7629
7630         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7631         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7632         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7633         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7634         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7635         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7636         * printcmd.c (info_address_command): Likewise.
7637
7638 2018-05-29  Tom Tromey  <tom@tromey.com>
7639
7640         * windows-nat.c (handle_exception): Update fall-through comment.
7641
7642 2018-05-29  Tom Tromey  <tom@tromey.com>
7643
7644         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7645         (struct program_space) <added_solibs>: Now a std::vector.
7646         * breakpoint.c (print_solib_event): Update.
7647         (check_status_catch_solib): Update.
7648         * progspace.c (clear_program_space_solib_cache): Update.
7649         * solib.c (update_solib_list): Update.
7650
7651 2018-05-29  Tom Tromey  <tom@tromey.com>
7652
7653         * python/py-type.c (typy_richcompare): Update.
7654         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7655         * gdbtypes.h (types_deeply_equal): Return bool.
7656         (types_equal): Likewise.
7657         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7658         declare VEC.
7659         (check_types_equal): Change worklist to std::vector.  Return
7660         bool.
7661         (struct type_equality_entry): Add constructor.
7662         (compare_maybe_null_strings): Return bool.
7663         (check_types_worklist): Return bool.  Change worklist to
7664         std::vector.
7665         (types_deeply_equal): Use std::vector.
7666         (types_equal): Return bool.
7667         (compare_maybe_null_strings): Simplify.
7668
7669 2018-05-29  Tom Tromey  <tom@tromey.com>
7670
7671         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7672
7673 2018-05-29  Tom Tromey  <tom@tromey.com>
7674
7675         * objc-lang.h: Don't include cp-support.h.
7676         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7677         declare VEC.
7678
7679 2018-05-27  Tom Tromey  <tom@tromey.com>
7680
7681         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7682
7683 2018-05-25  Tom Tromey  <tom@tromey.com>
7684
7685         * value.c (value::location): Initialize.
7686
7687 2018-05-25  Tom Tromey  <tom@tromey.com>
7688
7689         * dbxread.c (init_bincl_list): Remove.
7690         (bincl_list): Now a std::vector.
7691         (bincls_allocated, next_bincl): Remove.
7692         (free_bincl_list, do_free_bincl_list_cleanup)
7693         (make_cleanup_free_bincl_list): Remove.
7694         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7695         unique_xmalloc_ptr.
7696         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7697         (struct header_file_location): Add constructor.
7698         (add_bincl_to_list): Remove.
7699
7700 2018-05-25  Tom Tromey  <tom@tromey.com>
7701
7702         * tui/tui.c (tui_enable): Update.
7703         * mi/mi-interp.c (mi_interp::init): Update.
7704         * interps.h (class interp) <name>: New method.
7705         <m_name>: Rename from name.
7706         (~scoped_restore_interp): Update.
7707         * interps.c (interp::interp): Update.
7708         (interp_add, interp_set, interp_lookup_existing)
7709         (current_interp_named_p): Update.
7710
7711 2018-05-25  Tom Tromey  <tom@tromey.com>
7712
7713         * interps.c (interp_name): Remove.
7714         * mi/mi-interp.c (mi_interp::init): Update.
7715         * interps.h (interp_name): Remove.
7716         (~scoped_restore_interp): Update.
7717         * tui/tui.c (tui_enable): Update.
7718
7719 2018-05-25  Tom Tromey  <tom@tromey.com>
7720
7721         * utils.c (fputs_maybe_filtered): Update.
7722         * linespec.c (decode_line_full): Update.
7723         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7724         (mi_print_breakpoint_for_event, mi_solib_loaded)
7725         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7726         (mi_user_selected_context_changed): Update.
7727         * mi/mi-main.c (mi_execute_command): Update.
7728         * cli/cli-script.c (execute_control_command): Update.
7729         * python/python.c (execute_gdb_command): Update.
7730         * solib.c (info_sharedlibrary_command): Update.
7731         * interps.c (interp_ui_out): Remove.
7732         * interps.h (interp_ui_out): Remove.
7733
7734 2018-05-25  Tom Tromey  <tom@tromey.com>
7735
7736         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7737         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7738         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7739
7740 2018-05-25  Tom Tromey  <tom@tromey.com>
7741
7742         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7743         * interps.c (interp_exec): Use scoped_restore.
7744
7745 2018-05-25  Tom Tromey  <tom@tromey.com>
7746
7747         * remote.c (remote_target::remote_file_get): Use
7748         gdb::byte_vector.
7749         (remote_target::remote_file_put): Likewise.
7750
7751 2018-05-25  Tom Tromey  <tom@tromey.com>
7752
7753         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7754         a std::string.
7755         (get_pe_section_index, add_pe_exported_sym): Update.
7756         (read_pe_exported_syms): Use gdb::def_vector.
7757
7758 2018-05-25  Tom Tromey  <tom@tromey.com>
7759
7760         * frame.c (remove_prev_frame): Remove.
7761         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7762
7763 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7764
7765         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7766         Remove prototypes.
7767         * mips-linux-nat.c (supply_fpregset): Always call
7768         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7769         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7770         `mips_fill_fpregset'.
7771         * mips-linux-tdep.c (mips_supply_fpregset)
7772         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7773         (mips_fill_fpregset_wrapper): Remove functions.
7774         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7775         (mips_linux_fpregset): Remove variable.
7776         (mips_linux_iterate_over_regset_sections): Use
7777         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7778         (mips_linux_o32_sigframe_init): Remove comment.
7779
7780 2018-05-25  Pedro Alves  <palves@redhat.com>
7781
7782         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7783         (struct readahead_cache, struct packet_reg, struct
7784         remote_arch_state, class remote_state): Move higher up in the
7785         file.
7786         (remote_target::m_remote_state): Now an object instead of a pointer.
7787         (remote_target::get_remote_state): Adjust.
7788
7789 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7790
7791         * stack.c (select_and_print_frame): Delete.
7792         (struct function_bounds): Move struct within function.
7793         (func_command): Most content moved into new function
7794         find_frame_for_function, use new function, print result, add
7795         function comment.
7796         (find_frame_for_function): New function, now returns a result.
7797
7798 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7799
7800         * stack.c (iterate_over_block_arg_vars): Fix comment.
7801         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7802
7803 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7804
7805         PR gdb/23203
7806         * frame.c
7807         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7808         Define.
7809         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7810         Define.
7811         * frame.h (class scoped_restore_selected_frame): New class.
7812         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7813         of any exception, use scoped_restore_selected_frame to restore the
7814         frame instead.
7815
7816 2018-05-24  Pedro Alves  <palves@redhat.com>
7817
7818         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7819         override.
7820
7821 2018-05-23  Tom Tromey  <tom@tromey.com>
7822
7823         * complaints.c (struct complaints): Remove.
7824         (symfile_complaint_book): Remove.
7825         (series): New global.
7826         (complaint_internal): Update.
7827         (clear_complaints): Update.
7828
7829 2018-05-23  Tom Tromey  <tom@tromey.com>
7830
7831         * complaints.c (counters): New global.
7832         (struct complain): Remove.
7833         (struct complaints) <root>: Remove.
7834         (complaint_sentinel): Remove.
7835         (symfile_complaint_book): Update.
7836         (find_complaint) Remove.
7837         (complaint_internal, clear_complaints): Update.
7838
7839 2018-05-23  Tom Tromey  <tom@tromey.com>
7840
7841         * complaints.c (struct complain) <file, line>: Remove.
7842         (find_complaint): Remove file, line parameters.
7843         (complaint_internal): Update.
7844
7845 2018-05-23  Tom Tromey  <tom@tromey.com>
7846
7847         * complaints.c (vcomplaint): Remove.
7848         (complaint_internal) Merge in contents of vcomplaint.
7849
7850 2018-05-23  Tom Tromey  <tom@tromey.com>
7851
7852         * complaints.c (struct complaints) <explanation>: Remove.
7853         (symfile_explanations): Remove.
7854         (symfile_complaint_book): Update.
7855         (vcomplaint): Update.
7856         (struct explanation): Remove.
7857
7858 2018-05-23  Tom Tromey  <tom@tromey.com>
7859
7860         * complaints.c (symfile_complaints): Remove.
7861         (complaint_internal): Remove "complaints" parameter.
7862         (clear_complaints, vcomplaint): Remove "c" parameter.
7863         (get_complaints): Remove.
7864         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7865         (dwarf2_debug_line_missing_file_complaint)
7866         (dwarf2_debug_line_missing_end_sequence_complaint)
7867         (dwarf2_complex_location_expr_complaint)
7868         (dwarf2_const_value_length_mismatch_complaint)
7869         (dwarf2_section_buffer_overflow_complaint)
7870         (dwarf2_macro_malformed_definition_complaint)
7871         (dwarf2_invalid_attrib_class_complaint)
7872         (create_addrmap_from_index, dw2_symtab_iter_next)
7873         (dw2_expand_marked_cus)
7874         (dw2_debug_names_iterator::find_vec_in_debug_names)
7875         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7876         (create_debug_type_hash_table, init_cutu_and_read_dies)
7877         (partial_die_parent_scope, add_partial_enumeration)
7878         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7879         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7880         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7881         (create_cus_hash_table, create_dwp_hash_table)
7882         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7883         (dwarf2_rnglists_process, dwarf2_ranges_process)
7884         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7885         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7886         (handle_struct_member_die, process_structure_scope)
7887         (read_array_type, read_common_block, read_module_type)
7888         (read_tag_pointer_type, read_typedef, read_base_type)
7889         (read_subrange_type, load_partial_dies, partial_die_info::read)
7890         (partial_die_info::read, partial_die_info::read)
7891         (partial_die_info::read, read_checked_initial_length_and_offset)
7892         (dwarf2_string_attr, read_formatted_entries)
7893         (dwarf_decode_line_header)
7894         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7895         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7896         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7897         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7898         (get_signatured_type, get_DW_AT_signature_type)
7899         (decode_locdesc, file_file_name, consume_improper_spaces)
7900         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7901         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7902         (dwarf2_symbol_mark_computed, set_die_type)
7903         (read_attribute_value): Update.
7904         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7905         Update.
7906         * dbxread.c (unknown_symtype_complaint)
7907         (lbrac_mismatch_complaint, repeated_header_complaint)
7908         (set_namestring, function_outside_compilation_unit_complaint)
7909         (read_dbx_symtab, process_one_symbol): Update.
7910         * gdbtypes.c (stub_noname_complaint): Update.
7911         * windows-nat.c (handle_unload_dll): Update.
7912         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7913         (decode_base_type): Update.
7914         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7915         (eb_complaint, record_include_begin, record_include_end)
7916         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7917         (process_xcoff_symbol, read_symbol)
7918         (function_outside_compilation_unit_complaint)
7919         (scan_xcoff_symtab): Update.
7920         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7921         * buildsym.c (finish_block_internal, make_blockvector)
7922         (end_symtab_get_static_block, augment_type_symtab): Update.
7923         * dtrace-probe.c (dtrace_process_dof)
7924         (dtrace_static_probe_ops::get_probes): Update.
7925         * complaints.h (struct complaint): Don't declare.
7926         (symfile_complaints): Remove.
7927         (complaint_internal): Remove "complaints" parameter.
7928         (complaint): Likewise.
7929         (clear_complaints): Likewise.
7930         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7931         (reread_symbols): Update.
7932         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7933         (dwarf2_frame_cache, decode_frame_entry): Update.
7934         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7935         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7936         (info_selectors_command): Update.
7937         * macrotab.c (macro_include, check_for_redefinition)
7938         (macro_undef): Update.
7939         * objfiles.c (filter_overlapping_sections): Update.
7940         * stabsread.c (invalid_cpp_abbrev_complaint)
7941         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7942         (define_symbol, error_type, read_type, rs6000_builtin_type)
7943         (stabs_method_name_from_physname, read_member_functions)
7944         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7945         (attach_fields_to_type, complain_about_struct_wipeout)
7946         (read_range_type, read_args, common_block_start)
7947         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7948         Update.
7949         * mdebugread.c (index_complaint, unknown_ext_complaint)
7950         (basic_type_complaint, bad_tag_guess_complaint)
7951         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7952         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7953         (parse_procedure, parse_lines)
7954         (function_outside_compilation_unit_complaint)
7955         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7956         (bad_tag_guess_complaint, reg_value_complaint): Update.
7957         * cp-support.c (demangled_name_complaint): Update.
7958         * macroscope.c (sal_macro_scope): Update.
7959         * dwarf-index-write.c (class debug_names): Update.
7960
7961 2018-05-23  Tom Tromey  <tom@tromey.com>
7962
7963         * complaints.c (clear_complaints): Remove "noisy" parameter.
7964         * complaints.h (clear_complaints): Update.
7965         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7966         (reread_symbols): Update.
7967
7968 2018-05-23  Tom Tromey  <tom@tromey.com>
7969
7970         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7971         SUBSEQUENT_MESSAGE.
7972         (vcomplaint, clear_complaints): Update.
7973         (symfile_explanations): Remove some messages.
7974
7975 2018-05-23  Tom Tromey  <tom@tromey.com>
7976
7977         * complaints.c (internal_complaint): Remove.
7978         * complaints.h (internal_complaint): Remove.
7979
7980 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7981
7982         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7983
7984 2018-05-22  Pedro Alves  <palves@redhat.com>
7985
7986         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7987         (remote_fileio_badfd, remote_fileio_return_errno)
7988         (remote_fileio_return_success, remote_fileio_func_open)
7989         (remote_fileio_func_open, remote_fileio_func_close)
7990         (remote_fileio_func_read, remote_fileio_func_write)
7991         (remote_fileio_func_lseek, remote_fileio_func_rename)
7992         (remote_fileio_func_unlink, remote_fileio_func_stat)
7993         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7994         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7995         remote_target parameter.
7996         (remote_fio_func_map) <func>: Add remote_target parameter.
7997         (do_remote_fileio_request, remote_fileio_request):
7998         * remote-fileio.h (remote_fileio_request):
7999         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8000         remote_target parameter.
8001         (remote_notif_process, handle_notification): Adjust to pass down
8002         the remote.
8003         (remote_notif_state_allocate): Add remote_target parameter.  Save
8004         it.
8005         * remote-notif.h (struct remote_target): Forward declare.
8006         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8007         remote_target parameter.
8008         (struct remote_notif_state) <remote>: New field.
8009         (remote_notif_ack, remote_notif_parse): Add remote_target
8010         parameter.
8011         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8012         remote_target parameter.
8013         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8014         (threads_listing_context, rmt_thread_action, protocol_feature)
8015         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8016         (packet_result, struct threads_listing_context, remote_state):
8017         Move definitions and declarations higher up.
8018         (remote_target) <~remote_target>: Declare.
8019         (remote_download_command_source, remote_file_put, remote_file_get)
8020         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8021         (remote_hostio_pread_vFile, remote_hostio_send_command)
8022         (remote_hostio_set_filesystem, remote_hostio_open)
8023         (remote_hostio_close, remote_hostio_unlink, remote_state)
8024         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8025         (get_memory_write_packet_size, get_memory_read_packet_size)
8026         (append_pending_thread_resumptions, remote_detach_1)
8027         (append_resumption, remote_resume_with_vcont)
8028         (add_current_inferior_and_thread, wait_ns, wait_as)
8029         (process_stop_reply, remote_notice_new_inferior)
8030         (process_initial_stop_replies, remote_add_thread)
8031         (btrace_sync_conf, remote_btrace_maybe_reopen)
8032         (remove_new_fork_children, kill_new_fork_children)
8033         (discard_pending_stop_replies, stop_reply_queue_length)
8034         (check_pending_events_prevent_wildcard_vcont)
8035         (discard_pending_stop_replies_in_queue, stop_reply)
8036         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8037         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8038         (remote_interrupt_as, remote_interrupt_ns)
8039         (remote_get_noisy_reply, remote_query_attached)
8040         (remote_add_inferior, remote_current_thread, get_current_thread)
8041         (set_thread, set_general_thread, set_continue_thread)
8042         (set_general_process, write_ptid)
8043         (remote_unpack_thread_info_response, remote_get_threadinfo)
8044         (parse_threadlist_response, remote_get_threadlist)
8045         (remote_threadlist_iterator, remote_get_threads_with_ql)
8046         (remote_get_threads_with_qxfer)
8047         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8048         (get_offsets, remote_check_symbols, remote_supported_packet)
8049         (remote_query_supported, remote_packet_size)
8050         (remote_serial_quit_handler, remote_detach_pid)
8051         (remote_vcont_probe, remote_resume_with_hc)
8052         (send_interrupt_sequence, interrupt_query)
8053         (remote_notif_get_pending_events, fetch_register_using_p)
8054         (send_g_packet, process_g_packet, fetch_registers_using_g)
8055         (store_register_using_P, store_registers_using_G)
8056         (set_remote_traceframe, check_binary_download)
8057         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8058         (remote_xfer_live_readonly_partial, remote_read_bytes)
8059         (remote_send_printf, remote_flash_write, readchar)
8060         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8061         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8062         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8063         (extended_remote_disable_randomization, extended_remote_run)
8064         (send_environment_packet, extended_remote_environment_support)
8065         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8066         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8067         (packet_command): Now methods of ...
8068         (remote_target): ... this class.
8069         (m_remote_state) <remote_target>: New field.
8070         (struct remote_state) <stop_reply_queue,
8071         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8072         fields.
8073         (remote_state::remote_state): Allocate stop_reply_queue.
8074         (remote_state): Delete global.
8075         (get_remote_state_raw): Delete.
8076         (remote_target::get_remote_state): Allocate m_remote_state on
8077         demand.
8078         (get_current_remote_target): New.
8079         (remote_ops, extended_remote_ops): Delete.
8080         (wait_forever_enabled_p, remote_async_inferior_event_token):
8081         Delete, moved to struct remote_state.
8082         (remote_target::close): Delete self.  Destruction bits split to
8083         ...
8084         (remote_target::~remote_target): ... this.
8085         (show_memory_packet_size): Adjust to use
8086         get_current_remote_target.
8087         (struct protocol_feature) <func>: Add remote_target parameter.
8088         All callers adjusted.
8089         (curr_quit_handler_target): New.
8090         (remote_serial_quit_handler): Reimplement.
8091         (remote_target::open_1): Adjust to use get_current_remote_target.
8092         Heap-allocate remote_target/extended_remote_target instances.
8093         (vcont_builder::vcont_builder): Add remote_target parameter, and
8094         save it in m_remote.  All callers adjusted.
8095         (vcont_builder::m_remote): New field.
8096         (vcont_builder::restart, vcont_builder::flush)
8097         (vcont_builder::push_action): Use it.
8098         (remote_target::commit_resume): Use it.
8099         (struct queue_iter_param) <remote>: New field.
8100         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8101         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8102         (check_pending_event_prevents_wildcard_vcont_callback)
8103         (remote_target::check_pending_events_prevent_wildcard_vcont)
8104         (remote_target::discard_pending_stop_replies)
8105         (remote_target::discard_pending_stop_replies_in_queue)
8106         (remote_target::remote_notif_remove_queued_reply): Fill in
8107         'remote' field.
8108         (remote_notif_get_pending_events): New.
8109         (remote_target::readchar, remote_target::remote_serial_write):
8110         Save/restore curr_quit_handler_target.
8111         (putpkt): New.
8112         (kill_new_fork_children): Fill in 'remote' field.
8113         (packet_command): Use get_current_remote_target, defer to
8114         remote_target method of same name.
8115         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8116         parameter, and save it in m_remote.  All callers adjusted.
8117         (scoped_remote_fd::release): Use m_remote.
8118         (scoped_remote_fd::m_remote): New field.
8119         (remote_file_put, remote_file_get, remote_file_delete): Use
8120         get_current_remote_target, defer to remote_target method of same
8121         name.
8122         (remote_btrace_reset): Add remote_state paremeter.  Update all
8123         callers.
8124         (remote_async_inferior_event_handler). Pass down 'data'.
8125         (remote_new_objfile): Use get_current_remote_target.
8126         (remote_target::vcont_r_supported): New.
8127         (set_range_stepping): Use get_current_remote_target and
8128         remote_target::vcont_r_supported.
8129         (_initialize_remote): Don't allocate 'remote_state' and
8130         'stop_reply_queue' globals.
8131         * remote.h (struct remote_target): Forward declare.
8132         (getpkt, putpkt, remote_notif_get_pending_events): Add
8133         'remote_target' parameter.
8134
8135 2018-05-22  Pedro Alves  <palves@redhat.com>
8136
8137         * remote.c (vcont_builder): Now a class.  Make all data members
8138         private.
8139         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8140         Declare methods.
8141         (vcont_builder_restart): Rename to ...
8142         (vcont_builder::restart): ... this.
8143         (vcont_builder_flush): Rename to ...
8144         (vcont_builder::flush): ... this.
8145         (vcont_builder_push_action): Rename to ...
8146         (vcont_builder::push_action): ... this.
8147         (remote_target::commit_resume): Adjust.
8148
8149 2018-05-22  Pedro Alves  <palves@redhat.com>
8150
8151         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8152         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8153         (get_fixed_memory_packet_size): New.
8154         (get_memory_packet_size): Use it.
8155         (set_memory_packet_size): Don't override the config size with
8156         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8157         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8158         Don't refer to get_memory_packet_size if not connected to a remote
8159         target.  Show "(default)" if configured size is 0.
8160
8161 2018-05-22  Pedro Alves  <palves@redhat.com>
8162
8163         * remote.c (remote_target::mourn_inferior): Move
8164         discard_pending_stop_replies call here from ...
8165         (_initialize_remote): ... here.
8166
8167 2018-05-22  Pedro Alves  <palves@redhat.com>
8168
8169         * remote.c (compare_section_command): Remove set_general_process
8170         call.
8171
8172 2018-05-22  Pedro Alves  <palves@redhat.com>
8173
8174         * remote.c (struct packet_reg, struct remote_arch_state):
8175         Move higher up in the file.
8176         (remote_state) <m_arch_states>: Store remote_arch_state values
8177         instead of remote_arch_state pointers.
8178         (remote_state::get_remote_arch_state): Adjust.
8179
8180 2018-05-22  Pedro Alves  <palves@redhat.com>
8181
8182         * remote.c: Include <unordered_map>.
8183         (remote_state): Now a class.
8184         (remote_state) <get_remote_arch_state>: Declare method.
8185         <get_remote_arch_state>: New field.
8186         (remote_arch_state) <remote_arch_state>: Declare ctor.
8187         <regs>: Now a unique_ptr.
8188         (remote_gdbarch_data_handle): Delete.
8189         (get_remote_arch_state): Delete.
8190         (remote_state::get_remote_arch_state): New.
8191         (get_remote_state): Adjust to call remote_state's
8192         get_remote_arch_state method.
8193         (init_remote_state): Delete, bits factored out to ...
8194         (remote_arch_state::remote_arch_state): ... this new method.
8195         (get_remote_packet_size, get_memory_packet_size)
8196         (process_g_packet, remote_target::fetch_registers)
8197         (remote_target::prepare_to_store, store_registers_using_G)
8198         (remote_target::store_registers, remote_target::get_trace_status):
8199         Adjust to call remote_state's method.
8200         (_initialize_remote): Remove reference to
8201         remote_gdbarch_data_handle.
8202
8203 2018-05-22  Pedro Alves  <palves@redhat.com>
8204
8205         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8206         pread>: New method declarations.
8207         (remote_target::open_1): Adjust.
8208         (readahead_cache_invalidate): Rename to ...
8209         (readahead_cache::invalidate): ... this, and adjust to be a class
8210         method.
8211         (readahead_cache_invalidate_fd): Rename to ...
8212         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8213         class method.
8214         (remote_hostio_pwrite): Adjust.
8215         (remote_hostio_pread_from_cache): Rename to ...
8216         (readahead_cache::pread): ... this, and adjust to be a class
8217         method.
8218         (remote_hostio_close): Adjust.
8219
8220 2018-05-22  Pedro Alves  <palves@redhat.com>
8221
8222         * remote.c (remote_hostio_close_cleanup): Delete.
8223         (class scoped_remote_fd): New.
8224         (remote_file_put, remote_file_get): Use it.
8225
8226 2018-05-22  Pedro Alves  <palves@redhat.com>
8227
8228         (struct vCont_action_support): Use bool and initialize all fields.
8229         (struct readahead_cache): Initialize all fields.
8230         (remote_state): Use bool and initialize all fields.
8231         (remote_state::remote_state, remote_state::~remote_state): New.
8232         (new_remote_state): Delete.
8233         (_initialize_remote): Use new to allocate remote_state.
8234
8235 2018-05-22  Pedro Alves  <palves@redhat.com>
8236             張俊芝  <zjz@zjz.name>
8237
8238         PR gdb/22973
8239         * c-exp.y: Include "c-support.h".
8240         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8241         of tolower.  Use c_ident_is_alpha to scan names.
8242         * c-lang.c: Include "c-support.h".
8243         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8244         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8245         * c-support.h: New file, with bits factored out from ...
8246         * cp-name-parser.y: ... this file.
8247         Include "c-support.h".
8248         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8249         c-support.h and renamed.
8250         (symbol_end, yylex): Adjust.
8251
8252 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8253
8254         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8255         parameter type to CORE_ADDR.
8256         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8257         parameter type in declaration to CORE_ADDR.
8258         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8259         target_auxv_search to get AT_HWCAP and use the result to get the
8260         target description.
8261         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8262         to CORE_ADDR. Remove the cast of the return value to unsigned
8263         long. Fix error predicate of target_auxv_search.
8264         (ppc_linux_nat_target::read_description): Change the type of the
8265         hwcap variable to CORE_ADDR.
8266
8267 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8268
8269         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8270         if the size of fpscr is larger than 32 bits.
8271
8272 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8273
8274         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8275         (ppc32_linux_vsxregmap): New global.
8276         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8277         regcache_supply_regset, and regcache_collect_regset.
8278         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8279         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8280         (fetch_vsx_register, store_vsx_register): Remove.
8281         (fetch_vsx_registers): Add regno parameter. Get regset using
8282         ppc_linux_vsxregset. Use regset to supply registers.
8283         (store_vsx_registers): Add regno parameter. Get regset using
8284         ppc_linux_vsxregset. Use regset to collect registers.
8285         (fetch_register): Call fetch_vsx_registers instead of
8286         fetch_vsx_register.
8287         (store_register): Call store_vsx_registers instead of
8288         store_vsx_register.
8289         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8290         new regno parameter.
8291         (store_ppc_registers): Call store_vsx_registers with -1 for the
8292         new regno parameter.
8293         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8294         (ppc_collect_vsxregset): Remove.
8295
8296 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8297
8298         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8299         offset fields.
8300         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8301         for vector register offset fields.
8302         (ppc64_fbsd_reg_offsets): Likewise.
8303         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8304         to vector register offset fields.
8305         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8306         to vector register offset fields.
8307         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8308         vector register offset fields.
8309         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8310         initializers for vector register offset fields.
8311         (rs6000_aix64_reg_offsets): Likewise.
8312         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8313         (ppc_supply_vrregset): Remove.
8314         (ppc_collect_vrregset): Remove.
8315         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8316         (ppc_linux_vrregset) : New function.
8317         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8318         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8319         (ppc32_linux_vrregset): Remove.
8320         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8321         and use result instead of ppc32_linux_vrregset.
8322         (ppc32_linux_reg_offsets): Remove initializers for vector register
8323         offset fields.
8324         (ppc64_linux_reg_offsets): Likewise.
8325         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8326         * ppc-linux-nat.c: Include regset.h.
8327         (gdb_vrregset_t): Adjust comment to account for little-endian
8328         mode.
8329         (supply_vrregset, fill_vrregset): Remove.
8330         (fetch_altivec_register, store_altivec_register): Remove.
8331         (fetch_altivec_registers): Add regno parameter. Get regset using
8332         ppc_linux_vrregset. Use regset to supply registers.
8333         (store_altivec_registers): Add regno parameter. Get regset using
8334         ppc_linux_vrregset. Use regset to collect registers.
8335         (fetch_register): Call fetch_altivec_registers instead of
8336         fetch_altivec_register.
8337         (store_register): Call store_altivec_registers instead of
8338         store_altivec_register.
8339         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8340         the new regno parameter.
8341         (store_ppc_registers): Call store_altivec_registers with -1 for
8342         the new regno parameter.
8343
8344 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8345
8346         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8347         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8348         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8349         (gdb_vrregset_t): Change array type size to
8350         PPC_LINUX_SIZEOF_VRREGSET.
8351         (gdb_vsxregset_t): Change array type size to
8352         PPC_LINUX_SIZEOF_VSXREGSET.
8353         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8354         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8355         PPC_LINUX_SIZEOF_VSXREGSET.
8356
8357 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8358
8359         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8360         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8361         nat/ppc-linux.c.
8362         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8363         ppc_linux_target_wordsize with tid.
8364         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8365         wordsize with tid.
8366         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8367         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8368         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8369         tid parameter. Remove static specifier.
8370         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8371         (ppc_linux_target_wordsize): New declaration.
8372
8373 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8374
8375         * arch/ppc-linux-common.c: New file.
8376         * arch/ppc-linux-common.h: New file.
8377         * arch/ppc-linux-tdesc.h: New file.
8378         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8379         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8380         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8381         arch/ppc-linux-tdesc.h.
8382         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8383         arch/ppc-linux-tdesc.h.
8384         (ppc_linux_nat_target::read_description): Remove target
8385         description matching code. Fill a ppc_linux_features struct and
8386         call ppc_linux_match_description with it. Move comment about ISA
8387         2.05 to ppc-linux-common.c.
8388         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8389         arch/ppc-linux-tdesc.h.
8390         (ppc_linux_core_read_description): Remove target description
8391         matching code. Fill a ppc_linux_features struct and call
8392         ppc_linux_match_description with it.
8393         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8394         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8395         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8396         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8397         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8398         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8399         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8400         (tdesc_powerpc_e500l): Remove.
8401
8402 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8403
8404         * ada-lang.c (catch_assert_command): Pass empty string instead
8405         of NULL for excep_string argument.
8406
8407 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8408
8409         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8410         the width of the requested register exceeds the width of the
8411         `ptrace' data type.
8412
8413 2018-05-21  Tom Tromey  <tom@tromey.com>
8414
8415         * printcmd.c (output_command): Remove.
8416         (output_command_const): Rename to output_command.
8417         * valprint.h (output_command): Rename from output_command_const.
8418         * tracepoint.c (trace_dump_actions): Call output_command.
8419
8420 2018-05-21  Tom Tromey  <tom@tromey.com>
8421
8422         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8423         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8424         * ada-lang.h (create_ada_exception_catchpoint): Update.
8425         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8426         std::string.
8427         (create_excep_cond_exprs, ~ada_catchpoint)
8428         (should_stop_exception, print_one_exception)
8429         (print_mention_exception, print_recreate_exception): Update.
8430         (ada_get_next_arg): Remove.
8431         (catch_ada_exception_command_split): Use std::string.  Change type
8432         of "excep_string", "cond_string".
8433         (catch_ada_exception_command): Update.
8434         (create_ada_exception_catchpoint): Change type of excep_string.
8435         (ada_exception_sal): Remove excep_string parameter.
8436         (~ada_catchpoint): Remove.
8437
8438 2018-05-21  Tom Tromey  <tom@tromey.com>
8439
8440         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8441         cleanup.
8442
8443 2018-05-21  Tom Tromey  <tom@tromey.com>
8444
8445         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8446         Return unique_xmalloc_ptr.
8447         (print_it_exception): Update.
8448
8449 2018-05-21  Tom Tromey  <tom@tromey.com>
8450
8451         * tracepoint.c (trace_dump_actions): Use std::string.
8452
8453 2018-05-21  Tom Tromey  <tom@tromey.com>
8454
8455         * symfile.c (reread_symbols): Use std::string for original_name.
8456
8457 2018-05-21  Tom Tromey  <tom@tromey.com>
8458
8459         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8460         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8461         constructor.
8462
8463 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8464
8465         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8466         instance to...
8467         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8468         * objfiles.c (get_objfile_bfd_data): Allocate
8469         objfile_per_bfd_storage with obstack_new when allocating on
8470         obstack.
8471
8472 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8473
8474         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8475         OBSTACK_ZALLOC.
8476         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8477         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8478         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8479         (add_pending): Likewise.
8480         (parse_symbol): Likewise.
8481         (parse_partial_symbols): Likewise.
8482         (psymtab_to_symtab_1): Likewise.
8483         (new_psymtab): Likewise.
8484         (elfmdebug_build_psymtabs): Likewise.
8485         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8486         * objfiles.c (get_objfile_bfd_data): Likewise.
8487         (objfile_register_static_link): Likewise.
8488         * psymtab.c (allocate_psymtab): Likewise.
8489         * stabsread.c (read_member_functions): Likewise.
8490         * xcoffread.c (xcoff_end_psymtab): Likewise.
8491
8492 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8493
8494         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8495         compiler supports std::is_trivially_constructible.
8496         * common/poison.h: Include obstack.h.
8497         (IsMallocable): Define to is_trivially_constructible if the
8498         compiler supports it, define to true_type otherwise.
8499         (xobnew): New.
8500         (XOBNEW): Redefine.
8501         (xobnewvec): New.
8502         (XOBNEWVEC): Redefine.
8503         * gdb_obstack.h (obstack_zalloc): New.
8504         (OBSTACK_ZALLOC): Redefine.
8505         (obstack_calloc): New.
8506         (OBSTACK_CALLOC): Redefine.
8507         (obstack_new): New.
8508         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8509         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8510         gdbarch.c.
8511         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8512         obstack_calloc/obstack_zalloc.
8513         (gdbarch_obstack_zalloc): Remove.
8514         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8515
8516 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8517
8518         * stack.c (backtrace_command_1): Remove useless variable int i.
8519
8520 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8521
8522         * stack.c (print_frame_info): Fix comment.
8523
8524 2018-05-18  Tom Tromey  <tom@tromey.com>
8525
8526         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8527         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8528         (~dwarf2_per_objfile): Update
8529         (dwarf2_get_dwz_file): Use new.
8530         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8531         unique_ptr.
8532
8533 2018-05-18  Tom Tromey  <tom@tromey.com>
8534
8535         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8536         unique_ptr.
8537         * dwarf2read.c (struct dwp_file): Add constructor and
8538         initializers.
8539         (open_and_init_dwp_file): Return a unique_ptr.
8540         (dwarf2_per_objfile, create_dwp_hash_table)
8541         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8542         (lookup_dwo_unit_in_dwp): Update.
8543         (open_and_init_dwp_file, get_dwp_file): Update.
8544
8545 2018-05-18  Tom Tromey  <tom@tromey.com>
8546
8547         * dwarf2read.c (dwarf2_per_objfile): Update.
8548         (struct mapped_index): Add initializers.
8549         (dwarf2_read_index): Use new.
8550         (dw2_symtab_iter_init): Update.
8551         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8552         unique_ptr.
8553
8554 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8555
8556         * dwarf2read.c (mapped_index) <total_size>: Remove.
8557
8558 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8559
8560         * unittests/format_pieces-selftests.c (test_format_specifier):
8561         Add ARI comments.
8562
8563 2018-05-18  Tom Tromey  <tom@tromey.com>
8564
8565         * c-typeprint.c (maybe_print_hole): New function.
8566         (c_print_type_struct_field_offset): Update.
8567         (c_type_print_base_struct_union): Call maybe_print_hole.
8568
8569 2018-05-17  Keith Seitz  <keiths@redhat.com>
8570
8571         * breakpoint.c (build_bpstat_chain): New function, moved from
8572         bpstat_stop_status.
8573         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8574         If no stop chain is passed, call build_bpstat_chain to build it.
8575         * breakpoint.h (build_bpstat_chain): Declare.
8576         (bpstat_stop_status): Move documentation here from breakpoint.c.
8577         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8578         build the stop chain and pass it to skip_inline_frames.
8579         Pass this stop chain to bpstat_stop_status.
8580         * inline-frame.c: Include breakpoint.h.
8581         (stopped_by_user_bp_inline_frame): New function.
8582         (skip_inline_frames): Add parameter `stop_chain'.
8583         Move documention to inline-frame.h.
8584         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8585         whether the frame should be elided.
8586         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8587         Add moved documentation and update for new parameter.
8588
8589 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8590
8591         PR cli/14975
8592         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8593         unittests/format_pieces-selftests.c.
8594         * common/format.h (format_piece) <operator==>: New.
8595         (format_pieces) <operator[]>: Remove.
8596         * common/format.c (format_pieces::format_pieces): Handle \e.
8597         * unittests/format_pieces-selftests.c: New.
8598
8599 2018-05-17  Tom Tromey  <tom@tromey.com>
8600
8601         PR symtab/23010:
8602         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8603         (dw2_instantiate_symtab): Add skip_partial parameter.
8604         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8605         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8606         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8607         (dw2_expand_symtabs_matching_one)
8608         (dw2_find_pc_sect_compunit_symtab)
8609         (dw2_debug_names_lookup_symbol)
8610         (dw2_debug_names_expand_symtabs_for_function): Update.
8611         (init_cutu_and_read_dies): Add skip_partial parameter.
8612         (process_psymtab_comp_unit, build_type_psymtabs_1)
8613         (process_skeletonless_type_unit, load_partial_comp_unit)
8614         (psymtab_to_symtab_1): Update.
8615         (load_full_comp_unit): Add skip_partial parameter.
8616         (process_imported_unit_die, dwarf2_read_addr_index)
8617         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8618         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8619         (read_signatured_type): Update.
8620
8621 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8622
8623         * value.c (release_value): Remove unused variable.
8624         (record_latest_value): Likewise.
8625         (access_value_history): Likewise.
8626         (preserve_values): Likewise.
8627
8628 2018-05-17  Tom Tromey  <tom@tromey.com>
8629
8630         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8631         Initialize.
8632
8633 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8634
8635         PR gdb/22286
8636         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8637         Also handle registers whose width is not a multiple of
8638         PTRACE_TYPE_RET.
8639         (linux_nat_trad_target::store_register): Likewise.
8640
8641 2018-05-16  Tom Tromey  <tom@tromey.com>
8642
8643         * gdbcore.h (core_bfd): Redefine.
8644         * corelow.c (core_target::close): Update.
8645         (core_target_open): Update.
8646         * progspace.h (struct program_space) <cbfd>: Now a
8647         gdb_bfd_ref_ptr.
8648
8649 2018-05-16  Tom Tromey  <tom@tromey.com>
8650
8651         PR cli/19551:
8652         * symfile-add-flags.h (enum symfile_add_flags)
8653         <SYMFILE_NOT_FILENAME>: New constant.
8654         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8655         objfile name from BFD.
8656         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8657         * minidebug.c (find_separate_debug_file_in_section): Put
8658         ".gnu_debugdata" into BFD's file name.
8659
8660 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8661
8662         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8663         Remove.
8664
8665 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8666
8667         PR binutils/21446
8668         * aarch64-tdep.c (aarch64_analyze_prologue,
8669         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8670         Indicate not interested in errors.
8671
8672 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8673
8674         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8675         Supply the MIPS_ZERO_REGNUM register.
8676
8677 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8678
8679         * mips-tdep.c (mask_address_var): Make variable static.
8680
8681 2018-05-14  Tom Tromey  <tom@tromey.com>
8682
8683         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8684
8685 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8686
8687         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8688         FXSAVE_ADDR for the mxcsr register.
8689
8690 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8691
8692         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8693
8694 2018-05-11  Pedro Alves  <palves@redhat.com>
8695
8696         * corelow.c (core_target) <core_target>: No longer inline.
8697         Initialize m_core_gdbarch, m_core_vec and build the section table
8698         here.
8699         <~core_target>: New.
8700         <core_gdbarch, get_core_register_section>: New methods.
8701         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8702         factored out from ...
8703         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8704         (core_ops): Delete.
8705         (sniff_core_bfd): Add gdbarch parameter.
8706         (core_close): Delete, merged into ...
8707         (core_target::close): ... here.  Delete self.
8708         (core_close_cleanup): Delete.
8709         (core_target_open): Allocate a core_target on the heap.  Use a
8710         unique_ptr instead of a cleanup.  Bits moved into the core_target
8711         ctor.  Adjust to use core_target methods instead of globals.
8712         (get_core_register_section): Rename to ...
8713         (core_target::get_core_register_section): ... this and adjust.
8714         (struct get_core_registers_cb_data): New.
8715         (get_core_registers_cb): Use it.  Use bool.
8716         (core_target::fetch_registers, core_target::files_info)
8717         (core_target::xfer_partial, core_target::read_description)
8718         (core_target::pid_to, core_target::thread_name): Adjust to
8719         reference class fields instead of globals.
8720         * target.h (struct target_ops_deleter, target_ops_up): New.
8721
8722 2018-05-11  Pedro Alves  <palves@redhat.com>
8723
8724         * corefile.c (core_file_command): Move to corelow.c.
8725         * corelow.c (the_core_target): Delete.
8726         (core_file_command): Moved from corefile.c.  Check exec_bfd
8727         instead of the_core_target.  Use target_detach instead of calling
8728         into the_core_target directly.
8729         (maybe_say_no_core_file_now): New.
8730         (core_target::detach): Use it.
8731         (_initialize_corelow): Remove references to the_core_target.
8732         * gdbcore.h (the_core_target): Delete.
8733
8734 2018-05-11  Tom Tromey  <tromey@redhat.com>
8735             Pedro Alves  <palves@redhat.com>
8736
8737         * corefile.c (core_bfd): Remove.
8738         * gdbcore.h (core_bfd): Now a macro.
8739         * progspace.h (struct program_space) <cbfd>: New field.
8740
8741 2018-05-11  Tom Tromey  <tom@tromey.com>
8742
8743         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8744         gdb::def_vector.
8745
8746 2018-05-10  Tom Tromey  <tom@tromey.com>
8747
8748         * configure: Rebuild.
8749         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8750
8751 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8752
8753         PR server/23158:
8754         * regformats/regdat.sh: Adjust script, following the addition
8755         of the new expedite_regs parameter to init_target_desc.
8756
8757 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8758     
8759         PR gdb/23127
8760         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8761         set_gdbarch_significant_addr_bit.
8762         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8763         set_gdbarch_significant_addr_bit.
8764         * utils.c (address_significant): Update to sign extend addr.
8765
8766 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8767
8768         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8769         (xtensa_linux_init_abi): Limit tdep->num_regs by
8770         tdep->num_nopriv_regs.
8771         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8772         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8773         not initialized.
8774
8775 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8776
8777         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8778
8779 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8780
8781         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8782         (I387_MXCSR_INIT_VAL): New constant.
8783         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8784         buffer if it was supplied by the inferior.
8785         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8786         (i387_xsave_get_clear_bv): New function.
8787         (i387_supply_xsave): Only read x87 control registers from the
8788         xsave buffer if the feature is enabled, and the state will have
8789         been written, otherwise, provide a suitable default.
8790         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8791         including x87 control registers.  Update control registers if they
8792         have changed from the default value, and mark features as enabled
8793         as required.
8794         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8795
8796 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8797
8798         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8799
8800 2018-05-07  Tom Tromey  <tom@tromey.com>
8801
8802         * configure: Rebuild.
8803         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8804
8805 2018-05-07  Tom Tromey  <tom@tromey.com>
8806
8807         PR tdep/20362:
8808         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8809         bit.  Use correct value for VDIV.
8810
8811 2018-05-04  Tom Tromey  <tom@tromey.com>
8812
8813         * configure: Rebuild.
8814         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8815
8816 2018-05-04  Tom Tromey  <tom@tromey.com>
8817
8818         * linux-record.c (record_linux_system_call) <case
8819         RECORD_SYS_RECVFROM>: Add "break".
8820
8821 2018-05-04  Tom Tromey  <tom@tromey.com>
8822
8823         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8824         Add missing "break".
8825         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8826         Add missing "break".
8827
8828 2018-05-04  Tom Tromey  <tom@tromey.com>
8829
8830         * rs6000-tdep.c (ppc_process_record_op4)
8831         (ppc_process_record_op63): Add fall-through comment.
8832
8833 2018-05-04  Tom Tromey  <tom@tromey.com>
8834
8835         * i386-tdep.c (i386_process_record): Add fall-through comment.
8836
8837 2018-05-04  Tom Tromey  <tom@tromey.com>
8838
8839         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8840         comment.
8841
8842 2018-05-04  Tom Tromey  <tom@tromey.com>
8843
8844         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8845         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8846         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8847         comment.
8848         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8849         comment.
8850         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8851         comment.
8852
8853 2018-05-04  Tom Tromey  <tom@tromey.com>
8854
8855         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8856
8857 2018-05-04  Tom Tromey  <tom@tromey.com>
8858
8859         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8860         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8861         * symfile.c (section_is_mapped): Fix fall-through comment.
8862         * stabsread.c (define_symbol, read_member_functions): Fix
8863         fall-through comment.
8864         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8865         comment.
8866         * remote.c (remote_wait_as): Fix fall-through comment.
8867         * p-exp.y (yylex): Fix fall-through comment.
8868         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8869         comment.
8870         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8871         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8872         * jv-exp.y (yylex): Fix fall-through comment.
8873         * go-exp.y (lex_one_token): Fix fall-through comment.
8874         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8875         fall-through comment.
8876         * f-exp.y (yylex): Fix fall-through comment.
8877         * dwarf2read.c (process_die): Fix fall-through comments.
8878         * dbxread.c (process_one_symbol): Fix fall-through comment.
8879         * d-exp.y (lex_one_token): Fix fall-through comment.
8880         * cp-name-parser.y (yylex): Fix fall-through comment.
8881         * coffread.c (coff_symtab_read): Fix fall-through comment.
8882         * c-exp.y (lex_one_token): Fix fall-through comment.
8883         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8884         comment.
8885         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8886         comment.
8887
8888 2018-05-04  Tom Tromey  <tom@tromey.com>
8889
8890         PR python/22730:
8891         * NEWS: Mention gdb.execute change.
8892         * gdbcmd.h (execute_control_command): Don't declare.
8893         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8894         execute_control_commands, execute_control_commands_to_string.
8895         * cli/cli-script.h (execute_control_commands)
8896         (execute_control_commands_to_string): Declare.
8897         (execute_control_command): Add from_tty parameter.
8898         * cli/cli-script.c (execute_control_commands)
8899         (execute_control_commands_to_string): New functions.
8900         (execute_user_command): Use execute_control_commands.
8901         (execute_control_command_1): Add "from_tty" parameter.  Update.
8902         (execute_control_command): Likewise.
8903
8904 2018-05-04  Tom Tromey  <tom@tromey.com>
8905
8906         PR python/22731:
8907         * NEWS: Mention that breakpoint commands are writable.
8908         * python/py-breakpoint.c (bppy_set_commands): New function.
8909         (breakpoint_object_getset) <"commands">: Use it.
8910
8911 2018-05-04  Tom Tromey  <tom@tromey.com>
8912
8913         * tracepoint.c (actions_command): Update.
8914         * mi/mi-cmd-break.c (mi_command_line_array)
8915         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8916         (mi_read_next_line): Remove.
8917         (mi_cmd_break_commands): Update.
8918         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8919         function_view.
8920         * cli/cli-script.c (get_command_line): Update.
8921         (process_next_line): Use function_view.  Constify.
8922         (recurse_read_control_structure, read_command_lines)
8923         (read_command_lines_1): Change argument types to function_view.
8924         (do_define_command, document_command): Update.
8925         * breakpoint.h (check_tracepoint_command): Don't declare.
8926         * breakpoint.c (check_tracepoint_command): Remove.
8927         (commands_command_1, create_tracepoint_from_upload): Update.
8928
8929 2018-05-04  Tom Tromey  <tom@tromey.com>
8930
8931         PR gdb/11750:
8932         * cli/cli-script.h (enum command_control_type) <define_control>:
8933         New constant.
8934         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8935         (build_command_line, execute_control_command_1)
8936         (process_next_line): Likewise.
8937         (do_define_command): New function, extracted from define_command.
8938         (define_command): Use it.
8939
8940 2018-05-04  Tom Tromey  <tom@tromey.com>
8941
8942         * tracepoint.c (actions_command): Update.
8943         * cli/cli-script.h (read_command_lines): Update.
8944         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8945         (MAX_TMPBUF): Remove define.
8946         (define_command): Use string_printf.
8947         (document_command): Likewise.
8948         * breakpoint.c (commands_command_1): Update.
8949
8950 2018-05-04  Tom Tromey  <tom@tromey.com>
8951
8952         * top.c (execute_command): Update.
8953         * cli/cli-script.h (print_command_lines): Now varargs.
8954         * cli/cli-script.c (print_command_lines): Now varargs.
8955         (execute_control_command_1) <case while_control, case if_control>:
8956         Update.
8957
8958 2018-05-04  Tom Tromey  <tom@tromey.com>
8959
8960         * tracepoint.c (all_tracepoint_actions): Rename from
8961         all_tracepoint_actions_and_cleanup.  Change return type.
8962         (actions_command, encode_actions_1, encode_actions)
8963         (trace_dump_actions, tdump_command): Update.
8964         * remote.c (remote_download_command_source): Update.
8965         * python/python.c (gdbpy_eval_from_control_command)
8966         (python_command, python_interactive_command): Update.
8967         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8968         * guile/guile.c (guile_command)
8969         (gdbscm_eval_from_control_command, guile_command): Update.
8970         * compile/compile.c (compile_code_command)
8971         (compile_print_command, compile_to_object): Update.
8972         * cli/cli-script.h (struct command_lines_deleter): New.
8973         (counted_command_line): New typedef.
8974         (struct command_line): Add constructor, destructor.
8975         <body_list>: Remove.
8976         <body_list_0, body_list_1>: New members.
8977         (command_line_up): Remove typedef.
8978         (read_command_lines, read_command_lines_1, get_command_line):
8979         Update.
8980         (copy_command_lines): Don't declare.
8981         * cli/cli-script.c (build_command_line): Use "new".
8982         (get_command_line): Return counted_command_line.
8983         (print_command_lines, execute_user_command)
8984         (execute_control_command_1, while_command, if_command): Update.
8985         (realloc_body_list): Remove.
8986         (process_next_line, recurse_read_control_structure): Update.
8987         (read_command_lines, read_command_lines_1): Return counted_command_line.
8988         (free_command_lines): Use "delete".
8989         (copy_command_lines): Remove.
8990         (define_command, document_command, show_user_1): Update.
8991         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8992         a counted_command_line.
8993         * breakpoint.h (counted_command_line): Remove typedef.
8994         (breakpoint_set_commands): Update.
8995         * breakpoint.c (check_no_tracepoint_commands)
8996         (validate_commands_for_breakpoint): Update.
8997         (breakpoint_set_commands): Change commands to be a
8998         counted_command_line.
8999         (commands_command_1, update_dprintf_command_list)
9000         (create_tracepoint_from_upload): Update.
9001
9002 2018-05-04  Tom Tromey  <tom@tromey.com>
9003
9004         * cli/cli-decode.h (cmd_list_element): New constructor.
9005         (~cmd_list_element): New destructor.
9006         (struct cmd_list_element): Add initializers.
9007         * cli/cli-decode.c (do_add_cmd): Use "new".
9008         (delete_cmd): Use "delete".
9009
9010 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9011             Pedro Alves <palves@redhat.com>
9012
9013         PR breakpoints/19806 and support for PR external/20207.
9014         * NEWS: Mention Aarch64 watchpoint improvements.
9015         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9016         watchpoints and PR external/20207 watchpoints.
9017         * nat/aarch64-linux-hw-point.c
9018         (kernel_supports_any_contiguous_range): New.
9019         (aarch64_watchpoint_offset): New.
9020         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9021         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9022         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9023         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9024         next_addr_orig_p.  Support PR external/20207 watchpoints.
9025         (aarch64_downgrade_regs): New.
9026         (aarch64_dr_state_insert_one_point): New parameters offset and
9027         addr_orig.
9028         (aarch64_dr_state_remove_one_point): Likewise.
9029         (aarch64_handle_breakpoint): Update caller.
9030         (aarch64_handle_aligned_watchpoint): Likewise.
9031         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9032         aligned_offset.
9033         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9034         aarch64_downgrade_regs.
9035         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9036         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9037         (DR_CONTROL_MASK): ... this.
9038         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9039         (unsigned int aarch64_watchpoint_offset): New prototype.
9040         (aarch64_linux_set_debug_regs): Remove const from state.
9041         * utils.c (align_up, align_down): Move to ...
9042         * common/common-utils.c (align_up, align_down): ... here.
9043         * utils.h (align_up, align_down): Move to ...
9044         * common/common-utils.h (align_up, align_down): ... here.
9045
9046 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9047
9048         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9049         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9050         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9051         Re-implement to match the ABI as summarized in GCC's
9052         gcc/config/sparc/sparc.c.  All callers updated.
9053         (sparc32_store_arguments): Remove assertion.
9054
9055 2018-05-04  Tom Tromey  <tom@tromey.com>
9056
9057         * printcmd.c: Don't include tui.h.
9058         (decode_format): Use skip_spaces.
9059
9060 2018-05-04  Tom Tromey  <tom@tromey.com>
9061
9062         PR gdb/22619:
9063         * printcmd.c (last_count): New global.
9064         (x_command): Use saved count when repeating.
9065
9066 2018-05-04  Tom Tromey  <tom@tromey.com>
9067
9068         * nto-procfs.c (do_closedir_cleanup): Remove.
9069         (procfs_pidlist): Use gdb_dir_up.
9070         * procfs.c (do_closedir_cleanup): Remove.
9071         (proc_update_threads): Use gdb_dir_up.
9072         * common/filestuff.h (struct gdb_dir_deleter): New.
9073         (gdb_dir_up): New typedef.
9074
9075 2018-05-04  Tom Tromey  <tom@tromey.com>
9076
9077         * ada-lang.c (print_mention_exception): Use std::string.
9078
9079 2018-05-04  Tom Tromey  <tom@tromey.com>
9080
9081         * ada-lang.c (create_excep_cond_exprs): Update.
9082         (ada_exception_catchpoint_cond_string): Use std::string.
9083
9084 2018-05-04  Tom Tromey  <tom@tromey.com>
9085
9086         * ada-lang.c (xget_renaming_scope): Return std::string.
9087         (old_renaming_is_invisible): Update.
9088
9089 2018-05-04  Tom Tromey  <tom@tromey.com>
9090
9091         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9092         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9093
9094 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9095
9096         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9097
9098 2018-05-04  Tom Tromey  <tom@tromey.com>
9099
9100         * remote.c (remote_query_supported_append): Change type.
9101         (remote_check_symbols): Update.
9102
9103 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9104
9105         PR gdb/11420
9106         * configure.ac: Prepend libpython.
9107         * python/python-config.py: Likewise.
9108         * configure: Regenerate.
9109
9110 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9111
9112         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9113
9114 2018-05-03  Pedro Alves  <palves@redhat.com>
9115
9116         * s390-linux-nat.c
9117         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9118         override.  Write 'true' instead of '1'.
9119         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9120         declaration.
9121
9122 2018-05-02  Pedro Alves  <palves@redhat.com>
9123
9124         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9125         add_inf_child_target.
9126         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9127         add_inf_child_target.
9128         * aix-thread.c (aix_thread_target_info): New.
9129         (aix_thread_target) <shortname, longname, doc>: Delete.
9130         <info>: New.
9131         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9132         add_inf_child_target.
9133         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9134         add_inf_child_target.
9135         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9136         add_inf_child_target.
9137         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9138         add_inf_child_target.
9139         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9140         add_inf_child_target.
9141         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9142         add_inf_child_target.
9143         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9144         add_inf_child_target.
9145         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9146         add_inf_child_target.
9147         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9148         add_inf_child_target.
9149         * bfd-target.c (target_bfd_target_info): New.
9150         (target_bfd) <shortname, longname, doc>: Delete.
9151         <info>: New.
9152         * bsd-kvm.c (bsd_kvm_target_info): New.
9153         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9154         <info>: New.
9155         (bsd_kvm_target::open): Rename to ...
9156         (bsd_kvm_target_open): ... this.  Adjust.
9157         * bsd-uthread.c (bsd_uthread_target_info): New.
9158         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9159         <info>: New.
9160         * corefile.c (core_file_command): Adjust.
9161         * corelow.c (core_target_info): New.
9162         (core_target) <shortname, longname, doc>: Delete.
9163         <info>: New.
9164         (core_target::open): Rename to ...
9165         (core_target_open): ... this.  Adjust.
9166         * ctf.c (ctf_target_info): New.
9167         (ctf_target) <shortname, longname, doc>: Delete.
9168         <info>: New.
9169         (ctf_target::open): Rename to ...
9170         (ctf_target_open): ... this.
9171         (_initialize_ctf): Adjust.
9172         * exec.c (exec_target_info): New.
9173         (exec_target) <shortname, longname, doc>: Delete.
9174         <info>: New.
9175         (exec_target::open): Rename to ...
9176         (exec_target_open): ... this.
9177         * gdbcore.h (core_target_open): Declare.
9178         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9179         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9180         add_inf_child_target.
9181         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9182         add_inf_child_target.
9183         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9184         add_inf_child_target.
9185         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9186         add_inf_child_target.
9187         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9188         add_inf_child_target.
9189         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9190         add_inf_child_target.
9191         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9192         add_inf_child_target.
9193         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9194         add_inf_child_target.
9195         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9196         add_inf_child_target.
9197         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9198         add_inf_child_target.
9199         * inf-child.c (inf_child_target_info): New.
9200         (inf_child_target::info): New.
9201         (inf_child_open_target): Remove 'target' parameter.  Use
9202         get_native_target instead.
9203         (inf_child_target::open): Delete.
9204         (add_inf_child_target): New.
9205         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9206         Delete.
9207         <info>: New.
9208         (add_inf_child_target): Declare.
9209         (inf_child_open_target): Declare.
9210         * linux-thread-db.c (thread_db_target_info): New.
9211         (thread_db_target) <shortname, longname, doc>: Delete.
9212         <info>: New.
9213         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9214         add_inf_child_target.
9215         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9216         add_inf_child_target.
9217         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9218         add_inf_child_target.
9219         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9220         add_inf_child_target.
9221         * make-target-delegates (print_class): Adjust.
9222         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9223         add_inf_child_target.
9224         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9225         add_inf_child_target.
9226         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9227         add_inf_child_target.
9228         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9229         add_inf_child_target.
9230         * nto-procfs.c (nto_native_target_info): New.
9231         (nto_procfs_target_native) <shortname, longname, doc>:
9232         Delete.
9233         <info>: New.
9234         (nto_procfs_target_info): New.
9235         (nto_procfs_target_procfs) <shortname, longname, doc>:
9236         Delete.
9237         <info>: New.
9238         (init_procfs_targets): Adjust.
9239         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9240         add_inf_child_target.
9241         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9242         add_inf_child_target.
9243         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9244         add_inf_child_target.
9245         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9246         add_inf_child_target.
9247         * ravenscar-thread.c (ravenscar_target_info): New.
9248         (ravenscar_thread_target) <shortname, longname, doc>:
9249         Delete.
9250         <info>: New.
9251         * record-btrace.c (record_btrace_target_info):
9252         (record_btrace_target) <shortname, longname, doc>: Delete.
9253         <info>: New.
9254         (record_btrace_target::open): Rename to ...
9255         (record_btrace_target_open): ... this.  Adjust.
9256         * record-full.c (record_longname, record_doc): New.
9257         (record_full_base_target) <shortname, longname, doc>: Delete.
9258         <info>: New.
9259         (record_full_target_info): New.
9260         (record_full_target): <shortname>: Delete.
9261         <info>: New.
9262         (record_full_core_open_1, record_full_open_1): Update comments.
9263         (record_full_base_target::open): Rename to ...
9264         (record_full_open): ... this.
9265         (cmd_record_full_restore): Update.
9266         (_initialize_record_full): Update.
9267         * remote-sim.c (remote_sim_target_info): New.
9268         (gdbsim_target) <shortname, longname, doc>: Delete.
9269         <info>: New.
9270         (gdbsim_target::open): Rename to ...
9271         (gdbsim_target_open): ... this.
9272         (_initialize_remote_sim): Adjust.
9273         * remote.c (remote_doc): New.
9274         (remote_target_info): New.
9275         (remote_target) <shortname, longname, doc>: Delete.
9276         <info>: New.
9277         (extended_remote_target_info): New.
9278         (extended_remote_target) <shortname, longname, doc>: Delete.
9279         <info>: New.
9280         (remote_target::open_1): Make static.  Adjust.
9281         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9282         * s390-linux-nat.c (_initialize_s390_nat): Use
9283         add_inf_child_target.
9284         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9285         add_inf_child_target.
9286         * sol-thread.c (thread_db_target_info): New.
9287         (sol_thread_target) <shortname, longname, doc>: Delete.
9288         <info>: New.
9289         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9290         add_inf_child_target.
9291         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9292         add_inf_child_target.
9293         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9294         add_inf_child_target.
9295         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9296         add_inf_child_target.
9297         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9298         add_inf_child_target.
9299         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9300         add_inf_child_target.
9301         * spu-linux-nat.c (_initialize_spu_nat): Use
9302         add_inf_child_target.
9303         * spu-multiarch.c (spu_multiarch_target_info): New.
9304         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9305         <info>: New.
9306         * target-delegates.c: Regenerate.
9307         * target.c: Include <unordered_map>.
9308         (target_ops_p): Delete.
9309         (DEF_VEC_P(target_ops_p)): Delete.
9310         (target_factories): New.
9311         (test_target_info): New.
9312         (test_target_ops::info): New.
9313         (open_target): Adjust to use target_factories.
9314         (add_target_with_completer): Rename to ...
9315         (add_target): ... this.  Change prototype.  Register target_info
9316         and open callback in target_factories.  Register target_info in
9317         command context instead of target_ops.
9318         (add_target): Delete old implementation.
9319         (add_deprecated_target_alias): Change prototype.  Adjust.
9320         (the_native_target): New.
9321         (set_native_target, get_native_target): New.
9322         (find_default_run_target): Use the_native_target.
9323         (find_attach_target, find_run_target): Simplify.
9324         (target_ops::open): Delete.
9325         (dummy_target_info): New.
9326         (dummy_target::shortname, dummy_target::longname)
9327         (dummy_target::doc): Delete.
9328         (dummy_target::info): New.
9329         (debug_target::shortname, debug_target::longname)
9330         (debug_target::doc): Delete.
9331         (debug_target::info): New.
9332         * target.h (struct target_info): New.
9333         (target_ops::~target_ops): Add comment.
9334         (target_ops::info): New.
9335         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9336         longer virtual.  Implement in terms of target_info.
9337         (set_native_target, get_native_target): Declare.
9338         (target_open_ftype): New.
9339         (add_target, add_target_with_completer)
9340         (add_deprecated_target_alias): Change prototype.
9341         (test_target) <shortname, longname, doc>: Delete.
9342         <info>: New.
9343         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9344         add_inf_child_target.
9345         * tracefile-tfile.c (tfile_target_info): New.
9346         (tfile_target) <shortname, longname, doc>: Delete.
9347         <info>: New.
9348         (tfile_target::open): Rename to ...
9349         (tfile_target_open): ... this.
9350         (_initialize_tracefile_tfile): Adjust.
9351         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9352         add_inf_child_target.
9353         * windows-nat.c (_initialize_windows_nat): Use
9354         add_inf_child_target.
9355         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9356         add_inf_child_target.
9357
9358 2018-05-02  Pedro Alves  <palves@redhat.com>
9359
9360         * linux-nat.h (linux_nat_target) <low_new_thread,
9361         low_delete_thread, low_new_fork, low_forget_process,
9362         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9363         New virtual methods.
9364         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9365         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9366         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9367         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9368         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9369         Delete.
9370         * linux-fork.c (delete_fork): Adjust to call low method.
9371         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9372         (linux_nat_new_fork, linux_nat_forget_process_hook)
9373         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9374         (linux_nat_status_is_event):
9375         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9376         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9377         to call low method.
9378         (sigtrap_is_event): Rename to ...
9379         (linux_nat_target::low_status_is_event): ... this.
9380         (linux_nat_set_status_is_event): Delete.
9381         (save_stop_reason, linux_nat_wait_1)
9382         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9383         low methods.
9384         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9385         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9386         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9387         (linux_nat_set_prepare_to_resume): Delete.
9388         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9389         low virtual methods.
9390         * amd64-linux-nat.c: Likewise.
9391         * arm-linux-nat.c: Likewise.
9392         * i386-linux-nat.c: Likewise.
9393         * ia64-linux-nat.c: Likewise.
9394         * mips-linux-nat.c: Likewise.
9395         * ppc-linux-nat.c: Likewise.
9396         * s390-linux-nat.c: Likewise.
9397         * sparc64-linux-nat.c: Likewise.
9398         * x86-linux-nat.c: Likewise.
9399         * x86-linux-nat.h: Include "nat/x86-linux.h".
9400         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9401         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9402         Override methods.
9403
9404 2018-05-02  Pedro Alves  <palves@redhat.com>
9405
9406         * target.h (target_ops)
9407         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9408         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9409         stopped_by_watchpoint, have_continuable_watchpoint,
9410         stopped_data_address, watchpoint_addr_within_range,
9411         can_accel_watchpoint_condition, can_run, thread_alive,
9412         has_all_memory, has_memory, has_stack, has_registers,
9413         has_execution, can_async_p, is_async_p, supports_non_stop,
9414         always_non_stop_p, can_execute_reverse, supports_multi_process,
9415         supports_enable_disable_tracepoint,
9416         supports_disable_randomization, supports_string_tracing,
9417         supports_evaluation_of_breakpoint_conditions,
9418         can_run_breakpoint_commands, filesystem_is_local,
9419         can_download_tracepoint, get_trace_state_variable_value,
9420         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9421         record_is_replaying, record_will_replay,
9422         augmented_libraries_svr4_read>: Adjust to return bool.
9423         * aarch64-linux-nat.c: All implementations adjusted.
9424         * aix-thread.c: All implementations adjusted.
9425         * arm-linux-nat.c: All implementations adjusted.
9426         * breakpoint.c: All implementations adjusted.
9427         * bsd-kvm.c: All implementations adjusted.
9428         * bsd-uthread.c: All implementations adjusted.
9429         * corelow.c: All implementations adjusted.
9430         * ctf.c: All implementations adjusted.
9431         * darwin-nat.c: All implementations adjusted.
9432         * darwin-nat.h: All implementations adjusted.
9433         * exec.c: All implementations adjusted.
9434         * fbsd-nat.c: All implementations adjusted.
9435         * fbsd-nat.h: All implementations adjusted.
9436         * gnu-nat.c: All implementations adjusted.
9437         * gnu-nat.h: All implementations adjusted.
9438         * go32-nat.c: All implementations adjusted.
9439         * ia64-linux-nat.c: All implementations adjusted.
9440         * inf-child.c: All implementations adjusted.
9441         * inf-child.h: All implementations adjusted.
9442         * inf-ptrace.c: All implementations adjusted.
9443         * inf-ptrace.h: All implementations adjusted.
9444         * linux-nat.c: All implementations adjusted.
9445         * linux-nat.h: All implementations adjusted.
9446         * mips-linux-nat.c: All implementations adjusted.
9447         * nto-procfs.c: All implementations adjusted.
9448         * ppc-linux-nat.c: All implementations adjusted.
9449         * procfs.c: All implementations adjusted.
9450         * ravenscar-thread.c: All implementations adjusted.
9451         * record-btrace.c: All implementations adjusted.
9452         * record-full.c: All implementations adjusted.
9453         * remote-sim.c: All implementations adjusted.
9454         * remote.c: All implementations adjusted.
9455         * s390-linux-nat.c: All implementations adjusted.
9456         * sol-thread.c: All implementations adjusted.
9457         * spu-multiarch.c: All implementations adjusted.
9458         * target-delegates.c: All implementations adjusted.
9459         * target.c: All implementations adjusted.
9460         * target.h: All implementations adjusted.
9461         * tracefile-tfile.c: All implementations adjusted.
9462         * tracefile.c: All implementations adjusted.
9463         * tracefile.h: All implementations adjusted.
9464         * windows-nat.c: All implementations adjusted.
9465         * x86-linux-nat.h: All implementations adjusted.
9466         * x86-nat.h: All implementations adjusted.
9467
9468 2018-05-02  Pedro Alves  <palves@redhat.com>
9469
9470         * make-target-delegates (scan_target_h): Don't trim lines here.
9471         Replace sequences of tabs and/or whitespace with a single
9472         whitespace.
9473         (top level, parsing methods): Trim each line before processing it
9474         here.
9475
9476 2018-05-02  Pedro Alves  <palves@redhat.com>
9477             John Baldwin  <jhb@freebsd.org>
9478
9479         * target.h (enum strata) <debug_stratum>: New.
9480         (struct target_ops) <all delegation methods>: Replace by C++
9481         virtual methods, and drop "to_" prefix.  All references updated
9482         throughout.
9483         <to_shortname, to_longname, to_doc, to_data,
9484         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9485         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9486         virtual methods.  All references updated throughout.
9487         <can_attach, supports_terminal_ours, can_create_inferior,
9488         get_thread_control_capabilities, attach_no_wait>: New
9489         virtual methods.
9490         <insert_breakpoint, remove_breakpoint>: Now
9491         TARGET_DEFAULT_NORETURN methods.
9492         <info_proc>: Now returns bool.
9493         <to_magic>: Delete.
9494         (OPS_MAGIC): Delete.
9495         (current_target): Delete.  All references replaced by references
9496         to ...
9497         (target_stack): ... this.  New.
9498         (target_shortname, target_longname): Adjust.
9499         (target_can_run): Now a function declaration.
9500         (default_child_has_all_memory, default_child_has_memory)
9501         (default_child_has_stack, default_child_has_registers)
9502         (default_child_has_execution): Remove target_ops parameter.
9503         (complete_target_initialization): Delete.
9504         (memory_breakpoint_target): New template class.
9505         (test_target_ops): Refactor as a C++ class with virtual methods.
9506         * make-target-delegates (NAME_PART): Tighten.
9507         (POINTER_PART, CP_SYMBOL): New.
9508         (SIMPLE_RETURN_PART): Reimplement.
9509         (VEC_RETURN_PART): Expect less.
9510         (RETURN_PART, VIRTUAL_PART): New.
9511         (METHOD): Adjust to C++ virtual methods.
9512         (scan_target_h): Remove reference to C99.
9513         (dname): Output "target_ops::" prefix.
9514         (write_function_header): Adjust to output a C++ class method.
9515         (write_declaration): New.
9516         (write_delegator): Adjust to output a C++ class method.
9517         (tdname): Output "dummy_target::" prefix.
9518         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9519         method.
9520         (tdefault_names, debug_names): Delete.
9521         (return_types, tdefaults, styles, argtypes_array): New.
9522         (top level): All methods are delegators.
9523         (print_class): New.
9524         (top level): Print dummy_target and debug_target classes.
9525         * target-delegates.c: Regenerate.
9526         * target-debug.h (target_debug_print_enum_info_proc_what)
9527         (target_debug_print_thread_control_capabilities)
9528         (target_debug_print_thread_info_p): New.
9529         * target.c (dummy_target): Delete.
9530         (the_dummy_target, the_debug_target): New.
9531         (target_stack): Now extern.
9532         (set_targetdebug): Push/unpush debug target.
9533         (default_child_has_all_memory, default_child_has_memory)
9534         (default_child_has_stack, default_child_has_registers)
9535         (default_child_has_execution): Remove target_ops parameter.
9536         (complete_target_initialization): Delete.
9537         (add_target_with_completer): No longer call
9538         complete_target_initialization.
9539         (target_supports_terminal_ours): Use regular delegation.
9540         (update_current_target): Delete.
9541         (push_target): No longer check magic number.  Don't call
9542         update_current_target.
9543         (unpush_target): Don't call update_current_target.
9544         (target_is_pushed): No longer check magic number.
9545         (target_require_runnable): Skip for all stratums over
9546         process_stratum.
9547         (target_ops::info_proc): New.
9548         (target_info_proc): Use find_target_at and
9549         find_default_run_target.
9550         (target_supports_disable_randomization): Use regular delegation.
9551         (target_get_osdata): Use find_target_at.
9552         (target_ops::open, target_ops::close, target_ops::can_attach)
9553         (target_ops::attach, target_ops::can_create_inferior)
9554         (target_ops::create_inferior, target_ops::can_run)
9555         (target_can_run): New.
9556         (default_fileio_target): Use regular delegation.
9557         (target_ops::fileio_open, target_ops::fileio_pwrite)
9558         (target_ops::fileio_pread, target_ops::fileio_fstat)
9559         (target_ops::fileio_close, target_ops::fileio_unlink)
9560         (target_ops::fileio_readlink): New.
9561         (target_fileio_open_1, target_fileio_unlink)
9562         (target_fileio_readlink): Always call the target method.  Handle
9563         FILEIO_ENOSYS.
9564         (return_zero, return_zero_has_execution): Delete.
9565         (init_dummy_target): Delete.
9566         (dummy_target::dummy_target, dummy_target::shortname)
9567         (dummy_target::longname, dummy_target::doc)
9568         (debug_target::debug_target, debug_target::shortname)
9569         (debug_target::longname, debug_target::doc): New.
9570         (target_supports_delete_record): Use regular delegation.
9571         (setup_target_debug): Delete.
9572         (maintenance_print_target_stack): Skip debug_stratum.
9573         (initialize_targets): Instantiate the_dummy_target and
9574         the_debug_target.
9575         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9576         use target_stack.
9577         (target_auxv_search, fprint_target_auxv): Adjust.
9578         (info_auxv_command): Adjust to use target_stack.
9579         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9580         * exceptions.c (print_flush): Handle a NULL target_stack.
9581         * regcache.c (target_ops_no_register): Refactor as class with
9582         virtual methods.
9583
9584         * exec.c (exec_target): New class.
9585         (exec_ops): Now an exec_target.
9586         (exec_open, exec_close_1, exec_get_section_table)
9587         (exec_xfer_partial, exec_files_info, exec_has_memory)
9588         (exec_make_note_section): Refactor as exec_target methods.
9589         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9590         Delete.
9591         (exec_target::find_memory_regions): New.
9592         (_initialize_exec): Don't call init_exec_ops.
9593         * gdbcore.h (exec_file_clear): Delete.
9594
9595         * corefile.c (core_target): Delete.
9596         (core_file_command): Adjust.
9597         * corelow.c (core_target): New class.
9598         (the_core_target): New.
9599         (core_close): Remove target_ops parameter.
9600         (core_close_cleanup): Adjust.
9601         (core_target::close): New.
9602         (core_open, core_detach, get_core_registers, core_files_info)
9603         (core_xfer_partial, core_thread_alive, core_read_description)
9604         (core_pid_to_str, core_thread_name, core_has_memory)
9605         (core_has_stack, core_has_registers, core_info_proc): Rework as
9606         core_target methods.
9607         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9608         (_initialize_corelow): Initialize the_core_target.
9609         * gdbcore.h (core_target): Delete.
9610         (the_core_target): New.
9611
9612         * ctf.c: (ctf_target): New class.
9613         (ctf_ops): Now a ctf_target.
9614         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9615         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9616         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9617         methods.
9618         (init_ctf_ops): Delete.
9619         (_initialize_ctf): Don't call it.
9620         * tracefile-tfile.c (tfile_target): New class.
9621         (tfile_ops): Now a tfile_target.
9622         (tfile_open, tfile_close, tfile_files_info)
9623         (tfile_get_tracepoint_status, tfile_trace_find)
9624         (tfile_fetch_registers, tfile_xfer_partial)
9625         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9626         Refactor as tfile_target methods.
9627         (tfile_xfer_partial_features): Remove target_ops parameter.
9628         (init_tfile_ops): Delete.
9629         (_initialize_tracefile_tfile): Don't call it.
9630         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9631         (tracefile_has_stack, tracefile_has_registers)
9632         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9633         tracefile_target methods.
9634         (init_tracefile_ops): Delete.
9635         (tracefile_target::tracefile_target): New.
9636         * tracefile.h: Include "target.h".
9637         (tracefile_target): New class.
9638         (init_tracefile_ops): Delete.
9639
9640         * spu-multiarch.c (spu_multiarch_target): New class.
9641         (spu_ops): Now a spu_multiarch_target.
9642         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9643         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9644         (spu_search_memory, spu_mourn_inferior): Refactor as
9645         spu_multiarch_target methods.
9646         (init_spu_ops): Delete.
9647         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9648         complete_target_initialization.
9649
9650         * ravenscar-thread.c (ravenscar_thread_target): New class.
9651         (ravenscar_ops): Now a ravenscar_thread_target.
9652         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9653         (ravenscar_thread_alive, ravenscar_pid_to_str)
9654         (ravenscar_fetch_registers, ravenscar_store_registers)
9655         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9656         (ravenscar_stopped_by_hw_breakpoint)
9657         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9658         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9659         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9660         methods.
9661         (init_ravenscar_thread_ops): Delete.
9662         (_initialize_ravenscar): Remove references to
9663         init_ravenscar_thread_ops and complete_target_initialization.
9664
9665         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9666         (bsd_uthread_target): New class.
9667         (bsd_uthread_ops): Now a bsd_uthread_target.
9668         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9669         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9670         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9671         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9672         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9673         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9674         (bsd_uthread_target): Delete function.
9675         (_initialize_bsd_uthread): Remove reference to
9676         complete_target_initialization.
9677
9678         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9679         (target_bfd): ... this new class.
9680         (target_bfd_xfer_partial, target_bfd_get_section_table)
9681         (target_bfd_close): Refactor as target_bfd methods.
9682         (target_bfd::~target_bfd): New.
9683         (target_bfd_reopen): Adjust.
9684         (target_bfd::close): New.
9685
9686         * record-btrace.c (record_btrace_target): New class.
9687         (record_btrace_ops): Now a record_btrace_target.
9688         (record_btrace_open, record_btrace_stop_recording)
9689         (record_btrace_disconnect, record_btrace_close)
9690         (record_btrace_async, record_btrace_info)
9691         (record_btrace_insn_history, record_btrace_insn_history_range)
9692         (record_btrace_insn_history_from, record_btrace_call_history)
9693         (record_btrace_call_history_range)
9694         (record_btrace_call_history_from, record_btrace_record_method)
9695         (record_btrace_is_replaying, record_btrace_will_replay)
9696         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9697         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9698         (record_btrace_store_registers, record_btrace_prepare_to_store)
9699         (record_btrace_to_get_unwinder)
9700         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9701         (record_btrace_commit_resume, record_btrace_wait)
9702         (record_btrace_stop, record_btrace_can_execute_reverse)
9703         (record_btrace_stopped_by_sw_breakpoint)
9704         (record_btrace_supports_stopped_by_sw_breakpoint)
9705         (record_btrace_stopped_by_hw_breakpoint)
9706         (record_btrace_supports_stopped_by_hw_breakpoint)
9707         (record_btrace_update_thread_list, record_btrace_thread_alive)
9708         (record_btrace_goto_begin, record_btrace_goto_end)
9709         (record_btrace_goto, record_btrace_stop_replaying_all)
9710         (record_btrace_execution_direction)
9711         (record_btrace_prepare_to_generate_core)
9712         (record_btrace_done_generating_core): Refactor as
9713         record_btrace_target methods.
9714         (init_record_btrace_ops): Delete.
9715         (_initialize_record_btrace): Remove reference to
9716         init_record_btrace_ops.
9717         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9718         the execution_direction global.
9719         (record_full_base_target, record_full_target)
9720         (record_full_core_target): New classes.
9721         (record_full_ops): Now a record_full_target.
9722         (record_full_core_ops): Now a record_full_core_target.
9723         (record_full_target::detach, record_full_target::disconnect)
9724         (record_full_core_target::disconnect)
9725         (record_full_target::mourn_inferior, record_full_target::kill):
9726         New.
9727         (record_full_open, record_full_close, record_full_async): Refactor
9728         as methods of the record_full_base_target class.
9729         (record_full_resume, record_full_commit_resume): Refactor
9730         as methods of the record_full_target class.
9731         (record_full_wait, record_full_stopped_by_watchpoint)
9732         (record_full_stopped_data_address)
9733         (record_full_stopped_by_sw_breakpoint)
9734         (record_full_supports_stopped_by_sw_breakpoint)
9735         (record_full_stopped_by_hw_breakpoint)
9736         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9737         methods of the record_full_base_target class.
9738         (record_full_store_registers, record_full_xfer_partial)
9739         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9740         Refactor as methods of the record_full_target class.
9741         (record_full_can_execute_reverse, record_full_get_bookmark)
9742         (record_full_goto_bookmark, record_full_execution_direction)
9743         (record_full_record_method, record_full_info, record_full_delete)
9744         (record_full_is_replaying, record_full_will_replay)
9745         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9746         (record_full_stop_replaying): Refactor as methods of the
9747         record_full_base_target class.
9748         (record_full_core_resume, record_full_core_kill)
9749         (record_full_core_fetch_registers)
9750         (record_full_core_prepare_to_store)
9751         (record_full_core_store_registers, record_full_core_xfer_partial)
9752         (record_full_core_insert_breakpoint)
9753         (record_full_core_remove_breakpoint)
9754         (record_full_core_has_execution): Refactor
9755         as methods of the record_full_core_target class.
9756         (record_full_base_target::supports_delete_record): New.
9757         (init_record_full_ops): Delete.
9758         (init_record_full_core_ops): Delete.
9759         (record_full_save): Refactor as method of the
9760         record_full_base_target class.
9761         (_initialize_record_full): Remove references to
9762         init_record_full_ops and init_record_full_core_ops.
9763
9764         * remote.c (remote_target, extended_remote_target): New classes.
9765         (remote_ops): Now a remote_target.
9766         (extended_remote_ops): Now an extended_remote_target.
9767         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9768         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9769         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9770         (remote_pass_signals, remote_set_syscall_catchpoint)
9771         (remote_program_signals, )
9772         (remote_thread_always_alive): Remove target_ops parameter.
9773         (remote_thread_alive, remote_thread_name)
9774         (remote_update_thread_list, remote_threads_extra_info)
9775         (remote_static_tracepoint_marker_at)
9776         (remote_static_tracepoint_markers_by_strid)
9777         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9778         (remote_open): Refactor as methods of remote_target.
9779         (extended_remote_open, extended_remote_detach)
9780         (extended_remote_attach, extended_remote_post_attach):
9781         (extended_remote_supports_disable_randomization)
9782         (extended_remote_create_inferior): : Refactor as method of
9783         extended_remote_target.
9784         (remote_set_permissions, remote_open_1, remote_detach)
9785         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9786         (remote_resume, remote_commit_resume, remote_stop)
9787         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9788         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9789         (remote_prepare_to_store, remote_store_registers)
9790         (remote_flash_erase, remote_flash_done, remote_files_info)
9791         (remote_kill, remote_mourn, remote_insert_breakpoint)
9792         (remote_remove_breakpoint, remote_insert_watchpoint)
9793         (remote_watchpoint_addr_within_range)
9794         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9795         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9796         (remote_supports_stopped_by_sw_breakpoint)
9797         (remote_stopped_by_hw_breakpoint)
9798         (remote_supports_stopped_by_hw_breakpoint)
9799         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9800         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9801         (remote_verify_memory): Refactor as methods of remote_target.
9802         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9803         parameter.
9804         (remote_xfer_partial, remote_get_memory_xfer_limit)
9805         (remote_search_memory, remote_rcmd, remote_memory_map)
9806         (remote_pid_to_str, remote_get_thread_local_address)
9807         (remote_get_tib_address, remote_read_description): Refactor as
9808         methods of remote_target.
9809         (remote_target::fileio_open, remote_target::fileio_pwrite)
9810         (remote_target::fileio_pread, remote_target::fileio_close): New.
9811         (remote_hostio_readlink, remote_hostio_fstat)
9812         (remote_filesystem_is_local, remote_can_execute_reverse)
9813         (remote_supports_non_stop, remote_supports_disable_randomization)
9814         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9815         (remote_supports_enable_disable_tracepoint)
9816         (remote_supports_string_tracing)
9817         (remote_can_run_breakpoint_commands, remote_trace_init)
9818         (remote_download_tracepoint, remote_can_download_tracepoint)
9819         (remote_download_trace_state_variable, remote_enable_tracepoint)
9820         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9821         (remote_trace_start, remote_get_trace_status)
9822         (remote_get_tracepoint_status, remote_trace_stop)
9823         (remote_trace_find, remote_get_trace_state_variable_value)
9824         (remote_save_trace_data, remote_get_raw_trace_data)
9825         (remote_set_disconnected_tracing, remote_core_of_thread)
9826         (remote_set_circular_trace_buffer, remote_traceframe_info)
9827         (remote_get_min_fast_tracepoint_insn_len)
9828         (remote_set_trace_buffer_size, remote_set_trace_notes)
9829         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9830         (remote_disable_btrace, remote_teardown_btrace)
9831         (remote_read_btrace, remote_btrace_conf)
9832         (remote_augmented_libraries_svr4_read, remote_load)
9833         (remote_pid_to_exec_file, remote_can_do_single_step)
9834         (remote_execution_direction, remote_thread_handle_to_thread_info):
9835         Refactor as methods of remote_target.
9836         (init_remote_ops, init_extended_remote_ops): Delete.
9837         (remote_can_async_p, remote_is_async_p, remote_async)
9838         (remote_thread_events, remote_upload_tracepoints)
9839         (remote_upload_trace_state_variables): Refactor as methods of
9840         remote_target.
9841         (_initialize_remote): Remove references to init_remote_ops and
9842         init_extended_remote_ops.
9843
9844         * remote-sim.c (gdbsim_target): New class.
9845         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9846         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9847         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9848         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9849         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9850         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9851         Refactor as methods of gdbsim_target.
9852         (gdbsim_ops): Now a gdbsim_target.
9853         (init_gdbsim_ops): Delete.
9854         (gdbsim_cntrl_c): Adjust.
9855         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9856
9857         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9858         (the_amd64_linux_nat_target): New.
9859         (amd64_linux_fetch_inferior_registers)
9860         (amd64_linux_store_inferior_registers): Refactor as methods of
9861         amd64_linux_nat_target.
9862         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9863         * i386-linux-nat.c: Don't include "linux-nat.h".
9864         (i386_linux_nat_target): New class.
9865         (the_i386_linux_nat_target): New.
9866         (i386_linux_fetch_inferior_registers)
9867         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9868         as methods of i386_linux_nat_target.
9869         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9870         * inf-child.c (inf_child_ops): Delete.
9871         (inf_child_fetch_inferior_registers)
9872         (inf_child_store_inferior_registers): Delete.
9873         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9874         methods of inf_child_target.
9875         (inf_child_target::supports_terminal_ours)
9876         (inf_child_target::terminal_init)
9877         (inf_child_target::terminal_inferior)
9878         (inf_child_target::terminal_ours_for_output)
9879         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9880         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9881         New.
9882         (inf_child_open, inf_child_disconnect, inf_child_close)
9883         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9884         (inf_child_post_startup_inferior, inf_child_can_run)
9885         (inf_child_pid_to_exec_file): Refactor as methods of
9886         inf_child_target.
9887         (inf_child_follow_fork): Delete.
9888         (inf_child_target::can_create_inferior)
9889         (inf_child_target::can_attach): New.
9890         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9891         (inf_child_target::has_stack, inf_child_target::has_registers)
9892         (inf_child_target::has_execution): New.
9893         (inf_child_fileio_open, inf_child_fileio_pwrite)
9894         (inf_child_fileio_pread, inf_child_fileio_fstat)
9895         (inf_child_fileio_close, inf_child_fileio_unlink)
9896         (inf_child_fileio_readlink, inf_child_use_agent)
9897         (inf_child_can_use_agent): Refactor as methods of
9898         inf_child_target.
9899         (return_zero, inf_child_target): Delete.
9900         (inf_child_target::inf_child_target): New.
9901         * inf-child.h: Include "target.h".
9902         (inf_child_target): Delete function prototype.
9903         (inf_child_target): New class.
9904         (inf_child_open_target, inf_child_mourn_inferior)
9905         (inf_child_maybe_unpush_target): Delete.
9906         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9907         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9908         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9909         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9910         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9911         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9912         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9913         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9914         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9915         methods of inf_ptrace_target.
9916         (inf_ptrace_target): Delete function.
9917         * inf-ptrace.h: Include "inf-child.h".
9918         (inf_ptrace_target): Delete function declaration.
9919         (inf_ptrace_target): New class.
9920         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9921         * linux-nat.c (linux_target): New.
9922         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9923         (linux_nat_target::~linux_nat_target): New.
9924         (linux_child_post_attach, linux_child_post_startup_inferior)
9925         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9926         (linux_child_remove_fork_catchpoint)
9927         (linux_child_insert_vfork_catchpoint)
9928         (linux_child_remove_vfork_catchpoint)
9929         (linux_child_insert_exec_catchpoint)
9930         (linux_child_remove_exec_catchpoint)
9931         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9932         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9933         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9934         (linux_nat_stopped_data_address)
9935         (linux_nat_stopped_by_sw_breakpoint)
9936         (linux_nat_supports_stopped_by_sw_breakpoint)
9937         (linux_nat_stopped_by_hw_breakpoint)
9938         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9939         (linux_nat_kill, linux_nat_mourn_inferior)
9940         (linux_nat_xfer_partial, linux_nat_thread_alive)
9941         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9942         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9943         (linux_child_static_tracepoint_markers_by_strid)
9944         (linux_nat_is_async_p, linux_nat_can_async_p)
9945         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9946         (linux_nat_supports_multi_process)
9947         (linux_nat_supports_disable_randomization, linux_nat_async)
9948         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9949         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9950         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9951         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9952         methods of linux_nat_target.
9953         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9954         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9955         parameter.
9956         (check_stopped_by_watchpoint): Adjust.
9957         (linux_xfer_partial): Delete.
9958         (linux_target_install_ops, linux_target, linux_nat_add_target):
9959         Delete.
9960         (linux_nat_target::linux_nat_target): New.
9961         * linux-nat.h: Include "inf-ptrace.h".
9962         (linux_nat_target): New.
9963         (linux_target, linux_target_install_ops, linux_nat_add_target):
9964         Delete function declarations.
9965         (linux_target): Declare global.
9966         * linux-thread-db.c (thread_db_target): New.
9967         (thread_db_target::thread_db_target): New.
9968         (thread_db_ops): Delete.
9969         (the_thread_db_target): New.
9970         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9971         (thread_db_update_thread_list, thread_db_pid_to_str)
9972         (thread_db_extra_thread_info)
9973         (thread_db_thread_handle_to_thread_info)
9974         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9975         (thread_db_resume): Refactor as methods of thread_db_target.
9976         (init_thread_db_ops): Delete.
9977         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9978         * x86-linux-nat.c: Don't include "linux-nat.h".
9979         (super_post_startup_inferior): Delete.
9980         (x86_linux_nat_target::~x86_linux_nat_target): New.
9981         (x86_linux_child_post_startup_inferior)
9982         (x86_linux_read_description, x86_linux_enable_btrace)
9983         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9984         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9985         methods of x86_linux_nat_target.
9986         (x86_linux_create_target): Delete.  Bits folded ...
9987         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9988         pointer.
9989         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9990         (x86_linux_nat_target): New class.
9991         (x86_linux_create_target): Delete.
9992         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9993         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9994         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9995         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9996         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9997         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9998         make extern.
9999         (x86_use_watchpoints): Delete.
10000         * x86-nat.h: Include "breakpoint.h" and "target.h".
10001         (x86_use_watchpoints): Delete.
10002         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10003         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10004         (x86_insert_watchpoint, x86_remove_watchpoint)
10005         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10006         (x86_stopped_by_hw_breakpoint): New declarations.
10007         (x86_nat_target): New template class.
10008
10009         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10010         (the_ppc_linux_nat_target): New.
10011         (ppc_linux_fetch_inferior_registers)
10012         (ppc_linux_can_use_hw_breakpoint)
10013         (ppc_linux_region_ok_for_hw_watchpoint)
10014         (ppc_linux_ranged_break_num_registers)
10015         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10016         (ppc_linux_insert_mask_watchpoint)
10017         (ppc_linux_remove_mask_watchpoint)
10018         (ppc_linux_can_accel_watchpoint_condition)
10019         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10020         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10021         (ppc_linux_watchpoint_addr_within_range)
10022         (ppc_linux_masked_watch_num_registers)
10023         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10024         (ppc_linux_read_description): Refactor as methods of
10025         ppc_linux_nat_target.
10026         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10027
10028         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10029         (procfs_target): New class.
10030         (the_procfs_target): New.
10031         (procfs_target): Delete function.
10032         (procfs_auxv_parse, procfs_attach, procfs_detach)
10033         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10034         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10035         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10036         (procfs_create_inferior, procfs_update_thread_list)
10037         (procfs_thread_alive, procfs_pid_to_str)
10038         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10039         (procfs_stopped_data_address, procfs_insert_watchpoint)
10040         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10041         (proc_find_memory_regions, procfs_info_proc)
10042         (procfs_make_note_section): Refactor as methods of procfs_target.
10043         (_initialize_procfs): Adjust.
10044         * sol-thread.c (sol_thread_target): New class.
10045         (sol_thread_ops): Now a sol_thread_target.
10046         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10047         (sol_thread_fetch_registers, sol_thread_store_registers)
10048         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10049         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10050         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10051         (init_sol_thread_ops): Delete.
10052         (_initialize_sol_thread): Adjust.  Remove references to
10053         init_sol_thread_ops and complete_target_initialization.
10054
10055         * windows-nat.c (windows_nat_target): New class.
10056         (windows_fetch_inferior_registers)
10057         (windows_store_inferior_registers, windows_resume, windows_wait)
10058         (windows_attach, windows_detach, windows_pid_to_exec_file)
10059         (windows_files_info, windows_create_inferior)
10060         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10061         (windows_close, windows_pid_to_str, windows_xfer_partial)
10062         (windows_get_tib_address, windows_get_ada_task_ptid)
10063         (windows_thread_name, windows_thread_alive): Refactor as
10064         windows_nat_target methods.
10065         (do_initial_windows_stuff): Adjust.
10066         (windows_target): Delete function.
10067         (_initialize_windows_nat): Adjust.
10068
10069         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10070         (darwin_mourn_inferior, darwin_kill_inferior)
10071         (darwin_create_inferior, darwin_attach, darwin_detach)
10072         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10073         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10074         (darwin_supports_multi_process): Refactor as darwin_nat_target
10075         methods.
10076         (darwin_resume_to, darwin_files_info): Delete.
10077         (_initialize_darwin_inferior): Rename to ...
10078         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10079         * darwin-nat.h: Include "inf-child.h".
10080         (darwin_nat_target): New class.
10081         (darwin_complete_target): Delete.
10082         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10083         (darwin_target): New.
10084         (i386_darwin_fetch_inferior_registers)
10085         (i386_darwin_store_inferior_registers): Refactor as methods of
10086         darwin_nat_target.
10087         (darwin_complete_target): Delete, with ...
10088         (_initialize_i386_darwin_nat): ... bits factored out here.
10089
10090         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10091         (the_alpha_linux_nat_target): New.
10092         (alpha_linux_register_u_offset): Refactor as
10093         alpha_linux_nat_target method.
10094         (_initialize_alpha_linux_nat): Adjust.
10095         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10096         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10097         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10098         methods of linux_nat_trad_target.
10099         (linux_trad_target): Delete.
10100         * linux-nat-trad.h (linux_trad_target): Delete function.
10101         (linux_nat_trad_target): New class.
10102         * mips-linux-nat.c (mips_linux_nat_target): New class.
10103         (super_fetch_registers, super_store_registers, super_close):
10104         Delete.
10105         (the_mips_linux_nat_target): New.
10106         (mips64_linux_regsets_fetch_registers)
10107         (mips64_linux_regsets_store_registers)
10108         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10109         (mips_linux_register_u_offset, mips_linux_read_description)
10110         (mips_linux_can_use_hw_breakpoint)
10111         (mips_linux_stopped_by_watchpoint)
10112         (mips_linux_stopped_data_address)
10113         (mips_linux_region_ok_for_hw_watchpoint)
10114         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10115         (mips_linux_close): Refactor as methods of mips_linux_nat.
10116         (_initialize_mips_linux_nat): Adjust to C++ification.
10117
10118         * aix-thread.c (aix_thread_target): New class.
10119         (aix_thread_ops): Now an aix_thread_target.
10120         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10121         (aix_thread_fetch_registers, aix_thread_store_registers)
10122         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10123         (aix_thread_thread_alive, aix_thread_pid_to_str)
10124         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10125         Refactor as methods of aix_thread_target.
10126         (init_aix_thread_ops): Delete.
10127         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10128         and complete_target_initialization.
10129         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10130         (rs6000_nat_target): New class.
10131         (the_rs6000_nat_target): New.
10132         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10133         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10134         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10135         (super_create_inferior): Delete.
10136         (_initialize_rs6000_nat): Adjust to C++ification.
10137
10138         * arm-linux-nat.c (arm_linux_nat_target): New class.
10139         (the_arm_linux_nat_target): New.
10140         (arm_linux_fetch_inferior_registers)
10141         (arm_linux_store_inferior_registers, arm_linux_read_description)
10142         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10143         (arm_linux_remove_hw_breakpoint)
10144         (arm_linux_region_ok_for_hw_watchpoint)
10145         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10146         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10147         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10148         arm_linux_nat_target.
10149         (_initialize_arm_linux_nat): Adjust to C++ification.
10150
10151         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10152         (the_aarch64_linux_nat_target): New.
10153         (aarch64_linux_fetch_inferior_registers)
10154         (aarch64_linux_store_inferior_registers)
10155         (aarch64_linux_child_post_startup_inferior)
10156         (aarch64_linux_read_description)
10157         (aarch64_linux_can_use_hw_breakpoint)
10158         (aarch64_linux_insert_hw_breakpoint)
10159         (aarch64_linux_remove_hw_breakpoint)
10160         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10161         (aarch64_linux_region_ok_for_hw_watchpoint)
10162         (aarch64_linux_stopped_data_address)
10163         (aarch64_linux_stopped_by_watchpoint)
10164         (aarch64_linux_watchpoint_addr_within_range)
10165         (aarch64_linux_can_do_single_step): Refactor as methods of
10166         aarch64_linux_nat_target.
10167         (super_post_startup_inferior): Delete.
10168         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10169
10170         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10171         (the_hppa_linux_nat_target): New.
10172         (hppa_linux_fetch_inferior_registers)
10173         (hppa_linux_store_inferior_registers): Refactor as methods of
10174         hppa_linux_nat_target.
10175         (_initialize_hppa_linux_nat): Adjust to C++ification.
10176
10177         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10178         (the_ia64_linux_nat_target): New.
10179         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10180         (ia64_linux_stopped_data_address)
10181         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10182         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10183         ia64_linux_nat_target methods.
10184         (super_xfer_partial): Delete.
10185         (_initialize_ia64_linux_nat): Adjust to C++ification.
10186
10187         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10188         (the_m32r_linux_nat_target): New.
10189         (m32r_linux_fetch_inferior_registers)
10190         (m32r_linux_store_inferior_registers): Refactor as
10191         m32r_linux_nat_target methods.
10192         (_initialize_m32r_linux_nat): Adjust to C++ification.
10193
10194         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10195         (the_m68k_linux_nat_target): New.
10196         (m68k_linux_fetch_inferior_registers)
10197         (m68k_linux_store_inferior_registers): Refactor as
10198         m68k_linux_nat_target methods.
10199         (_initialize_m68k_linux_nat): Adjust to C++ification.
10200
10201         * s390-linux-nat.c (s390_linux_nat_target): New class.
10202         (the_s390_linux_nat_target): New.
10203         (s390_linux_fetch_inferior_registers)
10204         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10205         (s390_insert_watchpoint, s390_remove_watchpoint)
10206         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10207         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10208         (s390_auxv_parse, s390_read_description): Refactor as methods of
10209         s390_linux_nat_target.
10210         (_initialize_s390_nat): Adjust to C++ification.
10211
10212         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10213         (the_sparc_linux_nat_target): New.
10214         (_initialize_sparc_linux_nat): Adjust to C++ification.
10215         * sparc-nat.c (sparc_fetch_inferior_registers)
10216         (sparc_store_inferior_registers): Remove target_ops parameter.
10217         * sparc-nat.h (sparc_fetch_inferior_registers)
10218         (sparc_store_inferior_registers): Remove target_ops parameter.
10219         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10220         (the_sparc64_linux_nat_target): New.
10221         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10222
10223         * spu-linux-nat.c (spu_linux_nat_target): New class.
10224         (the_spu_linux_nat_target): New.
10225         (spu_child_post_startup_inferior, spu_child_post_attach)
10226         (spu_child_wait, spu_fetch_inferior_registers)
10227         (spu_store_inferior_registers, spu_xfer_partial)
10228         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10229         methods.
10230         (_initialize_spu_nat): Adjust to C++ification.
10231
10232         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10233         (the_tilegx_linux_nat_target): New.
10234         (fetch_inferior_registers, store_inferior_registers):
10235         Refactor as methods.
10236         (_initialize_tile_linux_nat): Adjust to C++ification.
10237
10238         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10239         (the_xtensa_linux_nat_target): New.
10240         (xtensa_linux_fetch_inferior_registers)
10241         (xtensa_linux_store_inferior_registers): Refactor as
10242         xtensa_linux_nat_target methods.
10243         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10244
10245         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10246         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10247         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10248         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10249         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10250         (fbsd_stopped_by_sw_breakpoint)
10251         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10252         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10253         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10254         (fbsd_post_startup_inferior, fbsd_post_attach)
10255         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10256         (fbsd_set_syscall_catchpoint)
10257         (super_xfer_partial, super_resume, super_wait)
10258         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10259         (fbsd_handle_debug_trap): Remove target_ops parameter.
10260         (fbsd_nat_add_target): Delete.
10261         * fbsd-nat.h: Include "inf-ptrace.h".
10262         (fbsd_nat_add_target): Delete.
10263         (USE_SIGTRAP_SIGINFO): Define.
10264         (fbsd_nat_target): New class.
10265
10266         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10267         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10268         (amd64bsd_target): Delete.
10269         * amd64-bsd-nat.h: New file.
10270         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10271         "x86-bsd-nat.h".
10272         (amd64_fbsd_nat_target): New class.
10273         (the_amd64_fbsd_nat_target): New.
10274         (amd64fbsd_read_description): Refactor as method of
10275         amd64_fbsd_nat_target.
10276         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10277         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10278         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10279         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10280         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10281         (i386bsd_target): Delete.
10282         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10283         (i386bsd_fetch_inferior_registers)
10284         (i386bsd_store_inferior_registers): Declare.
10285         (i386_bsd_nat_target): New class.
10286         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10287         (the_i386_fbsd_nat_target): New.
10288         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10289         i386_fbsd_nat_target methods.
10290         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10291         (_initialize_i386fbsd_nat): Adjust to C++ification.
10292         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10293         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10294         (_initialize_x86_bsd_nat): Adjust to C++ification.
10295         * x86-bsd-nat.h: Include "x86-nat.h".
10296         (x86bsd_target): Delete declaration.
10297         (x86bsd_nat_target): New class.
10298
10299         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10300         (the_aarch64_fbsd_nat_target): New.
10301         (aarch64_fbsd_fetch_inferior_registers)
10302         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10303         aarch64_fbsd_nat_target.
10304         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10305         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10306         (the_alpha_bsd_nat_target): New.
10307         (alphabsd_fetch_inferior_registers)
10308         (alphabsd_store_inferior_registers): Refactor as
10309         alpha_bsd_nat_target methods.
10310         (_initialize_alphabsd_nat): Refactor as methods of
10311         alpha_bsd_nat_target.
10312         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10313         (the_amd64_nbsd_nat_target): New.
10314         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10315         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10316         (the_amd64_obsd_nat_target): New.
10317         (_initialize_amd64obsd_nat): Adjust to C++ification.
10318         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10319         (the_arm_fbsd_nat_target): New.
10320         (arm_fbsd_fetch_inferior_registers)
10321         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10322         (_initialize_arm_fbsd_nat): Refactor as methods of
10323         arm_fbsd_nat_target.
10324         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10325         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10326         (the_arm_netbsd_nat_target): New.
10327         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10328         arm_netbsd_nat_target.
10329         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10330         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10331         (the_hppa_nbsd_nat_target): New.
10332         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10333         hppa_nbsd_nat_target methods.
10334         (_initialize_hppanbsd_nat): Adjust to C++ification.
10335         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10336         (the_hppa_obsd_nat_target): New.
10337         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10338         methods of hppa_obsd_nat_target.
10339         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10340         add_target.
10341         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10342         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10343         add_target.
10344         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10345         (_initialize_i386obsd_nat): Use add_target.
10346         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10347         (the_m68k_bsd_nat_target): New.
10348         (m68kbsd_fetch_inferior_registers)
10349         (m68kbsd_store_inferior_registers): Refactor as methods of
10350         m68k_bsd_nat_target.
10351         (_initialize_m68kbsd_nat): Adjust to C++ification.
10352         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10353         (the_mips_fbsd_nat_target): New.
10354         (mips_fbsd_fetch_inferior_registers)
10355         (mips_fbsd_store_inferior_registers): Refactor as methods of
10356         mips_fbsd_nat_target.
10357         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10358         add_target.
10359         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10360         (the_mips_nbsd_nat_target): New.
10361         (mipsnbsd_fetch_inferior_registers)
10362         (mipsnbsd_store_inferior_registers): Refactor as methods of
10363         mips_nbsd_nat_target.
10364         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10365         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10366         (the_mips64_obsd_nat_target): New.
10367         (mips64obsd_fetch_inferior_registers)
10368         (mips64obsd_store_inferior_registers): Refactor as methods of
10369         mips64_obsd_nat_target.
10370         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10371         add_target.
10372         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10373         nbsd_nat_target.
10374         * nbsd-nat.h: Include "inf-ptrace.h".
10375         (nbsd_nat_target): New class.
10376         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10377         (obsd_wait): Refactor as methods of obsd_nat_target.
10378         (obsd_add_target): Delete.
10379         * obsd-nat.h: Include "inf-ptrace.h".
10380         (obsd_nat_target): New class.
10381         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10382         (the_ppc_fbsd_nat_target): New.
10383         (ppcfbsd_fetch_inferior_registers)
10384         (ppcfbsd_store_inferior_registers): Refactor as methods of
10385         ppc_fbsd_nat_target.
10386         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10387         add_target.
10388         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10389         (the_ppc_nbsd_nat_target): New.
10390         (ppcnbsd_fetch_inferior_registers)
10391         (ppcnbsd_store_inferior_registers): Refactor as methods of
10392         ppc_nbsd_nat_target.
10393         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10394         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10395         (the_ppc_obsd_nat_target): New.
10396         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10397         methods of ppc_obsd_nat_target.
10398         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10399         add_target.
10400         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10401         (the_sh_nbsd_nat_target): New.
10402         (shnbsd_fetch_inferior_registers)
10403         (shnbsd_store_inferior_registers): Refactor as methods of
10404         sh_nbsd_nat_target.
10405         (_initialize_shnbsd_nat): Adjust to C++ification.
10406         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10407         (inf_ptrace_xfer_partial): Delete.
10408         (sparc_xfer_partial, sparc_target): Delete.
10409         * sparc-nat.h (sparc_fetch_inferior_registers)
10410         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10411         (sparc_target): Delete function declaration.
10412         (sparc_target): New template class.
10413         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10414         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10415         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10416         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10417         add_target.
10418         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10419         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10420         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10421         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10422         add_target.
10423         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10424         (the_vax_bsd_nat_target): New.
10425         (vaxbsd_fetch_inferior_registers)
10426         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10427         methods.
10428         (_initialize_vaxbsd_nat): Adjust to C++ification.
10429
10430         * bsd-kvm.c (bsd_kvm_target): New class.
10431         (bsd_kvm_ops): Now a bsd_kvm_target.
10432         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10433         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10434         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10435         bsd_kvm_target.
10436         (bsd_kvm_return_one): Delete.
10437         (bsd_kvm_add_target): Adjust to C++ification.
10438
10439         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10440         (nto_procfs_target_procfs): New classes.
10441         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10442         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10443         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10444         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10445         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10446         (procfs_remove_hw_breakpoint, procfs_resume)
10447         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10448         (procfs_kill_inferior, procfs_store_registers)
10449         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10450         as methods of nto_procfs_target.
10451         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10452         (nto_native_ops): Delete.
10453         (procfs_open, procfs_native_open): Delete.
10454         (nto_native_ops): Now an nto_procfs_target_native.
10455         (init_procfs_targets): Adjust to C++ification.
10456         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10457         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10458         Refactor as methods of nto_procfs_target.
10459
10460         * go32-nat.c (go32_nat_target): New class.
10461         (the_go32_nat_target): New.
10462         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10463         (go32_store_registers, go32_xfer_partial, go32_files_info)
10464         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10465         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10466         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10467         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10468         (go32_target): Delete.
10469         (_initialize_go32_nat): Adjust to C++ification.
10470
10471         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10472         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10473         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10474         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10475         gnu_nat_target.
10476         (gnu_target): Delete.
10477         * gnu-nat.h (gnu_target): Delete.
10478         (gnu_nat_target): New class.
10479         * i386-gnu-nat.c (gnu_base_target): New.
10480         (i386_gnu_nat_target): New class.
10481         (the_i386_gnu_nat_target): New.
10482         (_initialize_i386gnu_nat): Adjust to C++ification.
10483
10484 2018-05-02  Pedro Alves  <palves@redhat.com>
10485
10486         * bfd-target.c (target_bfd_xclose): Rename to ...
10487         (target_bfd_close): ... this.
10488         (target_bfd_reopen): Adjust.
10489         * target.c (target_close): Remove references to to_xclose.
10490         * target.h (target_ops::to_xclose): Delete.
10491         (target_ops::to_close): Update comments.
10492
10493 2018-05-02  Pedro Alves  <palves@redhat.com>
10494
10495         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10496         "linux-nat.h".
10497         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10498         * inf-ptrace.c (inf_ptrace_register_u_offset)
10499         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10500         (inf_ptrace_store_register, inf_ptrace_store_registers)
10501         (inf_ptrace_trad_target): Move to ...
10502         * linux-nat-trad.c: ... this new file.
10503         * linux-nat-trad.h: New file.
10504         * linux-nat.c (linux_target_install_ops): Make extern.
10505         (linux_trad_target): Delete.
10506         * linux-nat.h (linux_trad_target): Delete declaration.
10507         (linux_target_install_ops): Declare.
10508         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10509         "linux-nat.h".
10510
10511 2018-05-02  Pedro Alves  <palves@redhat.com>
10512
10513         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10514         procfs_target/add_target here.
10515         * procfs.c (procfs_target): Make static.
10516         (_initialize_procfs): Call add_target here.
10517         * procfs.h (struct target_ops): Remove forward declaration.
10518         (procfs_target): Remove declaration.
10519         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10520
10521 2018-05-02  Pedro Alves  <palves@redhat.com>
10522
10523         * procfs.c (procfs_stopped_by_watchpoint)
10524         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10525         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10526         Forward declare.
10527         (procfs_use_watchpoints): Delete, move contents...
10528         (procfs_target): ... here.
10529         * procfs.h (procfs_use_watchpoints): Delete declaration.
10530         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10531         procfs_use_watchpoints.
10532         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10533         procfs_use_watchpoints.
10534
10535 2018-05-02  Tom Tromey  <tom@tromey.com>
10536
10537         PR python/20084:
10538         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10539         and var_zuinteger_unlimited.
10540         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10541         and PARAM_ZUINTEGER_UNLIMITED.
10542         (set_parameter_value): Handle var_zuinteger and
10543         var_zuinteger_unlimited.
10544         (add_setshow_generic): Likewise.
10545         (parmpy_init): Likewise.
10546
10547 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10548
10549         PR rust/23124
10550         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10551         pointer is not null before dereferencing it.
10552
10553 2018-04-30  Tom Tromey  <tom@tromey.com>
10554
10555         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10556         is_mi_like_p.
10557
10558 2018-04-30  Tom Tromey  <tom@tromey.com>
10559
10560         * breakpoint.c (mention): Remove use of is_mi_like_p.
10561         (print_mention_ranged_breakpoint): Likewise.
10562         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10563         of is_mi_like_p.
10564
10565 2018-04-30  Tom Tromey  <tom@tromey.com>
10566
10567         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10568
10569 2018-04-30  Tom Tromey  <tom@tromey.com>
10570
10571         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10572         (info_spu_event_command): Remove some uses of is_mi_like_p.
10573
10574 2018-04-30  Tom Tromey  <tom@tromey.com>
10575
10576         * python/py-framefilter.c (py_print_single_arg)
10577         (enumerate_locals, py_print_args, py_print_frame): Remove some
10578         uses of is_mi_like_p.
10579
10580 2018-04-30  Tom Tromey  <tom@tromey.com>
10581
10582         * ui-out.c: Update.
10583         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10584         * ui-out.h (ui_out::is_mi_like_p): Now const.
10585         (ui_out::do_is_mi_like_p): Now const.
10586         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10587
10588 2018-04-30  Tom Tromey  <tom@tromey.com>
10589
10590         * varobj.c (varobj_set_visualizer): Use new_reference.
10591         * python/python.c (gdbpy_decode_line): Use new_reference.
10592         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10593         new_reference.
10594
10595 2018-04-30  Tom Tromey  <tom@tromey.com>
10596
10597         * varobj.c (install_new_value): Use new_reference.
10598         * value.h (value_incref): Return void.  Swap intro comment with
10599         value_decref.
10600         * value.c (set_value_parent): Use new_reference.
10601         (value_incref): Return void.  Update intro comment.
10602         (release_value): Use new_reference.
10603         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10604
10605 2018-04-30  Tom Tromey  <tom@tromey.com>
10606
10607         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10608         * gdb_bfd.h (new_bfd_ref): Remove.
10609         (gdb_bfd_open): Update comment.
10610         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10611         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10612         (gdb_bfd_fdopenr): Use new_reference.
10613         * exec.c (exec_file_attach): Use new_reference.
10614
10615 2018-04-30  Tom Tromey  <tom@tromey.com>
10616
10617         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10618         method.
10619
10620 2018-04-30  Tom Tromey  <tom@tromey.com>
10621
10622         * jit.c (jit_read_code_entry): Use type_align.
10623         * i386-tdep.c (i386_gdbarch_init): Don't call
10624         set_gdbarch_long_long_align_bit.
10625         * gdbarch.sh: Remove long_long_align_bit.
10626         * gdbarch.c, gdbarch.h: Rebuild.
10627         * arc-tdep.c (arc_type_align): New function.
10628         (arc_gdbarch_init): Use arc_type_align.  Don't call
10629         set_gdbarch_long_long_align_bit.
10630
10631 2018-04-30  Tom Tromey  <tom@tromey.com>
10632
10633         * rust-lang.c (rust_type_alignment): Remove.
10634         (rust_composite_type): Use type_align.
10635
10636 2018-04-30  Tom Tromey  <tom@tromey.com>
10637
10638         * NEWS: Mention Type.align.
10639         * python/py-type.c (typy_get_alignof): New function.
10640         (type_object_getset): Add "alignof".
10641
10642 2018-04-30  Tom Tromey  <tom@tromey.com>
10643
10644         PR exp/17095:
10645         * NEWS: Update.
10646         * std-operator.def (UNOP_ALIGNOF): New operator.
10647         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10648         New.
10649         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10650         * c-lang.c (c_op_print_tab): Add alignof.
10651         * c-exp.y (ALIGNOF): New token.
10652         (exp): Add "ALIGNOF" production.
10653         (ident_tokens): Add _Alignof and alignof.
10654
10655 2018-04-30  Tom Tromey  <tom@tromey.com>
10656
10657         * i386-tdep.c (i386_type_align): New function.
10658         (i386_gdbarch_init): Update.
10659         * gdbarch.sh (type_align): New method.
10660         * gdbarch.c, gdbarch.h: Rebuild.
10661         * arch-utils.h (default_type_align): Declare.
10662         * arch-utils.c (default_type_align): New function.
10663         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10664         (struct type) <align_log2>: New field.
10665         <instance_flags>: Now a bitfield.
10666         (TYPE_RAW_ALIGN): New macro.
10667         (type_align, type_raw_align, set_type_align): Declare.
10668         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10669         functions.
10670         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10671         (get_alignment, maybe_set_alignment): New functions.
10672         (read_structure_type, read_enumeration_type, read_array_type)
10673         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10674         (read_subrange_type, read_base_type): Set type alignment.
10675
10676 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10677
10678         * dwarf2read.c (read_index_from_section): Use bool.
10679
10680 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10681
10682         PR gdb/22950
10683         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10684         with #ifdef.
10685
10686 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10687
10688         PR build/22873
10689         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10690         last step, and do it atomically.
10691
10692 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10693
10694         * compile/compile-c-types.c (convert_int, convert_float):
10695         Update for C FE v1.
10696
10697 2018-04-27  Tom Tromey  <tom@tromey.com>
10698
10699         PR rust/22545:
10700         * rust-lang.c (rust_inclusive_range_type_p): New function.
10701         (rust_range): Handle inclusive ranges.
10702         (rust_compute_range): Likewise.
10703         * rust-exp.y (struct rust_op) <inclusive>: New field.
10704         (DOTDOTEQ): New constant.
10705         (range_expr): Add "..=" productions.
10706         (operator_tokens): Add "..=" token.
10707         (ast_range): Add "inclusive" parameter.
10708         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10709         ranges.
10710         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10711         bounds values.
10712         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10713         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10714         Update comments.
10715         * expprint.c (print_subexp_standard): Handle new bounds values.
10716         (dump_subexp_body_standard): Likewise.
10717
10718 2018-04-27  Tom Tromey  <tom@tromey.com>
10719
10720         * configure: Rebuild.
10721         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10722         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10723         "OVERRIDE".
10724         (class symbol_needs_eval_context): Likewise.
10725         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10726         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10727         "virtual".
10728         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10729         "override".
10730         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10731         * aarch64-tdep.c (instruction_reader::read): Use "override".
10732         (instruction_reader_test::read): Likewise.
10733         * arm-tdep.c (instruction_reader::read): Use "override".
10734         (instruction_reader_thumb::read): Likewise.
10735
10736 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10737
10738         PR remote/9665
10739         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10740         instead of remote_send.
10741         (remote_send): Remove.
10742
10743 2018-04-26  Pedro Alves  <palves@redhat.com>
10744
10745         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10746         find_function_start_sal instead of find_pc_line.
10747
10748 2018-04-26  Pedro Alves  <palves@redhat.com>
10749
10750         * breakpoint.c (set_breakpoint_location_function): Handle
10751         mst_data_gnu_ifunc.
10752         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10753         * elfread.c (elf_symtab_read): Give data symbols with
10754         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10755         (elf_rel_plt_read): Update comment.
10756         * linespec.c (convert_linespec_to_sals): Handle
10757         mst_data_gnu_ifunc.
10758         (minsym_found): Handle mst_data_gnu_ifunc.
10759         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10760         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10761         * parse.c (find_minsym_type_and_address): Handle
10762         mst_data_gnu_ifunc.
10763         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10764         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10765         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10766         comment.
10767         <mst_data_gnu_ifunc>: New enumerator.
10768
10769 2018-04-26  Pedro Alves  <palves@redhat.com>
10770
10771         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10772         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10773         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10774         Handle it.
10775         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10776         (lookup_minimal_symbol_by_pc): Adjust.
10777         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10778         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10779         * minsyms.h (lookup_msym_prefer): New enum.
10780         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10781         parameter by a lookup_msym_prefer parameter.
10782
10783 2018-04-26  Pedro Alves  <palves@redhat.com>
10784
10785         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10786         ends in "@plt" instead of looking at the symbol's section.
10787
10788 2018-04-26  Pedro Alves  <palves@redhat.com>
10789
10790         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10791         all references.
10792         (find_pc_partial_function_gnu_ifunc): Rename to ...
10793         (find_pc_partial_function): ... this, and remove references to
10794         'is_gnu_ifunc_p'.
10795         (find_pc_partial_function): Delete old implementation.
10796         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10797
10798 2018-04-26  Pedro Alves  <palves@redhat.com>
10799
10800         * linespec.c (struct bound_minimal_symbol_search_key): New.
10801         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10802         skip first line if we found a GNU ifunc minimal symbol by name.
10803         (compare_msymbols): Change parameters to work with a destructured
10804         lhs minsym.
10805         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10806         functions.
10807
10808 2018-04-26  Pedro Alves  <palves@redhat.com>
10809
10810         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10811         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10812         address/name.
10813         (add_location_to_breakpoint): Store the minsym and the objfile in
10814         the breakpoint location.
10815         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10816         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10817         Record the minsym in the sal.
10818         * symtab.h (symtab_and_line) <msymbol>: New field.
10819
10820 2018-04-26  Pedro Alves  <palves@redhat.com>
10821
10822         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10823         unless we actually resolved the ifunc.
10824
10825 2018-04-26  Pedro Alves  <palves@redhat.com>
10826
10827         * c-exp.y (variable production): Prefer ifunc minsyms over
10828         regular function symbols.
10829         * symtab.c (find_gnu_ifunc): New function.
10830         * minsyms.h (lookup_msym_prefer): New enum.
10831         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10832         parameter by a lookup_msym_prefer parameter.
10833         * symtab.h (find_gnu_ifunc): New declaration.
10834
10835 2018-04-26  Pedro Alves  <palves@redhat.com>
10836
10837         * blockframe.c (find_gnu_ifunc_target_type): New function.
10838         (find_function_type): New.
10839         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10840         return a value with a memory address.
10841         (eval_call): For calls to GNU ifunc functions, try to find the
10842         type of the target function from the type that the resolver
10843         returns.
10844         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10845         symbols.
10846         * infcall.c (find_function_return_type): Delete.
10847         (find_function_addr): Add 'function_type' parameter.  For calls to
10848         GNU ifunc functions, try to find the type of the target function
10849         from the type that the resolver returns, and return it via
10850         FUNCTION_TYPE.
10851         (call_function_by_hand_dummy): Adjust to use the function type
10852         returned by find_function_addr.
10853         (find_function_addr): Add 'function_type' parameter and move
10854         description here.
10855         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10856         declarations.
10857
10858 2018-04-26  Pedro Alves  <palves@redhat.com>
10859
10860         * c-exp.y (variable production): Skip finding an alias for ifunc
10861         symbols.
10862
10863 2018-04-26  Pedro Alves  <palves@redhat.com>
10864
10865         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10866
10867 2018-04-25  Pedro Alves  <palves@redhat.com>
10868
10869         * infcmd.c (kill_command): Print the pid as string, not the whole
10870         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10871         message.
10872         * remote.c (remote_detach_1): Print the pid as string, not the
10873         whole thread's ptid.
10874
10875 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10876             Sergio Durigan Junior  <sergiodj@redhat.com>
10877             Pedro Alves  <palves@redhat.com>
10878
10879         * infcmd.c (kill_command): Print message when inferior has
10880         been killed.
10881         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10882         '1'.
10883         (add_inferior): Improve message printed when
10884         'print_inferior_events' is on.
10885         (exit_inferior): Remove message printed when
10886         'print_inferior_events' is on.
10887         (detach_inferior): Improve message printed when
10888         'print_inferior_events' is on.
10889         (initialize_inferiors): Use 'add_inferior_silent' to set
10890         'current_inferior_'.
10891         * inferior.h (print_inferior_events): Declare here as
10892         'extern'.
10893         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10894         '[Detaching...]' messages when 'print_inferior_events' is on.
10895         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10896         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10897         'Detaching after fork from child...', replace it by '... from
10898         parent...'.
10899         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10900         prefix/suffix when printing 'Detaching...' messages.  Print
10901         them when 'print_inferior_events' is on.
10902         * remote.c (remote_detach_1): Print message when detaching
10903         from inferior and '!is_fork_parent'.
10904
10905 2018-04-24  Tom Tromey  <tom@tromey.com>
10906
10907         * cli-out.h: Reindent.
10908
10909 2018-04-24  Tom Tromey  <tom@tromey.com>
10910
10911         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10912         (cli_ui_out::do_field_string): Use fputs_filtered.
10913         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10914
10915 2018-04-23  Tom Tromey  <tom@tromey.com>
10916
10917         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10918         gdb::unique_xmalloc_ptr.
10919
10920 2018-04-23  Tom Tromey  <tom@tromey.com>
10921
10922         * configure: Rebuild.
10923
10924 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10925
10926         PR gdb/23095
10927         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10928         prepare_for_testing.  Set normal_bp to r_debug_state if target
10929         is bsd.
10930
10931 2018-04-21  Pedro Alves  <palves@redhat.com>
10932             Rajendra SY  <rajendra.sy@gmail.com>
10933
10934         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10935         * remote.c (extended_remote_attach): In all-stop mode, mark the
10936         thread as executing.
10937
10938 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10939
10940         * thread.c (thread_apply_all_command): Fix comment.
10941         (thread_command): Fix comment.
10942
10943 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10944
10945         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10946         parameter.
10947         * features/aarch64-core.c (create_feature_aarch64_core):
10948         Regenerate.
10949         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10950         Likewise.
10951         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10952         Likewise.
10953         * features/i386/32bit-avx512.c
10954         (create_feature_i386_32bit_avx512): Likewise.
10955         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10956         Likewise.
10957         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10958         Likewise.
10959         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10960         Likewise.
10961         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10962         Likewise.
10963         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10964         Likewise.
10965         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10966         Likewise.
10967         * features/i386/64bit-avx512.c
10968         (create_feature_i386_64bit_avx512): Likewise.
10969         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10970         Likewise.
10971         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10972         Likewise.
10973         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10974         Likewise.
10975         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10976         Likewise.
10977         * features/i386/64bit-segments.c
10978         (create_feature_i386_64bit_segments): Likewise.
10979         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10980         Likewise.
10981         * features/i386/x32-core.c
10982         (create_feature_i386_x32_core): Likewise.
10983         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10984         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10985         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10986         * target-descriptions.c: In generated code, don't pass xml
10987         filename.
10988
10989 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10990
10991         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10992         (print_xml_feature::visit_post): Likewise.
10993         (print_xml_feature::visit): Likewise.
10994         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10995         (print_xml_feature): Add new class.
10996         * regformats/regdat.sh: Null xmltarget on feature targets.
10997         * target-descriptions.c (struct target_desc): Add xmltarget.
10998         (maintenance_check_tdesc_xml_convert): Add unittest function.
10999         (tdesc_get_features_xml): Add function to get xml.
11000         (maintenance_check_xml_descriptions): Test xml generation.
11001         * xml-tdesc.c (string_read_description_xml): Add function.
11002         * xml-tdesc.h (string_read_description_xml): Add declaration.
11003
11004 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11005
11006         * features/Makefile: Add feature marker to targets with new style
11007         target descriptions.
11008         * regformats/aarch64.dat: Regenerate.
11009         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11010         * regformats/i386/amd64-avx-linux.dat: Likewise.
11011         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11012         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11013         * regformats/i386/amd64-linux.dat: Likewise.
11014         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11015         * regformats/i386/amd64.dat: Likewise.
11016         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11017         * regformats/i386/i386-avx-linux.dat: Likewise.
11018         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11019         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11020         * regformats/i386/i386-linux.dat: Likewise.
11021         * regformats/i386/i386-mmx-linux.dat: Likewise.
11022         * regformats/i386/i386-mpx-linux.dat: Likewise.
11023         * regformats/i386/i386.dat: Likewise.
11024         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11025         * regformats/i386/x32-avx-linux.dat: Likewise.
11026         * regformats/i386/x32-linux.dat: Likewise.
11027         * regformats/tic6x-c62x-linux.dat: Likewise.
11028         * regformats/tic6x-c64x-linux.dat: Likewise.
11029         * regformats/tic6x-c64xp-linux.dat: Likewise.
11030         * regformats/regdat.sh: Parse feature marker.
11031
11032 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11033
11034         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11035         (tdesc_osabi_name): Likewise.
11036         * target-descriptions.c (tdesc_architecture_name): Add new
11037         function.
11038         (tdesc_osabi_name): Likewise.
11039
11040 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11041
11042         * common/tdesc.c (tdesc_predefined_type): Move to here.
11043         (tdesc_named_type): Likewise.
11044         (tdesc_create_vector): Likewise.
11045         (tdesc_create_struct): Likewise.
11046         (tdesc_set_struct_size): Likewise.
11047         (tdesc_create_union): Likewise.
11048         (tdesc_create_flags): Likewise.
11049         (tdesc_create_enum): Likewise.
11050         (tdesc_add_field): Likewise.
11051         (tdesc_add_typed_bitfield): Likewise.
11052         (tdesc_add_bitfield): Likewise.
11053         (tdesc_add_flag): Likewise.
11054         (tdesc_add_enum_value): Likewise.
11055         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11056         (struct tdesc_type_vector): Likewise.
11057         (struct tdesc_type_field): Likewise.
11058         (struct tdesc_type_with_fields): Likewise.
11059         (tdesc_create_enum): Add declaration.
11060         (tdesc_add_typed_bitfield): Likewise.
11061         (tdesc_add_enum_value): Likewise.
11062         * target-descriptions.c (tdesc_type_field): Move from here.
11063         (tdesc_type_builtin): Likewise.
11064         (tdesc_type_vector): Likewise.
11065         (tdesc_type_with_fields): Likewise.
11066         (tdesc_predefined_types): Likewise.
11067         (tdesc_named_type): Likewise.
11068         (tdesc_create_vector): Likewise.
11069         (tdesc_create_struct): Likewise.
11070         (tdesc_set_struct_size): Likewise.
11071         (tdesc_create_union): Likewise.
11072         (tdesc_create_flags): Likewise.
11073         (tdesc_create_enum): Likewise.
11074         (tdesc_add_field): Likewise.
11075         (tdesc_add_typed_bitfield): Likewise.
11076         (tdesc_add_bitfield): Likewise.
11077         (tdesc_add_flag): Likewise.
11078         (tdesc_add_enum_value): Likewise.
11079         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11080         (tdesc_add_typed_bitfield): Likewise.
11081         (tdesc_add_enum_value): Likewise.
11082
11083 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11084
11085         * common/tdesc.c (tdesc_feature::accept): Move to here.
11086         (tdesc_feature::operator==): Likewise.
11087         (tdesc_create_reg): Likewise.
11088         * common/tdesc.h (tdesc_type_kind): Likewise.
11089         (struct tdesc_type): Likewise.
11090         (struct tdesc_feature): Likewise.
11091         * regformats/regdat.sh: Create a feature.
11092         * target-descriptions.c (tdesc_type_kind): Move from here.
11093         (tdesc_type): Likewise.
11094         (tdesc_type_up): Likewise.
11095         (tdesc_feature): Likewise.
11096         (tdesc_create_reg): Likewise.
11097
11098 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11099
11100         * Makefile.in: Add arch/tdesc.c
11101         * common/tdesc.c: New file.
11102         * common/tdesc.h (tdesc_element_visitor): Move to here.
11103         (tdesc_element): Likewise.
11104         (tdesc_reg): Likewise.
11105         (tdesc_reg_up): Likewise.
11106         * regformats/regdef.h (reg): Add offset to constructors.
11107         * target-descriptions.c (tdesc_element_visitor): Move from here.
11108         (tdesc_element): Likewise.
11109         (tdesc_reg): Likewise.
11110         (tdesc_reg_up): Likewise.
11111
11112 2018-04-17  Tom Tromey  <tom@tromey.com>
11113
11114         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11115         discriminant field.
11116
11117 2018-04-17  Tom Tromey  <tom@tromey.com>
11118
11119         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11120
11121 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11122
11123         * symtab.c (print_symbol_info): Skip printing filename and line
11124         number when `last' is NULL.
11125         (symtab_symbol_info): Use empty string instead of NULL for first
11126         invocation of print_symbol_info.
11127         (rbreak_command): Pass NULL to `last' parameter of
11128         print_symbol_info.
11129
11130 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11131
11132         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11133         instead of nullptr.
11134
11135 2018-04-16  Pedro Alves  <palves@redhat.com>
11136
11137         * MAINTAINERS (sh): Remove.
11138         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11139         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11140         (ALLDEPFILES): Remove sh64-tdep.c.
11141         * NEWS: Mentions that support for SH-5/SH64 is removed.
11142         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11143         (sh*-*-openbsd*): Ditto.
11144         (sh64-*-elf*): Remove.
11145         (sh*): Remove.
11146         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11147         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11148         * sh-tdep.c: No longer include "sh64-tdep.h".
11149         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11150         * sh64-tdep.c, sh64-tdep.h: Remove files.
11151
11152 2018-04-16  Pedro Alves  <palves@redhat.com>
11153
11154         * MAINTAINERS: Remove m88k.
11155         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11156         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11157         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11158         * NEWS: Mention that support for m88k was removed.
11159         * configure.host (m88*-*-*): Remove support.
11160         * configure.nat (m88k-*-*): Remove support.
11161         * configure.tgt (m88*-*-openbsd*): Remove.
11162         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11163
11164 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11165
11166         * configure.tgt (x86_tobjs): New variable.
11167         (amd64_tobjs, i386_tobjs): Use it.
11168
11169 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11170
11171         * symtab.c (print_symbol_info): Precede the symbol definition by
11172         the line number when available.
11173         * NEWS: Advertise this enhancement.
11174
11175 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11176
11177         * NEWS (New options): announce set/show record btrace cpu.
11178         * btrace.c: Include record-btrace.h.
11179         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11180         the vendor is unknown.
11181         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11182         Maybe overwrite the btrace configuration's cpu.
11183         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11184         (btrace_fetch): Add cpu parameter.  Update callers.
11185         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11186         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11187         errata workarounds if the vendor is unknown.
11188         * python/py-record-btrace.c: Include record-btrace.h.
11189         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11190         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11191         * record-btrace.c (record_btrace_cpu_state_kind): New.
11192         (record_btrace_cpu): New.
11193         (set_record_btrace_cpu_cmdlist): New.
11194         (record_btrace_get_cpu): New.
11195         (require_btrace_thread, record_btrace_info)
11196         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11197         (cmd_set_record_btrace_cpu_none): New.
11198         (cmd_set_record_btrace_cpu_auto): New.
11199         (cmd_set_record_btrace_cpu): New.
11200         (cmd_show_record_btrace_cpu): New.
11201         (_initialize_record_btrace): Initialize set/show record btrace cpu
11202         commands.
11203         * record-btrace.h (record_btrace_get_cpu): New.
11204
11205 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11206
11207         * record.c (set_record_command): Fix typo in message.
11208
11209 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11210
11211         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11212
11213 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11214
11215         * infrun.c (process_event_stop_test): Call
11216         gdbarch_in_indirect_branch_thunk.
11217         * gdbarch.sh (in_indirect_branch_thunk): New.
11218         * gdbarch.c: Regenerated.
11219         * gdbarch.h: Regenerated.
11220         * x86-tdep.h: New.
11221         * x86-tdep.c: New.
11222         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11223         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11224         (ALLDEPFILES): Add x86-tdep.c.
11225         * arch-utils.h (default_in_indirect_branch_thunk): New.
11226         * arch-utils.c (default_in_indirect_branch_thunk): New.
11227         * i386-tdep: Include x86-tdep.h.
11228         (i386_in_indirect_branch_thunk): New.
11229         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11230         function.
11231         * amd64-tdep: Include x86-tdep.h.
11232         (amd64_in_indirect_branch_thunk): New.
11233         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11234
11235 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11236
11237         PR gdb/23053
11238         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11239         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11240         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11241         regression.
11242
11243 2018-04-12  Tom Tromey  <tom@tromey.com>
11244
11245         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11246         (rust_evaluate_subexp): Likewise.
11247
11248 2018-04-12  Pedro Alves  <palves@redhat.com>
11249
11250         * procfs.c (procfs_detach): Make forward declaration's prototype
11251         match definition's protototype.
11252         (proc_get_LDT_entry): Remove stale do_cleanups call.
11253
11254 2018-04-12  Pedro Alves  <palves@redhat.com>
11255
11256         * target.h (target_ops::to_has_exited): Delete.
11257         (target_has_exited): Delete.
11258         * target-delegates.c: Regenerate.
11259
11260 2018-04-11  Pedro Alves  <palves@redhat.com>
11261
11262         * target.c (fileio_fh_t::t): Add comment.
11263         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11264         (target_fileio_close): Handle a NULL target.
11265         (invalidate_fileio_fh): New.
11266         (target_close): Call it.
11267         * remote.c (remote_hostio_send_command): No longer check whether
11268         remote_desc is open.
11269
11270 2018-04-11  Pedro Alves  <palves@redhat.com>
11271
11272         * target.c (fileio_fh_t): Make it a named struct instead of a
11273         typedef.
11274         (fileio_fh_t::is_closed): New method.
11275         (DEF_VEC_O (fileio_fh_t)): Remove.
11276         (fileio_fhandles): Now a std::vector.
11277         (is_closed_fileio_fh): Delete.
11278         (acquire_fileio_fd): Adjust.  Rename parameters.
11279         (release_fileio_fd): Adjust.
11280         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11281         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11282         (target_fileio_close): Adjust.
11283
11284 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11285
11286         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11287         index.
11288
11289 2018-04-10  Pedro Alves  <palves@redhat.com>
11290
11291         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11292         (scoped_finish_thread_state): New class.
11293         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11294         cleanup.
11295         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11296         (fetch_inferior_event, normal_stop): Likewise.
11297         * thread.c (finish_thread_state_cleanup): Delete.
11298
11299 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11300             Pedro Alves  <palves@redhat.com>
11301
11302         * value.c: Include "selftest.h" and "common/array-view.h".
11303         (struct range) <operator ==>: New.
11304         (test_ranges_contain): New.
11305         (check_ranges_vector): New.
11306         (test_insert_into_bit_range_vector): New.
11307         (_initialize_values): Register selftests.
11308         * common/array-view.h (operator==, operator!=): New.
11309
11310 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11311
11312         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11313         an iterator.
11314         * inline-frame.c: Include <algorithm>.
11315         (struct inline_state): Add constructor.
11316         (inline_state_s): Remove.
11317         (DEF_VEC_O(inline_state_s)): Remove.
11318         (inline_states): Change type to std::vector.
11319         (find_inline_frame_state): Adjust to std::vector.
11320         (allocate_inline_frame_state): Remove.
11321         (clear_inline_frame_state): Adjust to std::vector.
11322         (skip_inline_frames): Adjust to std::vector.
11323
11324 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11325
11326         * tracepoint.h (struct trace_state_variable): Add constructor.
11327         <name>: Change type to std::string.
11328         * tracepoint.c (tsv_s): Remove.
11329         (DEF_VEC_O(tsv_s)): Remove.
11330         (tvariables): Change to std::vector.
11331         (create_trace_state_variable): Adjust to std::vector.
11332         (find_trace_state_variable): Likewise.
11333         (find_trace_state_variable_by_number): Likewise.
11334         (delete_trace_state_variable): Likewise.
11335         (trace_variable_command): Adjust to std::string.
11336         (delete_trace_variable_command): Likewise.
11337         (tvariables_info_1): Adjust to std::vector.
11338         (save_trace_state_variables): Likewise.
11339         (start_tracing): Likewise.
11340         (merge_uploaded_trace_state_variables): Adjust to std::vector
11341         and std::string.
11342         * target.h (struct target_ops)
11343         <to_download_trace_state_variable>: Pass reference to
11344         trace_state_variable.
11345         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11346         * target-delegates.c: Re-generate.
11347         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11348         (mi_tsv_deleted): Likewise.
11349         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11350         * remote.c (remote_download_trace_state_variable): Change
11351         pointer to reference and adjust.
11352         * make-target-delegates (parse_argtypes): Handle references.
11353         (write_function_header): Likewise.
11354         (munge_type): Likewise.
11355
11356 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11357
11358         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11359         string_view-selftests.c.
11360         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11361         testsuite.
11362         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11363         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11364         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11365         * unittests/basic_string_view/element_access/char/1.cc:
11366         Likewise.
11367         * unittests/basic_string_view/element_access/char/empty.cc:
11368         Likewise.
11369         * unittests/basic_string_view/element_access/char/front_back.cc:
11370         Likewise.
11371         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11372         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11373         Likewise.
11374         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11375         Likewise.
11376         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11377         Likewise.
11378         * unittests/basic_string_view/operations/compare/char/1.cc:
11379         Likewise.
11380         * unittests/basic_string_view/operations/compare/char/13650.cc:
11381         Likewise.
11382         * unittests/basic_string_view/operations/copy/char/1.cc:
11383         Likewise.
11384         * unittests/basic_string_view/operations/data/char/1.cc:
11385         Likewise.
11386         * unittests/basic_string_view/operations/find/char/1.cc:
11387         Likewise.
11388         * unittests/basic_string_view/operations/find/char/2.cc:
11389         Likewise.
11390         * unittests/basic_string_view/operations/find/char/3.cc:
11391         Likewise.
11392         * unittests/basic_string_view/operations/find/char/4.cc:
11393         Likewise.
11394         * unittests/basic_string_view/operations/rfind/char/1.cc:
11395         Likewise.
11396         * unittests/basic_string_view/operations/rfind/char/2.cc:
11397         Likewise.
11398         * unittests/basic_string_view/operations/rfind/char/3.cc:
11399         Likewise.
11400         * unittests/basic_string_view/operations/substr/char/1.cc:
11401         Likewise.
11402         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11403         * unittests/string_view-selftests.c: New file.
11404
11405 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11406
11407         * unittests/basic_string_view/capacity/1.cc: New file.
11408         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11409         * unittests/basic_string_view/cons/char/1.cc: New file.
11410         * unittests/basic_string_view/cons/char/2.cc: New file.
11411         * unittests/basic_string_view/cons/char/3.cc: New file.
11412         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11413         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11414         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11415         * unittests/basic_string_view/element_access/char/1.cc: New file.
11416         * unittests/basic_string_view/element_access/char/2.cc: New file.
11417         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11418         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11419         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11420         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11421         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11422         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11423         * unittests/basic_string_view/include.cc: New file.
11424         * unittests/basic_string_view/inserters/char/1.cc: New file.
11425         * unittests/basic_string_view/inserters/char/2.cc: New file.
11426         * unittests/basic_string_view/inserters/char/3.cc: New file.
11427         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11428         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11429         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11430         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11431         * unittests/basic_string_view/literals/types.cc: New file.
11432         * unittests/basic_string_view/literals/values.cc: New file.
11433         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11434         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11435         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11436         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11437         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11438         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11439         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11440         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11441         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11442         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11443         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11444         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11445         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11446         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11447         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11448         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11449         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11450         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11451         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11452         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11453         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11454         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11455         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11456         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11457         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11458         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11459         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11460         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11461         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11462         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11463         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11464         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11465         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11466         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11467         * unittests/basic_string_view/operators/char/2.cc: New file.
11468         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11469         * unittests/basic_string_view/range_access/char/1.cc: New file.
11470         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11471         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11472         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11473         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11474         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11475         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11476         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11477         * unittests/basic_string_view/typedefs.cc: New file.
11478         * unittests/basic_string_view/types/1.cc: New file.
11479
11480 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11481
11482         * common/gdb_string_view.h: Remove libstdc++ implementation
11483         details, adjust to gdb reality.
11484         * common/gdb_string_view.tcc: Likewise.
11485         * cli/cli-script.c (struct string_view): Remove.
11486         (user_args) <m_args>: Change element type to gdb::string_view.
11487         (user_args::insert_args): Adjust.
11488
11489 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11490
11491         * common/gdb_string_view.h: New file.
11492         * common/gdb_string_view.tcc: New file.
11493
11494 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11495
11496         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11497         * configure: Re-generate.
11498
11499 2018-04-09  Pedro Alves  <palves@redhat.com>
11500
11501         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11502         (set_target_gdbarch): Call
11503         gdb::observers::architecture_changed.notify instead of
11504         observer_notify_architecture_changed.
11505
11506 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11507
11508         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11509         (do_restore_current_traceframe_cleanup): Remove.
11510         (restore_current_traceframe_cleanup_dtor): Remove.
11511         (make_cleanup_restore_current_traceframe): Remove.
11512         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11513         New.
11514         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11515         * infrun.c (fetch_inferior_event): Use
11516         scoped_restore_current_traceframe.
11517
11518 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11519
11520         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11521         Remove.
11522         <n_allocated_type_units>: Remove.
11523         <all_type_units>: Change to std::vector.
11524         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11525         to std::vector change.
11526         (dwarf2_per_objfile::get_cutu): Likewise.
11527         (dwarf2_per_objfile::get_tu): Likewise.
11528         (create_signatured_type_table_from_index): Likewise.
11529         (create_signatured_type_table_from_debug_names): Likewise.
11530         (dw2_symtab_iter_next): Likewise.
11531         (dw2_print_stats): Likewise.
11532         (dw2_expand_all_symtabs): Likewise.
11533         (dw2_expand_marked_cus): Likewise.
11534         (dw2_debug_names_iterator::next): Likewise.
11535         (dwarf2_initialize_objfile): Likewise.
11536         (add_signatured_type_cu_to_table): Likewise.
11537         (create_all_type_units): Likewise.
11538         (add_type_unit): Likewise.
11539         (struct tu_abbrev_offset): Add constructor.
11540         (build_type_psymtabs_1): Adjust to std::vector change.
11541         (print_tu_stats): Likewise.
11542         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11543         (write_debug_names): Likewise.
11544
11545 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11546
11547         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11548         Make an std::vector.
11549         <n_comp_units>: Remove.
11550         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11551         to std::vector change.
11552         (dwarf2_per_objfile::get_cutu): Likewise.
11553         (dwarf2_per_objfile::get_cu): Likewise.
11554         (create_cus_from_index): Likewise.
11555         (create_addrmap_from_index): Likewise.
11556         (create_addrmap_from_aranges): Likewise.
11557         (dwarf2_read_index): Likewise.
11558         (dw2_find_last_source_symtab): Likewise.
11559         (dw2_map_symtabs_matching_filename): Likewise.
11560         (dw2_symtab_iter_next): Likewise.
11561         (dw2_print_stats): Likewise.
11562         (dw2_expand_all_symtabs): Likewise.
11563         (dw2_expand_symtabs_with_fullname): Likewise.
11564         (dw2_expand_marked_cus): Likewise.
11565         (dw2_map_symbol_filenames): Likewise.
11566         (create_cus_from_debug_names): Likewise.
11567         (dwarf2_read_debug_names): Likewise.
11568         (dw2_debug_names_iterator::next): Likewise.
11569         (dwarf2_initialize_objfile): Likewise.
11570         (set_partial_user): Likewise.
11571         (dwarf2_build_psymtabs_hard): Likewise.
11572         (read_comp_units_from_section): Remove arguments, adjust to
11573         std::vector change.
11574         (create_all_comp_units): Adjust to std::vector and
11575         read_comp_units_from_section changes.
11576         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11577         change.
11578         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11579         (psyms_seen_size): Likewise.
11580         (write_gdbindex): Likewise.
11581         (write_debug_names): Likewise.
11582
11583 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11584
11585         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11586         with dwarf2_per_objfile.
11587         (create_cus_from_index): Likewise.
11588         (create_signatured_type_table_from_index): Likewise.
11589         (dwarf2_read_index): Likewise.
11590         (dwarf2_initialize_objfile): Likewise.
11591         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11592         per_cu rather than get_dwarf2_per_objfile.
11593
11594 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11595
11596         * dwarf2read.h (struct signatured_type): Forward declare.
11597         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11598         New methods.
11599         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11600         (dw2_get_cutu): ...this.
11601         (dwarf2_per_objfile::get_cu): Rename from...
11602         (dw2_get_cu): ...this.
11603         (dwarf2_per_objfile::get_tu): New.
11604         (create_addrmap_from_index): Adjust.
11605         (create_addrmap_from_aranges): Adjust.
11606         (dw2_find_last_source_symtab): Adjust.
11607         (dw2_map_symtabs_matching_filename): Adjust.
11608         (dw2_symtab_iter_next): Adjust.
11609         (dw2_print_stats): Adjust.
11610         (dw2_expand_all_symtabs): Adjust.
11611         (dw2_expand_symtabs_with_fullname): Adjust.
11612         (dw2_expand_marked_cus): Adjust.
11613         (dw_expand_symtabs_matching_file_matcher): Adjust.
11614         (dw2_map_symbol_filenames): Adjust.
11615         (dw2_debug_names_iterator::next): Adjust.
11616         (dwarf2_initialize_objfile): Adjust.
11617         (set_partial_user): Adjust.
11618         (dwarf2_build_psymtabs_hard): Adjust.
11619
11620 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11621
11622         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11623         Remove unused variables.
11624         (dw2_map_symtabs_matching_filename): Likewise.
11625         (dwarf2_record_block_ranges): Likewise.
11626         (dwarf2_read_addr_index): Likewise.
11627         (follow_die_offset): Likewise.
11628
11629 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11630
11631         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11632         to symbol_file_add_main.
11633
11634 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11635
11636         PR mi/22299
11637         * mi/mi-console.c (do_fputc_async_safe): New.
11638         (mi_console_file::write_async_safe): New.
11639         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11640         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11641         New.
11642         * ui-file.c (ui_file::putstrn): Adjust call to
11643         fputstrn_unfiltered.
11644         * utils.c (printchar): Replace do_fputs and do_fprintf
11645         parameters by do_fputc.
11646         (fputstr_filtered): Adjust call to printchar.
11647         (fputstr_unfiltered): Likewise.
11648         (fputstrn_filtered): Likewise.
11649         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11650         printchar.
11651         * utils.h (do_fputc_ftype): New typedef.
11652         (fputstrn_unfiltered): Add do_fputc parameter.
11653
11654 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11655
11656         * regformats/i386/i386-avx.dat: Remove.
11657
11658 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11659
11660         PR gdb/22979
11661         * amd64-tdep.c (amd64_none_init_abi): New function.
11662         (amd64_x32_none_init_abi): New function.
11663         (_initialize_amd64_tdep): Register handlers for x86-64 and
11664         x64_32 with GDB_OSABI_NONE.
11665         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11666         GDB_OSABI_NONE osabi.
11667
11668 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11669
11670         PR gdb/22980
11671         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11672         GDB_OSABI_NONE.
11673         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11674         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11675
11676 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11677
11678         * common/byte-vector.h (char_vector): New type.
11679         * target.h (target_read_alloc): Return
11680         gdb::optional<byte_vector>.
11681         (target_read_stralloc): Return gdb::optional<char_vector>.
11682         (target_get_osdata): Return gdb::optional<char_vector>.
11683         * target.c (target_read_alloc_1): Templatize.  Replacement
11684         manual memory management with vector.
11685         (target_read_alloc): Change return type, adjust.
11686         (target_read_stralloc): Change return type, adjust.
11687         (target_get_osdata): Change return type, adjust.
11688         * auxv.c (struct auxv_info) <length>: Remove.
11689         <data>: Change type to gdb::optional<byte_vector>.
11690         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11691         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11692         (target_auxv_search): Adjust.
11693         (fprint_target_auxv): Adjust.
11694         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11695         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11696         (linux_make_corefile_notes): Adjust.
11697         * osdata.c (get_osdata): Adjust.
11698         * remote.c (remote_get_threads_with_qxfer): Adjust.
11699         (remote_memory_map): Adjust.
11700         (remote_traceframe_info): Adjust.
11701         (btrace_read_config): Adjust.
11702         (remote_read_btrace): Adjust.
11703         (remote_pid_to_exec_file): Adjust.
11704         * solib-aix.c (solib_aix_get_library_list): Adjust.
11705         * solib-dsbt.c (decode_loadmap): Don't free buf.
11706         (dsbt_get_initial_loadmaps): Adjust.
11707         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11708         * solib-target.c (solib_target_current_sos): Adjust.
11709         * tracepoint.c (sdata_make_value): Adjust.
11710         * xml-support.c (xinclude_start_include): Adjust.
11711         (xml_fetch_content_from_file): Adjust.
11712         * xml-support.h (xml_fetch_another): Change return type.
11713         (xml_fetch_content_from_file): Change return type.
11714         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11715         * xml-tdesc.c (file_read_description_xml): Adjust.
11716         (fetch_available_features_from_target): Change return type.
11717         (target_fetch_description_xml): Adjust.
11718         (target_read_description_xml): Adjust.
11719
11720 2018-04-06  Tom Tromey  <tom@tromey.com>
11721
11722         * value.c (~value): Update.
11723         (struct value) <contents>: Now unique_xmalloc_ptr.
11724         (value_contents_bits_eq, allocate_value_contents)
11725         (value_contents_raw, value_contents_all_raw)
11726         (value_contents_for_printing, value_contents_for_printing_const)
11727         (set_value_enclosing_type): Update.
11728
11729 2018-04-06  Tom Tromey  <tom@tromey.com>
11730
11731         * value.c (range_s): Remove typedef, VEC.
11732         (struct range): Add operator<.
11733         (range_lessthan): Remove.
11734         (ranges_contain): Change type.
11735         (~value): Update.
11736         (struct value) <unavailable, optimized_out>: Now std::vector.
11737         (value_entirely_available)
11738         (value_entirely_covered_by_range_vector)
11739         (value_entirely_unavailable, value_entirely_optimized_out):
11740         Update.
11741         (insert_into_bit_range_vector): Change argument type.
11742         (find_first_range_overlap): Likewise.
11743         (struct ranges_and_idx, value_contents_bits_eq)
11744         (require_not_optimized_out, require_available): Update.
11745         (ranges_copy_adjusted): Change argument types.
11746         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11747
11748 2018-04-06  Tom Tromey  <tom@tromey.com>
11749
11750         * value.c (~value): Update.
11751         (struct value) <parent>: Now a value_ref_ptr.
11752         (value_parent, set_value_parent, value_address, value_copy):
11753         Update.
11754
11755 2018-04-06  Tom Tromey  <tom@tromey.com>
11756
11757         * value.c (struct value): Add constructor, destructor, and member
11758         initializers.
11759         (allocate_value_lazy, value_decref): Update.
11760
11761 2018-04-06  Tom Tromey  <tom@tromey.com>
11762
11763         * value.c (struct value) <released, next>: Remove.
11764         (all_values): Now a std::vector.
11765         (allocate_value_lazy): Update.
11766         (value_next): Remove.
11767         (value_mark, value_free_to_mark, release_value)
11768         (value_release_to_mark): Update.
11769
11770 2018-04-06  Tom Tromey  <tom@tromey.com>
11771
11772         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11773         (free_value_chain): Remove.
11774         * value.c (free_value_chain): Remove.
11775         (value_release_to_mark): Return a std::vector.
11776         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11777         std::vector.
11778         (check_condition): Update.
11779         * eval.c (fetch_subexp_value): Change "val_chain" to a
11780         std::vector.
11781         * breakpoint.c (update_watchpoint): Update.
11782         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11783
11784 2018-04-06  Tom Tromey  <tom@tromey.com>
11785
11786         * value.h (free_all_values): Remove.
11787         * value.c (free_all_values): Remove.
11788
11789 2018-04-06  Tom Tromey  <tom@tromey.com>
11790
11791         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11792         (value_history_chain, value_history_count): Remove.
11793         (value_history): New global.
11794         (record_latest_value, access_value_history, show_values)
11795         (preserve_values): Update.
11796
11797 2018-04-06  Tom Tromey  <tom@tromey.com>
11798
11799         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11800         * varobj.c (varobj_set_display_format, varobj_set_value)
11801         (install_default_visualizer, construct_visualizer)
11802         (install_new_value, ~varobj, varobj_get_value_type)
11803         (my_value_of_variable, varobj_editable_p): Update.
11804         * c-varobj.c (c_describe_child, c_value_of_variable)
11805         (cplus_number_of_children, cplus_describe_child): Update.
11806         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11807         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11808         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11809
11810 2018-04-06  Tom Tromey  <tom@tromey.com>
11811
11812         * printcmd.c (last_examine_address): Change type to
11813         value_ref_ptr.
11814         (do_examine, x_command): Update.
11815
11816 2018-04-06  Tom Tromey  <tom@tromey.com>
11817
11818         * value.c (release_value): Update.
11819         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11820         (struct bpstats) <val>: Now a value_ref_ptr.
11821         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11822         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11823         (~watchpoint, print_it_watchpoint, watch_command_1)
11824         (invalidate_bp_value_on_memory_change): Update.
11825
11826 2018-04-06  Tom Tromey  <tom@tromey.com>
11827
11828         * varobj.c (varobj_clear_saved_item)
11829         (update_dynamic_varobj_children, install_new_value, ~varobj):
11830         Update.
11831         * value.h (value_incref): Move declaration earlier.
11832         (value_decref): Rename from value_free.
11833         (struct value_ref_policy): New.
11834         (value_ref_ptr): New typedef.
11835         (struct value_deleter): Remove.
11836         (gdb_value_up): Remove typedef.
11837         (release_value): Change return type.
11838         (release_value_or_incref): Remove.
11839         * value.c (set_value_parent): Update.
11840         (value_incref): Change return type.
11841         (value_decref): Rename from value_free.
11842         (value_free_to_mark, free_all_values, free_value_chain): Update.
11843         (release_value): Return value_ref_ptr.
11844         (release_value_or_incref): Remove.
11845         (record_latest_value, set_internalvar, clear_internalvar):
11846         Update.
11847         * stack.c (info_frame_command): Don't call value_free.
11848         * python/py-value.c (valpy_dealloc, valpy_new)
11849         (value_to_value_object): Update.
11850         * printcmd.c (do_examine): Update.
11851         * opencl-lang.c (lval_func_free_closure): Update.
11852         * mi/mi-main.c (register_changed_p): Don't call value_free.
11853         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11854         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11855         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11856         value_free.
11857         * guile/scm-value.c (vlscm_free_value_smob)
11858         (vlscm_scm_from_value): Update.
11859         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11860         (frame_unwind_register_unsigned, get_frame_register_bytes)
11861         (put_frame_register_bytes): Don't call value_free.
11862         * findvar.c (address_from_register): Don't call value_free.
11863         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11864         * dwarf2loc.c (entry_data_value_free_closure)
11865         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11866         (dwarf2_evaluate_loc_desc_full): Update.
11867         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11868         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11869         (~watchpoint, watch_command_1)
11870         (invalidate_bp_value_on_memory_change): Update.
11871         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11872
11873 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11874
11875         PR gdb/23022
11876         * warning.m4: Add -Wno-error=deprecated-register.
11877         * configure: Re-generate.
11878
11879 2018-04-05  Tom Tromey  <tom@tromey.com>
11880
11881         * linespec.h: Remove include of "vec.h".
11882
11883 2018-04-05  Tom Tromey  <tom@tromey.com>
11884
11885         * linespec.c (typep): Remove typedef.
11886         (find_methods, find_superclass_methods): Take a std::vector.
11887         (find_method): Use std::vector.
11888
11889 2018-04-05  Tom Tromey  <tom@tromey.com>
11890
11891         * utils.c (compare_strings): Remove.
11892         * utils.h (compare_strings): Remove.
11893         * objc-lang.h (find_imps): Update.
11894         * objc-lang.c (find_methods): Take a std::vector.
11895         (uniquify_strings, find_imps): Likewise.
11896         * linespec.c (find_methods): Take a std::vector.
11897         (decode_objc): Use std::vector.
11898         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11899         a std::vector.
11900         (find_method, find_function_symbols): Use std::vector.
11901
11902 2018-04-05  Tom Tromey  <tom@tromey.com>
11903
11904         * completer.c (completion_tracker::completion_tracker): Remove
11905         cast.
11906         (completion_tracker::discard_completions): Likewise.
11907         * breakpoint.c (ambiguous_names_p): Remove cast.
11908         * ada-lang.c (_initialize_ada_language): Remove cast.
11909         * utils.h (streq): Update.
11910         (streq_hash): Add new declaration.
11911         * utils.c (streq): Return bool.
11912         (streq_hash): New function.
11913
11914 2018-04-05  Tom Tromey  <tom@tromey.com>
11915
11916         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11917         Remove a string copy.
11918
11919 2018-04-05  Tom Tromey  <tom@tromey.com>
11920
11921         * linespec.c (filter_results): Use std::vector.
11922         (decode_line_2, decode_line_full): Update.
11923
11924 2018-04-05  Tom Tromey  <tom@tromey.com>
11925
11926         * linespec.c (canonical_to_fullform): Return std::string.
11927         (filter_results): Update.
11928         (struct decode_line_2_item): Add constructor.
11929         <fullform, displayform>: Now std::string.
11930         (decode_line_2_compare_items): Now a std::sort comparator.
11931         (decode_line_2): Update.
11932
11933 2018-04-05  Tom Tromey  <tom@tromey.com>
11934
11935         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11936         (unexpected_linespec_error): Update.
11937         (linespec_parse_basic, parse_linespec): Update.
11938
11939 2018-04-05  Tom Tromey  <tom@tromey.com>
11940
11941         * linespec.c (linespec_parse_basic): Reindent.
11942
11943 2018-04-05  Tom Tromey  <tom@tromey.com>
11944
11945         * minsyms.h (iterate_over_minimal_symbols): Update.
11946         * minsyms.c (iterate_over_minimal_symbols): Take a
11947         gdb::function_view.
11948         * linespec.c (struct collect_minsyms): Remove.
11949         (compare_msyms): Now a std::sort comparator.
11950         (add_minsym): Add parameters.
11951         (search_minsyms_for_name): Update.  Use std::vector.
11952
11953 2018-04-03  Tom Tromey  <tom@tromey.com>
11954
11955         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11956         gdb::byte_vector.
11957
11958 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11959
11960         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11961
11962 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11963
11964         PR gdb/16959
11965         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11966         printing static type.
11967
11968 2018-04-01  Tom Tromey  <tom@tromey.com>
11969
11970         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11971         (rs6000_xfer_shared_libraries): Update.
11972
11973 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11974
11975         * common/gdb_vecs.h (char_ptr): Remove.
11976         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11977
11978 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11979
11980         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11981         with std::vector.
11982         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11983
11984 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11985
11986         * tracepoint.h (struct uploaded_tp): Initialize fields.
11987         <actions, step_actions, cmd_strings>: Change type to
11988         std::vector<char *>.
11989         * tracepoint.c (get_uploaded_tp): Allocate with new.
11990         (free_uploaded_tps): Free with delete.
11991         (parse_tracepoint_definition): Adjust to std::vector change.
11992         * breakpoint.c (read_uploaded_action): Likewise.
11993         (create_tracepoint_from_upload): Likewise.
11994         * ctf.c (ctf_write_uploaded_tp): Likewise.
11995         (SET_ARRAY_FIELD): Likewise.
11996         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11997
11998 2018-03-30  Tom Tromey  <tom@tromey.com>
11999
12000         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12001         std::unique_ptr.
12002         (svr4_keep_data_in_core): Update.
12003         (svr4_read_so_list): Update.
12004
12005 2018-03-30  Tom Tromey  <tom@tromey.com>
12006
12007         * windows-nat.c (handle_output_debug_string, handle_exception):
12008         Update.
12009         * target.h (target_read_string): Update.
12010         * target.c (target_read_string): Change "string" to
12011         unique_xmalloc_ptr.
12012         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12013         Update.
12014         * solib-frv.c (frv_current_sos): Update.
12015         * solib-dsbt.c (dsbt_current_sos): Update.
12016         * solib-darwin.c (darwin_current_sos): Update.
12017         * linux-thread-db.c (inferior_has_bug): Update.
12018         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12019         Update.  Remove alloca.
12020         * ada-lang.c (ada_main_name): Update.
12021
12022 2018-03-30  Tom Tromey  <tom@tromey.com>
12023
12024         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12025         (struct dwo_file_deleter): New.
12026         (dwo_file_up): New typedef.
12027         (open_and_init_dwo_file): Use dwo_file_up.
12028         (free_dwo_file_cleanup): Remove.
12029
12030 2018-03-30  Tom Tromey  <tom@tromey.com>
12031
12032         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12033         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12034
12035 2018-03-30  Tom Tromey  <tom@tromey.com>
12036
12037         * dwarf2read.c (class free_cached_comp_units): New class.
12038         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12039         (free_cached_comp_units): Remove function.
12040
12041 2018-03-30  Tom Tromey  <tom@tromey.com>
12042
12043         * utils.h (make_cleanup_unpush_target): Remove.
12044         * inf-ptrace.c (struct target_unpusher): New.
12045         (target_unpush_up) New typedef.
12046         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12047         target_unpush_up.
12048         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12049
12050 2018-03-27  Tom Tromey  <tom@tromey.com>
12051
12052         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12053
12054 2018-03-27  Pedro Alves  <palves@redhat.com>
12055             Tom Tromey  <tom@tromey.com>
12056
12057         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12058         destructor.  Now a class.
12059         (gdb_readline_wrapper_cleanup): Remove function.
12060         (gdb_readline_wrapper): Remove cleanups.
12061
12062 2018-03-27  Tom Tromey  <tom@tromey.com>
12063
12064         * typeprint.h (struct type_print_options) <local_typedefs,
12065         global_typedefs>: Remove "struct" keyword.
12066         (class typedef_hash_table): New class.
12067         (recursively_update_typedef_hash, add_template_parameters)
12068         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12069         (find_typedef_in_hash): Don't declare.
12070         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12071         (typedef_hash_table::recursively_update): Rename from
12072         recursively_update_typedef_hash.  Now a member.
12073         (typedef_hash_table::add_template_parameters): Rename from
12074         add_template_parameters.  Now a member.
12075         (typedef_hash_table::typedef_hash_table): Now a constructor;
12076         rename from create_typedef_hash.
12077         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12078         rename from free_typedef_hash.
12079         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12080         (do_free_global_table): Remove.
12081         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12082         from copy_type_recursive.
12083         (create_global_typedef_table): Remove.
12084         (typedef_hash_table::find_global_typedef): Now a member of
12085         typedef_hash_table.
12086         (typedef_hash_table::find_typedef): Rename from
12087         find_typedef_in_hash; now a member.
12088         (whatis_exp): Update.
12089         * extension.h (struct ext_lang_type_printers): Add constructor and
12090         destructor.
12091         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12092         declare.
12093         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12094         Now a constructor; rename from start_ext_lang_type_printers.
12095         (ext_lang_type_printers): Now a destructor; rename from
12096         free_ext_lang_type_printers.
12097         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12098         Update.
12099         (c_type_print_base_struct_union): Update.  Remove cleanups.
12100
12101 2018-03-27  Tom Tromey  <tom@tromey.com>
12102
12103         * dwarf-index-write.c: Include <cmath>.
12104
12105 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12106
12107         * NEWS: Add entry describing new "set|show varsize-limit" command.
12108         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12109         command.
12110         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12111         "set variable".
12112
12113 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12114
12115         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12116         dwarf-index-write.c
12117         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12118         * dwarf-index-common.c: New file.
12119         * dwarf-index-common.h: New file.
12120         * dwarf-index-write.c: New file.
12121         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12122         (struct dwarf2_section_info): Move from here.
12123         (dwarf2_section_info_def): Likewise.
12124         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12125         (offset_type): Likewise.
12126         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12127         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12128         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12129         (byte_swap): Likewise.
12130         (MAYBE_SWAP): Likewise.
12131         (dwarf2_per_cu_ptr): Likewise.
12132         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12133         (struct tu_stats): Likewise.
12134         (struct dwarf2_per_objfile): Likewise.
12135         (struct dwarf2_per_cu_data): Likewise.
12136         (struct signatured_type): Likewise.
12137         (sig_type_ptr): Likewise.
12138         (DEF_VEC_P (sig_type_ptr)): Likewise.
12139         (INDEX4_SUFFIX): Likewise.
12140         (INDEX5_SUFFIX): Likewise.
12141         (DEBUG_STR_SUFFIX): Likewise.
12142         (dwarf2_read_section): Make non-static.
12143         (mapped_index_string_hash): Move from here.
12144         (dwarf5_djb_hash): Likewise.
12145         (file_write): Likewise.
12146         (class data_buf): Likewise.
12147         (struct symtab_index_entry): Likewise.
12148         (struct mapped_symtab): Likewise.
12149         (find_slot): Likewise.
12150         (hash_expand): Likewise.
12151         (add_index_entry): Likewise.
12152         (uniquify_cu_indices): Likewise.
12153         (class c_str_view): Likewise.
12154         (class c_str_view_hasher): Likewise.
12155         (class vector_hasher): Likewise.
12156         (write_hash_table): Likewise.
12157         (psym_index_map): Likewise.
12158         (struct addrmap_index_data): Likewise.
12159         (add_address_entry): Likewise.
12160         (add_address_entry_worker): Likewise.
12161         (write_address_map): Likewise.
12162         (symbol_kind): Likewise.
12163         (write_psymbols): Likewise.
12164         (struct signatured_type_index_data): Likewise.
12165         (write_one_signatured_type): Likewise.
12166         (recursively_count_psymbols): Likewise.
12167         (recursively_write_psymbols): Likewise.
12168         (class debug_names): Likewise.
12169         (check_dwarf64_offsets): Likewise.
12170         (psyms_seen_size): Likewise.
12171         (write_gdbindex): Likewise.
12172         (write_debug_names): Likewise.
12173         (assert_file_size): Likewise.
12174         (write_psymtabs_to_index): Likewise.
12175         (save_gdb_index_command): Likewise.
12176         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12177         command.
12178         * dwarf2read.h: New file.
12179
12180 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12181
12182         PR gdb/22670
12183         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12184         symbol name if the CU's language stores symbol names in linkage
12185         format.
12186         * language.h (struct language_defn)
12187         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12188         all instances of this struct.
12189
12190 2018-03-26  Tom Tromey  <tom@tromey.com>
12191
12192         * stack.c (backtrace_command_1): Remove verbose code.
12193
12194 2018-03-26  Tom Tromey  <tom@tromey.com>
12195
12196         * python/py-framefilter.c (py_print_type): Don't catch
12197         exceptions.  Return void.
12198         (py_print_value): Likewise.
12199         (py_print_single_arg): Likewise.
12200         (enumerate_args): Don't catch exceptions.
12201         (py_print_args): Likewise.
12202         (py_print_frame): Likewise.
12203         (gdbpy_apply_frame_filter): Catch exceptions here.
12204
12205 2018-03-26  Tom Tromey  <tom@tromey.com>
12206
12207         * stack.c (_initialize_stack): Remove trailing newlines from help
12208         text.  Add "Usage" line to "backtrace" help.
12209
12210 2018-03-26  Tom Tromey  <tom@tromey.com>
12211
12212         PR python/16486:
12213         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12214
12215 2018-03-26  Tom Tromey  <tom@tromey.com>
12216
12217         * python/py-framefilter.c (py_print_single_arg): Return
12218         EXT_LANG_BT_ERROR from catch.
12219
12220 2018-03-26  Tom Tromey  <tom@tromey.com>
12221
12222         PR backtrace/15584:
12223         * stack.c (backtrace_command_1): Move some code into no-filters
12224         "if".
12225
12226 2018-03-26  Tom Tromey  <tom@tromey.com>
12227
12228         * python/py-framefilter.c (throw_quit_or_print_exception): New
12229         function.
12230         (gdbpy_apply_frame_filter): Use it.
12231
12232 2018-03-26  Tom Tromey  <tom@tromey.com>
12233
12234         PR cli/17716:
12235         * python/py-framefilter.c (py_print_type, py_print_value)
12236         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12237         RETURN_MASK_ERROR.
12238
12239 2018-03-26  Tom Tromey  <tom@tromey.com>
12240
12241         * python/py-framefilter.c (enumerate_args): Use
12242         gdb::unique_xmalloc_ptr.
12243
12244 2018-03-26  Tom Tromey  <tom@tromey.com>
12245
12246         * python/py-framefilter.c (py_print_frame): Return
12247         EXT_LANG_BT_OK.
12248         (gdbpy_apply_frame_filter): Update comment.
12249         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12250         Remove.
12251         <EXT_LANG_BT_NO_FILTERS>: Change value.
12252
12253 2018-03-26  Tom Tromey  <tom@tromey.com>
12254
12255         PR backtrace/15582:
12256         * stack.c (backtrace_command): Parse "hide" argument.
12257         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12258         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12259         constant.
12260
12261 2018-03-26  Tom Tromey  <tom@tromey.com>
12262
12263         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12264         add "flags".
12265         (backtrace_command): Remove "fulltrace", add "flags".
12266
12267 2018-03-26  Tom Tromey  <tom@tromey.com>
12268
12269         * stack.c (backtrace_command): Rewrite command line parsing.
12270
12271 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12272
12273         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12274
12275 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12276
12277         * filename-seen-cache.h: Add include guard.
12278
12279 2018-03-26  Keith Seitz  <keiths@redhat.com>
12280
12281         * symfile.c (place_section): Remove "struct" from section_addr_info
12282         in comment.
12283         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12284         "struct" keyword from section_addr_info.
12285
12286 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12287
12288         * regformats/regdef.h (reg): Add constructors.
12289
12290 2018-03-25  Pedro Alves  <palves@redhat.com>
12291
12292         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12293         if then/else bodies in var_func_name extraction.
12294
12295 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12296
12297         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12298         lookup_minimal_symbol() to find symbol entry.
12299         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12300
12301 2018-03-23  Keith Seitz  <keiths@redhat.com>
12302
12303         PR c++/22968
12304         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12305         nested type definitions for C++, too.
12306
12307 2018-03-23  Tom Tromey  <tom@tromey.com>
12308
12309         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12310         a typedef.
12311         (macho_register_oso): Remove.
12312         (macho_symtab_read): Take a std::vector.
12313         (oso_el_compare_name): Now a std::sort comparator.
12314         (macho_symfile_read_all_oso): Take a std::vector.
12315         (macho_symfile_read): Use std::vector.  Remove cleanups.
12316
12317 2018-03-22  Tom Tromey  <tom@tromey.com>
12318
12319         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12320         (record_full_goto_bookmark): Use std::string.
12321
12322 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12323
12324         PR tdep/18295
12325         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12326         a single mask.
12327
12328 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12329
12330         * rs6000-tdep.c (store_insn_p): New function.
12331         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12332         and cr_reg to their unshifted values. Use store_insn_p to
12333         match LR saves using either R1 or fdata->alloca_reg. Use
12334         store_insn_p to match CR saves. Set alloca_reg_offset
12335         when alloca_reg and framep are set. Remove lr_reg shift
12336         when assigning to fdata->lr_register.
12337
12338 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12339
12340         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12341         command line args instead of emitting a warning.
12342
12343 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12344
12345         * tracepoint.h (struct static_tracepoint_marker): Initialize
12346         fields, define default constructor, move constructor and move
12347         assignment, disable the rest.
12348         <str_id, extra>: Make std::string.
12349         (release_static_tracepoint_marker): Remove.
12350         (free_current_marker): Remove.
12351         * tracepoint.c (free_current_marker): Remove.
12352         (parse_static_tracepoint_marker_definition): Adjust to
12353         std::string, use new hex2str overload.
12354         (release_static_tracepoint_marker): Remove.
12355         (print_one_static_tracepoint_marker): Get marker by reference
12356         and adjust to std::string.
12357         (info_static_tracepoint_markers_command): Adjust to std::vector
12358         changes
12359         * target.h (static_tracepoint_marker_p): Remove typedef.
12360         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12361         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12362         bool.
12363         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12364         * target-debug.h
12365         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12366         (target_debug_print_std_vector_static_tracepoint_marker): New.
12367         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12368         to...
12369         (target_debug_print_static_tracepoint_marker_p): ... this.
12370         * target-delegates.c: Re-generate.
12371         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12372         Make std::string.
12373         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12374         (decode_static_tracepoint_spec): Adjust to std::vector.
12375         (tracepoint_print_one_detail): Adjust to std::string.
12376         (strace_marker_decode_location): Adjust to std::string.
12377         (update_static_tracepoint): Adjust to std::string, remove call
12378         to release_static_tracepoint_marker.
12379         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12380         Adjust to std::vector.
12381         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12382         (remote_static_tracepoint_markers_by_strid): Adjust to
12383         std::vector.
12384         * common/rsp-low.h (hex2str): New overload with explicit count
12385         of bytes.
12386         * common/rsp-low.c (hex2str): New overload with explicit count
12387         of bytes.
12388         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12389         (_initialize_rsp_low_selftests): Add test_hex2str test.
12390         * unittests/tracepoint-selftests.c
12391         (test_parse_static_tracepoint_marker_definition): Adjust to
12392         std::string.
12393
12394 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12395
12396         * tracepoint.c (parse_static_tracepoint_marker_definition):
12397         Consider case where the definition is followed by more
12398         definitions.
12399         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12400         tracepoint-selftests.c.
12401         * unittests/tracepoint-selftests.c: New.
12402
12403 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12404
12405         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12406         Carvalho.
12407
12408 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12409
12410         * symtab.c (find_pc_sect_line): fixed indentation.
12411
12412 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12413
12414         * symtab.c (find_pc_sect_line): now uses binary search.
12415
12416 2018-03-19  Tom Tromey  <tom@tromey.com>
12417
12418         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12419         "IDENT" production.
12420
12421 2018-03-19  Pedro Alves  <palves@redhat.com>
12422             Tom Tromey  <tom@tromey.com>
12423
12424         * unittests/observable-selftests.c: New file.
12425         * common/observable.h: New file.
12426         * observable.h: New file.
12427         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12428         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12429         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12430         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12431         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12432         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12433         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12434         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12435         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12436         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12437         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12438         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12439         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12440         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12441         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12442         tui/tui-interp.c, valops.c: Update all users.
12443         * tui/tui-hooks.c (tui_bp_created_observer)
12444         (tui_bp_deleted_observer, tui_bp_modified_observer)
12445         (tui_inferior_exit_observer, tui_before_prompt_observer)
12446         (tui_normal_stop_observer, tui_register_changed_observer):
12447         Remove.
12448         (tui_observers_token): New global.
12449         (attach_or_detach, tui_attach_detach_observers): New functions.
12450         (tui_install_hooks, tui_remove_hooks): Use
12451         tui_attach_detach_observers.
12452         * record-btrace.c (record_btrace_thread_observer): Remove.
12453         (record_btrace_thread_observer_token): New global.
12454         * observer.sh: Remove.
12455         * observer.c: Rename to observable.c.
12456         * observable.c (namespace gdb_observers): Define new objects.
12457         (observer_debug): Move into gdb_observers namespace.
12458         (struct observer, struct observer_list, xalloc_observer_list_node)
12459         (xfree_observer_list_node, generic_observer_attach)
12460         (generic_observer_detach, generic_observer_notify): Remove.
12461         (_initialize_observer): Update.
12462         Don't include observer.inc.
12463         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12464         (clean mostlyclean): Likewise.
12465         (observer.h, observer.inc): Remove targets.
12466         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12467         (COMMON_SFILES): Use observable.c, not observer.c.
12468         * .gitignore: Remove observer.h.
12469
12470 2018-03-18  Tom Tromey  <tom@tromey.com>
12471
12472         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12473         gdb::def_vector.
12474         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12475
12476 2018-03-17  Tom Tromey  <tom@tromey.com>
12477
12478         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12479
12480 2018-03-17  Tom Tromey  <tom@tromey.com>
12481
12482         * target.c (class scoped_target_fd): New.
12483         (target_fileio_close_cleanup): Remove.
12484         (target_fileio_read_alloc_1): Use scoped_target_fd.
12485
12486 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12487
12488         * silent-rules.mk: New.
12489         * Makefile.in: Include silent-rules.mk
12490         (srcdir, VPATH, top_srcdir): Move up.
12491         (COMPILE): Add ECHO_CXX.
12492         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12493         (init.c): Add ECHO_INIT_C.
12494         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12495         (version.c): Add ECHO_GEN.
12496         (printcmd.o): Add ECHO_CXX.
12497         (target-float.o): Add ECHO_CXX.
12498         (ada-exp.o): Add ECHO_CXX.
12499         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12500         (insight$(EXEEXT)): Add ECHO_CXXLD.
12501         * gnulib/configure.ac: Add AM_SILENT_RULES.
12502         * gnulib/aclocal.m4: Re-generate.
12503         * gnulib/configure: Re-generate.
12504         * gnulib/import/Makefile.in: Re-generate.
12505
12506 2018-03-16  Tom Tromey  <tom@tromey.com>
12507
12508         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12509         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12510         * utils.c (do_free_section_addr_info)
12511         (make_cleanup_free_section_addr_info): Remove.
12512         * symfile.h (struct other_sections): Add constructor.
12513         (struct section_addr_info): Remove.
12514         (section_addr_info): New typedef.
12515         (struct sym_fns) <sym_offsets>: Change type of parameter.
12516         (build_section_addr_info_from_objfile)
12517         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12518         (default_symfile_offsets, symbol_file_add)
12519         (symbol_file_add_from_bfd)
12520         (build_section_addr_info_from_section_table): Update.
12521         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12522         * symfile.c (alloc_section_addr_info): Remove.
12523         (build_section_addr_info_from_section_table): Change return type.
12524         Update.
12525         (build_section_addr_info_from_bfd)
12526         (build_section_addr_info_from_objfile): Likewise.
12527         (free_section_addr_info): Remove.
12528         (relative_addr_info_to_section_offsets): Change type of "addrs".
12529         (addrs_section_compar): Now a std::sort comparator.
12530         (addrs_section_sort): Change return type.
12531         (addr_info_make_relative): Change type of "addrs".  Update.
12532         (default_symfile_offsets, syms_from_objfile_1)
12533         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12534         (symbol_file_add_separate): Update.
12535         (symbol_file_add): Change type of "addrs".  Update.
12536         (add_symbol_file_command): Update.  Remove cleanups.
12537         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12538         cleanups.
12539         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12540         * solib.c (solib_read_symbols): Update.
12541         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12542         * machoread.c (macho_symfile_offsets): Update.
12543         * jit.c (jit_bfd_try_read_symtab): Update.
12544
12545 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12546
12547         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12548         unittests/utils-selftests.c.
12549         * unittests/utils-selftests.c: New file.
12550
12551 2018-03-14  Tom Tromey  <tom@tromey.com>
12552
12553         PR cli/14977:
12554         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12555         for NULL.
12556
12557 2018-03-14  Tom Tromey  <tom@tromey.com>
12558
12559         PR cli/19918:
12560         * printcmd.c (printf_pointer): Allow "-" in format.
12561
12562 2018-03-14  Tom Tromey  <tom@tromey.com>
12563
12564         * printcmd.c (_initialize_printcmd): Add usage to printf.
12565
12566 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12567
12568         * MAINTAINERS: Update my email address.
12569
12570 2018-03-13  Tom Tromey  <tom@tromey.com>
12571
12572         * machoread.c (macho_check_dsym): Change filenamep to a
12573         std::string*.
12574         (macho_symfile_read): Update.
12575         * symfile.c (load_command): Use std::string.
12576
12577 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12578
12579         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12580         to error message string.
12581         (riscv_register_name): Use xsnprintf instead of sprintf.
12582         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12583         internal_error.
12584         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12585         error.
12586         (riscv_push_dummy_call): Likewise.
12587
12588 2018-03-12  Tom Tromey  <tom@tromey.com>
12589
12590         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12591         Use gdb::byte_vector.
12592         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12593
12594 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12595
12596         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12597         parameter type to readable_regcache.
12598         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12599         the declaration.
12600
12601 2018-03-11  Tom Tromey  <tom@tromey.com>
12602
12603         * dwarf2read.c (struct nextfield): Add initializers.
12604         (struct nextfnfield): Remove.
12605         (struct fnfieldlist): Add initializers.  Remove "length" and
12606         "head", use std::vector.
12607         (struct decl_field_list): Remove.
12608         (struct field_info): Add initializers.
12609         <fields, baseclasses>: Now std::vector.
12610         <nbaseclasses, nfnfields, typedef_field_list_count,
12611         nested_types_list_count>: Remove.
12612         (dwarf2_add_field, dwarf2_add_type_defn)
12613         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12614         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12615         (process_structure_scope): Update.
12616
12617 2018-03-11  Tom Tromey  <tom@tromey.com>
12618
12619         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12620         for use by std::sort.
12621         (build_type_psymtabs_1): Use std::vector.
12622
12623 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12624
12625         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12626         and LIBMPFR in the printed configuration.
12627
12628 2018-03-08  Tom Tromey  <tom@tromey.com>
12629
12630         * source.c (get_filename_and_charpos): Use scoped_fd.
12631         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12632         (procfs_pidlist): Likewise.
12633         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12634         (iterate_over_mappings): Likewise.
12635
12636 2018-03-08  Tom Tromey  <tom@tromey.com>
12637
12638         * infcall.c (struct call_return_meta_info)
12639         <stack_temporaries_enabled>: Remove.
12640         (get_call_return_value, call_function_by_hand_dummy): Update.
12641         * thread.c (disable_thread_stack_temporaries): Remove.
12642         (enable_thread_stack_temporaries): Remove.
12643         (thread_stack_temporaries_enabled_p): Return bool.
12644         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12645         (get_last_thread_stack_temporary): Update.
12646         * eval.c (evaluate_subexp): Update.
12647         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12648         class, not a function.
12649         (value_ptr, value_vec): Remove typedefs.
12650         (class thread_info) <stack_temporaries_enabled>: Now bool.
12651         <stack_temporaries>: Now a std::vector.
12652         (thread_stack_temporaries_enabled_p)
12653         (value_in_thread_stack_temporaries): Return bool.
12654
12655 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12656
12657         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12658         (getpkt_or_notif_sane_1): Likewise.
12659
12660 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12661
12662         * build-id.c (build_id_to_debug_bfd): Use std::string.
12663
12664 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12665
12666         * build-id.c (find_separate_debug_file_by_buildid): Return
12667         std::string.
12668         * build-id.h (find_separate_debug_file_by_buildid): Return
12669         std::string.
12670         * coffread.c (coff_symfile_read): Adjust to std::string.
12671         * elfread.c (elf_symfile_read): Adjust to std::string.
12672         * symfile.c (separate_debug_file_exists): Change parameter to
12673         std::string.
12674         (find_separate_debug_file): Return std::string.
12675         (find_separate_debug_file_by_debuglink): Return std::string.
12676         * symfile.h (find_separate_debug_file_by_debuglink): Return
12677         std::string.
12678
12679 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12680
12681         * common/xml-utils.c (xml_escape_text): Move code to...
12682         (xml_escape_text_append): ... this new function.
12683         * common/xml-utils.h (xml_escape_text_append): New declaration.
12684         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12685         New function.
12686         (_initialize_xml_utils): register test_xml_escape_text_append as
12687         a selftest.
12688
12689 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12690
12691         * defs.h: Remove MAX_REGISTER_SIZE.
12692         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12693         asserts.
12694         * python/py-unwind.c (pyuw_sniffer): Likewise.
12695
12696 2018-03-07  Tom Tromey  <tom@tromey.com>
12697
12698         * linux-tdep.c (linux_info_proc): Update.
12699         * target.h (struct target_ops) <to_fileio_readlink>: Return
12700         optional<string>.
12701         (target_fileio_readlink): Return optional<string>.
12702         * remote.c (remote_hostio_readlink): Return optional<string>.
12703         * inf-child.c (inf_child_fileio_readlink): Return
12704         optional<string>.
12705         * target.c (target_fileio_readlink): Return optional<string>.
12706
12707 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12708
12709         * regcache.c (cooked_read_test): Add riscv to the list of
12710         architectures that have a save_reggroup.
12711
12712 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12713
12714         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12715         value is not a dynamic class object.
12716
12717 2018-03-06  Tom Tromey  <tom@tromey.com>
12718
12719         * rust-exp.y: Formatting fixes.
12720
12721 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12722
12723         * riscv-tdep.c (riscv_register_name): Remove target description
12724         support.
12725         (riscv_gdbarch_init): Remove target description check.
12726
12727 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12728
12729         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12730         comment.
12731         * riscv-tdep.h: Likewise.
12732
12733 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12734
12735         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12736         (riscv_pseudo_register_write): Delete.
12737         (riscv_gdbarch_init): Remove all use of pseudo registers.
12738
12739 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12740
12741         * record-btrace.c (btrace_print_lines): Replace cleanup
12742         parameter with RAII equivalents.
12743         (btrace_insn_history): Replace cleanup with RAII equivalents.
12744         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12745         make_cleanup_ui_out_tuple_begin_end): Remove.
12746         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12747         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12748         make_cleanup_ui_out_list_begin_end): Remove.
12749
12750 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12751
12752         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12753         parameter types to std::vector.  Use bool.
12754         (record_btrace_wait): Replace VEC(tp_t) with
12755         std::vector<thread_info *>.
12756         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12757
12758 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12759
12760         * record-btrace.c (record_btrace_disable_callback): Remove.
12761         (struct scoped_btrace_disable): New.
12762         (record_btrace_open): Use scoped_btrace_disable.
12763
12764 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12765
12766         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12767         reading values from registers.
12768
12769 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12770
12771         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12772         where appropriate.
12773
12774 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12775
12776         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12777         change parameter type.  Use GDB's print functions, and use
12778         core_addr_to_string where appropriate.
12779         (riscv_push_dummy_call): Use core_addr_to_string where
12780         appropriate, update call to riscv_print_arg_location, and reindent
12781         a few lines.
12782         (riscv_return_value): Update call to riscv_print_arg_location.
12783
12784 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12785             Tim Newsome <tim@sifive.com>
12786             Albert Ou <a0u@eecs.berkeley.edu>
12787             Darius Rad <darius@bluespec.com>
12788
12789         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12790         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12791         (ALLDEPFILES): Add riscv-tdep.c
12792         * configure.tgt: Add riscv support.
12793         * riscv-tdep.c: New file.
12794         * riscv-tdep.h: New file.
12795         * NEWS: Mention new target.
12796         * MAINTAINERS: Add entry for riscv.
12797
12798 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12799
12800         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12801         fields within aggregates.
12802
12803 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12804
12805         * record-btrace.c (btrace_print_lines): Change type of flags to
12806         gdb_disassembly_flags.
12807
12808 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12809
12810         * fbsd-nat.c: Include "inf-ptrace.h".
12811         (USE_SIGTRAP_SIGINFO): Conditionally define.
12812         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12813         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12814         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12815         function.
12816         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12817         Likewise.
12818         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12819         Likewise.
12820         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12821         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12822         "supports_stopped_by_hw_breakpoint" target methods.
12823
12824 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12825
12826         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12827         * fbsd-nat.c (debug_fbsd_nat): New variable.
12828         (show_fbsd_nat_debug): New function.
12829         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12830         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12831
12832 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12833
12834         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12835         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12836         prototype.
12837         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12838         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12839         method.
12840
12841 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12842
12843         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12844         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12845
12846 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12847
12848         * charset.c (struct charset_vector): New.
12849         (charsets): Change type to charset_vector.
12850         (find_charset_names): Adjust.
12851         (add_one): Adjust.
12852         (_initialize_charset): Adjust.
12853
12854 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12855
12856         * progspace.h (struct program_space) <deleted_solibs>: Change
12857         type to std::vector<std::string>.
12858         * progspace.c (clear_program_space_solib_cache): Adjust.
12859         * breakpoint.c (print_solib_event): Adjust.
12860         (check_status_catch_solib): Adjust.
12861         * solib.c (update_solib_list): Adjust.
12862         * ui-out.h (class ui_out) <field_string>: New overload.
12863         * ui-out.c (ui_out::field_string): New overload.
12864
12865 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12866
12867         * progspace.h (struct program_space): Add constructor and
12868         destructor, initialize fields.
12869         (add_program_space): Remove.
12870         * progspace.c (add_program_space): Rename to...
12871         (program_space::program_space): ... this.
12872         (release_program_space): Rename to...
12873         (program_space::~program_space): ... this.
12874         (delete_program_space): Use delete to delete program_space.
12875         (initialize_progspace): Use new to allocate program_space.
12876         * inferior.c (add_inferior_with_spaces): Likewise.
12877         (clone_inferior_command): Likewise.
12878         * infrun.c (follow_fork_inferior): Likewise.
12879         (handle_vfork_child_exec_or_exit): Likewise.
12880
12881 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12882
12883         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12884         (delim_string_to_char_ptr_vec): Return std::vector of
12885         gdb::unique_xmalloc_ptr.
12886         (dirnames_to_char_ptr_vec_append): Take std::vector of
12887         gdb::unique_xmalloc_ptr.
12888         (dirnames_to_char_ptr_vec): Return std::vector of
12889         gdb::unique_xmalloc_ptr.
12890         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12891         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12892         (delim_string_to_char_ptr_vec): Return an std::vector of
12893         gdb::unique_xmalloc_ptr, adjust the code.
12894         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12895         gdb::unique_xmalloc_ptr, adjust the code.
12896         (dirnames_to_char_ptr_vec): Return an std::vector of
12897         gdb::unique_xmalloc_ptr, adjust the code.
12898         * auto-load.c (auto_load_safe_path_vec): Change type to
12899         std::vector of gdb::unique_xmalloc_ptr.
12900         (auto_load_expand_dir_vars): Return an std::vector of
12901         gdb::unique_xmalloc_ptr, adjust the code.
12902         (auto_load_safe_path_vec_update): Adjust.
12903         (filename_is_in_auto_load_safe_path_vec): Adjust.
12904         (auto_load_objfile_script_1): Adjust.
12905         * build-id.c (build_id_to_debug_bfd): Adjust.
12906         * linux-thread-db.c (thread_db_load_search): Adjust.
12907         * source.c (add_path): Adjust.
12908         (openp): Adjust.
12909         * symfile.c (find_separate_debug_file): Adjust.
12910         * utils.c (do_free_char_ptr_vec): Remove.
12911         (make_cleanup_free_char_ptr_vec): Remove.
12912
12913 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12914
12915         PR gdb/22907
12916         * common/pathstuff.c: Conditionally include "<windows.h>".
12917
12918 2018-03-01  Georg Sauthoff  <mail@georg.so>
12919
12920         PR gdb/22888
12921         * gcore.in: Quote variables and switch interpreter to bash.
12922
12923 2018-03-01  Tom Tromey  <tom@tromey.com>
12924
12925         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12926         assertion.  Add assertion for discriminant_index.
12927         (quirk_rust_enum): Use correct base type name in univariant case.
12928
12929 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12930
12931         * record.c (get_call_history_modifiers): Return a
12932         record_print_flags.
12933         (cmd_record_call_history): Adjust.
12934         * record-btrace.c (record_btrace_call_history): Adjust.
12935         (record_btrace_call_history_range): Adjust.
12936         (record_btrace_call_history_from): Adjust.
12937         * target-debug.h (target_debug_print_record_print_flags): New.
12938         * target-delegates.c: Re-generate.
12939         * target.c (target_call_history): Change flags type.
12940         (target_call_history_from): Likewise.
12941         (target_call_history_range): Likewise.
12942         * target.h (struct target_ops) <target_call_history>: Likewise.
12943         (target_call_history_from): Likewise.
12944         (target_call_history_range): Likewise.
12945
12946 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12947             Simon Marchi  <simon.marchi@polymtl.ca>
12948
12949         * common/common-utils.c: Include "sys/stat.h".
12950         (is_regular_file): Move here from "source.c"; change return
12951         type to "bool".
12952         * common/common-utils.h (is_regular_file): New prototype.
12953         * common/pathstuff.c (contains_dir_separator): New function.
12954         * common/pathstuff.h (contains_dir_separator): New prototype.
12955         * source.c: Don't include "sys/stat.h".
12956         (is_regular_file): Move to "common/common-utils.c".
12957
12958 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12959
12960         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12961         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12962         * auto-load.c: Include "common/pathstuff.h".
12963         * common/common-def.h (current_directory): Move here.
12964         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12965         function.
12966         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12967         prototype.
12968         * common/pathstuff.c: New file.
12969         * common/pathstuff.h: New file.
12970         * compile/compile.c: Include "common/pathstuff.h".
12971         * defs.h (current_directory): Move to "common/common-defs.h".
12972         * dwarf2read.c: Include "common/pathstuff.h".
12973         * exec.c: Likewise.
12974         * guile/scm-safe-call.c: Likewise.
12975         * linux-thread-db.c: Likewise.
12976         * main.c: Likewise.
12977         * nto-tdep.c: Likewise.
12978         * objfiles.c: Likewise.
12979         * source.c: Likewise.
12980         * symtab.c: Likewise.
12981         * utils.c: Include "common/pathstuff.h".
12982         (gdb_realpath): Move to "common/pathstuff.c".
12983         (gdb_realpath_keepfile): Likewise.
12984         (gdb_abspath): Likewise.
12985         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12986         (gdb_realpath_keepfile): Likewise.
12987         (gdb_abspath): Likewise.
12988
12989 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12990
12991         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12992         wildcard process pid for super_resume for kernels with a
12993         specific bug.
12994
12995 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12996
12997         * compile/compile.c (get_args): Add additional comments
12998         explaining function.
12999
13000 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13001             Tom Tromey  <tom@tromey.com>
13002
13003         * target.h (memory_write_request_s): Remove typedef.  Don't define
13004         VEC.
13005         (target_write_memory_blocks): Change argument to std::vector.
13006         (struct memory_write_request): Add constructor.
13007         * target-memory.c (compare_block_starting_address): Return bool.
13008         Change argument types.
13009         (claim_memory): Change arguments to use std::vector.
13010         (split_regular_and_flash_blocks, blocks_to_erase)
13011         (compute_garbled_blocks): Likewise.
13012         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13013         (target_write_memory_blocks): Change argument to std::vector.
13014         * symfile.c (struct load_section_data): Add constructor and
13015         destructor.  Use std::vector for "requests".
13016         (struct load_progress_data): Add initializers.
13017         (load_section_callback): Update.  Use "new".
13018         (clear_memory_write_data): Remove.
13019         (generic_load): Update.
13020
13021 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13022
13023         * arch/aarch64.h: Use common/tdesc.h.
13024
13025 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13026
13027         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13028         architecture with a 64-bit ABI.
13029
13030 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13031
13032         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13033         ahead of target description loading.
13034
13035 2018-02-26  Tom Tromey  <tom@tromey.com>
13036
13037         * stack.c (backtrace_command_1): Update.
13038         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13039         of "flags".
13040         * python/py-framefilter.c (py_print_frame)
13041         (gdbpy_apply_frame_filter): Change type of "flags".
13042         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13043         of "flags".
13044         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13045         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13046         * extension.h (enum frame_filter_flag): Rename from
13047         frame_filter_flags.
13048         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13049         (apply_ext_lang_frame_filter): Change type of "flags".
13050         * extension.c (apply_ext_lang_frame_filter): Change type of
13051         "flags".
13052         * extension-priv.h (struct extension_language_ops)
13053         <apply_frame_filter>: Change type of "flags".
13054
13055 2018-02-26  Tom Tromey  <tom@tromey.com>
13056
13057         PR python/16497:
13058         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13059         off-by-one in py_end computation.
13060         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13061         PRINT_MORE_FRAMES.
13062         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13063         constant.
13064
13065 2018-02-26  Tom Tromey  <tom@tromey.com>
13066
13067         * dwarf2read.c (struct variant_field): New.
13068         (struct nextfield) <variant>: New field.
13069         (dwarf2_add_field): Handle DW_TAG_variant_part.
13070         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13071         discriminated union.
13072         (read_structure_type): Handle DW_TAG_variant_part.
13073         (handle_struct_member_die): New function, extracted from
13074         process_structure_scope.  Handle DW_TAG_variant.
13075         (process_structure_scope): Handle discriminated unions.  Call
13076         handle_struct_member_die.
13077
13078 2018-02-26  Tom Tromey  <tom@tromey.com>
13079
13080         * rust-lang.h (rust_last_path_segment): Declare.
13081         * rust-lang.c (rust_last_path_segment): Now public.  Change
13082         contract.
13083         (struct disr_info): Remove.
13084         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13085         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13086         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13087         (rust_enum_p, rust_enum_variant): New function.
13088         (rust_underscore_fields): Remove "offset" parameter.
13089         (rust_print_enum): New function.
13090         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13091         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13092         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13093         enums.
13094         (rust_internal_print_type): New function, from rust_print_type.
13095         Remove enum code.
13096         (rust_print_type): Call rust_internal_print_type.
13097         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13098         Update enum handling.
13099         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13100         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13101         (rust_union_quirks): New functions.
13102         (process_full_comp_unit, process_full_type_unit): Call
13103         rust_union_quirks.
13104         (process_structure_scope): Update rust_unions if necessary.
13105
13106 2018-02-26  Tom Tromey  <tom@tromey.com>
13107
13108         * value.h (value_union_variant): Declare.
13109         * valops.c (value_union_variant): New function.
13110         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13111         (struct discriminant_info): New.
13112         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13113         enumerator.
13114         (struct main_type) <flag_discriminated_union>: New field.
13115
13116 2018-02-26  Tom Tromey  <tom@tromey.com>
13117
13118         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13119         unittests/unpack-selftests.c.
13120         * unittests/unpack-selftests.c: New file.
13121         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13122
13123 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13124
13125         * dwarf2read.c (struct partial_die_info) <read>: New method.
13126         (read_partial_die): Remove the declaration.
13127         (load_partial_dies): Update.
13128         (partial_die_info::partial_die_info):
13129         (read_partial_die): Change it to partial_die_info::read.
13130
13131 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13132
13133         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13134         (fixup_partial_die): Remove declaration.
13135         (scan_partial_symbols): Update.
13136         (partial_die_parent_scope): Likewise.
13137         (partial_die_full_name): Likewise.
13138         (fixup_partial_die): Change it to partial_die_info::fixup.
13139
13140 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13141
13142         * dwarf2read.c (read_partial_die): Update the declaration.
13143         (load_partial_dies): Caller update.
13144         (read_partial_die): Remove one argument abbrev_len.
13145
13146 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13147
13148         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13149         assignment operator.
13150         (load_partial_dies): Use ctor and copy ctor.
13151         (read_partial_die): Update.
13152         (dwarf2_cu::find_partial_die): Use ctor.
13153
13154 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13155
13156         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13157         (find_partial_die_in_comp_unit): Change it to
13158         dwarf2_cu::find_partial_die.
13159         (find_partial_die): Update.
13160
13161 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13162
13163         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13164         is NULL.
13165
13166 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13167
13168         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13169
13170 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13171
13172         * arch/amd64.h: Use common/tdesc.h.
13173         * arch/i386.c: Likewise.
13174         * arch/i386.h: Likewise.
13175         * arch/tic6x.c: Likewise.
13176         * arch/tdesc.h: Move file from here...
13177         * common/tdesc.h: ...to here.
13178         * features/aarch64-core.c: Regenerate.
13179         * features/aarch64-fpu.c: Regenerate.
13180         * features/i386/32bit-avx.c: Regenerate.
13181         * features/i386/32bit-avx512.c: Regenerate.
13182         * features/i386/32bit-core.c: Regenerate.
13183         * features/i386/32bit-linux.c: Regenerate.
13184         * features/i386/32bit-mpx.c: Regenerate.
13185         * features/i386/32bit-pkeys.c: Regenerate.
13186         * features/i386/32bit-sse.c: Regenerate.
13187         * features/i386/64bit-avx.c: Regenerate.
13188         * features/i386/64bit-avx512.c: Regenerate.
13189         * features/i386/64bit-core.c: Regenerate.
13190         * features/i386/64bit-linux.c: Regenerate.
13191         * features/i386/64bit-mpx.c: Regenerate.
13192         * features/i386/64bit-pkeys.c: Regenerate.
13193         * features/i386/64bit-segments.c: Regenerate.
13194         * features/i386/64bit-sse.c: Regenerate.
13195         * features/i386/x32-core.c: Regenerate.
13196         * features/tic6x-c6xp.c: Regenerate.
13197         * features/tic6x-core.c: Regenerate.
13198         * features/tic6x-gp.c: Regenerate.
13199         * target-descriptions.c: Use common/tdesc.h.
13200         * target-descriptions.h: Likewise.
13201
13202 2018-02-24  Tom Tromey  <tom@tromey.com>
13203
13204         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13205         (try_thread_db_load_from_dir, thread_db_load_search): Use
13206         std::string.
13207         (info_auto_load_libthread_db_compare): Return bool.  Change
13208         argument types.
13209         (info_auto_load_libthread_db): Use std::vector, std::string.
13210         Remove cleanups.
13211
13212 2018-02-24  Tom Tromey  <tom@tromey.com>
13213
13214         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13215         std::string.
13216         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13217         std::string*.
13218         * gdbarch.c: Rebuild.
13219         * gdbarch.h: Rebuild.
13220         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13221         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13222         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13223         std::string*.
13224
13225 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13226
13227         * gdbtypes.h (sect_offset): Change type to uint64_t.
13228         (sect_offset_str): New function.
13229         * dwarf2read.c (create_addrmap_from_aranges): Use
13230         sect_offset_str.
13231         (error_check_comp_unit_head): Likewise.
13232         (create_debug_type_hash_table): Likewise.
13233         (read_cutu_die_from_dwo): Likewise.
13234         (init_cutu_and_read_dies): Likewise.
13235         (init_cutu_and_read_dies_no_follow): Likewise.
13236         (process_psymtab_comp_unit_reader): Likewise.
13237         (partial_die_parent_scope): Likewise.
13238         (peek_die_abbrev): Likewise.
13239         (process_queue): Likewise.
13240         (dwarf2_physname): Likewise.
13241         (read_namespace_alias): Likewise.
13242         (read_import_statement): Likewise.
13243         (create_dwo_cu_reader): Likewise.
13244         (create_cus_hash_table): Likewise.
13245         (lookup_dwo_cutu): Likewise.
13246         (inherit_abstract_dies): Likewise.
13247         (read_func_scope): Likewise.
13248         (read_call_site_scope): Likewise.
13249         (dwarf2_add_member_fn): Likewise.
13250         (read_common_block): Likewise.
13251         (read_module_type): Likewise.
13252         (read_typedef): Likewise.
13253         (read_subrange_type): Likewise.
13254         (load_partial_dies): Likewise.
13255         (read_partial_die): Likewise.
13256         (find_partial_die): Likewise.
13257         (read_str_index): Likewise.
13258         (dwarf2_string_attr): Likewise.
13259         (build_error_marker_type): Likewise.
13260         (lookup_die_type): Likewise.
13261         (dump_die_shallow): Likewise.
13262         (follow_die_ref): Likewise.
13263         (dwarf2_fetch_die_loc_sect_off): Likewise.
13264         (dwarf2_fetch_constant_bytes): Likewise.
13265         (follow_die_sig): Likewise.
13266         (get_signatured_type): Likewise.
13267         (get_DW_AT_signature_type): Likewise.
13268         (dwarf2_find_containing_comp_unit): Likewise.
13269         (set_die_type): Likewise.
13270
13271 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13272
13273         * arch/aarch64.c: Include "common-defs.h".
13274         * arch/amd64.c: Likewise.
13275         * arch/i386.c: Likewise.
13276
13277 2018-02-21  Tom Tromey  <tom@tromey.com>
13278
13279         * value.h: (extract_field_op): Update.
13280         * eval.c (extract_field_op): Return a const char *.
13281         * expression.h (parse_expression_for_completion): Update.
13282         * completer.c (complete_expression): Update.
13283         (add_struct_fields): Make fieldname const.
13284         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13285         (mark_completion_tag, parse_exp_in_context_1): Update.
13286         (parse_expression_for_completion): Change "name" to
13287         unique_xmalloc_ptr*.
13288
13289 2018-02-21  Tom Tromey  <tom@tromey.com>
13290
13291         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13292
13293 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13294
13295         * avr-tdep.c (avr_read_pc): Change parameter type to
13296         readable_regcache.
13297         * gdbarch.sh (read_pc): Likewise.
13298         * gdbarch.c: Re-generated.
13299         * gdbarch.h: Re-generated.
13300         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13301         readable_regcache.
13302         * ia64-tdep.c (ia64_read_pc): Likewise.
13303         * mips-tdep.c (mips_read_pc): Likewise.
13304         * spu-tdep.c (spu_read_pc): Likewise.
13305
13306 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13307
13308         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13309         * regcache-dump.c: New file.
13310         * regcache.c: Move register_dump to regcache-dump.c.
13311         (maintenance_print_registers): Likewise.
13312         (maintenance_print_raw_registers): Likewise.
13313         (maintenance_print_cooked_registers): Likewise.
13314         (maintenance_print_register_groups): Likewise.
13315         (maintenance_print_remote_registers): Likewise.
13316         (_initialize_regcache): Likewise.
13317         * regcache.h (register_dump): Moved from regcache.c.
13318
13319 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13320
13321         * regcache.c (regcache::regcache): Update.
13322         (regcache::invalidate): Move it to detached_regcache::invalidate.
13323         (get_thread_arch_aspace_regcache): Update.
13324         (regcache::raw_update): Update.
13325         (regcache::cooked_read): Remove some code.
13326         (regcache::cooked_read_value): Likewise.
13327         (regcache::raw_write): Remove assert on m_readonly_p.
13328         (regcache::raw_supply_integer): Move it to
13329         detached_regcache::raw_supply_integer.
13330         (regcache::raw_supply_zeroed): Likewise.
13331         * regcache.h (detached_regcache) <raw_supply_integer>: New
13332         declaration.
13333         <raw_supply_zeroed, invalidate>: Likewise.
13334         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13335         <invalidate>: Likewise.
13336         <m_readonly_p>: Removed.
13337
13338 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13339
13340         * infcmd.c (get_return_value): Let stop_regs point to
13341         get_current_regcache.
13342         * regcache.c (regcache::regcache): Remove.
13343         (register_dump_reg_buffer): New class.
13344         (regcache_print): Adjust.
13345         * regcache.h (regcache): Remove constructors.
13346
13347 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13348
13349         * regcache.c (class register_dump): New class.
13350         (register_dump_regcache, register_dump_none): New class.
13351         (register_dump_remote, register_dump_groups): New class.
13352         (regcache_print): Update.
13353         * regcache.h (regcache_dump_what): Move it to regcache.c.
13354         (regcache) <dump>: Remove.
13355
13356 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13357
13358         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13359          reg_buffer_rw *.
13360         (jit_unwind_reg_set_impl): Call raw_supply.
13361         (jit_frame_sniffer): Use reg_buffer_rw.
13362         * record-full.c (record_full_core_regbuf): Change its type.
13363         (record_full_core_open_1): Use reg_buffer_rw.
13364         (record_full_close): Likewise.
13365         (record_full_core_fetch_registers): Use regcache->raw_supply.
13366         (record_full_core_store_registers): Likewise.
13367         * regcache.c (regcache::get_register_status): Move it to
13368         reg_buffer.
13369         (regcache_raw_set_cached_value): Remove.
13370         (regcache::raw_set_cached_value): Remove.
13371         (regcache::raw_write): Call raw_supply.
13372         (regcache::raw_supply): Move it to reg_buffer_rw.
13373         * regcache.h (regcache_raw_set_cached_value): Remove.
13374         (reg_buffer_rw): New class.
13375
13376 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13377
13378         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13379         readonly_detached_regcache.
13380         (dummy_frame_prev_register): Use regcache->cooked_read.
13381         * frame.c (frame_save_as_regcache): Change return type.
13382         (frame_pop): Update.
13383         * frame.h (frame_save_as_regcache): Update declaration.
13384         * inferior.h (get_infcall_suspend_state_regcache): Update
13385         declaration.
13386         * infrun.c (infcall_suspend_state) <registers>: use
13387         readonly_detached_regcache.
13388         (save_infcall_suspend_state): Don't use regcache_dup.
13389         (get_infcall_suspend_state_regcache): Change return type.
13390         * linux-fork.c (struct fork_info) <savedregs>: Change to
13391         readonly_detached_regcache.
13392         <pc>: New field.
13393         (fork_save_infrun_state): Don't use regcache_dup.
13394         (info_checkpoints_command): Adjust.
13395         * mi/mi-main.c (register_changed_p): Update declaration.
13396         (mi_cmd_data_list_changed_registers): Use
13397         readonly_detached_regcache.
13398         (register_changed_p): Change parameter type to
13399         readonly_detached_regcache.
13400         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13401         readonly_detached_regcache.
13402         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13403         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13404         New.
13405         (regcache::save): Move it to reg_buffer.
13406         (regcache::restore): Change parameter type.
13407         (regcache_dup): Remove.
13408         * regcache.h (reg_buffer) <save>: New method.
13409         (readonly_detached_regcache): New class.
13410         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13411         readonly_detached_regcache.
13412         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13413
13414 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13415
13416         * frame.c (frame_save_as_regcache): Use regcache method save.
13417         (frame_pop): Use regcache method restore.
13418         * infrun.c (restore_infcall_suspend_state): Likewise.
13419         * linux-fork.c (fork_load_infrun_state): Likewise.
13420         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13421         save.
13422         * regcache.c (regcache_save): Remove.
13423         (regcache::restore): More asserts.
13424         (regcache_cpy): Remove.
13425         * regcache.h (regcache_save): Remove the declaration.
13426         (regcache::restore): Move from private to public.
13427         Remove the friend declaration of regcache_cpy.
13428         (regcache_cpy): Remove declaration.
13429
13430 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13431
13432         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13433         parameter type to 'readable_regcache *'.
13434         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13435         * arm-tdep.c (arm_neon_quad_read): Likewise.
13436         (arm_pseudo_read): Likewise.
13437         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13438         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13439         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13440         * gdbarch.c: Re-generated.
13441         * gdbarch.h: Re-generated.
13442         * gdbarch.sh (pseudo_register_read): Change parameter type to
13443         'readable_regcache *'.
13444         (pseudo_register_read_value): Likewise.
13445         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13446         (h8300_pseudo_register_read): Likewise.
13447         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13448         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13449         (i386_pseudo_register_read_into_value): Likewise.
13450         (i386_pseudo_register_read_value): Likewise.
13451         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13452         declaration.
13453         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13454         * m32c-tdep.c (m32c_raw_read): Likewise.
13455         (m32c_read_flg): Likewise.
13456         (m32c_banked_register): Likewise.
13457         (m32c_banked_read): Likewise.
13458         (m32c_sb_read): Likewise.
13459         (m32c_part_read): Likewise.
13460         (m32c_cat_read): Likewise.
13461         (m32c_r3r2r1r0_read): Likewise.
13462         (m32c_pseudo_register_read): Likewise.
13463         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13464         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13465         (mep_pseudo_cr64_read): Likewise.
13466         (mep_pseudo_register_read): Likewise.
13467         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13468         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13469         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13470         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13471         (regcache::cooked_read): Likewise.
13472         (regcache::cooked_read_value): Likewise.
13473         (regcache_cooked_read_signed):
13474         (regcache::cooked_read): Likewise.
13475         * regcache.h (readable_regcache): New class.
13476         (regcache): Inherit readable_regcache.  Move some methods to
13477         readable_regcache.
13478         * rl78-tdep.c (rl78_pseudo_register_read): Change
13479         parameter type to 'readable_regcache *'.
13480         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13481         (e500_pseudo_register_read): Change parameter type to
13482         'readable_regcache *'.
13483         (dfp_pseudo_register_read): Likewise.
13484         (vsx_pseudo_register_read): Likewise.
13485         (efpr_pseudo_register_read): Likewise.
13486         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13487         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13488         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13489         (sh64_pseudo_register_read): Likewise.
13490         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13491         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13492         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13493         (spu_pseudo_register_read): Likewise.
13494         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13495         (xtensa_pseudo_register_read): Likewise.
13496
13497 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13498
13499         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13500         (regcache::arch): Move it to reg_buffer::arch.
13501         (regcache::register_buffer): Likewise.
13502         (regcache::assert_regnum): Likewise.
13503         (regcache::num_raw_registers): Likewise.
13504         * regcache.h (reg_buffer): New class.
13505         (regcache): Inherit reg_buffer.
13506
13507 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13508
13509         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13510         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13511
13512 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13513
13514         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13515
13516 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13517
13518         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13519         (SFILES): Remove common/*.c files.
13520         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13521         * common/common.host: Add common reference.
13522         * configure.ac: Likewise.
13523         * configure: Regenerate.
13524
13525 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13526
13527         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13528         (block_initialize_namespace): Use new.
13529         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13530         (dwarf2_free_objfile): Use delete.
13531         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13532         (copy_type_recursive): Use new.
13533         * gdb_obstack.h (allocate_on_obstack): New.
13534
13535 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13536
13537         PR gdb/22849
13538         * inferior.c (exit_inferior_1): Reset inf->control.
13539
13540 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13541
13542         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13543         declaration.
13544
13545 2018-02-14  Pedro Alves  <palves@redhat.com>
13546
13547         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13548         frame_cleanup_after_sniffer on exception.
13549
13550 2018-02-14  Tom Tromey  <tom@tromey.com>
13551
13552         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13553         const.
13554         (solib_bfd_open): Make pathname const.
13555         * solib.c (solib_bfd_open): Make pathname const.
13556         * solib-spu.c (spu_bfd_fopen): Make name const.
13557         (spu_bfd_open): Make pathname const.
13558         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13559         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13560
13561 2018-02-14  Tom Tromey  <tom@tromey.com>
13562
13563         * symfile.c (symfile_bfd_open): Update.
13564         * source.h (openp, source_full_path_of, find_and_open_source):
13565         Change argument type to unique_xmalloc_ptr.
13566         * source.c (openp): Take a unique_xmalloc_ptr.
13567         (source_full_path_of, find_and_open_source): Likewise.
13568         (open_source_file, symtab_to_fullname): Update.
13569         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13570         unique_xmalloc_ptr.
13571         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13572         (exec_file_find): Update.
13573         * psymtab.c (psymtab_to_fullname): Update.
13574         * nto-tdep.h (nto_find_and_open_solib): Update.
13575         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13576         unique_xmalloc_ptr.
13577         * exec.c (exec_file_attach): Update.
13578         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13579         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13580
13581 2018-02-14  Tom Tromey  <tom@tromey.com>
13582
13583         * solib.c: Include source.h.
13584         * nto-tdep.c: Include source.h.
13585         * mi/mi-cmd-env.c: Include source.h.
13586         * infcmd.c: Include source.h.
13587         * exec.c: Include source.h.
13588         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13589         (add_path, directory_switch, source_path, init_source_path): Move
13590         declarations...
13591         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13592         (add_path, directory_switch, source_path, init_source_path):
13593         ...here.
13594
13595 2018-02-14  Tom Tromey  <tom@tromey.com>
13596
13597         * solist.h (exec_file_find, solib_find): Return
13598         unique_xmalloc_ptr.
13599         (solib_bfd_fopen): Take a const char *.
13600         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13601         (exec_file_find, solib_find): Likewise.
13602         (solib_bfd_fopen): Do not take ownership of "pathname".
13603         (solib_bfd_open): Use unique_xmalloc_ptr.
13604         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13605         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13606         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13607         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13608
13609 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13610
13611         * ada-lang.c (name_match_type_from_name): Remove reference to
13612         ada_name_for_lookup in function's documentation.
13613         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13614
13615 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13616
13617         * defs.h (enum openp_flags): New enum.
13618         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13619         Move to enum openp_flags.
13620         (openp_flags): New enum flags.
13621         (openp): Change parameter type to openp_flags.
13622         * source.c (openp): Change parameter type to openp_flags.
13623         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13624         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13625
13626 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13627
13628         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13629         per-command.
13630
13631 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13632
13633         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13634         into...
13635         (class dwarf2_queue_guard): ...the destructor of this new class.
13636         (dw2_do_instantiate_symtab): Create instance of the new class
13637         dwarf2_queue_guard, remove cleanup.
13638
13639 2018-02-09  Tom Tromey  <tom@tromey.com>
13640
13641         * source.c (find_source_lines): Don't reference past the end of
13642         the vector.
13643
13644 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13645
13646         * remote.c (remote_btrace_maybe_reopen): Change error message.
13647         * btrace.c (btrace_enable): Likewise.
13648         (parse_xml_btrace): Likewise.
13649         (parse_xml_btrace_conf): Likewise.
13650
13651 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13652
13653         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13654         (linux_enable_pt, linux_enable_bts): Call
13655         diagnose_perf_event_open_fail.
13656
13657 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13658
13659         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13660         Remove parameter and change return type.  Update callers.  Move it.
13661         (linux_enable_bts, linux_enable_pt): Improve error message.
13662         (linux_enable_pt): Remove zero buffer size check.
13663         (linux_enable_btrace): Improve error messages.  Remove NULL return
13664         check.
13665
13666 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13667
13668         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13669         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13670         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13671         (linux_supports_pt, linux_supports_btrace): Remove.
13672         (linux_enable_bts): Call cpu_supports_bts.
13673         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13674         * remote.c (remote_supports_btrace): Remove.
13675         (init_remote_ops): Remove remote_supports_btrace.
13676         * target-delegates.c: Regenerated.
13677         * target.c (target_supports_btrace): Remove.
13678         * target.h (target_ops) <to_supports_btrace>: Remove
13679         (target_supports_btrace): Remove.
13680         * x86-linux-nat.c (x86_linux_create_target): Remove
13681         linux_supports_btrace.
13682
13683 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13684
13685         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13686         btrace failed.
13687         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13688         exception and use message in own exception.
13689
13690 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13691
13692         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13693         (perf_event_pt_event_type): Use gdb_file_up.
13694         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13695         scoped_fd, and scoped_mmap.
13696
13697 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13698
13699         * common/scoped_mmap.h: New.
13700         * unittests/scoped_mmap-selftest.c: New.
13701         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13702         unittests/scoped_mmap-selftest.c.
13703
13704 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13705
13706         * common/scoped_fd.h: New.
13707         * unittests/scoped_fd-selftest.c: New.
13708         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13709         unittests/scoped_fd-selftest.c.
13710
13711 2018-02-09  Tom Tromey  <tom@tromey.com>
13712
13713         * auto-load.c (auto_load_section_scripts): Use
13714         gdb::unique_xmalloc_ptr.
13715
13716 2018-02-09  Tom Tromey  <tom@tromey.com>
13717
13718         * auto-load.c (execute_script_contents): Use std::string.
13719
13720 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13721
13722         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13723         Python function, rather than a new command.
13724
13725 2018-02-08  Tom Tromey  <tom@tromey.com>
13726
13727         * solib.c (solib_find_1): Use std::string.
13728         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13729
13730 2018-02-08  Tom Tromey  <tom@tromey.com>
13731
13732         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13733
13734 2018-02-08  Tom Tromey  <tom@tromey.com>
13735
13736         * source.c (find_source_lines): Use gdb::def_vector.
13737
13738 2018-02-08  Tom Tromey  <tom@tromey.com>
13739
13740         * macrocmd.c (struct temporary_macro_definition): New.
13741         (macro_define_command): Use temporary_macro_definition.  Remove
13742         cleanups.
13743         (free_macro_definition_ptr): Remove.
13744
13745 2018-02-08  Tom Tromey  <tom@tromey.com>
13746
13747         * macroexp.c (maybe_expand): Use std::string.
13748
13749 2018-02-08  Tom Tromey  <tom@tromey.com>
13750
13751         * macroexp.c (struct macro_buffer): Add initializers for some
13752         members.
13753         (init_buffer, init_shared_buffer, free_buffer)
13754         (free_buffer_return_text): Remove.
13755         (macro_buffer): New constructors.
13756         (~macro_buffer): New destructor.
13757         (macro_buffer::set_shared): New method.
13758         (macro_buffer::resize_buffer, macro_buffer::appendc)
13759         (macro_buffer::appendmem): Now methods, not free functions.
13760         (set_token, append_tokens_without_splicing, stringify)
13761         (macro_stringify): Update.
13762         (gather_arguments): Change return type.  Remove argc_p argument,
13763         add args_ptr argument.  Use std::vector.
13764         (substitute_args): Remove argc argument.  Accept std::vector.
13765         (expand): Update.  Use std::vector.
13766         (scan, macro_expand, macro_expand_next): Update.
13767
13768 2018-02-08  Tom Tromey  <tom@tromey.com>
13769
13770         * symtab.c (default_collect_symbol_completion_matches_break_on):
13771         Use unique_xmalloc_ptr.
13772         * macroscope.h: (sal_macro_scope, user_macro_scope)
13773         (default_macro_scope): Return unique_xmalloc_ptr.
13774         * macroscope.c (sal_macro_scope, user_macro_scope)
13775         (default_macro_scope): Return unique_xmalloc_ptr.
13776         * macroexp.h (macro_expand, macro_expand_once): Return
13777         unique_xmalloc_ptr.
13778         * macroexp.c (macro_expand, macro_expand_once): Return
13779         unique_xmalloc_ptr.
13780         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13781         (info_macro_command, info_macros_command): Use
13782         unique_xmalloc_ptr.
13783         * compile/compile-c-support.c (write_macro_definitions): Use
13784         unique_xmalloc_ptr.
13785         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13786
13787 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13788
13789         * value.c (value_static_field): Assign field type instead of
13790         containing type when returning an optimized out value.
13791
13792 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13793
13794         * ft32-tdep.c (ft32_read_pc): Remove.
13795         (ft32_write_pc): Remove.
13796         (ft32_gdbarch_init): Update.
13797         * m32r-tdep.c (m32r_read_pc): Remove.
13798         (m32r_gdbarch_init): Update.
13799         * mep-tdep.c (mep_read_pc): Remove.
13800         (mep_gdbarch_init): Update.
13801         * microblaze-tdep.c (microblaze_write_pc): Remove.
13802         (microblaze_gdbarch_init): Update.
13803         * mn10300-tdep.c (mn10300_read_pc): Remove.
13804         (mn10300_write_pc): Remove.
13805         (mn10300_gdbarch_init): Update.
13806         * moxie-tdep.c (moxie_read_pc): Remove.
13807         (moxie_write_pc): Remove.
13808         (moxie_gdbarch_init): Update.
13809
13810 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13811
13812         * expprint.c (print_subexp_standard): Handle
13813         OP_F77_UNDETERMINED_ARGLIST.
13814         (dump_subexp_body_standard): Likewise.
13815
13816 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13817
13818         * target-descriptions.c (tdesc_element_visitor) Add empty
13819         implementations.
13820         (tdesc_type): Move make_gdb_type from here.
13821         (tdesc_type_builtin): Likewise.
13822         (tdesc_type_vector): Likewise.
13823         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13824         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13825         (make_gdb_type_union): Likewise.
13826         (make_gdb_type_flags): Likewise.
13827         (make_gdb_type_enum): Likewise.
13828         (make_gdb_type): New function.
13829         (tdesc_register_type): Use static make_gdb_type.
13830
13831 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13832
13833         * infcmd.c (default_print_one_register_info): Align natural-format
13834         column values consistently one under another.
13835         (pad_to_column): New function.
13836
13837 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13838
13839         * dwarf2read.c (dwarf2_physname): Move commment.
13840
13841 2018-02-01  Leszek Swirski  <leszeks@google.com>
13842
13843         * varobj.c (varobj_formatted_print_options): Allow recursive
13844         pretty printing if pretty printing is enabled.
13845
13846 2018-02-01  Leszek Swirski  <leszeks@google.com>
13847
13848         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13849         names after a structop as a filename.
13850
13851 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13852
13853         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13854         (arm_record_coproc_data_proc): Likewise.
13855
13856 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13857
13858         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13859
13860 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13861
13862         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13863         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13864
13865 2018-01-31  Pedro Alves  <palves@redhat.com>
13866
13867         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13868         * inflow.c (child_terminal_save_inferior): Wrap reference to
13869         tcgetpgrp in HAVE_TERMIOS_H.
13870         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13871         _WIN32.
13872         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13873         always iterate over all inferiors.
13874         (gdbsim_cntrl_c): Adjust.
13875         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13876
13877 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13878
13879         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13880         index type is objfile-owned if the element type is as well.
13881
13882 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13883
13884         GDB 8.1 released.
13885
13886 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13887
13888         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13889         "features/s390x-linux64.c".
13890         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13891         s390_linux32 and s390x_linux64.
13892         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13893         default tdesc.
13894         * s390-tdep.c: Include "features/s390-linux32.c" and
13895         "features/s390x-linux64.c".
13896         (s390_tdesc_valid): Add check for tdesc_has_registers.
13897         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13898         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13899         tdesc_s390x_linux64.
13900         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13901         tdesc_s390x_linux64 to...
13902         * s390-tdep.h: ...here.
13903
13904 2018-01-30  Pedro Alves  <palves@redhat.com>
13905
13906         PR gdb/13211
13907         * config.in, configure: Regenerate.
13908         * configure.ac: Check for getpgid.
13909         * go32-nat.c (go32_pass_ctrlc): New.
13910         (go32_target): Install it.
13911         * inf-child.c (inf_child_target): Install
13912         child_terminal_save_inferior, child_pass_ctrlc and
13913         child_interrupt.
13914         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13915         (inf_ptrace_target): No longer install it.
13916         * infcmd.c (interrupt_target_1): Adjust.
13917         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13918         (child_interrupt): Declare.
13919         (inferior::terminal_state): New.
13920         * inflow.c (struct terminal_info): Update comments.
13921         (inferior_process_group): Delete.
13922         (terminal_is_ours): Delete.
13923         (gdb_tty_state): New.
13924         (child_terminal_init): Adjust.
13925         (is_gdb_terminal, sharing_input_terminal_1)
13926         (sharing_input_terminal): New functions.
13927         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13928         Set the process's actual process group in the foreground if
13929         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13930         mark terminal as the inferior's if not sharing GDB's terminal.
13931         Don't check attach_flag.
13932         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13933         pass down a target_terminal_state.
13934         (child_terminal_save_inferior): New, factored out from ...
13935         (child_terminal_ours_1): ... this.  Handle
13936         target_terminal_state::is_ours_for_output.
13937         (child_interrupt, child_pass_ctrlc): New.
13938         (inflow_inferior_exit): Clear the inferior's terminal_state.
13939         (copy_terminal_info): Copy the inferior's terminal state.
13940         (_initialize_inflow): Remove reference to terminal_is_ours.
13941         * inflow.h (inferior_process_group): Delete.
13942         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13943         * procfs.c (procfs_target): Don't install procfs_interrupt.
13944         (procfs_interrupt): Delete.
13945         * remote.c (remote_serial_quit_handler): Adjust.
13946         (remote_interrupt): Remove ptid parameter.  Adjust.
13947         * target-delegates.c: Regenerate.
13948         * target.c: Include "terminal.h".
13949         (target_terminal::terminal_state): Rename to ...
13950         (target_terminal::m_terminal_state): ... this.
13951         (target_terminal::init): Adjust.
13952         (target_terminal::inferior): Adjust to per-inferior
13953         terminal_state.
13954         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13955         (target_terminal::ours, target_terminal::ours_for_output): Use
13956         target_terminal_is_ours_kind.
13957         (target_interrupt): Remove ptid parameter.  Adjust.
13958         (default_target_pass_ctrlc): Adjust.
13959         * target.h (target_ops::to_terminal_save_inferior): New field.
13960         (target_ops::to_interrupt): Remove ptid_t parameter.
13961         (target_interrupt): Remove ptid_t parameter.  Update comment.
13962         (target_pass_ctrlc): Update comment.
13963         * target/target.h (target_terminal_state): New scoped enum,
13964         factored out of ...
13965         (target_terminal::terminal_state): ... here.
13966         (target_terminal::inferior): Update comments.
13967         (target_terminal::restore_inferior): New.
13968         (target_terminal::is_inferior, target_terminal::is_ours)
13969         (target_terminal::is_ours_for_output): Adjust.
13970         (target_terminal::scoped_restore_terminal_state): Adjust to
13971         rename, and call restore_inferior() instead of inferior().
13972         (target_terminal::scoped_restore_terminal_state::m_state): Change
13973         type.
13974         (target_terminal::terminal_state): Rename to ...
13975         (target_terminal::m_terminal_state): ... this and change type.
13976
13977 2018-01-30  Pedro Alves  <palves@redhat.com>
13978
13979         * linux-nat.c (wait_for_signal): New function.
13980         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13981         directly.
13982         (async_terminal_is_ours)
13983         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13984         (linux_nat_add_target): Don't override
13985         to_terminal_inferior/to_terminal_ours.
13986
13987 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13988
13989         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13990
13991 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13992
13993         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13994         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13995         dwarf2_per_objfile_free here.
13996         (dwarf2_per_objfile_free): Remove.
13997         (_initialize_dwarf2_read): Don't register
13998         dwarf2_per_objfile_free as a registry cleanup.
13999
14000 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14001
14002         Avoid compilation errors in MinGW native builds
14003
14004         The error is triggered by including python-internal.h, and the
14005         error message is:
14006
14007              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14008                       from build-gnulib/import/math.h:27,
14009                       from d:/usr/Python26/include/pyport.h:235,
14010                       from d:/usr/Python26/include/Python.h:58,
14011                       from python/python-internal.h:94,
14012                       from python/py-arch.c:24:
14013              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14014         using ::hypot;
14015                 ^~~~~
14016
14017         This happens because Python headers define 'hypot' to expand t
14018         '_hypot' in the Windows builds.
14019         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14020         'hypoth'.  This avoids a compilation error.
14021
14022 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14023
14024         * MAINTAINERS (Write After Approval): Fix ordering.
14025
14026 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14027
14028         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14029
14030 2018-01-26  Alan Modra  <amodra@gmail.com>
14031
14032         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14033         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14034         Remove nop.  Make const.  Comment.
14035         (powerpc32_plt_stub_so_2): New.
14036         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14037         Correct count.  Update uses.
14038         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14039         Move common code reading PLT entry word.  Correct
14040         powerpc32_plt_stub PLT address calculation.
14041         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14042         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14043         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14044         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14045         (ppc64_standard_linkage8): Likewise.
14046         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14047         Correct insns description.
14048         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14049
14050 2018-01-24  Pedro Alves  <palves@redhat.com>
14051
14052         GCC PR libstdc++/83906
14053         * gdbtypes.c (operator==(const dynamic_prop &,
14054         const dynamic_prop &)): New.
14055         (operator==(const range_bounds &, const range_bounds &)): New.
14056         (check_types_equal): Use them instead of memcmp.
14057         * gdbtypes.h (operator==(const dynamic_prop &,
14058         const dynamic_prop &)): Declare.
14059         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14060         (operator==(const range_bounds &, const range_bounds &)): Declare.
14061         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14062
14063 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14064
14065         * s390-linux-tdep.c (s390_record_address_mask)
14066         (s390_record_calc_disp_common, s390_record_calc_disp)
14067         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14068         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14069         (s390_process_record): Move to s390-tdep.c.
14070         (s390_linux_init_abi_any): Adjust.
14071         * s390-tdep.c (s390_record_address_mask)
14072         (s390_record_calc_disp_common, s390_record_calc_disp)
14073         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14074         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14075         (s390_process_record): Moved from s390-linux-tdep.c
14076         (s390_gdbarch_init): Adjust.
14077
14078 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14079
14080         * s390-linux-nat.c (s390-tdep.h): New include.
14081         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14082         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14083         (ALLDEPFILES): Add s390-tdep.c.
14084         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14085         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14086         * s390-tdep.h: ...this.  New file.
14087         * s390-linux-tdep.c (s390-tdep.h): New include.
14088         (_initialize_s390_tdep): Rename to...
14089         (_initialize_s390_linux_tdep): ...this and adjust.
14090         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14091         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14092         s390-tdep.h.
14093         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14094         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14095         (s390_is_partial_instruction, s390_software_single_step)
14096         (is_non_branch_ril, s390_displaced_step_copy_insn)
14097         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14098         (s390_prologue_data, s390_addr, s390_store, s390_load)
14099         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14100         (s390_register_call_saved, s390_guess_tracepoint_registers)
14101         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14102         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14103         (s390_pseudo_register_name, s390_pseudo_register_type)
14104         (s390_pseudo_register_read, s390_pseudo_register_write)
14105         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14106         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14107         (s390_addr_bits_remove, s390_address_class_type_flags)
14108         (s390_address_class_type_flags_to_name)
14109         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14110         (s390_function_arg_float, s390_function_arg_vector)
14111         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14112         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14113         (s390_frame_align, s390_register_return_value, s390_return_value)
14114         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14115         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14116         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14117         (s390_trad_frame_prev_register, s390_unwind_cache)
14118         (s390_prologue_frame_unwind_cache)
14119         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14120         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14121         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14122         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14123         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14124         (s390_frame_base_address, s390_local_base_address)
14125         (s390_frame_base, s390_gcc_target_options)
14126         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14127         (s390_validate_reg_range, s390_tdesc_valid)
14128         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14129         * s390-tdep.c: ...this.  New file.
14130
14131 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14132
14133         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14134         (s390_process_record, s390_gdbarch_tdep_alloc)
14135         (s390_linux_init_abi_any): Use/set new hook.
14136
14137 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14138
14139         * s390-linux-tdep.c (osabi.h): New include.
14140         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14141         (s390_linux_init_abi_any): New functions.
14142         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14143
14144 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14145
14146         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14147         tdesc_has_registers check
14148
14149 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14150
14151         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14152         (s390_validate_reg_range): New macro.
14153         (s390_gdbarch_init): Adjust.
14154
14155 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14156
14157         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14158         (s390_gdbarch_tdep_alloc): Adjust.
14159         (s390_gdbarch_init): Adjust.
14160
14161 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14162
14163         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14164         <have_tdb>: Change type to bool.
14165         (s390_gdbarch_tdep_alloc): Adjust.
14166         (s390_gdbarch_init): Adjust.
14167
14168 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14169
14170         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14171         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14172         (s390_gdbarch_tdep_alloc): New function.
14173         (s390_gdbarch_init): Allocate tdep at start and use its fields
14174         instead of separate variables.
14175
14176 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14177
14178         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14179         when looking for cached gdbarch and add comment for remaining.
14180
14181 2018-01-22  Pedro Alves  <palves@redhat.com>
14182             Sergio Durigan Junior  <sergiodj@redhat.com>
14183
14184         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14185         case.
14186
14187 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14188
14189         * MAINTAINERS: Update my company e-mail address.
14190
14191 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14192
14193         * regcache.c (cooked_write_test): New function.
14194         (_initialize_regcache): Register the test.
14195
14196 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14197
14198         * ia64-tdep.c (ia64_pseudo_register_read): Call
14199         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14200         * m32c-tdep.c (m32c_cat_read): Likewise.
14201         (m32c_r3r2r1r0_read): Likewise.
14202         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14203         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14204
14205 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14206
14207         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14208         method raw_read instead of regcache_raw_read.
14209         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14210         * arm-tdep.c (arm_neon_quad_read): Likewise.
14211         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14212         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14213         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14214         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14215         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14216         (i386_pseudo_register_read_into_value): Likewise.
14217         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14218         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14219         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14220         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14221         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14222         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14223         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14224         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14225         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14226
14227 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14228
14229         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14230         * configure.tgt: Remove target mt.
14231         * mt-tdep.c: Remove.
14232         * regcache.c (cooked_read_test): Remove the check for mt.
14233
14234 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14235
14236         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14237         instead of gdbarch_pseudo_register_read_value.
14238
14239 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14240
14241         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14242         language is Ada.
14243
14244 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14245
14246         * linespec.c (create_sals_line_offset): Remove code that preserved
14247         the symtab_and_line's line number.
14248
14249 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14250
14251         * varobj.c (varobj_create): Don't set valid_block when creating a
14252         floating varobj.
14253
14254 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14255
14256         * varobj.c (varobj_create): Remove out of date comment.
14257
14258 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14259
14260         PR mi/20395
14261         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14262         updating innermost block.
14263         * parse.c (innermost_block_tracker::update): Take extra type
14264         parameter, and check types match before updating innermost block.
14265         (write_dollar_variable): Update innermost block for registers.
14266         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14267         (innermost_block_tracker::innermost_block_tracker): Initialise
14268         m_types member.
14269         (innermost_block_tracker::reset): Take type parameter.
14270         (innermost_block_tracker::update): Take type parameter, and pass
14271         type through as needed.
14272         (innermost_block_tracker::m_types): New member.
14273         * varobj.c (varobj_create): Pass type when reseting innermost
14274         block.
14275
14276 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14277
14278         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14279         * ada-lang.c (resolve_subexp): Likewise.
14280         * breakpoint.c (set_breakpoint_condition) Likewise.
14281         (watch_command_1) Likewise.
14282         * c-exp.y (variable): Likewise.
14283         * d-exp.y (PrimaryExpression): Likewise.
14284         * f-exp.y (variable): Likewise.
14285         * go-exp.y (variable): Likewise.
14286         * m2-exp.y (variable): Likewise.
14287         * objfiles.c (objfile::~objfile): Likewise.
14288         * p-exp.y (variable): Likewise.
14289         * parse.c (innermost_block): Change type.
14290         * parser-defs.h (class innermost_block_tracker): New.
14291         (innermost_block): Change to innermost_block_tracker.
14292         * printcmd.c (display_command): Switch to innermost_block API.
14293         (do_one_display): Likewise.
14294         * rust-exp.y (do_one_display): Likewise.
14295         * symfile.c (clear_symtab_users): Likewise.
14296         * varobj.c (varobj_create): Switch to innermost_block API, replace
14297         use of innermost_block with block stored on varobj object.
14298
14299 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14300
14301         * expression.h (innermost_block): Remove declaration.
14302         * varobj.c: Add 'parser-defs.h' include.
14303
14304 2018-01-19  Tom Tromey  <tom@tromey.com>
14305
14306         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14307         symbols in the static and global blocks.
14308
14309 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14310
14311         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14312         gdb_ptrace.h, and move including gdb_wait.h ...
14313         * nat/linux-ptrace.h: ... to here.
14314
14315 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14316
14317         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14318         inf_ptrace_detach_success.
14319         (inf_ptrace_detach_success): Add inferior parameter, use it
14320         instead of inferior_ptid, pass it to detach_inferior.
14321         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14322         parameter.
14323         * inferior.c (detach_inferior): Add overload that takes an
14324         inferior object.
14325         * inferior.h (detach_inferior): Likewise.
14326         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14327         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14328         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14329
14330 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14331
14332         * target.h (struct target_ops) <to_detach>: Add inferior
14333         parameter.
14334         (target_detach): Likewise.
14335         * target.c (dispose_inferior): Pass inferior down.
14336         (target_detach): Pass inferior down.  Assert that it is equal to
14337         the current inferior.
14338         * aix-thread.c (aix_thread_detach): Pass inferior down.
14339         * corefile.c (core_file_command): Pass current_inferior() down.
14340         * corelow.c (core_detach): Add inferior parameter.
14341         * darwin-nat.c (darwin_detach): Likewise.
14342         * gnu-nat.c (gnu_detach): Likewise.
14343         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14344         * infcmd.c (detach_command): Pass current_inferior() down to
14345         target_detach.
14346         * infrun.c (follow_fork_inferior): Pass parent_inf to
14347         target_detach.
14348         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14349         target_detach.
14350         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14351         * linux-thread-db.c (thread_db_detach): Likewise.
14352         * nto-procfs.c (procfs_detach): Likewise.
14353         * procfs.c (procfs_detach): Likewise.
14354         * record.c (record_detach): Likewise.
14355         * record.h (struct inferior): Forward-declare.
14356         (record_detach): Add inferior parameter.
14357         * remote-sim.c (gdbsim_detach): Likewise.
14358         * remote.c (remote_detach_1): Likewise.
14359         (remote_detach): Likewise.
14360         (extended_remote_detach): Likewise.
14361         * sol-thread.c (sol_thread_detach): Likewise.
14362         * target-debug.h (target_debug_print_inferior_p): New macro.
14363         * target-delegates.c: Re-generate.
14364         * top.c (kill_or_detach): Pass inferior down to target_detach.
14365         * windows-nat.c (windows_detach): Add inferior parameter.
14366
14367 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14368
14369         * target.h (struct target_ops) <to_detach>: Remove args
14370         parameter.
14371         (target_detach): Likewise.
14372         * target.c (dispose_inferior): Adjust.
14373         (target_detach): Remove args parameter, adjust.
14374         * aix-thread.c (aix_thread_detach): Adjust.
14375         * corefile.c (core_file_command): Adjust.
14376         * corelow.c (core_detach): Adjust.
14377         * darwin-nat.c (darwin_detach): Adjust.
14378         * gnu-nat.c (gnu_detach): Adjust.
14379         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14380         * infcmd.c (detach_command): Adjust
14381         * infrun.c (follow_fork_inferior): Adjust.
14382         (handle_vfork_child_exec_or_exit): Adjust.
14383         * linux-fork.c (linux_fork_detach): Remove args parameter.
14384         * linux-fork.h (linux_fork_detach): Likewise.
14385         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14386         * linux-thread-db.c (thread_db_detach): Likewise.
14387         * nto-procfs.c (procfs_detach): Likewise.
14388         * procfs.c (procfs_detach): Likewise.
14389         (do_detach): Remove signo parameter.
14390         * record.c (record_detach): Remove args parameter.
14391         * record.h (record_detach): Likewise.
14392         * remote-sim.c (gdbsim_detach): Likewise.
14393         * remote.c (remote_detach_1): Likewise.
14394         (remote_detach): Likewise.
14395         (extended_remote_detach): Likewise.
14396         * sol-thread.c (sol_thread_detach): Likewise.
14397         * target-delegates.c: Re-generate.
14398         * top.c (struct qt_args) <args>: Remove field.
14399         (kill_or_detach): Don't pass args.
14400         (quit_force): Don't set args.
14401         * windows-nat.c (windows_detach): Remove args parameter.
14402
14403 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14404
14405         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14406         (arm_linux_init_abi): Install it.
14407
14408 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14409
14410         * osabi.c (gdb_osabi_names): Extend the regexp for
14411         arm-linux-gnueabihf.
14412
14413 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14414
14415         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14416         m_abbrevs.
14417         (abbrev_table::add_abbrev): Update.
14418         (abbrev_table::lookup_abbrev): Update.
14419
14420 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14421
14422         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14423
14424 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14425
14426         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14427         to "std::string".
14428
14429 2018-01-17  Tom Tromey  <tom@tromey.com>
14430
14431         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14432
14433 2018-01-17  Tom Tromey  <tom@tromey.com>
14434
14435         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14436         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14437         (create_array_type_with_stride): Update.
14438         * dwarf2read.c (set_die_type): Update.
14439
14440 2018-01-17  Tom Tromey  <tom@tromey.com>
14441
14442         * dwarf2read.c (delayed_method_info): Remove typedef.
14443         (dwarf2_cu::method_info): Now a std::vector.
14444         (add_to_method_list): Update.
14445         (free_delayed_list): Remove.
14446         (compute_delayed_physnames): Update.
14447         (process_full_comp_unit, process_full_type_unit): Clear the method
14448         list.  Remove cleanups.
14449         (psymtab_include_file_name): Add name_holder parameter.  Use
14450         unique_xmalloc_ptr.
14451         (dwarf_decode_lines): Update.
14452
14453 2018-01-17  Tom Tromey  <tom@tromey.com>
14454             Simon Marchi  <simon.marchi@ericsson.com>
14455
14456         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14457         (dwarf2_per_objfile::free_cached_comp_units)
14458         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14459         (init_cutu_and_read_dies_no_follow): Update.
14460         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14461         (dwarf2_cu::~dwarf2_cu): New.
14462         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14463         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14464
14465 2018-01-17  Tom Tromey  <tom@tromey.com>
14466             Simon Marchi  <simon.marchi@ericsson.com>
14467
14468         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14469         (struct die_reader_specs) <abbrev_table>: New member.
14470         (struct abbrev_table): Add constructor.
14471         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14472         <abbrev_obstack>: Now an auto_obstack.
14473         (abbrev_table_up): New typedef.
14474         (init_cu_die_reader): Add abbrev_table parameter.
14475         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14476         Add result_dwo_abbrev_table.
14477         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14478         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14479         Update.
14480         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14481         parameter.
14482         (skip_children): Update.
14483         (abbrev_table::alloc_abbrev): Rename from
14484         abbrev_table_alloc_abbrev.
14485         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14486         (abbrev_table::lookup_abbrev): Rename from
14487         abbrev_table_lookup_abbrev.
14488         (abbrev_table_read_table): Return abbrev_table_up.
14489         (abbrev_table_free, abbrev_table_free_cleanup)
14490         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14491         (load_partial_dies): Update.
14492
14493 2018-01-17  Tom Tromey  <tom@tromey.com>
14494
14495         * dwarf2read.c (dwarf2_compute_name): Update comment.
14496         (read_func_scope, read_variable): Update.
14497         (new_symbol): Remove.
14498         (new_symbol_full): Rename to new_symbol.
14499
14500 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14501
14502         PR gdb/16577
14503         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14504         a warning instead of throwing an error, set section size to 0 and return
14505         NULL.
14506         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14507
14508 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14509
14510         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14511         std::string.
14512         (linux_ptrace_attach_fail_reason_string): Likewise.
14513         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14514         Likewise.
14515         (linux_ptrace_attach_fail_reason_string): Likewise.
14516         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14517
14518 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14519
14520         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14521
14522 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14523
14524         PR gdb/21559
14525         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14526         checking for fs_base/gs_base fields in struct user_regs_struct.
14527         * configure: Regenerate.
14528
14529 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14530
14531         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14532         function.
14533         (aarch64_linux_init_abi): Install it to gdbarch hook
14534         gcc_target_options.
14535
14536 2018-01-15  Pedro Alves  <palves@redhat.com>
14537
14538         * common/signals-state-save-restore.c
14539         (save_original_signals_state): Fix typos.
14540
14541 2017-01-12  Tom Tromey  <tom@tromey.com>
14542             Sergio Durigan Junior  <sergiodj@redhat.com>
14543
14544         * Makefile.in (install-only): Install gdb-add-index.
14545
14546 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14547
14548         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14549
14550 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14551
14552         * infrun.c (keep_going_pass_signal): Clear step-over info when
14553         insert_breakpoints fails.
14554
14555 2018-01-11  Pedro Alves  <palves@redhat.com>
14556
14557         PR gdb/22583
14558         * infrun.c (resume): Rename to ...
14559         (resume_1): ... this.
14560         (resume): Reimplement as wrapper around resume_1.
14561
14562 2018-01-11  Pedro Alves  <palves@redhat.com>
14563
14564         PR remote/22597
14565         * remote.c (remote_parse_stop_reply): Default to the last-set
14566         general thread instead of to 'magic_null_ptid'.
14567
14568 2018-01-10  Pedro Alves  <palves@redhat.com>
14569
14570         * language.h (language_get_symbol_name_matcher): Rename ...
14571         (get_symbol_name_matcher): ... this.
14572         * language.c (language_get_symbol_name_matcher): Ditto.
14573         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14574         callers adjusted.
14575
14576 2018-01-10  Pedro Alves  <palves@redhat.com>
14577
14578         PR gdb/22670
14579         * dwarf2read.c
14580         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14581         Adjust to use language_get_symbol_name_matcher instead of
14582         language_defn::la_get_symbol_name_matcher.
14583         * language.c (language_get_symbol_name_matcher): If in Ada mode
14584         and the lookup name is a verbatim match, return Ada's matcher.
14585         * language.h (language_get_symbol_name_matcher): Adjust comment.
14586         (ada_lookup_name_info::verbatim_p):: New method.
14587
14588 2018-01-10  Pedro Alves  <palves@redhat.com>
14589
14590         PR gdb/22670
14591         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14592         minsym's language is language_auto or language_cplus, pass down
14593         language_ada instead.
14594         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14595
14596 2018-01-10  Pedro Alves  <palves@redhat.com>
14597
14598         PR gdb/22670
14599         * minsyms.c (linkage_name_str): New function.
14600         (iterate_over_minimal_symbols): Use it.
14601
14602 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14603
14604         * NEWS: Document that 'info proc' now works on FreeBSD.
14605
14606 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14607
14608         * configure.ac: Check for kinfo_getfile in libutil.
14609         * configure: Regenerate.
14610         * config.in: Regenerate.
14611         * fbsd-nat.c: Include "fbsd-tdep.h".
14612         (fbsd_fetch_cmdline): New.
14613         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14614         rather than calling error.
14615         (fbsd_info_proc): New.
14616         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14617         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14618         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14619
14620 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14621
14622         * fbsd-nat.c (struct free_deleter): Remove.
14623         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14624
14625 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14626
14627         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14628         NULL for an empty pathname.
14629
14630 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14631
14632         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14633         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14634         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14635         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14636         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14637         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14638         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14639         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14640         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14641         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14642         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14643         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14644         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14645         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14646         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14647
14648 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14649
14650         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14651         (gnu_xfer_auxv): New function.
14652         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14653         TARGET_OBJECT_AUXV.
14654
14655 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14656             Simon Marchi  <simon.marchi@ericsson.com>
14657
14658         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14659         common/selftest.c.
14660         (COMMON_OBS): Remove selftest.o.
14661         * configure.ac: Append selftest-arch.c and common/selftest.c to
14662         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14663         * configure: Re-generated.
14664         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14665         GDB_SELF_TEST.
14666         (maintenance_info_selftests): Likewise.
14667
14668 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14669
14670         * ada-valprint.c (val_print_packed_array_elements): Use
14671         proper number of elements when printing an array indexed
14672         by an enumeration type.
14673
14674 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14675
14676         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14677         (dw2_get_file_names_reader): Adjust.
14678         (lookup_dwo_signatured_type): Adjust.
14679         (lookup_dwp_signatured_type): Adjust.
14680         (lookup_signatured_type): Adjust.
14681         (create_type_unit_group): Adjust.
14682         (get_type_unit_group): Adjust.
14683         (process_psymtab_comp_unit_reader): Adjust.
14684         (build_type_psymtabs_reader): Adjust.
14685         (scan_partial_symbols): Adjust.
14686         (add_partial_symbol): Adjust.
14687         (add_partial_subprogram): Adjust.
14688         (peek_die_abbrev): Adjust.
14689         (fixup_go_packaging): Adjust.
14690         (process_imported_unit_die): Adjust.
14691         (dwarf2_compute_name): Adjust.
14692         (dwarf2_physname): Adjust.
14693         (read_import_statement): Adjust.
14694         (handle_DW_AT_stmt_list): Adjust.
14695         (read_file_scope): Adjust.
14696         (read_func_scope): Adjust.
14697         (read_lexical_block_scope): Adjust.
14698         (read_call_site_scope): Adjust.
14699         (read_variable): Adjust.
14700         (dwarf2_rnglists_process): Adjust.
14701         (dwarf2_ranges_process): Adjust.
14702         (dwarf2_ranges_read): Adjust.
14703         (dwarf2_get_pc_bounds): Adjust.
14704         (dwarf2_record_block_ranges): Adjust.
14705         (dwarf2_add_field): Adjust.
14706         (dwarf2_add_member_fn): Adjust.
14707         (read_structure_type): Adjust.
14708         (process_structure_scope): Adjust.
14709         (read_enumeration_type): Adjust.
14710         (read_array_type): Adjust.
14711         (mark_common_block_symbol_computed): Adjust.
14712         (read_common_block): Adjust.
14713         (read_namespace_type): Adjust.
14714         (read_namespace): Adjust.
14715         (read_module_type): Adjust.
14716         (read_tag_pointer_type): Adjust.
14717         (read_tag_ptr_to_member_type): Adjust.
14718         (read_tag_string_type): Adjust.
14719         (read_subroutine_type): Adjust.
14720         (read_typedef): Adjust.
14721         (read_base_type): Adjust.
14722         (attr_to_dynamic_prop): Adjust.
14723         (read_subrange_type): Adjust.
14724         (read_unspecified_type): Adjust.
14725         (dwarf2_read_abbrevs): Adjust.
14726         (load_partial_dies): Adjust.
14727         (read_partial_die): Adjust.
14728         (find_partial_die): Adjust.
14729         (guess_partial_die_structure_name): Adjust.
14730         (fixup_partial_die): Adjust.
14731         (read_attribute_value): Adjust.
14732         (read_addr_index): Adjust.
14733         (read_addr_index_from_leb128): Adjust.
14734         (read_str_index): Adjust.
14735         (dwarf2_string_attr): Adjust.
14736         (get_debug_line_section): Adjust.
14737         (dwarf_decode_line_header): Adjust.
14738         (lnp_state_machine::check_line_address): Adjust.
14739         (dwarf_decode_lines_1): Adjust.
14740         (dwarf_decode_lines): Adjust.
14741         (dwarf2_start_symtab): Adjust.
14742         (var_decode_location): Adjust.
14743         (new_symbol_full): Adjust.
14744         (dwarf2_const_value_data): Adjust.
14745         (dwarf2_const_value_attr): Adjust.
14746         (dwarf2_const_value): Adjust.
14747         (die_type): Adjust.
14748         (die_containing_type): Adjust.
14749         (build_error_marker_type): Adjust.
14750         (lookup_die_type): Adjust.
14751         (guess_full_die_structure_name): Adjust.
14752         (anonymous_struct_prefix): Adjust.
14753         (determine_prefix): Adjust.
14754         (dwarf2_name): Adjust.
14755         (follow_die_ref_or_sig): Adjust.
14756         (follow_die_offset): Adjust.
14757         (follow_die_ref): Adjust.
14758         (follow_die_sig_1): Adjust.
14759         (follow_die_sig): Adjust.
14760         (get_signatured_type): Adjust.
14761         (get_DW_AT_signature_type): Adjust.
14762         (decode_locdesc): Adjust.
14763         (dwarf_decode_macros): Adjust.
14764         (cu_debug_loc_section): Adjust.
14765         (fill_in_loclist_baton): Adjust.
14766         (dwarf2_symbol_mark_computed): Adjust.
14767         (init_one_comp_unit): Don't assign
14768         dwarf2_cu::dwarf2_per_objfile.
14769         (set_die_type): Adjust.
14770
14771 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14772
14773         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14774         <dwarf2_per_objfile>: New field.
14775         (dwarf2_per_objfile): Remove global.
14776         (get_dwarf2_per_objfile): New function.
14777         (set_dwarf2_per_objfile): New function.
14778         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14779         dwarf2_per_objfile.
14780         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14781         (read_abbrev_offset): Likewise.
14782         (read_indirect_string): Likewise.
14783         (read_indirect_line_string): Likewise.
14784         (read_indirect_string_at_offset): Likewise.
14785         (read_indirect_string_from_dwz): Likewise.
14786         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14787         dwarf2_per_objfile.
14788         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14789         (create_all_comp_units): Change objfile parameter to
14790         dwarf2_per_objfile.
14791         (create_all_type_units): Likewise.
14792         (process_queue): Add dwarf2_per_objfile parameter.
14793         (read_and_check_comp_unit_head): Likewise.
14794         (lookup_dwo_unit_in_dwp): Likewise.
14795         (get_dwp_file): Likewise.
14796         (process_cu_includes): Likewise.
14797         (struct free_dwo_file_cleanup_data): New struct.
14798         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14799         set_dwarf2_per_objfile.
14800         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14801         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14802         context, adjust calls.
14803         (dw2_instantiate_symtab): Likewise.
14804         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14805         (dw2_get_cu): Likewise.
14806         (create_cu_from_index_list): Change objfile parameter to
14807         dwarf2_per_objfile.
14808         (create_cus_from_index_list): Get dwarf2_per_objfile from
14809         context, adjust calls.
14810         (create_cus_from_index): Likewise.
14811         (create_signatured_type_table_from_index): Change objfile
14812         parameter to dwarf2_per_objfile.
14813         (create_signatured_type_table_from_debug_names): Change objfile
14814         parameter to dwarf2_per_objfile.
14815         (create_addrmap_from_index): Likewise.
14816         (create_addrmap_from_aranges): Likewise.
14817         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14818         (dw2_setup): Remove.
14819         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14820         context.
14821         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14822         get_dwarf2_per_objfile.
14823         (dw2_forget_cached_source_info): Likewise.
14824         (dw2_map_symtabs_matching_filename): Likewise.
14825         (struct dw2_symtab_iterator) <index>: Remove.
14826         <dwarf2_per_objfile>: New field.
14827         (dw2_symtab_iter_init): Replace index parameter with
14828         dwarf2_per_objfile.
14829         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14830         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14831         (dw2_print_stats): Likewise.
14832         (dw2_dump): Likewise.
14833         (dw2_expand_symtabs_for_function): Likewise.
14834         (dw2_expand_all_symtabs): Likewise.
14835         (dw2_expand_symtabs_with_fullname): Likewise.
14836         (dw2_expand_marked_cus): Replace index and objfile parameters
14837         with dwarf2_per_objfile.
14838         (dw_expand_symtabs_matching_file_matcher): Add
14839         dwarf2_per_objfile parameter and adjust calls.
14840         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14841         adjust calls.
14842         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14843         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14844         adjust calls.
14845         (create_cus_from_debug_names_list): Replace objfile parameter
14846         with dwarf2_per_objfile and adjust calls.
14847         (create_cus_from_debug_names): Likewise.
14848         (dwarf2_read_debug_names): Likewise.
14849         (mapped_debug_names::namei_to_name): Adjust call.
14850         (dw2_debug_names_iterator::next): Likewise.
14851         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14852         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14853         (dw2_debug_names_dump): Likewise.
14854         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14855         (dw2_debug_names_expand_symtabs_matching): Likewise.
14856         (dwarf2_initialize_objfile): Likewise.
14857         (dwarf2_build_psymtabs): Likewise.
14858         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14859         this_cu.
14860         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14861         (read_and_check_comp_unit_head): Likewise.
14862         (read_abbrev_offset): Likewise.
14863         (create_debug_type_hash_table): Likewise.
14864         (create_debug_types_hash_table): Likewise.
14865         (create_all_type_units): Replace objfile parameter with
14866         dwarf2_per_objfile.
14867         (add_type_unit): Add dwarf2_per_objfile parameter.
14868         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14869         with dwarf2_per_objfile.
14870         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14871         (lookup_dwp_signatured_type): Likewise.
14872         (lookup_signatured_type): Likewise.
14873         (read_cutu_die_from_dwo): Likewise.
14874         (init_tu_and_read_dwo_dies): Likewise.
14875         (init_cutu_and_read_dies): Likewise.
14876         (init_cutu_and_read_dies_no_follow): Likewise.
14877         (allocate_type_unit_groups_table): Add objfile parameter.
14878         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14879         (get_type_unit_group): Likewise.
14880         (process_psymtab_comp_unit): Update call.
14881         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14882         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14883         (print_tu_stats): Likewise.
14884         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14885         in void* parameter.
14886         (build_type_psymtabs): Change objfile parameter to
14887         dwarf2_per_objfile.
14888         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14889         passed in void* parameter.
14890         (process_skeletonless_type_units): Change objfile parameter to
14891         dwarf2_per_objfile.
14892         (set_partial_user): Likewise.
14893         (dwarf2_build_psymtabs_hard): Likewise.
14894         (read_comp_units_from_section): Likewise.
14895         (create_all_comp_units): Likewise.
14896         (scan_partial_symbols): Update calls.
14897         (add_partial_symbol): Likewise.
14898         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14899         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14900         (process_queue): Add dwarf2_per_objfile parameter.
14901         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14902         (compute_compunit_symtab_includes): Likewise.
14903         (process_cu_includes): Add dwarf2_per_objfile parameter.
14904         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14905         (process_full_type_unit): Likewise.
14906         (process_imported_unit_die): Update call.
14907         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14908         (read_file_scope): Likewise.
14909         (allocate_dwo_file_hash_table): Add objfile parameter.
14910         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14911         (create_cus_hash_table): Likewise.
14912         (create_dwp_hash_table): Likewise.
14913         (create_dwo_unit_in_dwp_v1): Likewise.
14914         (create_dwp_v2_section): Likewise.
14915         (create_dwo_unit_in_dwp_v2): Likewise.
14916         (lookup_dwo_unit_in_dwp): Likewise.
14917         (try_open_dwop_file): Likewise.
14918         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14919         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14920         cleanup to include a reference to dwarf2_per_objfile.
14921         (open_dwp_file): Add dwarf2_per_objfile parameter.
14922         (open_and_init_dwp_file): Likewise.
14923         (get_dwp_file): Likewise.
14924         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14925         (queue_and_load_all_dwo_tus): Update call.
14926         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14927         data.
14928         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14929         (dwarf2_ranges_process): Likewise.
14930         (dwarf2_get_pc_bounds): Likewise.
14931         (mark_common_block_symbol_computed): Likewise.
14932         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14933         (dwarf2_read_abbrevs): Update call.
14934         (read_partial_die): Use dwarf2_per_objfile from cu.
14935         (find_partial_die): Likewise.
14936         (fixup_partial_die): Likewise.
14937         (read_attribute_value): Likewise.
14938         (read_indirect_string_at_offset_from): Add objfile parameter.
14939         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14940         parameter.
14941         (read_indirect_string_from_dwz): Add objfile parameter.
14942         (read_indirect_string): Add objfile parameter.
14943         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14944         (read_addr_index): Use dwarf2_per_objfile from cu.
14945         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14946         call dw2_setup.
14947         (read_str_index): Use dwarf2_per_objfile from cu.
14948         (get_debug_line_section): Likewise.
14949         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14950         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14951         (new_symbol_full): Use dwarf2_per_objfile from cu.
14952         (build_error_marker_type): Likewise.
14953         (lookup_die_type): Likewise.
14954         (determine_prefix): Likewise.
14955         (follow_die_offset): Likewise.
14956         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14957         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14958         (dwarf2_fetch_die_type_sect_off): Likewise.
14959         (dwarf2_get_die_type): Likewise.
14960         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14961         (get_signatured_type): Likewise.
14962         (get_DW_AT_signature_type): Likewise.
14963         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14964         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14965         (cu_debug_loc_section): Likewise.
14966         (fill_in_loclist_baton): Likewise.
14967         (dwarf2_symbol_mark_computed): Likewise.
14968         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14969         dwarf2_per_objfile.
14970         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14971         parameter.
14972         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14973         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14974         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14975         (set_die_type): Use dwarf2_free_objfile from cu.
14976         (get_die_type_at_offset): Likewise.
14977         (dwarf2_per_objfile_free): Don't assign global variable.
14978         (debug_names) <constructor>: Add dwarf2_per_objfile
14979         parameter, update m_debugstrlookup construction.
14980         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14981         parameter.
14982         <m_dwarf2_per_objfile>: New field.
14983         <lookup>: Use m_dwarf2_per_objfile.
14984         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14985         (psyms_seen_size): Likewise.
14986         (write_gdbindex): Replace objfile parameter with
14987         dwarf2_per_objfile.
14988         (write_debug_names): Likewise.
14989         (write_psymtabs_to_index): Likewise.
14990         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14991         calls.
14992
14993 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14994
14995         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14996         <dwarf2_per_objfile>: New field.
14997         (struct dwarf2_per_cu_data) <objfile>: Remove.
14998         <dwarf2_per_objfile>: New field.
14999         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15000         of objfile.
15001         (create_signatured_type_table_from_index): Likewise.
15002         (create_debug_type_hash_table): Likewise.
15003         (fill_in_sig_entry_from_dwo_entry): Likewise.
15004         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15005         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15006         objfile.
15007         (create_partial_symtab): Access objfile through
15008         dwarf2_per_objfile.
15009         (process_psymtab_comp_unit_reader): Likewise.
15010         (read_comp_units_from_section): Likewise.
15011         (scan_partial_symbols): Likewise.
15012         (add_partial_symbol): Likewise.
15013         (add_partial_subprogram): Likewise.
15014         (peek_die_abbrev): Likewise.
15015         (fixup_go_packaging): Likewise.
15016         (process_full_comp_unit): Likewise.
15017         (process_full_type_unit): Likewise.
15018         (process_imported_unit_die): Likewise.
15019         (dwarf2_compute_name): Likewise.
15020         (dwarf2_physname): Likewise.
15021         (read_import_statement): Likewise.
15022         (create_cus_hash_table): Assign dwarf2_physname instead of
15023         objfile.
15024         (read_func_scope): Access objfile through dwarf2_per_objfile.
15025         (read_lexical_block_scope): Likewise.
15026         (read_call_site_scope): Likewise.
15027         (read_variable): Likewise.
15028         (dwarf2_rnglists_process): Likewise.
15029         (dwarf2_ranges_process): Likewise.
15030         (dwarf2_ranges_read): Likewise.
15031         (dwarf2_record_block_ranges): Likewise.
15032         (dwarf2_add_field): Likewise.
15033         (dwarf2_add_member_fn): Likewise.
15034         (read_structure_type): Likewise.
15035         (process_structure_scope): Likewise.
15036         (read_enumeration_type): Likewise.
15037         (read_array_type): Likewise.
15038         (read_common_block): Likewise.
15039         (read_namespace_type): Likewise.
15040         (read_namespace): Likewise.
15041         (read_module_type): Likewise.
15042         (read_tag_pointer_type): Likewise.
15043         (read_tag_ptr_to_member_type): Likewise.
15044         (read_tag_string_type): Likewise.
15045         (read_subroutine_type): Likewise.
15046         (read_typedef): Likewise.
15047         (read_base_type): Likewise.
15048         (attr_to_dynamic_prop): Likewise.
15049         (read_subrange_type): Likewise.
15050         (read_unspecified_type): Likewise.
15051         (load_partial_dies): Likewise.
15052         (read_partial_die): Likewise.
15053         (find_partial_die): Likewise.
15054         (guess_partial_die_structure_name): Likewise.
15055         (fixup_partial_die): Likewise.
15056         (read_attribute_value): Likewise.
15057         (read_addr_index_from_leb128): Likewise.
15058         (dwarf2_read_addr_index): Likewise.
15059         (dwarf2_string_attr): Likewise.
15060         (lnp_state_machine::check_line_address): Likewise.
15061         (dwarf_decode_lines_1): Likewise.
15062         (dwarf_decode_lines): Likewise.
15063         (dwarf2_start_symtab): Likewise.
15064         (var_decode_location): Likewise.
15065         (new_symbol_full): Likewise.
15066         (dwarf2_const_value_data): Likewise.
15067         (dwarf2_const_value_attr): Likewise.
15068         (dwarf2_const_value): Likewise.
15069         (die_type): Likewise.
15070         (die_containing_type): Likewise.
15071         (lookup_die_type): Likewise.
15072         (guess_full_die_structure_name): Likewise.
15073         (anonymous_struct_prefix): Likewise.
15074         (dwarf2_name): Likewise.
15075         (follow_die_ref_or_sig): Likewise.
15076         (follow_die_offset): Likewise.
15077         (follow_die_ref): Likewise.
15078         (dwarf2_fetch_die_loc_sect_off): Likewise.
15079         (dwarf2_fetch_constant_bytes): Likewise.
15080         (dwarf2_fetch_die_type_sect_off): Likewise.
15081         (dwarf2_get_die_type): Likewise.
15082         (follow_die_sig): Likewise.
15083         (decode_locdesc): Likewise.
15084         (dwarf2_per_cu_objfile): Likewise.
15085         (dwarf2_per_cu_text_offset): Likewise.
15086         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15087         objfile.
15088         (set_die_type): Access objfile through
15089         dwarf2_per_objfile.
15090
15091 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15092
15093         * valprint.c (converted_character_d): Remove typedef.
15094         (DEF_VEC_O (converted_character_d)): Remove.
15095         (count_next_character): Use std::vector.
15096         (print_converted_chars_to_obstack): Likewise.
15097         (generic_printstr): Likewise.
15098
15099 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15100
15101         * xml-support.h (struct gdb_xml_value): Add constructor.
15102         <value>: Change type to unique_xmalloc_ptr.
15103         (gdb_xml_value_s): Remove typedef.
15104         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15105         (gdb_xml_element_start_handler): Change parameter type to
15106         std::vector.
15107         (xml_find_attribute): Likewise.
15108         * xml-support.c (xml_find_attribute): Change parameter type to
15109         std::vector and adjust.
15110         (gdb_xml_values_cleanup): Remove.
15111         (gdb_xml_parser::start_element): Adjust to std::vector.
15112         (xinclude_start_include): Change paraeter type to std::vector
15113         and adjust.
15114         * btrace.c (check_xml_btrace_version): Likewise.
15115         (parse_xml_btrace_block): Likewise.
15116         (parse_xml_btrace_pt_config_cpu): Likewise.
15117         (parse_xml_btrace_pt): Likewise.
15118         (parse_xml_btrace_conf_bts): Likewise.
15119         (parse_xml_btrace_conf_pt): Likewise.
15120         * memory-map.c (memory_map_start_memory): Likewise.
15121         (memory_map_start_property): Likewise.
15122         * osdata.c (osdata_start_osdata): Likewise.
15123         (osdata_start_item): Likewise.
15124         (osdata_start_column): Likewise.
15125         * remote.c (start_thread): Likewise.
15126         * solib-aix.c (library_list_start_library): Likewise.
15127         (library_list_start_list): Likewise.
15128         * solib-svr4.c (library_list_start_library): Likewise.
15129         (svr4_library_list_start_list): Likewise.
15130         * solib-target.c (library_list_start_segment): Likewise.
15131         (library_list_start_section): Likewise.
15132         (library_list_start_library): Likewise.
15133         (library_list_start_list): Likewise.
15134         * tracepoint.c (traceframe_info_start_memory): Likewise.
15135         (traceframe_info_start_tvar): Likewise.
15136         * xml-syscall.c (syscall_start_syscall): Likewise.
15137         * xml-tdesc.c (tdesc_start_target): Likewise.
15138         (tdesc_start_feature): Likewise.
15139         (tdesc_start_reg): Likewise.
15140         (tdesc_start_union): Likewise.
15141         (tdesc_start_struct): Likewise.
15142         (tdesc_start_flags): Likewise.
15143         (tdesc_start_enum): Likewise.
15144         (tdesc_start_field): Likewise.
15145         (tdesc_start_enum_value): Likewise.
15146         (tdesc_start_vector): Likewise.
15147
15148 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15149
15150         * extension.h (struct xmethod_worker) <clone>: Remove.
15151         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15152         Remove.
15153         (python_xmethod_worker::clone): Remove.
15154         * valops.c (find_overload_match): Use std::move instead of
15155         clone.
15156
15157 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15158
15159         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15160         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15161         <free_xmethod_worker_data>: Remove.
15162         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15163         <get_xmethod_arg_types>: Remove.
15164         <get_xmethod_result_type>: Remove.
15165         <invoke_xmethod>: Remove.
15166         * extension.c (new_xmethod_worker): Remove.
15167         (clone_xmethod_worker): Remove.
15168         (get_matching_xmethod_workers): Return void, pass std::vector by
15169         pointer.
15170         (get_xmethod_arg_types): Rename to...
15171         (xmethod_worker::get_arg_types): ... this, and adjust.
15172         (get_xmethod_result_type): Rename to...
15173         (xmethod_worker::get_result_type): ... this, and adjust.
15174         (invoke_xmethod): Remove.
15175         (free_xmethod_worker): Remove.
15176         (free_xmethod_worker_vec): Remove.
15177         * extension.h (enum ext_lang_rc): Move here from
15178         extension-priv.h.
15179         (struct xmethod_worker): Add constructor and destructor.
15180         <data>: Remove.
15181         <value>: Remove.
15182         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15183         virtual pure methods.
15184         <get_arg_types, get_result_type>: New methods.
15185         (xmethod_worker_ptr): Remove typedef.
15186         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15187         (xmethod_worker_vec): Remove typedef.
15188         (xmethod_worker_up): New typedef.
15189         (invoke_xmethod): Remove.
15190         (clone_xmethod_worker): Remove.
15191         (free_xmethod_worker): Remove.
15192         (free_xmethod_worker_vec): Remove.
15193         (get_xmethod_arg_types): Remove.
15194         (get_xmethod_result_type): Remove.
15195         * valops.c (find_method_list): Use std::vector, don't use
15196         intermediate vector.
15197         (value_find_oload_method_list): Use std::vector.
15198         (find_overload_match): Use std::vector.
15199         (find_oload_champ): Use std::vector.
15200         * value.c (value_free): Use operator delete.
15201         (value_of_xmethod): Rename to...
15202         (value_from_xmethod): ... this.  Don't assign
15203         xmethod_worker::value, take rvalue-reference.
15204         (result_type_of_xmethod): Adjust.
15205         (call_xmethod): Adjust.
15206         * value.h: Include extension.h.
15207         (struct xmethod_worker): Don't forward-declare.
15208         (value_of_xmethod): Rename to...
15209         (value_from_xmethod): ... this, take rvalue-reference.
15210         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15211         (struct python_xmethod_worker): ... this, add constructor and
15212         destructor.
15213         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15214         (gdbpy_free_xmethod_worker_data): Rename to...
15215         (python_xmethod_worker::~python_xmethod_worker): ... this and
15216         adjust.
15217         (gdbpy_clone_xmethod_worker_data): Rename to...
15218         (python_xmethod_worker::clone): ... this and adjust.
15219         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15220         temporary vector.
15221         (gdbpy_get_xmethod_arg_types): Rename to...
15222         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15223         (gdbpy_get_xmethod_result_type): Rename to...
15224         (python_xmethod_worker::do_get_result_type): ... this and
15225         adjust.
15226         (gdbpy_invoke_xmethod): Rename to...
15227         (python_xmethod_worker::invoke): ... this and adjust.
15228         (new_python_xmethod_worker): Rename to...
15229         (python_xmethod_worker::python_xmethod_worker): ... this and
15230         adjust.
15231         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15232         Remove.
15233         (gdbpy_free_xmethod_worker_data): Remove.
15234         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15235         (gdbpy_get_xmethod_arg_types): Remove.
15236         (gdbpy_get_xmethod_result_type): Remove.
15237         (gdbpy_invoke_xmethod): Remove.
15238         * python/python.c (python_extension_ops): Remove obsolete
15239         callbacks.
15240
15241 2018-01-05  Pedro Alves  <palves@redhat.com>
15242
15243         PR gdb/18653
15244         * common/signals-state-save-restore.c
15245         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15246         find a custom handler preinstalled, instead of internal erroring.
15247         But only warn if !quiet.
15248         * common/signals-state-save-restore.h
15249         (save_original_signals_state): New parameter 'quiet'.
15250         * main.c (captured_main_1): Move save_original_signals_state call
15251         after option handling, and pass QUIET.
15252
15253 2018-01-05  Pedro Alves  <palves@redhat.com>
15254
15255         * spu-tdep.c (spu_catch_start): Pass
15256         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15257
15258 2018-01-05  Pedro Alves  <palves@redhat.com>
15259
15260         PR gdb/22670
15261         * ada-lang.c (literal_symbol_name_matcher): New function.
15262         (ada_get_symbol_name_matcher): Use it for
15263         symbol_name_match_type::SEARCH_NAME.
15264         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15265         it down instead of assuming symbol_name_match_type::FULL.
15266         * block.h (block_lookup_symbol): New parameter 'match_type'.
15267         * c-valprint.c (print_unpacked_pointer): Use
15268         lookup_symbol_search_name instead of lookup_symbol.
15269         * compile/compile-object-load.c (get_out_value_type): Pass down
15270         symbol_name_match_type::SEARCH_NAME.
15271         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15272         symbol_name_match_type::FULL.
15273         * cp-support.c (cp_get_symbol_name_matcher): Handle
15274         symbol_name_match_type::SEARCH_NAME.
15275         * infrun.c (insert_exception_resume_breakpoint): Use
15276         lookup_symbol_search_name.
15277         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15278         * psymtab.c (maintenance_check_psymtabs): Use
15279         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15280         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15281         SYMBOL_SEARCH_NAME.
15282         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15283         if symbol_name_match_type::SEARCH_NAME.
15284         (lookup_symbol_in_language): Pass down
15285         symbol_name_match_type::FULL.
15286         (lookup_symbol_search_name): New.
15287         (lookup_language_this): Pass down
15288         symbol_name_match_type::SEARCH_NAME.
15289         (lookup_symbol_aux, lookup_local_symbol): New parameter
15290         'match_type'.  Pass it down.
15291         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15292         (lookup_symbol_search_name): New declaration.
15293         (lookup_symbol_in_block): New 'match_type' parameter.
15294
15295 2018-01-05  Pedro Alves  <palves@redhat.com>
15296
15297         PR gdb/22670
15298         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15299         ada_lookup_symbol.
15300         (ada_lookup_symbol): Reimplement in terms of
15301         ada_lookup_symbol_list, bits factored out from
15302         ada_lookup_encoded_symbol.
15303
15304 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15305
15306         * ada-exp.y (write_object_renaming): When subscripting an array
15307         using a symbol as the index, pass the block in call to
15308         ada_lookup_encoded_symbol when looking that symbol up.
15309
15310 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15311
15312         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15313         TYPE_INDEX_TYPE.
15314
15315 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15316
15317         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15318         the case where VALUE_LVAL (val0) is not lval_memory.
15319
15320 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15321
15322         * ada-valprint.c (print_optional_low_bound): Handle
15323         character-indexed array printing like boolean-indexed array
15324         printing.
15325
15326 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15327
15328         * NEWS: Create a new section for the next release branch.
15329         Rename the section of the current branch, now that it has
15330         been cut.
15331
15332 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15333
15334         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15335         * version.in: Bump version to 8.1.50.DATE-git.
15336
15337 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15338
15339         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15340         Add field.
15341         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15342         Add field.
15343         (default_exception_support_info) <catch_handlers_sym>: Add field.
15344         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15345         (ada_exception_name_addr_1): Add "catch handlers" handling.
15346         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15347         Update all callers.
15348         (create_excep_cond_exprs) <ex>: Add parameter.
15349         (re_set_exception): Update create_excep_cond_exprs call.
15350         (print_it_exception, print_one_exception, print_mention_exception)
15351         (print_recreate_exception): Add "catch handler" handling.
15352         (allocate_location_catch_handlers, re_set_catch_handlers)
15353         (check_status_catch_handlers, print_it_catch_handlers)
15354         (print_one_catch_handlers, print_mention_catch_handlers)
15355         (print_recreate_catch_handlers): New function.
15356         (catch_handlers_breakpoint_ops): New variable.
15357         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15358         Add parameter.  Add "catch handler" handling.
15359         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15360         Add "catch handler" handling.
15361         (ada_exception_catchpoint_cond_string): Add "catch handler"
15362         handling.
15363         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15364         call.
15365         (catch_ada_handlers_command): New function.
15366         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15367         operations structure.
15368         (_initialize_ada_language): Add "catch handlers" command entry.
15369         * NEWS: Document "catch handlers" feature.
15370
15371 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15372
15373         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15374         account when creating the array type of the slice.
15375         (ada_value_slice): Likewise.
15376
15377 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15378
15379         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15380         New enum value.
15381         (create_array_type_with_stride): Add byte_stride_prop parameter.
15382         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15383         New parameter.  Update all callers in this file.
15384         (array_type_has_dynamic_stride): New function.
15385         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15386         of arrays with dynamic byte strides.
15387         * dwarf2read.c (read_array_type): Add support for dynamic
15388         DW_AT_byte_stride attributes.
15389
15390 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15391
15392         * dwarf2read.c (read_unspecified_type): Treat
15393         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15394
15395 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15396
15397         Update copyright year range in all GDB files.
15398
15399 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15400
15401         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15402         and gdb/testsuite/gdb.base/step-line.c.
15403
15404 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15405
15406         * copyright.py (main): Dump the contents of
15407         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15408         even if BY_HAND is empty.
15409
15410 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15411
15412         * top.c (print_gdb_version): Update Copyright year in version
15413         message.
15414
15415 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15416
15417         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15418
15419 For older changes see ChangeLog-2017.
15420 \f
15421 Local Variables:
15422 mode: change-log
15423 left-margin: 8
15424 fill-column: 74
15425 version-control: never
15426 coding: utf-8
15427 End: