rs6000-tdep.c:skip_prologue avoid negative left shift
[external/binutils.git] / gdb / ChangeLog
1 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
2
3         * rs6000-tdep.c (skip_prologue): Fix potential negative left
4         shifting.
5
6 2018-11-01  Jerome Guitton  <guitton@adacore.com>
7             Joel Brobecker  <brobecker@adacore.com>
8
9         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
10         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
11         * arm-pikeos-tdep.c: New file.
12         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
13         embedded system.
14         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
15
16 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
17
18         * common/pathstuff.c (get_standard_temp_dir): New.
19         * common/pathstuff.h (get_standard_temp_dir): New.
20         * config.in: Re-generate.
21         * configure: Re-generate.
22         * configure.ac: Don't check for mkdtemp.
23         * gnulib/aclocal-m4-deps.mk: Re-generate.
24         * gnulib/aclocal.m4: Re-generate.
25         * gnulib/config.in: Re-generate.
26         * gnulib/configure: Re-generate.
27         * gnulib/import/Makefile.am: Re-generate.
28         * gnulib/import/Makefile.in: Re-generate.
29         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
30         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
31         * gnulib/import/m4/mkdtemp.m4: New file.
32         * gnulib/import/mkdtemp.c: New file.
33         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
34         Add mkdtemp module.
35         * unittests/mkdir-recursive-selftests.c (test): Use
36         get_standard_temp_dir.
37         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
38         ifdef.
39         * compile/compile.c (get_compile_file_tempdir): Likewise.
40
41 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
42
43         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
44         (SIG_FRAME_LR_OFFSET64): New define.
45         (SIG_FRAME_FP_OFFSET64): New define.
46         (aix_sighandle_frame_cache): New Function.
47         (aix_sighandle_frame_this_id): New Function.
48         (aix_sighandle_frame_prev_register): New Function.
49         (aix_sighandle_frame_sniffer): New Function.
50         (aix_sighandle_frame_unwind): New global variable.
51         (rs6000_aix_init_osabi): Install new frame unwinder.
52
53 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
54
55         PR gdb/23835
56         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
57         already defined.
58
59 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
60
61         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
62
63 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
64
65         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
66         (producer_is_icc): New function.
67         (check_producer): Set producer_is_icc field on dwarf2_cu.
68         (dwarf2_init_integer_type): New function.
69         (read_base_type): Call dwarf2_init_integer_type instead of
70         init_integer_type in all cases.
71         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
72         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
73         LEN is greater than 0.
74
75 2018-10-30  Tom Tromey  <tom@tromey.com>
76
77         * main.c (captured_main_1): Check return value of bfd_init.
78
79 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
80
81         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
82         Adjust comments.
83
84 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
85
86         * procfs.c: Include common/pathstuff.h.
87
88 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
89
90         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
91         Add missing braces.  No functional change.
92
93 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
94
95         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
96         to report a bad option and fix indentation.
97         * demangle.c (demangle_command): Use report_unrecognized_option_error
98         to report a bad option and correctly report the bad option.
99
100 2018-10-27  Tom Tromey  <tom@tromey.com>
101
102         PR cli/23364:
103         * darwin-nat.c (copied_shell): New global.
104         (may_have_sip): Rename from should_disable_startup_with_shell.
105         (copy_shell_to_cache, maybe_cache_shell): New functions.
106         (darwin_nat_target::create_inferior): Update.  Use
107         copied_shell.
108
109 2018-10-27  Tom Tromey  <tom@tromey.com>
110
111         * unittests/scoped_fd-selftests.c (test_to_file): New function.
112         (run_tests): Call test_to_file.
113         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
114         temporary files.
115         * common/scoped_fd.h (scoped_fd::to_file): New method.
116
117 2018-10-27  Tom Tromey  <tom@tromey.com>
118
119         * unittests/scoped_mmap-selftests.c (test_normal): Use
120         gdb_mkostemp_cloexec.
121         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
122         Use gdb_mkostemp_cloexec.
123         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
124         gnulib/config.in, gnulib/configure,
125         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
126         gnulib/import/m4/gnulib-cache.m4,
127         gnulib/import/m4/gnulib-comp.m4: Update.
128         * gnulib/import/m4/mkostemp.m4: New file.
129         * gnulib/import/m4/mkstemp.m4: Remove.
130         * gnulib/import/mkostemp.c: New file.
131         * gnulib/import/mkstemp.m4: Remove.
132         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
133         mkstemp, add mkostemp.  Apply new patch.
134         * gnulib/import/stdlib.in.h: Apply patch.
135         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
136         New file.
137         * dwarf-index-write.c (write_psymtabs_to_index): Use
138         gdb_mkostemp_cloexec.
139         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
140
141 2018-10-27  Tom Tromey  <tom@tromey.com>
142
143         * unittests/mkdir-recursive-selftests.c: New file.
144         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
145         unittests/mkdir-recursive-selftests.c.
146         * dwarf-index-cache.c (mkdir_recursive): Move to
147         common/filestuff.c.
148         (index_cache::store): Check return value of mkdir_recursive.
149         (create_dir_and_check, test_mkdir_recursive): Move to new file.
150         (_initialize_index_cache): Don't register test.
151         * common/filestuff.h (mkdir_recursive): Declare.
152         * common/filestuff.c (mkdir_recursive): Move from
153         dwarf-index-cache.c.  Return bool.
154
155 2018-10-27  Tom Tromey  <tom@tromey.com>
156
157         * dwarf-index-write.c (write_psymtabs_to_index): Move
158         make_temp_filename to common/pathstuff.c.
159         * common/pathstuff.h (make_temp_filename): Declare.
160         * common/pathstuff.c (make_temp_filename): New function, moved
161         from dwarf-index-write.c.
162
163 2018-10-27  Tom Tromey  <tom@tromey.com>
164
165         * procfs.c (procfs_target::create_inferior): Use get_shell.
166         * cli/cli-cmds.c (shell_escape): Use get_shell.
167         * windows-nat.c (windows_nat_target::create_inferior): Use
168         get_shell.
169         * common/pathstuff.c (get_shell): New function.
170         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
171         (fork_inferior): Use get_shell.
172         * common/pathstuff.h (get_shell): Declare.
173
174 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
175
176         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
177
178 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
179
180         * stack.c (print_variable_and_value_data): Add preg and treg.
181         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
182         and update callers.
183         (print_frame_arg_vars): Likewise.
184         (prepare_reg): New function.
185         (info_locals_command): Extract info print args and use them.
186         (info_args_command): Likewise.
187         (_initialize_stack): Modify on-line help.
188         * symtab.c (treg_matches_sym_type_name): New function.
189         (search_symbols): New arg t_regexp.
190         (symtab_symbol_info): New args quiet, regexp, t_regexp.
191         (info_variables_command): Extract info print args and use them.
192         (info_functions_command): Likewise.
193         (info_types_command): Update call to symtab_symbol_info.
194         (_initialize_symtab): Modify on-line help.
195         * symtab.h (treg_matches_sym_type_name): New function.
196         (search_symbols): New t_regexp arg.
197
198 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
199
200         * cli-utils.c (extract_arg_maybe_quoted): New function.
201         (extract_info_print_args): New function.
202         (info_print_args_help): New function.
203         (report_unrecognized_option_error): New function.
204         * cli-utils.h (extract_arg_maybe_quoted): New function.
205         (extract_info_print_args): New function.
206         (info_print_args_help): New function.
207         (report_unrecognized_option_error): New function.
208
209 2018-10-26  Tom Tromey  <tom@tromey.com>
210
211         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
212         (compute_compunit_symtab_includes): Update.
213         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
214         (compunit_symtab_ptr): Likewise.
215
216 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
217
218         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
219         default_print_auxv_entry for specific tag values.
220
221 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
222
223         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
224
225 2018-10-26  Jim Wilson  <jimw@sifive.com>
226
227         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
228         (riscv_linux_sigframe_init): Declare.
229         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
230         (riscv_linux_sigframe): New.
231         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
232         (riscv_linux_sigframe_init): Define.
233         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
234
235         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
236         (riscv_isa_flen): Likewise.  Drop static.
237         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
238         (riscv_isa_flen): Likewise.  Declare.
239
240 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
241             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
242
243         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
244         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
245         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
246         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
247         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
248         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
249         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
250         Define.
251         (struct ppc_linux_features) <htm>: New field.
252         (ppc_linux_no_features): Add initializer for htm field.
253         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
254         new tdescs.
255         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
256         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
257         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
258         Define if not already defined.
259         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
260         and rs6000/powerpc-isa207-htm-vsx64l.
261         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
262         rs6000/powerpc-isa207-htm-vsx64l.xml.
263         * features/rs6000/power-htm-spr.xml: New file.
264         * features/rs6000/power-htm-core.xml: New file.
265         * features/rs6000/power64-htm-core.xml: New file.
266         * features/rs6000/power-htm-fpu.xml: New file.
267         * features/rs6000/power-htm-altivec.xml: New file.
268         * features/rs6000/power-htm-vsx.xml: New file.
269         * features/rs6000/power-htm-ppr.xml: New file.
270         * features/rs6000/power-htm-dscr.xml: New file.
271         * features/rs6000/power-htm-tar.xml: New file.
272         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
273         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
274         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
275         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
276         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
277         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
278         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
279         fetch_regset with HTM regsets.
280         (store_register, store_ppc_registers): Call store_regset with HTM
281         regsets.
282         (ppc_linux_nat_target::read_description): Set htm field in the
283         features struct if needed.
284         * ppc-linux-tdep.c: Include
285         features/rs6000/powerpc-isa207-htm-vsx32l.c and
286         features/rs6000/powerpc-isa207-htm-vsx64l.c.
287         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
288         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
289         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
290         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
291         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
292         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
293         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
294         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
295         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
296         (ppc32_linux_ctarregset): New globals.
297         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
298         (ppc_linux_collect_core_cpgrregset): New function.
299         (ppc_linux_iterate_over_regset_sections): Call back with the htm
300         regsets.
301         (ppc_linux_core_read_description): Check if the tm spr section is
302         present and set htm in the features struct.
303         (_initialize_ppc_linux_tdep): Call
304         initialize_tdesc_powerpc_isa207_htm_vsx32l and
305         initialize_tdesc_powerpc_isa207_htm_vsx64l.
306         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
307         Declare.
308         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
309         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
310         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
311         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
312         New fields.
313         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
314         Likewise.
315         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
316         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
317         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
318         New enum fields.
319         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
320         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
321         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
322         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
323         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
324         <PPC_CTAR_REGNUM>: Likewise.
325         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
326         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
327         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
328         (IS_CEFP_PSEUDOREG): Define.
329         (rs6000_register_name): Hide the upper halves of checkpointed VSX
330         registers.  Return names for the checkpointed DFP, VSX, and EFP
331         pseudo registers.
332         (rs6000_pseudo_register_type): Remove initial assert and raise an
333         internal error in the else clause instead.  Return types for the
334         checkpointed DFP, VSX, and EFP pseudo registers.
335         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
336         checkpointed DFP pseudo registers.
337         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
338         checkpointed VSX pseudo registers.
339         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
340         from efpr_pseudo_register_read and
341         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
342         registers.
343         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
344         Handle checkpointed DFP, VSX, and EFP registers.
345         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
346         (efp_ax_pseudo_register_collect): New functions.
347         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
348         register logic to new functions.  Handle checkpointed DFP, VSX,
349         and EFP pseudo registers.
350         (rs6000_gdbarch_init): Look for and validate the htm features.
351         Include checkpointed DFP, VSX and EFP pseudo-registers.
352         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
353         HTM registers.
354
355 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
356
357         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
358         without altivec or fpu.
359
360 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
361             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
362
363         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
364         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
365         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
366         Define if not already defined.
367         * features/rs6000/power-ebb.xml: New file.
368         * features/rs6000/power-linux-pmu.xml: New file.
369         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
370         features.
371         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
372         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
373         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
374         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
375         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
376         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
377         fetch_regset with ebb and pmu regsets.
378         (store_register, store_ppc_registers): Call store_regset with ebb
379         and pmu regsets.
380         (ppc_linux_nat_target::read_description): Set isa207 field in the
381         features struct if ebb and pmu are avaiable.
382         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
383         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
384         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
385         and pmu regsets.
386         (ppc_linux_core_read_description): Check if the pmu section is
387         present and set isa207 in the features struct.
388         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
389         (ppc32_linux_pmuregset): Declare.
390         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
391         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
392         <ppc_sier_regnum>: New field.
393         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
394         New enum values.
395         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
396         values.
397         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
398         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
399         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
400         ebb and pmu features.
401
402 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
403             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
404
405         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
406         (tdesc_powerpc_isa207_vsx64l): Declare.
407         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
408         (struct ppc_linux_features) <isa207>: New field.
409         (ppc_linux_no_features): Add initializer for isa207 field.
410         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
411         new tdescs.
412         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
413         (NT_PPC_TAR): Define if not already defined.
414         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
415         rs6000/powerpc-isa207-vsx64l.
416         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
417         rs6000/powerpc-isa207-vsx64l.xml.
418         * features/rs6000/power-tar.xml: New file.
419         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
420         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
421         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
422         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
423         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
424         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
425         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
426         fetch_regset with the TAR regset.
427         (store_register, store_ppc_registers): Call store_regset with the
428         TAR regset.
429         (ppc_linux_nat_target::read_description): Set isa207 field in the
430         features struct if needed.
431         * ppc-linux-tdep.c: Include
432         features/rs6000/powerpc-isa207-vsx32l.c and
433         features/rs6000/powerpc-isa207-vsx64l.c.
434         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
435         (ppc_linux_iterate_over_regset_sections): Call back with the tar
436         regset.
437         (ppc_linux_core_read_description): Check if the tar section is
438         present and set isa207 in the features struct.
439         (_initialize_ppc_linux_tdep): Call
440         initialize_tdesc_powerpc_isa207_vsx32l and
441         initialize_tdesc_powerpc_isa207_vsx64l.
442         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
443         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
444         (enum) <PPC_TAR_REGNUM>: New enum value.
445         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
446         feature.
447         (ppc_process_record_op31): Record changes to TAR.
448
449 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
450             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
451
452         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
453         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
454         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
455         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
456         (struct ppc_linux_features) <ppr_dscr>: New field.
457         (ppc_linux_no_features): Add initializer for ppr_dscr field.
458         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
459         new tdescs.
460         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
461         Define if not already defined.
462         * features/Makefile (WHICH): Add
463         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
464         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
465         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
466         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
467         * features/rs6000/power-dscr.xml: New file.
468         * features/rs6000/power-ppr.xml: New file.
469         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
470         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
471         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
472         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
473         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
474         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
475         * ppc-linux-nat.c: Include <sys/uio.h>.
476         (fetch_regset, store_regset, check_regset): New functions.
477         (fetch_register, fetch_ppc_registers): Call fetch_regset with
478         DSCR and PPR regsets.
479         (store_register, store_ppc_registers): Call store_regset with
480         DSCR and PPR regsets.
481         (ppc_linux_get_hwcap2): New function.
482         (ppc_linux_nat_target::read_description): Call
483         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
484         features struct if needed.
485         * ppc-linux-tdep.c: Include
486         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
487         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
488         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
489         (ppc32_linux_dscrregset): New globals.
490         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
491         and dscr regsets.
492         (ppc_linux_core_read_description): Check if the ppr and dscr
493         sections are present and set ppr_dscr in the features struct.
494         (_initialize_ppc_linux_tdep): Call
495         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
496         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
497         * ppc-linux-tdep.h (ppc32_linux_pprregset)
498         (ppc32_linux_dscrregset): Declare.
499         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
500         <ppc_dscr_regnum>: New field.
501         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
502         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
503         and dscr features.
504         (ppc_process_record_op31): Record changes to PPR and DSCR.
505
506 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
507
508         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
509         second initializer line for the have_* variables.  Initialize
510         have_fpu to 0 instead of 1.
511
512 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
513
514         * arch/ppc-linux-common.c (ppc_linux_match_description):
515         Parenthesize tdesc assignements and indent them properly.
516
517 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
518
519         * ppc-linux-nat.c (fetch_register): Change if statement to else
520         if.
521         (store_register): Likewise.
522
523 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
524
525         * rs6000-tdep.c: Remove reggroups.h include.
526         (rs6000_pseudo_register_reggroup_p): Remove.
527         (rs6000_gdbarch_init): Remove call to
528         set_tdesc_pseudo_register_reggroup_p.
529
530 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
531
532         * reggroups.c (default_register_reggroup_p): Return true for
533         decfloat registers and float_reggroup.
534
535 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
536
537         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
538         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
539         ppc_linux_collect_vrregset by regcache_collect_regset.
540
541 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
542
543         * linux-tdep.c (linux_collect_regset_section_cb): Use
544         std::vector<gdb_byte> instead of char * and malloc for buf.
545         Remove xfree.
546
547 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
548
549         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
550         symtab_start instead of always using language_unknown.
551
552 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
553
554         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
555         READ_P parameter, catch and ignore register access errors from
556         either the old or new MISA location.
557         (riscv_has_feature): Update call to riscv_read_misa_reg.
558
559 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
560
561         * python/py-function.c (convert_values_to_python): Return
562         gdbpy_ref<>.  Add header comment.
563         (fnpy_call): Adjust.
564
565 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
566
567         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
568         (cmdpy_completer_handle_brkchars): Adjust.
569         (cmdpy_completer): Adjust.
570
571 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
572
573         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
574         Pass correct regnum to raw_supply_zeroed.
575
576 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
577
578         * regcache.c (cooked_read_test): Add CSKY to the list of
579         architectures with a save_reggroup
580
581 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
582
583         PR gdb/23368
584         * infrun.c (follow_exec): In the follow_exec_mode_new case,
585         transfer terminal state from old new new inferior.
586         * terminal.h (swap_terminal_info): New function.
587         * inflow.c (swap_terminal_info): New function.
588
589 2018-10-23  Tom Tromey  <tom@tromey.com>
590
591         * record-btrace.c (get_thread_current_frame_id): Rename from
592         get_thread_current_frame.  Return a frame_id.
593         (record_btrace_start_replaying): Update.
594
595 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
596
597         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
598         for CSRs.
599
600 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
601
602         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
603         have_nonsteppable_watchpoint attribute to 1.
604
605 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
606
607         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
608         register names.
609         (struct register_alias): Rename to...
610         (struct riscv_register_alias): ...this, and update comment.
611         (riscv_register_aliases): Update type, and alias names.  Remove
612         CSR names from this list.
613         (riscv_register_name): Use riscv_gdb_reg_names for int and float
614         register names.  Add an extra assertion.
615         (riscv_is_regnum_a_named_csr): New function.
616         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
617
618 2018-10-22  Jim Wilson  <jimw@sifive.com>
619
620         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
621         FP reg smaller than FP reg size, and fill with -1 instead of 0.
622
623         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
624         (riscv_register_type): Use them.
625         (riscv_print_one_register_info): Handle union of floats same as float.
626         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
627         riscv_fpreg_q_type fields.
628
629 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
630
631         * gdbarch.sh (gdbarch_num_cooked_regs): New.
632         * gdbarch.h: Re-generate.
633         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
634         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
635         * eval.c (evaluate_subexp_standard): Likewise.
636         * findvar.c (value_of_register): Likewise.
637         (value_of_register_lazy): Likewise.
638         (address_from_register): Likewise.
639         * frame.c (get_frame_register_bytes): Likewise.
640         * gdbarch-selftests.c (register_to_value_test): Likewise.
641         * h8300-tdep.c (h8300_register_type): Likewise.
642         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
643         (i386_svr4_reg_to_regnum): Likewise.
644         * infcmd.c (default_print_registers_info): Likewise.
645         (registers_info): Likewise.
646         (print_vector_info): Likewise.
647         (default_print_float_info): Likewise.
648         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
649         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
650         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
651         (mi_cmd_data_list_changed_registers): Likewise.
652         (mi_cmd_data_list_register_values): Likewise.
653         (mi_cmd_data_write_register_values): Likewise.
654         (mi_cmd_trace_frame_collected): Likewise.
655         * mips-tdep.c (print_gp_register_row): Likewise.
656         (mips_print_registers_info): Likewise.
657         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
658         * regcache.c (init_regcache_descr): Likewise.
659         (register_size): Likewise.
660         (register_dump::dump): Likewise.
661         (cooked_read_test): Likewise.
662         (cooked_write_test): Likewise.
663         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
664         (rs6000_gdbarch_init): Likewise.
665         * stabsread.c (stab_reg_to_regnum): Likewise.
666         * stack.c (info_frame_command): Likewise.
667         * target-descriptions.c (tdesc_register_name): Likewise.
668         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
669         * tui/tui-regs.c (tui_show_register_group): Likewise.
670         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
671         (user_reg_map_regnum_to_name): Likewise.
672         (value_of_user_reg): Likewise.
673         (maintenance_print_user_registers): Likewise.
674         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
675         (xtensa_register_name): Likewise.
676         (xtensa_register_type): Likewise.
677         (xtensa_reg_to_regnum): Likewise.
678         (xtensa_pseudo_register_read): Likewise.
679         (xtensa_pseudo_register_write): Likewise.
680
681 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
682
683         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
684         correctly-sized buffer with raw_read.
685         (amd64_pseudo_register_write): Use correctly-sized buffer for
686         raw_read/raw_write.
687
688 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
689
690         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
691         in add_prefix_cmd of set print type.
692
693 2018-10-19  Tom Tromey  <tom@tromey.com>
694
695         PR tui/18388:
696         * NEWS: Mention tabset deprecation.
697         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
698         (update_tab_width): New function.
699         (tui_set_tab_width, tui_show_tab_width): New functions.
700         (tui_set_tab_width_command): Use update_tab_width.
701         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
702         Add new "set tui tab-width" command.
703         * tui/tui-source.c (tui_set_source_content): Update.
704         * tui/tui-disasm.c (tui_set_disassem_content): Update.
705         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
706         Don't declare.
707         (tui_tab_width): Declare.
708         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
709         (tui_set_default_tab_len): Remove.
710
711 2018-10-19  Tom Tromey  <tom@tromey.com>
712
713         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
714         (key_is_backspace, tui_getc): Don't declare.
715         * tui/tui-io.c (key_is_start_sequence): Now static.
716         (key_is_end_sequence, key_is_backspace): Remove.
717         (tui_getc): Now static.
718
719 2018-10-19  Tom Tromey  <tom@tromey.com>
720
721         * symfile.c (reread_symbols): Clear "static_links".
722
723 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
724
725         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
726         define.
727         (aarch64_linux_sigframe_init): Extra boundary checks.
728
729 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
730
731         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
732         the possibly non-existent tdesc type 'vec128', but the type of raw
733         register v16 instead.
734
735 2018-10-19  Gary Benson <gbenson@redhat.com>
736
737         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
738
739 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
740
741         PR cli/23785
742         * cli/cli-dump.c (restore_binary_file): Check if "file" is
743         NULL.
744
745 2018-10-17  Paul Koning  <paul_koning@dell.com>
746
747         * charset.c (convert_between_encodings): Fix unsigned overflow.
748
749 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
750
751         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
752         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
753         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
754         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
755         New functions.
756         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
757         and fbsd_info_proc_mappings_header.
758         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
759         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
760         New.
761
762 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
763
764         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
765         Solaris Maintainer.
766
767 2018-10-15  Tom Tromey  <tom@tromey.com>
768
769         * tui/tui.c (strcat_to_buf): Remove casts.
770         * tui/tui-winsource.c (tui_show_source_line)
771         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
772         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
773         * tui/tui-windata.c (tui_first_data_item_displayed)
774         (tui_delete_data_content_windows, tui_erase_data_content)
775         (tui_display_all_data, tui_display_data_from)
776         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
777         * tui/tui-win.c (tui_set_win_height)
778         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
779         casts.
780         * tui/tui-win.c (tui_resize_all): Remove casts.
781         (tui_scroll_backward_command, tui_set_focus)
782         (tui_set_tab_width_command): Likewise.
783         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
784         * tui/tui-regs.c (tui_show_register_group): Remove cast.
785         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
786         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
787         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
788         Remove casts.
789
790 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
791
792         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
793         AArch64/ARM maintainer.
794
795 2018-10-11  Gary Benson <gbenson@redhat.com>
796
797         * interps.h (interp::m_name): Make private and mutable.
798         * interps.c (interp::~interp): Free m_name.
799
800 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
801             Simon Marchi <simark@simark.ca>
802
803         * README (`configure' options): Add documentation for new
804         "--enable-unit-tests" option.
805         * acinclude.m4: Include "selftest.m4".
806         * configure: Regenerate.
807         * configure.ac: Use "GDB_AC_SELFTEST".
808         * maint.c (maintenance_selftest): Update message informing
809         that selftests have been disabled.
810         (maintenance_info_selftests): Likewise.
811         * selftest.m4: New file.
812
813 2018-10-10  Gary Benson <gbenson@redhat.com>
814
815         * remote.c (remote_target::remote_send_printf): Add
816         missing va_end found by Coverity.
817
818 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
819
820         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
821
822 2018-10-09  Tom Tromey  <tom@tromey.com>
823
824         * configure: Rebuild.
825         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
826         * NEWS: Update --enable-ubsan documentation.
827
828 2018-10-09  Gary Benson <gbenson@redhat.com>
829
830         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
831         found by Coverity.
832
833 2018-10-08  Tom Tromey  <tom@tromey.com>
834
835         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
836         variable.
837         (riscv_fbsd_init_abi): Likewise.
838
839 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
840         * valops.c (value_struct_elt_for_reference): Rename local variable
841         to work around the shadowing a previous local warning.
842
843 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
844
845         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
846         * NEWS: Mention new FreeBSD/riscv native configuration.
847         * configure.host: Add riscv*-*-freebsd*.
848         * configure.nat: Likewise.
849         * riscv-fbsd-nat.c: New file.
850
851 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
852
853         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
854         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
855         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
856         * NEWS: Mention new FreeBSD/riscv target.
857         * configure.tgt: Add riscv*-*-freebsd*.
858         * riscv-fbsd-tdep.c: New file.
859         * riscv-fbsd-tdep.h: New file.
860
861 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
862
863         * regcache.h (struct regcache_map_entry): Note that this type can
864         be used with traditional frame caches.
865         * trad-frame.c (trad_frame_set_reg_regmap): New.
866         * trad-frame.h (trad_frame_set_reg_regmap): New.
867
868 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
869
870         PR c++/16841
871         * valops.c (get_virtual_base_offset): New function.
872         (value_struct_elt_for_reference): Use it to get virtual base offset
873         and add it in calculating class member address.
874
875 2018-10-08   John Darrington <john@darrington.wattle.id.au>
876
877     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
878       (check_producer): Check if the producer is codewarrior.
879       (producer_is_codewarrior): New function.
880       (lnp_state_machine::record_line): Ignore is_stmt flag for records
881        produced by codewarrior.
882       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
883
884 2018-10-06  Tom Tromey  <tom@tromey.com>
885
886         PR python/19399:
887         * python/py-inferior.c: Add "architecture" entry.
888         (infpy_architecture): New function.
889
890 2018-10-06  Tom Tromey  <tom@tromey.com>
891
892         PR python/21765:
893         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
894         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
895         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
896         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
897
898 2018-10-06  Tom Tromey  <tom@tromey.com>
899
900         PR build/17077:
901         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
902         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
903         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
904         #include.
905
906 2018-10-06  Tom Tromey  <tom@tromey.com>
907
908         * python/py-breakpoint.c (bppy_get_location): Handle a
909         bp_breakpoint without a location.
910
911 2018-10-06  Tom Tromey  <tom@tromey.com>
912
913         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
914         (_RegEx): Reformat help text.
915         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
916         (AnyCallerIs, AnyCallerMatches): Reformat help text.
917         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
918         text.
919         * python/lib/gdb/command/xmethods.py (InfoXMethod)
920         (EnableXMethod, DisableXMethod): Remove help indentation.
921         Capitalize meta-syntactic variables.
922         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
923         (EnableUnwinder, DisableUnwinder): Remove help indentation.
924         Capitalize meta-syntactic variables.
925         * python/lib/gdb/command/explore.py (ExploreCommand)
926         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
927         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
928         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
929         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
930         Remove help indentation.
931         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
932         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
933         (DisableFrameFilter, SetFrameFilterPriority)
934         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
935
936 2018-10-06  Tom Tromey  <tom@tromey.com>
937
938         PR tui/28819:
939         * tui/tui-io.c (gdb_wgetch): New function.
940         (tui_mld_getc, tui_getc): Use it.
941
942 2018-10-05  Tom Tromey  <tom@tromey.com>
943
944         * sol-thread.c (sol_thread_target::wait): Rename inner
945         "save_ptid".
946
947 2018-10-04  Tom Tromey  <tom@tromey.com>
948
949         * configure: Rebuild.
950         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
951
952 2018-10-04  Tom Tromey  <tom@tromey.com>
953
954         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
955         declaration of "block".
956
957 2018-10-04  Tom Tromey  <tom@tromey.com>
958
959         * common/filestuff.c (fdwalk): Remove inner declaration of
960         "result".
961
962 2018-10-04  Tom Tromey  <tom@tromey.com>
963
964         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
965         "structs_addr" and hoist declaration.
966
967 2018-10-04  Tom Tromey  <tom@tromey.com>
968
969         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
970         variable "size".
971
972 2018-10-04  Tom Tromey  <tom@tromey.com>
973
974         * mdebugread.c (parse_partial_symbols): Use std::string.
975
976 2018-10-04  Tom Tromey  <tom@tromey.com>
977
978         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
979         * p-valprint.c (pascal_val_print): Split inner "i" variable.
980         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
981         header.
982         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
983         more inner scope.
984         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
985         * varobj.c (varobj_update): Rename inner "newobj",
986         "type_changed".
987         * valprint.c (generic_emit_char): Rename inner "buf".
988         * valops.c (find_overload_match): Rename inner "temp".
989         (value_struct_elt_for_reference): Declare "v" in more inner
990         scope.
991         * v850-tdep.c (v850_push_dummy_call): Rename "len".
992         * unittests/array-view-selftests.c (run_tests): Rename inner
993         "vec".
994         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
995         header.
996         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
997         "tsv" in more inner scope.
998         (print_one_static_tracepoint_marker): Rename inner
999         "tuple_emitter".
1000         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1001         (tic6x_push_dummy_call): Don't redeclare "addr".
1002         * target-float.c: Declare "dto" lower.
1003         * symtab.c (lookup_local_symbol): Rename inner "sym".
1004         (find_pc_sect_line): Rename inner "pc".
1005         * stack.c (print_frame): Don't redeclare "gdbarch".
1006         (return_command): Rename inner "gdbarch".
1007         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1008         "sp".
1009         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1010         header.
1011         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1012         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1013         scope.
1014         * remote.c (remote_target::update_thread_list): Don't redeclare
1015         "tp".
1016         (remote_target::process_initial_stop_replies): Rename inner
1017         "thread".
1018         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1019         (remote_target::wait_as): Don't redeclare "stop_reply".
1020         (remote_target::get_thread_local_address): Rename inner
1021         "result".
1022         (remote_target::get_tib_address): Likewise.
1023
1024         * regcache.c (cooked_read_test): Rename "regnum".
1025         * record-btrace.c (cmd_record_btrace_start): Rename inner
1026         "exception".
1027         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1028         loop header.
1029         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1030         header.
1031         (ppu2spu_sniffer): Rename inner "buf".
1032         * parse.c (operator_check_standard): Rename inner "type",
1033         "objfile".
1034         * p-valprint.c (pascal_val_print): Introduce new scope for
1035         "low_bound", "high_bound".
1036         * p-exp.y (yylex): Declare "i" in loop header.
1037         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1038         Lower declaration of "s".
1039         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1040         header.
1041         (nios2_push_dummy_call): Rename "len".
1042         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1043         "buf".
1044         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1045         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1046         (linux_xfer_osdata_modules): Likewise.
1047         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1048         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1049         (mips_o64_push_dummy_call): Likewise.
1050         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1051         "op".
1052         * mi/mi-main.c (list_available_thread_groups): Rename inner
1053         "tuple_emitter".
1054         (mi_cmd_data_read_memory): Rename inner "opts".
1055         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1056         "tuple_emitter".
1057         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1058         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1059         more inner scope.
1060         (parse_partial_symbols): Rename inner "pst", "p", "name"
1061         * main.c (captured_main_1): Rename inner "i"s.
1062         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1063         "oso2".
1064         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1065         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1066         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1067         (handle_signal_stop): Rename inner "gdbarch".
1068         (handle_command): Declare "signum" in loop header.
1069         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1070         "status".
1071         (examine_prologue): Rename inner "sol" and "sof".
1072         (ia64_extract_return_value): Rename inner "val".  Declare another
1073         "val" in a more inner scope.
1074         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1075         inner scope.
1076         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1077         "except".
1078         * findvar.c (default_read_var_value): Don't redeclare "addr".
1079         * f-exp.y (yylex): Declare "i" in loop header.
1080         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1081         Rename inner "type", "expect_type".
1082         (evaluate_subexp_for_sizeof): Rename inner "pc".
1083         * elfread.c (elf_symfile_read): Rename inner "abfd".
1084         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1085         "bytes_read".
1086         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1087         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1088         (dwarf_decode_line_header): Rename inner "lh".
1089         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1090         "offset".  Declare "i" in loop header.
1091         (disassemble_dwarf_expression): Rename inner "addr_size".
1092         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1093         inner "result".
1094         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1095         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1096         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1097         "inner_list_emitter".
1098         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1099         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1100         declaration in a block.
1101         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1102         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1103         "obstack_final_size".
1104         * cp-support.c (inspect_type): Declare "i" in loop header.
1105         * compile/compile.c (compile_instance::insert_symbol_error):
1106         Rename inner "e".
1107         * common/agent.c (agent_run_command): Remove inner "ret"
1108         declaration.
1109         * coffread.c (coff_symfile_read): Rename inner "name".
1110         (coff_symfile_read): Rename inner "abfd".
1111         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1112         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1113         "high".
1114         * c-exp.y (lex_one_token): Move "len" declaration lower.
1115         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1116         "gdbarch".
1117         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1118         "b".
1119         (watch_command_1): Declare "mark" later.
1120         (clear_command): Don't shadow "a" or "b".
1121         (delete_command): Rename inner "b".
1122         (delete_trace_command): Likewise.
1123         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1124         "op".
1125         (arm_gdbarch_init): Remove inner "e_flags".
1126         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1127         "offset" in inner blocks.
1128
1129 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1130
1131         * dwarf-index-write.c (file_write): Don't write if the vector is
1132         empty.
1133
1134 2018-10-05  Tom de Vries  <tdevries@suse.de>
1135
1136         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1137         PyArg_ParseTuple call.
1138
1139 2018-10-05  Tom de Vries  <tdevries@suse.de>
1140
1141         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1142         PyArg_ParseTuple call.
1143
1144 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1145
1146         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1147         to avoid exceeding 80 characters per line limit.
1148
1149 2018-10-04  Tom Tromey  <tom@tromey.com>
1150
1151         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1152         (reread_symbols): Update.
1153         * complaints.h (clear_complaints): Remove argument.
1154         * complaints.c (enum complaint_series): Remove.
1155         (series): Remove global.
1156         (complaint_internal): Update.
1157         (clear_complaints): Remove argument.
1158
1159 2018-10-04  Tom Tromey  <tom@tromey.com>
1160
1161         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1162         debugging symbols" message if there is a separate debug objfile.
1163
1164 2018-10-04  Tom Tromey  <tom@tromey.com>
1165
1166         PR cli/19551:
1167         * symfile.c (symbol_file_add_with_addrs): Update output.
1168         * psymtab.c (require_partial_symbols): Update output.
1169
1170 2018-10-04  Tom Tromey  <tom@tromey.com>
1171
1172         PR cli/22234:
1173         * complaints.c: Emit \n.
1174
1175 2018-10-04  Tom Tromey  <tom@tromey.com>
1176
1177         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1178         (separate_debug_file_exists, find_separate_debug_file)
1179         (add_symbol_file_command, reread_symbols, allocate_symtab)
1180         (allocate_compunit_symtab): Use filtered printing, not
1181         unfiltered.
1182         * psymtab.c (require_partial_symbols, dump_psymtab)
1183         (allocate_psymtab): Use filtered printing, not unfiltered.
1184
1185 2018-10-04  Tom Tromey  <tom@tromey.com>
1186
1187         * complaints.c (complaint_internal): Correctly check complaint
1188         count.
1189
1190 2018-10-04  Tom Tromey  <tom@tromey.com>
1191
1192         * complaints.h (struct complaints): Remove declaration.
1193         * complaints.c (clear_complaints): Remove an unused variable.
1194
1195 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1196
1197         * MAINTAINERS (Write After Approval): Add self.
1198
1199 2018-10-03  Tom Tromey  <tom@tromey.com>
1200
1201         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1202         "buffer_contents".
1203         * coffread.c (coff_symtab_read): Initialize "newobj".
1204
1205 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1206
1207         * dwarf2read.c (read_func_scope): Remove struct keyword in
1208         range-based for.
1209
1210 2018-10-03  Tom Tromey  <tom@tromey.com>
1211
1212         * README: Mention --enable-ubsan.
1213         * NEWS: Mention --enable-ubsan.
1214         * acinclude.m4: Include sanitize.m4.
1215         * configure: Rebuild.
1216         * configure.ac: Call AM_GDB_UBSAN.
1217         * sanitize.m4: New file.
1218
1219 2018-10-03  Tom Tromey  <tom@tromey.com>
1220
1221         * expression.h (enum exp_opcode): Use uint8_t as base type.
1222         * expprint.c (op_name): Handle invalid opcodes.
1223
1224 2018-10-03  Tom Tromey  <tom@tromey.com>
1225
1226         * parse.c (prefixify_expression): Add assert.
1227         (parse_exp_in_context_1): Throw exception if the expression is
1228         empty.
1229
1230 2018-10-03  Tom Tromey  <tom@tromey.com>
1231
1232         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1233
1234 2018-10-03  Tom Tromey  <tom@tromey.com>
1235
1236         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1237
1238 2018-10-03  Tom Tromey  <tom@tromey.com>
1239
1240         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1241         unsigned.
1242
1243 2018-10-03  Tom Tromey  <tom@tromey.com>
1244
1245         * findvar.c (extract_integer): Do work in an unsigned type.
1246
1247 2018-10-03  Tom Tromey  <tom@tromey.com>
1248
1249         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1250         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1251         base type.
1252         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1253         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1254         type.
1255         * c-lang.h (enum c_string_type_values): Use unsigned as base
1256         type.
1257         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1258
1259 2018-10-03  Tom Tromey  <tom@tromey.com>
1260
1261         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1262         <~dwarf2_frame_state_reg_info>: Update.
1263         <dwarf2_frame_state_reg_info>: Update.
1264         <alloc_regs>: Add assertion.  Update.
1265         <reg>: Now a std::vector.
1266         <num_regs>: Remove.
1267         <swap>: Update.
1268         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1269         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1270
1271 2018-10-03  Tom Tromey  <tom@tromey.com>
1272
1273         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1274
1275 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1276
1277         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1278
1279 2018-10-02  Tom Tromey  <tom@tromey.com>
1280
1281         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1282
1283 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1284
1285         * NEWS: Mention changed commands.
1286         * ser-uds.c: New file.
1287         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1288         * configure: Regenerate.
1289         * Makefile.in: Add new file.
1290         * serial.c (serial_open): Check if filename is a socket
1291           and lookup the appropriate interface accordingly.
1292
1293 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1294
1295         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1296         define.
1297         (AARCH64_EXTRA_MAGIC): Likewise.
1298         (AARCH64_FPSIMD_MAGIC): Likewise.
1299         (AARCH64_SVE_MAGIC): Likewise.
1300         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1301         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1302         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1303         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1304         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1305         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1306         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1307         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1308         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1309         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1310         (read_aarch64_ctx): Add function.
1311         (aarch64_linux_sigframe_init): Detect FP registers.
1312
1313 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1314
1315         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1316         (AARCH64_D0_REGNUM): Likewise.
1317         (AARCH64_S0_REGNUM): Likewise.
1318         (AARCH64_H0_REGNUM): Likewise.
1319         (AARCH64_B0_REGNUM): Likewise.
1320         (AARCH64_SVE_V0_REGNUM): Likewise.
1321         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1322         (AARCH64_D0_REGNUM): Likewise.
1323         (AARCH64_S0_REGNUM): Likewise.
1324         (AARCH64_H0_REGNUM): Likewise.
1325         (AARCH64_B0_REGNUM): Likewise.
1326         (AARCH64_SVE_V0_REGNUM): Likewise.
1327
1328 2018-10-01  Gary Benson <gbenson@redhat.com>
1329
1330         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1331         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1332         prfpregset_t instead of gdb_prfpregset_t.
1333         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1334         * configure, config.in: Rebuild.
1335
1336 2018-10-01  Gary Benson <gbenson@redhat.com>
1337
1338         * common/gdb_proc_service.h: New file, factored out from...
1339         * gdb_proc_service.h: Moved common code to the above file.
1340         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1341
1342 2018-10-01  Gary Benson <gbenson@redhat.com>
1343
1344         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1345         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1346
1347 2018-10-01  Gary Benson <gbenson@redhat.com>
1348
1349         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1350         (AC_CHECK_HEADERS): Check for linux/elf.h.
1351         * configure, config.in: Rebuild.
1352         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1353         doesn't define elf_fpregset_t.
1354
1355 2018-10-01  Gary Benson <gbenson@redhat.com>
1356
1357         * gdb_proc_service.h: Whitespace change.
1358
1359 2018-10-01  Tom Tromey  <tom@tromey.com>
1360
1361         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1362         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1363         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1364
1365 2018-10-01  Tom Tromey  <tom@tromey.com>
1366
1367         * README: Minor change.
1368
1369 2018-09-30  Pedro Alves  <palves@redhat.com>
1370
1371         * darwin-nat-info.c (darwin_debug_regions_recurse)
1372         (info_mach_exceptions_command): Remove unused local variables.
1373         * darwin-nat.c (darwin_decode_notify_message)
1374         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1375         (darwin_stop_inferior, darwin_setup_exceptions)
1376         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1377         (darwin_nat_target::attach, darwin_nat_target::detach)
1378         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1379         local variables.
1380         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1381         variables.
1382
1383 2018-09-29  Tom Tromey  <tom@tromey.com>
1384
1385         * README: Remove some leftover text.
1386
1387 2018-09-29  Tom Tromey  <tom@tromey.com>
1388
1389         * PROBLEMS: Rewrite.
1390         * README: Update.
1391
1392 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1393
1394         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1395         case with explicit breakpoint kind.
1396         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1397         'additional_info' and related logic.
1398         (riscv_debug_breakpoints): New variable.
1399         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1400         instruction to determine the breakpoint kind.
1401         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1402         flag.  Update description of 'set/show riscv
1403         use-compressed-breakpoints' flag.
1404
1405 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1406
1407         (NEWS): Mention changes to frame related commands.
1408         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1409         (add_prefix_cmd_suppress_notification): New function.
1410         (add_com_suppress_notification): Call
1411         add_cmd_suppress_notification.
1412         * command.h (add_cmd_suppress_notification): Declare.
1413         (add_prefix_cmd_suppress_notification): Declare.
1414         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1415         (parse_frame_specification): Moved from stack.c, with
1416         simplification to handle a single argument.
1417         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1418         switch to the selected frame.  Add a header comment.
1419         * stack.c: Remove 'safe-ctype.h' include.
1420         (find_frame_for_function): Add declaration.
1421         (find_frame_for_address): New function.
1422         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1423         (frame_selection_by_function_completer): New function.
1424         (info_frame_command): Rename to...
1425         (info_frame_command_core): ...this, and update parameter types.
1426         (select_frame_command): Rename to...
1427         (select_frame_command_core): ...this, and update parameter types.
1428         (frame_command): Rename to...
1429         (frame_command_core): ...this, and update parameter types.
1430         (class frame_command_helper): New class to wrap implementations of
1431         frame related sub-commands.
1432         (frame_apply_cmd_list): New static global.
1433         (frame_cmd_list): Make static.
1434         (select_frame_cmd_list): New global for sub-commands.
1435         (info_frame_cmd_list): New global for sub-commands.
1436         (_initialize_stack): Register sub-commands for 'frame',
1437         'select-frame', and 'info frame'.  Update 'frame apply' commands
1438         to use frame_apply_cmd_list.  Move function local static
1439         frame_apply_list to file static frame_apply_cmd_list for
1440         consistency.
1441         * stack.h (select_frame_command): Delete declarationn.
1442         (select_frame_for_mi): Declare new function.
1443
1444 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1445
1446         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1447         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1448         and NOP.
1449
1450 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1451
1452         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1453
1454 2018-09-26  Tom Tromey  <tom@tromey.com>
1455
1456         * valops.c (auto_abandon): Remove dead code.
1457
1458 2018-09-26  Tom Tromey  <tom@tromey.com>
1459
1460         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1461
1462 2018-09-24  Tom Tromey  <tom@tromey.com>
1463
1464         * common/pathstuff.c (get_standard_cache_dir): Make
1465         "xdg_cache_home" and "home" const.
1466         * top.c (init_history): Make "tmpenv" const.
1467         * main.c (get_init_files): Make "homedir" const.
1468
1469 2018-09-23  Tom Tromey  <tom@tromey.com>
1470
1471         PR python/18852:
1472         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1473
1474 2018-09-23  Tom Tromey  <tom@tromey.com>
1475
1476         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1477         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1478         * python/python-internal.h (gdbpy_handle_exception): Declare.
1479         * python/py-utils.c (gdbpy_handle_exception): New function.
1480
1481 2018-09-23  Tom Tromey  <tom@tromey.com>
1482
1483         PR python/17284:
1484         * python/py-type.c (typy_template_argument): Check for negative
1485         argument number.
1486
1487 2018-09-23  Tom Tromey  <tom@tromey.com>
1488
1489         PR python/14062:
1490         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1491
1492 2018-09-23  Tom Tromey  <tom@tromey.com>
1493
1494         PR python/18170:
1495         * python/py-value.c (valpy_int): Allow conversion from pointer
1496         type.
1497
1498 2018-09-23  Tom Tromey  <tom@tromey.com>
1499
1500         PR python/20126:
1501         * python/py-value.c (valpy_int): Respect type sign.
1502
1503 2018-09-23  Tom Tromey  <tom@tromey.com>
1504
1505         PR python/18352;
1506         * python/py-value.c (valpy_float): Allow conversions from int or
1507         char.
1508         (valpy_int, valpy_long): Allow conversions from float.
1509
1510 2018-09-23  Tom Tromey  <tom@tromey.com>
1511
1512         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1513         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1514
1515 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1516
1517         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1518         __sighndlr.
1519         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1520
1521 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1522
1523         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1524         target_terminal::ours().
1525
1526 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1527
1528         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1529         of vl to ULONGEST.
1530
1531 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1532
1533         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1534         redundant condition.
1535
1536 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1537
1538         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1539
1540         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1541         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1542         * sol-thread.c (ps_pdmodel): Don't guard definition.
1543
1544         * procfs.c: Fix formatting.
1545
1546         * procfs.c (sysset_t_alloc): Remove.
1547         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1548         (procfs_debug_inferior): Likewise.
1549         (procfs_set_exec_trap): Likewise.
1550         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1551         (proc_set_traced_sysexit): Likewise.
1552
1553         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1554         (dead_procinfo): Likewise.
1555         (proc_warn): Likewise.
1556         (proc_error): Likewise.
1557         (proc_get_LDT_entry): Likewise.
1558         (do_attach): Likewise.
1559         (procfs_target::pid_to_str): Likewise.
1560         (iterate_over_mappings): Likewise.
1561
1562         * procfs.c (create_procinfo): Fix ARI warning.
1563         (proc_get_status): Likewise.
1564         (proc_stop_process): Likewise.
1565         (proc_run_process): Likewise.
1566         (proc_kill): Likewise.
1567         (proc_get_LDT_entry): Likewise.
1568         (procfs_find_LDT_entry): Likewise.
1569         (proc_update_threads): Likewise.
1570         (proc_iterate_over_threads): Likewise.
1571         (do_attach): Likewise.
1572         (procfs_xfer_memory): Likewise.
1573         (invalidate_cache): Likewise.
1574         (procfs_target::resume): Likewise.
1575         (procfs_init_inferior): Likewise.
1576         (procfs_set_exec_trap): Likewise.
1577         (procfs_target::thread_alive): Likewise.
1578         (procfs_target::pid_to_exec_file): Likewise.
1579         (iterate_over_mappings): Likewise.
1580         (procfs_target::make_corefile_notes): Likewise.
1581         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1582
1583         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1584         (procfs_find_LDT_entry): Likewise.
1585         * sol-thread.c (ps_lgetLDT): Likewise.
1586
1587 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1588
1589         PR tdep/17903
1590         * procfs.c (procfs_target): Declare pid_to_exec_file.
1591         (procfs_target::pid_to_exec_file): New.
1592
1593 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1594
1595         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1596         renaming.
1597         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1598         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1599
1600 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1601
1602         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1603         (supply_fpregset, fill_fpregset): Move ...
1604         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1605         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1606         Remove references to ioctl-based procfs.
1607         Include <sys/reg.h>.
1608         Remove PR_MODEL_NATIVE guards.
1609         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1610         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1611
1612 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1613
1614         PR gdb/20981:
1615         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1616         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1617         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1618
1619 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1620
1621         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1622         (fbsd_print_sockaddr_in6): Likewise.
1623
1624 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1625             Chris January  <chris.january@arm.com>
1626
1627         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1628         (evaluate_subexp_standard): Return a dummy type when
1629         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1630         OP_F77_UNDETERMINED_ARGLIST case.
1631         * expression.h (enum noside): Update comment.
1632
1633 2018-09-19  George Vasick <george.vasick@oracle.com>
1634
1635         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1636
1637 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1638             April Chin <april.chin@oracle.com>
1639             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1640
1641         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1642         uint_t lwpid_t.
1643         (create_procinfo): Print pids in /proc without leading zeros.
1644
1645 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1646
1647         * nios2-tdep.c (nios2_gcc_target_options): New.
1648         (nios2_gdb_arch_init): Install new hook.
1649
1650 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1651
1652         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1653         New file.
1654         * update-gnulib.sh: Apply patch.
1655         * configure: Re-generate.
1656
1657 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1658
1659         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1660         description.  Make "info proc" command descriptions more
1661         consistent.
1662
1663 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1664
1665         * NEWS: Mention 'info proc files' command.
1666
1667 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1668
1669         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1670         descriptors for IP_FILES and IP_ALL.
1671
1672 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1673
1674         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1675         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1676         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1677         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1678         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1679         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1680         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1681         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1682         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1683         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1684         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1685         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1686         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1687         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1688         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1689         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1690         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1691         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1692         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1693         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1694         (struct fbsd_sockaddr_un): New types.
1695         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1696         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1697         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1698         (fbsd_core_info_proc_files): New functions.
1699         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1700         IP_ALL.
1701         * fbsd-tdep.h (fbsd_info_proc_files_header)
1702         (fbsd_info_proc_files_entry): New.
1703
1704 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1705
1706         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1707         * infcmd.c (info_proc_cmd_files): New function.
1708         (_initialize_infcmd): Register 'info proc files' command.
1709
1710 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1711
1712         * gnulib/aclocal-m4-deps.mk: Re-generate.
1713         * gnulib/aclocal.m4: Re-generate.
1714         * gnulib/config.in: Re-generate.
1715         * gnulib/configure: Re-generate.
1716         * gnulib/import/Makefile.am: Re-generate.
1717         * gnulib/import/Makefile.in: Re-generate.
1718         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1719         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1720         * gnulib/import/arpa_inet.in.h: New file.
1721         * gnulib/import/inet_ntop.c: New file.
1722         * gnulib/import/m4/arpa_inet_h.m4: New file.
1723         * gnulib/import/m4/inet_ntop.m4: New file.
1724         * gnulib/import/m4/netinet_in_h.m4: New file.
1725         * gnulib/import/m4/socklen.m4: New file.
1726         * gnulib/import/m4/sockpfaf.m4: New file.
1727         * gnulib/import/m4/stdalign.m4: New file.
1728         * gnulib/import/m4/sys_uio_h.m4: New file.
1729         * gnulib/import/netinet_in.in.h: New file.
1730         * gnulib/import/stdalign.in.h: New file.
1731         * gnulib/import/sys_socket.c: New file.
1732         * gnulib/import/sys_socket.in.h: New file.
1733         * gnulib/import/sys_uio.in.h: New file.
1734         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1735         module.
1736
1737 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1738
1739         * gnulib/aclocal-m4-deps.mk: New file.
1740         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1741         deterministically.
1742
1743 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1744
1745         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1746         KVE_PATH.
1747
1748 2018-09-18  Tom Tromey  <tom@tromey.com>
1749
1750         * compile/compile-object-load.c (struct
1751         link_hash_table_cleanup_data): Add constructor and destructor.
1752         Use DISABLE_COPY_AND_ASSIGN.
1753         (~link_hash_table_cleanup_data): Rename from
1754         link_hash_table_free.  Now a destructor.
1755         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1756
1757 2018-09-18  Tom Tromey  <tom@tromey.com>
1758
1759         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1760         * compile/compile-object-load.c (struct munmap_list): Move to
1761         header file.
1762         (munmap_list::add): Rename from munmap_list_add; rewrite.
1763         (munmap_list::~munmap_list): Rename from munmap_list_free.
1764         (munmap_listp_free_cleanup): Remove.
1765         (compile_object_load): Update.
1766         * compile/compile-object-load.h (struct munmap_list): Move from
1767         compile-object-load.c.  Rewrite.
1768
1769 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1770
1771         * aarch64-tdep.c (pass_in_v): Use register size.
1772         (aarch64_extract_return_value): Likewise.
1773         (aarch64_store_return_value): Likewise.
1774
1775 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1776
1777         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1778         rlim_t.
1779
1780 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1781
1782         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1783         Fix short help line.
1784
1785 2018-09-17  Tom Tromey  <tom@tromey.com>
1786
1787         PR python/20445:
1788         * configure: Rebuild.
1789         * configure.ac: Conditionally use -DNDEBUG for Python.
1790
1791 2018-09-17  Tom Tromey  <tom@tromey.com>
1792
1793         * configure: Rebuild.
1794         * configure.ac: Use gmp as a library dependency when checking for
1795         mpfr.
1796
1797 2018-09-17  Pedro Alves  <palves@redhat.com>
1798
1799         * python/py-inferior.c (find_inferior_object): Delete.
1800
1801 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1802
1803         * compile/compile-cplus-types.c
1804         (compile_cplus_instance::enter_scope): Don't use new_scope after
1805         std::move.
1806
1807 2018-09-17  Tom Tromey  <tom@tromey.com>
1808
1809         * common/pathstuff.c (get_standard_cache_dir): Use
1810         ~/Library/Caches on macOS.
1811         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1812
1813 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1814
1815         PR python/23669
1816         * breakpoint.c (commands_cmd_element): New.
1817         (_initialize_breakpoint): Assign commands_cmd_element.
1818         * breakpoint.h (commands_cmd_element): New.
1819         * cli/cli-script.c (while_cmd_element, if_command,
1820         define_cmd_element): New.
1821         (command_name_equals): Remove.
1822         (process_next_line): Compare commands by pointer, not by name.
1823         (_initialize_cli_script): Assign the various cmd_list_element
1824         variables.
1825         * compile/compile.c (compile_cmd_element): New.
1826         (_initialize_compile): Assign compile_cmd_element.
1827         * compile/compile.h (compile_cmd_element): New.
1828         * guile/guile.c (guile_cmd_element): New.
1829         (install_gdb_commands): Assign guile_cmd_element.
1830         * guile/guile.h (guile_cmd_element): New.
1831         * python/python.c (python_cmd_element): New.
1832         (_initialize_python): Assign python_cmd_element.
1833         * python/python.h (python_cmd_element): New.
1834         * tracepoint.c (while_stepping_cmd_element): New.
1835         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1836         * tracepoint.h (while_stepping_cmd_element): New.
1837
1838 2018-09-17  Tom Tromey  <tom@tromey.com>
1839
1840         * infrun.c (save_infcall_suspend_state): Return
1841         infcall_suspend_state_up.
1842         (save_infcall_control_state): Return infcall_control_state_up.
1843         * inferior.h (save_infcall_suspend_state)
1844         (save_infcall_control_state): Declare later.  Return unique
1845         pointers.
1846
1847 2018-09-17  Tom Tromey  <tom@tromey.com>
1848
1849         * infrun.c (struct stop_context): Declare constructor,
1850         destructor, "changed" method.
1851         (stop_context::stop_context): Rename from save_stop_context.
1852         (stop_context::~stop_context): Rename from
1853         release_stop_context_cleanup.
1854         (normal_stop): Update.
1855         (stop_context::changed): Rename from stop_context_changed.  Return
1856         bool.
1857
1858 2018-09-17  Tom Tromey  <tom@tromey.com>
1859
1860         * inferior.h (struct infcall_suspend_state_deleter): New.
1861         (infcall_suspend_state_up): New typedef.
1862         (struct infcall_control_state_deleter): New.
1863         (infcall_control_state_up): New typedef.
1864         (make_cleanup_restore_infcall_suspend_state)
1865         (make_cleanup_restore_infcall_control_state): Don't declare.
1866         * infcall.c (call_function_by_hand_dummy): Update.
1867         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1868         (make_cleanup_restore_infcall_suspend_state): Remove.
1869         (do_restore_infcall_control_state_cleanup)
1870         (make_cleanup_restore_infcall_control_state): Remove.
1871
1872 2018-09-17  Tom Tromey  <tom@tromey.com>
1873
1874         * gdbthread.h (struct thread_control_state): Add initializer.
1875         (class thread_info) <control>: Remove initializer.
1876         * inferior.h (struct inferior_control_state): Add initializer.
1877         (class inferior) <control>: Remove initializer.
1878         (exit_inferior_1): Update.
1879         * infrun.c (struct infcall_control_state): Add constructors.
1880         (save_infcall_control_state): Use new.
1881         (restore_infcall_control_state, discard_infcall_control_state):
1882         Use delete.
1883
1884 2018-09-17  Tom Tromey  <tom@tromey.com>
1885
1886         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1887         unique_ptr.
1888         <siginfo_data>: Now a unique_xmalloc_ptr.
1889         (save_infcall_suspend_state, restore_infcall_suspend_state)
1890         (discard_infcall_suspend_state)
1891         (get_infcall_suspend_state_regcache): Update.
1892
1893 2018-09-17  Tom Tromey  <tom@tromey.com>
1894
1895         * gdbthread.h (struct thread_suspend_state): Add initializers.
1896         (class thread_info) <suspend>: Remove initializer.
1897         * infrun.c (struct infcall_suspend_state): Add initializers.
1898         (save_infcall_suspend_state): Use new.
1899         (discard_infcall_suspend_state): Use delete.
1900
1901 2018-09-16  Tom Tromey  <tom@tromey.com>
1902
1903         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1904         Remove.
1905         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1906         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1907         (py_varobj_iter_new): Likewise.
1908         (py_varobj_get_iterator): Use gdbpy_ref.
1909
1910 2018-09-16  Tom Tromey  <tom@tromey.com>
1911
1912         * python/py-threadevent.c (py_get_event_thread): Simplify.
1913         * python/py-inferior.c (infpy_thread_from_thread_handle):
1914         Return immediately after calling thread_to_thread_object.  Use
1915         Py_RETURN_NONE.
1916         (thread_to_thread_object): Set the exception on a NULL return.
1917
1918 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1919
1920         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1921
1922 2018-09-16  Tom Tromey  <tom@tromey.com>
1923
1924         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1925         Remove.
1926
1927 2018-09-16  Tom Tromey  <tom@tromey.com>
1928
1929         * python/python-internal.h (thread_to_thread_object): Change
1930         return type.
1931         * python/py-inferior.c (thread_to_thread_object): Return a new
1932         reference.
1933         (infpy_thread_from_thread_handle): Update.
1934         * python/py-infthread.c (gdbpy_selected_thread): Update.
1935         * python/py-stopevent.c (create_stop_event_object): Update.
1936         * python/py-threadevent.c (py_get_event_thread): Return a new
1937         reference.
1938         (py_get_event_thread): Update.
1939         * python/py-event.h (py_get_event_thread): Change return type.
1940         * python/py-continueevent.c (create_continue_event_object):
1941         Update.
1942
1943 2018-09-16  Tom Tromey  <tom@tromey.com>
1944
1945         * python/py-progspace.c (pspy_get_objfiles): Update.
1946         * python/python-internal.h (objfile_to_objfile_object): Change
1947         return type.
1948         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1949         Update.
1950         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1951         Update.
1952         * python/python.c (gdbpy_get_current_objfile): Update.
1953         (gdbpy_objfiles): Update.
1954         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1955         Update.
1956         (objfile_to_objfile_object): Return a new reference.
1957         * python/py-symtab.c (stpy_get_objfile): Update.
1958         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1959         Update.
1960
1961 2018-09-16  Tom Tromey  <tom@tromey.com>
1962
1963         * python/py-inferior.c (infpy_get_progspace): Update.
1964         * python/python-internal.h (pspace_to_pspace_object): Change
1965         return type.
1966         * python/py-newobjfileevent.c
1967         (create_clear_objfiles_event_object): Update.
1968         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1969         Update.
1970         * python/python.c (gdbpy_get_current_progspace): Update.
1971         (gdbpy_progspaces): Update.
1972         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1973         reference.
1974         * python/py-objfile.c (objfpy_get_progspace): Update.
1975         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1976         Update.
1977
1978 2018-09-16  Tom Tromey  <tom@tromey.com>
1979
1980         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1981         (solib_name, block_for_pc, find_pc_line): New functions.
1982         (execute_unwinders): Update.
1983         * python/py-block.c (gdbpy_block_for_pc): Remove.
1984         * python/py-inferior.c (infpy_get_progspace): New function.
1985         (inferior_object_getset) <progspace>: Add.
1986         * python/py-progspace.c (pspy_objfiles): Rewrite.
1987         (pspy_solib_name, pspy_block_for_pc)
1988         (pspy_find_pc_line, pspy_is_valid): New functions.
1989         (progspace_object_methods): Add entries for solib_name,
1990         block_for_pc, find_pc_line, is_valid.
1991         * python/python-internal.h (gdbpy_block_for_pc)
1992         (build_objfiles_list): Don't declare.
1993         * python/python.c: Don't include solib.h.
1994         (gdbpy_solib_name, gdbpy_find_pc_line)
1995         (gdbpy_get_current_progspace, build_objfiles_list)
1996         (gdbpy_objfiles): Remove.
1997         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1998         solib_name, find_pc_line>: Remove entries.
1999
2000 2018-09-16  Tom Tromey  <tom@tromey.com>
2001
2002         * top.c (new_ui_command): Use GNU style for metasyntactic
2003         variables.
2004         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2005         variables.
2006         * maint.c (maintenance_translate_address): Remove "<>" around
2007         text.
2008         * interps.c (interpreter_exec_cmd): Use GNU style for
2009         metasyntactic variables.
2010         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2011         metasyntactic variables.
2012         * tracepoint.c (tfind_range_command): Use GNU style for
2013         metasyntactic variables.
2014         (tfind_outside_command): Likewise.
2015         (_initialize_tracepoint): Likewise.
2016         * remote.c (extended_remote_target::create_inferior): Use GNU
2017         style for metasyntactic variables.
2018         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2019         metasyntactic variables.
2020         (adi_assign_command): Likewise.
2021
2022 2018-09-16  Tom Tromey  <tom@tromey.com>
2023
2024         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2025         metasyntactic variables.  Print message if no disassembler options
2026         are available.
2027
2028 2018-09-15  Tom Tromey  <tom@tromey.com>
2029
2030         * infcmd.c (get_inferior_args): Return const char *.
2031         * inferior.h (get_inferior_args): Return type now const.
2032         * linux-tdep.c (linux_fill_prpsinfo): Update.
2033         * procfs.c (procfs_target::make_corefile_notes): Update.
2034
2035 2018-09-07  Tom Tromey  <tom@tromey.com>
2036
2037         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2038         inside the TRY.
2039
2040 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2041
2042         * nios2-tdep.c (nios2_type_align): New.
2043         (nios2_gdb_arch_init): Install type_align hook.
2044
2045 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2046
2047         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2048         type that is neither object file owned, nor gdbarch owned.
2049         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2050         gdbarch is non-NULL.
2051         (alloc_type_instance): Allocate non-objfile owned types on the
2052         gdbarch obstack.
2053         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2054         using TYPE_ALLOC to ensure memory is allocated on the correct
2055         obstack.
2056         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2057         obstack, or the gdbarch obstack.
2058         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2059
2060 2018-09-14  Tom Tromey  <tom@tromey.com>
2061
2062         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2063         block.
2064
2065 2018-09-14  Tom Tromey  <tom@tromey.com>
2066
2067         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2068
2069 2018-09-13  Tom Tromey  <tom@tromey.com>
2070
2071         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2072         static.
2073
2074 2018-09-13  Tom Tromey  <tom@tromey.com>
2075
2076         * exec.c (try_open_exec_file): Use std::string.
2077
2078 2018-09-13  Tom Tromey  <tom@tromey.com>
2079
2080         * utils.h (gdb_bfd_errmsg): Return std::string.
2081         * exec.c (exec_file_attach): Update.
2082         * compile/compile-object-load.c (compile_object_load): Update.
2083         * utils.c (gdb_bfd_errmsg): Return std::string.
2084
2085 2018-09-13  Tom Tromey  <tom@tromey.com>
2086
2087         * procfs.c (struct procinfo_deleter): New.
2088         (procinfo_up): New typedef.
2089         (do_destroy_procinfo_cleanup): Remove.
2090         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2091
2092 2018-09-13  Tom Tromey  <tom@tromey.com>
2093
2094         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2095
2096 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2097 2018-09-13  Tom Tromey  <tom@tromey.com>
2098
2099         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2100         (pspy_get_objfiles): New function.
2101         (progspace_object_methods): New.
2102         (pspace_object_type): Add tp_methods callback.
2103         * python/python-internal.h (build_objfiles_list): New
2104         declaration.
2105         * python/python.c (build_objfiles_list): New function.
2106         (gdbpy_objfiles): Implement using build_objfiles_list.
2107         * NEWS: Mention the Progspace.objfiles method.
2108
2109 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2110
2111         * python/py-inferior.c (infpy_get_progspace): New function.
2112         (inferior_object_getset): Add progspace property.
2113         * NEWS: Mention the new property.
2114
2115 2018-09-13  Tom Tromey  <tom@tromey.com>
2116
2117         PR rust/23650:
2118         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2119
2120 2018-09-13  Tom Tromey  <tom@tromey.com>
2121
2122         PR rust/23626:
2123         * rust-lang.c (rust_enum_variant): Now static.
2124         (rust_empty_enum_p): New function.
2125         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2126         Handle empty enum.
2127
2128 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2129
2130         * python/py-inferior.c (infpy_repr): New.
2131         (inferior_object_type): Register infpy_repr.
2132         * python/py-objfile.c (objfpy_repr): New.
2133         (objfile_object_type): Register objfpy_repr.
2134
2135 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2136
2137         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2138
2139 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2140
2141         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2142         typo.
2143
2144 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2145
2146         * common/common-utils.c: Don't include '<sys/stat.h>'.
2147         (is_regular_file): Move to...
2148         * common/filestuff.c (is_regular_file): ... here.
2149         * common/common-utils.h (is_regular_file): Move to...
2150         * common/filestuff.h (is_regular_file): ... here.
2151
2152 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2153
2154         * skip.c (debug_skip): New variable.
2155         (skiplist_entry::do_skip_file_p): Add debug output.
2156         (skiplist_entry::do_skip_gfile_p): Likewise.
2157         (skiplist_entry::skip_function_p): Likewise.
2158         (_initialize_step_skip): Create debug command.
2159         * NEWS: Mention set/show debug skip.
2160
2161 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2162
2163         * darwin-nat.c (should_disable_startup_with_shell):
2164         New function.
2165         (darwin_nat_target::create_inferior): Add call.
2166
2167 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2168
2169         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2170         inf_port, msg_state>: Initialize.
2171         (struct darwin_thread_info) <signaled, single_step>: Change
2172         type and initialize.
2173         (struct darwin_thread_info) <event>: Initialize.
2174
2175 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2176
2177         PR gdb/23555
2178         PR gdb/23558
2179         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2180         guesses.
2181
2182 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2183
2184         Revert:
2185         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2186
2187         PR gdb/23555
2188         PR gdb/23558
2189         * gnulib/aclocal.m4: Regenerate.
2190         * gnulib/config.in: Regenerate.
2191         * gnulib/configure: Regenerate.
2192         * gnulib/import/Makefile.am: Update.
2193         * gnulib/import/Makefile.in: Update.
2194         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2195         * gnulib/import/_Noreturn.h: ... this.
2196         * gnulib/import/alloca.in.h: Update.
2197         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2198         * gnulib/import/arg-nonnull.h: ... this.
2199         * gnulib/import/assure.h: Update.
2200         * gnulib/import/at-func.c: Update.
2201         * gnulib/import/basename-lgpl.c: Update.
2202         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2203         * gnulib/import/c++defs.h: ... this.
2204         * gnulib/import/canonicalize-lgpl.c: Update.
2205         * gnulib/import/cdefs.h: Update.
2206         * gnulib/import/chdir-long.c: Update.
2207         * gnulib/import/chdir-long.h: Update.
2208         * gnulib/import/cloexec.c: Update.
2209         * gnulib/import/cloexec.h: Update.
2210         * gnulib/import/close.c: Update.
2211         * gnulib/import/closedir.c: Update.
2212         * gnulib/import/config.charset: Update.
2213         * gnulib/import/dirent-private.h: Update.
2214         * gnulib/import/dirent.in.h: Update.
2215         * gnulib/import/dirfd.c: Update.
2216         * gnulib/import/dirname-lgpl.c: Update.
2217         * gnulib/import/dirname.h: Update.
2218         * gnulib/import/dosname.h: Update.
2219         * gnulib/import/dup-safer-flag.c: Update.
2220         * gnulib/import/dup-safer.c: Update.
2221         * gnulib/import/dup.c: Update.
2222         * gnulib/import/dup2.c: Update.
2223         * gnulib/import/errno.in.h: Update.
2224         * gnulib/import/error.c: Update.
2225         * gnulib/import/error.h: Update.
2226         * gnulib/import/exitfail.c: Update.
2227         * gnulib/import/exitfail.h: Update.
2228         * gnulib/import/extra/update-copyright: Update.
2229         * gnulib/import/fchdir.c: Update.
2230         * gnulib/import/fcntl.c: Update.
2231         * gnulib/import/fcntl.in.h: Update.
2232         * gnulib/import/fd-hook.c: Update.
2233         * gnulib/import/fd-hook.h: Update.
2234         * gnulib/import/fd-safer-flag.c: Update.
2235         * gnulib/import/fd-safer.c: Update.
2236         * gnulib/import/fdopendir.c: Update.
2237         * gnulib/import/filename.h: Update.
2238         * gnulib/import/filenamecat-lgpl.c: Update.
2239         * gnulib/import/filenamecat.h: Update.
2240         * gnulib/import/flexmember.h: Update.
2241         * gnulib/import/float+.h: Update.
2242         * gnulib/import/float.c: Update.
2243         * gnulib/import/float.in.h: Update.
2244         * gnulib/import/fnmatch.c: Update.
2245         * gnulib/import/fnmatch.in.h: Update.
2246         * gnulib/import/fnmatch_loop.c: Update.
2247         * gnulib/import/fpucw.h: Update.
2248         * gnulib/import/frexp.c: Update.
2249         * gnulib/import/frexpl.c: Update.
2250         * gnulib/import/fstat.c: Update.
2251         * gnulib/import/fstatat.c: Update.
2252         * gnulib/import/getcwd-lgpl.c: Update.
2253         * gnulib/import/getcwd.c: Update.
2254         * gnulib/import/getdtablesize.c: Update.
2255         * gnulib/import/getlogin_r.c: Update.
2256         * gnulib/import/getprogname.c: Update.
2257         * gnulib/import/getprogname.h: Update.
2258         * gnulib/import/gettext.h: Update.
2259         * gnulib/import/gettimeofday.c: Update.
2260         * gnulib/import/glob-libc.h: Update.
2261         * gnulib/import/glob.c: Update.
2262         * gnulib/import/glob.in.h: Update.
2263         * gnulib/import/glob_internal.h: Update.
2264         * gnulib/import/glob_pattern_p.c: Update.
2265         * gnulib/import/globfree.c: Update.
2266         * gnulib/import/hard-locale.c: Update.
2267         * gnulib/import/hard-locale.h: Update.
2268         * gnulib/import/intprops.h: Update.
2269         * gnulib/import/inttypes.in.h: Update.
2270         * gnulib/import/isnan.c: Update.
2271         * gnulib/import/isnand-nolibm.h: Update.
2272         * gnulib/import/isnand.c: Update.
2273         * gnulib/import/isnanl-nolibm.h: Update.
2274         * gnulib/import/isnanl.c: Update.
2275         * gnulib/import/itold.c: Update.
2276         * gnulib/import/libc-config.h: Update.
2277         * gnulib/import/limits.in.h: Update.
2278         * gnulib/import/localcharset.c: Update.
2279         * gnulib/import/localcharset.h: Update.
2280         * gnulib/import/localtime-buffer.c: Update.
2281         * gnulib/import/localtime-buffer.h: Update.
2282         * gnulib/import/lstat.c: Update.
2283         * gnulib/import/m4/00gnulib.m4: Update.
2284         * gnulib/import/m4/__inline.m4: Update.
2285         * gnulib/import/m4/absolute-header.m4: Update.
2286         * gnulib/import/m4/alloca.m4: Update.
2287         * gnulib/import/m4/builtin-expect.m4: Update.
2288         * gnulib/import/m4/canonicalize.m4: Update.
2289         * gnulib/import/m4/chdir-long.m4: Update.
2290         * gnulib/import/m4/close.m4: Update.
2291         * gnulib/import/m4/closedir.m4: Update.
2292         * gnulib/import/m4/configmake.m4: Update.
2293         * gnulib/import/m4/d-ino.m4: Update.
2294         * gnulib/import/m4/d-type.m4: Update.
2295         * gnulib/import/m4/dirent_h.m4: Update.
2296         * gnulib/import/m4/dirfd.m4: Update.
2297         * gnulib/import/m4/dirname.m4: Update.
2298         * gnulib/import/m4/double-slash-root.m4: Update.
2299         * gnulib/import/m4/dup.m4: Update.
2300         * gnulib/import/m4/dup2.m4: Update.
2301         * gnulib/import/m4/eealloc.m4: Update.
2302         * gnulib/import/m4/environ.m4: Update.
2303         * gnulib/import/m4/errno_h.m4: Update.
2304         * gnulib/import/m4/error.m4: Update.
2305         * gnulib/import/m4/exponentd.m4: Update.
2306         * gnulib/import/m4/exponentl.m4: Update.
2307         * gnulib/import/m4/extensions.m4: Update.
2308         * gnulib/import/m4/extern-inline.m4: Update.
2309         * gnulib/import/m4/fchdir.m4: Update.
2310         * gnulib/import/m4/fcntl-o.m4: Update.
2311         * gnulib/import/m4/fcntl.m4: Update.
2312         * gnulib/import/m4/fcntl_h.m4: Update.
2313         * gnulib/import/m4/fdopendir.m4: Update.
2314         * gnulib/import/m4/filenamecat.m4: Update.
2315         * gnulib/import/m4/flexmember.m4: Update.
2316         * gnulib/import/m4/float_h.m4: Update.
2317         * gnulib/import/m4/fnmatch.m4: Update.
2318         * gnulib/import/m4/fnmatch_h.m4: Update.
2319         * gnulib/import/m4/fpieee.m4: Update.
2320         * gnulib/import/m4/frexp.m4: Update.
2321         * gnulib/import/m4/frexpl.m4: Update.
2322         * gnulib/import/m4/fstat.m4: Update.
2323         * gnulib/import/m4/fstatat.m4: Update.
2324         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2325         * gnulib/import/m4/getcwd-path-max.m4: Update.
2326         * gnulib/import/m4/getcwd.m4: Update.
2327         * gnulib/import/m4/getdtablesize.m4: Update.
2328         * gnulib/import/m4/getlogin.m4: Update.
2329         * gnulib/import/m4/getlogin_r.m4: Update.
2330         * gnulib/import/m4/getpagesize.m4: Update.
2331         * gnulib/import/m4/getprogname.m4: Update.
2332         * gnulib/import/m4/gettimeofday.m4: Update.
2333         * gnulib/import/m4/glibc21.m4: Update.
2334         * gnulib/import/m4/glob.m4: Update.
2335         * gnulib/import/m4/glob_h.m4: Update.
2336         * gnulib/import/m4/gnulib-cache.m4: Update.
2337         * gnulib/import/m4/gnulib-common.m4: Update.
2338         * gnulib/import/m4/gnulib-comp.m4: Update.
2339         * gnulib/import/m4/gnulib-tool.m4: Update.
2340         * gnulib/import/m4/hard-locale.m4: Update.
2341         * gnulib/import/m4/include_next.m4: Update.
2342         * gnulib/import/m4/inttypes-pri.m4: Update.
2343         * gnulib/import/m4/inttypes.m4: Update.
2344         * gnulib/import/m4/isnand.m4: Update.
2345         * gnulib/import/m4/isnanl.m4: Update.
2346         * gnulib/import/m4/largefile.m4: Update.
2347         * gnulib/import/m4/limits-h.m4: Update.
2348         * gnulib/import/m4/localcharset.m4: Update.
2349         * gnulib/import/m4/locale-fr.m4: Update.
2350         * gnulib/import/m4/locale-ja.m4: Update.
2351         * gnulib/import/m4/locale-zh.m4: Update.
2352         * gnulib/import/m4/localtime-buffer.m4: Update.
2353         * gnulib/import/m4/longlong.m4: Update.
2354         * gnulib/import/m4/lstat.m4: Update.
2355         * gnulib/import/m4/malloc.m4: Update.
2356         * gnulib/import/m4/malloca.m4: Update.
2357         * gnulib/import/m4/math_h.m4: Update.
2358         * gnulib/import/m4/mbrtowc.m4: Update.
2359         * gnulib/import/m4/mbsinit.m4: Update.
2360         * gnulib/import/m4/mbsrtowcs.m4: Update.
2361         * gnulib/import/m4/mbstate_t.m4: Update.
2362         * gnulib/import/m4/memchr.m4: Update.
2363         * gnulib/import/m4/memmem.m4: Update.
2364         * gnulib/import/m4/mempcpy.m4: Update.
2365         * gnulib/import/m4/memrchr.m4: Update.
2366         * gnulib/import/m4/mkdir.m4: Update.
2367         * gnulib/import/m4/mkstemp.m4: Update.
2368         * gnulib/import/m4/mmap-anon.m4: Update.
2369         * gnulib/import/m4/mode_t.m4: Update.
2370         * gnulib/import/m4/msvc-inval.m4: Update.
2371         * gnulib/import/m4/msvc-nothrow.m4: Update.
2372         * gnulib/import/m4/multiarch.m4: Update.
2373         * gnulib/import/m4/nocrash.m4: Update.
2374         * gnulib/import/m4/off_t.m4: Update.
2375         * gnulib/import/m4/onceonly.m4: Update.
2376         * gnulib/import/m4/open-cloexec.m4: Update.
2377         * gnulib/import/m4/open.m4: Update.
2378         * gnulib/import/m4/openat.m4: Update.
2379         * gnulib/import/m4/opendir.m4: Update.
2380         * gnulib/import/m4/pathmax.m4: Update.
2381         * gnulib/import/m4/rawmemchr.m4: Update.
2382         * gnulib/import/m4/readdir.m4: Update.
2383         * gnulib/import/m4/readlink.m4: Update.
2384         * gnulib/import/m4/realloc.m4: Update.
2385         * gnulib/import/m4/rename.m4: Update.
2386         * gnulib/import/m4/rewinddir.m4: Update.
2387         * gnulib/import/m4/rmdir.m4: Update.
2388         * gnulib/import/m4/save-cwd.m4: Update.
2389         * gnulib/import/m4/secure_getenv.m4: Update.
2390         * gnulib/import/m4/setenv.m4: Update.
2391         * gnulib/import/m4/signal_h.m4: Update.
2392         * gnulib/import/m4/ssize_t.m4: Update.
2393         * gnulib/import/m4/stat-time.m4: Update.
2394         * gnulib/import/m4/stat.m4: Update.
2395         * gnulib/import/m4/std-gnu11.m4: Update.
2396         * gnulib/import/m4/stdbool.m4: Update.
2397         * gnulib/import/m4/stddef_h.m4: Update.
2398         * gnulib/import/m4/stdint.m4: Update.
2399         * gnulib/import/m4/stdio_h.m4: Update.
2400         * gnulib/import/m4/stdlib_h.m4: Update.
2401         * gnulib/import/m4/strchrnul.m4: Update.
2402         * gnulib/import/m4/strdup.m4: Update.
2403         * gnulib/import/m4/strerror.m4: Update.
2404         * gnulib/import/m4/string_h.m4: Update.
2405         * gnulib/import/m4/strstr.m4: Update.
2406         * gnulib/import/m4/strtok_r.m4: Update.
2407         * gnulib/import/m4/sys_socket_h.m4: Update.
2408         * gnulib/import/m4/sys_stat_h.m4: Update.
2409         * gnulib/import/m4/sys_time_h.m4: Update.
2410         * gnulib/import/m4/sys_types_h.m4: Update.
2411         * gnulib/import/m4/tempname.m4: Update.
2412         * gnulib/import/m4/time_h.m4: Update.
2413         * gnulib/import/m4/unistd-safer.m4: Update.
2414         * gnulib/import/m4/unistd_h.m4: Update.
2415         * gnulib/import/m4/warn-on-use.m4: Update.
2416         * gnulib/import/m4/wchar_h.m4: Update.
2417         * gnulib/import/m4/wchar_t.m4: Update.
2418         * gnulib/import/m4/wctype_h.m4: Update.
2419         * gnulib/import/m4/wint_t.m4: Update.
2420         * gnulib/import/malloc.c: Update.
2421         * gnulib/import/malloc/scratch_buffer.h: Update.
2422         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2423         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2424         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2425         * gnulib/import/malloca.c: Update.
2426         * gnulib/import/malloca.h: Update.
2427         * gnulib/import/malloca.valgrind: Update.
2428         * gnulib/import/math.in.h: Update.
2429         * gnulib/import/mbrtowc.c: Update.
2430         * gnulib/import/mbsinit.c: Update.
2431         * gnulib/import/mbsrtowcs-impl.h: Update.
2432         * gnulib/import/mbsrtowcs-state.c: Update.
2433         * gnulib/import/mbsrtowcs.c: Update.
2434         * gnulib/import/memchr.c: Update.
2435         * gnulib/import/memmem.c: Update.
2436         * gnulib/import/mempcpy.c: Update.
2437         * gnulib/import/memrchr.c: Update.
2438         * gnulib/import/mkdir.c: Update.
2439         * gnulib/import/mkstemp.c: Update.
2440         * gnulib/import/msvc-inval.c: Update.
2441         * gnulib/import/msvc-inval.h: Update.
2442         * gnulib/import/msvc-nothrow.c: Update.
2443         * gnulib/import/msvc-nothrow.h: Update.
2444         * gnulib/import/open.c: Update.
2445         * gnulib/import/openat-die.c: Update.
2446         * gnulib/import/openat-priv.h: Update.
2447         * gnulib/import/openat-proc.c: Update.
2448         * gnulib/import/openat.c: Update.
2449         * gnulib/import/openat.h: Update.
2450         * gnulib/import/opendir.c: Update.
2451         * gnulib/import/pathmax.h: Update.
2452         * gnulib/import/pipe-safer.c: Update.
2453         * gnulib/import/rawmemchr.c: Update.
2454         * gnulib/import/readdir.c: Update.
2455         * gnulib/import/readlink.c: Update.
2456         * gnulib/import/realloc.c: Update.
2457         * gnulib/import/ref-add.sin: Update.
2458         * gnulib/import/ref-del.sin: Update.
2459         * gnulib/import/rename.c: Update.
2460         * gnulib/import/rewinddir.c: Update.
2461         * gnulib/import/rmdir.c: Update.
2462         * gnulib/import/same-inode.h: Update.
2463         * gnulib/import/save-cwd.c: Update.
2464         * gnulib/import/save-cwd.h: Update.
2465         * gnulib/import/scratch_buffer.h: Update.
2466         * gnulib/import/secure_getenv.c: Update.
2467         * gnulib/import/setenv.c: Update.
2468         * gnulib/import/signal.in.h: Update.
2469         * gnulib/import/stat-time.c: Update.
2470         * gnulib/import/stat-time.h: Update.
2471         * gnulib/import/stat-w32.c: Update.
2472         * gnulib/import/stat-w32.h: Update.
2473         * gnulib/import/stat.c: Update.
2474         * gnulib/import/stdbool.in.h: Update.
2475         * gnulib/import/stddef.in.h: Update.
2476         * gnulib/import/stdint.in.h: Update.
2477         * gnulib/import/stdio.in.h: Update.
2478         * gnulib/import/stdlib.in.h: Update.
2479         * gnulib/import/str-two-way.h: Update.
2480         * gnulib/import/strchrnul.c: Update.
2481         * gnulib/import/strdup.c: Update.
2482         * gnulib/import/streq.h: Update.
2483         * gnulib/import/strerror-override.c: Update.
2484         * gnulib/import/strerror-override.h: Update.
2485         * gnulib/import/strerror.c: Update.
2486         * gnulib/import/string.in.h: Update.
2487         * gnulib/import/stripslash.c: Update.
2488         * gnulib/import/strnlen1.c: Update.
2489         * gnulib/import/strnlen1.h: Update.
2490         * gnulib/import/strstr.c: Update.
2491         * gnulib/import/strtok_r.c: Update.
2492         * gnulib/import/sys_stat.in.h: Update.
2493         * gnulib/import/sys_time.in.h: Update.
2494         * gnulib/import/sys_types.in.h: Update.
2495         * gnulib/import/tempname.c: Update.
2496         * gnulib/import/tempname.h: Update.
2497         * gnulib/import/time.in.h: Update.
2498         * gnulib/import/unistd--.h: Update.
2499         * gnulib/import/unistd-safer.h: Update.
2500         * gnulib/import/unistd.in.h: Update.
2501         * gnulib/import/unsetenv.c: Update.
2502         * gnulib/import/verify.h: Update.
2503         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2504         * gnulib/import/wchar.in.h: Update.
2505         * gnulib/import/wctype.in.h: Update.
2506         * gnulib/import/xalloc-oversized.h: Update.
2507         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2508         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2509
2510 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2511
2512         * record-btrace.c (get_thread_current_frame): Remove
2513         old_inferior_ptid.
2514
2515 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2516
2517         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2518         with check_tag to 1 if and only if the type is tagged and the
2519         component being searched cannot been found in the current
2520         view. Otherwise, always call ada_to_fixed_type with
2521         check_tag to 0.
2522
2523 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2524
2525         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2526         declaration.
2527         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2528         * ada-varobj.c (ada_varobj_get_number_of_children,
2529         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2530
2531 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2532
2533         * ada-valprint.c (ada_value_print): Use type instead of
2534         enclosing type.
2535
2536 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2537
2538         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2539         an array of access to unconstrained array.
2540
2541 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2542
2543         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2544         (ada_check_typedef): Use it.
2545
2546 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2547
2548         * ada-varobj.c (ada_varobj_describe_struct_child)
2549         (ada_varobj_describe_child): Handle union case like struct one.
2550
2551 2018-09-10  Tom Tromey  <tom@tromey.com>
2552
2553         PR python/18380:
2554         * python/python.c (_initialize_python): Make example in "python"
2555         help work in Python 3.
2556
2557 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2558
2559         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2560         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2561         $(EXEEXT) to the script, as it is not a program.
2562
2563 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2564
2565         * python/py-prettyprint.c (pretty_print_one_value): Return
2566         gdbpy_ref<>.
2567         (print_string_repr): Adjust.
2568         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2569         * python/python-internal.h (apply_varobj_pretty_printer): Return
2570         gdbpy_ref<>.
2571         * varobj.c (varobj_value_get_print_value): Adjust.
2572
2573 2018-09-08  Tom Tromey  <tom@tromey.com>
2574
2575         PR python/16047:
2576         * python/py-prettyprint.c (pretty_print_one_value): Check for
2577         to_string method.
2578
2579 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2580
2581         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2582         replace_operator_with_call.
2583
2584 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2585
2586         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2587
2588 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2589
2590         * ada-typeprint.c (print_range): Print the bounds using TYPE
2591         rather than its TYPE_TARGET_TYPE.
2592
2593 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2594
2595         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2596         call to ada_to_fixed_value_create.
2597
2598 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2599
2600         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2601
2602 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2603
2604         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2605         by calls to error.
2606
2607 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2608
2609         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2610         Move update of loop variable "fi".
2611
2612 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2613
2614         * ada-lang.c (value_assign_to_component): In the case of
2615         big-endian targets, extract the bits of the given VAL
2616         using an src_offset of zero if container is not a scalar.
2617
2618 2018-09-06  Simon Ser  <contact@emersion.fr>
2619
2620         PR gdb/23105
2621         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2622         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2623         * fbsd-tdep.c (fbsd_make_note_desc): New.
2624         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2625         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2626         * target.h (enum target_object) Add FreeBSD-specific
2627         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2628
2629 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2630
2631         * compile/compile-c.h (generate_c_for_variable_locations):
2632         Change reference to pointer.
2633         * compile/compile-c-support.c (compile_program) <compute>:
2634         Likewise.
2635         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2636         (generate_c_for_for_one_variable): Likewise
2637         (generate_c_for_variable_locations): Likewise
2638         * compile/compile-c-types.c (compile_c_instance::convert_type):
2639         Likewise
2640         * compile/compile-cplus-symbols.c (convert_one_symbol):
2641         std::move the scope passed to enter_scope.
2642         * compile/compile-cplus-types.c
2643         (compile_cplus_instance::enter_scope): Make parameter
2644         rvalue-reference.
2645         (compile_cplus_instance::new_scope): Change reference to
2646         pointer.
2647         (compile_cplus_instance::convert_type): Likewise
2648         (compile_cplus_convert_typedef): std::move the scope passed to
2649         enter_scope.
2650         (compile_cplus_convert_struct_or_union): Likewise.
2651         (compile_cplus_convert_enum): Likewise.
2652         (compile_cplus_convert_namespace): Likewise.
2653         * compile/compile-cplus.h (compile_cplus_instance)
2654         <enter_scope>: Make parameter rvalue-reference.
2655         * compile/compile-internal.h (compile_instance)
2656         <get_cached_type>: Likewise
2657         * compile/compile-loc2c.c (push): Likewise
2658         (pushf): Likewise
2659         (unary): Likewise
2660         (binary): Likewise
2661         (print_label): Likewise
2662         (pushf_register_address): Likewise
2663         (pushf_register): Likewise
2664         (do_compile_dwarf_expr_to_c): Likewise
2665         (compile_dwarf_expr_to_c): Likewise
2666         (compile_dwarf_bounds_to_c): Likewise
2667         * compile/compile.c (compile_instance::get_cached_type):
2668         Likewise
2669         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2670         (compile_dwarf_bounds_to_c): Likewise
2671         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2672         (dwarf2_compile_property_to_c): Likewise
2673         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2674         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2675         Likewise
2676
2677 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2678
2679         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2680         * tui/tui-data.c (init_content_element): Don't initialize it.
2681
2682 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2683
2684         * tui/tui-data.h (struct tui_win_info)
2685         <detail::opaque>: Remove.
2686         * tui/tui-data.c (init_win_info): Remove assignment.
2687
2688 2018-09-05  Tom Tromey  <tom@tromey.com>
2689
2690         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2691         -Wformat-nonliteral.
2692         * target-float.c (host_float_ops<T>::to_string)
2693         (host_float_ops<T>::from_string): Use
2694         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2695         * configure: Rebuild.
2696
2697 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2698
2699         * printcmd.c (printf_c_string): Use
2700         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2701         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2702
2703 2018-09-05  Tom Tromey  <tom@tromey.com>
2704
2705         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2706
2707 2018-09-05  Tom de Vries  <tdevries@suse.de>
2708
2709         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2710         with resolve_abstract_p == true.
2711         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2712         defaulting to false. Propagate resolve_abstract_p to
2713         dwarf2_fetch_die_loc_sect_off.
2714         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2715         parameter, defaulting to false.
2716         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2717         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2718         parameter.
2719         * dwarf2read.h (struct die_info): Forward-declare.
2720         (die_info_ptr): New typedef.
2721         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2722
2723 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2724
2725         GDB 8.2 released.
2726
2727 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2728             Pedro Alves  <palves@redhat.com>
2729
2730         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2731         "aclocal-m4-deps.mk".  Include file here.
2732         $(srcdir)/aclocal.m4: Add "configure.ac".
2733         * gnulib/aclocal-m4-deps.mk: New file.
2734         * gnulib/update-gnulib.sh: Automatically update
2735         "aclocal-m4-deps.mk".
2736
2737 2018-09-04  Tom Tromey  <tom@tromey.com>
2738
2739         * configure: Rebuild.
2740         * configure.ac: Remove multi-ice code.
2741
2742 2018-09-04  Tom Tromey  <tom@tromey.com>
2743
2744         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2745         (ada-exp.o): Update.
2746
2747 2018-09-04  Tom Tromey  <tom@tromey.com>
2748
2749         * Makefile.in (printcmd.o, target-float.o): Remove.
2750         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2751
2752 2018-09-04  Tom Tromey  <tom@tromey.com>
2753
2754         * gnulib/Makefile.in: Remove obsolete comment.
2755         * Makefile.in: Remove obsolete comment.
2756
2757 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2758
2759         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2760         line with '+'.
2761
2762 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2763
2764         * riscv-tdep.c: Add 'prologue-value.h' include.
2765         (struct riscv_unwind_cache): New struct.
2766         (riscv_debug_unwinder): New global.
2767         (riscv_scan_prologue): Update arguments, capture register details
2768         from prologue scan.
2769         (riscv_skip_prologue): Reformat arguments line, move end of
2770         prologue calculation into riscv_scan_prologue.
2771         (riscv_frame_cache): Update return type, create
2772         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2773         details.
2774         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2775         (riscv_frame_prev_register): Use the trad_frame within the
2776         riscv_unwind_cache.
2777         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2778         flag.
2779
2780 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2781
2782         * trad-frame.h (trad_frame_set_realreg): Declare.
2783         (trad_frame_set_addr): Declare.
2784         * trad-frame.c (trad_frame_set_realreg): Define new function.
2785         (trad_frame_set_addr): Define new function.
2786         (trad_frame_set_reg_realreg): Use new function.
2787         (trad_frame_set_reg_addr): Use new function.
2788
2789 2018-09-01  Keith Seitz  <keiths@redhat.com>
2790
2791         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2792         pulongest instead of "%lld".
2793         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2794         ATTRIBUTE_UNUSED.
2795
2796 2018-08-31  Tom Tromey  <tom@tromey.com>
2797
2798         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2799         variant part type.
2800
2801 2018-08-31  Pedro Alves  <palves@redhat.com>
2802
2803         * gdbarch.h: Regenerate.
2804
2805 2018-08-31  Pedro Alves  <palves@redhat.com>
2806
2807         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2808         * target.h (Hardware watchpoint interfaces): Describe
2809         continuable/steppable/non-steppable watchpoints.
2810         * gdbarch.h, gdbarch.c: Regenerate.
2811
2812 2018-08-31  Pedro Alves  <palves@redhat.com>
2813
2814         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2815         Delete.
2816         * s390-linux-nat.c
2817         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2818         * target.h (target_ops::have_continuable_watchpoint): Delete.
2819         (target_have_continuable_watchpoint): Delete.
2820         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2821         * target-delegates.c: Regenerate.
2822
2823 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2824
2825         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2826         the files present in "gnulib/import/m4/".
2827
2828 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2829
2830         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2831         c.sw, c.swsp, and c.sdsp.
2832
2833 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2834
2835         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2836         (riscv_read_misa_reg): Don't cache value read into inferior data.
2837         (riscv_new_inferior_data): Delete.
2838         (riscv_inferior_data_cleanup): Delete.
2839         (riscv_inferior_data): Delete.
2840         (riscv_invalidate_inferior_data): Delete.
2841         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2842
2843 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2844
2845         * compile/compile-cplus-types.c
2846         (compile_cplus_instance::leave_scope): Take the address of scope
2847         object.
2848         (compile_cplus_instance::convert_qualified_base): Compare quals
2849         to 0.
2850
2851 2018-08-30  Keith Seitz  <keiths@redhat.com>
2852
2853         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2854         Use "%s" and host_address_to_string instead of "%p" in printf.
2855
2856 2018-08-29  Keith Seitz  <keiths@redhat.com>
2857
2858         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2859         and compile-cplus-types.c.
2860         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2861         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2862         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2863         Declare.
2864         * compile/compile-c-support.c: Include compile-cplus.h.
2865         (load_libcompile): Templatize.
2866         (get_compile_context): "New" function.
2867         (c_get_compile_context): Use get_compile_context.
2868         (cplus_get_compile_context): New function.
2869         (cplus_push_user_expression, cplus_pop_user_expression)
2870         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2871         (cplus_compute_program): Define new structs/functions.
2872         * compile/compile-cplus-symmbols.c: New file.
2873         * compile/compile-cplus-types.c: New file.
2874         * compile/compile-cplus.h: New file.
2875         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2876         Declare.
2877         * compile/compile-object-load.c (get_out_value_type): Use
2878         strncmp_iw when comparing symbol names.
2879         (compile_object_load): Add mst_bss and mst_data.
2880         * compile/compile.c (_initialize_compile): Remove
2881         -Wno-implicit-function-declaration from `compile_args'.
2882         * compile/gcc-cp-plugin.h: New file.
2883         * NEWS: Mention C++ compile support and new debug options.
2884
2885 2018-08-29  Keith Seitz  <keiths@redhat.com>
2886
2887         * linespec.c (collect_info::add_symbol): Make virtual.
2888         (struct symbol_searcher_collect_info): New struct.
2889         (symbol_searcher::find_all_symbols): New method.
2890         * symtab.h (class symbol_searcher): New class.
2891
2892 2018-08-29  Keith Seitz  <keiths@redhat.com>
2893
2894         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2895         Change to vector of block_symbol.  Update all users.
2896         (struct collect_info) <symbols>: Likewise.
2897         (collect_info::add_symbol): Take block_symbol as argument.
2898         Update all callers.
2899         (decode_compound_collector) <m_symbols>: Change type to vector
2900         of block_symbol.  Update all users.
2901         (decode_compound_collector::operator ()): Change parameter type
2902         to block_symbol.
2903         (find_method, find_function_symbols, find_linespec_symbols)
2904         (find_label_symbols_in_block, find_label_symbols): Change symbol
2905         vectors to block_symbol vectors.
2906         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2907         block_symbol.
2908
2909 2018-08-29  Keith Seitz  <keiths@redhat.com>
2910
2911         * linespec.c (symbolp): Remove typedef and VEC definitions.
2912         (bound_minimal_symbol_d): Likewise.
2913
2914 2018-08-29  Keith Seitz  <keiths@redhat.com>
2915
2916         * linespec.c (decode_compound_collector::decode_compound_collector):
2917         Remove initialization for `m_symtabs'.
2918         (decode_compound_collector::release_symbols): Change return type
2919         to std::vector.  Update all callers.
2920         (class decode_compound_collector) <m_symbols>: Change type to
2921         std::vector.
2922         (lookup_prefix_sym): Change return type to std::vector.  Update all
2923         callers.
2924         (compare_symbols): Remove.
2925         (std_compare_symbols): Rename to `compare_symbols'.
2926         (find_method): Change `sym_classes' parameter to std::vector.
2927         Update all callers.  Use std::sort to sort sym_classes.
2928         (find_linespec_symbols): Remove cleanup.
2929
2930 2018-08-29  Keith Seitz  <keiths@redhat.com>
2931
2932         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2933         std::vector.  Update all users.
2934         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2935         (struct collect_info) <minimal_symbols>: Likewise.
2936         (compare_msymbols): Return bool.  Change parameters to const
2937         bound_minimal_symbol references.
2938         (find_method, find_function_symbols, find_linespec_symbols): Change
2939         `minsyms' parameter to std::vector.  Update all callers.
2940
2941 2018-08-29  Keith Seitz  <keiths@redhat.com>
2942
2943         * linespec.c (struct linespec) <label_symbols>: Change type to
2944         std::vector.  Update all users.
2945         (find_label_symbols_in_block): Change `result' parameter to
2946         std::vector.  Update all callers.
2947         (find_label_symbols): Return std::vector.  Update all callers.
2948
2949 2018-08-29  Keith Seitz  <keiths@redhat.com>
2950
2951         * linespec.c (struct linespec) <function_symbols>: Change type to
2952         std::vector.  Update all users.
2953         (struct collect_info) <function_symbols>: Likewise.
2954         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2955         (std_compare_symbols): New function.
2956         (find_method, find_function_symbols, find_linespec_symbols)
2957         (find_label_symbols_in_block): Change `symbols' parameter to
2958         std::vector.  Update all callers.
2959         (find_label_symbols): Likewise for `function_symbols' and
2960         `label_funcs_ret'.
2961
2962 2018-08-29  Keith Seitz  <keiths@redhat.com>
2963
2964         * linespec.c (symtab_vector_up): Define.
2965         (struct linespec) <file_symtabs>: Change type to std::vector *.
2966         Update all uses.
2967         (struct collect_info) <file_symtabs>: Likewise.
2968         (collect_symtabs_from_filename): Return symtab_vector_up.
2969         Update all callers.
2970         (decode_objc): Remove cleanup.
2971         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2972         (symtab_collector::release_symtabs): Return symtab_vector_up.
2973         Update all callers.
2974         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2975         Update all users.
2976         (collect_symtabs_from_filename, symtabs_from_filename): Return
2977         symtab_vector_up.  Update all callers.
2978
2979 2018-08-29  Tom Tromey  <tom@tromey.com>
2980
2981         * csky-tdep.c (csky_analyze_prologue): Use
2982         core_addr_to_string_nz.
2983
2984 2018-08-29  Tom Tromey  <tom@tromey.com>
2985
2986         * windows-nat.c (struct xlate_exception) <them>: Change type to
2987         DWORD.
2988         (xlate): Fix formatting.  Remove last entry.
2989         (struct xlate_exception, xlate): Comment out.
2990         (windows_nat_target::resume): Use ranged for.
2991
2992 2018-08-29  Jim Wilson  <jimw@sifive.com>
2993
2994         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2995         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2996         of NT_PRFPREG.
2997         (riscv_linux_nat_target::store_registers): Likewise.
2998
2999 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3000
3001         PR gdb/23555
3002         PR gdb/23558
3003         * gnulib/aclocal.m4: Regenerate.
3004         * gnulib/config.in: Regenerate.
3005         * gnulib/configure: Regenerate.
3006         * gnulib/import/Makefile.am: Update.
3007         * gnulib/import/Makefile.in: Update.
3008         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3009         * gnulib/import/_Noreturn.h: ... this.
3010         * gnulib/import/alloca.in.h: Update.
3011         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3012         * gnulib/import/arg-nonnull.h: ... this.
3013         * gnulib/import/assure.h: Update.
3014         * gnulib/import/at-func.c: Update.
3015         * gnulib/import/basename-lgpl.c: Update.
3016         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3017         * gnulib/import/c++defs.h: ... this.
3018         * gnulib/import/canonicalize-lgpl.c: Update.
3019         * gnulib/import/cdefs.h: Update.
3020         * gnulib/import/chdir-long.c: Update.
3021         * gnulib/import/chdir-long.h: Update.
3022         * gnulib/import/cloexec.c: Update.
3023         * gnulib/import/cloexec.h: Update.
3024         * gnulib/import/close.c: Update.
3025         * gnulib/import/closedir.c: Update.
3026         * gnulib/import/config.charset: Update.
3027         * gnulib/import/dirent-private.h: Update.
3028         * gnulib/import/dirent.in.h: Update.
3029         * gnulib/import/dirfd.c: Update.
3030         * gnulib/import/dirname-lgpl.c: Update.
3031         * gnulib/import/dirname.h: Update.
3032         * gnulib/import/dosname.h: Update.
3033         * gnulib/import/dup-safer-flag.c: Update.
3034         * gnulib/import/dup-safer.c: Update.
3035         * gnulib/import/dup.c: Update.
3036         * gnulib/import/dup2.c: Update.
3037         * gnulib/import/errno.in.h: Update.
3038         * gnulib/import/error.c: Update.
3039         * gnulib/import/error.h: Update.
3040         * gnulib/import/exitfail.c: Update.
3041         * gnulib/import/exitfail.h: Update.
3042         * gnulib/import/extra/update-copyright: Update.
3043         * gnulib/import/fchdir.c: Update.
3044         * gnulib/import/fcntl.c: Update.
3045         * gnulib/import/fcntl.in.h: Update.
3046         * gnulib/import/fd-hook.c: Update.
3047         * gnulib/import/fd-hook.h: Update.
3048         * gnulib/import/fd-safer-flag.c: Update.
3049         * gnulib/import/fd-safer.c: Update.
3050         * gnulib/import/fdopendir.c: Update.
3051         * gnulib/import/filename.h: Update.
3052         * gnulib/import/filenamecat-lgpl.c: Update.
3053         * gnulib/import/filenamecat.h: Update.
3054         * gnulib/import/flexmember.h: Update.
3055         * gnulib/import/float+.h: Update.
3056         * gnulib/import/float.c: Update.
3057         * gnulib/import/float.in.h: Update.
3058         * gnulib/import/fnmatch.c: Update.
3059         * gnulib/import/fnmatch.in.h: Update.
3060         * gnulib/import/fnmatch_loop.c: Update.
3061         * gnulib/import/fpucw.h: Update.
3062         * gnulib/import/frexp.c: Update.
3063         * gnulib/import/frexpl.c: Update.
3064         * gnulib/import/fstat.c: Update.
3065         * gnulib/import/fstatat.c: Update.
3066         * gnulib/import/getcwd-lgpl.c: Update.
3067         * gnulib/import/getcwd.c: Update.
3068         * gnulib/import/getdtablesize.c: Update.
3069         * gnulib/import/getlogin_r.c: Update.
3070         * gnulib/import/getprogname.c: Update.
3071         * gnulib/import/getprogname.h: Update.
3072         * gnulib/import/gettext.h: Update.
3073         * gnulib/import/gettimeofday.c: Update.
3074         * gnulib/import/glob-libc.h: Update.
3075         * gnulib/import/glob.c: Update.
3076         * gnulib/import/glob.in.h: Update.
3077         * gnulib/import/glob_internal.h: Update.
3078         * gnulib/import/glob_pattern_p.c: Update.
3079         * gnulib/import/globfree.c: Update.
3080         * gnulib/import/hard-locale.c: Update.
3081         * gnulib/import/hard-locale.h: Update.
3082         * gnulib/import/intprops.h: Update.
3083         * gnulib/import/inttypes.in.h: Update.
3084         * gnulib/import/isnan.c: Update.
3085         * gnulib/import/isnand-nolibm.h: Update.
3086         * gnulib/import/isnand.c: Update.
3087         * gnulib/import/isnanl-nolibm.h: Update.
3088         * gnulib/import/isnanl.c: Update.
3089         * gnulib/import/itold.c: Update.
3090         * gnulib/import/libc-config.h: Update.
3091         * gnulib/import/limits.in.h: Update.
3092         * gnulib/import/localcharset.c: Update.
3093         * gnulib/import/localcharset.h: Update.
3094         * gnulib/import/localtime-buffer.c: Update.
3095         * gnulib/import/localtime-buffer.h: Update.
3096         * gnulib/import/lstat.c: Update.
3097         * gnulib/import/m4/00gnulib.m4: Update.
3098         * gnulib/import/m4/__inline.m4: Update.
3099         * gnulib/import/m4/absolute-header.m4: Update.
3100         * gnulib/import/m4/alloca.m4: Update.
3101         * gnulib/import/m4/builtin-expect.m4: Update.
3102         * gnulib/import/m4/canonicalize.m4: Update.
3103         * gnulib/import/m4/chdir-long.m4: Update.
3104         * gnulib/import/m4/close.m4: Update.
3105         * gnulib/import/m4/closedir.m4: Update.
3106         * gnulib/import/m4/configmake.m4: Update.
3107         * gnulib/import/m4/d-ino.m4: Update.
3108         * gnulib/import/m4/d-type.m4: Update.
3109         * gnulib/import/m4/dirent_h.m4: Update.
3110         * gnulib/import/m4/dirfd.m4: Update.
3111         * gnulib/import/m4/dirname.m4: Update.
3112         * gnulib/import/m4/double-slash-root.m4: Update.
3113         * gnulib/import/m4/dup.m4: Update.
3114         * gnulib/import/m4/dup2.m4: Update.
3115         * gnulib/import/m4/eealloc.m4: Update.
3116         * gnulib/import/m4/environ.m4: Update.
3117         * gnulib/import/m4/errno_h.m4: Update.
3118         * gnulib/import/m4/error.m4: Update.
3119         * gnulib/import/m4/exponentd.m4: Update.
3120         * gnulib/import/m4/exponentl.m4: Update.
3121         * gnulib/import/m4/extensions.m4: Update.
3122         * gnulib/import/m4/extern-inline.m4: Update.
3123         * gnulib/import/m4/fchdir.m4: Update.
3124         * gnulib/import/m4/fcntl-o.m4: Update.
3125         * gnulib/import/m4/fcntl.m4: Update.
3126         * gnulib/import/m4/fcntl_h.m4: Update.
3127         * gnulib/import/m4/fdopendir.m4: Update.
3128         * gnulib/import/m4/filenamecat.m4: Update.
3129         * gnulib/import/m4/flexmember.m4: Update.
3130         * gnulib/import/m4/float_h.m4: Update.
3131         * gnulib/import/m4/fnmatch.m4: Update.
3132         * gnulib/import/m4/fnmatch_h.m4: Update.
3133         * gnulib/import/m4/fpieee.m4: Update.
3134         * gnulib/import/m4/frexp.m4: Update.
3135         * gnulib/import/m4/frexpl.m4: Update.
3136         * gnulib/import/m4/fstat.m4: Update.
3137         * gnulib/import/m4/fstatat.m4: Update.
3138         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3139         * gnulib/import/m4/getcwd-path-max.m4: Update.
3140         * gnulib/import/m4/getcwd.m4: Update.
3141         * gnulib/import/m4/getdtablesize.m4: Update.
3142         * gnulib/import/m4/getlogin.m4: Update.
3143         * gnulib/import/m4/getlogin_r.m4: Update.
3144         * gnulib/import/m4/getpagesize.m4: Update.
3145         * gnulib/import/m4/getprogname.m4: Update.
3146         * gnulib/import/m4/gettimeofday.m4: Update.
3147         * gnulib/import/m4/glibc21.m4: Update.
3148         * gnulib/import/m4/glob.m4: Update.
3149         * gnulib/import/m4/glob_h.m4: Update.
3150         * gnulib/import/m4/gnulib-cache.m4: Update.
3151         * gnulib/import/m4/gnulib-common.m4: Update.
3152         * gnulib/import/m4/gnulib-comp.m4: Update.
3153         * gnulib/import/m4/gnulib-tool.m4: Update.
3154         * gnulib/import/m4/hard-locale.m4: Update.
3155         * gnulib/import/m4/include_next.m4: Update.
3156         * gnulib/import/m4/inttypes-pri.m4: Update.
3157         * gnulib/import/m4/inttypes.m4: Update.
3158         * gnulib/import/m4/isnand.m4: Update.
3159         * gnulib/import/m4/isnanl.m4: Update.
3160         * gnulib/import/m4/largefile.m4: Update.
3161         * gnulib/import/m4/limits-h.m4: Update.
3162         * gnulib/import/m4/localcharset.m4: Update.
3163         * gnulib/import/m4/locale-fr.m4: Update.
3164         * gnulib/import/m4/locale-ja.m4: Update.
3165         * gnulib/import/m4/locale-zh.m4: Update.
3166         * gnulib/import/m4/localtime-buffer.m4: Update.
3167         * gnulib/import/m4/longlong.m4: Update.
3168         * gnulib/import/m4/lstat.m4: Update.
3169         * gnulib/import/m4/malloc.m4: Update.
3170         * gnulib/import/m4/malloca.m4: Update.
3171         * gnulib/import/m4/math_h.m4: Update.
3172         * gnulib/import/m4/mbrtowc.m4: Update.
3173         * gnulib/import/m4/mbsinit.m4: Update.
3174         * gnulib/import/m4/mbsrtowcs.m4: Update.
3175         * gnulib/import/m4/mbstate_t.m4: Update.
3176         * gnulib/import/m4/memchr.m4: Update.
3177         * gnulib/import/m4/memmem.m4: Update.
3178         * gnulib/import/m4/mempcpy.m4: Update.
3179         * gnulib/import/m4/memrchr.m4: Update.
3180         * gnulib/import/m4/mkdir.m4: Update.
3181         * gnulib/import/m4/mkstemp.m4: Update.
3182         * gnulib/import/m4/mmap-anon.m4: Update.
3183         * gnulib/import/m4/mode_t.m4: Update.
3184         * gnulib/import/m4/msvc-inval.m4: Update.
3185         * gnulib/import/m4/msvc-nothrow.m4: Update.
3186         * gnulib/import/m4/multiarch.m4: Update.
3187         * gnulib/import/m4/nocrash.m4: Update.
3188         * gnulib/import/m4/off_t.m4: Update.
3189         * gnulib/import/m4/onceonly.m4: Update.
3190         * gnulib/import/m4/open-cloexec.m4: Update.
3191         * gnulib/import/m4/open.m4: Update.
3192         * gnulib/import/m4/openat.m4: Update.
3193         * gnulib/import/m4/opendir.m4: Update.
3194         * gnulib/import/m4/pathmax.m4: Update.
3195         * gnulib/import/m4/rawmemchr.m4: Update.
3196         * gnulib/import/m4/readdir.m4: Update.
3197         * gnulib/import/m4/readlink.m4: Update.
3198         * gnulib/import/m4/realloc.m4: Update.
3199         * gnulib/import/m4/rename.m4: Update.
3200         * gnulib/import/m4/rewinddir.m4: Update.
3201         * gnulib/import/m4/rmdir.m4: Update.
3202         * gnulib/import/m4/save-cwd.m4: Update.
3203         * gnulib/import/m4/secure_getenv.m4: Update.
3204         * gnulib/import/m4/setenv.m4: Update.
3205         * gnulib/import/m4/signal_h.m4: Update.
3206         * gnulib/import/m4/ssize_t.m4: Update.
3207         * gnulib/import/m4/stat-time.m4: Update.
3208         * gnulib/import/m4/stat.m4: Update.
3209         * gnulib/import/m4/std-gnu11.m4: Update.
3210         * gnulib/import/m4/stdbool.m4: Update.
3211         * gnulib/import/m4/stddef_h.m4: Update.
3212         * gnulib/import/m4/stdint.m4: Update.
3213         * gnulib/import/m4/stdio_h.m4: Update.
3214         * gnulib/import/m4/stdlib_h.m4: Update.
3215         * gnulib/import/m4/strchrnul.m4: Update.
3216         * gnulib/import/m4/strdup.m4: Update.
3217         * gnulib/import/m4/strerror.m4: Update.
3218         * gnulib/import/m4/string_h.m4: Update.
3219         * gnulib/import/m4/strstr.m4: Update.
3220         * gnulib/import/m4/strtok_r.m4: Update.
3221         * gnulib/import/m4/sys_socket_h.m4: Update.
3222         * gnulib/import/m4/sys_stat_h.m4: Update.
3223         * gnulib/import/m4/sys_time_h.m4: Update.
3224         * gnulib/import/m4/sys_types_h.m4: Update.
3225         * gnulib/import/m4/tempname.m4: Update.
3226         * gnulib/import/m4/time_h.m4: Update.
3227         * gnulib/import/m4/unistd-safer.m4: Update.
3228         * gnulib/import/m4/unistd_h.m4: Update.
3229         * gnulib/import/m4/warn-on-use.m4: Update.
3230         * gnulib/import/m4/wchar_h.m4: Update.
3231         * gnulib/import/m4/wchar_t.m4: Update.
3232         * gnulib/import/m4/wctype_h.m4: Update.
3233         * gnulib/import/m4/wint_t.m4: Update.
3234         * gnulib/import/malloc.c: Update.
3235         * gnulib/import/malloc/scratch_buffer.h: Update.
3236         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3237         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3238         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3239         * gnulib/import/malloca.c: Update.
3240         * gnulib/import/malloca.h: Update.
3241         * gnulib/import/malloca.valgrind: Update.
3242         * gnulib/import/math.in.h: Update.
3243         * gnulib/import/mbrtowc.c: Update.
3244         * gnulib/import/mbsinit.c: Update.
3245         * gnulib/import/mbsrtowcs-impl.h: Update.
3246         * gnulib/import/mbsrtowcs-state.c: Update.
3247         * gnulib/import/mbsrtowcs.c: Update.
3248         * gnulib/import/memchr.c: Update.
3249         * gnulib/import/memmem.c: Update.
3250         * gnulib/import/mempcpy.c: Update.
3251         * gnulib/import/memrchr.c: Update.
3252         * gnulib/import/mkdir.c: Update.
3253         * gnulib/import/mkstemp.c: Update.
3254         * gnulib/import/msvc-inval.c: Update.
3255         * gnulib/import/msvc-inval.h: Update.
3256         * gnulib/import/msvc-nothrow.c: Update.
3257         * gnulib/import/msvc-nothrow.h: Update.
3258         * gnulib/import/open.c: Update.
3259         * gnulib/import/openat-die.c: Update.
3260         * gnulib/import/openat-priv.h: Update.
3261         * gnulib/import/openat-proc.c: Update.
3262         * gnulib/import/openat.c: Update.
3263         * gnulib/import/openat.h: Update.
3264         * gnulib/import/opendir.c: Update.
3265         * gnulib/import/pathmax.h: Update.
3266         * gnulib/import/pipe-safer.c: Update.
3267         * gnulib/import/rawmemchr.c: Update.
3268         * gnulib/import/readdir.c: Update.
3269         * gnulib/import/readlink.c: Update.
3270         * gnulib/import/realloc.c: Update.
3271         * gnulib/import/ref-add.sin: Update.
3272         * gnulib/import/ref-del.sin: Update.
3273         * gnulib/import/rename.c: Update.
3274         * gnulib/import/rewinddir.c: Update.
3275         * gnulib/import/rmdir.c: Update.
3276         * gnulib/import/same-inode.h: Update.
3277         * gnulib/import/save-cwd.c: Update.
3278         * gnulib/import/save-cwd.h: Update.
3279         * gnulib/import/scratch_buffer.h: Update.
3280         * gnulib/import/secure_getenv.c: Update.
3281         * gnulib/import/setenv.c: Update.
3282         * gnulib/import/signal.in.h: Update.
3283         * gnulib/import/stat-time.c: Update.
3284         * gnulib/import/stat-time.h: Update.
3285         * gnulib/import/stat-w32.c: Update.
3286         * gnulib/import/stat-w32.h: Update.
3287         * gnulib/import/stat.c: Update.
3288         * gnulib/import/stdbool.in.h: Update.
3289         * gnulib/import/stddef.in.h: Update.
3290         * gnulib/import/stdint.in.h: Update.
3291         * gnulib/import/stdio.in.h: Update.
3292         * gnulib/import/stdlib.in.h: Update.
3293         * gnulib/import/str-two-way.h: Update.
3294         * gnulib/import/strchrnul.c: Update.
3295         * gnulib/import/strdup.c: Update.
3296         * gnulib/import/streq.h: Update.
3297         * gnulib/import/strerror-override.c: Update.
3298         * gnulib/import/strerror-override.h: Update.
3299         * gnulib/import/strerror.c: Update.
3300         * gnulib/import/string.in.h: Update.
3301         * gnulib/import/stripslash.c: Update.
3302         * gnulib/import/strnlen1.c: Update.
3303         * gnulib/import/strnlen1.h: Update.
3304         * gnulib/import/strstr.c: Update.
3305         * gnulib/import/strtok_r.c: Update.
3306         * gnulib/import/sys_stat.in.h: Update.
3307         * gnulib/import/sys_time.in.h: Update.
3308         * gnulib/import/sys_types.in.h: Update.
3309         * gnulib/import/tempname.c: Update.
3310         * gnulib/import/tempname.h: Update.
3311         * gnulib/import/time.in.h: Update.
3312         * gnulib/import/unistd--.h: Update.
3313         * gnulib/import/unistd-safer.h: Update.
3314         * gnulib/import/unistd.in.h: Update.
3315         * gnulib/import/unsetenv.c: Update.
3316         * gnulib/import/verify.h: Update.
3317         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3318         * gnulib/import/wchar.in.h: Update.
3319         * gnulib/import/wctype.in.h: Update.
3320         * gnulib/import/xalloc-oversized.h: Update.
3321         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3322         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3323
3324 2018-08-16  Gary Benson <gbenson@redhat.com>
3325
3326         PR gdb/13000:
3327         * gdb/main.c (captured_main_1): Exit with nonzero status
3328         in batch mode if the last command to be executed failed.
3329         * NEWS: Mention the above.
3330
3331 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3332
3333         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3334         end of warning message.
3335
3336 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3337
3338         PR gdb/22943:
3339         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3340         (aarch64_extract_return_value): Use
3341         aapcs_is_vfp_call_or_return_candidate.
3342         (aarch64_return_in_memory): Likewise.
3343         (aarch64_store_return_value): Likewise.
3344
3345 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3346
3347         * aarch64-tdep.c
3348         (aapcs_is_vfp_call_or_return_candidate): Make static
3349         (pass_in_v_or_stack): Remove function.
3350         (pass_in_v_vfp_candidate): New function.
3351         (aarch64_push_dummy_call): Check for float register candidates.
3352
3353 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3354
3355         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3356         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3357         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3358
3359 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3360
3361         PR build/23399
3362         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3363         (struct ipa_sym_addresses): Rename to...
3364         (struct ipa_sym_addresses_common): ... this.
3365         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3366
3367 2018-08-28  Tom Tromey  <tom@tromey.com>
3368
3369         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3370         (token_fifo): Now a std::vector.
3371         (yylex, c_parse): Update.
3372         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3373         (token_fifo): Now a std::vector.
3374         (yylex, d_parse): Update.
3375         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3376         (token_fifo): Now a std::vector.
3377         (yylex, go_parse): Update.
3378
3379 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3380
3381         * parser-defs.h (struct type_stack) <elements>: Change type to
3382         std::vector<union type_stack_elt>.
3383         <depth, size>: Remove.
3384         * parse.c (parse_exp_in_context_1): Adjust.
3385         (type_stack_reserve): Remove.
3386         (check_type_stack_depth): Remove.
3387         (insert_into_type_stack): Adjust to std::vector.
3388         (insert_type): Likewise.
3389         (push_type): Likewise.
3390         (push_type_int): Likewise.
3391         (insert_type_address_space): Likewise.
3392         (pop_type): Likewise.
3393         (pop_type_int): Likewise.
3394         (pop_typelist): Likewise.
3395         (pop_type_stack): Likewise.
3396         (append_type_stack): Likewise.
3397         (push_type_stack): Likewise.
3398         (get_type_stack): Likewise.
3399         (type_stack_cleanup): Likewise.
3400         (push_typelist): Likewise.
3401         (follow_types): Likewise.
3402         (_initialize_parse): Likewise.
3403
3404 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3405
3406         * NEWS: Mention csky target.
3407
3408 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3409             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3410             Don Breazeal  <donb@codesourcery.com>
3411
3412         * csky-linux-tdep.c: New file.
3413         * csky-tdep.c: Likewise.
3414         * csky-tdep.h: Likewise.
3415         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3416         csky-tdep.o.
3417         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3418         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3419         * configure.tgt: Add csky support.
3420
3421 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3422
3423         * python/py-framefilter.c (py_print_frame): Print frame architecture
3424         when printing on an MI output.
3425
3426 2018-08-27  Tom Tromey  <tom@tromey.com>
3427
3428         PR build/23087:
3429         * configure: Rebuild.
3430         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3431
3432 2018-08-27  Tom Tromey  <tom@tromey.com>
3433
3434         * aarch64-linux-tdep.c
3435         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3436         casts to int.
3437
3438 2018-08-27  Tom Tromey  <tom@tromey.com>
3439
3440         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3441         unsigned.
3442         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3443         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3444         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3445         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3446         unsigned.
3447
3448 2018-08-27  Tom Tromey  <tom@tromey.com>
3449
3450         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3451         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3452
3453 2018-08-27  Tom Tromey  <tom@tromey.com>
3454
3455         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3456         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3457         ULONGEST_MAX.
3458         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3459         ULONGEST_MAX.
3460         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3461         ULONGEST_MAX.
3462         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3463         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3464         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3465         ULONGEST_MAX.
3466         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3467         (ppc64_linux_sigaction_tramp_frame)
3468         (ppc32_linux_sighandler_tramp_frame)
3469         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3470         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3471         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3472         * mn10300-linux-tdep.c (am33_linux_sigframe)
3473         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3474         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3475         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3476         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3477         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3478         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3479         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3480         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3481         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3482         * microblaze-linux-tdep.c
3483         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3484         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3485         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3486         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3487         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3488         * common/common-types.h (ULONGEST_MAX): New define.
3489         (CORE_ADDR_MAX): Fix formatting.
3490         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3491         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3492         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3493         (arm_linux_rt_sigreturn_tramp_frame)
3494         (arm_eabi_linux_sigreturn_tramp_frame)
3495         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3496         (thumb2_eabi_linux_sigreturn_tramp_frame)
3497         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3498         (arm_linux_restart_syscall_tramp_frame)
3499         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3500         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3501         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3502         ULONGEST_MAX.
3503         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3504
3505 2018-08-27  Tom Tromey  <tom@tromey.com>
3506
3507         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3508         CORE_ADDR_MAX.
3509         * mips-tdep.c (mips_deal_with_atomic_sequence)
3510         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3511         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3512         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3513         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3514         CORE_ADDR_MAX.
3515         * aarch64-tdep.c (aarch64_software_single_step): Use
3516         CORE_ADDR_MAX.
3517
3518 2018-08-27  Tom Tromey  <tom@tromey.com>
3519
3520         * linespec.c (complete_linespec_component): Add cast to "char".
3521         * completer.c (completion_tracker::build_completion_result): Add
3522         cast to "char".
3523
3524 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3525
3526         * solist.h (struct solist, struct target_so_ops): Fix
3527         indentation.
3528
3529 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3530
3531         * ada-tasks.c (ada_task_info_s): Remove typedef.
3532         (DEF_VEC_O(ada_task_info_s)): Remove.
3533         (struct ada_tasks_inferior_data): Initialize fields.
3534         <task_list>: Make an std::vector.
3535         (get_ada_tasks_inferior_data): Allocate with new.
3536         (ada_get_task_number): Adjust.
3537         (get_task_number_from_id): Likewise.
3538         (valid_task_id): Likewise.
3539         (ada_get_task_info_from_ptid): Likewise.
3540         (iterate_over_live_ada_tasks): Likewise.
3541         (add_ada_task): Likewise.
3542         (read_known_tasks): Likewise.
3543         (ada_build_task_list): Likewise.
3544         (print_ada_task_info): Likewise.
3545         (info_task): Likewise.
3546         (task_command_1): Likewise.
3547
3548 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3549
3550         * ada-lang.c (add_angle_brackets): Return std::string.
3551
3552 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3553
3554         * python/py-threadevent.c (py_get_event_thread): Initialize
3555         pythread.
3556
3557 2018-08-24  Pedro Alves  <palves@redhat.com>
3558
3559         * python/py-bpevent.c (create_breakpoint_event_object): Use
3560         copy-initialization.
3561         * python/py-continueevent.c (emit_continue_event): Use
3562         copy-initialization.
3563         * python/py-exitedevent.c (create_exited_event_object): Return a
3564         gdbpy_ref<>.
3565         (emit_exited_event): Use copy-initialization.
3566         * python/py-inferior.c (python_new_inferior)
3567         (python_inferior_deleted, add_thread_object): Use
3568         copy-initialization.
3569         * python/py-infevents.c (create_inferior_call_event_object)
3570         (create_register_changed_event_object)
3571         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3572         (emit_inferior_call_event, emit_memory_changed_event)
3573         (emit_register_changed_event): Use copy-initialization.
3574         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3575         Return a gdbpy_ref<>.
3576         (emit_new_objfile_event): Use copy-initialization.
3577         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3578         (emit_clear_objfiles_event): Use copy-initialization.
3579         * python/py-signalevent.c (create_signal_event_object): Use
3580         copy-initialization.
3581         * python/py-threadevent.c (create_thread_event_object): Use
3582         copy-initialization.
3583
3584 2018-08-24  Pedro Alves  <palves@redhat.com>
3585             Simon Marchi  <simon.marchi@ericsson.com>
3586
3587         PR gdb/23379
3588         * python/py-continueevent.c: Include "gdbthread.h".
3589         (create_continue_event_object): Add intro comment.  Add 'ptid'
3590         parameter.  Use it to find thread to pass to
3591         create_thread_event_object.
3592         (emit_continue_event): Pass PTID down to
3593         create_continue_event_object.
3594         * python/py-event.h (py_get_event_thread): Declare.
3595         (create_thread_event_object): Remove default from 'thread'
3596         parameter.
3597         * python/py-stopevent.c (create_stop_event_object): Use
3598         py_get_event_thread.
3599         * python/py-threadevent.c (get_event_thread): Rename to ...
3600         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3601         and use it to find the thread.
3602         (create_thread_event_object): Assert that THREAD isn't null.
3603         Don't find the event thread here.
3604
3605 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3606
3607         * block.h (blockrange, blockranges): New struct declarations.
3608         (struct block): Add new field named `ranges'.
3609         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3610         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3611         macros for accessing ranges in struct block.
3612         (make_blockranges): New declaration.
3613         block.c (make_blockranges): New function.
3614         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3615         for block.
3616         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3617         * blockframe.c (cache_pc_function_block): New static global.
3618         (clear_pc_function_cache): Clear cache_pc_function_block.
3619         (find_pc_partial_function): Move comment to symtab.h.  Add
3620         support for non-contiguous blocks.
3621         * cli/cli-cmds.c (block.h): Include.
3622         (print_disassembly): Handle printing of non-contiguous blocks.
3623         (disassemble_current_function): Likewise.
3624         (disassemble_command): Likewise.
3625
3626         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3627         BLOCK_START.
3628         * blockframe.c (get_pc_function_start): Likewise.
3629         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3630         (gcc_symbol_address): Likewise.
3631         * compile/compile-object-run.c (compile_object_run): Likewise.
3632         * compile/compile.c (get_expr_block_and_pc): Likewise.
3633         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3634         (func_addr_to_tail_call_list): Likewise.
3635         * findvar.c (default_read_var_value): Likewise.
3636         * inline-frame.c (inline_frame_this_id): Likewise.
3637         (skip-inline_frames): Likewise.
3638         * infcmd.c (until_next_command): Likewise.
3639         * linespec.c (convert_linespec_to_sals): Likewise.
3640         * parse.c (parse_exp_in_context_1): Likewise.
3641         * printcmd.c (build_address_symbolic): likewise.
3642         (info_address_command): Likewise.
3643         symtab.c (find_function_start_sal): Likewise.
3644         (skip_prologue_sal): Likewise.
3645         (find_function_alias_target): Likewise.
3646         (find_gnu_ifunc): Likewise.
3647         * stack.c (find_frame_funname): Likewise.
3648         * symtab.c (fixup_symbol_section): Likewise.
3649         (find_function_start_sal): Likewise.
3650         (skip_prologue_sal): Likewsie.
3651         (find_function_alias_target): Likewise.
3652         (find_gnu_ifunc): Likewise.
3653         * tracepoint.c (info_scope_command): Likewise.
3654         * value.c (value_fn_field): Likewise.
3655
3656         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3657         in place of find_pc_partial_function.
3658         * blockframe.c (find_function_entry_range_from_pc): New function.
3659         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3660         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3661         for each range in a block.
3662
3663
3664 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3665
3666         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3667         incrementation.
3668
3669 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3670
3671         * solib-svr4.c (read_program_headers_from_bfd): Return
3672         gdb::optional<gdb::byte_vector>.
3673         (svr4_exec_displacement): Adjust.
3674
3675 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3676
3677         * solib-svr4.c (read_program_header): Return
3678         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3679         (find_program_interpreter): Return
3680         gdb::optional<gdb::byte_vector>.
3681         (scan_dyntag_auxv): Adjust.
3682         (enable_break): Adjust.
3683         (svr4_exec_displacement): Adjust.
3684
3685 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3686
3687         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3688         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3689
3690 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3691
3692         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3693         string_vprintf.
3694         * guile/scm-utils.c (gdbscm_printf): Likewise.
3695         * serial.c (serial_printf): Likewise.
3696         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3697
3698 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3699
3700         * stack.c (print_frame): Print frame architecture when printing on
3701         an MI output.
3702         * NEWS: Mention new "arch" attribute in frame output.
3703
3704 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3705
3706         * arch/aarch64.h (aarch64_regnum): Update comment.
3707
3708 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3709
3710         * NEWS: Add SVE to 8.2 section.
3711
3712 2018-08-21  Pedro Alves  <palves@redhat.com>
3713
3714         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3715         out from gdbscm_parse_function_args.
3716         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3717         gdbscm_parse_function_args_1.
3718
3719 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3720
3721         PR gdb/17816
3722         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3723         operator.
3724
3725 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3726
3727         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3728
3729 2018-08-19  Michael Spang  <spang@google.com>
3730
3731         PR gdb/11786
3732         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3733         for PT_TLS segments.
3734
3735 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3736
3737         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3738         dwarf_variable_value.
3739         * dwarf2-frame.c (class dwarf_expr_executor):
3740         Add override for dwarf_variable_value.
3741         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3742         (class symbol_needs_eval_context): Likewise.
3743         (indirect_synthetic_pointer): Add forward declaration.
3744         (sect_variable_value): New function.
3745         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3746         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3747         for DW_OP_GNU_variable_value.
3748
3749 2018-08-16  Tom Tromey  <tom@tromey.com>
3750
3751         * top.c (read_command_file): Update.
3752         (command_line_input): Remove "repeat" argument.
3753         * ada-lang.c (get_selections): Update.
3754         * linespec.c (decode_line_2): Update.
3755         * defs.h (command_line_input): Remove argument.
3756         * cli/cli-script.c (read_next_line): Update.
3757         * python/py-gdb-readline.c: Update.
3758
3759 2018-08-17  Tom Tromey  <tom@tromey.com>
3760
3761         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3762         command_line_input.
3763
3764 2018-08-15  Tom Tromey  <tom@tromey.com>
3765
3766         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3767
3768 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3769
3770         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3771         If used, use find_pc_partial_function to find address range
3772         to disassemble.
3773         * mi/mi-main.c (mi_cmd_list_features): Report
3774         "data-disassemble-a-option" feature.
3775         * NEWS: Mention new -data-disassemble option -a.
3776
3777 2018-08-13  Tom Tromey  <tom@tromey.com>
3778
3779         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3780
3781 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3782
3783         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3784         (aarch64_linux_collect_sve_regset): Likewise.
3785         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3786         * regcache.h (regcache_map_entry_size): New function.
3787
3788 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3789
3790         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3791         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3792         (SVE_HEADER_VL_LENGTH): Likewise.
3793         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3794         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3795         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3796         (SVE_HEADER_SIZE_OFFSET): Likewise.
3797         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3798         (SVE_HEADER_VL_OFFSET): Likewise.
3799         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3800         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3801         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3802         (SVE_HEADER_SIZE): Likewise.
3803         (aarch64_linux_core_read_vq): Add function.
3804         (aarch64_linux_core_read_description): Check for SVE section.
3805
3806 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3807
3808         * aarch64-fbsd-tdep.c
3809         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3810         collect_size.
3811         * aarch64-linux-tdep.c
3812         (aarch64_linux_iterate_over_regset_sections): Likewise.
3813         * alpha-linux-tdep.c
3814         (alpha_linux_iterate_over_regset_sections):
3815         * alpha-nbsd-tdep.c
3816         (alphanbsd_iterate_over_regset_sections): Likewise.
3817         * amd64-fbsd-tdep.c
3818         (amd64fbsd_iterate_over_regset_sections): Likewise.
3819         * amd64-linux-tdep.c
3820         (amd64_linux_iterate_over_regset_sections): Likewise.
3821         * arm-bsd-tdep.c
3822         (armbsd_iterate_over_regset_sections): Likewise.
3823         * arm-fbsd-tdep.c
3824         (arm_fbsd_iterate_over_regset_sections): Likewise.
3825         * arm-linux-tdep.c
3826         (arm_linux_iterate_over_regset_sections): Likewise.
3827         * corelow.c (get_core_registers_cb): Likewise.
3828         (core_target::fetch_registers): Likewise.
3829         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3830         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3831         * gdbarch.h (void): Regenerate.
3832         * gdbarch.sh: Add supply_size and collect_size.
3833         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3834         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3835         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3836         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3837         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3838         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3839         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3840         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3841         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3842         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3843         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3844         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3845         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3846         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3847         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3848         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3849         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3850         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3851         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3852         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3853         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3854         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3855         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3856         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3857         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3858         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3859         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3860         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3861         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3862         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3863
3864 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3865
3866         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3867         with string_printf.
3868
3869 2018-08-10  Keith Seitz  <keiths@redhat.com>
3870
3871         * compile/compile-c-support.c (add_code_header, add_code_footer):
3872         Move into policy class.
3873         (c_push_user_expression, pop_user_expression_nop)
3874         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3875         (compile_program): New host class.
3876         (c_compile_program): New typedef.
3877         (c_compute_porgram): Use c_compile_program.
3878
3879 2018-08-10  Keith Seitz  <keiths@redhat.com>
3880
3881         * compile/compile-internal.h (compile_instance::~compile_instance):
3882         Remove calls to htab_delete.
3883         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3884         * compile.c (compile_instance::compile_instance): Initialize
3885         htab unique pointers.
3886         (compile_instance::get_cached_type, compile_instance::insert_type)
3887         (compile_instance::error_symbol_once): Update for unique_ptr.
3888
3889 2018-08-10  Keith Seitz  <keiths@redhat.com>
3890
3891         * compile/compile-c-symbols.c (struct symbol_error)
3892         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3893         (compile_instance::insert_symbol_error)
3894         (compile_instance::error_symbol_once): Move to ...
3895         * compile/compile.c: ... here.
3896
3897 2018-08-10  Keith Seitz  <keiths@redhat.com>
3898
3899         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3900         instead of `new_compile_instance'.
3901         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3902         Update description.
3903         If the symbol error map is not initialized, create it.
3904         (generate_c_for_for_one_symbol): Do not check/initialize
3905         the symbol error map.
3906         * compile/compile-c-types.c (compile_c_instance): Make a class.
3907         Update all callers.
3908         (compile_instance::compile_instance): Initialize the type cache.
3909         (get_cached_type): New function.
3910         (insert_type): Update description.
3911         (compile_c_instance::m_default_cflags): Define.
3912         (convert_type): Update description.  Use get_cached_type.
3913         (delete_instance): Moved to destructor.
3914         (new_compile_instance): Moved to constructor.
3915         * compile/compile-c.h (compile_c_instance): Make class inheriting
3916         from compile_instance.
3917         <base>: Remove field.
3918         <type_map, symbol_err_map>: Move to base class.
3919         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3920         * compile/compile-internal.h (compile_instance): Make class.
3921         <type_map_t, symbol_err_map_t>: Define.
3922         <fe>: Rename to `m_gcc_fe'.
3923         <scope, block, gcc_target_options>: Add `m_' prefix.
3924         <m_type_map, m_symbol_err_map>: New fields, moved from
3925         compile_c_instance.
3926         <destroy>: Remove.
3927         (convert_type, new_compile_instance): Remove.
3928         * compile/compile.c (cleanup_compile_instance): Remove.
3929         (compile_to_object): Use unique_ptr to eliminate cleanups.
3930         (compile_instance::set_print_callback, compile_instance::version)
3931         (compile_instance::set_verbose)
3932         (compile_instance::set_driver_filename)
3933         (compile_instance::set_triplet_regexp)
3934         (compile_instance::set_arguments)
3935         (compile_instance::set_source_file)
3936         (compile_instance::compile): Define.
3937
3938 2018-08-10  Keith Seitz  <keiths@redhat.com>
3939
3940         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3941         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3942         gcc-c-fe.def to define C plugin.
3943         (delete_instance): Delete `c_plugin'.
3944         (new_compile_instance): Initialize `c_plugin'.
3945         * compile/compile-c.h: Include gcc_c_plugin.h.
3946         (struct compile_c_instance) <c_plugin>: New member.
3947         * gcc-c-plugin.h: New file.
3948         Update all callers with API change.
3949
3950 2018-08-10  Keith Seitz  <keiths@redhat.com>
3951
3952         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3953         (HFILES_NO_SRCDIR): ... to here.
3954         Add compile-internal.h and compile-c.h.
3955         * compile/compile-c-support.c: Include compile-c.h.
3956         * compile/compile-c-symbols.c: Include compile-c.h.
3957         (generate_c_for_variable_locations): Update comment.
3958         * compile/compile-c-types.c: Include compile-c.h.
3959         * compile/compile-c.h: New file -- moved C language declarations
3960         from other files here.
3961         * compile/compile-internal.h: Do not include hashtab.h or
3962         common/enum-flags.h.
3963         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3964         (gcc_convert_symbol, gcc_symbol_address)
3965         (generate_c_for_variable_locations, c_get_mode_for_size)
3966         (c_get_range_decl_name): Definitions moved to compile-c.h.
3967         * compile/compile-loc2c.c: Include compile-c.h.
3968
3969 2018-08-10  Keith Seitz  <keiths@redhat.com>
3970
3971         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3972         (c_symbol_substitution_name): ... this.
3973         Update all callers.
3974
3975 2018-08-10  Keith Seitz  <keiths@redhat.com>
3976
3977         * compile/compile-c-support.c (c_compute_program): Use
3978         unique_xmalloc_ptr to eliminate cleanup.
3979         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3980         Return a unique_xmalloc_ptr and eliminate cleanup.
3981         * compile/compile-internal.h (generate_c_for_variable_locations):
3982         Return unique_xmalloc_ptr and update description.
3983
3984 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3985
3986         * corelow.c (core_target::get_core_register_section): Rename
3987         min_size to section_min_size.
3988
3989 2018-08-09  Jim Wilson  <jimw@sifive.com>
3990
3991         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3992         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3993         * NEWS: Mention new GNU/Linux RISC-V target.
3994         * configure.host: Add riscv*-*-linux*.
3995         * configure.nat: Add riscv*.
3996         * configure.tgt: Add riscv*-*-linux*.
3997         * riscv-linux-nat.c: New file.
3998         * riscv-linux-tdep.c: New file.
3999
4000 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4001
4002         * infrun.c (resume): Make static, add forward declaration.
4003         (proceed): Update header comment.
4004         * infrun.h (resume): Delete declaration.
4005
4006 2018-08-09  Tom Tromey  <tom@tromey.com>
4007
4008         * riscv-tdep.h: Minor formatting fixes.
4009
4010 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4011
4012         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4013         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4014         (test_mkdir_recursive): Likewise.
4015         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4016
4017 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4018
4019         * valarith.c (value_subscripted_rvalue): If an array is not in
4020         memory, and we don't know the upper bound, then we can't know that
4021         the requested element exists or not.
4022
4023 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4024
4025         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4026         (target_options_to_string): Add comment.
4027
4028 2018-08-08  Tom Tromey  <tom@tromey.com>
4029
4030         * unittests/scoped_mmap-selftests.c: Check result of "write".
4031
4032 2018-08-08  Jim Wilson  <jimw@sifive.com>
4033
4034         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4035         (decode_register_index_short): New.
4036         (decode_j_type_insn, decode_cj_type_insn): New.
4037         (decode_b_type_insn, decode_cb_type_insn): New.
4038         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4039         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4040         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4041         is_c_sw_insn instead of is_sw_insn.
4042         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4043         (riscv_software_single_step): New.
4044         * riscv-tdep.h (riscv_software_single_step): Declare.
4045
4046         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4047         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4048
4049 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4050
4051         PR gdb/18050:
4052         * target.c (dispose_inferior): Don't dispose of inferiors that are
4053         already killed.
4054
4055 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4056
4057         * remote.c (remote_target::download_tracepoint): Change char* to
4058         const char*.
4059
4060 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4061
4062         * target.h (target_options_to_string): Return an std::string.
4063         * target.c (str_comma_list_concat_elem): Return void, use
4064         std::string.
4065         (do_option): Likewise.
4066         (target_options_to_string): Return an std::string.
4067         * linux-nat.c (linux_nat_target::wait): Adjust.
4068         * target-debug.h (target_debug_print_options): Adjust.
4069
4070 2018-08-07  Tom Tromey  <tom@tromey.com>
4071
4072         * Makefile.in (CPPFLAGS): New variable.
4073         (INTERNAL_CPPFLAGS): Use it.
4074
4075 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4076
4077         * NEWS: Mention the index cache.
4078
4079 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4080
4081         * common/pathstuff.h (get_standard_cache_dir): New.
4082         * common/pathstuff.c (get_standard_cache_dir): New.
4083         * build-id.h (build_id_to_string): New.
4084         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4085         DEBUG_STR_SUFFIX): Move to here.
4086         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4087         DEBUG_STR_SUFFIX): Move from there.
4088         (write_psymtabs_to_index): Make non-static, add basename
4089         parameter.  Write to temporary files, rename when done.
4090         (save_gdb_index_command): Adjust call to
4091         write_psymtabs_to_index.
4092         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4093         field.
4094         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4095         (get_gdb_index_contents_from_cache): New.
4096         (get_gdb_index_contents_from_cache_dwz): New.
4097         (dwarf2_initialize_objfile): Read index from cache.
4098         (dwarf2_build_psymtabs): Save to index.
4099         * dwarf-index-cache.h: New file.
4100         * dwarf-index-cache.c: New file.
4101         * dwarf-index-write.h: New file.
4102
4103 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4104
4105         * gnulib/aclocal.m4: Re-generate.
4106         * gnulib/config.in: Re-generate.
4107         * gnulib/configure: Re-generate.
4108         * gnulib/import/Makefile.am: Re-generate.
4109         * gnulib/import/Makefile.in: Re-generate.
4110         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4111         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4112         * gnulib/import/m4/mkdir.m4: New file.
4113         * gnulib/import/mkdir.c: New file.
4114         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4115         module.
4116
4117 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4118
4119         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4120         * common/scoped_mmap.c: New file.
4121         * common/scoped_mmap.h (destroy): New method.
4122         (~scoped_mmap, reset): Use destroy.
4123         (scoped_mmap): New move constructor.
4124         (mmap_file): New declaration.
4125         * unittests/scoped_mmap-selftests.c (test_normal,
4126         test_invalid_filename, run_tests): New functions.
4127         (_initialize_scoped_mmap_selftests): Register selftest.
4128
4129 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4130
4131         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4132         (read_gdb_index_from_buffer): ... this.  Remove section
4133         parameter, add buffer parameter.
4134         (get_gdb_index_contents_ftype,
4135         get_gdb_index_contents_dwz_ftype): New typedefs.
4136         (dwarf2_read_gdb_index): Add callback parameters to get the
4137         index contents.
4138         (get_gdb_index_contents_from_section): New.
4139         (dwarf2_initialize_objfile): Update call to
4140         dwarf2_read_gdb_index.
4141
4142 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4143
4144         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4145         (gdb_open_cloexec): Likewise.
4146         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4147         (commandline_from_pid): Likewise.
4148         (linux_xfer_osdata_threads): Likewise.
4149         (linux_xfer_osdata_fds): Likewise.
4150         * ada-lang.c (is_package_name): Likewise.
4151         * auxv.c (procfs_xfer_auxv): Likewise.
4152         * breakpoint.c (print_one_breakpoint_location): Use
4153         uiout::field_fmt.
4154         (print_one_catch_solib): Use string_printf.
4155         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4156         (add_pe_forwarded_sym): Likewise.
4157         * dwarf2read.c (create_type_unit_group): Likewise.
4158         (build_error_marker_type): Likewise.
4159         * infcall.c (get_function_name): Likewise.
4160         * valprint.c (print_converted_chars_to_obstack): Likewise.
4161         * xtensa-tdep.c (xtensa_register_type): Likewise.
4162
4163 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4164
4165         * remote.c (remote_target::download_tracepoint): Fix format
4166         string errors.
4167
4168 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4169
4170         * tracefile.c: Include common/byte-vector.h.
4171         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4172         with trace_regblock_size if needed.  Update uses of buf.
4173
4174 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4175
4176         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4177         std::vector<unsigned char>.
4178         * tracepoint.c (collection_list::collection_list): Remove
4179         m_regs_mask initializer from initializer list.  Resize
4180         m_regs_mask using the largest remote register number.
4181         (collection_list::add_remote_register): Remove size check on
4182         m_regs_mask.  Use at to access element.
4183         (collection_list::stringify): Change type of temp_buf to
4184         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4185         stringify the register mask.  Use pack_hex_byte for the register
4186         mask.
4187
4188 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4189
4190         * tracepoint.h (class collection_list) <add_register>: Remove.
4191         <add_remote_register, add_ax_registers, add_local_register>:
4192         Declare.
4193         <add_memrange>: Add scope parameter.
4194         * tracepoint.c (encode_actions_1): Likewise.
4195         (collection_list::add_register): Rename to ...
4196         (collection_list::add_remote_register): ... this.  Update
4197         comment.
4198         (collection_list::add_ax_registers, add_local_register): New
4199         methods.
4200         (collection_list::add_memrange): Add scope parameter.  Call
4201         add_local_register instead of add_register.
4202         (finalize_tracepoint_aexpr): New function.
4203         (collection_list::collect_symbol): Update calls to add_memrange.
4204         Call add_local_register instead of add_register.  Call
4205         add_ax_registers.  Call finalize_tracepoint_aexpr.
4206         (encode_actions_1): Get remote regnos for $reg action.  Call
4207         add_remote_register, add_ax_registers, and add_local_register.
4208         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4209         (validate_actionline): Call finalize_tracepoint_aexpr.
4210
4211 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4212
4213         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4214         Replace array buf with gdb::char_vector buf, of size
4215         get_remote_packet_size ().  Replace references to buf and
4216         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4217         and xsnprintf with snprintf.  Raise errors if the buffer is too
4218         small.
4219
4220 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4221
4222         * remote.c (remote_target::download_tracepoint): Fix the has_more
4223         predicate in the QTDP action list iteration.
4224
4225 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4226
4227         * remote.c (remote_target::download_tracepoint): Fix indentation
4228         in for block.
4229
4230 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4231
4232         * proc-api.c (_initialize_proc_api): Remove c, unused.
4233         * procfs.c (procfs_init_inferior): Remove signals, unused.
4234         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4235         unused.
4236
4237 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4238             Andrew Burgess  <andrew.burgess@embecosm.com>
4239
4240         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4241         'W_STOPCODE (0)' as this could be ambiguous.
4242
4243 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4244
4245         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4246         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4247         "ai_socktype").
4248
4249 2018-08-02  Tom Tromey  <tom@tromey.com>
4250
4251         PR symtab/16842.
4252         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4253         symbols.
4254         (process_structure_scope): Likewise.
4255
4256 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4257
4258         PR gdb/22629:
4259         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4260         kill inferior.
4261
4262 2018-08-02  Tom Tromey  <tom@tromey.com>
4263
4264         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4265         (darwin_suspend_inferior, darwin_resume_inferior)
4266         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4267         (darwin_check_new_threads): Check result of get_darwin_inferior.
4268
4269 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4270
4271         GDB 8.1.1 released.
4272
4273 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4274
4275         * varobj.c (varobj_get_path_expr_parent): Report an error if
4276         parent is a dynamic varobj.
4277
4278 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4279
4280         * gnulib/aclocal.m4: Re-generate.
4281         * gnulib/config.in: Re-generate.
4282         * gnulib/configure: Re-generate.
4283         * gnulib/import/Makefile.in: Re-generate.
4284         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4285         * gnulib/import/m4/onceonly.m4: Re-generate.
4286
4287 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4288
4289         * target-descriptions.c (struct xml_test_tdesc): New.
4290         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4291         (record_xml_tdesc): Update.
4292         (maintenance_check_xml_descriptions): Update.
4293         * target-descriptions.h (record_xml_tdesc): Update comment.
4294
4295 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4296
4297         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4298         checking array bounds are defined.
4299
4300 2018-07-30  Tom Tromey  <tom@tromey.com>
4301
4302         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4303         irreflexivity violation.
4304
4305 2018-07-30  Tom Tromey  <tom@tromey.com>
4306
4307         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4308         * value.c (unpack_long): Remove lint code.
4309         * valops.c (value_ind): Remove lint code.
4310         * valarith.c (value_x_binop, value_x_unop, value_equal)
4311         (value_pos): Remove lint code.
4312
4313 2018-07-28  Tom de Vries  <tdevries@suse.de>
4314
4315         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4316         with undefined upper bound as <optimized out>.
4317
4318 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4319
4320         * gcore.in: Rename variable "name" to "prefix".  Expand
4321         "usage" text.
4322
4323 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4324
4325         * windows-nat.c (windows_nat_target::create_inferior): Update to
4326         call close() in global namespace.
4327
4328 2018-07-26  Tom Tromey  <tom@tromey.com>
4329
4330         * dwarf-index-write.c (add_address_entry): Don't add objfile
4331         offsets.
4332         * dbxread.c (find_stab_function): Rename from
4333         find_stab_function_addr.  Return a bound_minimal_symbol.
4334         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4335         Don't add objfile offsets.
4336         (end_psymtab): Use raw_text_low, raw_text_high,
4337         MSYMBOL_VALUE_RAW_ADDRESS.
4338         (read_ofile_symtab): Update.
4339         (process_one_symbol): Update.
4340         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4341         offsets.
4342         (dw2_relocate): Remove.
4343         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4344         searching addrmap.
4345         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4346         Update.
4347         (process_psymtab_comp_unit_reader, add_partial_symbol)
4348         (add_partial_subprogram, dwarf2_ranges_read): Update.
4349         (load_partial_dies): Update.
4350         (add_address_entry): Don't add objfile offsets.
4351         (dwarf2_build_include_psymtabs): Update.
4352         (create_addrmap_from_aranges): Don't add objfile offsets.
4353         (dw2_find_pc_sect_compunit_symtab): Update.
4354         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4355         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4356         Update.
4357         (parse_partial_symbols): Don't add objfile offsets.  Use
4358         raw_text_low, raw_text_high.  Update.
4359         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4360         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4361         or call 'relocate' quick function.  Clear psymbol_map.
4362         * psympriv.h (struct partial_symbol) <address>: Add section
4363         offset.
4364         <set_unrelocated_address>: Rename from set_address.
4365         <raw_text_low, raw_text_high>: New methods.
4366         <text_low, text_high>: Add objfile parameter.
4367         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4368         set_unrelocated_address.
4369         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4370         (find_pc_psymbol): Update.
4371         (fixup_psymbol_section, relocate_psymtabs): Remove.
4372         (dump_psymtab, psym_functions): Update.
4373         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4374         parameter.
4375         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4376         (start_psymtab_common): Update.
4377         * symfile-debug.c (debug_qf_relocate): Remove.
4378         (debug_sym_quick_functions): Update.
4379         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4380         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4381         Update.
4382
4383 2018-07-26  Tom Tromey  <tromey@redhat.com>
4384
4385         * dbxread.c (end_psymtab): Use text_high_valid and
4386         text_low_valid.
4387         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4388         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4389         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4390         Update comment.
4391         <text_low_valid, text_high_valid>: New fields.
4392         <set_text_low, set_text_high>: Update.
4393         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4394
4395 2018-07-26  Tom Tromey  <tom@tromey.com>
4396
4397         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4398         Update.
4399         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4400         textlow and texthigh fields.
4401         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4402         Update.
4403         * mdebugread.c (parse_lines, parse_partial_symbols)
4404         (psymtab_to_symtab_1): Update.
4405         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4406         Rename fields.  Update comment.  Now private.
4407         <text_low, text_high, set_text_low, set_text_high>: New methods.
4408         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4409         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4410         (start_psymtab_common, maintenance_info_psymtabs)
4411         (maintenance_check_psymtabs): Update.
4412         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4413         texthigh fields.
4414         (scan_xcoff_symtab): Update.
4415
4416 2018-07-26  Tom Tromey  <tromey@redhat.com>
4417
4418         * psympriv.h (struct partial_symbol) <unrelocated_address,
4419         address, set_address>: New methods.
4420         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4421         (fixup_psymbol_section, relocate_psymtabs): Update.
4422         (print_partial_symbols): Add 'objfile' parameter.  Update.
4423         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4424         Update.
4425
4426 2018-07-26  Tom Tromey  <tom@tromey.com>
4427
4428         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4429         (debug_names::write_psymbols): Update.
4430         * psympriv.h (struct partial_symbol): Derive from
4431         general_symbol_info.
4432         <obj_section>: New method.
4433         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4434         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4435         (find_pc_sect_psymbol, fixup_psymbol_section)
4436         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4437         (print_partial_symbols, recursively_search_psymtabs)
4438         (compare_psymbols, psymbol_hash, psymbol_compare)
4439         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4440         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4441
4442 2018-07-26  Tom Tromey  <tromey@redhat.com>
4443
4444         * dbxread.c (end_psymtab): Remove dead code.
4445
4446 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4447
4448         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4449         DWARF unwinders are disabled.
4450         * dwarf2-frame.c: Add dwarf2read.h include.
4451         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4452         disabled.
4453         (dwarf2_frame_unwinders_enabled_p): Define.
4454         (show_dwarf_unwinders_enabled_p): New function.
4455         (_initialize_dwarf2_frame): Register switch to control DWARF
4456         unwinder use.
4457         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4458         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4459         (show_dwarf_cmdlist): Remove static keyword.
4460         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4461         (show_dwarf_cmdlist): Declare.
4462         * NEWS: Document new feature.
4463
4464 2018-07-26  Tom de Vries  <tdevries@suse.de>
4465
4466         PR breakpoints/23366
4467         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4468
4469 2018-07-26  Tom de Vries  <tdevries@suse.de>
4470
4471         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4472         DW_AT_count can't be translated to a dynamic prop.
4473
4474 2018-07-25  Tom de Vries  <tdevries@suse.de>
4475
4476         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4477         try/catch.
4478
4479 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4480
4481         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4482
4483 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4484
4485         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4486
4487 2018-07-24  Keith Seitz  <keiths@redhat.comt
4488
4489         PR symtab/23010
4490         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4491         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4492         instead of add_symbol_to_list.
4493         (read_file_scope): Call prepare_one_comp_unit before reading
4494         any other DIEs.
4495
4496 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4497
4498         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4499
4500 2018-07-24  Tom Tromey  <tom@tromey.com>
4501
4502         * utils.c (malloc, realloc, free): Don't declare.
4503         * configure, config.in: Rebuild.
4504         * configure.ac: Don't check for declarations of free, malloc, or
4505         realloc.
4506
4507 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4508
4509         * aarch64-linux-nat.c
4510         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4511         variable.
4512         * arm-linux-nat.c (fetch_regs): Likewise.
4513         (store_regs): Likewise.
4514         (fetch_vfp_regs): Likewise.
4515         (store_vfp_regs): Likewise.
4516         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4517         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4518         (arm_linux_nat_target::insert_watchpoint): Likewise.
4519         (arm_linux_nat_target::remove_watchpoint): Likewise.
4520         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4521         Likewise.
4522         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4523         Likewise.
4524         * ppc-linux-nat.c (fetch_register): Likewise.
4525         (fetch_all_gp_regs): Likewise.
4526         (fetch_ppc_registers): Likewise.
4527         (store_all_gp_regs): Likewise.
4528         (store_ppc_registers): Likewise.
4529         (hwdebug_insert_point): Likewise.
4530         (can_use_watchpoint_cond_accel): Likewise.
4531         * remote-sim.c (gdb_os_write_stdout): Likewise.
4532
4533 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4534             Tom Tromey  <tom@tromey.com>
4535
4536         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4537         test for it.
4538         * configure: Rebuild.
4539
4540 2018-07-22  Tom Tromey  <tom@tromey.com>
4541
4542         * regformats/regdat.sh: Define xmltarget_${name} inside
4543         #ifndef IN_PROCESS_AGENT.
4544
4545 2018-07-22  Tom Tromey  <tom@tromey.com>
4546
4547         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4548
4549 2018-07-22  Tom Tromey  <tom@tromey.com>
4550
4551         * symfile.c (reread_symbols): Notify iter, not objfile.
4552
4553 2018-07-22  Tom Tromey  <tom@tromey.com>
4554
4555         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4556         Use arch_ops.
4557         (ravenscar_thread_target::prepare_to_store): Likewise.
4558
4559 2018-07-22  Tom Tromey  <tom@tromey.com>
4560
4561         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4562         unused variable.  Call value_fetch_lazy when needed.
4563         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4564         Remove unused variable.  Call value_fetch_lazy when needed.
4565
4566 2018-07-22  Tom Tromey  <tom@tromey.com>
4567
4568         * m32c-tdep.c (mark_dma): Return void.
4569         (make_regs): Remove unused declarations.
4570
4571 2018-07-22  Tom Tromey  <tom@tromey.com>
4572
4573         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4574         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4575         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4576         bkscm_get_valid_block_smob_arg_unsafe for effect.
4577
4578 2018-07-22  Tom Tromey  <tom@tromey.com>
4579
4580         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4581         value_type.
4582
4583 2018-07-22  Tom Tromey  <tom@tromey.com>
4584
4585         * windows-nat.c (saved_context): Conditionally define.
4586         * remote.c (remote_target::remote_btrace_maybe_reopen):
4587         Conditionally declare "warned".
4588         * inflow.c (sigquit_ours): Conditionally define.
4589         (new_tty): Move "tty" declaration inside #if.
4590         * guile/guile.c (guile_datadir): Conditionally define.
4591         * charset.c (set_be_le_names): Move some declarations inside #if.
4592         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4593         #if.
4594         (parse_xml_btrace_conf): Likewise.
4595
4596 2018-07-22  Tom Tromey  <tom@tromey.com>
4597
4598         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4599
4600 2018-07-22  Tom Tromey  <tom@tromey.com>
4601
4602         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4603         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4604         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4605         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4606         * stack.c (frame_apply_level_command): Remove unused variable.
4607         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4608         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4609         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4610         unused variable.
4611         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4612         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4613         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4614         variable.
4615         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4616         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4617         variable.
4618         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4619         Remove unused variable.
4620         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4621         variable.
4622         * common/tdesc.c (print_xml_feature::visit): Remove unused
4623         variable.
4624         * compile/compile-object-load.c (store_regs): Remove unused
4625         variables.
4626         * complaints.c (clear_complaints): Remove unused variable.
4627         * corelow.c (core_target_open): Remove unused variable.
4628         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4629         variable.
4630         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4631         variable.
4632         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4633         variable.
4634         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4635         variable.
4636         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4637         variable.
4638         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4639         variable.
4640         * ia64-tdep.c (examine_prologue): Remove unused variable.
4641         * infcall.c (run_inferior_call): Remove unused variable.
4642         * inferior.c (exit_inferior): Remove unused variable.
4643         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4644         * linespec.c (decode_line_2): Remove unused variable.
4645         * linux-nat.c (super_close): Remove.
4646         * linux-tdep.c (linux_info_proc): Remove unused variable.
4647         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4648         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4649         Remove unused variable.
4650         * parse.c (find_minsym_type_and_address): Remove unused variable.
4651         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4652         variable.
4653         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4654         variable.
4655         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4656         variables.
4657         * record-btrace.c (record_btrace_target::store_registers): Remove
4658         unused variable.
4659         (cmd_show_record_btrace_cpu): Remove unused variable.
4660         * riscv-tdep.c (riscv_register_reggroup_p)
4661         (riscv_push_dummy_call, riscv_return_value): Remove unused
4662         variable.
4663         * rust-exp.y (literal): Remove unused variable.
4664         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4665         unused variable.
4666         <STRUCTOP_ANONYMOUS>: Likewise.
4667         * s390-linux-tdep.c (s390_linux_init_abi_31)
4668         (s390_linux_init_abi_64): Remove unused variable.
4669         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4670         (file_select_thread, net_windows_open, _initialize_ser_windows):
4671         Remove unused variables.
4672         * symtab.c (find_pc_sect_line): Remove unused variable.
4673         * target-memory.c (compute_garbled_blocks): Remove unused
4674         variable.
4675         (target_write_memory_blocks): Remove unused variable.
4676         * target.c (target_stack::unpush): Remove unused variables.
4677         * tracepoint.c (start_tracing, all_tracepoint_actions)
4678         (merge_uploaded_trace_state_variables)
4679         (print_one_static_tracepoint_marker): Remove unused variable.
4680         * unittests/basic_string_view/element_access/char/1.cc (test01):
4681         Remove unused variable.
4682         * windows-nat.c (windows_continue, windows_add_all_dlls)
4683         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4684         Remove unused variables.
4685
4686 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4687
4688         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4689         attr_profile in HAVE_ELF.
4690         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4691         HAVE_ELF.
4692
4693 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4694
4695         * frame.c (frame_register_unwind): Change parameter name.
4696         (frame_unwind_register): Likewise.
4697         (frame_unwind_register_value): Likewise.
4698         (frame_unwind_register_signed): Likewise.
4699         (frame_unwind_register_unsigned): Likewise.
4700         * frame.h (frame_register_unwind): Likewise.
4701         (frame_unwind_register): Likewise.
4702         (frame_unwind_register_value): Likewise.
4703         (frame_unwind_register_signed): Likewise.
4704         (frame_unwind_register_unsigned): Likewise.
4705         (frame_unwind_arch): Likewise.
4706
4707 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4708
4709         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4710         ISA maintenance.
4711
4712 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4713
4714         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4715         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4716         hand.
4717
4718 2018-07-20  Keith Seitz  <keiths@redhat.com>
4719
4720         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4721         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4722         m_compunit_symtab, m_language>: Add "m_" prefix.
4723         Update all uses.
4724         * buildsym.c: Update all uses.
4725
4726 2018-07-20  Tom Tromey  <tom@tromey.com>
4727
4728         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4729         * buildsym.h (record_line_ftype): Remove typedef.
4730
4731 2018-07-20  Tom Tromey  <tom@tromey.com>
4732
4733         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4734         (end_expandable_symtab): Likewise.
4735         (end_symtab_get_static_block): Likewise.
4736         (end_symtab_from_static_block): Likewise.
4737         * buildsym-legacy.c (augment_type_symtab): Remove.
4738         (end_expandable_symtab): Remove.
4739         (end_symtab_get_static_block): Remove.
4740         (end_symtab_from_static_block): Remove.
4741
4742 2018-07-20  Tom Tromey  <tom@tromey.com>
4743
4744         * dwarf2read.c: Include buildsym.h.
4745         (struct dwarf2_cu) <builder>: New method.
4746         (fixup_go_packaging): Update.
4747         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4748         use scoped_free_pendings.
4749         (using_directives): Add "cu" parameter, remove "language".
4750         (read_import_statement, setup_type_unit_groups, )
4751         (read_func_scope, read_lexical_block_scope)
4752         (dwarf2_record_block_ranges, read_namespace): Update.
4753         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4754         (lnp_state_machine::handle_end_sequence): Update.
4755         (class lnp_state_machine) <m_cu>: New member.
4756         <m_record_line_callback>: Remove.
4757         <m_currently_recording_lines>: New member.
4758         (lnp_state_machine::handle_set_file): Update.
4759         (noop_record_line): Remove.
4760         (dwarf_record_line_p): Add cu parameter.
4761         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4762         (lnp_state_machine::record_line)
4763         (lnp_state_machine::lnp_state_machine)
4764         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4765         (dwarf_decode_lines): Update.
4766         (dwarf2_start_subfile): Add cu parameter.
4767         (dwarf2_start_symtab, new_symbol): Update.
4768         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4769         Remove dwarf2_per_objfile parameter.
4770         (dwarf_decode_macros): Update.
4771
4772 2018-07-20  Tom Tromey  <tom@tromey.com>
4773
4774         * stabsread.c (define_symbol): Update.
4775         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4776         * dwarf2read.c (new_symbol): Update.
4777         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4778         * cp-namespace.c: Include buildsym.h.
4779         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4780         * buildsym-legacy.c (get_buildsym_compunit): New function.
4781
4782 2018-07-20  Tom Tromey  <tom@tromey.com>
4783
4784         * xcoffread.c: Include buildsym-legacy.h.
4785         * windows-nat.c: Include buildsym-legacy.h.
4786         * stabsread.c: Include buildsym-legacy.h.
4787         * mdebugread.c: Include buildsym-legacy.h.
4788         * buildsym-legacy.h: New file.
4789         * buildsym-legacy.c: New file, from buildsym.c.
4790         * go32-nat.c: Include buildsym-legacy.h.
4791         * dwarf2read.c: Include buildsym-legacy.h.
4792         * dbxread.c: Include buildsym-legacy.h.
4793         * cp-namespace.c: Include buildsym-legacy.h.
4794         * coffread.c: Include buildsym-legacy.h.
4795         * buildsym.h: Move some contents to buildsym-legacy.h.
4796         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4797         buildsym-legacy.c.
4798         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4799
4800 2018-07-20  Tom Tromey  <tom@tromey.com>
4801
4802         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4803         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4804         (buildsym_compunit::buildsym_compunit)
4805         (buildsym_compunit::~buildsym_compunit)
4806         (buildsym_compunit::get_macro_table): Define.
4807
4808 2018-07-20  Tom Tromey  <tom@tromey.com>
4809
4810         * buildsym.c (reset_symtab_globals): Remove.
4811         (buildsym_compunit::end_symtab_from_static_block): Update.
4812         (buildsym_compunit::augment_type_symtab): Update.
4813         (end_symtab_from_static_block): Call free_buildsym_compunit.
4814         (augment_type_symtab, end_symtab, end_expandable_symtab):
4815         Likewise.
4816
4817 2018-07-20  Tom Tromey  <tom@tromey.com>
4818
4819         * arch-utils.c: Do not include buildsym.h.
4820         * mipsread.c: Do not include buildsym.h.
4821         * machoread.c: Do not include buildsym.h.
4822         * elfread.c: Do not include buildsym.h.
4823
4824 2018-07-20  Tom Tromey  <tom@tromey.com>
4825
4826         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4827         initialization.
4828         (buildsym_compunit): Add new constructor.
4829         (struct buildsym_compunit) <get_last_source_file, finish_block,
4830         record_block_range, start_subfile, patch_subfile_names,
4831         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4832         set_last_source_start_addr, get_last_source_start_addr,
4833         get_local_using_directives, set_local_using_directives,
4834         get_global_using_directives, outermost_context_p,
4835         get_current_context_stack, get_context_stack_depth,
4836         get_current_subfile, get_local_symbols, get_file_symbols,
4837         get_global_symbols, record_debugformat, record_producer,
4838         push_context, pop_context, end_symtab_get_static_block,
4839         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4840         New public methods.
4841         <record_pending_block, finish_block_internal, make_blockvector,
4842         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4843         private methods.
4844         Update all users.
4845
4846 2018-05-22  Tom Tromey  <tom@tromey.com>
4847
4848         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4849         parameter.
4850         (finish_block_internal): Update.
4851
4852 2018-07-20  Tom Tromey  <tom@tromey.com>
4853
4854         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4855         parameter.
4856         (finish_block_internal): Update.
4857
4858 2018-07-20  Tom Tromey  <tom@tromey.com>
4859
4860         * buildsym.h (EXTERN): Don't define or undef.
4861         * buildsym.c (EXTERN): Don't define.
4862
4863 2018-07-20  Tom Tromey  <tom@tromey.com>
4864
4865         * buildsym.c: Remove TODO comment.
4866
4867 2018-07-20  Tom Tromey  <tom@tromey.com>
4868
4869         * coffread.c (coff_symtab_read): Update.
4870         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4871         (xcoff_new_init): Update.
4872         * mipsread.c (mipscoff_new_init): Update.
4873         * mdebugread.c (mdebug_build_psymtabs): Update.
4874         * elfread.c (elf_new_init): Update.
4875         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4876         Update.
4877         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4878         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4879         (stabsect_build_psymtabs): Update.
4880         * buildsym.h (buildsym_init): Don't declare.
4881         * buildsym.c: Update comment.
4882         (prepare_for_building): Remove.
4883         (start_symtab, restart_symtab): Update.
4884         (reset_symtab_globals): Update comment.
4885         (buildsym_init): Remove.
4886
4887 2018-07-20  Tom Tromey  <tom@tromey.com>
4888
4889         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4890         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4891         (read_enum_type, common_block_start, common_block_end)
4892         (cleanup_undefined_types_1, finish_global_stabs): Update.
4893         * mdebugread.c (psymtab_to_symtab_1): Update.
4894         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4895         (read_lexical_block_scope, new_symbol): Update.
4896         * dbxread.c (process_one_symbol): Update.
4897         * coffread.c (coff_symtab_read, process_coff_symbol)
4898         (coff_read_enum_type): Update.
4899         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4900         declare.
4901         (get_local_symbols, get_file_symbols, get_global_symbols): New
4902         functions.
4903         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4904         m_global_symbols.
4905         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4906         (~scoped_free_pendings): Update.
4907         (finish_block, prepare_for_building, reset_symtab_globals)
4908         (end_symtab_get_static_block, end_symtab_with_blockvector)
4909         (augment_type_symtab, push_context): Update.
4910         (get_local_symbols, get_file_symbols, get_global_symbols): New
4911         functions.
4912         (buildsym_init): Update.
4913
4914 2018-07-20  Tom Tromey  <tom@tromey.com>
4915
4916         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4917         (process_full_type_unit): Likewise.
4918         (dwarf2_start_symtab): Set list_in_scope.
4919
4920 2018-07-20  Tom Tromey  <tom@tromey.com>
4921
4922         * dwarf2read.c (process_psymtab_comp_unit_reader)
4923         (build_type_psymtabs_reader): Do not set list_in_scope.
4924
4925 2018-07-20  Tom Tromey  <tom@tromey.com>
4926
4927         * buildsym.c (free_pendings): Remove.
4928         (add_symbol_to_list, scoped_free_pendings)
4929         (finish_block_internal, buildsym_init): Update.
4930
4931 2018-07-20  Tom Tromey  <tom@tromey.com>
4932
4933         * xcoffread.c (read_xcoff_symtab): Update.
4934         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4935         Update.
4936         * dbxread.c (process_one_symbol): Update.
4937         * coffread.c (coff_symtab_read): Update.
4938         * buildsym.h (finish_block): Update.
4939         * buildsym.c (finish_block): Remove "listhead" argument.
4940         (end_symtab_get_static_block): Update.
4941
4942 2018-07-20  Tom Tromey  <tom@tromey.com>
4943
4944         * buildsym.h (class scoped_free_pendings): Remove constructor.
4945         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4946         method.
4947         <m_pending_block_obstack, m_pending_blocks>: New members.
4948         (pending_block_obstack, pending_blocks): Remove.
4949         (scoped_free_pendings::scoped_free_pendings): Default.
4950         (~scoped_free_pendings): Update.
4951         (free_pending_blocks): Remove.
4952         (finish_block_internal, record_pending_block, make_blockvector)
4953         (end_symtab_get_static_block, augment_type_symtab, push_context)
4954         (buildsym_init): Update.
4955
4956 2018-07-20  Tom Tromey  <tom@tromey.com>
4957
4958         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4959         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4960         members.
4961         (pending_addrmap, pending_addrmap_obstack)
4962         (pending_addrmap_interesting): Remove.
4963         (scoped_free_pendings, record_block_range, make_blockvector)
4964         (prepare_for_building, reset_symtab_globals, buildsym_init):
4965         Update.
4966
4967 2018-07-20  Tom Tromey  <tom@tromey.com>
4968
4969         * xcoffread.c (process_linenos): Update.
4970         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4971         * mdebugread.c (psymtab_to_symtab_1): Update.
4972         * dwarf2read.c (setup_type_unit_groups)
4973         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4974         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4975         * dbxread.c (process_one_symbol): Update.
4976         * coffread.c (coff_symtab_read, enter_linenos)
4977         (process_coff_symbol): Update.
4978         * buildsym.h (current_subfile): Don't declare.
4979         (get_current_subfile): Declare.
4980         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4981         member.
4982         (start_subfile, free_buildsym_compunit, push_subfile)
4983         (prepare_for_building, start_symtab): Update.
4984         (get_current_subfile): New function.
4985
4986 2018-07-20  Tom Tromey  <tom@tromey.com>
4987
4988         * coffread.c (coff_symtab_read): Update.
4989         * xcoffread.c (read_xcoff_symtab): Update.
4990         * dwarf2read.c (new_symbol): Update.
4991         (read_func_scope, read_lexical_block_scope): Update.
4992         * dbxread.c (process_one_symbol): Update.
4993         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4994         (outermost_context_p): Remove macro.
4995         (outermost_context_p, get_current_context_stack)
4996         (get_context_stack_depth): Declare.
4997         (pop_context): Return struct context_stack.
4998         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4999         member.
5000         (context_stack_size): Remove.
5001         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5002         (prepare_for_building, end_symtab_get_static_block)
5003         (augment_type_symtab, push_context): Update.
5004         (pop_context): Return struct context_stack.
5005         (outermost_context_p, get_current_context_stack)
5006         (get_context_stack_depth): New functions.
5007         (buildsym_init): Update.
5008
5009 2018-07-20  Tom Tromey  <tom@tromey.com>
5010
5011         * rust-exp.y: Now a pure parser.  Update all rules.
5012         (%union): Move earlier.
5013         (current_parser, work_obstack): Remove globals.
5014         (rust_parser, ~rust_parser): Update.
5015         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5016         lex_character, lex_number, lex_string, lex_identifier,
5017         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5018         convert_name, convert_params_to_expression,
5019         convert_ast_to_expression, ast_basic_type, ast_operation,
5020         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5021         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5022         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5023         ast_array_type, ast_slice_type, ast_reference_type,
5024         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5025         (rust_parse): Update.
5026         (rustyyerror, rustyylex): Add parser parameter.
5027         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5028         (rust_lex_stringish_test, rust_lex_test_sequence)
5029         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5030         (rust_lex_test_push_back, rust_lex_tests): Update.
5031
5032 2018-07-19  Pedro Alves  <palves@redhat.com>
5033
5034         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5035         gdb::unique_xmalloc_ptr.
5036         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5037         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5038         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5039         copy-initialization.
5040         * guile/scm-pretty-print.c (ppscm_print_children): Use
5041         gdb::unique_xmalloc_ptr instead of cleanups.
5042         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5043         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5044         gdb::unique_xmalloc_ptr.
5045         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5046         Adjust to use gdb::unique_xmalloc_ptr.
5047         * guile/scm-utils.c (extract_arg): Adjust.
5048         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5049         gdb::unique_xmalloc_ptr instead of a cleanup.
5050
5051 2018-07-19  Tom Tromey  <tom@tromey.com>
5052
5053         * utils.c (do_value_free_to_mark)
5054         (make_cleanup_value_free_to_mark): Remove.
5055         * utils.h (make_cleanup_value_free_to_mark): Remove.
5056
5057 2018-07-19  Pedro Alves  <palves@redhat.com>
5058
5059         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5060         forwarding reference.
5061
5062 2018-07-18  Pedro Alves  <palves@redhat.com>
5063
5064         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5065         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5066         cleanup.
5067
5068 2018-07-18  Pedro Alves  <palves@redhat.com>
5069
5070         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5071         exceptions.
5072         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5073         (gdbscm_wrap): New.
5074         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5075         directly instead of a cleanup.
5076         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5077         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5078         (vlscm_binop_gdbthrow): New, factored out from ...
5079         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5080         (vlscm_rich_compare): Use gdbscm_wrap.
5081         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5082         instead of a cleanup.
5083         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5084         cleanup.
5085         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5086         Use xfree directly instead of a cleanup.
5087         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5088         Adjust to use gdbscm_wrap and scoped_value_mark.
5089         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5090         (gdbscm_value_address, gdbscm_value_dereference)
5091         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5092         scoped_value_mark.
5093         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5094         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5095         scoped_value_mark.
5096         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5097         gdbscm_wrap and scoped_value_mark.
5098         (gdbscm_value_to_string): Use xfree directly instead of a
5099         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5100         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5101         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5102         scoped_value_mark.
5103         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5104         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5105         scoped_value_mark.
5106         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5107         gdbscm_wrap.
5108
5109 2018-07-18  Tom de Vries  <tdevries@suse.de>
5110
5111         * findvar.c (default_read_var_value): Also resolve dynamic type for
5112         LOC_OPTIMIZED_OUT vars.
5113
5114 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5115
5116         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5117         decoding.
5118
5119 2018-07-17  Tom Tromey  <tom@tromey.com>
5120
5121         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5122         (compute_enum_list, pascm_set_param_value_x)
5123         (gdbscm_parameter_value): Update.
5124         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5125         (gdbscm_scm_to_host_string): Update.
5126         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5127         Update.
5128         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5129         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5130         * guile/scm-string.c (gdbscm_scm_to_string): Return
5131         unique_xmalloc_ptr.
5132         (gdbscm_scm_to_host_string): Likewise.
5133
5134 2018-07-17  Tom Tromey  <tom@tromey.com>
5135
5136         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5137         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5138         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5139         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5140         unique_xmalloc_ptr.
5141
5142 2018-07-17  Tom Tromey  <tom@tromey.com>
5143
5144         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5145         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5146         Update.
5147         * guile/scm-cmd.c (cmdscm_function): Update.
5148         * guile/scm-pretty-print.c
5149         (ppscm_print_exception_unless_memory_error): Update.
5150         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5151         Return unique_xmalloc_ptr.
5152
5153 2018-07-17  Tom Tromey  <tom@tromey.com>
5154
5155         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5156         Use string_printf.
5157
5158 2018-07-17  Jim Wilson  <jimw@sifive.com>
5159
5160         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5161         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5162         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5163         unecessary braces after EF_RISCV_RVC test.  Delete call to
5164         set_gdbarch_decr_pc_after_break.
5165
5166         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5167         RISCV_LAST_FP_REGNUM + 1.
5168         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5169
5170 2018-07-17  Tom Tromey  <tom@tromey.com>
5171
5172         * configure.ac: Remove --disable-gdbcli.
5173         * configure: Rebuild.
5174         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5175         (SUBDIR_CLI_CFLAGS): Remove.
5176         (SFILES): Use SUBDIR_CLI_SRCS.
5177         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5178
5179 2018-07-17  Tom Tromey  <tom@tromey.com>
5180
5181         PR gdb/18624:
5182         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5183
5184 2018-07-16  Jim Wilson  <jimw@sifive.com>
5185
5186         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5187
5188 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5189
5190         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5191         variable.
5192         (libunwind_frame_sniffer): Likewise.
5193         (libunwind_frame_prev_register): Likewise.
5194         (libunwind_sigtramp_frame_sniffer): Likewise.
5195         * ia64-tdep.c (ia64_access_reg): Likewise.
5196         (ia64_access_rse_reg): Likewise.
5197         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5198         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5199
5200 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5201
5202         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5203
5204 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5205
5206         * remote-sim.c (gdbsim_target::close,
5207         gdbsim_target::mourn_inferior): Remove unused variables.
5208
5209 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5210
5211         * ia64-tdep.c (ktab_buf): New global.
5212         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5213         (get_kernel_table): Adjust.
5214
5215 2018-07-16  Tom Tromey  <tom@tromey.com>
5216
5217         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5218         * dwarf2read.c (using_directives, new_symbol): Use
5219         outermost_context_p.
5220         * dbxread.c (process_one_symbol): Use outermost_context_p.
5221         * coffread.c (coff_symtab_read): Use outermost_context_p.
5222
5223 2018-07-16  Tom Tromey  <tom@tromey.com>
5224
5225         * dwarf2read.c (using_directives, read_func_scope)
5226         (read_lexical_block_scope): Update.
5227         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5228         * buildsym.h (local_using_directives, global_using_directives):
5229         Don't declare.
5230         (get_local_using_directives, set_local_using_directives)
5231         (get_global_using_directives): Declare.
5232         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5233         m_global_using_directives>: New members.
5234         (finish_block_internal, prepare_for_building)
5235         (reset_symtab_globals, end_symtab_get_static_block)
5236         (push_context): Update.
5237         (get_local_using_directives, set_local_using_directives)
5238         (get_global_using_directives): New functions.
5239         (buildsym_init): Update.
5240
5241 2018-07-16  Tom Tromey  <tom@tromey.com>
5242
5243         * xcoffread.c (xcoff_initial_scan): Don't call
5244         free_pending_blocks.
5245         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5246         * buildsym.h (class scoped_free_pendings): Add constructor.
5247         (free_pending_blocks): Don't declare.
5248         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5249         (free_pending_blocks): Now static.
5250
5251 2018-07-16  Tom Tromey  <tom@tromey.com>
5252
5253         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5254         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5255         member.
5256         (struct subfile_stack): Remove.
5257         (subfile_stack): Remove.
5258         (push_subfile, pop_subfile, buildsym_init): Update.
5259
5260 2018-07-16  Tom Tromey  <tom@tromey.com>
5261
5262         * buildsym.c (push_subfile): Use gdb_assert.
5263         (pop_subfile): Use gdb_assert.
5264
5265 2018-07-16  Tom Tromey  <tom@tromey.com>
5266
5267         * buildsym.h (merge_symbol_lists): Remove.
5268         * buildsym.c (merge_symbol_lists): Remove.
5269
5270 2018-07-16  Tom Tromey  <tom@tromey.com>
5271
5272         * stabsread.c (scan_file_globals): Update comment.
5273         * stabsread.h (scan_file_globals): Move from buildsym.h.
5274         * buildsym.h (scan_file_globals): Move to stabsread.h.
5275
5276 2018-07-16  Tom Tromey  <tom@tromey.com>
5277
5278         * xcoffread.c (xcoff_new_init): Update.
5279         * mipsread.c (mipscoff_new_init): Update.
5280         * mdebugread.c (mdebug_build_psymtabs): Update.
5281         * elfread.c (elf_new_init): Update.
5282         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5283         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5284         * buildsym.h (buildsym_new_init): Don't declare.
5285         * buildsym.c (buildsym_new_init): Remove.
5286
5287 2018-07-16  Tom Tromey  <tom@tromey.com>
5288
5289         * stabsread.h (within_function): Move from buildsym.h.
5290         * stabsread.c (start_stabs): Clear within_function.
5291         * coffread.c (coff_start_symtab): Clear within_function.
5292         * buildsym.h (within_function): Move to stabsread.h.
5293         * buildsym.c (prepare_for_building): Update.
5294
5295 2018-07-16  Tom Tromey  <tom@tromey.com>
5296
5297         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5298         * dwarf2read.c (dwarf2_start_symtab): Don't set
5299         processing_gcc_compilation.
5300         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5301
5302 2018-07-16  Tom Tromey  <tom@tromey.com>
5303
5304         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5305         (next_symbol_text_func): Move from buildsym.h.
5306         * stabsread.c (hashname): Move from buildsym.c.
5307         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5308         (next_symbol_text_func, hashname): Move to stabsread.h.
5309         * buildsym.c: Don't include bcache.h
5310         (hashname): Move to stasbread.c.
5311
5312 2018-07-16  Tom Tromey  <tom@tromey.com>
5313
5314         * buildsym.h (context_stack_size): Don't declare.
5315         * buildsym.c (context_stack_size): New global.
5316
5317 2018-07-16  Tom Tromey  <tom@tromey.com>
5318
5319         * dbxread.c (processing_acc_compilation): New global.
5320         * buildsym.h (processing_acc_compilation): Don't declare.
5321
5322 2018-07-16  Tom Tromey  <tom@tromey.com>
5323
5324         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5325         * dbxread.c (read_ofile_symtab): Update.
5326         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5327         * buildsym.h (last_source_start_addr): Remove.
5328         (set_last_source_start_addr, get_last_source_start_addr):
5329         Declare.
5330         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5331         parameter.
5332         (struct buildsym_compunit) <m_last_source_start_addr>: New
5333         member.
5334         (prepare_for_building): Remove start_addr parameter.
5335         (start_symtab, restart_symtab, end_symtab_get_static_block)
5336         (end_symtab_with_blockvector): Update.
5337         (set_last_source_start_addr, get_last_source_start_addr): New
5338         functions.
5339
5340 2018-07-16  Tom Tromey  <tom@tromey.com>
5341
5342         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5343         member.
5344         (have_line_numbers): Remove.
5345         (record_line, prepare_for_building, end_symtab_get_static_block)
5346         (augment_type_symtab): Update.
5347
5348 2018-07-16  Tom Tromey  <tom@tromey.com>
5349
5350         * buildsym.c (~buildsym_compunit): Free the macro table.
5351         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5352         methods.
5353         <m_pending_macros>: New member.
5354         (pending_macros): Remove.
5355         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5356         (reset_symtab_globals, end_symtab_get_static_block)
5357         (end_symtab_with_blockvector, augment_type_symtab)
5358         (buildsym_init): Update.
5359
5360 2018-07-16  Tom Tromey  <tom@tromey.com>
5361
5362         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5363         parameter.
5364         (buildsym_compunit::set_last_source_file): New method.
5365         <m_last_source_file>: New member.
5366         (prepare_for_building): Remove "name" parameter.
5367         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5368         (last_source_file): Remove.
5369         (set_last_source_file, get_last_source_file): Update.
5370
5371 2018-07-16  Tom Tromey  <tom@tromey.com>
5372
5373         * buildsym.c (prepare_for_building): Add assert.
5374
5375 2018-07-16  Tom Tromey  <tom@tromey.com>
5376
5377         * buildsym.c (~buildsym_compunit): Update.
5378         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5379         (start_subfile, patch_subfile_names)
5380         (end_symtab_with_blockvector): Update.
5381
5382 2018-07-16  Tom Tromey  <tom@tromey.com>
5383
5384         * buildsym.c (struct buildsym_compunit): Add constructor,
5385         destructor, initializers.
5386         (start_buildsym_compunit): Remove.
5387         (free_buildsym_compunit): Use "delete".
5388         (start_symtab, restart_symtab): Use "new".
5389
5390 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5391
5392         * symfile.c (set_objfile_default_section_offset): Remove struct
5393         keyword.
5394
5395 2018-07-14  Stafford Horne  <shorne@gmail.com>
5396
5397         * (Responsible Maintainers): Add myself as or1k maintainer.
5398
5399 2018-07-13  Tom Tromey  <tom@tromey.com>
5400
5401         * symfile.c (set_objfile_default_section_offset): Use extra braces
5402         around initializer.
5403
5404 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5405
5406         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5407         non-branching basr.
5408
5409 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5410
5411         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5412         unittests/cli-utils-selftests.c
5413         * unittests/cli-utils-selftests.c: New file.
5414
5415 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5416
5417         * NEWS: Mention new commands. Mention change to 'thread apply'.
5418
5419 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5420
5421         * thread.c (thr_try_catch_cmd): New function.
5422         (thread_apply_all_command): Handle qcs flags.
5423         (thread_apply_command): Handle qcs flags.
5424         (taas_command): New function.
5425         (tfaas_command): New function.
5426         (_initialize_thread): Update to setup the new commands 'taas
5427         and 'tfaas'. Change doc string for 'thread apply'.
5428
5429 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5430
5431         * stack.c: (trailing_outermost_frame): New function, mostly
5432         extracted from backtrace_command_1.
5433         (leading_innermost_frame): New function.
5434         (backtrace_command_1): Update to call trailing_outermost_frame.
5435         (frame_apply_command_count): New function.
5436         (frame_apply_level_command): New function.
5437         (frame_apply_all_command): New function.
5438         (frame_apply_command): New function.
5439         (faas_command): New function.
5440         (frame_cmd_list): New variable.
5441         (_initialize_stack): Update to setup the new commands 'frame apply'
5442         and 'faas'.
5443
5444 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5445
5446         * cli-utils.c (number_or_range_parser::get_number): Only handle
5447         numbers or convenience var as numbers.
5448         (parse_flags): New function.
5449         (parse_flags_qcs): New function.
5450         (number_or_range_parser::finished): Ensure parsing end is detected
5451         before end of string.
5452         * cli-utils.h (parse_flags): New function.
5453         (parse_flags_qcs): New function.
5454         (number_or_range_parser): Remove m_finished bool.
5455         (number_or_range_parser::skip_range): Set m_in_range to false.
5456
5457 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5458
5459         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5460         on Windows.
5461
5462 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5463             Jan Kratochvil  <jan.kratochvil@redhat.com>
5464             Paul Fertser  <fercerpav@gmail.com>
5465             Tsutomu Seki  <sekiriki@gmail.com>
5466             Pedro Alves  <palves@redhat.com>
5467
5468         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5469         'unittests/parse-connection-spec-selftests.c'.
5470         (COMMON_SFILES): Add 'common/netstuff.c'.
5471         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5472         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5473         * common/netstuff.c: New file.
5474         * common/netstuff.h: New file.
5475         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5476         (wait_for_connect): Update comment.  New parameter
5477         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5478         Use 'sock' directly instead of 'scb->fd'.
5479         (try_connect): New function, with code from 'net_open'.
5480         (net_open): Rewrite main loop to deal with multiple
5481         sockets/addresses.  Handle IPv6-style hostnames; implement
5482         support for IPv6 connections.
5483         * unittests/parse-connection-spec-selftests.c: New file.
5484
5485 2018-07-11  Pedro Alves  <palves@redhat.com>
5486
5487         PR gdb/23377
5488         * remote.c (remote_target::remote_detach_pid): Call
5489         set_current_process.
5490
5491 2018-07-11  Pedro Alves  <palves@redhat.com>
5492
5493         * h8300-tdep.c (h8300_gdbarch_init): Remove
5494         set_gdbarch_ecoff_reg_to_regnum calls.
5495
5496 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5497
5498         PR c++/23373
5499         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5500         offsets/sizes for static members of a class/struct.
5501
5502 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5503
5504         * target-descriptions.c (tdesc_register_bitsize): Rename.
5505         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5506         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5507         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5508
5509 2018-07-10  Tom Tromey  <tom@tromey.com>
5510
5511         * breakpoint.c (moribund_locations): Now static and a
5512         std::vector.
5513         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5514         (build_bpstat_chain, update_global_location_list)
5515         (breakpoint_retire_moribund): Update.
5516         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5517         VEC.
5518
5519 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5520
5521         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5522         (riscv_register_reggroup_p): Use new function, remove unneeded
5523         parenthesis.
5524         (riscv_push_dummy_call): Extend assert to compare against xlen or
5525         flen based on register type.
5526
5527 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5528
5529         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5530
5531 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5532
5533         * remote.c (show_hardware_watchpoint_limit): New function.
5534         (show_hardware_watchpoint_length_limit): New function.
5535         (show_hardware_breakpoint_limit): New function.
5536         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5537         where appropriate, update help text.
5538
5539 2018-07-09  Tom Tromey  <tom@tromey.com>
5540
5541         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5542         (CLIBS): Don't mention NAT_CLIBS.
5543
5544 2018-07-09  Tom Tromey  <tom@tromey.com>
5545
5546         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5547         (LIBGDB_OBS, clean mostlyclean): Update.
5548         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5549
5550 2018-07-09  Tom Tromey  <tom@tromey.com>
5551
5552         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5553         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5554         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5555
5556 2018-07-09  Tom Tromey  <tom@tromey.com>
5557
5558         * Makefile.in (ALLDEPFILES): Remove exec.c.
5559         (COMMON_OBS): Remove exec.o.
5560         (COMMON_SFILES): Add exec.c.
5561
5562 2018-07-09  Tom Tromey  <tom@tromey.com>
5563
5564         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5565
5566 2018-07-09  Tom Tromey  <tom@tromey.com>
5567
5568         * Makefile.in (clean mostlyclean): Remove stamp-version.
5569         (version.c): Depend on stamp-version.
5570         (stamp-version): New rule, from version.c rule.
5571
5572 2018-07-09  Tom Tromey  <tom@tromey.com>
5573
5574         * Makefile.in (init.c): Depend on stamp-init.
5575         (stamp-init): New rule, from init.c rule.
5576         (clean mostlyclean): Remove stamp-init.
5577
5578 2018-07-09  Tom Tromey  <tom@tromey.com>
5579
5580         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5581         SUBDIR_GCC_COMPILE_SRCS.
5582
5583 2018-07-09  Tom Tromey  <tom@tromey.com>
5584
5585         * Makefile.in (init.c): Remove some unused sed rules.
5586
5587 2018-07-09  Tom Tromey  <tom@tromey.com>
5588
5589         * Makefile.in (TSOBS): Remove.
5590         (INIT_FILES): Update.
5591         (LIBGDB_OBS): Update.
5592         (COMMON_SFILES): Add inflow.c.
5593         (SFILES): Remove inflow.c.
5594
5595 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5596
5597         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5598
5599 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5600
5601         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5602         get_saveloc_name, is_signal_frame_name, step_name,
5603         init_remote_name, create_addr_space_name,
5604         destroy_addr_space_name, search_unwind_table_name,
5605         find_dyn_list_name): Constify.
5606
5607 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5608
5609         * darwin-nat.c (darwin_pthread_kill): New function.
5610         (darwin_resume_thread): Use darwin_pthread_kill.
5611
5612 2018-07-05  Tom de Vries  <tdevries@suse.de>
5613
5614         * macroexp.c (macro_buffer) <operator=>: New member function.
5615
5616 2018-07-04  Tom Tromey  <tom@tromey.com>
5617
5618         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5619
5620 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5621
5622         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5623         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5624         * maint.c: Likewise.
5625         * top.c: Likewise.
5626
5627 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5628
5629         * NEWS: Create a new section for the next release branch.
5630         Rename the section of the current branch, now that it has
5631         been cut.
5632
5633 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5634
5635         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5636         * version.in: Bump version to 8.2.50.DATE-git.
5637
5638 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5639             Pedro Alves  <palves@redhat.com>
5640
5641         * linux-nat.c (linux_init_ptrace): Rename to ...
5642         (linux_init_ptrace_procfs): ... this.  Call
5643         linux_proc_init_warnings.
5644         (linux_nat_target::post_attach)
5645         (linux_nat_target::post_startup_inferior): Adjust.
5646         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5647         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5648
5649 2018-07-04  Tom de Vries  <tdevries@suse.de>
5650
5651         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5652         check ...
5653         (read_comp_unit_head): ... here.
5654
5655 2018-07-03  Tom Tromey  <tom@tromey.com>
5656
5657         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5658         (stop_tracing, tstatus_command)
5659         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5660         (print_one_static_tracepoint_marker): Update.
5661         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5662         std::vector.
5663         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5664         VEC.
5665         (all_tracepoints, static_tracepoints_here): Return std::vector.
5666
5667 2018-07-03  Tom Tromey  <tom@tromey.com>
5668
5669         * common/ptid.c (ptid_equal): Remove.
5670         * common/ptid.h (ptid_equal): Don't declare.
5671         * ada-tasks.c: Update.
5672         * breakpoint.c: Update.
5673         * common/agent.c: Update.
5674         * corelow.c: Update.
5675         * darwin-nat-info.c: Update.
5676         * darwin-nat.c: Update.
5677         * dcache.c: Update.
5678         * dtrace-probe.c: Update.
5679         * dummy-frame.c: Update.
5680         * fbsd-nat.c: Update.
5681         * frame.c: Update.
5682         * gdbthread.h: Update.
5683         * gnu-nat.c: Update.
5684         * go32-nat.c: Update.
5685         * inf-loop.c: Update.
5686         * inf-ptrace.c: Update.
5687         * infcall.c: Update.
5688         * infcmd.c: Update.
5689         * inflow.c: Update.
5690         * infrun.c: Update.
5691         * linux-fork.c: Update.
5692         * linux-nat.c: Update.
5693         * linux-thread-db.c: Update.
5694         * mi/mi-cmd-var.c: Update.
5695         * mi/mi-interp.c: Update.
5696         * mi/mi-main.c: Update.
5697         * nto-procfs.c: Update.
5698         * ppc-linux-tdep.c: Update.
5699         * procfs.c: Update.
5700         * python/py-inferior.c: Update.
5701         * python/py-record-btrace.c: Update.
5702         * python/py-record.c: Update.
5703         * ravenscar-thread.c: Update.
5704         * regcache.c: Update.
5705         * remote-sim.c: Update.
5706         * remote.c: Update.
5707         * sol-thread.c: Update.
5708         * solib.c: Update.
5709         * target.c: Update.
5710         * tui/tui-stack.c: Update.
5711         * varobj.c: Update.
5712         * windows-nat.c: Update.
5713         * windows-tdep.c: Update.
5714
5715 2018-07-03  Tom Tromey  <tom@tromey.com>
5716
5717         * common/ptid.c (ptid_match): Remove.
5718         * common/ptid.h (ptid_match): Don't declare.
5719         * fbsd-nat.c: Update.
5720         * infcmd.c: Update.
5721         * infrun.c: Update.
5722         * linux-nat.c: Update.
5723         * record-btrace.c: Update.
5724         * regcache.c: Update.
5725         * remote.c: Update.
5726
5727 2018-07-03  Tom Tromey  <tom@tromey.com>
5728
5729         * common/ptid.c (ptid_tid_p): Remove.
5730         * common/ptid.h (ptid_tid_p): Don't declare.
5731         * sol-thread.c: Update.
5732
5733 2018-07-03  Tom Tromey  <tom@tromey.com>
5734
5735         * common/ptid.c (ptid_lwp_p): Remove.
5736         * common/ptid.h (ptid_lwp_p): Don't declare.
5737         * fbsd-nat.c: Update.
5738         * linux-nat.c: Update.
5739         * nat/linux-procfs.c: Update.
5740         * nat/x86-linux-dregs.c: Update.
5741         * sol-thread.c: Update.
5742
5743 2018-07-03  Tom Tromey  <tom@tromey.com>
5744
5745         * common/ptid.c (ptid_is_pid): Remove.
5746         * common/ptid.h (ptid_is_pid): Don't declare.
5747         * infrun.c: Update.
5748         * linux-nat.c: Update.
5749         * mi/mi-interp.c: Update.
5750         * remote.c: Update.
5751         * thread.c: Update.
5752
5753 2018-07-03  Tom Tromey  <tom@tromey.com>
5754
5755         * common/ptid.c (ptid_get_tid): Remove.
5756         * common/ptid.h (ptid_get_tid): Don't declare.
5757         * ada-tasks.c: Update.
5758         * aix-thread.c: Update.
5759         * bsd-uthread.c: Update.
5760         * darwin-nat.c: Update.
5761         * fbsd-nat.c: Update.
5762         * i386-darwin-nat.c: Update.
5763         * infrun.c: Update.
5764         * linux-tdep.c: Update.
5765         * nto-procfs.c: Update.
5766         * ppc-ravenscar-thread.c: Update.
5767         * python/py-infthread.c: Update.
5768         * ravenscar-thread.c: Update.
5769         * sol-thread.c: Update.
5770         * sparc-ravenscar-thread.c: Update.
5771         * windows-nat.c: Update.
5772
5773 2018-07-03  Tom Tromey  <tom@tromey.com>
5774
5775         * common/ptid.c (ptid_get_lwp): Remove.
5776         * common/ptid.h (ptid_get_lwp): Don't declare.
5777         * aarch64-linux-nat.c: Update.
5778         * ada-tasks.c: Update.
5779         * aix-thread.c: Update.
5780         * amd64-linux-nat.c: Update.
5781         * arm-linux-nat.c: Update.
5782         * corelow.c: Update.
5783         * fbsd-nat.c: Update.
5784         * fbsd-tdep.c: Update.
5785         * gnu-nat.c: Update.
5786         * i386-cygwin-tdep.c: Update.
5787         * i386-gnu-nat.c: Update.
5788         * i386-linux-nat.c: Update.
5789         * ia64-linux-nat.c: Update.
5790         * inf-ptrace.c: Update.
5791         * infrun.c: Update.
5792         * linux-fork.c: Update.
5793         * linux-nat.c: Update.
5794         * linux-tdep.c: Update.
5795         * linux-thread-db.c: Update.
5796         * mips-linux-nat.c: Update.
5797         * nat/aarch64-linux-hw-point.c: Update.
5798         * nat/aarch64-linux.c: Update.
5799         * nat/linux-btrace.c: Update.
5800         * nat/linux-osdata.c: Update.
5801         * nat/linux-procfs.c: Update.
5802         * nat/x86-linux-dregs.c: Update.
5803         * obsd-nat.c: Update.
5804         * ppc-fbsd-nat.c: Update.
5805         * ppc-linux-nat.c: Update.
5806         * procfs.c: Update.
5807         * python/py-infthread.c: Update.
5808         * ravenscar-thread.c: Update.
5809         * remote.c: Update.
5810         * s390-linux-nat.c: Update.
5811         * sol-thread.c: Update.
5812         * sol2-tdep.c: Update.
5813         * spu-linux-nat.c: Update.
5814         * x86-linux-nat.c: Update.
5815         * xtensa-linux-nat.c: Update.
5816
5817 2018-07-03  Tom Tromey  <tom@tromey.com>
5818
5819         * common/ptid.c (ptid_get_pid): Remove.
5820         * common/ptid.h (ptid_get_pid): Don't declare.
5821         * aarch64-linux-nat.c: Update.
5822         * ada-lang.c: Update.
5823         * aix-thread.c: Update.
5824         * alpha-bsd-nat.c: Update.
5825         * amd64-fbsd-nat.c: Update.
5826         * amd64-linux-nat.c: Update.
5827         * arm-linux-nat.c: Update.
5828         * arm-nbsd-nat.c: Update.
5829         * auxv.c: Update.
5830         * break-catch-syscall.c: Update.
5831         * breakpoint.c: Update.
5832         * bsd-uthread.c: Update.
5833         * corelow.c: Update.
5834         * ctf.c: Update.
5835         * darwin-nat.c: Update.
5836         * fbsd-nat.c: Update.
5837         * fbsd-tdep.c: Update.
5838         * gcore.c: Update.
5839         * gnu-nat.c: Update.
5840         * hppa-nbsd-nat.c: Update.
5841         * hppa-obsd-nat.c: Update.
5842         * i386-fbsd-nat.c: Update.
5843         * ia64-linux-nat.c: Update.
5844         * inf-ptrace.c: Update.
5845         * infcmd.c: Update.
5846         * inferior.c: Update.
5847         * inferior.h: Update.
5848         * inflow.c: Update.
5849         * infrun.c: Update.
5850         * linux-fork.c: Update.
5851         * linux-nat.c: Update.
5852         * linux-tdep.c: Update.
5853         * linux-thread-db.c: Update.
5854         * m68k-bsd-nat.c: Update.
5855         * mi/mi-interp.c: Update.
5856         * mi/mi-main.c: Update.
5857         * mips-linux-nat.c: Update.
5858         * mips-nbsd-nat.c: Update.
5859         * mips64-obsd-nat.c: Update.
5860         * nat/aarch64-linux-hw-point.c: Update.
5861         * nat/aarch64-linux.c: Update.
5862         * nat/linux-btrace.c: Update.
5863         * nat/linux-osdata.c: Update.
5864         * nat/linux-procfs.c: Update.
5865         * nat/x86-linux-dregs.c: Update.
5866         * nto-procfs.c: Update.
5867         * obsd-nat.c: Update.
5868         * ppc-linux-nat.c: Update.
5869         * ppc-nbsd-nat.c: Update.
5870         * ppc-obsd-nat.c: Update.
5871         * proc-service.c: Update.
5872         * procfs.c: Update.
5873         * python/py-inferior.c: Update.
5874         * python/py-infthread.c: Update.
5875         * ravenscar-thread.c: Update.
5876         * record.c: Update.
5877         * remote-sim.c: Update.
5878         * remote.c: Update.
5879         * rs6000-nat.c: Update.
5880         * s390-linux-nat.c: Update.
5881         * sh-nbsd-nat.c: Update.
5882         * sol-thread.c: Update.
5883         * sparc-nat.c: Update.
5884         * sparc64-tdep.c: Update.
5885         * spu-linux-nat.c: Update.
5886         * spu-tdep.c: Update.
5887         * target-debug.h: Update.
5888         * target.c: Update.
5889         * thread.c: Update.
5890         * tid-parse.c: Update.
5891         * tracefile-tfile.c: Update.
5892         * vax-bsd-nat.c: Update.
5893         * windows-nat.c: Update.
5894         * x86-linux-nat.c: Update.
5895         * x86-nat.c: Update.
5896
5897 2018-07-03  Tom Tromey  <tom@tromey.com>
5898
5899         * common/ptid.c (pid_to_ptid): Remove.
5900         * common/ptid.h (pid_to_ptid): Don't declare.
5901         * aix-thread.c: Update.
5902         * arm-linux-nat.c: Update.
5903         * common/ptid.c: Update.
5904         * common/ptid.h: Update.
5905         * corelow.c: Update.
5906         * ctf.c: Update.
5907         * darwin-nat.c: Update.
5908         * fbsd-nat.c: Update.
5909         * fork-child.c: Update.
5910         * gnu-nat.c: Update.
5911         * go32-nat.c: Update.
5912         * inf-ptrace.c: Update.
5913         * infcmd.c: Update.
5914         * inferior.c: Update.
5915         * infrun.c: Update.
5916         * linux-fork.c: Update.
5917         * linux-nat.c: Update.
5918         * nat/aarch64-linux-hw-point.c: Update.
5919         * nat/fork-inferior.c: Update.
5920         * nat/x86-linux-dregs.c: Update.
5921         * nto-procfs.c: Update.
5922         * obsd-nat.c: Update.
5923         * procfs.c: Update.
5924         * progspace.c: Update.
5925         * remote.c: Update.
5926         * rs6000-nat.c: Update.
5927         * s390-linux-nat.c: Update.
5928         * sol-thread.c: Update.
5929         * spu-linux-nat.c: Update.
5930         * target.c: Update.
5931         * top.c: Update.
5932         * tracefile-tfile.c: Update.
5933         * windows-nat.c: Update.
5934
5935 2018-07-03  Tom Tromey  <tom@tromey.com>
5936
5937         * common/ptid.h (ptid_build): Don't declare.
5938         * common/ptid.c (ptid_build): Remove.
5939         * aix-thread.c: Update.
5940         * bsd-kvm.c: Update.
5941         * bsd-uthread.c: Update.
5942         * common/agent.c: Update.
5943         * common/ptid.c: Update.
5944         * common/ptid.h: Update.
5945         * corelow.c: Update.
5946         * darwin-nat.c: Update.
5947         * fbsd-nat.c: Update.
5948         * gnu-nat.c: Update.
5949         * linux-fork.c: Update.
5950         * linux-nat.c: Update.
5951         * linux-thread-db.c: Update.
5952         * nat/linux-osdata.c: Update.
5953         * nat/linux-procfs.c: Update.
5954         * nto-procfs.c: Update.
5955         * obsd-nat.c: Update.
5956         * proc-service.c: Update.
5957         * procfs.c: Update.
5958         * ravenscar-thread.c: Update.
5959         * remote-sim.c: Update.
5960         * remote.c: Update.
5961         * sol-thread.c: Update.
5962         * target.c: Update.
5963         * windows-nat.c: Update.
5964
5965 2018-07-03  Tom Tromey  <tom@tromey.com>
5966
5967         * infrun.c (follow_exec): Use exit_inferior_silent.
5968         * inferior.c (exit_inferior_num_silent): Remove.
5969         * inferior.h (exit_inferior_num_silent): Don't declare.
5970
5971 2018-07-03  Tom Tromey  <tom@tromey.com>
5972
5973         PR cli/23340:
5974         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5975         inferior_ptid on error.
5976
5977 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5978             Simon Marchi  <simon.marchi@polymtl.ca>
5979
5980         PR tdep/8282
5981         * disasm.h (gdb_disassembler): Add
5982         `m_disassembler_options_holder'. member
5983         * disasm.c (get_all_disassembler_options): New function.
5984         (gdb_disassembler::gdb_disassembler): Use it.
5985         (gdb_buffered_insn_length_init_dis): Likewise.
5986         (gdb_buffered_insn_length): Adjust accordingly.
5987         (set_disassembler_options): Handle options with arguments.
5988         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5989         line if showing options with descriptions.
5990         (disassembler_options_completer): Adapt to using the
5991         `disasm_options_and_args_t' structure.
5992         * mips-tdep.c (mips_disassembler_options): New variable.
5993         (mips_disassembler_options_o32): Likewise.
5994         (mips_disassembler_options_n32): Likewise.
5995         (mips_disassembler_options_n64): Likewise.
5996         (gdb_print_insn_mips): Don't set `disassembler_options'.
5997         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5998         functions.
5999         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6000         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6001         `gdbarch_disassembler_options_implicit' and
6002         `gdbarch_valid_disassembler_options'.
6003         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6004         `disasm_options_and_args_t' structure.
6005         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6006         method.
6007         (valid_disassembler_options): Switch from `disasm_options_t' to
6008         the `disasm_options_and_args_t' structure.
6009         * NEWS: Document `set disassembler-options' support for the MIPS
6010         target.
6011         * gdbarch.h: Regenerate.
6012         * gdbarch.c: Regenerate.
6013
6014 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6015
6016         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6017
6018 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6019
6020         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6021         parameter in call to amd64_target_description.
6022         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6023         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6024         (amd64fbsd_init_abi): Likewise.
6025         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6026         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6027         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6028         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6029
6030 2018-06-29  Pedro Alves  <palves@redhat.com>
6031
6032         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6033         "segments" parameter.
6034         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6035         (_initialize_amd64_tdep): Update call to
6036         amd64_create_target_description.
6037         (amd64_target_description): Add "segments" parameter.  Adjust
6038         the implementation to use it.
6039         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6040         call to amd64_create_target_description.
6041         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6042         * gdb/arch/amd64.h (amd64_create_target_description): Add
6043         "segments" register.
6044         * gdb/arch/amd64.c (amd64_create_target_description): Add
6045         "segments" parameter.  Call create_feature_i386_64bit_segments
6046         only if SEGMENTS is true.
6047         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6048         call to amd64_create_target_description.
6049
6050 2018-06-29  Pedro Alves  <palves@redhat.com>
6051
6052         * thread.c (thread_target_id_str): New, factored out from ...
6053         (print_thread_info_1): ... here.  Use it to compute the max
6054         "Target Id" column width.
6055
6056 2018-06-29  Pedro Alves  <palves@redhat.com>
6057
6058         * remote.c (remote_target::extra_thread_info): Delete
6059         'display_buf' and 'n' locals.  from the cache, regardless of
6060         packet mechanims is in use.  Use cache for qThreadExtra and qP
6061         methods too.
6062
6063 2018-06-29  Pedro Alves  <palves@redhat.com>
6064
6065         * blockframe.c (find_pc_sect_containing_function): New function.
6066         * breakpoint.c (print_breakpoint_location): Don't call
6067         find_pc_sect_function.
6068         * linespec.c (create_sals_line_offset): Record the location's
6069         symbol in the sal.
6070         * linespec.c (convert_address_location_to_sals): Fill in sal's
6071         symbol with find_pc_sect_containing_function.
6072         * symtab.c (find_function_start_sal): Rename to ...
6073         (find_function_start_sal_1): ... this.
6074         (find_function_start_sal): Reimplement as wrapper around
6075         find_function_start_sal_1, and use
6076         find_pc_sect_containing_function to fill in the sal's symbol.
6077         (find_function_start_sal(symbol*, bool)): Adjust.
6078         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6079         comments.
6080         (find_pc_sect_containing_function): Declare.
6081
6082 2018-06-29  Pedro Alves  <palves@redhat.com>
6083
6084         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6085         true if the the location has no symbol.
6086
6087 2018-06-28  Tom Tromey  <tom@tromey.com>
6088
6089         * NEWS: Mention --enable-codesign.
6090         * silent-rules.mk (ECHO_SIGN): New variable.
6091         * configure.ac: Add --enable-codesign.
6092         * configure: Rebuild.
6093         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6094         (gdb$(EXEEXT)): Optionally invoke codesign.
6095
6096 2018-06-28  Pedro Alves  <palves@redhat.com>
6097
6098         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6099         comments.
6100         (switch_to_thread_no_regs): Adjust comment.
6101         * infcmd.c (stop_pc): Delete.
6102         (post_create_inferior, info_program_command): Replace references
6103         to stop_pc with references to thread_info->suspend.stop_pc.
6104         * inferior.h (stop_pc): Delete declaration.
6105         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6106         (handle_inferior_event_1, handle_signal_stop)
6107         (process_event_stop_test, keep_going_stepped_thread)
6108         (handle_step_into_function, handle_step_into_function_backward)
6109         (print_stop_location): Replace references to stop_pc with
6110         references to thread_info->suspend.stop_pc.
6111         (struct infcall_suspend_state) <stop_pc>: Delete field.
6112         (save_infcall_suspend_state, restore_infcall_suspend_state):
6113         Remove references to inf_stat->stop_pc.
6114         * linux-fork.c (fork_load_infrun_state): Likewise.
6115         * record-btrace.c (record_btrace_set_replay): Likewise.
6116         * record-full.c (record_full_goto_entry): Likewise.
6117         * remote.c (print_one_stopped_thread): Likewise.
6118         * target.c (target_resume): Extend comment.
6119         * thread.c (set_executing_thread): New.
6120         (set_executing): Use it.
6121         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6122         Remove references to stop_pc.
6123
6124 2018-06-28  Pedro Alves  <palves@redhat.com>
6125
6126         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6127         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6128
6129 2018-06-28  Tom Tromey  <tom@tromey.com>
6130
6131         * coffread.c (coff_symfile_finish): Update.
6132         * xcoffread.c (xcoff_symfile_finish): Update.
6133         * elfread.c (elf_symfile_finish): Update.
6134         * symfile.h (dwarf2_free_objfile): Don't declare.
6135         * dwarf2read.c (_initialize_dwarf2_read): Use
6136         register_objfile_data_with_cleanup.
6137         (dwarf2_free_objfile): Now static.  Change signature.
6138
6139 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6140
6141         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6142         option "-o" to add-symbol-file-load to add an offset to each
6143         section's load address.
6144         * symfile.c (set_objfile_default_section_offset): New function.
6145
6146 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6147
6148         * symfile.c (add_symbol_file_command): Make sure that sections
6149         with the same name are sorted in the same order.
6150
6151 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6152
6153         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6154         require the second argument.  If omitted, load sections at the
6155         addresses specified in the file.
6156
6157 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6158
6159         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6160         (_initialize_symfile): Add option "-o" to symbol-file to add an
6161         offset to each section of the symbol file.
6162
6163 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6164
6165         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6166
6167 2018-06-27  Tom Tromey  <tom@tromey.com>
6168
6169         * stack.c (_initialize_stack): Update "func" help text.
6170
6171 2018-06-27  Tom Tromey  <tom@tromey.com>
6172
6173         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6174         std::vector.
6175         (unwind_infopy_str, pyuw_create_unwind_info)
6176         (unwind_infopy_add_saved_register, pyuw_sniffer)
6177         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6178         Update.
6179         (struct saved_reg): Add constructor.
6180         <value>: Now a gdbpy_ref<>.
6181
6182 2018-06-27  Tom Tromey  <tom@tromey.com>
6183
6184         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6185
6186 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6187
6188         * gdb-gdb.py.in: Format using autopep8.
6189
6190 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6191
6192         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6193         (type_lookup_function): Recognize CORE_ADDR values.
6194
6195 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6196
6197         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6198         print tag_name.
6199
6200 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6201
6202         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6203         <__lt__>: Add.
6204
6205 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6206
6207         * gdb-gdb.py: Move to...
6208         * gdb-gdb.py.in: ... here.
6209         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6210         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6211         dependencies.
6212         (distclean): Remove gdb-gdb.py when cleaning.
6213         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6214         * configure: Re-generate.
6215
6216 2018-06-27  Pedro Alves  <palves@redhat.com>
6217
6218         * proc-service.c (get_ps_regcache): New.
6219         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6220         (ps_lsetfpregs): Use it.
6221
6222 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6223
6224         PR gdb/21695
6225         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6226         (dwarf_decode_lines_1): Adjust.
6227
6228 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6229
6230         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6231         override.
6232         <info_proc>: Likewise.
6233
6234 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6235
6236         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6237         to windows_fetch_one_register, and only handle the case of
6238         fetching one register.  Move the code that reloads the context
6239         and iterates over all registers if R is negative to...
6240         (windows_nat_target::fetch_registers): ... here.
6241         (do_windows_store_inferior_registers): Rename to
6242         windows_store_one_register, and only handle the case of storing
6243         one register.  Move the code that handles the case where r is
6244         negative to...
6245         (windows_nat_target::store_registers) ... here.
6246
6247 2018-06-26  Tom Tromey  <tom@tromey.com>
6248
6249         PR rust/22574:
6250         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6251         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6252         Update.
6253         (rust_internal_print_type): Add podata parameter.
6254         (rust_print_type): Update.
6255
6256 2018-06-26  Tom Tromey  <tom@tromey.com>
6257
6258         * typeprint.h (struct print_offset_data) <update, finish,
6259         maybe_print_hole>: New methods.
6260         <indentation>: New constant.
6261         * typeprint.c (print_offset_data::indentation): Define.
6262         (print_offset_data::maybe_print_hole, print_offset_data::update)
6263         (print_offset_data::finish): Move from c-typeprint.c and rename.
6264         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6265         (print_spaces_filtered_with_print_options): Update.
6266         (c_print_type_union_field_offset, maybe_print_hole)
6267         (c_print_type_struct_field_offset): Move to typeprint.c and
6268         rename.
6269         (c_type_print_base_struct_union): Update.
6270
6271 2018-06-25  Pedro Alves  <palves@redhat.com>
6272
6273         * gdbthread.h (thread_info_ref, delete_thread)
6274         (delete_thread_silent, first_thread_of_inferior)
6275         (any_thread_of_inferior, switch_to_thread)
6276         (enable_thread_stack_temporaries)
6277         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6278         (get_last_thread_stack_temporary)
6279         (value_in_thread_stack_temporaries, can_access_registers_thread):
6280         Spell out "struct thread_info" instead of just "thread_info".
6281         * inferior.h (notice_new_inferior): Likewise.
6282
6283 2018-06-25  Pedro Alves  <palves@redhat.com>
6284
6285         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6286         pass thread_info pointer to delete_thread.
6287         (windows_nat_target::detach): Pass inferior pointer to
6288         detach_inferior.
6289         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6290         delete_thread.
6291         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6292         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6293         and pass a thread_info pointer to delete_thread.
6294         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6295         pass thread_info pointer to delete_thread.
6296         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6297         delete_thread_silent call.
6298         * procfs.c (procfs_target::detach): Pass inferior pointer to
6299         detach_inferior.
6300         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6301         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6302         delete_thread_silent call.
6303         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6304         pass thread_info pointer to delete_thread.
6305         (windows_nat_target::detach): Pass inferior pointer to
6306         delete_inferior.
6307
6308 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6309
6310         * regcache.c (readable_regcache::read_part): Fix asserts.
6311         (reg_buffer::raw_collect_part): New function.
6312         (regcache::write_part): Fix asserts.
6313         (reg_buffer::raw_supply_part): New function.
6314         (regcache::transfer_regset_register): New helper function.
6315         (regcache::transfer_regset): Call new functions.
6316         (regcache_supply_regset): Use gdb_byte*.
6317         (regcache::supply_regset): Likewise.
6318         (regcache_collect_regset): Likewise.
6319         (regcache::collect_regset): Likewise.
6320         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6321         (reg_buffer::raw_supply_part): Likewise.
6322         (regcache::transfer_regset_register): Likewise.
6323         (regcache::transfer_regset): Use gdb_byte*.
6324
6325 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6326
6327         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6328
6329 2018-06-21  Pedro Alves  <palves@redhat.com>
6330
6331         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6332         instead of a ptid_t.  All callers adjusted.
6333         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6334         adjusted.
6335         (print_ada_task_info, display_current_task_id, task_command_1):
6336         Adjust.
6337         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6338         inferior_thread.
6339         (breakpoint_kind): Adjust.
6340         (remove_breakpoints_pid): Rename to ...
6341         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6342         pointer.  All callers adjusted.
6343         (bpstat_clear_actions): Use inferior_thread.
6344         (get_bpstat_thread): New.
6345         (bpstat_do_actions): Use it.
6346         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6347         to take a thread_info pointer.  All callers adjusted.
6348         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6349         (breakpoint_re_set_thread): Use inferior_thread.
6350         * breakpoint.h (struct inferior): Forward declare.
6351         (bpstat_stop_status): Update.
6352         (remove_breakpoints_pid): Delete.
6353         (remove_breakpoints_inf): New.
6354         * bsd-uthread.c (bsd_uthread_target::wait)
6355         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6356         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6357         (maint_btrace_packet_history_cmd)
6358         (maint_btrace_clear_packet_history_cmd): Adjust.
6359         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6360         inferior_thread.
6361         * cli/cli-interp.c: Include "inferior.h".
6362         * common/refcounted-object.h (struct
6363         refcounted_object_ref_policy): New.
6364         * compile/compile-object-load.c: Include gdbthread.h.
6365         (store_regs): Use inferior_thread.
6366         * corelow.c (core_target::close): Use current_inferior.
6367         (core_target_open): Adjust to use first_thread_of_inferior and use
6368         the current inferior.
6369         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6370         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6371         <thread>: ... this new field.  All references adjusted.
6372         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6373         Take a thread_info pointer instead of a ptid_t.
6374         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6375         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6376         thread_info pointer instead of a ptid_t.
6377         * elfread.c: Include "inferior.h".
6378         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6379         Use inferior_thread.
6380         * eval.c (evaluate_subexp): Likewise.
6381         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6382         inferior_thread.
6383         * gdb_proc_service.h (struct thread_info): Forward declare.
6384         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6385         <thread>: ... this new field.  All references adjusted.
6386         * gdbarch.h, gdbarch.c: Regenerate.
6387         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6388         'thread' parameter.  All implementations and callers adjusted.
6389         * gdbthread.h (thread_info) <set_running>: New method.
6390         (delete_thread, delete_thread_silent): Take a thread_info pointer
6391         instead of a ptid.
6392         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6393         (first_thread_of_process): Delete, replaced by ...
6394         (first_thread_of_inferior): ... this new function.  All callers
6395         adjusted.
6396         (any_live_thread_of_process): Delete, replaced by ...
6397         (any_live_thread_of_inferior): ... this new function.  All callers
6398         adjusted.
6399         (switch_to_thread, switch_to_no_thread): Declare.
6400         (is_executing): Delete.
6401         (enable_thread_stack_temporaries): Update comment.
6402         <enable_thread_stack_temporaries>: Take a thread_info pointer
6403         instead of a ptid_t.  Incref the thread.
6404         <~enable_thread_stack_temporaries>: Decref the thread.
6405         <m_ptid>: Delete
6406         <m_thr>: New.
6407         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6408         (get_last_thread_stack_temporary)
6409         (value_in_thread_stack_temporaries, can_access_registers_thread):
6410         Take a thread_info pointer instead of a ptid_t.  All callers
6411         adjusted.
6412         * infcall.c (get_call_return_value): Use inferior_thread.
6413         (run_inferior_call): Work with thread pointers instead of ptid_t.
6414         (call_function_by_hand_dummy): Work with thread pointers instead
6415         of ptid_t.  Use thread_info_ref.
6416         * infcmd.c (proceed_thread_callback): Access thread's state
6417         directly.
6418         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6419         access thread's state directly.
6420         (continue_command): Use inferior_thread.
6421         (info_program_command): Use find_thread_ptid and access thread
6422         state directly.
6423         (proceed_after_attach_callback): Use thread state directly.
6424         (notice_new_inferior): Take a thread_info pointer instead of a
6425         ptid_t.  All callers adjusted.
6426         (exit_inferior): Take an inferior pointer instead of a pid.  All
6427         callers adjusted.
6428         (exit_inferior_silent): New.
6429         (detach_inferior): Delete.
6430         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6431         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6432         (detach_inferior_command, kill_inferior_command): Use
6433         find_inferior_id instead of valid_gdb_inferior_id and
6434         gdb_inferior_id_to_pid.
6435         (inferior_command): Use inferior and thread pointers.
6436         * inferior.h (struct thread_info): Forward declare.
6437         (notice_new_inferior): Take a thread_info pointer instead of a
6438         ptid_t.  All callers adjusted.
6439         (detach_inferior): Delete declaration.
6440         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6441         instead of a pid.  All callers adjusted.
6442         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6443         (valid_gdb_inferior_id): Delete.
6444         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6445         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6446         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6447         ...
6448         <inf>: ... this new field.
6449         <step_ptid>: Delete, replaced by ...
6450         <step_thread>: ... this new field.
6451         (get_displaced_stepping_state): Take an inferior pointer instead
6452         of a pid.  All callers adjusted.
6453         (displaced_step_in_progress_any_inferior): Adjust.
6454         (displaced_step_in_progress_thread): Take a thread pointer instead
6455         of a ptid_t.  All callers adjusted.
6456         (displaced_step_in_progress, add_displaced_stepping_state): Take
6457         an inferior pointer instead of a pid.  All callers adjusted.
6458         (get_displaced_step_closure_by_addr): Adjust.
6459         (remove_displaced_stepping_state): Take an inferior pointer
6460         instead of a pid.  All callers adjusted.
6461         (displaced_step_prepare_throw, displaced_step_prepare)
6462         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6463         All callers adjusted.
6464         (start_step_over): Adjust.
6465         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6466         displaced step queue.
6467         (do_target_resume): Adjust.
6468         (fetch_inferior_event): Use inferior_thread.
6469         (context_switch, get_inferior_stop_soon): Take an
6470         execution_control_state pointer instead of a ptid_t.  All callers
6471         adjusted.
6472         (switch_to_thread_cleanup): Delete.
6473         (stop_all_threads): Use scoped_restore_current_thread.
6474         * inline-frame.c: Include "gdbthread.h".
6475         (inline_state) <inline_state>: Take a thread pointer instead of a
6476         ptid_t.  All callers adjusted.
6477         <ptid>: Delete, replaced by ...
6478         <thread>: ... this new field.
6479         (find_inline_frame_state): Take a thread pointer instead of a
6480         ptid_t.  All callers adjusted.
6481         (skip_inline_frames, step_into_inline_frame)
6482         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6483         pointer instead of a ptid_t.  All callers adjusted.
6484         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6485         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6486         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6487         pointers directly.
6488         * linux-nat.c (get_detach_signal): Likewise.
6489         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6490         (thread_db_notice_clone): Adjust.
6491         (thread_db_find_new_threads_silently)
6492         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6493         a thread pointer instead of a ptid_t.  All callers adjusted.
6494         * mi/mi-cmd-var.c: Include "inferior.h".
6495         (mi_cmd_var_update_iter): Update to use thread pointers.
6496         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6497         inferior directly.
6498         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6499         out to ...
6500         (mi_output_running): ... this new function.
6501         (mi_on_resume_1): Adjust to use it.
6502         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6503         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6504         directly.
6505         (interrupt_thread_callback): : Adjust to use thread and inferior
6506         pointers.
6507         * proc-service.c: Include "gdbthread.h".
6508         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6509         * progspace-and-thread.c: Include "inferior.h".
6510         * progspace.c: Include "inferior.h".
6511         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6512         hold a reference to an inferior_object.
6513         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6514         inferior_thread.
6515         * python/py-inferior.c (struct inferior_object): Give the type a
6516         tag name instead of a typedef.
6517         (python_on_normal_stop): No need to check if the current thread is
6518         listed.
6519         (inferior_to_inferior_object): Change return type to
6520         inferior_object.  All callers adjusted.
6521         (find_thread_object): Delete, bits factored out to ...
6522         (thread_to_thread_object): ... this new function.
6523         * python/py-infthread.c (create_thread_object): Use
6524         inferior_to_inferior_object.
6525         (thpy_is_stopped): Use thread pointer directly.
6526         (gdbpy_selected_thread): Use inferior_thread.
6527         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6528         field, replaced with ...
6529         <thread>: ... this new field.  All users adjusted.
6530         (btpy_insn_or_gap_new): Drop const.
6531         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6532         callers adjusted.
6533         * python/py-record.c: Include "gdbthread.h".
6534         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6535         a ptid_t.  All callers adjusted.
6536         (gdbpy_current_recording): Use inferior_thread.
6537         * python/py-record.h (recpy_record_object) <ptid>: Delete
6538         field, replaced with ...
6539         <thread>: ... this new field.  All users adjusted.
6540         (recpy_element_object) <ptid>: Delete
6541         field, replaced with ...
6542         <thread>: ... this new field.  All users adjusted.
6543         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6544         a ptid_t.  All callers adjusted.
6545         * python/py-threadevent.c: Include "gdbthread.h".
6546         (get_event_thread): Use thread_to_thread_object.
6547         * python/python-internal.h (struct inferior_object): Forward
6548         declare.
6549         (find_thread_object, find_inferior_object): Delete declarations.
6550         (thread_to_thread_object, inferior_to_inferior_object): New
6551         declarations.
6552         * record-btrace.c: Include "inferior.h".
6553         (require_btrace_thread): Use inferior_thread.
6554         (record_btrace_frame_sniffer)
6555         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6556         (get_thread_current_frame): Use scoped_restore_current_thread and
6557         switch_to_thread.
6558         (get_thread_current_frame): Use thread pointer directly.
6559         (record_btrace_replay_at_breakpoint): Use thread's inferior
6560         pointer directly.
6561         * record-full.c: Include "inferior.h".
6562         * regcache.c: Include "gdbthread.h".
6563         (get_thread_arch_regcache): Use the inferior's address space
6564         directly.
6565         (get_thread_regcache, registers_changed_thread): New.
6566         * regcache.h (get_thread_regcache(thread_info *thread)): New
6567         overload.
6568         (registers_changed_thread): New.
6569         (remote_target) <remote_detach_1>: Swap order of parameters.
6570         (remote_add_thread): <remote_add_thread>: Return the new thread.
6571         (get_remote_thread_info(ptid_t)): New overload.
6572         (remote_target::remote_notice_new_inferior): Use thread pointers
6573         directly.
6574         (remote_target::process_initial_stop_replies): Use
6575         thread_info::set_running.
6576         (remote_target::remote_detach_1, remote_target::detach)
6577         (extended_remote_target::detach): Adjust.
6578         * stack.c (frame_show_address): Use inferior_thread.
6579         * target-debug.h (target_debug_print_thread_info_pp): New.
6580         * target-delegates.c: Regenerate.
6581         * target.c (default_thread_address_space): Delete.
6582         (memory_xfer_partial_1): Use current_inferior.
6583         (target_detach): Use current_inferior.
6584         (target_thread_address_space): Delete.
6585         (generic_mourn_inferior): Use current_inferior.
6586         * target.h (struct target_ops) <thread_address_space>: Delete.
6587         (target_thread_address_space): Delete.
6588         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6589         pointers directly.
6590         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6591         thread pointer instead of a ptid_t.  Adjust all callers.
6592         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6593         (first_thread_of_process): Delete, replaced by ...
6594         (first_thread_of_inferior): ... this new function.  All callers
6595         adjusted.
6596         (any_thread_of_process): Rename to ...
6597         (any_thread_of_inferior): ... this, and take an inferior pointer.
6598         (any_live_thread_of_process): Rename to ...
6599         (any_live_thread_of_inferior): ... this, and take an inferior
6600         pointer.
6601         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6602         (value_in_thread_stack_temporaries)
6603         (get_last_thread_stack_temporary): Take a thread pointer instead
6604         of a ptid_t.  Adjust all callers.
6605         (thread_info::set_running): New.
6606         (validate_registers_access): Use inferior_thread.
6607         (can_access_registers_ptid): Rename to ...
6608         (can_access_registers_thread): ... this, and take a thread
6609         pointer.
6610         (print_thread_info_1): Adjust to compare thread pointers instead
6611         of ptids.
6612         (switch_to_no_thread, switch_to_thread): Make extern.
6613         (scoped_restore_current_thread::~scoped_restore_current_thread):
6614         Use m_thread pointer directly.
6615         (scoped_restore_current_thread::scoped_restore_current_thread):
6616         Use inferior_thread.
6617         (thread_command): Use thread pointer directly.
6618         (thread_num_make_value_helper): Use inferior_thread.
6619         * top.c (execute_command): Use inferior_thread.
6620         * tui/tui-interp.c: Include "inferior.h".
6621         * varobj.c (varobj_create): Use inferior_thread.
6622         (value_of_root_1): Use find_thread_global_id instead of
6623         global_thread_id_to_ptid.
6624
6625 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6626
6627         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6628         possible.
6629         (regcache::write_part): Likewise.
6630         (readable_regcache::cooked_read_part): Update comment.
6631         (readable_regcache::cooked_write_part): Likewise.
6632         * regcache.h: (readable_regcache::read_part): Likewise.
6633         (regcache::write_part): Likewise.
6634
6635 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6636             Dirk Schubert  <dirk.schubert@arm.com>
6637
6638         * aarch64-linux-nat.c (post_attach): New.
6639         (aarch64_linux_nat_target::post_attach): Override post_attach to
6640         record the number of hardware debug registers.
6641
6642 2018-06-20  Tom Tromey  <tom@tromey.com>
6643
6644         * python/py-param.c (add_setshow_generic): Make parameters const.
6645         (parmpy_init): Update.
6646
6647 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6648
6649         * regcache.h (regcache_cooked_read_ftype): Rename to...
6650         (register_read_ftype): ...this, change type to function_view.
6651         (class reg_buffer) <save>: Remove src parameter.
6652         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6653         parameter non-const in first overload.  Remove src parameter in
6654         second overload.
6655         * regcache.c (do_cooked_read): Remove.
6656         (readonly_detached_regcache::readonly_detached_regcache): Make
6657         parameter non-const, adjust call to other constructor.
6658         (reg_buffer::save): Remove src parameter.
6659         * frame.c (do_frame_register_read): Remove.
6660         (frame_save_as_regcache): Use lambda function.
6661         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6662         parameter to ppu2spu_data *.
6663         (ppu2spu_sniffer): Use lambda function.
6664
6665 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6666
6667         * record-full.c (record_full_target::insert_breakpoint): Remove
6668         "struct" keyword, add const.
6669
6670 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6671
6672         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6673         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6674         * configure.ac: Remove AC_PREREQ, add missing quoting.
6675         * gnulib/configure.ac: Modernize usage of
6676         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6677         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6678         (AUTOMAKE_VERSION): Bump to 1.15.1.
6679         * configure: Re-generate.
6680         * config.in: Re-generate.
6681         * aclocal.m4: Re-generate.
6682         * gnulib/aclocal.m4: Re-generate.
6683         * gnulib/config.in: Re-generate.
6684         * gnulib/configure: Re-generate.
6685         * gnulib/import/Makefile.in: Re-generate.
6686
6687 2018-06-19  Pedro Alves  <palves@redhat.com>
6688
6689         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6690         (lookup_minimal_symbol_by_pc_section): ... here with
6691         gdb_assert_not_reached added.
6692
6693 2018-06-19  Pedro Alves  <palves@redhat.com>
6694
6695         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6696         parameter with a block parameter.  Compare location's block symbol
6697         with the frame's block instead of addresses.
6698         (skip_inline_frames): Pass the current block instead of the
6699         frame's address.  Break out as soon as we determine the frame
6700         should not be skipped.
6701
6702 2018-06-18  Tom Tromey  <tom@tromey.com>
6703
6704         * solib-aix.c (solib_aix_get_section_offsets): Return
6705         unique_xmalloc_ptr.
6706         (solib_aix_solib_create_inferior_hook): Update.
6707
6708 2018-06-18  Tom Tromey  <tom@tromey.com>
6709
6710         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6711
6712 2018-06-18  Tom Tromey  <tom@tromey.com>
6713
6714         * solib-frv.c (frv_relocate_main_executable): Use
6715         unique_xmalloc_ptr.
6716         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6717         unique_xmalloc_ptr.
6718
6719 2018-06-18  Tom Tromey  <tom@tromey.com>
6720
6721         * objfiles.h (inhibit_section_map_updates): Update.
6722         (resume_section_map_updates, resume_section_map_updates_cleanup):
6723         Remove.
6724         * solib-svr4.c (svr4_handle_solib_event): Update.
6725         * objfiles.c (inhibit_section_map_updates): Return
6726         scoped_restore_tmpl<int>.
6727         (resume_section_map_updates, resume_section_map_updates_cleanup):
6728         Remove.
6729
6730 2018-06-18  Tom Tromey  <tom@tromey.com>
6731
6732         * valprint.h (read_string): Update.
6733         * valprint.c (read_string): Change type of "buffer".
6734         (val_print_string): Update.
6735         * python/py-value.c (valpy_string): Update.
6736         * language.h (struct language_defn) <la_get_string>: Change
6737         type of "buffer".
6738         (default_get_string, c_get_string): Update.
6739         * language.c (default_get_string): Change type of "buffer".
6740         * guile/scm-value.c (gdbscm_value_to_string): Update.
6741         * c-lang.c (c_get_string): Change type of "buffer".
6742
6743 2018-06-18  Tom Tromey  <tom@tromey.com>
6744
6745         * ser-mingw.c (struct pipe_state_destroyer): New.
6746         (pipe_state_up): New typedef.
6747         (cleanup_pipe_state): Remove.
6748         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6749
6750 2018-06-18  Tom Tromey  <tom@tromey.com>
6751
6752         * rust-lang.h (rust_yyerror): Don't declare.
6753         * rust-lang.c (rust_language_defn): Update.
6754         * rust-exp.y (yyerror): Now static.
6755         * parse.c (parse_exp_in_context_1): Update.
6756         * p-lang.h (p_yyerror): Don't declare.
6757         * p-lang.c (p_language_defn): Update.
6758         * p-exp.y (yyerror): Now static.
6759         * opencl-lang.c (opencl_language_defn): Update.
6760         * objc-lang.c (objc_language_defn): Update.
6761         * m2-lang.h (m2_yyerror): Don't declare.
6762         * m2-lang.c (m2_language_defn): Update.
6763         * m2-exp.y (yyerror): Now static.
6764         * language.h (struct language_defn) <la_error>: Remove.
6765         * language.c (unk_lang_error): Remove.
6766         (unknown_language_defn, auto_language_defn): Remove.
6767         * go-lang.h (go_yyerror): Don't declare.
6768         * go-lang.c (go_language_defn): Update.
6769         * go-exp.y (yyerror): Now static.
6770         * f-lang.h (f_yyerror): Don't declare.
6771         * f-lang.c (f_language_defn): Update.
6772         * f-exp.y (yyerror): Now static.
6773         * d-lang.h (d_yyerror): Don't declare.
6774         * d-lang.c (d_language_defn): Update.
6775         * d-exp.y (yyerror): Now static.
6776         * c-lang.h (c_yyerror): Don't declare.
6777         * c-lang.c (c_language_defn, cplus_language_defn)
6778         (asm_language_defn, minimal_language_defn): Update.
6779         * c-exp.y (yyerror): Now static.
6780         * ada-lang.h (ada_yyerror): Don't declare.
6781         * ada-lang.c (ada_language_defn): Update.
6782         * ada-exp.y (yyerror): Now static.
6783
6784 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6785
6786         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6787         (store_sveregs_to_thread): Likewise.
6788         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6789         (aarch64_linux_store_inferior_registers): Likewise.
6790         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6791         function.
6792         (aarch64_sve_regs_copy_to_regcache): Likewise.
6793         (aarch64_sve_regs_copy_from_regcache): Likewise.
6794         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6795         declaration.
6796         (aarch64_sve_regs_copy_to_regcache): Likewise.
6797         (aarch64_sve_regs_copy_from_regcache): Likewise.
6798         (sve_context): Structure from Linux headers.
6799         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6800         (SVE_SIG_ZREG_SIZE): Likewise.
6801         (SVE_SIG_PREG_SIZE): Likewise.
6802         (SVE_SIG_FFR_SIZE): Likewise.
6803         (SVE_SIG_REGS_OFFSET): Likewise.
6804         (SVE_SIG_ZREGS_OFFSET): Likewise.
6805         (SVE_SIG_ZREG_OFFSET): Likewise.
6806         (SVE_SIG_ZREGS_SIZE): Likewise.
6807         (SVE_SIG_PREGS_OFFSET): Likewise.
6808         (SVE_SIG_PREG_OFFSET): Likewise.
6809         (SVE_SIG_PREGS_SIZE): Likewise.
6810         (SVE_SIG_FFR_OFFSET): Likewise.
6811         (SVE_SIG_REGS_SIZE): Likewise.
6812         (SVE_SIG_CONTEXT_SIZE): Likewise.
6813         (SVE_PT_REGS_MASK): Likewise.
6814         (SVE_PT_REGS_FPSIMD): Likewise.
6815         (SVE_PT_REGS_SVE): Likewise.
6816         (SVE_PT_VL_INHERIT): Likewise.
6817         (SVE_PT_VL_ONEXEC): Likewise.
6818         (SVE_PT_REGS_OFFSET): Likewise.
6819         (SVE_PT_FPSIMD_OFFSET): Likewise.
6820         (SVE_PT_FPSIMD_SIZE): Likewise.
6821         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6822         (SVE_PT_SVE_PREG_SIZE): Likewise.
6823         (SVE_PT_SVE_FFR_SIZE): Likewise.
6824         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6825         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6826         (__SVE_SIG_TO_PT): Likewise.
6827         (SVE_PT_SVE_OFFSET): Likewise.
6828         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6829         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6830         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6831         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6832         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6833         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6834         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6835         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6836         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6837         (SVE_PT_SVE_SIZE): Likewise.
6838         (SVE_PT_SIZE): Likewise.
6839         (HAS_SVE_STATE): New define.
6840
6841 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6842
6843         * nat/aarch64-sve-linux-sigcontext.h: New file.
6844         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6845         new files.
6846         (SVE_VQ_MIN): Likewise.
6847         (SVE_VQ_MAX): Likewise.
6848         (SVE_VL_MIN): Likewise.
6849         (SVE_VL_MAX): Likewise.
6850         (SVE_NUM_ZREGS): Likewise.
6851         (SVE_NUM_PREGS): Likewise.
6852         (sve_vl_valid): Likewise.
6853         (struct user_sve_header): Likewise.
6854
6855 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6856             Richard Bunt <Richard.Bunt@arm.com>
6857
6858         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6859         was requested by GDB.
6860
6861 2018-06-15  Tom de Vries  <tdevries@suse.de>
6862
6863         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6864
6865 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6866
6867         * gnulib/update-gnulib.sh: Print expected versions of
6868         autoconf/aclocal.
6869
6870 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6871
6872         * arch-utils.c (default_type_align): Use type_length_units.
6873         * gdbtypes.c (type_align): Use type_length_units.
6874
6875 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6876
6877         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6878         of 'define' command.
6879
6880 2018-06-14  Tom de Vries  <tdevries@suse.de>
6881
6882         PR cli/22573
6883         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6884         get_no_prettyformat_print_options.
6885
6886 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6887
6888         * sparc-nat.h: Include target.h.
6889         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6890         <fetch_registers>: Remove this argument in function call.
6891         <store_registers>: Remove this argument in function call, remove
6892         extra semicolon.
6893         <low_forget_process>: Call sparc64_forget_process instead of
6894         sparc_forget_process.
6895
6896 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6897
6898         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6899         (procfs_target::make_corefile_notes): Adjust to new
6900         target_read_alloc return type.
6901
6902 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6903             Stephen Roberts  <stephen.roberts@arm.com>
6904
6905         PR gdb/22882
6906         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6907         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6908         Move should_notify_stop local into more inner scope.
6909
6910 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6911             Stephen Roberts  <stephen.roberts@arm.com>
6912
6913         PR gdb/22882
6914         * infrun.c (resume_1): Add call to mark_async_event_handler.
6915
6916 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6917
6918         * infrun.c (do_target_wait): Change old version of $pc printed.
6919
6920 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6921
6922         * dwarf2read.c (read_index_from_section): Rename to...
6923         (read_gdb_index_from_section): ... this, update all callers.
6924         (dwarf2_read_index): Rename to...
6925         (dwarf2_read_gdb_index): ... this, update all callers.
6926
6927 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6928
6929         * gdb/hppa-linux-nat.c
6930         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6931         hppa_linux_nat_target::fetch_registers.
6932
6933 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6934
6935         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6936         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6937         (AARCH64_DWARF_SVE_FFR): Likewise.
6938         (AARCH64_DWARF_SVE_P0): Likewise.
6939         (AARCH64_DWARF_SVE_Z0): Likewise.
6940
6941 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6942
6943         * common/common-regcache.h (raw_compare): New function.
6944         * regcache.c (regcache::raw_compare): Likewise.
6945         * regcache.h (regcache::raw_compare): New declaration.
6946
6947 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6948
6949         * common/common-regcache.h (reg_buffer_common): New structure.
6950         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6951         (reg_buffer::raw_supply): Likewise.
6952         (reg_buffer::raw_supply_integer): Likewise.
6953         (reg_buffer::raw_supply_zeroed): Likewise.
6954         (reg_buffer::raw_collect): Likewise.
6955         (reg_buffer::raw_collect_integer): Likewise.
6956         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6957         (reg_buffer::raw_supply): Likewise.
6958         (reg_buffer::raw_supply_integer): Likewise.
6959         (reg_buffer::raw_supply_zeroed): Likewise.
6960         (reg_buffer::raw_collect): Likewise.
6961         (reg_buffer::raw_collect_integer): Likewise.
6962
6963 2018-06-10  Tom Tromey  <tom@tromey.com>
6964
6965         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6966         (class remote_state) <stop_reply_queue>: Now std::vector.
6967         (remote_state::~remote_state)
6968         (remote_target::stop_reply_queue_length): Update.
6969         (struct queue_iter_param, remove_child_of_pending_fork)
6970         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6971         (check_pending_event_prevents_wildcard_vcont_callback)
6972         (remove_stop_reply_for_inferior)
6973         (remove_stop_reply_of_remote_state)
6974         (remote_notif_remove_once_on_match)
6975         (stop_reply_match_ptid_and_ws)
6976         (remote_kill_child_of_pending_fork): Remove.
6977         (remote_target::remove_new_fork_children)
6978         (remote_target::check_pending_events_prevent_wildcard_vcont)
6979         (remote_target::discard_pending_stop_replies)
6980         (remote_target::discard_pending_stop_replies_in_queue)
6981         (remote_target::remote_notif_remove_queued_reply)
6982         (remote_target::queued_stop_reply)
6983         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6984         (remote_target::wait, remote_target::kill_new_fork_children)
6985         (remote_target::async): Update.
6986
6987 2018-06-10  Tom Tromey  <tom@tromey.com>
6988
6989         * record-full.c (record_full_arch_list_cleanups): Remove.
6990         (record_full_message): Use try/catch.
6991         (record_full_wait_cleanups): Remove.
6992         (record_full_wait_1): Use try/catch.
6993         (record_full_restore): Likewise.
6994
6995 2018-06-10  Tom Tromey  <tom@tromey.com>
6996
6997         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6998         declare VEC.  Add constructor.
6999         <in_target_beneath>: Now bool.
7000         (record_full_breakpoints): Now a std::vector, static.
7001         (record_full_sync_record_breakpoints)
7002         (record_full_init_record_breakpoints)
7003         (record_full_target::insert_breakpoint)
7004         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7005
7006 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7007
7008         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7009         * serial.c (serial_interface_lookup): Remove struct keyword.
7010
7011 2018-06-10  Tom Tromey  <tom@tromey.com>
7012
7013         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7014         method.
7015         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7016         a method.
7017         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7018         method.
7019         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7020         "beneath" as a method.
7021         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7022         Use "beneath" as a method.
7023
7024 2018-06-10  Tom Tromey  <tom@tromey.com>
7025
7026         * tracefile.c (struct trace_file_writer_deleter): New.
7027         <operator()>: Rename from trace_file_writer_xfree.
7028         (trace_file_writer_up): New typedef.
7029         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7030
7031 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7032
7033         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7034         <m_registers, m_register_status>: Change type to
7035         std::unique_ptr.
7036         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7037         XCNEWVEC.
7038
7039 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7040
7041         * common/common-regcache.h (enum register_status): Add
7042         underlying type "signed char".
7043         * regcache.h (reg_buffer) <m_register_status>: Change type to
7044         register_status *.
7045         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7046         register_status instead of signed char.
7047         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7048         (reg_buffer::get_register_status): Remove cast.
7049         (readable_regcache::raw_read): Remove cast.
7050         (readable_regcache::cooked_read): Remove cast.
7051
7052 2018-06-09  Tom Tromey  <tom@tromey.com>
7053
7054         * source.c (reverse_search_command, forward_search_command): Use
7055         scoped_fd.
7056
7057 2018-06-09  Tom Tromey  <tom@tromey.com>
7058
7059         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7060         (serial_ops_list): Now static, std::vector.
7061         (serial_interface_lookup, serial_add_interface): Update.
7062
7063 2018-06-09  Tom Tromey  <tom@tromey.com>
7064
7065         * dwarf2read.c (process_cu_includes): Update.
7066         (process_full_comp_unit): Update.
7067         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7068         std::vector.
7069
7070 2018-06-08  Paul Koning  <paul_koning@dell.com>
7071
7072         PR gdb/23252
7073
7074         * python/python.c (do_start_initialization):
7075         Avoid call to internal Python API.
7076         (init__gdb_module): New function.
7077
7078 2018-06-08  Gary Benson <gbenson@redhat.com>
7079
7080         * linux-thread-db.c (valprint.h): New include.
7081         (struct check_thread_db_info): New structure.
7082         (check_thread_db_on_load, tdb_testinfo): New static globals.
7083         (check_thread_db, check_thread_db_callback): New functions.
7084         (try_thread_db_load_1): Run integrity checks if requested.
7085         (maintenance_check_libthread_db): New function.
7086         (_initialize_thread_db): Register "maint check libthread-db"
7087         and "maint set/show check-libthread-db".
7088         * NEWS: Mention the above new commands.
7089
7090 2018-06-08  Tom Tromey  <tom@tromey.com>
7091
7092         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7093         now a method.
7094
7095 2018-06-08  Tom Tromey  <tom@tromey.com>
7096
7097         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7098
7099 2018-06-08  Tom Tromey  <tom@tromey.com>
7100
7101         * common/btrace-common.h (struct btrace_data): Add constructor,
7102         destructor, move assignment operator.
7103         <empty, clear, fini>: New methods.
7104         <format>: Initialize.
7105         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7106         (btrace_data_empty): Don't declare.
7107         * common/btrace-common.c (btrace_data_init): Remove.
7108         (btrace_data::fini): Rename from btrace_data_fini.
7109         (btrace_data::empty): Rename from btrace_data_empty.
7110         (btrace_data::clear): Rename from btrace_data_clear.  Return
7111         bool.
7112         * btrace.h (make_cleanup_btrace_data): Don't declare.
7113         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7114         (parse_xml_btrace): Update.
7115         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7116         (maint_btrace_clear_packet_history_cmd): Update.
7117
7118 2018-06-07  Pedro Alves  <palves@redhat.com>
7119
7120         * target.h (target_ops) <beneath>: Now a method.  All references
7121         updated.
7122         (class target_stack): New.
7123         * target.c (g_target_stack): New.
7124         (g_current_top_target): Delete.
7125         (current_top_target): Get the top target out of g_target_stack.
7126         (target_stack::push, target_stack::unpush): New.
7127         (push_target, unpush_target): Reimplement.
7128         (target_is_pushed): Reimplement in terms of g_target_stack.
7129         (target_ops::beneath, target_stack::find_beneath): New.
7130
7131 2018-06-07  Pedro Alves  <palves@redhat.com>
7132
7133         * target.h (find_target_beneath): Delete declaration.
7134         * target.c (find_target_beneath): Delete definition.
7135         * aix-thread.c: All callers of find_target_beneath adjusted to
7136         call target_ops::beneath instead.
7137         * bsd-uthread.c: Likewise.
7138         * linux-thread-db.c: Likewise.
7139         * ravenscar-thread.c: Likewise.
7140         * sol-thread.c: Likewise.
7141         * spu-multiarch.c: Likewise.
7142
7143 2018-06-07  Pedro Alves  <palves@redhat.com>
7144
7145         * target.h (target_ops) <beneath>: Now a method.  All references
7146         updated.
7147         (target_ops) <m_beneath>: New.
7148         * target.c (target_ops::beneath): New.
7149         * corelow.c: Adjust all references to target_ops::beneath.
7150         * linux-thread-db.c: Likewise.
7151         * make-target-delegates: Likewise.
7152         * record-btrace.c: Likewise.
7153         * record-full.c: Likewise.
7154         * remote.c: Likewise.
7155         * target.c: Likewise.
7156         * target-delegates.c: Regenerate.
7157
7158 2018-06-07  Pedro Alves  <palves@redhat.com>
7159
7160         * target.h (target_stack): Delete.
7161         (current_top_target): Declare function.
7162         * target.c (target_stack): Delete.
7163         (g_current_top_target): New.
7164         (current_top_target): New function.
7165         * auxv.c: Use current_top_target instead of target_stack
7166         throughout.
7167         * avr-tdep.c: Likewise.
7168         * breakpoint.c: Likewise.
7169         * corefile.c: Likewise.
7170         * elfread.c: Likewise.
7171         * eval.c: Likewise.
7172         * exceptions.c: Likewise.
7173         * frame.c: Likewise.
7174         * gdbarch-selftests.c: Likewise.
7175         * gnu-v3-abi.c: Likewise.
7176         * ia64-tdep.c: Likewise.
7177         * ia64-vms-tdep.c: Likewise.
7178         * infcall.c: Likewise.
7179         * infcmd.c: Likewise.
7180         * infrun.c: Likewise.
7181         * linespec.c: Likewise.
7182         * linux-tdep.c: Likewise.
7183         * minsyms.c: Likewise.
7184         * ppc-linux-nat.c: Likewise.
7185         * ppc-linux-tdep.c: Likewise.
7186         * procfs.c: Likewise.
7187         * regcache.c: Likewise.
7188         * remote.c: Likewise.
7189         * rs6000-tdep.c: Likewise.
7190         * s390-linux-nat.c: Likewise.
7191         * s390-tdep.c: Likewise.
7192         * solib-aix.c: Likewise.
7193         * solib-darwin.c: Likewise.
7194         * solib-dsbt.c: Likewise.
7195         * solib-spu.c: Likewise.
7196         * solib-svr4.c: Likewise.
7197         * solib-target.c: Likewise.
7198         * sparc-tdep.c: Likewise.
7199         * sparc64-tdep.c: Likewise.
7200         * spu-tdep.c: Likewise.
7201         * symfile.c: Likewise.
7202         * symtab.c: Likewise.
7203         * target-descriptions.c: Likewise.
7204         * target-memory.c: Likewise.
7205         * target.c: Likewise.
7206         * target.h: Likewise.
7207         * tracefile-tfile.c: Likewise.
7208         * tracepoint.c: Likewise.
7209         * valops.c: Likewise.
7210         * valprint.c: Likewise.
7211         * value.c: Likewise.
7212         * windows-tdep.c: Likewise.
7213         * mi/mi-main.c: Likewise.
7214
7215 2018-06-07  Tom Tromey  <tom@tromey.com>
7216
7217         * valprint.h (build_address_symbolic): Declare.
7218         * printcmd.c (print_address_symbolic): Update.
7219         (build_address_symbolic): Change "name" and "filename" to
7220         std::string.
7221         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7222         Update.
7223         * defs.h (build_address_symbolic): Remove declaration.
7224
7225 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7226
7227         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7228         (aarch64_vnv_type): Add function.
7229         (aarch64_pseudo_register_name): Add V regs for SVE.
7230         (aarch64_pseudo_register_type): Likewise.
7231         (aarch64_pseudo_register_reggroup_p): Likewise.
7232         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7233         (aarch64_pseudo_read_value): Add V regs for SVE.
7234         (aarch64_pseudo_write_2): Use V0 offset for SVE
7235         (aarch64_pseudo_write): Add V regs for SVE.
7236         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7237
7238 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7239
7240         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7241         (sve_vl_from_vq): Likewise.
7242
7243 2018-06-05  Tom Tromey  <tom@tromey.com>
7244
7245         * cli/cli-cmds.c (show_version): Update.
7246         * top.c (print_gdb_version): Add "interactive" parameter.
7247         Update.
7248         * main.c (captured_main_1): Update.
7249         * top.h (print_gdb_version): Add "interactive" parameter and a
7250         comment.
7251
7252 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7253
7254         * common/enum-flags.h: Add trailing semicolon to example in
7255         comment.
7256
7257 2018-06-05  Tom Tromey  <tom@tromey.com>
7258
7259         PR cli/12326:
7260         * NEWS: Add entry about pager.
7261         * utils.c (pagination_disabled_for_command): New global.
7262         (prompt_for_continue): Allow "c" response to prompt.
7263         (reinitialize_more_filter): Clear
7264         pagination_disabled_for_command.
7265         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7266
7267 2018-06-04  Tom Tromey  <tom@tromey.com>
7268
7269         * ada-lang.h (ada_lookup_symbol_list): Update.
7270         * ada-lang.c (resolve_subexp): Update.
7271         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7272         parameter.
7273         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7274         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7275         results parameter to std::vector.
7276         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7277         Update.
7278         * ada-exp.y (block_lookup): Update.
7279         (select_possible_type_sym): Change type of syms.  Remove nsyms
7280         parameter.
7281         (write_var_or_type, write_name_assoc): Update.
7282
7283 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7284
7285         * windows-nat.c (windows_nat_target::xfer_partial): Return
7286         TARGET_XFER_E_IO if we need to delegate to the target beneath
7287         but BENEATH is NULL.
7288
7289 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7290
7291         * Makefile.in (config.status): Add configure.nat as a
7292         dependency.
7293
7294 2018-06-04  Tom Tromey  <tom@tromey.com>
7295
7296         * cp-name-parser.y (cpname_state): Add method declarations.
7297         (HANDLE_QUAL): Update.
7298         (cpname_state::d_grab, cpname_state::fill_comp)
7299         (cpname_state::make_operator, cpname_state::make_dtor)
7300         (cpname_state::make_builtin_type, cpname_state::make_name)
7301         (cpname_state::d_qualify, cpname_state::d_int_type)
7302         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7303         (%union): Move earlier.
7304
7305 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7306
7307         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7308
7309 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7310
7311         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7312         (aarch64_pseudo_write_1): Likewise.
7313         (aarch64_pseudo_read_value): Use helper.
7314         (aarch64_pseudo_write): Likewise.
7315
7316 2018-06-04  Pedro Alves  <palves@redhat.com>
7317
7318         * darwin-nat.c (darwin_ops): Delete.
7319         (darwin_attach_pid): Use get_native_target.
7320
7321 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7322
7323         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7324         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7325
7326 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7327
7328         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7329         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7330         (aarch64_gdbarch_init): Check for SVE.
7331         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7332
7333 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7334
7335         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7336         * aarch64-tdep.h (aarch64_read_description): Likewise.
7337         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7338         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7339         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7340         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7341         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7342
7343 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7344
7345         * value.c (value_fetch_lazy_bitfield): New.
7346         (value_fetch_lazy_memory): New.
7347         (value_fetch_lazy_register): New.
7348         (value_fetch_lazy): Factor out to smaller functions.
7349
7350 2018-06-01  Tom Tromey  <tom@tromey.com>
7351
7352         * cp-name-parser.y (backslashable, represented): Now const.
7353
7354 2018-06-01  Tom Tromey  <tom@tromey.com>
7355
7356         * cp-name-parser.y: Include parser-defs.h.
7357         (parser_fprintf): Remove declaration.
7358
7359 2018-06-01  Tom Tromey  <tom@tromey.com>
7360
7361         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7362         %parse-param.
7363         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7364         (global_result): Remove globals.
7365         (struct cpname_state): New.
7366         (yyparse): Don't declare.
7367         (yylex, yyerror): Move declarations after %union.
7368         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7369         (make_name): Add state parameter.
7370         Update all callers.
7371         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7372         parameter.
7373         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7374         Update.
7375         (yylex): Add lvalp, state parameters.
7376         (yyerror): Add state parameter.
7377         (cp_demangled_name_to_comp): Update.
7378
7379 2018-06-01  Tom Tromey  <tom@tromey.com>
7380
7381         * cp-name-parser.y (parser_fprintf): Declare.
7382         (GDB_YY_REMAP_PREFIX): Define.
7383         Include yy-remap.h.  Don't redefine yy* identifiers.
7384
7385 2018-06-01  Tom Tromey  <tom@tromey.com>
7386
7387         * python/py-type.c (typy_legacy_template_argument): Update.
7388         * cp-support.h (cp_demangled_name_to_comp): Update.
7389         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7390         parameter to be a "std::string *".
7391         (main): Update.
7392
7393 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7394
7395         * ada-lex.l: Include "diagnostics.h" instead of
7396         "common/diagnostics.h".
7397         * unittests/environ-selftests.c: Likewise.
7398         * common/diagnostics.h: Moved to ../include.
7399
7400 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7401
7402         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7403         to language_mode_manual while calling breakpoint_re_set_one.
7404
7405 2018-06-01  Tom Tromey  <tom@tromey.com>
7406
7407         * valops.c (value_cast_structs, destructor_name_p): Update.
7408         * symtab.c (gdb_mangle_name): Update.
7409         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7410         Update.
7411         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7412         (pascal_object_print_value_fields, pascal_object_print_value):
7413         Update.
7414         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7415         * linespec.c (find_methods): Update.
7416         * gdbtypes.h (type_name_no_tag): Remove.
7417         (type_name_or_error): Rename from type_name_no_tag_or_error.
7418         * gdbtypes.c (type_name_no_tag): Remove.
7419         (type_name_or_error): Rename from type_name_no_tag_or_error.
7420         (lookup_struct_elt_type, check_typedef): Update.
7421         * expprint.c (print_subexp_standard): Update.
7422         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7423         * d-namespace.c (d_lookup_nested_symbol): Update.
7424         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7425         (cp_print_class_member): Update.
7426         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7427         * completer.c (add_struct_fields): Update.
7428         * c-typeprint.c (cp_type_print_derivation_info)
7429         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7430         Update.
7431         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7432         (ada_prefer_type, ada_is_exception_sym): Update.
7433
7434 2018-06-01  Tom Tromey  <tom@tromey.com>
7435
7436         * valops.c (enum_constant_from_type, value_namespace_elt)
7437         (value_maybe_namespace_elt): Update.
7438         * valarith.c (find_size_for_pointer_math): Update.
7439         * target-descriptions.c (make_gdb_type): Update.
7440         * symmisc.c (print_symbol): Update.
7441         * stabsread.c (define_symbol, read_type)
7442         (complain_about_struct_wipeout, add_undefined_type)
7443         (cleanup_undefined_types_1): Update.
7444         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7445         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7446         (rust_internal_print_type, rust_composite_type)
7447         (rust_evaluate_funcall, rust_evaluate_subexp)
7448         (rust_inclusive_range_type_p): Update.
7449         * python/py-type.c (typy_get_tag): Update.
7450         * p-typeprint.c (pascal_type_print_base): Update.
7451         * mdebugread.c (parse_symbol, parse_type): Update.
7452         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7453         Update.
7454         * guile/scm-type.c (gdbscm_type_tag): Update.
7455         * go-lang.c (sixg_string_p): Update.
7456         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7457         Update.
7458         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7459         (TYPE_TAG_NAME): Remove.
7460         * gdbtypes.c (type_name_no_tag): Simplify.
7461         (check_typedef, check_types_equal, recursive_dump_type)
7462         (copy_type_recursive, arch_composite_type): Update.
7463         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7464         in summary mode when needed.
7465         * eval.c (evaluate_funcall): Update.
7466         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7467         (process_structure_scope, read_enumeration_type)
7468         (read_namespace_type, read_module_type, determine_prefix): Update.
7469         * cp-support.c (inspect_type): Update.
7470         * coffread.c (process_coff_symbol, decode_base_type): Update.
7471         * c-varobj.c (c_is_path_expr_parent): Update.
7472         * c-typeprint.c (c_type_print_base_struct_union): Update.
7473         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7474         summary when using C language.
7475         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7476         (gen_maybe_namespace_elt): Update.
7477         * ada-lang.c (ada_type_name): Simplify.
7478         (empty_record, ada_template_to_fixed_record_type_1)
7479         (template_to_static_fixed_type)
7480         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7481
7482 2018-06-01  Tom Tromey  <tom@tromey.com>
7483
7484         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7485         c_print_type.
7486         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7487         (c_print_type): Update.
7488         (c_print_type): New overload.
7489         (c_type_print_varspec_prefix, c_type_print_args)
7490         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7491         (c_type_print_base_struct_union, c_type_print_base_1)
7492         (cp_type_print_method_args): Add "language" parameter.
7493         (c_type_print_base): Update.
7494         * c-lang.h (c_print_type): Add new overload.
7495
7496 2018-06-01  Tom Tromey  <tom@tromey.com>
7497
7498         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7499         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7500
7501 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7502
7503         * aarch64-tdep.c (aarch64_sve_register_names): New const
7504         var.
7505         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7506         (AARCH64_SVE_Z_REGS_NUM): New define.
7507         (AARCH64_SVE_P_REGS_NUM): Likewise.
7508         (AARCH64_SVE_NUM_REGS): Likewise.
7509
7510 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7511
7512         * nat/linux-ptrace.h [__alpha__]
7513         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7514         definitions.
7515
7516 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7517
7518         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7519         the endianness selected.
7520         * NEWS: Document `set endian auto' mode operation update.
7521
7522 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7523
7524         * Makefile.in: Add new header.
7525         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7526         (sve_vl_from_vg): Likewise.
7527         (sve_vq_from_vl): Likewise.
7528         (sve_vl_from_vq): Likewise.
7529         (sve_vq_from_vg): Likewise.
7530         (sve_vg_from_vq): Likewise.
7531         * configure.nat: Add new c file.
7532         * nat/aarch64-sve-linux-ptrace.c: New file.
7533         * nat/aarch64-sve-linux-ptrace.h: New file.
7534
7535 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7536
7537         * aarch64-linux-nat.c (aarch64_linux_read_description):
7538         Add parmeter zero.
7539         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7540         Likewise.
7541         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7542         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7543         (aarch64_gdbarch_init): Add parmeter zero.
7544         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7545         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7546         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7547         parmeter.
7548         * doc/gdb.texinfo: Describe SVE feature
7549         * features/aarch64-sve.c: New file.
7550
7551 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7552
7553         PR gdb/23210
7554         * gdbarch.sh (significant_addr_bit): Default to zero when
7555         not set by target architecture.
7556         * gdbarch.c: Re-generated.
7557         * utils.c (address_significant): Update.
7558
7559 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7560
7561         * stack.c (func_command): Remove trailing newline in call to error.
7562
7563 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7564
7565         * regcache.h (regcache_raw_collect): Remove, update callers to
7566         use regcache::raw_collect.
7567         * regcache.c (regcache_raw_collect): Remove.
7568
7569 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7570
7571         * regcache.h (regcache_raw_supply): Remove, update callers to
7572         use detached_regcache::raw_supply.
7573         * regcache.c (regcache_raw_supply): Remove.
7574
7575 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7576
7577         * regcache.h (regcache_cooked_write_part): Remove, update
7578         callers to use regcache::cooked_write_part.
7579         * regcache.c (regcache_cooked_write_part): Remove.
7580
7581 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7582
7583         * regcache.h (regcache_cooked_read_part): Remove, update callers
7584         to use readable_regcache::cooked_read_part.
7585         * regcache.c (regcache_cooked_read_part): Remove.
7586
7587 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7588
7589         * regcache.h (regcache_cooked_read_value): Remove, update
7590         callers to use readable_regcache::cooked_read_value.
7591         * regcache.c (regcache_cooked_read_value): Remove.
7592
7593 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7594
7595         * regcache.h (regcache_cooked_write): Remove, update callers to
7596         use regcache::cooked_write.
7597         * regcache.c (regcache_cooked_write): Remove.
7598
7599 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7600
7601         * regcache.h (regcache_invalidate): Remove, update callers to
7602         use detached_regcache::invalidate instead.
7603         * regcache.c (regcache_invalidate): Remove.
7604
7605 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7606
7607         * regcache.h (regcache_raw_write_part): Remove, update callers
7608         to use regcache::raw_write_part instead.
7609         * regcache.c (regcache_raw_write_part): Remove.
7610
7611 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7612
7613         * regcache.h (regcache_raw_read_part): Remove, update callers to
7614         use readable_regcache::raw_read_part instead.
7615         * regcache.c (regcache_raw_read_part): Remove.
7616
7617 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7618
7619         * regcache.h (regcache_cooked_read): Remove, update callers to
7620         use readable_regcache::cooked_read instead.
7621         * regcache.c (regcache_cooked_read): Remove.
7622
7623 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7624
7625         * regcache.h (regcache_raw_write): Remove, update callers to use
7626         regcache::raw_write instead.
7627         * regcache.c (regcache_raw_write): Remove.
7628
7629 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7630
7631         * regcache.h (regcache_raw_read): Remove, update callers to use
7632         readable_regcache::raw_read instead.
7633         * regcache.c (regcache_raw_read): Remove.
7634
7635 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7636
7637         * regcache.h (regcache_raw_update): Remove, update callers to
7638         use readable_regcache::raw_update instead.
7639         * regcache.c (regcache_raw_update): Remove.
7640
7641 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7642
7643         * regcache.h (regcache_register_status): Remove, update callers
7644         to use reg_buffer::get_register_status directly instead.
7645         * regcache.c (regcache_register_status): Remove.
7646
7647 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7648
7649         * regcache.h (regcache_get_ptid): Remove, update all callers to
7650         call regcache::ptid instead.
7651         * regcache.c (regcache_get_ptid): Remove.
7652
7653 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7654
7655         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7656
7657 2018-05-30  Pedro Alves  <palves@redhat.com>
7658
7659         * common/common-exceptions.h (exception_rethrow): Use
7660         ATTRIBUTE_NORETURN.
7661
7662 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7663
7664         * breakpoint.c (print_solib_event, check_status_catch_solib):
7665         Remove struct keyword in range-based for loops.
7666         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7667         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7668         Likewise.
7669         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7670         Likewise.
7671         * symfile.c (addr_info_make_relative): Likewise.
7672         * thread.c (value_in_thread_stack_temporaries): Likewise.
7673
7674 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7675
7676         PR gdb/16841
7677         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7678         aggregate type to get its real type before accessing it.
7679
7680 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7681
7682         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7683         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7684         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7685         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7686         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7687         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7688         * printcmd.c (info_address_command): Likewise.
7689
7690 2018-05-29  Tom Tromey  <tom@tromey.com>
7691
7692         * windows-nat.c (handle_exception): Update fall-through comment.
7693
7694 2018-05-29  Tom Tromey  <tom@tromey.com>
7695
7696         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7697         (struct program_space) <added_solibs>: Now a std::vector.
7698         * breakpoint.c (print_solib_event): Update.
7699         (check_status_catch_solib): Update.
7700         * progspace.c (clear_program_space_solib_cache): Update.
7701         * solib.c (update_solib_list): Update.
7702
7703 2018-05-29  Tom Tromey  <tom@tromey.com>
7704
7705         * python/py-type.c (typy_richcompare): Update.
7706         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7707         * gdbtypes.h (types_deeply_equal): Return bool.
7708         (types_equal): Likewise.
7709         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7710         declare VEC.
7711         (check_types_equal): Change worklist to std::vector.  Return
7712         bool.
7713         (struct type_equality_entry): Add constructor.
7714         (compare_maybe_null_strings): Return bool.
7715         (check_types_worklist): Return bool.  Change worklist to
7716         std::vector.
7717         (types_deeply_equal): Use std::vector.
7718         (types_equal): Return bool.
7719         (compare_maybe_null_strings): Simplify.
7720
7721 2018-05-29  Tom Tromey  <tom@tromey.com>
7722
7723         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7724
7725 2018-05-29  Tom Tromey  <tom@tromey.com>
7726
7727         * objc-lang.h: Don't include cp-support.h.
7728         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7729         declare VEC.
7730
7731 2018-05-27  Tom Tromey  <tom@tromey.com>
7732
7733         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7734
7735 2018-05-25  Tom Tromey  <tom@tromey.com>
7736
7737         * value.c (value::location): Initialize.
7738
7739 2018-05-25  Tom Tromey  <tom@tromey.com>
7740
7741         * dbxread.c (init_bincl_list): Remove.
7742         (bincl_list): Now a std::vector.
7743         (bincls_allocated, next_bincl): Remove.
7744         (free_bincl_list, do_free_bincl_list_cleanup)
7745         (make_cleanup_free_bincl_list): Remove.
7746         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7747         unique_xmalloc_ptr.
7748         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7749         (struct header_file_location): Add constructor.
7750         (add_bincl_to_list): Remove.
7751
7752 2018-05-25  Tom Tromey  <tom@tromey.com>
7753
7754         * tui/tui.c (tui_enable): Update.
7755         * mi/mi-interp.c (mi_interp::init): Update.
7756         * interps.h (class interp) <name>: New method.
7757         <m_name>: Rename from name.
7758         (~scoped_restore_interp): Update.
7759         * interps.c (interp::interp): Update.
7760         (interp_add, interp_set, interp_lookup_existing)
7761         (current_interp_named_p): Update.
7762
7763 2018-05-25  Tom Tromey  <tom@tromey.com>
7764
7765         * interps.c (interp_name): Remove.
7766         * mi/mi-interp.c (mi_interp::init): Update.
7767         * interps.h (interp_name): Remove.
7768         (~scoped_restore_interp): Update.
7769         * tui/tui.c (tui_enable): Update.
7770
7771 2018-05-25  Tom Tromey  <tom@tromey.com>
7772
7773         * utils.c (fputs_maybe_filtered): Update.
7774         * linespec.c (decode_line_full): Update.
7775         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7776         (mi_print_breakpoint_for_event, mi_solib_loaded)
7777         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7778         (mi_user_selected_context_changed): Update.
7779         * mi/mi-main.c (mi_execute_command): Update.
7780         * cli/cli-script.c (execute_control_command): Update.
7781         * python/python.c (execute_gdb_command): Update.
7782         * solib.c (info_sharedlibrary_command): Update.
7783         * interps.c (interp_ui_out): Remove.
7784         * interps.h (interp_ui_out): Remove.
7785
7786 2018-05-25  Tom Tromey  <tom@tromey.com>
7787
7788         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7789         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7790         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7791
7792 2018-05-25  Tom Tromey  <tom@tromey.com>
7793
7794         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7795         * interps.c (interp_exec): Use scoped_restore.
7796
7797 2018-05-25  Tom Tromey  <tom@tromey.com>
7798
7799         * remote.c (remote_target::remote_file_get): Use
7800         gdb::byte_vector.
7801         (remote_target::remote_file_put): Likewise.
7802
7803 2018-05-25  Tom Tromey  <tom@tromey.com>
7804
7805         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7806         a std::string.
7807         (get_pe_section_index, add_pe_exported_sym): Update.
7808         (read_pe_exported_syms): Use gdb::def_vector.
7809
7810 2018-05-25  Tom Tromey  <tom@tromey.com>
7811
7812         * frame.c (remove_prev_frame): Remove.
7813         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7814
7815 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7816
7817         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7818         Remove prototypes.
7819         * mips-linux-nat.c (supply_fpregset): Always call
7820         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7821         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7822         `mips_fill_fpregset'.
7823         * mips-linux-tdep.c (mips_supply_fpregset)
7824         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7825         (mips_fill_fpregset_wrapper): Remove functions.
7826         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7827         (mips_linux_fpregset): Remove variable.
7828         (mips_linux_iterate_over_regset_sections): Use
7829         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7830         (mips_linux_o32_sigframe_init): Remove comment.
7831
7832 2018-05-25  Pedro Alves  <palves@redhat.com>
7833
7834         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7835         (struct readahead_cache, struct packet_reg, struct
7836         remote_arch_state, class remote_state): Move higher up in the
7837         file.
7838         (remote_target::m_remote_state): Now an object instead of a pointer.
7839         (remote_target::get_remote_state): Adjust.
7840
7841 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7842
7843         * stack.c (select_and_print_frame): Delete.
7844         (struct function_bounds): Move struct within function.
7845         (func_command): Most content moved into new function
7846         find_frame_for_function, use new function, print result, add
7847         function comment.
7848         (find_frame_for_function): New function, now returns a result.
7849
7850 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7851
7852         * stack.c (iterate_over_block_arg_vars): Fix comment.
7853         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7854
7855 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7856
7857         PR gdb/23203
7858         * frame.c
7859         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7860         Define.
7861         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7862         Define.
7863         * frame.h (class scoped_restore_selected_frame): New class.
7864         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7865         of any exception, use scoped_restore_selected_frame to restore the
7866         frame instead.
7867
7868 2018-05-24  Pedro Alves  <palves@redhat.com>
7869
7870         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7871         override.
7872
7873 2018-05-23  Tom Tromey  <tom@tromey.com>
7874
7875         * complaints.c (struct complaints): Remove.
7876         (symfile_complaint_book): Remove.
7877         (series): New global.
7878         (complaint_internal): Update.
7879         (clear_complaints): Update.
7880
7881 2018-05-23  Tom Tromey  <tom@tromey.com>
7882
7883         * complaints.c (counters): New global.
7884         (struct complain): Remove.
7885         (struct complaints) <root>: Remove.
7886         (complaint_sentinel): Remove.
7887         (symfile_complaint_book): Update.
7888         (find_complaint) Remove.
7889         (complaint_internal, clear_complaints): Update.
7890
7891 2018-05-23  Tom Tromey  <tom@tromey.com>
7892
7893         * complaints.c (struct complain) <file, line>: Remove.
7894         (find_complaint): Remove file, line parameters.
7895         (complaint_internal): Update.
7896
7897 2018-05-23  Tom Tromey  <tom@tromey.com>
7898
7899         * complaints.c (vcomplaint): Remove.
7900         (complaint_internal) Merge in contents of vcomplaint.
7901
7902 2018-05-23  Tom Tromey  <tom@tromey.com>
7903
7904         * complaints.c (struct complaints) <explanation>: Remove.
7905         (symfile_explanations): Remove.
7906         (symfile_complaint_book): Update.
7907         (vcomplaint): Update.
7908         (struct explanation): Remove.
7909
7910 2018-05-23  Tom Tromey  <tom@tromey.com>
7911
7912         * complaints.c (symfile_complaints): Remove.
7913         (complaint_internal): Remove "complaints" parameter.
7914         (clear_complaints, vcomplaint): Remove "c" parameter.
7915         (get_complaints): Remove.
7916         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7917         (dwarf2_debug_line_missing_file_complaint)
7918         (dwarf2_debug_line_missing_end_sequence_complaint)
7919         (dwarf2_complex_location_expr_complaint)
7920         (dwarf2_const_value_length_mismatch_complaint)
7921         (dwarf2_section_buffer_overflow_complaint)
7922         (dwarf2_macro_malformed_definition_complaint)
7923         (dwarf2_invalid_attrib_class_complaint)
7924         (create_addrmap_from_index, dw2_symtab_iter_next)
7925         (dw2_expand_marked_cus)
7926         (dw2_debug_names_iterator::find_vec_in_debug_names)
7927         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7928         (create_debug_type_hash_table, init_cutu_and_read_dies)
7929         (partial_die_parent_scope, add_partial_enumeration)
7930         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7931         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7932         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7933         (create_cus_hash_table, create_dwp_hash_table)
7934         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7935         (dwarf2_rnglists_process, dwarf2_ranges_process)
7936         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7937         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7938         (handle_struct_member_die, process_structure_scope)
7939         (read_array_type, read_common_block, read_module_type)
7940         (read_tag_pointer_type, read_typedef, read_base_type)
7941         (read_subrange_type, load_partial_dies, partial_die_info::read)
7942         (partial_die_info::read, partial_die_info::read)
7943         (partial_die_info::read, read_checked_initial_length_and_offset)
7944         (dwarf2_string_attr, read_formatted_entries)
7945         (dwarf_decode_line_header)
7946         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7947         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7948         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7949         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7950         (get_signatured_type, get_DW_AT_signature_type)
7951         (decode_locdesc, file_file_name, consume_improper_spaces)
7952         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7953         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7954         (dwarf2_symbol_mark_computed, set_die_type)
7955         (read_attribute_value): Update.
7956         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7957         Update.
7958         * dbxread.c (unknown_symtype_complaint)
7959         (lbrac_mismatch_complaint, repeated_header_complaint)
7960         (set_namestring, function_outside_compilation_unit_complaint)
7961         (read_dbx_symtab, process_one_symbol): Update.
7962         * gdbtypes.c (stub_noname_complaint): Update.
7963         * windows-nat.c (handle_unload_dll): Update.
7964         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7965         (decode_base_type): Update.
7966         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7967         (eb_complaint, record_include_begin, record_include_end)
7968         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7969         (process_xcoff_symbol, read_symbol)
7970         (function_outside_compilation_unit_complaint)
7971         (scan_xcoff_symtab): Update.
7972         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7973         * buildsym.c (finish_block_internal, make_blockvector)
7974         (end_symtab_get_static_block, augment_type_symtab): Update.
7975         * dtrace-probe.c (dtrace_process_dof)
7976         (dtrace_static_probe_ops::get_probes): Update.
7977         * complaints.h (struct complaint): Don't declare.
7978         (symfile_complaints): Remove.
7979         (complaint_internal): Remove "complaints" parameter.
7980         (complaint): Likewise.
7981         (clear_complaints): Likewise.
7982         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7983         (reread_symbols): Update.
7984         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7985         (dwarf2_frame_cache, decode_frame_entry): Update.
7986         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7987         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7988         (info_selectors_command): Update.
7989         * macrotab.c (macro_include, check_for_redefinition)
7990         (macro_undef): Update.
7991         * objfiles.c (filter_overlapping_sections): Update.
7992         * stabsread.c (invalid_cpp_abbrev_complaint)
7993         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7994         (define_symbol, error_type, read_type, rs6000_builtin_type)
7995         (stabs_method_name_from_physname, read_member_functions)
7996         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7997         (attach_fields_to_type, complain_about_struct_wipeout)
7998         (read_range_type, read_args, common_block_start)
7999         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8000         Update.
8001         * mdebugread.c (index_complaint, unknown_ext_complaint)
8002         (basic_type_complaint, bad_tag_guess_complaint)
8003         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8004         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8005         (parse_procedure, parse_lines)
8006         (function_outside_compilation_unit_complaint)
8007         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8008         (bad_tag_guess_complaint, reg_value_complaint): Update.
8009         * cp-support.c (demangled_name_complaint): Update.
8010         * macroscope.c (sal_macro_scope): Update.
8011         * dwarf-index-write.c (class debug_names): Update.
8012
8013 2018-05-23  Tom Tromey  <tom@tromey.com>
8014
8015         * complaints.c (clear_complaints): Remove "noisy" parameter.
8016         * complaints.h (clear_complaints): Update.
8017         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8018         (reread_symbols): Update.
8019
8020 2018-05-23  Tom Tromey  <tom@tromey.com>
8021
8022         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8023         SUBSEQUENT_MESSAGE.
8024         (vcomplaint, clear_complaints): Update.
8025         (symfile_explanations): Remove some messages.
8026
8027 2018-05-23  Tom Tromey  <tom@tromey.com>
8028
8029         * complaints.c (internal_complaint): Remove.
8030         * complaints.h (internal_complaint): Remove.
8031
8032 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8033
8034         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8035
8036 2018-05-22  Pedro Alves  <palves@redhat.com>
8037
8038         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8039         (remote_fileio_badfd, remote_fileio_return_errno)
8040         (remote_fileio_return_success, remote_fileio_func_open)
8041         (remote_fileio_func_open, remote_fileio_func_close)
8042         (remote_fileio_func_read, remote_fileio_func_write)
8043         (remote_fileio_func_lseek, remote_fileio_func_rename)
8044         (remote_fileio_func_unlink, remote_fileio_func_stat)
8045         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8046         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8047         remote_target parameter.
8048         (remote_fio_func_map) <func>: Add remote_target parameter.
8049         (do_remote_fileio_request, remote_fileio_request):
8050         * remote-fileio.h (remote_fileio_request):
8051         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8052         remote_target parameter.
8053         (remote_notif_process, handle_notification): Adjust to pass down
8054         the remote.
8055         (remote_notif_state_allocate): Add remote_target parameter.  Save
8056         it.
8057         * remote-notif.h (struct remote_target): Forward declare.
8058         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8059         remote_target parameter.
8060         (struct remote_notif_state) <remote>: New field.
8061         (remote_notif_ack, remote_notif_parse): Add remote_target
8062         parameter.
8063         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8064         remote_target parameter.
8065         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8066         (threads_listing_context, rmt_thread_action, protocol_feature)
8067         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8068         (packet_result, struct threads_listing_context, remote_state):
8069         Move definitions and declarations higher up.
8070         (remote_target) <~remote_target>: Declare.
8071         (remote_download_command_source, remote_file_put, remote_file_get)
8072         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8073         (remote_hostio_pread_vFile, remote_hostio_send_command)
8074         (remote_hostio_set_filesystem, remote_hostio_open)
8075         (remote_hostio_close, remote_hostio_unlink, remote_state)
8076         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8077         (get_memory_write_packet_size, get_memory_read_packet_size)
8078         (append_pending_thread_resumptions, remote_detach_1)
8079         (append_resumption, remote_resume_with_vcont)
8080         (add_current_inferior_and_thread, wait_ns, wait_as)
8081         (process_stop_reply, remote_notice_new_inferior)
8082         (process_initial_stop_replies, remote_add_thread)
8083         (btrace_sync_conf, remote_btrace_maybe_reopen)
8084         (remove_new_fork_children, kill_new_fork_children)
8085         (discard_pending_stop_replies, stop_reply_queue_length)
8086         (check_pending_events_prevent_wildcard_vcont)
8087         (discard_pending_stop_replies_in_queue, stop_reply)
8088         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8089         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8090         (remote_interrupt_as, remote_interrupt_ns)
8091         (remote_get_noisy_reply, remote_query_attached)
8092         (remote_add_inferior, remote_current_thread, get_current_thread)
8093         (set_thread, set_general_thread, set_continue_thread)
8094         (set_general_process, write_ptid)
8095         (remote_unpack_thread_info_response, remote_get_threadinfo)
8096         (parse_threadlist_response, remote_get_threadlist)
8097         (remote_threadlist_iterator, remote_get_threads_with_ql)
8098         (remote_get_threads_with_qxfer)
8099         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8100         (get_offsets, remote_check_symbols, remote_supported_packet)
8101         (remote_query_supported, remote_packet_size)
8102         (remote_serial_quit_handler, remote_detach_pid)
8103         (remote_vcont_probe, remote_resume_with_hc)
8104         (send_interrupt_sequence, interrupt_query)
8105         (remote_notif_get_pending_events, fetch_register_using_p)
8106         (send_g_packet, process_g_packet, fetch_registers_using_g)
8107         (store_register_using_P, store_registers_using_G)
8108         (set_remote_traceframe, check_binary_download)
8109         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8110         (remote_xfer_live_readonly_partial, remote_read_bytes)
8111         (remote_send_printf, remote_flash_write, readchar)
8112         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8113         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8114         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8115         (extended_remote_disable_randomization, extended_remote_run)
8116         (send_environment_packet, extended_remote_environment_support)
8117         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8118         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8119         (packet_command): Now methods of ...
8120         (remote_target): ... this class.
8121         (m_remote_state) <remote_target>: New field.
8122         (struct remote_state) <stop_reply_queue,
8123         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8124         fields.
8125         (remote_state::remote_state): Allocate stop_reply_queue.
8126         (remote_state): Delete global.
8127         (get_remote_state_raw): Delete.
8128         (remote_target::get_remote_state): Allocate m_remote_state on
8129         demand.
8130         (get_current_remote_target): New.
8131         (remote_ops, extended_remote_ops): Delete.
8132         (wait_forever_enabled_p, remote_async_inferior_event_token):
8133         Delete, moved to struct remote_state.
8134         (remote_target::close): Delete self.  Destruction bits split to
8135         ...
8136         (remote_target::~remote_target): ... this.
8137         (show_memory_packet_size): Adjust to use
8138         get_current_remote_target.
8139         (struct protocol_feature) <func>: Add remote_target parameter.
8140         All callers adjusted.
8141         (curr_quit_handler_target): New.
8142         (remote_serial_quit_handler): Reimplement.
8143         (remote_target::open_1): Adjust to use get_current_remote_target.
8144         Heap-allocate remote_target/extended_remote_target instances.
8145         (vcont_builder::vcont_builder): Add remote_target parameter, and
8146         save it in m_remote.  All callers adjusted.
8147         (vcont_builder::m_remote): New field.
8148         (vcont_builder::restart, vcont_builder::flush)
8149         (vcont_builder::push_action): Use it.
8150         (remote_target::commit_resume): Use it.
8151         (struct queue_iter_param) <remote>: New field.
8152         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8153         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8154         (check_pending_event_prevents_wildcard_vcont_callback)
8155         (remote_target::check_pending_events_prevent_wildcard_vcont)
8156         (remote_target::discard_pending_stop_replies)
8157         (remote_target::discard_pending_stop_replies_in_queue)
8158         (remote_target::remote_notif_remove_queued_reply): Fill in
8159         'remote' field.
8160         (remote_notif_get_pending_events): New.
8161         (remote_target::readchar, remote_target::remote_serial_write):
8162         Save/restore curr_quit_handler_target.
8163         (putpkt): New.
8164         (kill_new_fork_children): Fill in 'remote' field.
8165         (packet_command): Use get_current_remote_target, defer to
8166         remote_target method of same name.
8167         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8168         parameter, and save it in m_remote.  All callers adjusted.
8169         (scoped_remote_fd::release): Use m_remote.
8170         (scoped_remote_fd::m_remote): New field.
8171         (remote_file_put, remote_file_get, remote_file_delete): Use
8172         get_current_remote_target, defer to remote_target method of same
8173         name.
8174         (remote_btrace_reset): Add remote_state paremeter.  Update all
8175         callers.
8176         (remote_async_inferior_event_handler). Pass down 'data'.
8177         (remote_new_objfile): Use get_current_remote_target.
8178         (remote_target::vcont_r_supported): New.
8179         (set_range_stepping): Use get_current_remote_target and
8180         remote_target::vcont_r_supported.
8181         (_initialize_remote): Don't allocate 'remote_state' and
8182         'stop_reply_queue' globals.
8183         * remote.h (struct remote_target): Forward declare.
8184         (getpkt, putpkt, remote_notif_get_pending_events): Add
8185         'remote_target' parameter.
8186
8187 2018-05-22  Pedro Alves  <palves@redhat.com>
8188
8189         * remote.c (vcont_builder): Now a class.  Make all data members
8190         private.
8191         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8192         Declare methods.
8193         (vcont_builder_restart): Rename to ...
8194         (vcont_builder::restart): ... this.
8195         (vcont_builder_flush): Rename to ...
8196         (vcont_builder::flush): ... this.
8197         (vcont_builder_push_action): Rename to ...
8198         (vcont_builder::push_action): ... this.
8199         (remote_target::commit_resume): Adjust.
8200
8201 2018-05-22  Pedro Alves  <palves@redhat.com>
8202
8203         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8204         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8205         (get_fixed_memory_packet_size): New.
8206         (get_memory_packet_size): Use it.
8207         (set_memory_packet_size): Don't override the config size with
8208         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8209         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8210         Don't refer to get_memory_packet_size if not connected to a remote
8211         target.  Show "(default)" if configured size is 0.
8212
8213 2018-05-22  Pedro Alves  <palves@redhat.com>
8214
8215         * remote.c (remote_target::mourn_inferior): Move
8216         discard_pending_stop_replies call here from ...
8217         (_initialize_remote): ... here.
8218
8219 2018-05-22  Pedro Alves  <palves@redhat.com>
8220
8221         * remote.c (compare_section_command): Remove set_general_process
8222         call.
8223
8224 2018-05-22  Pedro Alves  <palves@redhat.com>
8225
8226         * remote.c (struct packet_reg, struct remote_arch_state):
8227         Move higher up in the file.
8228         (remote_state) <m_arch_states>: Store remote_arch_state values
8229         instead of remote_arch_state pointers.
8230         (remote_state::get_remote_arch_state): Adjust.
8231
8232 2018-05-22  Pedro Alves  <palves@redhat.com>
8233
8234         * remote.c: Include <unordered_map>.
8235         (remote_state): Now a class.
8236         (remote_state) <get_remote_arch_state>: Declare method.
8237         <get_remote_arch_state>: New field.
8238         (remote_arch_state) <remote_arch_state>: Declare ctor.
8239         <regs>: Now a unique_ptr.
8240         (remote_gdbarch_data_handle): Delete.
8241         (get_remote_arch_state): Delete.
8242         (remote_state::get_remote_arch_state): New.
8243         (get_remote_state): Adjust to call remote_state's
8244         get_remote_arch_state method.
8245         (init_remote_state): Delete, bits factored out to ...
8246         (remote_arch_state::remote_arch_state): ... this new method.
8247         (get_remote_packet_size, get_memory_packet_size)
8248         (process_g_packet, remote_target::fetch_registers)
8249         (remote_target::prepare_to_store, store_registers_using_G)
8250         (remote_target::store_registers, remote_target::get_trace_status):
8251         Adjust to call remote_state's method.
8252         (_initialize_remote): Remove reference to
8253         remote_gdbarch_data_handle.
8254
8255 2018-05-22  Pedro Alves  <palves@redhat.com>
8256
8257         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8258         pread>: New method declarations.
8259         (remote_target::open_1): Adjust.
8260         (readahead_cache_invalidate): Rename to ...
8261         (readahead_cache::invalidate): ... this, and adjust to be a class
8262         method.
8263         (readahead_cache_invalidate_fd): Rename to ...
8264         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8265         class method.
8266         (remote_hostio_pwrite): Adjust.
8267         (remote_hostio_pread_from_cache): Rename to ...
8268         (readahead_cache::pread): ... this, and adjust to be a class
8269         method.
8270         (remote_hostio_close): Adjust.
8271
8272 2018-05-22  Pedro Alves  <palves@redhat.com>
8273
8274         * remote.c (remote_hostio_close_cleanup): Delete.
8275         (class scoped_remote_fd): New.
8276         (remote_file_put, remote_file_get): Use it.
8277
8278 2018-05-22  Pedro Alves  <palves@redhat.com>
8279
8280         (struct vCont_action_support): Use bool and initialize all fields.
8281         (struct readahead_cache): Initialize all fields.
8282         (remote_state): Use bool and initialize all fields.
8283         (remote_state::remote_state, remote_state::~remote_state): New.
8284         (new_remote_state): Delete.
8285         (_initialize_remote): Use new to allocate remote_state.
8286
8287 2018-05-22  Pedro Alves  <palves@redhat.com>
8288             張俊芝  <zjz@zjz.name>
8289
8290         PR gdb/22973
8291         * c-exp.y: Include "c-support.h".
8292         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8293         of tolower.  Use c_ident_is_alpha to scan names.
8294         * c-lang.c: Include "c-support.h".
8295         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8296         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8297         * c-support.h: New file, with bits factored out from ...
8298         * cp-name-parser.y: ... this file.
8299         Include "c-support.h".
8300         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8301         c-support.h and renamed.
8302         (symbol_end, yylex): Adjust.
8303
8304 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8305
8306         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8307         parameter type to CORE_ADDR.
8308         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8309         parameter type in declaration to CORE_ADDR.
8310         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8311         target_auxv_search to get AT_HWCAP and use the result to get the
8312         target description.
8313         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8314         to CORE_ADDR. Remove the cast of the return value to unsigned
8315         long. Fix error predicate of target_auxv_search.
8316         (ppc_linux_nat_target::read_description): Change the type of the
8317         hwcap variable to CORE_ADDR.
8318
8319 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8320
8321         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8322         if the size of fpscr is larger than 32 bits.
8323
8324 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8325
8326         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8327         (ppc32_linux_vsxregmap): New global.
8328         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8329         regcache_supply_regset, and regcache_collect_regset.
8330         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8331         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8332         (fetch_vsx_register, store_vsx_register): Remove.
8333         (fetch_vsx_registers): Add regno parameter. Get regset using
8334         ppc_linux_vsxregset. Use regset to supply registers.
8335         (store_vsx_registers): Add regno parameter. Get regset using
8336         ppc_linux_vsxregset. Use regset to collect registers.
8337         (fetch_register): Call fetch_vsx_registers instead of
8338         fetch_vsx_register.
8339         (store_register): Call store_vsx_registers instead of
8340         store_vsx_register.
8341         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8342         new regno parameter.
8343         (store_ppc_registers): Call store_vsx_registers with -1 for the
8344         new regno parameter.
8345         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8346         (ppc_collect_vsxregset): Remove.
8347
8348 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8349
8350         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8351         offset fields.
8352         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8353         for vector register offset fields.
8354         (ppc64_fbsd_reg_offsets): Likewise.
8355         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8356         to vector register offset fields.
8357         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8358         to vector register offset fields.
8359         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8360         vector register offset fields.
8361         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8362         initializers for vector register offset fields.
8363         (rs6000_aix64_reg_offsets): Likewise.
8364         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8365         (ppc_supply_vrregset): Remove.
8366         (ppc_collect_vrregset): Remove.
8367         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8368         (ppc_linux_vrregset) : New function.
8369         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8370         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8371         (ppc32_linux_vrregset): Remove.
8372         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8373         and use result instead of ppc32_linux_vrregset.
8374         (ppc32_linux_reg_offsets): Remove initializers for vector register
8375         offset fields.
8376         (ppc64_linux_reg_offsets): Likewise.
8377         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8378         * ppc-linux-nat.c: Include regset.h.
8379         (gdb_vrregset_t): Adjust comment to account for little-endian
8380         mode.
8381         (supply_vrregset, fill_vrregset): Remove.
8382         (fetch_altivec_register, store_altivec_register): Remove.
8383         (fetch_altivec_registers): Add regno parameter. Get regset using
8384         ppc_linux_vrregset. Use regset to supply registers.
8385         (store_altivec_registers): Add regno parameter. Get regset using
8386         ppc_linux_vrregset. Use regset to collect registers.
8387         (fetch_register): Call fetch_altivec_registers instead of
8388         fetch_altivec_register.
8389         (store_register): Call store_altivec_registers instead of
8390         store_altivec_register.
8391         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8392         the new regno parameter.
8393         (store_ppc_registers): Call store_altivec_registers with -1 for
8394         the new regno parameter.
8395
8396 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8397
8398         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8399         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8400         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8401         (gdb_vrregset_t): Change array type size to
8402         PPC_LINUX_SIZEOF_VRREGSET.
8403         (gdb_vsxregset_t): Change array type size to
8404         PPC_LINUX_SIZEOF_VSXREGSET.
8405         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8406         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8407         PPC_LINUX_SIZEOF_VSXREGSET.
8408
8409 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8410
8411         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8412         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8413         nat/ppc-linux.c.
8414         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8415         ppc_linux_target_wordsize with tid.
8416         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8417         wordsize with tid.
8418         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8419         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8420         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8421         tid parameter. Remove static specifier.
8422         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8423         (ppc_linux_target_wordsize): New declaration.
8424
8425 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8426
8427         * arch/ppc-linux-common.c: New file.
8428         * arch/ppc-linux-common.h: New file.
8429         * arch/ppc-linux-tdesc.h: New file.
8430         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8431         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8432         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8433         arch/ppc-linux-tdesc.h.
8434         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8435         arch/ppc-linux-tdesc.h.
8436         (ppc_linux_nat_target::read_description): Remove target
8437         description matching code. Fill a ppc_linux_features struct and
8438         call ppc_linux_match_description with it. Move comment about ISA
8439         2.05 to ppc-linux-common.c.
8440         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8441         arch/ppc-linux-tdesc.h.
8442         (ppc_linux_core_read_description): Remove target description
8443         matching code. Fill a ppc_linux_features struct and call
8444         ppc_linux_match_description with it.
8445         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8446         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8447         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8448         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8449         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8450         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8451         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8452         (tdesc_powerpc_e500l): Remove.
8453
8454 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8455
8456         * ada-lang.c (catch_assert_command): Pass empty string instead
8457         of NULL for excep_string argument.
8458
8459 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8460
8461         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8462         the width of the requested register exceeds the width of the
8463         `ptrace' data type.
8464
8465 2018-05-21  Tom Tromey  <tom@tromey.com>
8466
8467         * printcmd.c (output_command): Remove.
8468         (output_command_const): Rename to output_command.
8469         * valprint.h (output_command): Rename from output_command_const.
8470         * tracepoint.c (trace_dump_actions): Call output_command.
8471
8472 2018-05-21  Tom Tromey  <tom@tromey.com>
8473
8474         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8475         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8476         * ada-lang.h (create_ada_exception_catchpoint): Update.
8477         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8478         std::string.
8479         (create_excep_cond_exprs, ~ada_catchpoint)
8480         (should_stop_exception, print_one_exception)
8481         (print_mention_exception, print_recreate_exception): Update.
8482         (ada_get_next_arg): Remove.
8483         (catch_ada_exception_command_split): Use std::string.  Change type
8484         of "excep_string", "cond_string".
8485         (catch_ada_exception_command): Update.
8486         (create_ada_exception_catchpoint): Change type of excep_string.
8487         (ada_exception_sal): Remove excep_string parameter.
8488         (~ada_catchpoint): Remove.
8489
8490 2018-05-21  Tom Tromey  <tom@tromey.com>
8491
8492         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8493         cleanup.
8494
8495 2018-05-21  Tom Tromey  <tom@tromey.com>
8496
8497         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8498         Return unique_xmalloc_ptr.
8499         (print_it_exception): Update.
8500
8501 2018-05-21  Tom Tromey  <tom@tromey.com>
8502
8503         * tracepoint.c (trace_dump_actions): Use std::string.
8504
8505 2018-05-21  Tom Tromey  <tom@tromey.com>
8506
8507         * symfile.c (reread_symbols): Use std::string for original_name.
8508
8509 2018-05-21  Tom Tromey  <tom@tromey.com>
8510
8511         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8512         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8513         constructor.
8514
8515 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8516
8517         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8518         instance to...
8519         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8520         * objfiles.c (get_objfile_bfd_data): Allocate
8521         objfile_per_bfd_storage with obstack_new when allocating on
8522         obstack.
8523
8524 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8525
8526         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8527         OBSTACK_ZALLOC.
8528         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8529         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8530         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8531         (add_pending): Likewise.
8532         (parse_symbol): Likewise.
8533         (parse_partial_symbols): Likewise.
8534         (psymtab_to_symtab_1): Likewise.
8535         (new_psymtab): Likewise.
8536         (elfmdebug_build_psymtabs): Likewise.
8537         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8538         * objfiles.c (get_objfile_bfd_data): Likewise.
8539         (objfile_register_static_link): Likewise.
8540         * psymtab.c (allocate_psymtab): Likewise.
8541         * stabsread.c (read_member_functions): Likewise.
8542         * xcoffread.c (xcoff_end_psymtab): Likewise.
8543
8544 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8545
8546         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8547         compiler supports std::is_trivially_constructible.
8548         * common/poison.h: Include obstack.h.
8549         (IsMallocable): Define to is_trivially_constructible if the
8550         compiler supports it, define to true_type otherwise.
8551         (xobnew): New.
8552         (XOBNEW): Redefine.
8553         (xobnewvec): New.
8554         (XOBNEWVEC): Redefine.
8555         * gdb_obstack.h (obstack_zalloc): New.
8556         (OBSTACK_ZALLOC): Redefine.
8557         (obstack_calloc): New.
8558         (OBSTACK_CALLOC): Redefine.
8559         (obstack_new): New.
8560         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8561         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8562         gdbarch.c.
8563         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8564         obstack_calloc/obstack_zalloc.
8565         (gdbarch_obstack_zalloc): Remove.
8566         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8567
8568 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8569
8570         * stack.c (backtrace_command_1): Remove useless variable int i.
8571
8572 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8573
8574         * stack.c (print_frame_info): Fix comment.
8575
8576 2018-05-18  Tom Tromey  <tom@tromey.com>
8577
8578         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8579         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8580         (~dwarf2_per_objfile): Update
8581         (dwarf2_get_dwz_file): Use new.
8582         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8583         unique_ptr.
8584
8585 2018-05-18  Tom Tromey  <tom@tromey.com>
8586
8587         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8588         unique_ptr.
8589         * dwarf2read.c (struct dwp_file): Add constructor and
8590         initializers.
8591         (open_and_init_dwp_file): Return a unique_ptr.
8592         (dwarf2_per_objfile, create_dwp_hash_table)
8593         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8594         (lookup_dwo_unit_in_dwp): Update.
8595         (open_and_init_dwp_file, get_dwp_file): Update.
8596
8597 2018-05-18  Tom Tromey  <tom@tromey.com>
8598
8599         * dwarf2read.c (dwarf2_per_objfile): Update.
8600         (struct mapped_index): Add initializers.
8601         (dwarf2_read_index): Use new.
8602         (dw2_symtab_iter_init): Update.
8603         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8604         unique_ptr.
8605
8606 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8607
8608         * dwarf2read.c (mapped_index) <total_size>: Remove.
8609
8610 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8611
8612         * unittests/format_pieces-selftests.c (test_format_specifier):
8613         Add ARI comments.
8614
8615 2018-05-18  Tom Tromey  <tom@tromey.com>
8616
8617         * c-typeprint.c (maybe_print_hole): New function.
8618         (c_print_type_struct_field_offset): Update.
8619         (c_type_print_base_struct_union): Call maybe_print_hole.
8620
8621 2018-05-17  Keith Seitz  <keiths@redhat.com>
8622
8623         * breakpoint.c (build_bpstat_chain): New function, moved from
8624         bpstat_stop_status.
8625         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8626         If no stop chain is passed, call build_bpstat_chain to build it.
8627         * breakpoint.h (build_bpstat_chain): Declare.
8628         (bpstat_stop_status): Move documentation here from breakpoint.c.
8629         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8630         build the stop chain and pass it to skip_inline_frames.
8631         Pass this stop chain to bpstat_stop_status.
8632         * inline-frame.c: Include breakpoint.h.
8633         (stopped_by_user_bp_inline_frame): New function.
8634         (skip_inline_frames): Add parameter `stop_chain'.
8635         Move documention to inline-frame.h.
8636         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8637         whether the frame should be elided.
8638         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8639         Add moved documentation and update for new parameter.
8640
8641 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8642
8643         PR cli/14975
8644         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8645         unittests/format_pieces-selftests.c.
8646         * common/format.h (format_piece) <operator==>: New.
8647         (format_pieces) <operator[]>: Remove.
8648         * common/format.c (format_pieces::format_pieces): Handle \e.
8649         * unittests/format_pieces-selftests.c: New.
8650
8651 2018-05-17  Tom Tromey  <tom@tromey.com>
8652
8653         PR symtab/23010:
8654         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8655         (dw2_instantiate_symtab): Add skip_partial parameter.
8656         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8657         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8658         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8659         (dw2_expand_symtabs_matching_one)
8660         (dw2_find_pc_sect_compunit_symtab)
8661         (dw2_debug_names_lookup_symbol)
8662         (dw2_debug_names_expand_symtabs_for_function): Update.
8663         (init_cutu_and_read_dies): Add skip_partial parameter.
8664         (process_psymtab_comp_unit, build_type_psymtabs_1)
8665         (process_skeletonless_type_unit, load_partial_comp_unit)
8666         (psymtab_to_symtab_1): Update.
8667         (load_full_comp_unit): Add skip_partial parameter.
8668         (process_imported_unit_die, dwarf2_read_addr_index)
8669         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8670         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8671         (read_signatured_type): Update.
8672
8673 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8674
8675         * value.c (release_value): Remove unused variable.
8676         (record_latest_value): Likewise.
8677         (access_value_history): Likewise.
8678         (preserve_values): Likewise.
8679
8680 2018-05-17  Tom Tromey  <tom@tromey.com>
8681
8682         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8683         Initialize.
8684
8685 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8686
8687         PR gdb/22286
8688         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8689         Also handle registers whose width is not a multiple of
8690         PTRACE_TYPE_RET.
8691         (linux_nat_trad_target::store_register): Likewise.
8692
8693 2018-05-16  Tom Tromey  <tom@tromey.com>
8694
8695         * gdbcore.h (core_bfd): Redefine.
8696         * corelow.c (core_target::close): Update.
8697         (core_target_open): Update.
8698         * progspace.h (struct program_space) <cbfd>: Now a
8699         gdb_bfd_ref_ptr.
8700
8701 2018-05-16  Tom Tromey  <tom@tromey.com>
8702
8703         PR cli/19551:
8704         * symfile-add-flags.h (enum symfile_add_flags)
8705         <SYMFILE_NOT_FILENAME>: New constant.
8706         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8707         objfile name from BFD.
8708         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8709         * minidebug.c (find_separate_debug_file_in_section): Put
8710         ".gnu_debugdata" into BFD's file name.
8711
8712 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8713
8714         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8715         Remove.
8716
8717 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8718
8719         PR binutils/21446
8720         * aarch64-tdep.c (aarch64_analyze_prologue,
8721         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8722         Indicate not interested in errors.
8723
8724 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8725
8726         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8727         Supply the MIPS_ZERO_REGNUM register.
8728
8729 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8730
8731         * mips-tdep.c (mask_address_var): Make variable static.
8732
8733 2018-05-14  Tom Tromey  <tom@tromey.com>
8734
8735         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8736
8737 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8738
8739         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8740         FXSAVE_ADDR for the mxcsr register.
8741
8742 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8743
8744         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8745
8746 2018-05-11  Pedro Alves  <palves@redhat.com>
8747
8748         * corelow.c (core_target) <core_target>: No longer inline.
8749         Initialize m_core_gdbarch, m_core_vec and build the section table
8750         here.
8751         <~core_target>: New.
8752         <core_gdbarch, get_core_register_section>: New methods.
8753         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8754         factored out from ...
8755         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8756         (core_ops): Delete.
8757         (sniff_core_bfd): Add gdbarch parameter.
8758         (core_close): Delete, merged into ...
8759         (core_target::close): ... here.  Delete self.
8760         (core_close_cleanup): Delete.
8761         (core_target_open): Allocate a core_target on the heap.  Use a
8762         unique_ptr instead of a cleanup.  Bits moved into the core_target
8763         ctor.  Adjust to use core_target methods instead of globals.
8764         (get_core_register_section): Rename to ...
8765         (core_target::get_core_register_section): ... this and adjust.
8766         (struct get_core_registers_cb_data): New.
8767         (get_core_registers_cb): Use it.  Use bool.
8768         (core_target::fetch_registers, core_target::files_info)
8769         (core_target::xfer_partial, core_target::read_description)
8770         (core_target::pid_to, core_target::thread_name): Adjust to
8771         reference class fields instead of globals.
8772         * target.h (struct target_ops_deleter, target_ops_up): New.
8773
8774 2018-05-11  Pedro Alves  <palves@redhat.com>
8775
8776         * corefile.c (core_file_command): Move to corelow.c.
8777         * corelow.c (the_core_target): Delete.
8778         (core_file_command): Moved from corefile.c.  Check exec_bfd
8779         instead of the_core_target.  Use target_detach instead of calling
8780         into the_core_target directly.
8781         (maybe_say_no_core_file_now): New.
8782         (core_target::detach): Use it.
8783         (_initialize_corelow): Remove references to the_core_target.
8784         * gdbcore.h (the_core_target): Delete.
8785
8786 2018-05-11  Tom Tromey  <tromey@redhat.com>
8787             Pedro Alves  <palves@redhat.com>
8788
8789         * corefile.c (core_bfd): Remove.
8790         * gdbcore.h (core_bfd): Now a macro.
8791         * progspace.h (struct program_space) <cbfd>: New field.
8792
8793 2018-05-11  Tom Tromey  <tom@tromey.com>
8794
8795         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8796         gdb::def_vector.
8797
8798 2018-05-10  Tom Tromey  <tom@tromey.com>
8799
8800         * configure: Rebuild.
8801         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8802
8803 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8804
8805         PR server/23158:
8806         * regformats/regdat.sh: Adjust script, following the addition
8807         of the new expedite_regs parameter to init_target_desc.
8808
8809 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8810     
8811         PR gdb/23127
8812         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8813         set_gdbarch_significant_addr_bit.
8814         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8815         set_gdbarch_significant_addr_bit.
8816         * utils.c (address_significant): Update to sign extend addr.
8817
8818 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8819
8820         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8821         (xtensa_linux_init_abi): Limit tdep->num_regs by
8822         tdep->num_nopriv_regs.
8823         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8824         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8825         not initialized.
8826
8827 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8828
8829         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8830
8831 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8832
8833         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8834         (I387_MXCSR_INIT_VAL): New constant.
8835         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8836         buffer if it was supplied by the inferior.
8837         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8838         (i387_xsave_get_clear_bv): New function.
8839         (i387_supply_xsave): Only read x87 control registers from the
8840         xsave buffer if the feature is enabled, and the state will have
8841         been written, otherwise, provide a suitable default.
8842         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8843         including x87 control registers.  Update control registers if they
8844         have changed from the default value, and mark features as enabled
8845         as required.
8846         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8847
8848 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8849
8850         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8851
8852 2018-05-07  Tom Tromey  <tom@tromey.com>
8853
8854         * configure: Rebuild.
8855         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8856
8857 2018-05-07  Tom Tromey  <tom@tromey.com>
8858
8859         PR tdep/20362:
8860         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8861         bit.  Use correct value for VDIV.
8862
8863 2018-05-04  Tom Tromey  <tom@tromey.com>
8864
8865         * configure: Rebuild.
8866         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8867
8868 2018-05-04  Tom Tromey  <tom@tromey.com>
8869
8870         * linux-record.c (record_linux_system_call) <case
8871         RECORD_SYS_RECVFROM>: Add "break".
8872
8873 2018-05-04  Tom Tromey  <tom@tromey.com>
8874
8875         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8876         Add missing "break".
8877         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8878         Add missing "break".
8879
8880 2018-05-04  Tom Tromey  <tom@tromey.com>
8881
8882         * rs6000-tdep.c (ppc_process_record_op4)
8883         (ppc_process_record_op63): Add fall-through comment.
8884
8885 2018-05-04  Tom Tromey  <tom@tromey.com>
8886
8887         * i386-tdep.c (i386_process_record): Add fall-through comment.
8888
8889 2018-05-04  Tom Tromey  <tom@tromey.com>
8890
8891         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8892         comment.
8893
8894 2018-05-04  Tom Tromey  <tom@tromey.com>
8895
8896         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8897         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8898         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8899         comment.
8900         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8901         comment.
8902         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8903         comment.
8904
8905 2018-05-04  Tom Tromey  <tom@tromey.com>
8906
8907         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8908
8909 2018-05-04  Tom Tromey  <tom@tromey.com>
8910
8911         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8912         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8913         * symfile.c (section_is_mapped): Fix fall-through comment.
8914         * stabsread.c (define_symbol, read_member_functions): Fix
8915         fall-through comment.
8916         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8917         comment.
8918         * remote.c (remote_wait_as): Fix fall-through comment.
8919         * p-exp.y (yylex): Fix fall-through comment.
8920         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8921         comment.
8922         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8923         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8924         * jv-exp.y (yylex): Fix fall-through comment.
8925         * go-exp.y (lex_one_token): Fix fall-through comment.
8926         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8927         fall-through comment.
8928         * f-exp.y (yylex): Fix fall-through comment.
8929         * dwarf2read.c (process_die): Fix fall-through comments.
8930         * dbxread.c (process_one_symbol): Fix fall-through comment.
8931         * d-exp.y (lex_one_token): Fix fall-through comment.
8932         * cp-name-parser.y (yylex): Fix fall-through comment.
8933         * coffread.c (coff_symtab_read): Fix fall-through comment.
8934         * c-exp.y (lex_one_token): Fix fall-through comment.
8935         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8936         comment.
8937         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8938         comment.
8939
8940 2018-05-04  Tom Tromey  <tom@tromey.com>
8941
8942         PR python/22730:
8943         * NEWS: Mention gdb.execute change.
8944         * gdbcmd.h (execute_control_command): Don't declare.
8945         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8946         execute_control_commands, execute_control_commands_to_string.
8947         * cli/cli-script.h (execute_control_commands)
8948         (execute_control_commands_to_string): Declare.
8949         (execute_control_command): Add from_tty parameter.
8950         * cli/cli-script.c (execute_control_commands)
8951         (execute_control_commands_to_string): New functions.
8952         (execute_user_command): Use execute_control_commands.
8953         (execute_control_command_1): Add "from_tty" parameter.  Update.
8954         (execute_control_command): Likewise.
8955
8956 2018-05-04  Tom Tromey  <tom@tromey.com>
8957
8958         PR python/22731:
8959         * NEWS: Mention that breakpoint commands are writable.
8960         * python/py-breakpoint.c (bppy_set_commands): New function.
8961         (breakpoint_object_getset) <"commands">: Use it.
8962
8963 2018-05-04  Tom Tromey  <tom@tromey.com>
8964
8965         * tracepoint.c (actions_command): Update.
8966         * mi/mi-cmd-break.c (mi_command_line_array)
8967         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8968         (mi_read_next_line): Remove.
8969         (mi_cmd_break_commands): Update.
8970         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8971         function_view.
8972         * cli/cli-script.c (get_command_line): Update.
8973         (process_next_line): Use function_view.  Constify.
8974         (recurse_read_control_structure, read_command_lines)
8975         (read_command_lines_1): Change argument types to function_view.
8976         (do_define_command, document_command): Update.
8977         * breakpoint.h (check_tracepoint_command): Don't declare.
8978         * breakpoint.c (check_tracepoint_command): Remove.
8979         (commands_command_1, create_tracepoint_from_upload): Update.
8980
8981 2018-05-04  Tom Tromey  <tom@tromey.com>
8982
8983         PR gdb/11750:
8984         * cli/cli-script.h (enum command_control_type) <define_control>:
8985         New constant.
8986         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8987         (build_command_line, execute_control_command_1)
8988         (process_next_line): Likewise.
8989         (do_define_command): New function, extracted from define_command.
8990         (define_command): Use it.
8991
8992 2018-05-04  Tom Tromey  <tom@tromey.com>
8993
8994         * tracepoint.c (actions_command): Update.
8995         * cli/cli-script.h (read_command_lines): Update.
8996         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8997         (MAX_TMPBUF): Remove define.
8998         (define_command): Use string_printf.
8999         (document_command): Likewise.
9000         * breakpoint.c (commands_command_1): Update.
9001
9002 2018-05-04  Tom Tromey  <tom@tromey.com>
9003
9004         * top.c (execute_command): Update.
9005         * cli/cli-script.h (print_command_lines): Now varargs.
9006         * cli/cli-script.c (print_command_lines): Now varargs.
9007         (execute_control_command_1) <case while_control, case if_control>:
9008         Update.
9009
9010 2018-05-04  Tom Tromey  <tom@tromey.com>
9011
9012         * tracepoint.c (all_tracepoint_actions): Rename from
9013         all_tracepoint_actions_and_cleanup.  Change return type.
9014         (actions_command, encode_actions_1, encode_actions)
9015         (trace_dump_actions, tdump_command): Update.
9016         * remote.c (remote_download_command_source): Update.
9017         * python/python.c (gdbpy_eval_from_control_command)
9018         (python_command, python_interactive_command): Update.
9019         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9020         * guile/guile.c (guile_command)
9021         (gdbscm_eval_from_control_command, guile_command): Update.
9022         * compile/compile.c (compile_code_command)
9023         (compile_print_command, compile_to_object): Update.
9024         * cli/cli-script.h (struct command_lines_deleter): New.
9025         (counted_command_line): New typedef.
9026         (struct command_line): Add constructor, destructor.
9027         <body_list>: Remove.
9028         <body_list_0, body_list_1>: New members.
9029         (command_line_up): Remove typedef.
9030         (read_command_lines, read_command_lines_1, get_command_line):
9031         Update.
9032         (copy_command_lines): Don't declare.
9033         * cli/cli-script.c (build_command_line): Use "new".
9034         (get_command_line): Return counted_command_line.
9035         (print_command_lines, execute_user_command)
9036         (execute_control_command_1, while_command, if_command): Update.
9037         (realloc_body_list): Remove.
9038         (process_next_line, recurse_read_control_structure): Update.
9039         (read_command_lines, read_command_lines_1): Return counted_command_line.
9040         (free_command_lines): Use "delete".
9041         (copy_command_lines): Remove.
9042         (define_command, document_command, show_user_1): Update.
9043         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9044         a counted_command_line.
9045         * breakpoint.h (counted_command_line): Remove typedef.
9046         (breakpoint_set_commands): Update.
9047         * breakpoint.c (check_no_tracepoint_commands)
9048         (validate_commands_for_breakpoint): Update.
9049         (breakpoint_set_commands): Change commands to be a
9050         counted_command_line.
9051         (commands_command_1, update_dprintf_command_list)
9052         (create_tracepoint_from_upload): Update.
9053
9054 2018-05-04  Tom Tromey  <tom@tromey.com>
9055
9056         * cli/cli-decode.h (cmd_list_element): New constructor.
9057         (~cmd_list_element): New destructor.
9058         (struct cmd_list_element): Add initializers.
9059         * cli/cli-decode.c (do_add_cmd): Use "new".
9060         (delete_cmd): Use "delete".
9061
9062 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9063             Pedro Alves <palves@redhat.com>
9064
9065         PR breakpoints/19806 and support for PR external/20207.
9066         * NEWS: Mention Aarch64 watchpoint improvements.
9067         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9068         watchpoints and PR external/20207 watchpoints.
9069         * nat/aarch64-linux-hw-point.c
9070         (kernel_supports_any_contiguous_range): New.
9071         (aarch64_watchpoint_offset): New.
9072         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9073         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9074         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9075         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9076         next_addr_orig_p.  Support PR external/20207 watchpoints.
9077         (aarch64_downgrade_regs): New.
9078         (aarch64_dr_state_insert_one_point): New parameters offset and
9079         addr_orig.
9080         (aarch64_dr_state_remove_one_point): Likewise.
9081         (aarch64_handle_breakpoint): Update caller.
9082         (aarch64_handle_aligned_watchpoint): Likewise.
9083         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9084         aligned_offset.
9085         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9086         aarch64_downgrade_regs.
9087         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9088         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9089         (DR_CONTROL_MASK): ... this.
9090         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9091         (unsigned int aarch64_watchpoint_offset): New prototype.
9092         (aarch64_linux_set_debug_regs): Remove const from state.
9093         * utils.c (align_up, align_down): Move to ...
9094         * common/common-utils.c (align_up, align_down): ... here.
9095         * utils.h (align_up, align_down): Move to ...
9096         * common/common-utils.h (align_up, align_down): ... here.
9097
9098 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9099
9100         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9101         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9102         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9103         Re-implement to match the ABI as summarized in GCC's
9104         gcc/config/sparc/sparc.c.  All callers updated.
9105         (sparc32_store_arguments): Remove assertion.
9106
9107 2018-05-04  Tom Tromey  <tom@tromey.com>
9108
9109         * printcmd.c: Don't include tui.h.
9110         (decode_format): Use skip_spaces.
9111
9112 2018-05-04  Tom Tromey  <tom@tromey.com>
9113
9114         PR gdb/22619:
9115         * printcmd.c (last_count): New global.
9116         (x_command): Use saved count when repeating.
9117
9118 2018-05-04  Tom Tromey  <tom@tromey.com>
9119
9120         * nto-procfs.c (do_closedir_cleanup): Remove.
9121         (procfs_pidlist): Use gdb_dir_up.
9122         * procfs.c (do_closedir_cleanup): Remove.
9123         (proc_update_threads): Use gdb_dir_up.
9124         * common/filestuff.h (struct gdb_dir_deleter): New.
9125         (gdb_dir_up): New typedef.
9126
9127 2018-05-04  Tom Tromey  <tom@tromey.com>
9128
9129         * ada-lang.c (print_mention_exception): Use std::string.
9130
9131 2018-05-04  Tom Tromey  <tom@tromey.com>
9132
9133         * ada-lang.c (create_excep_cond_exprs): Update.
9134         (ada_exception_catchpoint_cond_string): Use std::string.
9135
9136 2018-05-04  Tom Tromey  <tom@tromey.com>
9137
9138         * ada-lang.c (xget_renaming_scope): Return std::string.
9139         (old_renaming_is_invisible): Update.
9140
9141 2018-05-04  Tom Tromey  <tom@tromey.com>
9142
9143         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9144         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9145
9146 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9147
9148         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9149
9150 2018-05-04  Tom Tromey  <tom@tromey.com>
9151
9152         * remote.c (remote_query_supported_append): Change type.
9153         (remote_check_symbols): Update.
9154
9155 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9156
9157         PR gdb/11420
9158         * configure.ac: Prepend libpython.
9159         * python/python-config.py: Likewise.
9160         * configure: Regenerate.
9161
9162 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9163
9164         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9165
9166 2018-05-03  Pedro Alves  <palves@redhat.com>
9167
9168         * s390-linux-nat.c
9169         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9170         override.  Write 'true' instead of '1'.
9171         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9172         declaration.
9173
9174 2018-05-02  Pedro Alves  <palves@redhat.com>
9175
9176         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9177         add_inf_child_target.
9178         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9179         add_inf_child_target.
9180         * aix-thread.c (aix_thread_target_info): New.
9181         (aix_thread_target) <shortname, longname, doc>: Delete.
9182         <info>: New.
9183         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9184         add_inf_child_target.
9185         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9186         add_inf_child_target.
9187         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9188         add_inf_child_target.
9189         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9190         add_inf_child_target.
9191         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9192         add_inf_child_target.
9193         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9194         add_inf_child_target.
9195         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9196         add_inf_child_target.
9197         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9198         add_inf_child_target.
9199         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9200         add_inf_child_target.
9201         * bfd-target.c (target_bfd_target_info): New.
9202         (target_bfd) <shortname, longname, doc>: Delete.
9203         <info>: New.
9204         * bsd-kvm.c (bsd_kvm_target_info): New.
9205         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9206         <info>: New.
9207         (bsd_kvm_target::open): Rename to ...
9208         (bsd_kvm_target_open): ... this.  Adjust.
9209         * bsd-uthread.c (bsd_uthread_target_info): New.
9210         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9211         <info>: New.
9212         * corefile.c (core_file_command): Adjust.
9213         * corelow.c (core_target_info): New.
9214         (core_target) <shortname, longname, doc>: Delete.
9215         <info>: New.
9216         (core_target::open): Rename to ...
9217         (core_target_open): ... this.  Adjust.
9218         * ctf.c (ctf_target_info): New.
9219         (ctf_target) <shortname, longname, doc>: Delete.
9220         <info>: New.
9221         (ctf_target::open): Rename to ...
9222         (ctf_target_open): ... this.
9223         (_initialize_ctf): Adjust.
9224         * exec.c (exec_target_info): New.
9225         (exec_target) <shortname, longname, doc>: Delete.
9226         <info>: New.
9227         (exec_target::open): Rename to ...
9228         (exec_target_open): ... this.
9229         * gdbcore.h (core_target_open): Declare.
9230         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9231         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9232         add_inf_child_target.
9233         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9234         add_inf_child_target.
9235         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9236         add_inf_child_target.
9237         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9238         add_inf_child_target.
9239         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9240         add_inf_child_target.
9241         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9242         add_inf_child_target.
9243         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9244         add_inf_child_target.
9245         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9246         add_inf_child_target.
9247         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9248         add_inf_child_target.
9249         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9250         add_inf_child_target.
9251         * inf-child.c (inf_child_target_info): New.
9252         (inf_child_target::info): New.
9253         (inf_child_open_target): Remove 'target' parameter.  Use
9254         get_native_target instead.
9255         (inf_child_target::open): Delete.
9256         (add_inf_child_target): New.
9257         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9258         Delete.
9259         <info>: New.
9260         (add_inf_child_target): Declare.
9261         (inf_child_open_target): Declare.
9262         * linux-thread-db.c (thread_db_target_info): New.
9263         (thread_db_target) <shortname, longname, doc>: Delete.
9264         <info>: New.
9265         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9266         add_inf_child_target.
9267         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9268         add_inf_child_target.
9269         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9270         add_inf_child_target.
9271         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9272         add_inf_child_target.
9273         * make-target-delegates (print_class): Adjust.
9274         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9275         add_inf_child_target.
9276         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9277         add_inf_child_target.
9278         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9279         add_inf_child_target.
9280         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9281         add_inf_child_target.
9282         * nto-procfs.c (nto_native_target_info): New.
9283         (nto_procfs_target_native) <shortname, longname, doc>:
9284         Delete.
9285         <info>: New.
9286         (nto_procfs_target_info): New.
9287         (nto_procfs_target_procfs) <shortname, longname, doc>:
9288         Delete.
9289         <info>: New.
9290         (init_procfs_targets): Adjust.
9291         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9292         add_inf_child_target.
9293         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9294         add_inf_child_target.
9295         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9296         add_inf_child_target.
9297         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9298         add_inf_child_target.
9299         * ravenscar-thread.c (ravenscar_target_info): New.
9300         (ravenscar_thread_target) <shortname, longname, doc>:
9301         Delete.
9302         <info>: New.
9303         * record-btrace.c (record_btrace_target_info):
9304         (record_btrace_target) <shortname, longname, doc>: Delete.
9305         <info>: New.
9306         (record_btrace_target::open): Rename to ...
9307         (record_btrace_target_open): ... this.  Adjust.
9308         * record-full.c (record_longname, record_doc): New.
9309         (record_full_base_target) <shortname, longname, doc>: Delete.
9310         <info>: New.
9311         (record_full_target_info): New.
9312         (record_full_target): <shortname>: Delete.
9313         <info>: New.
9314         (record_full_core_open_1, record_full_open_1): Update comments.
9315         (record_full_base_target::open): Rename to ...
9316         (record_full_open): ... this.
9317         (cmd_record_full_restore): Update.
9318         (_initialize_record_full): Update.
9319         * remote-sim.c (remote_sim_target_info): New.
9320         (gdbsim_target) <shortname, longname, doc>: Delete.
9321         <info>: New.
9322         (gdbsim_target::open): Rename to ...
9323         (gdbsim_target_open): ... this.
9324         (_initialize_remote_sim): Adjust.
9325         * remote.c (remote_doc): New.
9326         (remote_target_info): New.
9327         (remote_target) <shortname, longname, doc>: Delete.
9328         <info>: New.
9329         (extended_remote_target_info): New.
9330         (extended_remote_target) <shortname, longname, doc>: Delete.
9331         <info>: New.
9332         (remote_target::open_1): Make static.  Adjust.
9333         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9334         * s390-linux-nat.c (_initialize_s390_nat): Use
9335         add_inf_child_target.
9336         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9337         add_inf_child_target.
9338         * sol-thread.c (thread_db_target_info): New.
9339         (sol_thread_target) <shortname, longname, doc>: Delete.
9340         <info>: New.
9341         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9342         add_inf_child_target.
9343         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9344         add_inf_child_target.
9345         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9346         add_inf_child_target.
9347         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9348         add_inf_child_target.
9349         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9350         add_inf_child_target.
9351         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9352         add_inf_child_target.
9353         * spu-linux-nat.c (_initialize_spu_nat): Use
9354         add_inf_child_target.
9355         * spu-multiarch.c (spu_multiarch_target_info): New.
9356         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9357         <info>: New.
9358         * target-delegates.c: Regenerate.
9359         * target.c: Include <unordered_map>.
9360         (target_ops_p): Delete.
9361         (DEF_VEC_P(target_ops_p)): Delete.
9362         (target_factories): New.
9363         (test_target_info): New.
9364         (test_target_ops::info): New.
9365         (open_target): Adjust to use target_factories.
9366         (add_target_with_completer): Rename to ...
9367         (add_target): ... this.  Change prototype.  Register target_info
9368         and open callback in target_factories.  Register target_info in
9369         command context instead of target_ops.
9370         (add_target): Delete old implementation.
9371         (add_deprecated_target_alias): Change prototype.  Adjust.
9372         (the_native_target): New.
9373         (set_native_target, get_native_target): New.
9374         (find_default_run_target): Use the_native_target.
9375         (find_attach_target, find_run_target): Simplify.
9376         (target_ops::open): Delete.
9377         (dummy_target_info): New.
9378         (dummy_target::shortname, dummy_target::longname)
9379         (dummy_target::doc): Delete.
9380         (dummy_target::info): New.
9381         (debug_target::shortname, debug_target::longname)
9382         (debug_target::doc): Delete.
9383         (debug_target::info): New.
9384         * target.h (struct target_info): New.
9385         (target_ops::~target_ops): Add comment.
9386         (target_ops::info): New.
9387         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9388         longer virtual.  Implement in terms of target_info.
9389         (set_native_target, get_native_target): Declare.
9390         (target_open_ftype): New.
9391         (add_target, add_target_with_completer)
9392         (add_deprecated_target_alias): Change prototype.
9393         (test_target) <shortname, longname, doc>: Delete.
9394         <info>: New.
9395         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9396         add_inf_child_target.
9397         * tracefile-tfile.c (tfile_target_info): New.
9398         (tfile_target) <shortname, longname, doc>: Delete.
9399         <info>: New.
9400         (tfile_target::open): Rename to ...
9401         (tfile_target_open): ... this.
9402         (_initialize_tracefile_tfile): Adjust.
9403         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9404         add_inf_child_target.
9405         * windows-nat.c (_initialize_windows_nat): Use
9406         add_inf_child_target.
9407         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9408         add_inf_child_target.
9409
9410 2018-05-02  Pedro Alves  <palves@redhat.com>
9411
9412         * linux-nat.h (linux_nat_target) <low_new_thread,
9413         low_delete_thread, low_new_fork, low_forget_process,
9414         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9415         New virtual methods.
9416         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9417         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9418         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9419         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9420         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9421         Delete.
9422         * linux-fork.c (delete_fork): Adjust to call low method.
9423         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9424         (linux_nat_new_fork, linux_nat_forget_process_hook)
9425         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9426         (linux_nat_status_is_event):
9427         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9428         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9429         to call low method.
9430         (sigtrap_is_event): Rename to ...
9431         (linux_nat_target::low_status_is_event): ... this.
9432         (linux_nat_set_status_is_event): Delete.
9433         (save_stop_reason, linux_nat_wait_1)
9434         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9435         low methods.
9436         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9437         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9438         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9439         (linux_nat_set_prepare_to_resume): Delete.
9440         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9441         low virtual methods.
9442         * amd64-linux-nat.c: Likewise.
9443         * arm-linux-nat.c: Likewise.
9444         * i386-linux-nat.c: Likewise.
9445         * ia64-linux-nat.c: Likewise.
9446         * mips-linux-nat.c: Likewise.
9447         * ppc-linux-nat.c: Likewise.
9448         * s390-linux-nat.c: Likewise.
9449         * sparc64-linux-nat.c: Likewise.
9450         * x86-linux-nat.c: Likewise.
9451         * x86-linux-nat.h: Include "nat/x86-linux.h".
9452         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9453         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9454         Override methods.
9455
9456 2018-05-02  Pedro Alves  <palves@redhat.com>
9457
9458         * target.h (target_ops)
9459         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9460         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9461         stopped_by_watchpoint, have_continuable_watchpoint,
9462         stopped_data_address, watchpoint_addr_within_range,
9463         can_accel_watchpoint_condition, can_run, thread_alive,
9464         has_all_memory, has_memory, has_stack, has_registers,
9465         has_execution, can_async_p, is_async_p, supports_non_stop,
9466         always_non_stop_p, can_execute_reverse, supports_multi_process,
9467         supports_enable_disable_tracepoint,
9468         supports_disable_randomization, supports_string_tracing,
9469         supports_evaluation_of_breakpoint_conditions,
9470         can_run_breakpoint_commands, filesystem_is_local,
9471         can_download_tracepoint, get_trace_state_variable_value,
9472         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9473         record_is_replaying, record_will_replay,
9474         augmented_libraries_svr4_read>: Adjust to return bool.
9475         * aarch64-linux-nat.c: All implementations adjusted.
9476         * aix-thread.c: All implementations adjusted.
9477         * arm-linux-nat.c: All implementations adjusted.
9478         * breakpoint.c: All implementations adjusted.
9479         * bsd-kvm.c: All implementations adjusted.
9480         * bsd-uthread.c: All implementations adjusted.
9481         * corelow.c: All implementations adjusted.
9482         * ctf.c: All implementations adjusted.
9483         * darwin-nat.c: All implementations adjusted.
9484         * darwin-nat.h: All implementations adjusted.
9485         * exec.c: All implementations adjusted.
9486         * fbsd-nat.c: All implementations adjusted.
9487         * fbsd-nat.h: All implementations adjusted.
9488         * gnu-nat.c: All implementations adjusted.
9489         * gnu-nat.h: All implementations adjusted.
9490         * go32-nat.c: All implementations adjusted.
9491         * ia64-linux-nat.c: All implementations adjusted.
9492         * inf-child.c: All implementations adjusted.
9493         * inf-child.h: All implementations adjusted.
9494         * inf-ptrace.c: All implementations adjusted.
9495         * inf-ptrace.h: All implementations adjusted.
9496         * linux-nat.c: All implementations adjusted.
9497         * linux-nat.h: All implementations adjusted.
9498         * mips-linux-nat.c: All implementations adjusted.
9499         * nto-procfs.c: All implementations adjusted.
9500         * ppc-linux-nat.c: All implementations adjusted.
9501         * procfs.c: All implementations adjusted.
9502         * ravenscar-thread.c: All implementations adjusted.
9503         * record-btrace.c: All implementations adjusted.
9504         * record-full.c: All implementations adjusted.
9505         * remote-sim.c: All implementations adjusted.
9506         * remote.c: All implementations adjusted.
9507         * s390-linux-nat.c: All implementations adjusted.
9508         * sol-thread.c: All implementations adjusted.
9509         * spu-multiarch.c: All implementations adjusted.
9510         * target-delegates.c: All implementations adjusted.
9511         * target.c: All implementations adjusted.
9512         * target.h: All implementations adjusted.
9513         * tracefile-tfile.c: All implementations adjusted.
9514         * tracefile.c: All implementations adjusted.
9515         * tracefile.h: All implementations adjusted.
9516         * windows-nat.c: All implementations adjusted.
9517         * x86-linux-nat.h: All implementations adjusted.
9518         * x86-nat.h: All implementations adjusted.
9519
9520 2018-05-02  Pedro Alves  <palves@redhat.com>
9521
9522         * make-target-delegates (scan_target_h): Don't trim lines here.
9523         Replace sequences of tabs and/or whitespace with a single
9524         whitespace.
9525         (top level, parsing methods): Trim each line before processing it
9526         here.
9527
9528 2018-05-02  Pedro Alves  <palves@redhat.com>
9529             John Baldwin  <jhb@freebsd.org>
9530
9531         * target.h (enum strata) <debug_stratum>: New.
9532         (struct target_ops) <all delegation methods>: Replace by C++
9533         virtual methods, and drop "to_" prefix.  All references updated
9534         throughout.
9535         <to_shortname, to_longname, to_doc, to_data,
9536         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9537         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9538         virtual methods.  All references updated throughout.
9539         <can_attach, supports_terminal_ours, can_create_inferior,
9540         get_thread_control_capabilities, attach_no_wait>: New
9541         virtual methods.
9542         <insert_breakpoint, remove_breakpoint>: Now
9543         TARGET_DEFAULT_NORETURN methods.
9544         <info_proc>: Now returns bool.
9545         <to_magic>: Delete.
9546         (OPS_MAGIC): Delete.
9547         (current_target): Delete.  All references replaced by references
9548         to ...
9549         (target_stack): ... this.  New.
9550         (target_shortname, target_longname): Adjust.
9551         (target_can_run): Now a function declaration.
9552         (default_child_has_all_memory, default_child_has_memory)
9553         (default_child_has_stack, default_child_has_registers)
9554         (default_child_has_execution): Remove target_ops parameter.
9555         (complete_target_initialization): Delete.
9556         (memory_breakpoint_target): New template class.
9557         (test_target_ops): Refactor as a C++ class with virtual methods.
9558         * make-target-delegates (NAME_PART): Tighten.
9559         (POINTER_PART, CP_SYMBOL): New.
9560         (SIMPLE_RETURN_PART): Reimplement.
9561         (VEC_RETURN_PART): Expect less.
9562         (RETURN_PART, VIRTUAL_PART): New.
9563         (METHOD): Adjust to C++ virtual methods.
9564         (scan_target_h): Remove reference to C99.
9565         (dname): Output "target_ops::" prefix.
9566         (write_function_header): Adjust to output a C++ class method.
9567         (write_declaration): New.
9568         (write_delegator): Adjust to output a C++ class method.
9569         (tdname): Output "dummy_target::" prefix.
9570         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9571         method.
9572         (tdefault_names, debug_names): Delete.
9573         (return_types, tdefaults, styles, argtypes_array): New.
9574         (top level): All methods are delegators.
9575         (print_class): New.
9576         (top level): Print dummy_target and debug_target classes.
9577         * target-delegates.c: Regenerate.
9578         * target-debug.h (target_debug_print_enum_info_proc_what)
9579         (target_debug_print_thread_control_capabilities)
9580         (target_debug_print_thread_info_p): New.
9581         * target.c (dummy_target): Delete.
9582         (the_dummy_target, the_debug_target): New.
9583         (target_stack): Now extern.
9584         (set_targetdebug): Push/unpush debug target.
9585         (default_child_has_all_memory, default_child_has_memory)
9586         (default_child_has_stack, default_child_has_registers)
9587         (default_child_has_execution): Remove target_ops parameter.
9588         (complete_target_initialization): Delete.
9589         (add_target_with_completer): No longer call
9590         complete_target_initialization.
9591         (target_supports_terminal_ours): Use regular delegation.
9592         (update_current_target): Delete.
9593         (push_target): No longer check magic number.  Don't call
9594         update_current_target.
9595         (unpush_target): Don't call update_current_target.
9596         (target_is_pushed): No longer check magic number.
9597         (target_require_runnable): Skip for all stratums over
9598         process_stratum.
9599         (target_ops::info_proc): New.
9600         (target_info_proc): Use find_target_at and
9601         find_default_run_target.
9602         (target_supports_disable_randomization): Use regular delegation.
9603         (target_get_osdata): Use find_target_at.
9604         (target_ops::open, target_ops::close, target_ops::can_attach)
9605         (target_ops::attach, target_ops::can_create_inferior)
9606         (target_ops::create_inferior, target_ops::can_run)
9607         (target_can_run): New.
9608         (default_fileio_target): Use regular delegation.
9609         (target_ops::fileio_open, target_ops::fileio_pwrite)
9610         (target_ops::fileio_pread, target_ops::fileio_fstat)
9611         (target_ops::fileio_close, target_ops::fileio_unlink)
9612         (target_ops::fileio_readlink): New.
9613         (target_fileio_open_1, target_fileio_unlink)
9614         (target_fileio_readlink): Always call the target method.  Handle
9615         FILEIO_ENOSYS.
9616         (return_zero, return_zero_has_execution): Delete.
9617         (init_dummy_target): Delete.
9618         (dummy_target::dummy_target, dummy_target::shortname)
9619         (dummy_target::longname, dummy_target::doc)
9620         (debug_target::debug_target, debug_target::shortname)
9621         (debug_target::longname, debug_target::doc): New.
9622         (target_supports_delete_record): Use regular delegation.
9623         (setup_target_debug): Delete.
9624         (maintenance_print_target_stack): Skip debug_stratum.
9625         (initialize_targets): Instantiate the_dummy_target and
9626         the_debug_target.
9627         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9628         use target_stack.
9629         (target_auxv_search, fprint_target_auxv): Adjust.
9630         (info_auxv_command): Adjust to use target_stack.
9631         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9632         * exceptions.c (print_flush): Handle a NULL target_stack.
9633         * regcache.c (target_ops_no_register): Refactor as class with
9634         virtual methods.
9635
9636         * exec.c (exec_target): New class.
9637         (exec_ops): Now an exec_target.
9638         (exec_open, exec_close_1, exec_get_section_table)
9639         (exec_xfer_partial, exec_files_info, exec_has_memory)
9640         (exec_make_note_section): Refactor as exec_target methods.
9641         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9642         Delete.
9643         (exec_target::find_memory_regions): New.
9644         (_initialize_exec): Don't call init_exec_ops.
9645         * gdbcore.h (exec_file_clear): Delete.
9646
9647         * corefile.c (core_target): Delete.
9648         (core_file_command): Adjust.
9649         * corelow.c (core_target): New class.
9650         (the_core_target): New.
9651         (core_close): Remove target_ops parameter.
9652         (core_close_cleanup): Adjust.
9653         (core_target::close): New.
9654         (core_open, core_detach, get_core_registers, core_files_info)
9655         (core_xfer_partial, core_thread_alive, core_read_description)
9656         (core_pid_to_str, core_thread_name, core_has_memory)
9657         (core_has_stack, core_has_registers, core_info_proc): Rework as
9658         core_target methods.
9659         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9660         (_initialize_corelow): Initialize the_core_target.
9661         * gdbcore.h (core_target): Delete.
9662         (the_core_target): New.
9663
9664         * ctf.c: (ctf_target): New class.
9665         (ctf_ops): Now a ctf_target.
9666         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9667         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9668         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9669         methods.
9670         (init_ctf_ops): Delete.
9671         (_initialize_ctf): Don't call it.
9672         * tracefile-tfile.c (tfile_target): New class.
9673         (tfile_ops): Now a tfile_target.
9674         (tfile_open, tfile_close, tfile_files_info)
9675         (tfile_get_tracepoint_status, tfile_trace_find)
9676         (tfile_fetch_registers, tfile_xfer_partial)
9677         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9678         Refactor as tfile_target methods.
9679         (tfile_xfer_partial_features): Remove target_ops parameter.
9680         (init_tfile_ops): Delete.
9681         (_initialize_tracefile_tfile): Don't call it.
9682         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9683         (tracefile_has_stack, tracefile_has_registers)
9684         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9685         tracefile_target methods.
9686         (init_tracefile_ops): Delete.
9687         (tracefile_target::tracefile_target): New.
9688         * tracefile.h: Include "target.h".
9689         (tracefile_target): New class.
9690         (init_tracefile_ops): Delete.
9691
9692         * spu-multiarch.c (spu_multiarch_target): New class.
9693         (spu_ops): Now a spu_multiarch_target.
9694         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9695         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9696         (spu_search_memory, spu_mourn_inferior): Refactor as
9697         spu_multiarch_target methods.
9698         (init_spu_ops): Delete.
9699         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9700         complete_target_initialization.
9701
9702         * ravenscar-thread.c (ravenscar_thread_target): New class.
9703         (ravenscar_ops): Now a ravenscar_thread_target.
9704         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9705         (ravenscar_thread_alive, ravenscar_pid_to_str)
9706         (ravenscar_fetch_registers, ravenscar_store_registers)
9707         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9708         (ravenscar_stopped_by_hw_breakpoint)
9709         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9710         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9711         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9712         methods.
9713         (init_ravenscar_thread_ops): Delete.
9714         (_initialize_ravenscar): Remove references to
9715         init_ravenscar_thread_ops and complete_target_initialization.
9716
9717         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9718         (bsd_uthread_target): New class.
9719         (bsd_uthread_ops): Now a bsd_uthread_target.
9720         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9721         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9722         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9723         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9724         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9725         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9726         (bsd_uthread_target): Delete function.
9727         (_initialize_bsd_uthread): Remove reference to
9728         complete_target_initialization.
9729
9730         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9731         (target_bfd): ... this new class.
9732         (target_bfd_xfer_partial, target_bfd_get_section_table)
9733         (target_bfd_close): Refactor as target_bfd methods.
9734         (target_bfd::~target_bfd): New.
9735         (target_bfd_reopen): Adjust.
9736         (target_bfd::close): New.
9737
9738         * record-btrace.c (record_btrace_target): New class.
9739         (record_btrace_ops): Now a record_btrace_target.
9740         (record_btrace_open, record_btrace_stop_recording)
9741         (record_btrace_disconnect, record_btrace_close)
9742         (record_btrace_async, record_btrace_info)
9743         (record_btrace_insn_history, record_btrace_insn_history_range)
9744         (record_btrace_insn_history_from, record_btrace_call_history)
9745         (record_btrace_call_history_range)
9746         (record_btrace_call_history_from, record_btrace_record_method)
9747         (record_btrace_is_replaying, record_btrace_will_replay)
9748         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9749         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9750         (record_btrace_store_registers, record_btrace_prepare_to_store)
9751         (record_btrace_to_get_unwinder)
9752         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9753         (record_btrace_commit_resume, record_btrace_wait)
9754         (record_btrace_stop, record_btrace_can_execute_reverse)
9755         (record_btrace_stopped_by_sw_breakpoint)
9756         (record_btrace_supports_stopped_by_sw_breakpoint)
9757         (record_btrace_stopped_by_hw_breakpoint)
9758         (record_btrace_supports_stopped_by_hw_breakpoint)
9759         (record_btrace_update_thread_list, record_btrace_thread_alive)
9760         (record_btrace_goto_begin, record_btrace_goto_end)
9761         (record_btrace_goto, record_btrace_stop_replaying_all)
9762         (record_btrace_execution_direction)
9763         (record_btrace_prepare_to_generate_core)
9764         (record_btrace_done_generating_core): Refactor as
9765         record_btrace_target methods.
9766         (init_record_btrace_ops): Delete.
9767         (_initialize_record_btrace): Remove reference to
9768         init_record_btrace_ops.
9769         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9770         the execution_direction global.
9771         (record_full_base_target, record_full_target)
9772         (record_full_core_target): New classes.
9773         (record_full_ops): Now a record_full_target.
9774         (record_full_core_ops): Now a record_full_core_target.
9775         (record_full_target::detach, record_full_target::disconnect)
9776         (record_full_core_target::disconnect)
9777         (record_full_target::mourn_inferior, record_full_target::kill):
9778         New.
9779         (record_full_open, record_full_close, record_full_async): Refactor
9780         as methods of the record_full_base_target class.
9781         (record_full_resume, record_full_commit_resume): Refactor
9782         as methods of the record_full_target class.
9783         (record_full_wait, record_full_stopped_by_watchpoint)
9784         (record_full_stopped_data_address)
9785         (record_full_stopped_by_sw_breakpoint)
9786         (record_full_supports_stopped_by_sw_breakpoint)
9787         (record_full_stopped_by_hw_breakpoint)
9788         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9789         methods of the record_full_base_target class.
9790         (record_full_store_registers, record_full_xfer_partial)
9791         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9792         Refactor as methods of the record_full_target class.
9793         (record_full_can_execute_reverse, record_full_get_bookmark)
9794         (record_full_goto_bookmark, record_full_execution_direction)
9795         (record_full_record_method, record_full_info, record_full_delete)
9796         (record_full_is_replaying, record_full_will_replay)
9797         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9798         (record_full_stop_replaying): Refactor as methods of the
9799         record_full_base_target class.
9800         (record_full_core_resume, record_full_core_kill)
9801         (record_full_core_fetch_registers)
9802         (record_full_core_prepare_to_store)
9803         (record_full_core_store_registers, record_full_core_xfer_partial)
9804         (record_full_core_insert_breakpoint)
9805         (record_full_core_remove_breakpoint)
9806         (record_full_core_has_execution): Refactor
9807         as methods of the record_full_core_target class.
9808         (record_full_base_target::supports_delete_record): New.
9809         (init_record_full_ops): Delete.
9810         (init_record_full_core_ops): Delete.
9811         (record_full_save): Refactor as method of the
9812         record_full_base_target class.
9813         (_initialize_record_full): Remove references to
9814         init_record_full_ops and init_record_full_core_ops.
9815
9816         * remote.c (remote_target, extended_remote_target): New classes.
9817         (remote_ops): Now a remote_target.
9818         (extended_remote_ops): Now an extended_remote_target.
9819         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9820         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9821         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9822         (remote_pass_signals, remote_set_syscall_catchpoint)
9823         (remote_program_signals, )
9824         (remote_thread_always_alive): Remove target_ops parameter.
9825         (remote_thread_alive, remote_thread_name)
9826         (remote_update_thread_list, remote_threads_extra_info)
9827         (remote_static_tracepoint_marker_at)
9828         (remote_static_tracepoint_markers_by_strid)
9829         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9830         (remote_open): Refactor as methods of remote_target.
9831         (extended_remote_open, extended_remote_detach)
9832         (extended_remote_attach, extended_remote_post_attach):
9833         (extended_remote_supports_disable_randomization)
9834         (extended_remote_create_inferior): : Refactor as method of
9835         extended_remote_target.
9836         (remote_set_permissions, remote_open_1, remote_detach)
9837         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9838         (remote_resume, remote_commit_resume, remote_stop)
9839         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9840         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9841         (remote_prepare_to_store, remote_store_registers)
9842         (remote_flash_erase, remote_flash_done, remote_files_info)
9843         (remote_kill, remote_mourn, remote_insert_breakpoint)
9844         (remote_remove_breakpoint, remote_insert_watchpoint)
9845         (remote_watchpoint_addr_within_range)
9846         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9847         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9848         (remote_supports_stopped_by_sw_breakpoint)
9849         (remote_stopped_by_hw_breakpoint)
9850         (remote_supports_stopped_by_hw_breakpoint)
9851         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9852         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9853         (remote_verify_memory): Refactor as methods of remote_target.
9854         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9855         parameter.
9856         (remote_xfer_partial, remote_get_memory_xfer_limit)
9857         (remote_search_memory, remote_rcmd, remote_memory_map)
9858         (remote_pid_to_str, remote_get_thread_local_address)
9859         (remote_get_tib_address, remote_read_description): Refactor as
9860         methods of remote_target.
9861         (remote_target::fileio_open, remote_target::fileio_pwrite)
9862         (remote_target::fileio_pread, remote_target::fileio_close): New.
9863         (remote_hostio_readlink, remote_hostio_fstat)
9864         (remote_filesystem_is_local, remote_can_execute_reverse)
9865         (remote_supports_non_stop, remote_supports_disable_randomization)
9866         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9867         (remote_supports_enable_disable_tracepoint)
9868         (remote_supports_string_tracing)
9869         (remote_can_run_breakpoint_commands, remote_trace_init)
9870         (remote_download_tracepoint, remote_can_download_tracepoint)
9871         (remote_download_trace_state_variable, remote_enable_tracepoint)
9872         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9873         (remote_trace_start, remote_get_trace_status)
9874         (remote_get_tracepoint_status, remote_trace_stop)
9875         (remote_trace_find, remote_get_trace_state_variable_value)
9876         (remote_save_trace_data, remote_get_raw_trace_data)
9877         (remote_set_disconnected_tracing, remote_core_of_thread)
9878         (remote_set_circular_trace_buffer, remote_traceframe_info)
9879         (remote_get_min_fast_tracepoint_insn_len)
9880         (remote_set_trace_buffer_size, remote_set_trace_notes)
9881         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9882         (remote_disable_btrace, remote_teardown_btrace)
9883         (remote_read_btrace, remote_btrace_conf)
9884         (remote_augmented_libraries_svr4_read, remote_load)
9885         (remote_pid_to_exec_file, remote_can_do_single_step)
9886         (remote_execution_direction, remote_thread_handle_to_thread_info):
9887         Refactor as methods of remote_target.
9888         (init_remote_ops, init_extended_remote_ops): Delete.
9889         (remote_can_async_p, remote_is_async_p, remote_async)
9890         (remote_thread_events, remote_upload_tracepoints)
9891         (remote_upload_trace_state_variables): Refactor as methods of
9892         remote_target.
9893         (_initialize_remote): Remove references to init_remote_ops and
9894         init_extended_remote_ops.
9895
9896         * remote-sim.c (gdbsim_target): New class.
9897         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9898         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9899         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9900         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9901         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9902         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9903         Refactor as methods of gdbsim_target.
9904         (gdbsim_ops): Now a gdbsim_target.
9905         (init_gdbsim_ops): Delete.
9906         (gdbsim_cntrl_c): Adjust.
9907         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9908
9909         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9910         (the_amd64_linux_nat_target): New.
9911         (amd64_linux_fetch_inferior_registers)
9912         (amd64_linux_store_inferior_registers): Refactor as methods of
9913         amd64_linux_nat_target.
9914         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9915         * i386-linux-nat.c: Don't include "linux-nat.h".
9916         (i386_linux_nat_target): New class.
9917         (the_i386_linux_nat_target): New.
9918         (i386_linux_fetch_inferior_registers)
9919         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9920         as methods of i386_linux_nat_target.
9921         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9922         * inf-child.c (inf_child_ops): Delete.
9923         (inf_child_fetch_inferior_registers)
9924         (inf_child_store_inferior_registers): Delete.
9925         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9926         methods of inf_child_target.
9927         (inf_child_target::supports_terminal_ours)
9928         (inf_child_target::terminal_init)
9929         (inf_child_target::terminal_inferior)
9930         (inf_child_target::terminal_ours_for_output)
9931         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9932         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9933         New.
9934         (inf_child_open, inf_child_disconnect, inf_child_close)
9935         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9936         (inf_child_post_startup_inferior, inf_child_can_run)
9937         (inf_child_pid_to_exec_file): Refactor as methods of
9938         inf_child_target.
9939         (inf_child_follow_fork): Delete.
9940         (inf_child_target::can_create_inferior)
9941         (inf_child_target::can_attach): New.
9942         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9943         (inf_child_target::has_stack, inf_child_target::has_registers)
9944         (inf_child_target::has_execution): New.
9945         (inf_child_fileio_open, inf_child_fileio_pwrite)
9946         (inf_child_fileio_pread, inf_child_fileio_fstat)
9947         (inf_child_fileio_close, inf_child_fileio_unlink)
9948         (inf_child_fileio_readlink, inf_child_use_agent)
9949         (inf_child_can_use_agent): Refactor as methods of
9950         inf_child_target.
9951         (return_zero, inf_child_target): Delete.
9952         (inf_child_target::inf_child_target): New.
9953         * inf-child.h: Include "target.h".
9954         (inf_child_target): Delete function prototype.
9955         (inf_child_target): New class.
9956         (inf_child_open_target, inf_child_mourn_inferior)
9957         (inf_child_maybe_unpush_target): Delete.
9958         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9959         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9960         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9961         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9962         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9963         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9964         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9965         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9966         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9967         methods of inf_ptrace_target.
9968         (inf_ptrace_target): Delete function.
9969         * inf-ptrace.h: Include "inf-child.h".
9970         (inf_ptrace_target): Delete function declaration.
9971         (inf_ptrace_target): New class.
9972         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9973         * linux-nat.c (linux_target): New.
9974         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9975         (linux_nat_target::~linux_nat_target): New.
9976         (linux_child_post_attach, linux_child_post_startup_inferior)
9977         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9978         (linux_child_remove_fork_catchpoint)
9979         (linux_child_insert_vfork_catchpoint)
9980         (linux_child_remove_vfork_catchpoint)
9981         (linux_child_insert_exec_catchpoint)
9982         (linux_child_remove_exec_catchpoint)
9983         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9984         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9985         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9986         (linux_nat_stopped_data_address)
9987         (linux_nat_stopped_by_sw_breakpoint)
9988         (linux_nat_supports_stopped_by_sw_breakpoint)
9989         (linux_nat_stopped_by_hw_breakpoint)
9990         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9991         (linux_nat_kill, linux_nat_mourn_inferior)
9992         (linux_nat_xfer_partial, linux_nat_thread_alive)
9993         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9994         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9995         (linux_child_static_tracepoint_markers_by_strid)
9996         (linux_nat_is_async_p, linux_nat_can_async_p)
9997         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9998         (linux_nat_supports_multi_process)
9999         (linux_nat_supports_disable_randomization, linux_nat_async)
10000         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10001         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10002         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10003         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10004         methods of linux_nat_target.
10005         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10006         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10007         parameter.
10008         (check_stopped_by_watchpoint): Adjust.
10009         (linux_xfer_partial): Delete.
10010         (linux_target_install_ops, linux_target, linux_nat_add_target):
10011         Delete.
10012         (linux_nat_target::linux_nat_target): New.
10013         * linux-nat.h: Include "inf-ptrace.h".
10014         (linux_nat_target): New.
10015         (linux_target, linux_target_install_ops, linux_nat_add_target):
10016         Delete function declarations.
10017         (linux_target): Declare global.
10018         * linux-thread-db.c (thread_db_target): New.
10019         (thread_db_target::thread_db_target): New.
10020         (thread_db_ops): Delete.
10021         (the_thread_db_target): New.
10022         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10023         (thread_db_update_thread_list, thread_db_pid_to_str)
10024         (thread_db_extra_thread_info)
10025         (thread_db_thread_handle_to_thread_info)
10026         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10027         (thread_db_resume): Refactor as methods of thread_db_target.
10028         (init_thread_db_ops): Delete.
10029         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10030         * x86-linux-nat.c: Don't include "linux-nat.h".
10031         (super_post_startup_inferior): Delete.
10032         (x86_linux_nat_target::~x86_linux_nat_target): New.
10033         (x86_linux_child_post_startup_inferior)
10034         (x86_linux_read_description, x86_linux_enable_btrace)
10035         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10036         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10037         methods of x86_linux_nat_target.
10038         (x86_linux_create_target): Delete.  Bits folded ...
10039         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10040         pointer.
10041         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10042         (x86_linux_nat_target): New class.
10043         (x86_linux_create_target): Delete.
10044         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10045         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10046         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10047         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10048         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10049         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10050         make extern.
10051         (x86_use_watchpoints): Delete.
10052         * x86-nat.h: Include "breakpoint.h" and "target.h".
10053         (x86_use_watchpoints): Delete.
10054         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10055         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10056         (x86_insert_watchpoint, x86_remove_watchpoint)
10057         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10058         (x86_stopped_by_hw_breakpoint): New declarations.
10059         (x86_nat_target): New template class.
10060
10061         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10062         (the_ppc_linux_nat_target): New.
10063         (ppc_linux_fetch_inferior_registers)
10064         (ppc_linux_can_use_hw_breakpoint)
10065         (ppc_linux_region_ok_for_hw_watchpoint)
10066         (ppc_linux_ranged_break_num_registers)
10067         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10068         (ppc_linux_insert_mask_watchpoint)
10069         (ppc_linux_remove_mask_watchpoint)
10070         (ppc_linux_can_accel_watchpoint_condition)
10071         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10072         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10073         (ppc_linux_watchpoint_addr_within_range)
10074         (ppc_linux_masked_watch_num_registers)
10075         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10076         (ppc_linux_read_description): Refactor as methods of
10077         ppc_linux_nat_target.
10078         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10079
10080         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10081         (procfs_target): New class.
10082         (the_procfs_target): New.
10083         (procfs_target): Delete function.
10084         (procfs_auxv_parse, procfs_attach, procfs_detach)
10085         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10086         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10087         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10088         (procfs_create_inferior, procfs_update_thread_list)
10089         (procfs_thread_alive, procfs_pid_to_str)
10090         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10091         (procfs_stopped_data_address, procfs_insert_watchpoint)
10092         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10093         (proc_find_memory_regions, procfs_info_proc)
10094         (procfs_make_note_section): Refactor as methods of procfs_target.
10095         (_initialize_procfs): Adjust.
10096         * sol-thread.c (sol_thread_target): New class.
10097         (sol_thread_ops): Now a sol_thread_target.
10098         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10099         (sol_thread_fetch_registers, sol_thread_store_registers)
10100         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10101         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10102         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10103         (init_sol_thread_ops): Delete.
10104         (_initialize_sol_thread): Adjust.  Remove references to
10105         init_sol_thread_ops and complete_target_initialization.
10106
10107         * windows-nat.c (windows_nat_target): New class.
10108         (windows_fetch_inferior_registers)
10109         (windows_store_inferior_registers, windows_resume, windows_wait)
10110         (windows_attach, windows_detach, windows_pid_to_exec_file)
10111         (windows_files_info, windows_create_inferior)
10112         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10113         (windows_close, windows_pid_to_str, windows_xfer_partial)
10114         (windows_get_tib_address, windows_get_ada_task_ptid)
10115         (windows_thread_name, windows_thread_alive): Refactor as
10116         windows_nat_target methods.
10117         (do_initial_windows_stuff): Adjust.
10118         (windows_target): Delete function.
10119         (_initialize_windows_nat): Adjust.
10120
10121         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10122         (darwin_mourn_inferior, darwin_kill_inferior)
10123         (darwin_create_inferior, darwin_attach, darwin_detach)
10124         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10125         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10126         (darwin_supports_multi_process): Refactor as darwin_nat_target
10127         methods.
10128         (darwin_resume_to, darwin_files_info): Delete.
10129         (_initialize_darwin_inferior): Rename to ...
10130         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10131         * darwin-nat.h: Include "inf-child.h".
10132         (darwin_nat_target): New class.
10133         (darwin_complete_target): Delete.
10134         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10135         (darwin_target): New.
10136         (i386_darwin_fetch_inferior_registers)
10137         (i386_darwin_store_inferior_registers): Refactor as methods of
10138         darwin_nat_target.
10139         (darwin_complete_target): Delete, with ...
10140         (_initialize_i386_darwin_nat): ... bits factored out here.
10141
10142         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10143         (the_alpha_linux_nat_target): New.
10144         (alpha_linux_register_u_offset): Refactor as
10145         alpha_linux_nat_target method.
10146         (_initialize_alpha_linux_nat): Adjust.
10147         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10148         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10149         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10150         methods of linux_nat_trad_target.
10151         (linux_trad_target): Delete.
10152         * linux-nat-trad.h (linux_trad_target): Delete function.
10153         (linux_nat_trad_target): New class.
10154         * mips-linux-nat.c (mips_linux_nat_target): New class.
10155         (super_fetch_registers, super_store_registers, super_close):
10156         Delete.
10157         (the_mips_linux_nat_target): New.
10158         (mips64_linux_regsets_fetch_registers)
10159         (mips64_linux_regsets_store_registers)
10160         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10161         (mips_linux_register_u_offset, mips_linux_read_description)
10162         (mips_linux_can_use_hw_breakpoint)
10163         (mips_linux_stopped_by_watchpoint)
10164         (mips_linux_stopped_data_address)
10165         (mips_linux_region_ok_for_hw_watchpoint)
10166         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10167         (mips_linux_close): Refactor as methods of mips_linux_nat.
10168         (_initialize_mips_linux_nat): Adjust to C++ification.
10169
10170         * aix-thread.c (aix_thread_target): New class.
10171         (aix_thread_ops): Now an aix_thread_target.
10172         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10173         (aix_thread_fetch_registers, aix_thread_store_registers)
10174         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10175         (aix_thread_thread_alive, aix_thread_pid_to_str)
10176         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10177         Refactor as methods of aix_thread_target.
10178         (init_aix_thread_ops): Delete.
10179         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10180         and complete_target_initialization.
10181         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10182         (rs6000_nat_target): New class.
10183         (the_rs6000_nat_target): New.
10184         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10185         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10186         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10187         (super_create_inferior): Delete.
10188         (_initialize_rs6000_nat): Adjust to C++ification.
10189
10190         * arm-linux-nat.c (arm_linux_nat_target): New class.
10191         (the_arm_linux_nat_target): New.
10192         (arm_linux_fetch_inferior_registers)
10193         (arm_linux_store_inferior_registers, arm_linux_read_description)
10194         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10195         (arm_linux_remove_hw_breakpoint)
10196         (arm_linux_region_ok_for_hw_watchpoint)
10197         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10198         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10199         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10200         arm_linux_nat_target.
10201         (_initialize_arm_linux_nat): Adjust to C++ification.
10202
10203         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10204         (the_aarch64_linux_nat_target): New.
10205         (aarch64_linux_fetch_inferior_registers)
10206         (aarch64_linux_store_inferior_registers)
10207         (aarch64_linux_child_post_startup_inferior)
10208         (aarch64_linux_read_description)
10209         (aarch64_linux_can_use_hw_breakpoint)
10210         (aarch64_linux_insert_hw_breakpoint)
10211         (aarch64_linux_remove_hw_breakpoint)
10212         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10213         (aarch64_linux_region_ok_for_hw_watchpoint)
10214         (aarch64_linux_stopped_data_address)
10215         (aarch64_linux_stopped_by_watchpoint)
10216         (aarch64_linux_watchpoint_addr_within_range)
10217         (aarch64_linux_can_do_single_step): Refactor as methods of
10218         aarch64_linux_nat_target.
10219         (super_post_startup_inferior): Delete.
10220         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10221
10222         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10223         (the_hppa_linux_nat_target): New.
10224         (hppa_linux_fetch_inferior_registers)
10225         (hppa_linux_store_inferior_registers): Refactor as methods of
10226         hppa_linux_nat_target.
10227         (_initialize_hppa_linux_nat): Adjust to C++ification.
10228
10229         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10230         (the_ia64_linux_nat_target): New.
10231         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10232         (ia64_linux_stopped_data_address)
10233         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10234         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10235         ia64_linux_nat_target methods.
10236         (super_xfer_partial): Delete.
10237         (_initialize_ia64_linux_nat): Adjust to C++ification.
10238
10239         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10240         (the_m32r_linux_nat_target): New.
10241         (m32r_linux_fetch_inferior_registers)
10242         (m32r_linux_store_inferior_registers): Refactor as
10243         m32r_linux_nat_target methods.
10244         (_initialize_m32r_linux_nat): Adjust to C++ification.
10245
10246         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10247         (the_m68k_linux_nat_target): New.
10248         (m68k_linux_fetch_inferior_registers)
10249         (m68k_linux_store_inferior_registers): Refactor as
10250         m68k_linux_nat_target methods.
10251         (_initialize_m68k_linux_nat): Adjust to C++ification.
10252
10253         * s390-linux-nat.c (s390_linux_nat_target): New class.
10254         (the_s390_linux_nat_target): New.
10255         (s390_linux_fetch_inferior_registers)
10256         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10257         (s390_insert_watchpoint, s390_remove_watchpoint)
10258         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10259         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10260         (s390_auxv_parse, s390_read_description): Refactor as methods of
10261         s390_linux_nat_target.
10262         (_initialize_s390_nat): Adjust to C++ification.
10263
10264         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10265         (the_sparc_linux_nat_target): New.
10266         (_initialize_sparc_linux_nat): Adjust to C++ification.
10267         * sparc-nat.c (sparc_fetch_inferior_registers)
10268         (sparc_store_inferior_registers): Remove target_ops parameter.
10269         * sparc-nat.h (sparc_fetch_inferior_registers)
10270         (sparc_store_inferior_registers): Remove target_ops parameter.
10271         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10272         (the_sparc64_linux_nat_target): New.
10273         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10274
10275         * spu-linux-nat.c (spu_linux_nat_target): New class.
10276         (the_spu_linux_nat_target): New.
10277         (spu_child_post_startup_inferior, spu_child_post_attach)
10278         (spu_child_wait, spu_fetch_inferior_registers)
10279         (spu_store_inferior_registers, spu_xfer_partial)
10280         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10281         methods.
10282         (_initialize_spu_nat): Adjust to C++ification.
10283
10284         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10285         (the_tilegx_linux_nat_target): New.
10286         (fetch_inferior_registers, store_inferior_registers):
10287         Refactor as methods.
10288         (_initialize_tile_linux_nat): Adjust to C++ification.
10289
10290         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10291         (the_xtensa_linux_nat_target): New.
10292         (xtensa_linux_fetch_inferior_registers)
10293         (xtensa_linux_store_inferior_registers): Refactor as
10294         xtensa_linux_nat_target methods.
10295         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10296
10297         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10298         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10299         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10300         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10301         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10302         (fbsd_stopped_by_sw_breakpoint)
10303         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10304         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10305         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10306         (fbsd_post_startup_inferior, fbsd_post_attach)
10307         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10308         (fbsd_set_syscall_catchpoint)
10309         (super_xfer_partial, super_resume, super_wait)
10310         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10311         (fbsd_handle_debug_trap): Remove target_ops parameter.
10312         (fbsd_nat_add_target): Delete.
10313         * fbsd-nat.h: Include "inf-ptrace.h".
10314         (fbsd_nat_add_target): Delete.
10315         (USE_SIGTRAP_SIGINFO): Define.
10316         (fbsd_nat_target): New class.
10317
10318         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10319         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10320         (amd64bsd_target): Delete.
10321         * amd64-bsd-nat.h: New file.
10322         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10323         "x86-bsd-nat.h".
10324         (amd64_fbsd_nat_target): New class.
10325         (the_amd64_fbsd_nat_target): New.
10326         (amd64fbsd_read_description): Refactor as method of
10327         amd64_fbsd_nat_target.
10328         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10329         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10330         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10331         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10332         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10333         (i386bsd_target): Delete.
10334         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10335         (i386bsd_fetch_inferior_registers)
10336         (i386bsd_store_inferior_registers): Declare.
10337         (i386_bsd_nat_target): New class.
10338         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10339         (the_i386_fbsd_nat_target): New.
10340         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10341         i386_fbsd_nat_target methods.
10342         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10343         (_initialize_i386fbsd_nat): Adjust to C++ification.
10344         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10345         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10346         (_initialize_x86_bsd_nat): Adjust to C++ification.
10347         * x86-bsd-nat.h: Include "x86-nat.h".
10348         (x86bsd_target): Delete declaration.
10349         (x86bsd_nat_target): New class.
10350
10351         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10352         (the_aarch64_fbsd_nat_target): New.
10353         (aarch64_fbsd_fetch_inferior_registers)
10354         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10355         aarch64_fbsd_nat_target.
10356         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10357         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10358         (the_alpha_bsd_nat_target): New.
10359         (alphabsd_fetch_inferior_registers)
10360         (alphabsd_store_inferior_registers): Refactor as
10361         alpha_bsd_nat_target methods.
10362         (_initialize_alphabsd_nat): Refactor as methods of
10363         alpha_bsd_nat_target.
10364         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10365         (the_amd64_nbsd_nat_target): New.
10366         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10367         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10368         (the_amd64_obsd_nat_target): New.
10369         (_initialize_amd64obsd_nat): Adjust to C++ification.
10370         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10371         (the_arm_fbsd_nat_target): New.
10372         (arm_fbsd_fetch_inferior_registers)
10373         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10374         (_initialize_arm_fbsd_nat): Refactor as methods of
10375         arm_fbsd_nat_target.
10376         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10377         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10378         (the_arm_netbsd_nat_target): New.
10379         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10380         arm_netbsd_nat_target.
10381         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10382         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10383         (the_hppa_nbsd_nat_target): New.
10384         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10385         hppa_nbsd_nat_target methods.
10386         (_initialize_hppanbsd_nat): Adjust to C++ification.
10387         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10388         (the_hppa_obsd_nat_target): New.
10389         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10390         methods of hppa_obsd_nat_target.
10391         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10392         add_target.
10393         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10394         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10395         add_target.
10396         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10397         (_initialize_i386obsd_nat): Use add_target.
10398         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10399         (the_m68k_bsd_nat_target): New.
10400         (m68kbsd_fetch_inferior_registers)
10401         (m68kbsd_store_inferior_registers): Refactor as methods of
10402         m68k_bsd_nat_target.
10403         (_initialize_m68kbsd_nat): Adjust to C++ification.
10404         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10405         (the_mips_fbsd_nat_target): New.
10406         (mips_fbsd_fetch_inferior_registers)
10407         (mips_fbsd_store_inferior_registers): Refactor as methods of
10408         mips_fbsd_nat_target.
10409         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10410         add_target.
10411         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10412         (the_mips_nbsd_nat_target): New.
10413         (mipsnbsd_fetch_inferior_registers)
10414         (mipsnbsd_store_inferior_registers): Refactor as methods of
10415         mips_nbsd_nat_target.
10416         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10417         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10418         (the_mips64_obsd_nat_target): New.
10419         (mips64obsd_fetch_inferior_registers)
10420         (mips64obsd_store_inferior_registers): Refactor as methods of
10421         mips64_obsd_nat_target.
10422         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10423         add_target.
10424         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10425         nbsd_nat_target.
10426         * nbsd-nat.h: Include "inf-ptrace.h".
10427         (nbsd_nat_target): New class.
10428         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10429         (obsd_wait): Refactor as methods of obsd_nat_target.
10430         (obsd_add_target): Delete.
10431         * obsd-nat.h: Include "inf-ptrace.h".
10432         (obsd_nat_target): New class.
10433         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10434         (the_ppc_fbsd_nat_target): New.
10435         (ppcfbsd_fetch_inferior_registers)
10436         (ppcfbsd_store_inferior_registers): Refactor as methods of
10437         ppc_fbsd_nat_target.
10438         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10439         add_target.
10440         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10441         (the_ppc_nbsd_nat_target): New.
10442         (ppcnbsd_fetch_inferior_registers)
10443         (ppcnbsd_store_inferior_registers): Refactor as methods of
10444         ppc_nbsd_nat_target.
10445         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10446         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10447         (the_ppc_obsd_nat_target): New.
10448         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10449         methods of ppc_obsd_nat_target.
10450         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10451         add_target.
10452         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10453         (the_sh_nbsd_nat_target): New.
10454         (shnbsd_fetch_inferior_registers)
10455         (shnbsd_store_inferior_registers): Refactor as methods of
10456         sh_nbsd_nat_target.
10457         (_initialize_shnbsd_nat): Adjust to C++ification.
10458         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10459         (inf_ptrace_xfer_partial): Delete.
10460         (sparc_xfer_partial, sparc_target): Delete.
10461         * sparc-nat.h (sparc_fetch_inferior_registers)
10462         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10463         (sparc_target): Delete function declaration.
10464         (sparc_target): New template class.
10465         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10466         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10467         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10468         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10469         add_target.
10470         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10471         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10472         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10473         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10474         add_target.
10475         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10476         (the_vax_bsd_nat_target): New.
10477         (vaxbsd_fetch_inferior_registers)
10478         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10479         methods.
10480         (_initialize_vaxbsd_nat): Adjust to C++ification.
10481
10482         * bsd-kvm.c (bsd_kvm_target): New class.
10483         (bsd_kvm_ops): Now a bsd_kvm_target.
10484         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10485         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10486         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10487         bsd_kvm_target.
10488         (bsd_kvm_return_one): Delete.
10489         (bsd_kvm_add_target): Adjust to C++ification.
10490
10491         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10492         (nto_procfs_target_procfs): New classes.
10493         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10494         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10495         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10496         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10497         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10498         (procfs_remove_hw_breakpoint, procfs_resume)
10499         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10500         (procfs_kill_inferior, procfs_store_registers)
10501         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10502         as methods of nto_procfs_target.
10503         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10504         (nto_native_ops): Delete.
10505         (procfs_open, procfs_native_open): Delete.
10506         (nto_native_ops): Now an nto_procfs_target_native.
10507         (init_procfs_targets): Adjust to C++ification.
10508         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10509         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10510         Refactor as methods of nto_procfs_target.
10511
10512         * go32-nat.c (go32_nat_target): New class.
10513         (the_go32_nat_target): New.
10514         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10515         (go32_store_registers, go32_xfer_partial, go32_files_info)
10516         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10517         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10518         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10519         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10520         (go32_target): Delete.
10521         (_initialize_go32_nat): Adjust to C++ification.
10522
10523         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10524         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10525         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10526         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10527         gnu_nat_target.
10528         (gnu_target): Delete.
10529         * gnu-nat.h (gnu_target): Delete.
10530         (gnu_nat_target): New class.
10531         * i386-gnu-nat.c (gnu_base_target): New.
10532         (i386_gnu_nat_target): New class.
10533         (the_i386_gnu_nat_target): New.
10534         (_initialize_i386gnu_nat): Adjust to C++ification.
10535
10536 2018-05-02  Pedro Alves  <palves@redhat.com>
10537
10538         * bfd-target.c (target_bfd_xclose): Rename to ...
10539         (target_bfd_close): ... this.
10540         (target_bfd_reopen): Adjust.
10541         * target.c (target_close): Remove references to to_xclose.
10542         * target.h (target_ops::to_xclose): Delete.
10543         (target_ops::to_close): Update comments.
10544
10545 2018-05-02  Pedro Alves  <palves@redhat.com>
10546
10547         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10548         "linux-nat.h".
10549         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10550         * inf-ptrace.c (inf_ptrace_register_u_offset)
10551         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10552         (inf_ptrace_store_register, inf_ptrace_store_registers)
10553         (inf_ptrace_trad_target): Move to ...
10554         * linux-nat-trad.c: ... this new file.
10555         * linux-nat-trad.h: New file.
10556         * linux-nat.c (linux_target_install_ops): Make extern.
10557         (linux_trad_target): Delete.
10558         * linux-nat.h (linux_trad_target): Delete declaration.
10559         (linux_target_install_ops): Declare.
10560         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10561         "linux-nat.h".
10562
10563 2018-05-02  Pedro Alves  <palves@redhat.com>
10564
10565         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10566         procfs_target/add_target here.
10567         * procfs.c (procfs_target): Make static.
10568         (_initialize_procfs): Call add_target here.
10569         * procfs.h (struct target_ops): Remove forward declaration.
10570         (procfs_target): Remove declaration.
10571         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10572
10573 2018-05-02  Pedro Alves  <palves@redhat.com>
10574
10575         * procfs.c (procfs_stopped_by_watchpoint)
10576         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10577         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10578         Forward declare.
10579         (procfs_use_watchpoints): Delete, move contents...
10580         (procfs_target): ... here.
10581         * procfs.h (procfs_use_watchpoints): Delete declaration.
10582         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10583         procfs_use_watchpoints.
10584         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10585         procfs_use_watchpoints.
10586
10587 2018-05-02  Tom Tromey  <tom@tromey.com>
10588
10589         PR python/20084:
10590         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10591         and var_zuinteger_unlimited.
10592         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10593         and PARAM_ZUINTEGER_UNLIMITED.
10594         (set_parameter_value): Handle var_zuinteger and
10595         var_zuinteger_unlimited.
10596         (add_setshow_generic): Likewise.
10597         (parmpy_init): Likewise.
10598
10599 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10600
10601         PR rust/23124
10602         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10603         pointer is not null before dereferencing it.
10604
10605 2018-04-30  Tom Tromey  <tom@tromey.com>
10606
10607         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10608         is_mi_like_p.
10609
10610 2018-04-30  Tom Tromey  <tom@tromey.com>
10611
10612         * breakpoint.c (mention): Remove use of is_mi_like_p.
10613         (print_mention_ranged_breakpoint): Likewise.
10614         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10615         of is_mi_like_p.
10616
10617 2018-04-30  Tom Tromey  <tom@tromey.com>
10618
10619         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10620
10621 2018-04-30  Tom Tromey  <tom@tromey.com>
10622
10623         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10624         (info_spu_event_command): Remove some uses of is_mi_like_p.
10625
10626 2018-04-30  Tom Tromey  <tom@tromey.com>
10627
10628         * python/py-framefilter.c (py_print_single_arg)
10629         (enumerate_locals, py_print_args, py_print_frame): Remove some
10630         uses of is_mi_like_p.
10631
10632 2018-04-30  Tom Tromey  <tom@tromey.com>
10633
10634         * ui-out.c: Update.
10635         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10636         * ui-out.h (ui_out::is_mi_like_p): Now const.
10637         (ui_out::do_is_mi_like_p): Now const.
10638         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10639
10640 2018-04-30  Tom Tromey  <tom@tromey.com>
10641
10642         * varobj.c (varobj_set_visualizer): Use new_reference.
10643         * python/python.c (gdbpy_decode_line): Use new_reference.
10644         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10645         new_reference.
10646
10647 2018-04-30  Tom Tromey  <tom@tromey.com>
10648
10649         * varobj.c (install_new_value): Use new_reference.
10650         * value.h (value_incref): Return void.  Swap intro comment with
10651         value_decref.
10652         * value.c (set_value_parent): Use new_reference.
10653         (value_incref): Return void.  Update intro comment.
10654         (release_value): Use new_reference.
10655         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10656
10657 2018-04-30  Tom Tromey  <tom@tromey.com>
10658
10659         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10660         * gdb_bfd.h (new_bfd_ref): Remove.
10661         (gdb_bfd_open): Update comment.
10662         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10663         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10664         (gdb_bfd_fdopenr): Use new_reference.
10665         * exec.c (exec_file_attach): Use new_reference.
10666
10667 2018-04-30  Tom Tromey  <tom@tromey.com>
10668
10669         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10670         method.
10671
10672 2018-04-30  Tom Tromey  <tom@tromey.com>
10673
10674         * jit.c (jit_read_code_entry): Use type_align.
10675         * i386-tdep.c (i386_gdbarch_init): Don't call
10676         set_gdbarch_long_long_align_bit.
10677         * gdbarch.sh: Remove long_long_align_bit.
10678         * gdbarch.c, gdbarch.h: Rebuild.
10679         * arc-tdep.c (arc_type_align): New function.
10680         (arc_gdbarch_init): Use arc_type_align.  Don't call
10681         set_gdbarch_long_long_align_bit.
10682
10683 2018-04-30  Tom Tromey  <tom@tromey.com>
10684
10685         * rust-lang.c (rust_type_alignment): Remove.
10686         (rust_composite_type): Use type_align.
10687
10688 2018-04-30  Tom Tromey  <tom@tromey.com>
10689
10690         * NEWS: Mention Type.align.
10691         * python/py-type.c (typy_get_alignof): New function.
10692         (type_object_getset): Add "alignof".
10693
10694 2018-04-30  Tom Tromey  <tom@tromey.com>
10695
10696         PR exp/17095:
10697         * NEWS: Update.
10698         * std-operator.def (UNOP_ALIGNOF): New operator.
10699         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10700         New.
10701         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10702         * c-lang.c (c_op_print_tab): Add alignof.
10703         * c-exp.y (ALIGNOF): New token.
10704         (exp): Add "ALIGNOF" production.
10705         (ident_tokens): Add _Alignof and alignof.
10706
10707 2018-04-30  Tom Tromey  <tom@tromey.com>
10708
10709         * i386-tdep.c (i386_type_align): New function.
10710         (i386_gdbarch_init): Update.
10711         * gdbarch.sh (type_align): New method.
10712         * gdbarch.c, gdbarch.h: Rebuild.
10713         * arch-utils.h (default_type_align): Declare.
10714         * arch-utils.c (default_type_align): New function.
10715         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10716         (struct type) <align_log2>: New field.
10717         <instance_flags>: Now a bitfield.
10718         (TYPE_RAW_ALIGN): New macro.
10719         (type_align, type_raw_align, set_type_align): Declare.
10720         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10721         functions.
10722         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10723         (get_alignment, maybe_set_alignment): New functions.
10724         (read_structure_type, read_enumeration_type, read_array_type)
10725         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10726         (read_subrange_type, read_base_type): Set type alignment.
10727
10728 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10729
10730         * dwarf2read.c (read_index_from_section): Use bool.
10731
10732 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10733
10734         PR gdb/22950
10735         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10736         with #ifdef.
10737
10738 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10739
10740         PR build/22873
10741         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10742         last step, and do it atomically.
10743
10744 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10745
10746         * compile/compile-c-types.c (convert_int, convert_float):
10747         Update for C FE v1.
10748
10749 2018-04-27  Tom Tromey  <tom@tromey.com>
10750
10751         PR rust/22545:
10752         * rust-lang.c (rust_inclusive_range_type_p): New function.
10753         (rust_range): Handle inclusive ranges.
10754         (rust_compute_range): Likewise.
10755         * rust-exp.y (struct rust_op) <inclusive>: New field.
10756         (DOTDOTEQ): New constant.
10757         (range_expr): Add "..=" productions.
10758         (operator_tokens): Add "..=" token.
10759         (ast_range): Add "inclusive" parameter.
10760         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10761         ranges.
10762         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10763         bounds values.
10764         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10765         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10766         Update comments.
10767         * expprint.c (print_subexp_standard): Handle new bounds values.
10768         (dump_subexp_body_standard): Likewise.
10769
10770 2018-04-27  Tom Tromey  <tom@tromey.com>
10771
10772         * configure: Rebuild.
10773         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10774         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10775         "OVERRIDE".
10776         (class symbol_needs_eval_context): Likewise.
10777         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10778         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10779         "virtual".
10780         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10781         "override".
10782         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10783         * aarch64-tdep.c (instruction_reader::read): Use "override".
10784         (instruction_reader_test::read): Likewise.
10785         * arm-tdep.c (instruction_reader::read): Use "override".
10786         (instruction_reader_thumb::read): Likewise.
10787
10788 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10789
10790         PR remote/9665
10791         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10792         instead of remote_send.
10793         (remote_send): Remove.
10794
10795 2018-04-26  Pedro Alves  <palves@redhat.com>
10796
10797         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10798         find_function_start_sal instead of find_pc_line.
10799
10800 2018-04-26  Pedro Alves  <palves@redhat.com>
10801
10802         * breakpoint.c (set_breakpoint_location_function): Handle
10803         mst_data_gnu_ifunc.
10804         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10805         * elfread.c (elf_symtab_read): Give data symbols with
10806         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10807         (elf_rel_plt_read): Update comment.
10808         * linespec.c (convert_linespec_to_sals): Handle
10809         mst_data_gnu_ifunc.
10810         (minsym_found): Handle mst_data_gnu_ifunc.
10811         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10812         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10813         * parse.c (find_minsym_type_and_address): Handle
10814         mst_data_gnu_ifunc.
10815         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10816         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10817         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10818         comment.
10819         <mst_data_gnu_ifunc>: New enumerator.
10820
10821 2018-04-26  Pedro Alves  <palves@redhat.com>
10822
10823         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10824         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10825         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10826         Handle it.
10827         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10828         (lookup_minimal_symbol_by_pc): Adjust.
10829         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10830         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10831         * minsyms.h (lookup_msym_prefer): New enum.
10832         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10833         parameter by a lookup_msym_prefer parameter.
10834
10835 2018-04-26  Pedro Alves  <palves@redhat.com>
10836
10837         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10838         ends in "@plt" instead of looking at the symbol's section.
10839
10840 2018-04-26  Pedro Alves  <palves@redhat.com>
10841
10842         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10843         all references.
10844         (find_pc_partial_function_gnu_ifunc): Rename to ...
10845         (find_pc_partial_function): ... this, and remove references to
10846         'is_gnu_ifunc_p'.
10847         (find_pc_partial_function): Delete old implementation.
10848         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10849
10850 2018-04-26  Pedro Alves  <palves@redhat.com>
10851
10852         * linespec.c (struct bound_minimal_symbol_search_key): New.
10853         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10854         skip first line if we found a GNU ifunc minimal symbol by name.
10855         (compare_msymbols): Change parameters to work with a destructured
10856         lhs minsym.
10857         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10858         functions.
10859
10860 2018-04-26  Pedro Alves  <palves@redhat.com>
10861
10862         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10863         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10864         address/name.
10865         (add_location_to_breakpoint): Store the minsym and the objfile in
10866         the breakpoint location.
10867         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10868         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10869         Record the minsym in the sal.
10870         * symtab.h (symtab_and_line) <msymbol>: New field.
10871
10872 2018-04-26  Pedro Alves  <palves@redhat.com>
10873
10874         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10875         unless we actually resolved the ifunc.
10876
10877 2018-04-26  Pedro Alves  <palves@redhat.com>
10878
10879         * c-exp.y (variable production): Prefer ifunc minsyms over
10880         regular function symbols.
10881         * symtab.c (find_gnu_ifunc): New function.
10882         * minsyms.h (lookup_msym_prefer): New enum.
10883         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10884         parameter by a lookup_msym_prefer parameter.
10885         * symtab.h (find_gnu_ifunc): New declaration.
10886
10887 2018-04-26  Pedro Alves  <palves@redhat.com>
10888
10889         * blockframe.c (find_gnu_ifunc_target_type): New function.
10890         (find_function_type): New.
10891         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10892         return a value with a memory address.
10893         (eval_call): For calls to GNU ifunc functions, try to find the
10894         type of the target function from the type that the resolver
10895         returns.
10896         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10897         symbols.
10898         * infcall.c (find_function_return_type): Delete.
10899         (find_function_addr): Add 'function_type' parameter.  For calls to
10900         GNU ifunc functions, try to find the type of the target function
10901         from the type that the resolver returns, and return it via
10902         FUNCTION_TYPE.
10903         (call_function_by_hand_dummy): Adjust to use the function type
10904         returned by find_function_addr.
10905         (find_function_addr): Add 'function_type' parameter and move
10906         description here.
10907         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10908         declarations.
10909
10910 2018-04-26  Pedro Alves  <palves@redhat.com>
10911
10912         * c-exp.y (variable production): Skip finding an alias for ifunc
10913         symbols.
10914
10915 2018-04-26  Pedro Alves  <palves@redhat.com>
10916
10917         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10918
10919 2018-04-25  Pedro Alves  <palves@redhat.com>
10920
10921         * infcmd.c (kill_command): Print the pid as string, not the whole
10922         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10923         message.
10924         * remote.c (remote_detach_1): Print the pid as string, not the
10925         whole thread's ptid.
10926
10927 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10928             Sergio Durigan Junior  <sergiodj@redhat.com>
10929             Pedro Alves  <palves@redhat.com>
10930
10931         * infcmd.c (kill_command): Print message when inferior has
10932         been killed.
10933         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10934         '1'.
10935         (add_inferior): Improve message printed when
10936         'print_inferior_events' is on.
10937         (exit_inferior): Remove message printed when
10938         'print_inferior_events' is on.
10939         (detach_inferior): Improve message printed when
10940         'print_inferior_events' is on.
10941         (initialize_inferiors): Use 'add_inferior_silent' to set
10942         'current_inferior_'.
10943         * inferior.h (print_inferior_events): Declare here as
10944         'extern'.
10945         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10946         '[Detaching...]' messages when 'print_inferior_events' is on.
10947         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10948         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10949         'Detaching after fork from child...', replace it by '... from
10950         parent...'.
10951         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10952         prefix/suffix when printing 'Detaching...' messages.  Print
10953         them when 'print_inferior_events' is on.
10954         * remote.c (remote_detach_1): Print message when detaching
10955         from inferior and '!is_fork_parent'.
10956
10957 2018-04-24  Tom Tromey  <tom@tromey.com>
10958
10959         * cli-out.h: Reindent.
10960
10961 2018-04-24  Tom Tromey  <tom@tromey.com>
10962
10963         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10964         (cli_ui_out::do_field_string): Use fputs_filtered.
10965         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10966
10967 2018-04-23  Tom Tromey  <tom@tromey.com>
10968
10969         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10970         gdb::unique_xmalloc_ptr.
10971
10972 2018-04-23  Tom Tromey  <tom@tromey.com>
10973
10974         * configure: Rebuild.
10975
10976 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10977
10978         PR gdb/23095
10979         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10980         prepare_for_testing.  Set normal_bp to r_debug_state if target
10981         is bsd.
10982
10983 2018-04-21  Pedro Alves  <palves@redhat.com>
10984             Rajendra SY  <rajendra.sy@gmail.com>
10985
10986         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10987         * remote.c (extended_remote_attach): In all-stop mode, mark the
10988         thread as executing.
10989
10990 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10991
10992         * thread.c (thread_apply_all_command): Fix comment.
10993         (thread_command): Fix comment.
10994
10995 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10996
10997         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10998         parameter.
10999         * features/aarch64-core.c (create_feature_aarch64_core):
11000         Regenerate.
11001         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11002         Likewise.
11003         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11004         Likewise.
11005         * features/i386/32bit-avx512.c
11006         (create_feature_i386_32bit_avx512): Likewise.
11007         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11008         Likewise.
11009         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11010         Likewise.
11011         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11012         Likewise.
11013         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11014         Likewise.
11015         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11016         Likewise.
11017         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11018         Likewise.
11019         * features/i386/64bit-avx512.c
11020         (create_feature_i386_64bit_avx512): Likewise.
11021         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11022         Likewise.
11023         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11024         Likewise.
11025         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11026         Likewise.
11027         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11028         Likewise.
11029         * features/i386/64bit-segments.c
11030         (create_feature_i386_64bit_segments): Likewise.
11031         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11032         Likewise.
11033         * features/i386/x32-core.c
11034         (create_feature_i386_x32_core): Likewise.
11035         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11036         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11037         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11038         * target-descriptions.c: In generated code, don't pass xml
11039         filename.
11040
11041 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11042
11043         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11044         (print_xml_feature::visit_post): Likewise.
11045         (print_xml_feature::visit): Likewise.
11046         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11047         (print_xml_feature): Add new class.
11048         * regformats/regdat.sh: Null xmltarget on feature targets.
11049         * target-descriptions.c (struct target_desc): Add xmltarget.
11050         (maintenance_check_tdesc_xml_convert): Add unittest function.
11051         (tdesc_get_features_xml): Add function to get xml.
11052         (maintenance_check_xml_descriptions): Test xml generation.
11053         * xml-tdesc.c (string_read_description_xml): Add function.
11054         * xml-tdesc.h (string_read_description_xml): Add declaration.
11055
11056 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11057
11058         * features/Makefile: Add feature marker to targets with new style
11059         target descriptions.
11060         * regformats/aarch64.dat: Regenerate.
11061         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11062         * regformats/i386/amd64-avx-linux.dat: Likewise.
11063         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11064         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11065         * regformats/i386/amd64-linux.dat: Likewise.
11066         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11067         * regformats/i386/amd64.dat: Likewise.
11068         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11069         * regformats/i386/i386-avx-linux.dat: Likewise.
11070         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11071         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11072         * regformats/i386/i386-linux.dat: Likewise.
11073         * regformats/i386/i386-mmx-linux.dat: Likewise.
11074         * regformats/i386/i386-mpx-linux.dat: Likewise.
11075         * regformats/i386/i386.dat: Likewise.
11076         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11077         * regformats/i386/x32-avx-linux.dat: Likewise.
11078         * regformats/i386/x32-linux.dat: Likewise.
11079         * regformats/tic6x-c62x-linux.dat: Likewise.
11080         * regformats/tic6x-c64x-linux.dat: Likewise.
11081         * regformats/tic6x-c64xp-linux.dat: Likewise.
11082         * regformats/regdat.sh: Parse feature marker.
11083
11084 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11085
11086         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11087         (tdesc_osabi_name): Likewise.
11088         * target-descriptions.c (tdesc_architecture_name): Add new
11089         function.
11090         (tdesc_osabi_name): Likewise.
11091
11092 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11093
11094         * common/tdesc.c (tdesc_predefined_type): Move to here.
11095         (tdesc_named_type): Likewise.
11096         (tdesc_create_vector): Likewise.
11097         (tdesc_create_struct): Likewise.
11098         (tdesc_set_struct_size): Likewise.
11099         (tdesc_create_union): Likewise.
11100         (tdesc_create_flags): Likewise.
11101         (tdesc_create_enum): Likewise.
11102         (tdesc_add_field): Likewise.
11103         (tdesc_add_typed_bitfield): Likewise.
11104         (tdesc_add_bitfield): Likewise.
11105         (tdesc_add_flag): Likewise.
11106         (tdesc_add_enum_value): Likewise.
11107         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11108         (struct tdesc_type_vector): Likewise.
11109         (struct tdesc_type_field): Likewise.
11110         (struct tdesc_type_with_fields): Likewise.
11111         (tdesc_create_enum): Add declaration.
11112         (tdesc_add_typed_bitfield): Likewise.
11113         (tdesc_add_enum_value): Likewise.
11114         * target-descriptions.c (tdesc_type_field): Move from here.
11115         (tdesc_type_builtin): Likewise.
11116         (tdesc_type_vector): Likewise.
11117         (tdesc_type_with_fields): Likewise.
11118         (tdesc_predefined_types): Likewise.
11119         (tdesc_named_type): Likewise.
11120         (tdesc_create_vector): Likewise.
11121         (tdesc_create_struct): Likewise.
11122         (tdesc_set_struct_size): Likewise.
11123         (tdesc_create_union): Likewise.
11124         (tdesc_create_flags): Likewise.
11125         (tdesc_create_enum): Likewise.
11126         (tdesc_add_field): Likewise.
11127         (tdesc_add_typed_bitfield): Likewise.
11128         (tdesc_add_bitfield): Likewise.
11129         (tdesc_add_flag): Likewise.
11130         (tdesc_add_enum_value): Likewise.
11131         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11132         (tdesc_add_typed_bitfield): Likewise.
11133         (tdesc_add_enum_value): Likewise.
11134
11135 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11136
11137         * common/tdesc.c (tdesc_feature::accept): Move to here.
11138         (tdesc_feature::operator==): Likewise.
11139         (tdesc_create_reg): Likewise.
11140         * common/tdesc.h (tdesc_type_kind): Likewise.
11141         (struct tdesc_type): Likewise.
11142         (struct tdesc_feature): Likewise.
11143         * regformats/regdat.sh: Create a feature.
11144         * target-descriptions.c (tdesc_type_kind): Move from here.
11145         (tdesc_type): Likewise.
11146         (tdesc_type_up): Likewise.
11147         (tdesc_feature): Likewise.
11148         (tdesc_create_reg): Likewise.
11149
11150 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11151
11152         * Makefile.in: Add arch/tdesc.c
11153         * common/tdesc.c: New file.
11154         * common/tdesc.h (tdesc_element_visitor): Move to here.
11155         (tdesc_element): Likewise.
11156         (tdesc_reg): Likewise.
11157         (tdesc_reg_up): Likewise.
11158         * regformats/regdef.h (reg): Add offset to constructors.
11159         * target-descriptions.c (tdesc_element_visitor): Move from here.
11160         (tdesc_element): Likewise.
11161         (tdesc_reg): Likewise.
11162         (tdesc_reg_up): Likewise.
11163
11164 2018-04-17  Tom Tromey  <tom@tromey.com>
11165
11166         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11167         discriminant field.
11168
11169 2018-04-17  Tom Tromey  <tom@tromey.com>
11170
11171         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11172
11173 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11174
11175         * symtab.c (print_symbol_info): Skip printing filename and line
11176         number when `last' is NULL.
11177         (symtab_symbol_info): Use empty string instead of NULL for first
11178         invocation of print_symbol_info.
11179         (rbreak_command): Pass NULL to `last' parameter of
11180         print_symbol_info.
11181
11182 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11183
11184         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11185         instead of nullptr.
11186
11187 2018-04-16  Pedro Alves  <palves@redhat.com>
11188
11189         * MAINTAINERS (sh): Remove.
11190         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11191         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11192         (ALLDEPFILES): Remove sh64-tdep.c.
11193         * NEWS: Mentions that support for SH-5/SH64 is removed.
11194         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11195         (sh*-*-openbsd*): Ditto.
11196         (sh64-*-elf*): Remove.
11197         (sh*): Remove.
11198         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11199         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11200         * sh-tdep.c: No longer include "sh64-tdep.h".
11201         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11202         * sh64-tdep.c, sh64-tdep.h: Remove files.
11203
11204 2018-04-16  Pedro Alves  <palves@redhat.com>
11205
11206         * MAINTAINERS: Remove m88k.
11207         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11208         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11209         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11210         * NEWS: Mention that support for m88k was removed.
11211         * configure.host (m88*-*-*): Remove support.
11212         * configure.nat (m88k-*-*): Remove support.
11213         * configure.tgt (m88*-*-openbsd*): Remove.
11214         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11215
11216 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11217
11218         * configure.tgt (x86_tobjs): New variable.
11219         (amd64_tobjs, i386_tobjs): Use it.
11220
11221 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11222
11223         * symtab.c (print_symbol_info): Precede the symbol definition by
11224         the line number when available.
11225         * NEWS: Advertise this enhancement.
11226
11227 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11228
11229         * NEWS (New options): announce set/show record btrace cpu.
11230         * btrace.c: Include record-btrace.h.
11231         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11232         the vendor is unknown.
11233         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11234         Maybe overwrite the btrace configuration's cpu.
11235         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11236         (btrace_fetch): Add cpu parameter.  Update callers.
11237         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11238         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11239         errata workarounds if the vendor is unknown.
11240         * python/py-record-btrace.c: Include record-btrace.h.
11241         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11242         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11243         * record-btrace.c (record_btrace_cpu_state_kind): New.
11244         (record_btrace_cpu): New.
11245         (set_record_btrace_cpu_cmdlist): New.
11246         (record_btrace_get_cpu): New.
11247         (require_btrace_thread, record_btrace_info)
11248         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11249         (cmd_set_record_btrace_cpu_none): New.
11250         (cmd_set_record_btrace_cpu_auto): New.
11251         (cmd_set_record_btrace_cpu): New.
11252         (cmd_show_record_btrace_cpu): New.
11253         (_initialize_record_btrace): Initialize set/show record btrace cpu
11254         commands.
11255         * record-btrace.h (record_btrace_get_cpu): New.
11256
11257 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11258
11259         * record.c (set_record_command): Fix typo in message.
11260
11261 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11262
11263         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11264
11265 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11266
11267         * infrun.c (process_event_stop_test): Call
11268         gdbarch_in_indirect_branch_thunk.
11269         * gdbarch.sh (in_indirect_branch_thunk): New.
11270         * gdbarch.c: Regenerated.
11271         * gdbarch.h: Regenerated.
11272         * x86-tdep.h: New.
11273         * x86-tdep.c: New.
11274         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11275         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11276         (ALLDEPFILES): Add x86-tdep.c.
11277         * arch-utils.h (default_in_indirect_branch_thunk): New.
11278         * arch-utils.c (default_in_indirect_branch_thunk): New.
11279         * i386-tdep: Include x86-tdep.h.
11280         (i386_in_indirect_branch_thunk): New.
11281         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11282         function.
11283         * amd64-tdep: Include x86-tdep.h.
11284         (amd64_in_indirect_branch_thunk): New.
11285         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11286
11287 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11288
11289         PR gdb/23053
11290         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11291         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11292         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11293         regression.
11294
11295 2018-04-12  Tom Tromey  <tom@tromey.com>
11296
11297         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11298         (rust_evaluate_subexp): Likewise.
11299
11300 2018-04-12  Pedro Alves  <palves@redhat.com>
11301
11302         * procfs.c (procfs_detach): Make forward declaration's prototype
11303         match definition's protototype.
11304         (proc_get_LDT_entry): Remove stale do_cleanups call.
11305
11306 2018-04-12  Pedro Alves  <palves@redhat.com>
11307
11308         * target.h (target_ops::to_has_exited): Delete.
11309         (target_has_exited): Delete.
11310         * target-delegates.c: Regenerate.
11311
11312 2018-04-11  Pedro Alves  <palves@redhat.com>
11313
11314         * target.c (fileio_fh_t::t): Add comment.
11315         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11316         (target_fileio_close): Handle a NULL target.
11317         (invalidate_fileio_fh): New.
11318         (target_close): Call it.
11319         * remote.c (remote_hostio_send_command): No longer check whether
11320         remote_desc is open.
11321
11322 2018-04-11  Pedro Alves  <palves@redhat.com>
11323
11324         * target.c (fileio_fh_t): Make it a named struct instead of a
11325         typedef.
11326         (fileio_fh_t::is_closed): New method.
11327         (DEF_VEC_O (fileio_fh_t)): Remove.
11328         (fileio_fhandles): Now a std::vector.
11329         (is_closed_fileio_fh): Delete.
11330         (acquire_fileio_fd): Adjust.  Rename parameters.
11331         (release_fileio_fd): Adjust.
11332         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11333         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11334         (target_fileio_close): Adjust.
11335
11336 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11337
11338         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11339         index.
11340
11341 2018-04-10  Pedro Alves  <palves@redhat.com>
11342
11343         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11344         (scoped_finish_thread_state): New class.
11345         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11346         cleanup.
11347         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11348         (fetch_inferior_event, normal_stop): Likewise.
11349         * thread.c (finish_thread_state_cleanup): Delete.
11350
11351 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11352             Pedro Alves  <palves@redhat.com>
11353
11354         * value.c: Include "selftest.h" and "common/array-view.h".
11355         (struct range) <operator ==>: New.
11356         (test_ranges_contain): New.
11357         (check_ranges_vector): New.
11358         (test_insert_into_bit_range_vector): New.
11359         (_initialize_values): Register selftests.
11360         * common/array-view.h (operator==, operator!=): New.
11361
11362 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11363
11364         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11365         an iterator.
11366         * inline-frame.c: Include <algorithm>.
11367         (struct inline_state): Add constructor.
11368         (inline_state_s): Remove.
11369         (DEF_VEC_O(inline_state_s)): Remove.
11370         (inline_states): Change type to std::vector.
11371         (find_inline_frame_state): Adjust to std::vector.
11372         (allocate_inline_frame_state): Remove.
11373         (clear_inline_frame_state): Adjust to std::vector.
11374         (skip_inline_frames): Adjust to std::vector.
11375
11376 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11377
11378         * tracepoint.h (struct trace_state_variable): Add constructor.
11379         <name>: Change type to std::string.
11380         * tracepoint.c (tsv_s): Remove.
11381         (DEF_VEC_O(tsv_s)): Remove.
11382         (tvariables): Change to std::vector.
11383         (create_trace_state_variable): Adjust to std::vector.
11384         (find_trace_state_variable): Likewise.
11385         (find_trace_state_variable_by_number): Likewise.
11386         (delete_trace_state_variable): Likewise.
11387         (trace_variable_command): Adjust to std::string.
11388         (delete_trace_variable_command): Likewise.
11389         (tvariables_info_1): Adjust to std::vector.
11390         (save_trace_state_variables): Likewise.
11391         (start_tracing): Likewise.
11392         (merge_uploaded_trace_state_variables): Adjust to std::vector
11393         and std::string.
11394         * target.h (struct target_ops)
11395         <to_download_trace_state_variable>: Pass reference to
11396         trace_state_variable.
11397         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11398         * target-delegates.c: Re-generate.
11399         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11400         (mi_tsv_deleted): Likewise.
11401         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11402         * remote.c (remote_download_trace_state_variable): Change
11403         pointer to reference and adjust.
11404         * make-target-delegates (parse_argtypes): Handle references.
11405         (write_function_header): Likewise.
11406         (munge_type): Likewise.
11407
11408 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11409
11410         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11411         string_view-selftests.c.
11412         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11413         testsuite.
11414         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11415         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11416         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11417         * unittests/basic_string_view/element_access/char/1.cc:
11418         Likewise.
11419         * unittests/basic_string_view/element_access/char/empty.cc:
11420         Likewise.
11421         * unittests/basic_string_view/element_access/char/front_back.cc:
11422         Likewise.
11423         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11424         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11425         Likewise.
11426         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11427         Likewise.
11428         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11429         Likewise.
11430         * unittests/basic_string_view/operations/compare/char/1.cc:
11431         Likewise.
11432         * unittests/basic_string_view/operations/compare/char/13650.cc:
11433         Likewise.
11434         * unittests/basic_string_view/operations/copy/char/1.cc:
11435         Likewise.
11436         * unittests/basic_string_view/operations/data/char/1.cc:
11437         Likewise.
11438         * unittests/basic_string_view/operations/find/char/1.cc:
11439         Likewise.
11440         * unittests/basic_string_view/operations/find/char/2.cc:
11441         Likewise.
11442         * unittests/basic_string_view/operations/find/char/3.cc:
11443         Likewise.
11444         * unittests/basic_string_view/operations/find/char/4.cc:
11445         Likewise.
11446         * unittests/basic_string_view/operations/rfind/char/1.cc:
11447         Likewise.
11448         * unittests/basic_string_view/operations/rfind/char/2.cc:
11449         Likewise.
11450         * unittests/basic_string_view/operations/rfind/char/3.cc:
11451         Likewise.
11452         * unittests/basic_string_view/operations/substr/char/1.cc:
11453         Likewise.
11454         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11455         * unittests/string_view-selftests.c: New file.
11456
11457 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11458
11459         * unittests/basic_string_view/capacity/1.cc: New file.
11460         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11461         * unittests/basic_string_view/cons/char/1.cc: New file.
11462         * unittests/basic_string_view/cons/char/2.cc: New file.
11463         * unittests/basic_string_view/cons/char/3.cc: New file.
11464         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11465         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11466         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11467         * unittests/basic_string_view/element_access/char/1.cc: New file.
11468         * unittests/basic_string_view/element_access/char/2.cc: New file.
11469         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11470         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11471         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11472         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11473         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11474         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11475         * unittests/basic_string_view/include.cc: New file.
11476         * unittests/basic_string_view/inserters/char/1.cc: New file.
11477         * unittests/basic_string_view/inserters/char/2.cc: New file.
11478         * unittests/basic_string_view/inserters/char/3.cc: New file.
11479         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11480         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11481         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11482         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11483         * unittests/basic_string_view/literals/types.cc: New file.
11484         * unittests/basic_string_view/literals/values.cc: New file.
11485         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11486         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11487         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11488         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11489         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11490         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11491         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11492         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11493         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11494         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11495         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11496         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11497         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11498         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11499         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11500         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11501         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11502         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11503         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11504         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11505         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11506         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11507         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11508         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11509         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11510         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11511         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11512         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11513         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11514         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11515         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11516         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11517         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11518         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11519         * unittests/basic_string_view/operators/char/2.cc: New file.
11520         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11521         * unittests/basic_string_view/range_access/char/1.cc: New file.
11522         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11523         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11524         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11525         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11526         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11527         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11528         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11529         * unittests/basic_string_view/typedefs.cc: New file.
11530         * unittests/basic_string_view/types/1.cc: New file.
11531
11532 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11533
11534         * common/gdb_string_view.h: Remove libstdc++ implementation
11535         details, adjust to gdb reality.
11536         * common/gdb_string_view.tcc: Likewise.
11537         * cli/cli-script.c (struct string_view): Remove.
11538         (user_args) <m_args>: Change element type to gdb::string_view.
11539         (user_args::insert_args): Adjust.
11540
11541 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11542
11543         * common/gdb_string_view.h: New file.
11544         * common/gdb_string_view.tcc: New file.
11545
11546 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11547
11548         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11549         * configure: Re-generate.
11550
11551 2018-04-09  Pedro Alves  <palves@redhat.com>
11552
11553         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11554         (set_target_gdbarch): Call
11555         gdb::observers::architecture_changed.notify instead of
11556         observer_notify_architecture_changed.
11557
11558 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11559
11560         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11561         (do_restore_current_traceframe_cleanup): Remove.
11562         (restore_current_traceframe_cleanup_dtor): Remove.
11563         (make_cleanup_restore_current_traceframe): Remove.
11564         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11565         New.
11566         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11567         * infrun.c (fetch_inferior_event): Use
11568         scoped_restore_current_traceframe.
11569
11570 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11571
11572         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11573         Remove.
11574         <n_allocated_type_units>: Remove.
11575         <all_type_units>: Change to std::vector.
11576         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11577         to std::vector change.
11578         (dwarf2_per_objfile::get_cutu): Likewise.
11579         (dwarf2_per_objfile::get_tu): Likewise.
11580         (create_signatured_type_table_from_index): Likewise.
11581         (create_signatured_type_table_from_debug_names): Likewise.
11582         (dw2_symtab_iter_next): Likewise.
11583         (dw2_print_stats): Likewise.
11584         (dw2_expand_all_symtabs): Likewise.
11585         (dw2_expand_marked_cus): Likewise.
11586         (dw2_debug_names_iterator::next): Likewise.
11587         (dwarf2_initialize_objfile): Likewise.
11588         (add_signatured_type_cu_to_table): Likewise.
11589         (create_all_type_units): Likewise.
11590         (add_type_unit): Likewise.
11591         (struct tu_abbrev_offset): Add constructor.
11592         (build_type_psymtabs_1): Adjust to std::vector change.
11593         (print_tu_stats): Likewise.
11594         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11595         (write_debug_names): Likewise.
11596
11597 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11598
11599         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11600         Make an std::vector.
11601         <n_comp_units>: Remove.
11602         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11603         to std::vector change.
11604         (dwarf2_per_objfile::get_cutu): Likewise.
11605         (dwarf2_per_objfile::get_cu): Likewise.
11606         (create_cus_from_index): Likewise.
11607         (create_addrmap_from_index): Likewise.
11608         (create_addrmap_from_aranges): Likewise.
11609         (dwarf2_read_index): Likewise.
11610         (dw2_find_last_source_symtab): Likewise.
11611         (dw2_map_symtabs_matching_filename): Likewise.
11612         (dw2_symtab_iter_next): Likewise.
11613         (dw2_print_stats): Likewise.
11614         (dw2_expand_all_symtabs): Likewise.
11615         (dw2_expand_symtabs_with_fullname): Likewise.
11616         (dw2_expand_marked_cus): Likewise.
11617         (dw2_map_symbol_filenames): Likewise.
11618         (create_cus_from_debug_names): Likewise.
11619         (dwarf2_read_debug_names): Likewise.
11620         (dw2_debug_names_iterator::next): Likewise.
11621         (dwarf2_initialize_objfile): Likewise.
11622         (set_partial_user): Likewise.
11623         (dwarf2_build_psymtabs_hard): Likewise.
11624         (read_comp_units_from_section): Remove arguments, adjust to
11625         std::vector change.
11626         (create_all_comp_units): Adjust to std::vector and
11627         read_comp_units_from_section changes.
11628         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11629         change.
11630         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11631         (psyms_seen_size): Likewise.
11632         (write_gdbindex): Likewise.
11633         (write_debug_names): Likewise.
11634
11635 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11636
11637         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11638         with dwarf2_per_objfile.
11639         (create_cus_from_index): Likewise.
11640         (create_signatured_type_table_from_index): Likewise.
11641         (dwarf2_read_index): Likewise.
11642         (dwarf2_initialize_objfile): Likewise.
11643         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11644         per_cu rather than get_dwarf2_per_objfile.
11645
11646 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11647
11648         * dwarf2read.h (struct signatured_type): Forward declare.
11649         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11650         New methods.
11651         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11652         (dw2_get_cutu): ...this.
11653         (dwarf2_per_objfile::get_cu): Rename from...
11654         (dw2_get_cu): ...this.
11655         (dwarf2_per_objfile::get_tu): New.
11656         (create_addrmap_from_index): Adjust.
11657         (create_addrmap_from_aranges): Adjust.
11658         (dw2_find_last_source_symtab): Adjust.
11659         (dw2_map_symtabs_matching_filename): Adjust.
11660         (dw2_symtab_iter_next): Adjust.
11661         (dw2_print_stats): Adjust.
11662         (dw2_expand_all_symtabs): Adjust.
11663         (dw2_expand_symtabs_with_fullname): Adjust.
11664         (dw2_expand_marked_cus): Adjust.
11665         (dw_expand_symtabs_matching_file_matcher): Adjust.
11666         (dw2_map_symbol_filenames): Adjust.
11667         (dw2_debug_names_iterator::next): Adjust.
11668         (dwarf2_initialize_objfile): Adjust.
11669         (set_partial_user): Adjust.
11670         (dwarf2_build_psymtabs_hard): Adjust.
11671
11672 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11673
11674         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11675         Remove unused variables.
11676         (dw2_map_symtabs_matching_filename): Likewise.
11677         (dwarf2_record_block_ranges): Likewise.
11678         (dwarf2_read_addr_index): Likewise.
11679         (follow_die_offset): Likewise.
11680
11681 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11682
11683         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11684         to symbol_file_add_main.
11685
11686 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11687
11688         PR mi/22299
11689         * mi/mi-console.c (do_fputc_async_safe): New.
11690         (mi_console_file::write_async_safe): New.
11691         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11692         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11693         New.
11694         * ui-file.c (ui_file::putstrn): Adjust call to
11695         fputstrn_unfiltered.
11696         * utils.c (printchar): Replace do_fputs and do_fprintf
11697         parameters by do_fputc.
11698         (fputstr_filtered): Adjust call to printchar.
11699         (fputstr_unfiltered): Likewise.
11700         (fputstrn_filtered): Likewise.
11701         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11702         printchar.
11703         * utils.h (do_fputc_ftype): New typedef.
11704         (fputstrn_unfiltered): Add do_fputc parameter.
11705
11706 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11707
11708         * regformats/i386/i386-avx.dat: Remove.
11709
11710 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11711
11712         PR gdb/22979
11713         * amd64-tdep.c (amd64_none_init_abi): New function.
11714         (amd64_x32_none_init_abi): New function.
11715         (_initialize_amd64_tdep): Register handlers for x86-64 and
11716         x64_32 with GDB_OSABI_NONE.
11717         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11718         GDB_OSABI_NONE osabi.
11719
11720 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11721
11722         PR gdb/22980
11723         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11724         GDB_OSABI_NONE.
11725         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11726         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11727
11728 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11729
11730         * common/byte-vector.h (char_vector): New type.
11731         * target.h (target_read_alloc): Return
11732         gdb::optional<byte_vector>.
11733         (target_read_stralloc): Return gdb::optional<char_vector>.
11734         (target_get_osdata): Return gdb::optional<char_vector>.
11735         * target.c (target_read_alloc_1): Templatize.  Replacement
11736         manual memory management with vector.
11737         (target_read_alloc): Change return type, adjust.
11738         (target_read_stralloc): Change return type, adjust.
11739         (target_get_osdata): Change return type, adjust.
11740         * auxv.c (struct auxv_info) <length>: Remove.
11741         <data>: Change type to gdb::optional<byte_vector>.
11742         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11743         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11744         (target_auxv_search): Adjust.
11745         (fprint_target_auxv): Adjust.
11746         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11747         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11748         (linux_make_corefile_notes): Adjust.
11749         * osdata.c (get_osdata): Adjust.
11750         * remote.c (remote_get_threads_with_qxfer): Adjust.
11751         (remote_memory_map): Adjust.
11752         (remote_traceframe_info): Adjust.
11753         (btrace_read_config): Adjust.
11754         (remote_read_btrace): Adjust.
11755         (remote_pid_to_exec_file): Adjust.
11756         * solib-aix.c (solib_aix_get_library_list): Adjust.
11757         * solib-dsbt.c (decode_loadmap): Don't free buf.
11758         (dsbt_get_initial_loadmaps): Adjust.
11759         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11760         * solib-target.c (solib_target_current_sos): Adjust.
11761         * tracepoint.c (sdata_make_value): Adjust.
11762         * xml-support.c (xinclude_start_include): Adjust.
11763         (xml_fetch_content_from_file): Adjust.
11764         * xml-support.h (xml_fetch_another): Change return type.
11765         (xml_fetch_content_from_file): Change return type.
11766         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11767         * xml-tdesc.c (file_read_description_xml): Adjust.
11768         (fetch_available_features_from_target): Change return type.
11769         (target_fetch_description_xml): Adjust.
11770         (target_read_description_xml): Adjust.
11771
11772 2018-04-06  Tom Tromey  <tom@tromey.com>
11773
11774         * value.c (~value): Update.
11775         (struct value) <contents>: Now unique_xmalloc_ptr.
11776         (value_contents_bits_eq, allocate_value_contents)
11777         (value_contents_raw, value_contents_all_raw)
11778         (value_contents_for_printing, value_contents_for_printing_const)
11779         (set_value_enclosing_type): Update.
11780
11781 2018-04-06  Tom Tromey  <tom@tromey.com>
11782
11783         * value.c (range_s): Remove typedef, VEC.
11784         (struct range): Add operator<.
11785         (range_lessthan): Remove.
11786         (ranges_contain): Change type.
11787         (~value): Update.
11788         (struct value) <unavailable, optimized_out>: Now std::vector.
11789         (value_entirely_available)
11790         (value_entirely_covered_by_range_vector)
11791         (value_entirely_unavailable, value_entirely_optimized_out):
11792         Update.
11793         (insert_into_bit_range_vector): Change argument type.
11794         (find_first_range_overlap): Likewise.
11795         (struct ranges_and_idx, value_contents_bits_eq)
11796         (require_not_optimized_out, require_available): Update.
11797         (ranges_copy_adjusted): Change argument types.
11798         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11799
11800 2018-04-06  Tom Tromey  <tom@tromey.com>
11801
11802         * value.c (~value): Update.
11803         (struct value) <parent>: Now a value_ref_ptr.
11804         (value_parent, set_value_parent, value_address, value_copy):
11805         Update.
11806
11807 2018-04-06  Tom Tromey  <tom@tromey.com>
11808
11809         * value.c (struct value): Add constructor, destructor, and member
11810         initializers.
11811         (allocate_value_lazy, value_decref): Update.
11812
11813 2018-04-06  Tom Tromey  <tom@tromey.com>
11814
11815         * value.c (struct value) <released, next>: Remove.
11816         (all_values): Now a std::vector.
11817         (allocate_value_lazy): Update.
11818         (value_next): Remove.
11819         (value_mark, value_free_to_mark, release_value)
11820         (value_release_to_mark): Update.
11821
11822 2018-04-06  Tom Tromey  <tom@tromey.com>
11823
11824         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11825         (free_value_chain): Remove.
11826         * value.c (free_value_chain): Remove.
11827         (value_release_to_mark): Return a std::vector.
11828         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11829         std::vector.
11830         (check_condition): Update.
11831         * eval.c (fetch_subexp_value): Change "val_chain" to a
11832         std::vector.
11833         * breakpoint.c (update_watchpoint): Update.
11834         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11835
11836 2018-04-06  Tom Tromey  <tom@tromey.com>
11837
11838         * value.h (free_all_values): Remove.
11839         * value.c (free_all_values): Remove.
11840
11841 2018-04-06  Tom Tromey  <tom@tromey.com>
11842
11843         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11844         (value_history_chain, value_history_count): Remove.
11845         (value_history): New global.
11846         (record_latest_value, access_value_history, show_values)
11847         (preserve_values): Update.
11848
11849 2018-04-06  Tom Tromey  <tom@tromey.com>
11850
11851         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11852         * varobj.c (varobj_set_display_format, varobj_set_value)
11853         (install_default_visualizer, construct_visualizer)
11854         (install_new_value, ~varobj, varobj_get_value_type)
11855         (my_value_of_variable, varobj_editable_p): Update.
11856         * c-varobj.c (c_describe_child, c_value_of_variable)
11857         (cplus_number_of_children, cplus_describe_child): Update.
11858         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11859         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11860         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11861
11862 2018-04-06  Tom Tromey  <tom@tromey.com>
11863
11864         * printcmd.c (last_examine_address): Change type to
11865         value_ref_ptr.
11866         (do_examine, x_command): Update.
11867
11868 2018-04-06  Tom Tromey  <tom@tromey.com>
11869
11870         * value.c (release_value): Update.
11871         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11872         (struct bpstats) <val>: Now a value_ref_ptr.
11873         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11874         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11875         (~watchpoint, print_it_watchpoint, watch_command_1)
11876         (invalidate_bp_value_on_memory_change): Update.
11877
11878 2018-04-06  Tom Tromey  <tom@tromey.com>
11879
11880         * varobj.c (varobj_clear_saved_item)
11881         (update_dynamic_varobj_children, install_new_value, ~varobj):
11882         Update.
11883         * value.h (value_incref): Move declaration earlier.
11884         (value_decref): Rename from value_free.
11885         (struct value_ref_policy): New.
11886         (value_ref_ptr): New typedef.
11887         (struct value_deleter): Remove.
11888         (gdb_value_up): Remove typedef.
11889         (release_value): Change return type.
11890         (release_value_or_incref): Remove.
11891         * value.c (set_value_parent): Update.
11892         (value_incref): Change return type.
11893         (value_decref): Rename from value_free.
11894         (value_free_to_mark, free_all_values, free_value_chain): Update.
11895         (release_value): Return value_ref_ptr.
11896         (release_value_or_incref): Remove.
11897         (record_latest_value, set_internalvar, clear_internalvar):
11898         Update.
11899         * stack.c (info_frame_command): Don't call value_free.
11900         * python/py-value.c (valpy_dealloc, valpy_new)
11901         (value_to_value_object): Update.
11902         * printcmd.c (do_examine): Update.
11903         * opencl-lang.c (lval_func_free_closure): Update.
11904         * mi/mi-main.c (register_changed_p): Don't call value_free.
11905         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11906         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11907         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11908         value_free.
11909         * guile/scm-value.c (vlscm_free_value_smob)
11910         (vlscm_scm_from_value): Update.
11911         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11912         (frame_unwind_register_unsigned, get_frame_register_bytes)
11913         (put_frame_register_bytes): Don't call value_free.
11914         * findvar.c (address_from_register): Don't call value_free.
11915         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11916         * dwarf2loc.c (entry_data_value_free_closure)
11917         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11918         (dwarf2_evaluate_loc_desc_full): Update.
11919         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11920         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11921         (~watchpoint, watch_command_1)
11922         (invalidate_bp_value_on_memory_change): Update.
11923         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11924
11925 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11926
11927         PR gdb/23022
11928         * warning.m4: Add -Wno-error=deprecated-register.
11929         * configure: Re-generate.
11930
11931 2018-04-05  Tom Tromey  <tom@tromey.com>
11932
11933         * linespec.h: Remove include of "vec.h".
11934
11935 2018-04-05  Tom Tromey  <tom@tromey.com>
11936
11937         * linespec.c (typep): Remove typedef.
11938         (find_methods, find_superclass_methods): Take a std::vector.
11939         (find_method): Use std::vector.
11940
11941 2018-04-05  Tom Tromey  <tom@tromey.com>
11942
11943         * utils.c (compare_strings): Remove.
11944         * utils.h (compare_strings): Remove.
11945         * objc-lang.h (find_imps): Update.
11946         * objc-lang.c (find_methods): Take a std::vector.
11947         (uniquify_strings, find_imps): Likewise.
11948         * linespec.c (find_methods): Take a std::vector.
11949         (decode_objc): Use std::vector.
11950         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11951         a std::vector.
11952         (find_method, find_function_symbols): Use std::vector.
11953
11954 2018-04-05  Tom Tromey  <tom@tromey.com>
11955
11956         * completer.c (completion_tracker::completion_tracker): Remove
11957         cast.
11958         (completion_tracker::discard_completions): Likewise.
11959         * breakpoint.c (ambiguous_names_p): Remove cast.
11960         * ada-lang.c (_initialize_ada_language): Remove cast.
11961         * utils.h (streq): Update.
11962         (streq_hash): Add new declaration.
11963         * utils.c (streq): Return bool.
11964         (streq_hash): New function.
11965
11966 2018-04-05  Tom Tromey  <tom@tromey.com>
11967
11968         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11969         Remove a string copy.
11970
11971 2018-04-05  Tom Tromey  <tom@tromey.com>
11972
11973         * linespec.c (filter_results): Use std::vector.
11974         (decode_line_2, decode_line_full): Update.
11975
11976 2018-04-05  Tom Tromey  <tom@tromey.com>
11977
11978         * linespec.c (canonical_to_fullform): Return std::string.
11979         (filter_results): Update.
11980         (struct decode_line_2_item): Add constructor.
11981         <fullform, displayform>: Now std::string.
11982         (decode_line_2_compare_items): Now a std::sort comparator.
11983         (decode_line_2): Update.
11984
11985 2018-04-05  Tom Tromey  <tom@tromey.com>
11986
11987         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11988         (unexpected_linespec_error): Update.
11989         (linespec_parse_basic, parse_linespec): Update.
11990
11991 2018-04-05  Tom Tromey  <tom@tromey.com>
11992
11993         * linespec.c (linespec_parse_basic): Reindent.
11994
11995 2018-04-05  Tom Tromey  <tom@tromey.com>
11996
11997         * minsyms.h (iterate_over_minimal_symbols): Update.
11998         * minsyms.c (iterate_over_minimal_symbols): Take a
11999         gdb::function_view.
12000         * linespec.c (struct collect_minsyms): Remove.
12001         (compare_msyms): Now a std::sort comparator.
12002         (add_minsym): Add parameters.
12003         (search_minsyms_for_name): Update.  Use std::vector.
12004
12005 2018-04-03  Tom Tromey  <tom@tromey.com>
12006
12007         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12008         gdb::byte_vector.
12009
12010 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12011
12012         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12013
12014 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12015
12016         PR gdb/16959
12017         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12018         printing static type.
12019
12020 2018-04-01  Tom Tromey  <tom@tromey.com>
12021
12022         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12023         (rs6000_xfer_shared_libraries): Update.
12024
12025 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12026
12027         * common/gdb_vecs.h (char_ptr): Remove.
12028         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12029
12030 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12031
12032         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12033         with std::vector.
12034         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12035
12036 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12037
12038         * tracepoint.h (struct uploaded_tp): Initialize fields.
12039         <actions, step_actions, cmd_strings>: Change type to
12040         std::vector<char *>.
12041         * tracepoint.c (get_uploaded_tp): Allocate with new.
12042         (free_uploaded_tps): Free with delete.
12043         (parse_tracepoint_definition): Adjust to std::vector change.
12044         * breakpoint.c (read_uploaded_action): Likewise.
12045         (create_tracepoint_from_upload): Likewise.
12046         * ctf.c (ctf_write_uploaded_tp): Likewise.
12047         (SET_ARRAY_FIELD): Likewise.
12048         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12049
12050 2018-03-30  Tom Tromey  <tom@tromey.com>
12051
12052         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12053         std::unique_ptr.
12054         (svr4_keep_data_in_core): Update.
12055         (svr4_read_so_list): Update.
12056
12057 2018-03-30  Tom Tromey  <tom@tromey.com>
12058
12059         * windows-nat.c (handle_output_debug_string, handle_exception):
12060         Update.
12061         * target.h (target_read_string): Update.
12062         * target.c (target_read_string): Change "string" to
12063         unique_xmalloc_ptr.
12064         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12065         Update.
12066         * solib-frv.c (frv_current_sos): Update.
12067         * solib-dsbt.c (dsbt_current_sos): Update.
12068         * solib-darwin.c (darwin_current_sos): Update.
12069         * linux-thread-db.c (inferior_has_bug): Update.
12070         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12071         Update.  Remove alloca.
12072         * ada-lang.c (ada_main_name): Update.
12073
12074 2018-03-30  Tom Tromey  <tom@tromey.com>
12075
12076         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12077         (struct dwo_file_deleter): New.
12078         (dwo_file_up): New typedef.
12079         (open_and_init_dwo_file): Use dwo_file_up.
12080         (free_dwo_file_cleanup): Remove.
12081
12082 2018-03-30  Tom Tromey  <tom@tromey.com>
12083
12084         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12085         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12086
12087 2018-03-30  Tom Tromey  <tom@tromey.com>
12088
12089         * dwarf2read.c (class free_cached_comp_units): New class.
12090         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12091         (free_cached_comp_units): Remove function.
12092
12093 2018-03-30  Tom Tromey  <tom@tromey.com>
12094
12095         * utils.h (make_cleanup_unpush_target): Remove.
12096         * inf-ptrace.c (struct target_unpusher): New.
12097         (target_unpush_up) New typedef.
12098         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12099         target_unpush_up.
12100         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12101
12102 2018-03-27  Tom Tromey  <tom@tromey.com>
12103
12104         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12105
12106 2018-03-27  Pedro Alves  <palves@redhat.com>
12107             Tom Tromey  <tom@tromey.com>
12108
12109         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12110         destructor.  Now a class.
12111         (gdb_readline_wrapper_cleanup): Remove function.
12112         (gdb_readline_wrapper): Remove cleanups.
12113
12114 2018-03-27  Tom Tromey  <tom@tromey.com>
12115
12116         * typeprint.h (struct type_print_options) <local_typedefs,
12117         global_typedefs>: Remove "struct" keyword.
12118         (class typedef_hash_table): New class.
12119         (recursively_update_typedef_hash, add_template_parameters)
12120         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12121         (find_typedef_in_hash): Don't declare.
12122         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12123         (typedef_hash_table::recursively_update): Rename from
12124         recursively_update_typedef_hash.  Now a member.
12125         (typedef_hash_table::add_template_parameters): Rename from
12126         add_template_parameters.  Now a member.
12127         (typedef_hash_table::typedef_hash_table): Now a constructor;
12128         rename from create_typedef_hash.
12129         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12130         rename from free_typedef_hash.
12131         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12132         (do_free_global_table): Remove.
12133         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12134         from copy_type_recursive.
12135         (create_global_typedef_table): Remove.
12136         (typedef_hash_table::find_global_typedef): Now a member of
12137         typedef_hash_table.
12138         (typedef_hash_table::find_typedef): Rename from
12139         find_typedef_in_hash; now a member.
12140         (whatis_exp): Update.
12141         * extension.h (struct ext_lang_type_printers): Add constructor and
12142         destructor.
12143         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12144         declare.
12145         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12146         Now a constructor; rename from start_ext_lang_type_printers.
12147         (ext_lang_type_printers): Now a destructor; rename from
12148         free_ext_lang_type_printers.
12149         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12150         Update.
12151         (c_type_print_base_struct_union): Update.  Remove cleanups.
12152
12153 2018-03-27  Tom Tromey  <tom@tromey.com>
12154
12155         * dwarf-index-write.c: Include <cmath>.
12156
12157 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12158
12159         * NEWS: Add entry describing new "set|show varsize-limit" command.
12160         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12161         command.
12162         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12163         "set variable".
12164
12165 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12166
12167         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12168         dwarf-index-write.c
12169         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12170         * dwarf-index-common.c: New file.
12171         * dwarf-index-common.h: New file.
12172         * dwarf-index-write.c: New file.
12173         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12174         (struct dwarf2_section_info): Move from here.
12175         (dwarf2_section_info_def): Likewise.
12176         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12177         (offset_type): Likewise.
12178         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12179         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12180         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12181         (byte_swap): Likewise.
12182         (MAYBE_SWAP): Likewise.
12183         (dwarf2_per_cu_ptr): Likewise.
12184         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12185         (struct tu_stats): Likewise.
12186         (struct dwarf2_per_objfile): Likewise.
12187         (struct dwarf2_per_cu_data): Likewise.
12188         (struct signatured_type): Likewise.
12189         (sig_type_ptr): Likewise.
12190         (DEF_VEC_P (sig_type_ptr)): Likewise.
12191         (INDEX4_SUFFIX): Likewise.
12192         (INDEX5_SUFFIX): Likewise.
12193         (DEBUG_STR_SUFFIX): Likewise.
12194         (dwarf2_read_section): Make non-static.
12195         (mapped_index_string_hash): Move from here.
12196         (dwarf5_djb_hash): Likewise.
12197         (file_write): Likewise.
12198         (class data_buf): Likewise.
12199         (struct symtab_index_entry): Likewise.
12200         (struct mapped_symtab): Likewise.
12201         (find_slot): Likewise.
12202         (hash_expand): Likewise.
12203         (add_index_entry): Likewise.
12204         (uniquify_cu_indices): Likewise.
12205         (class c_str_view): Likewise.
12206         (class c_str_view_hasher): Likewise.
12207         (class vector_hasher): Likewise.
12208         (write_hash_table): Likewise.
12209         (psym_index_map): Likewise.
12210         (struct addrmap_index_data): Likewise.
12211         (add_address_entry): Likewise.
12212         (add_address_entry_worker): Likewise.
12213         (write_address_map): Likewise.
12214         (symbol_kind): Likewise.
12215         (write_psymbols): Likewise.
12216         (struct signatured_type_index_data): Likewise.
12217         (write_one_signatured_type): Likewise.
12218         (recursively_count_psymbols): Likewise.
12219         (recursively_write_psymbols): Likewise.
12220         (class debug_names): Likewise.
12221         (check_dwarf64_offsets): Likewise.
12222         (psyms_seen_size): Likewise.
12223         (write_gdbindex): Likewise.
12224         (write_debug_names): Likewise.
12225         (assert_file_size): Likewise.
12226         (write_psymtabs_to_index): Likewise.
12227         (save_gdb_index_command): Likewise.
12228         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12229         command.
12230         * dwarf2read.h: New file.
12231
12232 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12233
12234         PR gdb/22670
12235         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12236         symbol name if the CU's language stores symbol names in linkage
12237         format.
12238         * language.h (struct language_defn)
12239         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12240         all instances of this struct.
12241
12242 2018-03-26  Tom Tromey  <tom@tromey.com>
12243
12244         * stack.c (backtrace_command_1): Remove verbose code.
12245
12246 2018-03-26  Tom Tromey  <tom@tromey.com>
12247
12248         * python/py-framefilter.c (py_print_type): Don't catch
12249         exceptions.  Return void.
12250         (py_print_value): Likewise.
12251         (py_print_single_arg): Likewise.
12252         (enumerate_args): Don't catch exceptions.
12253         (py_print_args): Likewise.
12254         (py_print_frame): Likewise.
12255         (gdbpy_apply_frame_filter): Catch exceptions here.
12256
12257 2018-03-26  Tom Tromey  <tom@tromey.com>
12258
12259         * stack.c (_initialize_stack): Remove trailing newlines from help
12260         text.  Add "Usage" line to "backtrace" help.
12261
12262 2018-03-26  Tom Tromey  <tom@tromey.com>
12263
12264         PR python/16486:
12265         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12266
12267 2018-03-26  Tom Tromey  <tom@tromey.com>
12268
12269         * python/py-framefilter.c (py_print_single_arg): Return
12270         EXT_LANG_BT_ERROR from catch.
12271
12272 2018-03-26  Tom Tromey  <tom@tromey.com>
12273
12274         PR backtrace/15584:
12275         * stack.c (backtrace_command_1): Move some code into no-filters
12276         "if".
12277
12278 2018-03-26  Tom Tromey  <tom@tromey.com>
12279
12280         * python/py-framefilter.c (throw_quit_or_print_exception): New
12281         function.
12282         (gdbpy_apply_frame_filter): Use it.
12283
12284 2018-03-26  Tom Tromey  <tom@tromey.com>
12285
12286         PR cli/17716:
12287         * python/py-framefilter.c (py_print_type, py_print_value)
12288         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12289         RETURN_MASK_ERROR.
12290
12291 2018-03-26  Tom Tromey  <tom@tromey.com>
12292
12293         * python/py-framefilter.c (enumerate_args): Use
12294         gdb::unique_xmalloc_ptr.
12295
12296 2018-03-26  Tom Tromey  <tom@tromey.com>
12297
12298         * python/py-framefilter.c (py_print_frame): Return
12299         EXT_LANG_BT_OK.
12300         (gdbpy_apply_frame_filter): Update comment.
12301         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12302         Remove.
12303         <EXT_LANG_BT_NO_FILTERS>: Change value.
12304
12305 2018-03-26  Tom Tromey  <tom@tromey.com>
12306
12307         PR backtrace/15582:
12308         * stack.c (backtrace_command): Parse "hide" argument.
12309         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12310         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12311         constant.
12312
12313 2018-03-26  Tom Tromey  <tom@tromey.com>
12314
12315         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12316         add "flags".
12317         (backtrace_command): Remove "fulltrace", add "flags".
12318
12319 2018-03-26  Tom Tromey  <tom@tromey.com>
12320
12321         * stack.c (backtrace_command): Rewrite command line parsing.
12322
12323 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12324
12325         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12326
12327 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12328
12329         * filename-seen-cache.h: Add include guard.
12330
12331 2018-03-26  Keith Seitz  <keiths@redhat.com>
12332
12333         * symfile.c (place_section): Remove "struct" from section_addr_info
12334         in comment.
12335         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12336         "struct" keyword from section_addr_info.
12337
12338 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12339
12340         * regformats/regdef.h (reg): Add constructors.
12341
12342 2018-03-25  Pedro Alves  <palves@redhat.com>
12343
12344         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12345         if then/else bodies in var_func_name extraction.
12346
12347 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12348
12349         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12350         lookup_minimal_symbol() to find symbol entry.
12351         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12352
12353 2018-03-23  Keith Seitz  <keiths@redhat.com>
12354
12355         PR c++/22968
12356         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12357         nested type definitions for C++, too.
12358
12359 2018-03-23  Tom Tromey  <tom@tromey.com>
12360
12361         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12362         a typedef.
12363         (macho_register_oso): Remove.
12364         (macho_symtab_read): Take a std::vector.
12365         (oso_el_compare_name): Now a std::sort comparator.
12366         (macho_symfile_read_all_oso): Take a std::vector.
12367         (macho_symfile_read): Use std::vector.  Remove cleanups.
12368
12369 2018-03-22  Tom Tromey  <tom@tromey.com>
12370
12371         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12372         (record_full_goto_bookmark): Use std::string.
12373
12374 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12375
12376         PR tdep/18295
12377         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12378         a single mask.
12379
12380 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12381
12382         * rs6000-tdep.c (store_insn_p): New function.
12383         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12384         and cr_reg to their unshifted values. Use store_insn_p to
12385         match LR saves using either R1 or fdata->alloca_reg. Use
12386         store_insn_p to match CR saves. Set alloca_reg_offset
12387         when alloca_reg and framep are set. Remove lr_reg shift
12388         when assigning to fdata->lr_register.
12389
12390 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12391
12392         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12393         command line args instead of emitting a warning.
12394
12395 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12396
12397         * tracepoint.h (struct static_tracepoint_marker): Initialize
12398         fields, define default constructor, move constructor and move
12399         assignment, disable the rest.
12400         <str_id, extra>: Make std::string.
12401         (release_static_tracepoint_marker): Remove.
12402         (free_current_marker): Remove.
12403         * tracepoint.c (free_current_marker): Remove.
12404         (parse_static_tracepoint_marker_definition): Adjust to
12405         std::string, use new hex2str overload.
12406         (release_static_tracepoint_marker): Remove.
12407         (print_one_static_tracepoint_marker): Get marker by reference
12408         and adjust to std::string.
12409         (info_static_tracepoint_markers_command): Adjust to std::vector
12410         changes
12411         * target.h (static_tracepoint_marker_p): Remove typedef.
12412         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12413         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12414         bool.
12415         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12416         * target-debug.h
12417         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12418         (target_debug_print_std_vector_static_tracepoint_marker): New.
12419         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12420         to...
12421         (target_debug_print_static_tracepoint_marker_p): ... this.
12422         * target-delegates.c: Re-generate.
12423         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12424         Make std::string.
12425         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12426         (decode_static_tracepoint_spec): Adjust to std::vector.
12427         (tracepoint_print_one_detail): Adjust to std::string.
12428         (strace_marker_decode_location): Adjust to std::string.
12429         (update_static_tracepoint): Adjust to std::string, remove call
12430         to release_static_tracepoint_marker.
12431         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12432         Adjust to std::vector.
12433         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12434         (remote_static_tracepoint_markers_by_strid): Adjust to
12435         std::vector.
12436         * common/rsp-low.h (hex2str): New overload with explicit count
12437         of bytes.
12438         * common/rsp-low.c (hex2str): New overload with explicit count
12439         of bytes.
12440         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12441         (_initialize_rsp_low_selftests): Add test_hex2str test.
12442         * unittests/tracepoint-selftests.c
12443         (test_parse_static_tracepoint_marker_definition): Adjust to
12444         std::string.
12445
12446 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12447
12448         * tracepoint.c (parse_static_tracepoint_marker_definition):
12449         Consider case where the definition is followed by more
12450         definitions.
12451         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12452         tracepoint-selftests.c.
12453         * unittests/tracepoint-selftests.c: New.
12454
12455 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12456
12457         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12458         Carvalho.
12459
12460 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12461
12462         * symtab.c (find_pc_sect_line): fixed indentation.
12463
12464 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12465
12466         * symtab.c (find_pc_sect_line): now uses binary search.
12467
12468 2018-03-19  Tom Tromey  <tom@tromey.com>
12469
12470         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12471         "IDENT" production.
12472
12473 2018-03-19  Pedro Alves  <palves@redhat.com>
12474             Tom Tromey  <tom@tromey.com>
12475
12476         * unittests/observable-selftests.c: New file.
12477         * common/observable.h: New file.
12478         * observable.h: New file.
12479         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12480         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12481         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12482         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12483         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12484         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12485         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12486         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12487         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12488         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12489         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12490         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12491         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12492         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12493         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12494         tui/tui-interp.c, valops.c: Update all users.
12495         * tui/tui-hooks.c (tui_bp_created_observer)
12496         (tui_bp_deleted_observer, tui_bp_modified_observer)
12497         (tui_inferior_exit_observer, tui_before_prompt_observer)
12498         (tui_normal_stop_observer, tui_register_changed_observer):
12499         Remove.
12500         (tui_observers_token): New global.
12501         (attach_or_detach, tui_attach_detach_observers): New functions.
12502         (tui_install_hooks, tui_remove_hooks): Use
12503         tui_attach_detach_observers.
12504         * record-btrace.c (record_btrace_thread_observer): Remove.
12505         (record_btrace_thread_observer_token): New global.
12506         * observer.sh: Remove.
12507         * observer.c: Rename to observable.c.
12508         * observable.c (namespace gdb_observers): Define new objects.
12509         (observer_debug): Move into gdb_observers namespace.
12510         (struct observer, struct observer_list, xalloc_observer_list_node)
12511         (xfree_observer_list_node, generic_observer_attach)
12512         (generic_observer_detach, generic_observer_notify): Remove.
12513         (_initialize_observer): Update.
12514         Don't include observer.inc.
12515         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12516         (clean mostlyclean): Likewise.
12517         (observer.h, observer.inc): Remove targets.
12518         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12519         (COMMON_SFILES): Use observable.c, not observer.c.
12520         * .gitignore: Remove observer.h.
12521
12522 2018-03-18  Tom Tromey  <tom@tromey.com>
12523
12524         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12525         gdb::def_vector.
12526         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12527
12528 2018-03-17  Tom Tromey  <tom@tromey.com>
12529
12530         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12531
12532 2018-03-17  Tom Tromey  <tom@tromey.com>
12533
12534         * target.c (class scoped_target_fd): New.
12535         (target_fileio_close_cleanup): Remove.
12536         (target_fileio_read_alloc_1): Use scoped_target_fd.
12537
12538 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12539
12540         * silent-rules.mk: New.
12541         * Makefile.in: Include silent-rules.mk
12542         (srcdir, VPATH, top_srcdir): Move up.
12543         (COMPILE): Add ECHO_CXX.
12544         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12545         (init.c): Add ECHO_INIT_C.
12546         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12547         (version.c): Add ECHO_GEN.
12548         (printcmd.o): Add ECHO_CXX.
12549         (target-float.o): Add ECHO_CXX.
12550         (ada-exp.o): Add ECHO_CXX.
12551         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12552         (insight$(EXEEXT)): Add ECHO_CXXLD.
12553         * gnulib/configure.ac: Add AM_SILENT_RULES.
12554         * gnulib/aclocal.m4: Re-generate.
12555         * gnulib/configure: Re-generate.
12556         * gnulib/import/Makefile.in: Re-generate.
12557
12558 2018-03-16  Tom Tromey  <tom@tromey.com>
12559
12560         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12561         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12562         * utils.c (do_free_section_addr_info)
12563         (make_cleanup_free_section_addr_info): Remove.
12564         * symfile.h (struct other_sections): Add constructor.
12565         (struct section_addr_info): Remove.
12566         (section_addr_info): New typedef.
12567         (struct sym_fns) <sym_offsets>: Change type of parameter.
12568         (build_section_addr_info_from_objfile)
12569         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12570         (default_symfile_offsets, symbol_file_add)
12571         (symbol_file_add_from_bfd)
12572         (build_section_addr_info_from_section_table): Update.
12573         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12574         * symfile.c (alloc_section_addr_info): Remove.
12575         (build_section_addr_info_from_section_table): Change return type.
12576         Update.
12577         (build_section_addr_info_from_bfd)
12578         (build_section_addr_info_from_objfile): Likewise.
12579         (free_section_addr_info): Remove.
12580         (relative_addr_info_to_section_offsets): Change type of "addrs".
12581         (addrs_section_compar): Now a std::sort comparator.
12582         (addrs_section_sort): Change return type.
12583         (addr_info_make_relative): Change type of "addrs".  Update.
12584         (default_symfile_offsets, syms_from_objfile_1)
12585         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12586         (symbol_file_add_separate): Update.
12587         (symbol_file_add): Change type of "addrs".  Update.
12588         (add_symbol_file_command): Update.  Remove cleanups.
12589         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12590         cleanups.
12591         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12592         * solib.c (solib_read_symbols): Update.
12593         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12594         * machoread.c (macho_symfile_offsets): Update.
12595         * jit.c (jit_bfd_try_read_symtab): Update.
12596
12597 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12598
12599         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12600         unittests/utils-selftests.c.
12601         * unittests/utils-selftests.c: New file.
12602
12603 2018-03-14  Tom Tromey  <tom@tromey.com>
12604
12605         PR cli/14977:
12606         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12607         for NULL.
12608
12609 2018-03-14  Tom Tromey  <tom@tromey.com>
12610
12611         PR cli/19918:
12612         * printcmd.c (printf_pointer): Allow "-" in format.
12613
12614 2018-03-14  Tom Tromey  <tom@tromey.com>
12615
12616         * printcmd.c (_initialize_printcmd): Add usage to printf.
12617
12618 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12619
12620         * MAINTAINERS: Update my email address.
12621
12622 2018-03-13  Tom Tromey  <tom@tromey.com>
12623
12624         * machoread.c (macho_check_dsym): Change filenamep to a
12625         std::string*.
12626         (macho_symfile_read): Update.
12627         * symfile.c (load_command): Use std::string.
12628
12629 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12630
12631         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12632         to error message string.
12633         (riscv_register_name): Use xsnprintf instead of sprintf.
12634         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12635         internal_error.
12636         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12637         error.
12638         (riscv_push_dummy_call): Likewise.
12639
12640 2018-03-12  Tom Tromey  <tom@tromey.com>
12641
12642         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12643         Use gdb::byte_vector.
12644         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12645
12646 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12647
12648         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12649         parameter type to readable_regcache.
12650         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12651         the declaration.
12652
12653 2018-03-11  Tom Tromey  <tom@tromey.com>
12654
12655         * dwarf2read.c (struct nextfield): Add initializers.
12656         (struct nextfnfield): Remove.
12657         (struct fnfieldlist): Add initializers.  Remove "length" and
12658         "head", use std::vector.
12659         (struct decl_field_list): Remove.
12660         (struct field_info): Add initializers.
12661         <fields, baseclasses>: Now std::vector.
12662         <nbaseclasses, nfnfields, typedef_field_list_count,
12663         nested_types_list_count>: Remove.
12664         (dwarf2_add_field, dwarf2_add_type_defn)
12665         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12666         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12667         (process_structure_scope): Update.
12668
12669 2018-03-11  Tom Tromey  <tom@tromey.com>
12670
12671         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12672         for use by std::sort.
12673         (build_type_psymtabs_1): Use std::vector.
12674
12675 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12676
12677         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12678         and LIBMPFR in the printed configuration.
12679
12680 2018-03-08  Tom Tromey  <tom@tromey.com>
12681
12682         * source.c (get_filename_and_charpos): Use scoped_fd.
12683         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12684         (procfs_pidlist): Likewise.
12685         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12686         (iterate_over_mappings): Likewise.
12687
12688 2018-03-08  Tom Tromey  <tom@tromey.com>
12689
12690         * infcall.c (struct call_return_meta_info)
12691         <stack_temporaries_enabled>: Remove.
12692         (get_call_return_value, call_function_by_hand_dummy): Update.
12693         * thread.c (disable_thread_stack_temporaries): Remove.
12694         (enable_thread_stack_temporaries): Remove.
12695         (thread_stack_temporaries_enabled_p): Return bool.
12696         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12697         (get_last_thread_stack_temporary): Update.
12698         * eval.c (evaluate_subexp): Update.
12699         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12700         class, not a function.
12701         (value_ptr, value_vec): Remove typedefs.
12702         (class thread_info) <stack_temporaries_enabled>: Now bool.
12703         <stack_temporaries>: Now a std::vector.
12704         (thread_stack_temporaries_enabled_p)
12705         (value_in_thread_stack_temporaries): Return bool.
12706
12707 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12708
12709         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12710         (getpkt_or_notif_sane_1): Likewise.
12711
12712 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12713
12714         * build-id.c (build_id_to_debug_bfd): Use std::string.
12715
12716 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12717
12718         * build-id.c (find_separate_debug_file_by_buildid): Return
12719         std::string.
12720         * build-id.h (find_separate_debug_file_by_buildid): Return
12721         std::string.
12722         * coffread.c (coff_symfile_read): Adjust to std::string.
12723         * elfread.c (elf_symfile_read): Adjust to std::string.
12724         * symfile.c (separate_debug_file_exists): Change parameter to
12725         std::string.
12726         (find_separate_debug_file): Return std::string.
12727         (find_separate_debug_file_by_debuglink): Return std::string.
12728         * symfile.h (find_separate_debug_file_by_debuglink): Return
12729         std::string.
12730
12731 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12732
12733         * common/xml-utils.c (xml_escape_text): Move code to...
12734         (xml_escape_text_append): ... this new function.
12735         * common/xml-utils.h (xml_escape_text_append): New declaration.
12736         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12737         New function.
12738         (_initialize_xml_utils): register test_xml_escape_text_append as
12739         a selftest.
12740
12741 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12742
12743         * defs.h: Remove MAX_REGISTER_SIZE.
12744         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12745         asserts.
12746         * python/py-unwind.c (pyuw_sniffer): Likewise.
12747
12748 2018-03-07  Tom Tromey  <tom@tromey.com>
12749
12750         * linux-tdep.c (linux_info_proc): Update.
12751         * target.h (struct target_ops) <to_fileio_readlink>: Return
12752         optional<string>.
12753         (target_fileio_readlink): Return optional<string>.
12754         * remote.c (remote_hostio_readlink): Return optional<string>.
12755         * inf-child.c (inf_child_fileio_readlink): Return
12756         optional<string>.
12757         * target.c (target_fileio_readlink): Return optional<string>.
12758
12759 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12760
12761         * regcache.c (cooked_read_test): Add riscv to the list of
12762         architectures that have a save_reggroup.
12763
12764 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12765
12766         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12767         value is not a dynamic class object.
12768
12769 2018-03-06  Tom Tromey  <tom@tromey.com>
12770
12771         * rust-exp.y: Formatting fixes.
12772
12773 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12774
12775         * riscv-tdep.c (riscv_register_name): Remove target description
12776         support.
12777         (riscv_gdbarch_init): Remove target description check.
12778
12779 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12780
12781         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12782         comment.
12783         * riscv-tdep.h: Likewise.
12784
12785 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12786
12787         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12788         (riscv_pseudo_register_write): Delete.
12789         (riscv_gdbarch_init): Remove all use of pseudo registers.
12790
12791 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12792
12793         * record-btrace.c (btrace_print_lines): Replace cleanup
12794         parameter with RAII equivalents.
12795         (btrace_insn_history): Replace cleanup with RAII equivalents.
12796         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12797         make_cleanup_ui_out_tuple_begin_end): Remove.
12798         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12799         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12800         make_cleanup_ui_out_list_begin_end): Remove.
12801
12802 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12803
12804         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12805         parameter types to std::vector.  Use bool.
12806         (record_btrace_wait): Replace VEC(tp_t) with
12807         std::vector<thread_info *>.
12808         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12809
12810 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12811
12812         * record-btrace.c (record_btrace_disable_callback): Remove.
12813         (struct scoped_btrace_disable): New.
12814         (record_btrace_open): Use scoped_btrace_disable.
12815
12816 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12817
12818         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12819         reading values from registers.
12820
12821 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12822
12823         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12824         where appropriate.
12825
12826 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12827
12828         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12829         change parameter type.  Use GDB's print functions, and use
12830         core_addr_to_string where appropriate.
12831         (riscv_push_dummy_call): Use core_addr_to_string where
12832         appropriate, update call to riscv_print_arg_location, and reindent
12833         a few lines.
12834         (riscv_return_value): Update call to riscv_print_arg_location.
12835
12836 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12837             Tim Newsome <tim@sifive.com>
12838             Albert Ou <a0u@eecs.berkeley.edu>
12839             Darius Rad <darius@bluespec.com>
12840
12841         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12842         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12843         (ALLDEPFILES): Add riscv-tdep.c
12844         * configure.tgt: Add riscv support.
12845         * riscv-tdep.c: New file.
12846         * riscv-tdep.h: New file.
12847         * NEWS: Mention new target.
12848         * MAINTAINERS: Add entry for riscv.
12849
12850 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12851
12852         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12853         fields within aggregates.
12854
12855 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12856
12857         * record-btrace.c (btrace_print_lines): Change type of flags to
12858         gdb_disassembly_flags.
12859
12860 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12861
12862         * fbsd-nat.c: Include "inf-ptrace.h".
12863         (USE_SIGTRAP_SIGINFO): Conditionally define.
12864         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12865         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12866         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12867         function.
12868         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12869         Likewise.
12870         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12871         Likewise.
12872         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12873         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12874         "supports_stopped_by_hw_breakpoint" target methods.
12875
12876 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12877
12878         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12879         * fbsd-nat.c (debug_fbsd_nat): New variable.
12880         (show_fbsd_nat_debug): New function.
12881         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12882         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12883
12884 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12885
12886         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12887         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12888         prototype.
12889         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12890         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12891         method.
12892
12893 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12894
12895         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12896         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12897
12898 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12899
12900         * charset.c (struct charset_vector): New.
12901         (charsets): Change type to charset_vector.
12902         (find_charset_names): Adjust.
12903         (add_one): Adjust.
12904         (_initialize_charset): Adjust.
12905
12906 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12907
12908         * progspace.h (struct program_space) <deleted_solibs>: Change
12909         type to std::vector<std::string>.
12910         * progspace.c (clear_program_space_solib_cache): Adjust.
12911         * breakpoint.c (print_solib_event): Adjust.
12912         (check_status_catch_solib): Adjust.
12913         * solib.c (update_solib_list): Adjust.
12914         * ui-out.h (class ui_out) <field_string>: New overload.
12915         * ui-out.c (ui_out::field_string): New overload.
12916
12917 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12918
12919         * progspace.h (struct program_space): Add constructor and
12920         destructor, initialize fields.
12921         (add_program_space): Remove.
12922         * progspace.c (add_program_space): Rename to...
12923         (program_space::program_space): ... this.
12924         (release_program_space): Rename to...
12925         (program_space::~program_space): ... this.
12926         (delete_program_space): Use delete to delete program_space.
12927         (initialize_progspace): Use new to allocate program_space.
12928         * inferior.c (add_inferior_with_spaces): Likewise.
12929         (clone_inferior_command): Likewise.
12930         * infrun.c (follow_fork_inferior): Likewise.
12931         (handle_vfork_child_exec_or_exit): Likewise.
12932
12933 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12934
12935         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12936         (delim_string_to_char_ptr_vec): Return std::vector of
12937         gdb::unique_xmalloc_ptr.
12938         (dirnames_to_char_ptr_vec_append): Take std::vector of
12939         gdb::unique_xmalloc_ptr.
12940         (dirnames_to_char_ptr_vec): Return std::vector of
12941         gdb::unique_xmalloc_ptr.
12942         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12943         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12944         (delim_string_to_char_ptr_vec): Return an std::vector of
12945         gdb::unique_xmalloc_ptr, adjust the code.
12946         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12947         gdb::unique_xmalloc_ptr, adjust the code.
12948         (dirnames_to_char_ptr_vec): Return an std::vector of
12949         gdb::unique_xmalloc_ptr, adjust the code.
12950         * auto-load.c (auto_load_safe_path_vec): Change type to
12951         std::vector of gdb::unique_xmalloc_ptr.
12952         (auto_load_expand_dir_vars): Return an std::vector of
12953         gdb::unique_xmalloc_ptr, adjust the code.
12954         (auto_load_safe_path_vec_update): Adjust.
12955         (filename_is_in_auto_load_safe_path_vec): Adjust.
12956         (auto_load_objfile_script_1): Adjust.
12957         * build-id.c (build_id_to_debug_bfd): Adjust.
12958         * linux-thread-db.c (thread_db_load_search): Adjust.
12959         * source.c (add_path): Adjust.
12960         (openp): Adjust.
12961         * symfile.c (find_separate_debug_file): Adjust.
12962         * utils.c (do_free_char_ptr_vec): Remove.
12963         (make_cleanup_free_char_ptr_vec): Remove.
12964
12965 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12966
12967         PR gdb/22907
12968         * common/pathstuff.c: Conditionally include "<windows.h>".
12969
12970 2018-03-01  Georg Sauthoff  <mail@georg.so>
12971
12972         PR gdb/22888
12973         * gcore.in: Quote variables and switch interpreter to bash.
12974
12975 2018-03-01  Tom Tromey  <tom@tromey.com>
12976
12977         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12978         assertion.  Add assertion for discriminant_index.
12979         (quirk_rust_enum): Use correct base type name in univariant case.
12980
12981 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12982
12983         * record.c (get_call_history_modifiers): Return a
12984         record_print_flags.
12985         (cmd_record_call_history): Adjust.
12986         * record-btrace.c (record_btrace_call_history): Adjust.
12987         (record_btrace_call_history_range): Adjust.
12988         (record_btrace_call_history_from): Adjust.
12989         * target-debug.h (target_debug_print_record_print_flags): New.
12990         * target-delegates.c: Re-generate.
12991         * target.c (target_call_history): Change flags type.
12992         (target_call_history_from): Likewise.
12993         (target_call_history_range): Likewise.
12994         * target.h (struct target_ops) <target_call_history>: Likewise.
12995         (target_call_history_from): Likewise.
12996         (target_call_history_range): Likewise.
12997
12998 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12999             Simon Marchi  <simon.marchi@polymtl.ca>
13000
13001         * common/common-utils.c: Include "sys/stat.h".
13002         (is_regular_file): Move here from "source.c"; change return
13003         type to "bool".
13004         * common/common-utils.h (is_regular_file): New prototype.
13005         * common/pathstuff.c (contains_dir_separator): New function.
13006         * common/pathstuff.h (contains_dir_separator): New prototype.
13007         * source.c: Don't include "sys/stat.h".
13008         (is_regular_file): Move to "common/common-utils.c".
13009
13010 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13011
13012         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13013         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13014         * auto-load.c: Include "common/pathstuff.h".
13015         * common/common-def.h (current_directory): Move here.
13016         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13017         function.
13018         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13019         prototype.
13020         * common/pathstuff.c: New file.
13021         * common/pathstuff.h: New file.
13022         * compile/compile.c: Include "common/pathstuff.h".
13023         * defs.h (current_directory): Move to "common/common-defs.h".
13024         * dwarf2read.c: Include "common/pathstuff.h".
13025         * exec.c: Likewise.
13026         * guile/scm-safe-call.c: Likewise.
13027         * linux-thread-db.c: Likewise.
13028         * main.c: Likewise.
13029         * nto-tdep.c: Likewise.
13030         * objfiles.c: Likewise.
13031         * source.c: Likewise.
13032         * symtab.c: Likewise.
13033         * utils.c: Include "common/pathstuff.h".
13034         (gdb_realpath): Move to "common/pathstuff.c".
13035         (gdb_realpath_keepfile): Likewise.
13036         (gdb_abspath): Likewise.
13037         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13038         (gdb_realpath_keepfile): Likewise.
13039         (gdb_abspath): Likewise.
13040
13041 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13042
13043         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13044         wildcard process pid for super_resume for kernels with a
13045         specific bug.
13046
13047 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13048
13049         * compile/compile.c (get_args): Add additional comments
13050         explaining function.
13051
13052 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13053             Tom Tromey  <tom@tromey.com>
13054
13055         * target.h (memory_write_request_s): Remove typedef.  Don't define
13056         VEC.
13057         (target_write_memory_blocks): Change argument to std::vector.
13058         (struct memory_write_request): Add constructor.
13059         * target-memory.c (compare_block_starting_address): Return bool.
13060         Change argument types.
13061         (claim_memory): Change arguments to use std::vector.
13062         (split_regular_and_flash_blocks, blocks_to_erase)
13063         (compute_garbled_blocks): Likewise.
13064         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13065         (target_write_memory_blocks): Change argument to std::vector.
13066         * symfile.c (struct load_section_data): Add constructor and
13067         destructor.  Use std::vector for "requests".
13068         (struct load_progress_data): Add initializers.
13069         (load_section_callback): Update.  Use "new".
13070         (clear_memory_write_data): Remove.
13071         (generic_load): Update.
13072
13073 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13074
13075         * arch/aarch64.h: Use common/tdesc.h.
13076
13077 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13078
13079         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13080         architecture with a 64-bit ABI.
13081
13082 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13083
13084         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13085         ahead of target description loading.
13086
13087 2018-02-26  Tom Tromey  <tom@tromey.com>
13088
13089         * stack.c (backtrace_command_1): Update.
13090         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13091         of "flags".
13092         * python/py-framefilter.c (py_print_frame)
13093         (gdbpy_apply_frame_filter): Change type of "flags".
13094         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13095         of "flags".
13096         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13097         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13098         * extension.h (enum frame_filter_flag): Rename from
13099         frame_filter_flags.
13100         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13101         (apply_ext_lang_frame_filter): Change type of "flags".
13102         * extension.c (apply_ext_lang_frame_filter): Change type of
13103         "flags".
13104         * extension-priv.h (struct extension_language_ops)
13105         <apply_frame_filter>: Change type of "flags".
13106
13107 2018-02-26  Tom Tromey  <tom@tromey.com>
13108
13109         PR python/16497:
13110         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13111         off-by-one in py_end computation.
13112         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13113         PRINT_MORE_FRAMES.
13114         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13115         constant.
13116
13117 2018-02-26  Tom Tromey  <tom@tromey.com>
13118
13119         * dwarf2read.c (struct variant_field): New.
13120         (struct nextfield) <variant>: New field.
13121         (dwarf2_add_field): Handle DW_TAG_variant_part.
13122         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13123         discriminated union.
13124         (read_structure_type): Handle DW_TAG_variant_part.
13125         (handle_struct_member_die): New function, extracted from
13126         process_structure_scope.  Handle DW_TAG_variant.
13127         (process_structure_scope): Handle discriminated unions.  Call
13128         handle_struct_member_die.
13129
13130 2018-02-26  Tom Tromey  <tom@tromey.com>
13131
13132         * rust-lang.h (rust_last_path_segment): Declare.
13133         * rust-lang.c (rust_last_path_segment): Now public.  Change
13134         contract.
13135         (struct disr_info): Remove.
13136         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13137         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13138         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13139         (rust_enum_p, rust_enum_variant): New function.
13140         (rust_underscore_fields): Remove "offset" parameter.
13141         (rust_print_enum): New function.
13142         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13143         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13144         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13145         enums.
13146         (rust_internal_print_type): New function, from rust_print_type.
13147         Remove enum code.
13148         (rust_print_type): Call rust_internal_print_type.
13149         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13150         Update enum handling.
13151         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13152         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13153         (rust_union_quirks): New functions.
13154         (process_full_comp_unit, process_full_type_unit): Call
13155         rust_union_quirks.
13156         (process_structure_scope): Update rust_unions if necessary.
13157
13158 2018-02-26  Tom Tromey  <tom@tromey.com>
13159
13160         * value.h (value_union_variant): Declare.
13161         * valops.c (value_union_variant): New function.
13162         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13163         (struct discriminant_info): New.
13164         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13165         enumerator.
13166         (struct main_type) <flag_discriminated_union>: New field.
13167
13168 2018-02-26  Tom Tromey  <tom@tromey.com>
13169
13170         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13171         unittests/unpack-selftests.c.
13172         * unittests/unpack-selftests.c: New file.
13173         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13174
13175 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13176
13177         * dwarf2read.c (struct partial_die_info) <read>: New method.
13178         (read_partial_die): Remove the declaration.
13179         (load_partial_dies): Update.
13180         (partial_die_info::partial_die_info):
13181         (read_partial_die): Change it to partial_die_info::read.
13182
13183 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13184
13185         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13186         (fixup_partial_die): Remove declaration.
13187         (scan_partial_symbols): Update.
13188         (partial_die_parent_scope): Likewise.
13189         (partial_die_full_name): Likewise.
13190         (fixup_partial_die): Change it to partial_die_info::fixup.
13191
13192 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13193
13194         * dwarf2read.c (read_partial_die): Update the declaration.
13195         (load_partial_dies): Caller update.
13196         (read_partial_die): Remove one argument abbrev_len.
13197
13198 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13199
13200         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13201         assignment operator.
13202         (load_partial_dies): Use ctor and copy ctor.
13203         (read_partial_die): Update.
13204         (dwarf2_cu::find_partial_die): Use ctor.
13205
13206 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13207
13208         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13209         (find_partial_die_in_comp_unit): Change it to
13210         dwarf2_cu::find_partial_die.
13211         (find_partial_die): Update.
13212
13213 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13214
13215         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13216         is NULL.
13217
13218 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13219
13220         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13221
13222 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13223
13224         * arch/amd64.h: Use common/tdesc.h.
13225         * arch/i386.c: Likewise.
13226         * arch/i386.h: Likewise.
13227         * arch/tic6x.c: Likewise.
13228         * arch/tdesc.h: Move file from here...
13229         * common/tdesc.h: ...to here.
13230         * features/aarch64-core.c: Regenerate.
13231         * features/aarch64-fpu.c: Regenerate.
13232         * features/i386/32bit-avx.c: Regenerate.
13233         * features/i386/32bit-avx512.c: Regenerate.
13234         * features/i386/32bit-core.c: Regenerate.
13235         * features/i386/32bit-linux.c: Regenerate.
13236         * features/i386/32bit-mpx.c: Regenerate.
13237         * features/i386/32bit-pkeys.c: Regenerate.
13238         * features/i386/32bit-sse.c: Regenerate.
13239         * features/i386/64bit-avx.c: Regenerate.
13240         * features/i386/64bit-avx512.c: Regenerate.
13241         * features/i386/64bit-core.c: Regenerate.
13242         * features/i386/64bit-linux.c: Regenerate.
13243         * features/i386/64bit-mpx.c: Regenerate.
13244         * features/i386/64bit-pkeys.c: Regenerate.
13245         * features/i386/64bit-segments.c: Regenerate.
13246         * features/i386/64bit-sse.c: Regenerate.
13247         * features/i386/x32-core.c: Regenerate.
13248         * features/tic6x-c6xp.c: Regenerate.
13249         * features/tic6x-core.c: Regenerate.
13250         * features/tic6x-gp.c: Regenerate.
13251         * target-descriptions.c: Use common/tdesc.h.
13252         * target-descriptions.h: Likewise.
13253
13254 2018-02-24  Tom Tromey  <tom@tromey.com>
13255
13256         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13257         (try_thread_db_load_from_dir, thread_db_load_search): Use
13258         std::string.
13259         (info_auto_load_libthread_db_compare): Return bool.  Change
13260         argument types.
13261         (info_auto_load_libthread_db): Use std::vector, std::string.
13262         Remove cleanups.
13263
13264 2018-02-24  Tom Tromey  <tom@tromey.com>
13265
13266         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13267         std::string.
13268         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13269         std::string*.
13270         * gdbarch.c: Rebuild.
13271         * gdbarch.h: Rebuild.
13272         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13273         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13274         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13275         std::string*.
13276
13277 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13278
13279         * gdbtypes.h (sect_offset): Change type to uint64_t.
13280         (sect_offset_str): New function.
13281         * dwarf2read.c (create_addrmap_from_aranges): Use
13282         sect_offset_str.
13283         (error_check_comp_unit_head): Likewise.
13284         (create_debug_type_hash_table): Likewise.
13285         (read_cutu_die_from_dwo): Likewise.
13286         (init_cutu_and_read_dies): Likewise.
13287         (init_cutu_and_read_dies_no_follow): Likewise.
13288         (process_psymtab_comp_unit_reader): Likewise.
13289         (partial_die_parent_scope): Likewise.
13290         (peek_die_abbrev): Likewise.
13291         (process_queue): Likewise.
13292         (dwarf2_physname): Likewise.
13293         (read_namespace_alias): Likewise.
13294         (read_import_statement): Likewise.
13295         (create_dwo_cu_reader): Likewise.
13296         (create_cus_hash_table): Likewise.
13297         (lookup_dwo_cutu): Likewise.
13298         (inherit_abstract_dies): Likewise.
13299         (read_func_scope): Likewise.
13300         (read_call_site_scope): Likewise.
13301         (dwarf2_add_member_fn): Likewise.
13302         (read_common_block): Likewise.
13303         (read_module_type): Likewise.
13304         (read_typedef): Likewise.
13305         (read_subrange_type): Likewise.
13306         (load_partial_dies): Likewise.
13307         (read_partial_die): Likewise.
13308         (find_partial_die): Likewise.
13309         (read_str_index): Likewise.
13310         (dwarf2_string_attr): Likewise.
13311         (build_error_marker_type): Likewise.
13312         (lookup_die_type): Likewise.
13313         (dump_die_shallow): Likewise.
13314         (follow_die_ref): Likewise.
13315         (dwarf2_fetch_die_loc_sect_off): Likewise.
13316         (dwarf2_fetch_constant_bytes): Likewise.
13317         (follow_die_sig): Likewise.
13318         (get_signatured_type): Likewise.
13319         (get_DW_AT_signature_type): Likewise.
13320         (dwarf2_find_containing_comp_unit): Likewise.
13321         (set_die_type): Likewise.
13322
13323 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13324
13325         * arch/aarch64.c: Include "common-defs.h".
13326         * arch/amd64.c: Likewise.
13327         * arch/i386.c: Likewise.
13328
13329 2018-02-21  Tom Tromey  <tom@tromey.com>
13330
13331         * value.h: (extract_field_op): Update.
13332         * eval.c (extract_field_op): Return a const char *.
13333         * expression.h (parse_expression_for_completion): Update.
13334         * completer.c (complete_expression): Update.
13335         (add_struct_fields): Make fieldname const.
13336         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13337         (mark_completion_tag, parse_exp_in_context_1): Update.
13338         (parse_expression_for_completion): Change "name" to
13339         unique_xmalloc_ptr*.
13340
13341 2018-02-21  Tom Tromey  <tom@tromey.com>
13342
13343         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13344
13345 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13346
13347         * avr-tdep.c (avr_read_pc): Change parameter type to
13348         readable_regcache.
13349         * gdbarch.sh (read_pc): Likewise.
13350         * gdbarch.c: Re-generated.
13351         * gdbarch.h: Re-generated.
13352         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13353         readable_regcache.
13354         * ia64-tdep.c (ia64_read_pc): Likewise.
13355         * mips-tdep.c (mips_read_pc): Likewise.
13356         * spu-tdep.c (spu_read_pc): Likewise.
13357
13358 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13359
13360         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13361         * regcache-dump.c: New file.
13362         * regcache.c: Move register_dump to regcache-dump.c.
13363         (maintenance_print_registers): Likewise.
13364         (maintenance_print_raw_registers): Likewise.
13365         (maintenance_print_cooked_registers): Likewise.
13366         (maintenance_print_register_groups): Likewise.
13367         (maintenance_print_remote_registers): Likewise.
13368         (_initialize_regcache): Likewise.
13369         * regcache.h (register_dump): Moved from regcache.c.
13370
13371 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13372
13373         * regcache.c (regcache::regcache): Update.
13374         (regcache::invalidate): Move it to detached_regcache::invalidate.
13375         (get_thread_arch_aspace_regcache): Update.
13376         (regcache::raw_update): Update.
13377         (regcache::cooked_read): Remove some code.
13378         (regcache::cooked_read_value): Likewise.
13379         (regcache::raw_write): Remove assert on m_readonly_p.
13380         (regcache::raw_supply_integer): Move it to
13381         detached_regcache::raw_supply_integer.
13382         (regcache::raw_supply_zeroed): Likewise.
13383         * regcache.h (detached_regcache) <raw_supply_integer>: New
13384         declaration.
13385         <raw_supply_zeroed, invalidate>: Likewise.
13386         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13387         <invalidate>: Likewise.
13388         <m_readonly_p>: Removed.
13389
13390 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13391
13392         * infcmd.c (get_return_value): Let stop_regs point to
13393         get_current_regcache.
13394         * regcache.c (regcache::regcache): Remove.
13395         (register_dump_reg_buffer): New class.
13396         (regcache_print): Adjust.
13397         * regcache.h (regcache): Remove constructors.
13398
13399 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13400
13401         * regcache.c (class register_dump): New class.
13402         (register_dump_regcache, register_dump_none): New class.
13403         (register_dump_remote, register_dump_groups): New class.
13404         (regcache_print): Update.
13405         * regcache.h (regcache_dump_what): Move it to regcache.c.
13406         (regcache) <dump>: Remove.
13407
13408 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13409
13410         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13411          reg_buffer_rw *.
13412         (jit_unwind_reg_set_impl): Call raw_supply.
13413         (jit_frame_sniffer): Use reg_buffer_rw.
13414         * record-full.c (record_full_core_regbuf): Change its type.
13415         (record_full_core_open_1): Use reg_buffer_rw.
13416         (record_full_close): Likewise.
13417         (record_full_core_fetch_registers): Use regcache->raw_supply.
13418         (record_full_core_store_registers): Likewise.
13419         * regcache.c (regcache::get_register_status): Move it to
13420         reg_buffer.
13421         (regcache_raw_set_cached_value): Remove.
13422         (regcache::raw_set_cached_value): Remove.
13423         (regcache::raw_write): Call raw_supply.
13424         (regcache::raw_supply): Move it to reg_buffer_rw.
13425         * regcache.h (regcache_raw_set_cached_value): Remove.
13426         (reg_buffer_rw): New class.
13427
13428 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13429
13430         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13431         readonly_detached_regcache.
13432         (dummy_frame_prev_register): Use regcache->cooked_read.
13433         * frame.c (frame_save_as_regcache): Change return type.
13434         (frame_pop): Update.
13435         * frame.h (frame_save_as_regcache): Update declaration.
13436         * inferior.h (get_infcall_suspend_state_regcache): Update
13437         declaration.
13438         * infrun.c (infcall_suspend_state) <registers>: use
13439         readonly_detached_regcache.
13440         (save_infcall_suspend_state): Don't use regcache_dup.
13441         (get_infcall_suspend_state_regcache): Change return type.
13442         * linux-fork.c (struct fork_info) <savedregs>: Change to
13443         readonly_detached_regcache.
13444         <pc>: New field.
13445         (fork_save_infrun_state): Don't use regcache_dup.
13446         (info_checkpoints_command): Adjust.
13447         * mi/mi-main.c (register_changed_p): Update declaration.
13448         (mi_cmd_data_list_changed_registers): Use
13449         readonly_detached_regcache.
13450         (register_changed_p): Change parameter type to
13451         readonly_detached_regcache.
13452         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13453         readonly_detached_regcache.
13454         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13455         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13456         New.
13457         (regcache::save): Move it to reg_buffer.
13458         (regcache::restore): Change parameter type.
13459         (regcache_dup): Remove.
13460         * regcache.h (reg_buffer) <save>: New method.
13461         (readonly_detached_regcache): New class.
13462         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13463         readonly_detached_regcache.
13464         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13465
13466 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13467
13468         * frame.c (frame_save_as_regcache): Use regcache method save.
13469         (frame_pop): Use regcache method restore.
13470         * infrun.c (restore_infcall_suspend_state): Likewise.
13471         * linux-fork.c (fork_load_infrun_state): Likewise.
13472         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13473         save.
13474         * regcache.c (regcache_save): Remove.
13475         (regcache::restore): More asserts.
13476         (regcache_cpy): Remove.
13477         * regcache.h (regcache_save): Remove the declaration.
13478         (regcache::restore): Move from private to public.
13479         Remove the friend declaration of regcache_cpy.
13480         (regcache_cpy): Remove declaration.
13481
13482 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13483
13484         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13485         parameter type to 'readable_regcache *'.
13486         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13487         * arm-tdep.c (arm_neon_quad_read): Likewise.
13488         (arm_pseudo_read): Likewise.
13489         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13490         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13491         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13492         * gdbarch.c: Re-generated.
13493         * gdbarch.h: Re-generated.
13494         * gdbarch.sh (pseudo_register_read): Change parameter type to
13495         'readable_regcache *'.
13496         (pseudo_register_read_value): Likewise.
13497         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13498         (h8300_pseudo_register_read): Likewise.
13499         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13500         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13501         (i386_pseudo_register_read_into_value): Likewise.
13502         (i386_pseudo_register_read_value): Likewise.
13503         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13504         declaration.
13505         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13506         * m32c-tdep.c (m32c_raw_read): Likewise.
13507         (m32c_read_flg): Likewise.
13508         (m32c_banked_register): Likewise.
13509         (m32c_banked_read): Likewise.
13510         (m32c_sb_read): Likewise.
13511         (m32c_part_read): Likewise.
13512         (m32c_cat_read): Likewise.
13513         (m32c_r3r2r1r0_read): Likewise.
13514         (m32c_pseudo_register_read): Likewise.
13515         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13516         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13517         (mep_pseudo_cr64_read): Likewise.
13518         (mep_pseudo_register_read): Likewise.
13519         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13520         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13521         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13522         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13523         (regcache::cooked_read): Likewise.
13524         (regcache::cooked_read_value): Likewise.
13525         (regcache_cooked_read_signed):
13526         (regcache::cooked_read): Likewise.
13527         * regcache.h (readable_regcache): New class.
13528         (regcache): Inherit readable_regcache.  Move some methods to
13529         readable_regcache.
13530         * rl78-tdep.c (rl78_pseudo_register_read): Change
13531         parameter type to 'readable_regcache *'.
13532         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13533         (e500_pseudo_register_read): Change parameter type to
13534         'readable_regcache *'.
13535         (dfp_pseudo_register_read): Likewise.
13536         (vsx_pseudo_register_read): Likewise.
13537         (efpr_pseudo_register_read): Likewise.
13538         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13539         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13540         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13541         (sh64_pseudo_register_read): Likewise.
13542         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13543         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13544         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13545         (spu_pseudo_register_read): Likewise.
13546         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13547         (xtensa_pseudo_register_read): Likewise.
13548
13549 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13550
13551         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13552         (regcache::arch): Move it to reg_buffer::arch.
13553         (regcache::register_buffer): Likewise.
13554         (regcache::assert_regnum): Likewise.
13555         (regcache::num_raw_registers): Likewise.
13556         * regcache.h (reg_buffer): New class.
13557         (regcache): Inherit reg_buffer.
13558
13559 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13560
13561         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13562         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13563
13564 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13565
13566         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13567
13568 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13569
13570         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13571         (SFILES): Remove common/*.c files.
13572         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13573         * common/common.host: Add common reference.
13574         * configure.ac: Likewise.
13575         * configure: Regenerate.
13576
13577 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13578
13579         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13580         (block_initialize_namespace): Use new.
13581         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13582         (dwarf2_free_objfile): Use delete.
13583         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13584         (copy_type_recursive): Use new.
13585         * gdb_obstack.h (allocate_on_obstack): New.
13586
13587 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13588
13589         PR gdb/22849
13590         * inferior.c (exit_inferior_1): Reset inf->control.
13591
13592 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13593
13594         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13595         declaration.
13596
13597 2018-02-14  Pedro Alves  <palves@redhat.com>
13598
13599         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13600         frame_cleanup_after_sniffer on exception.
13601
13602 2018-02-14  Tom Tromey  <tom@tromey.com>
13603
13604         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13605         const.
13606         (solib_bfd_open): Make pathname const.
13607         * solib.c (solib_bfd_open): Make pathname const.
13608         * solib-spu.c (spu_bfd_fopen): Make name const.
13609         (spu_bfd_open): Make pathname const.
13610         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13611         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13612
13613 2018-02-14  Tom Tromey  <tom@tromey.com>
13614
13615         * symfile.c (symfile_bfd_open): Update.
13616         * source.h (openp, source_full_path_of, find_and_open_source):
13617         Change argument type to unique_xmalloc_ptr.
13618         * source.c (openp): Take a unique_xmalloc_ptr.
13619         (source_full_path_of, find_and_open_source): Likewise.
13620         (open_source_file, symtab_to_fullname): Update.
13621         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13622         unique_xmalloc_ptr.
13623         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13624         (exec_file_find): Update.
13625         * psymtab.c (psymtab_to_fullname): Update.
13626         * nto-tdep.h (nto_find_and_open_solib): Update.
13627         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13628         unique_xmalloc_ptr.
13629         * exec.c (exec_file_attach): Update.
13630         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13631         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13632
13633 2018-02-14  Tom Tromey  <tom@tromey.com>
13634
13635         * solib.c: Include source.h.
13636         * nto-tdep.c: Include source.h.
13637         * mi/mi-cmd-env.c: Include source.h.
13638         * infcmd.c: Include source.h.
13639         * exec.c: Include source.h.
13640         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13641         (add_path, directory_switch, source_path, init_source_path): Move
13642         declarations...
13643         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13644         (add_path, directory_switch, source_path, init_source_path):
13645         ...here.
13646
13647 2018-02-14  Tom Tromey  <tom@tromey.com>
13648
13649         * solist.h (exec_file_find, solib_find): Return
13650         unique_xmalloc_ptr.
13651         (solib_bfd_fopen): Take a const char *.
13652         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13653         (exec_file_find, solib_find): Likewise.
13654         (solib_bfd_fopen): Do not take ownership of "pathname".
13655         (solib_bfd_open): Use unique_xmalloc_ptr.
13656         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13657         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13658         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13659         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13660
13661 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13662
13663         * ada-lang.c (name_match_type_from_name): Remove reference to
13664         ada_name_for_lookup in function's documentation.
13665         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13666
13667 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13668
13669         * defs.h (enum openp_flags): New enum.
13670         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13671         Move to enum openp_flags.
13672         (openp_flags): New enum flags.
13673         (openp): Change parameter type to openp_flags.
13674         * source.c (openp): Change parameter type to openp_flags.
13675         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13676         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13677
13678 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13679
13680         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13681         per-command.
13682
13683 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13684
13685         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13686         into...
13687         (class dwarf2_queue_guard): ...the destructor of this new class.
13688         (dw2_do_instantiate_symtab): Create instance of the new class
13689         dwarf2_queue_guard, remove cleanup.
13690
13691 2018-02-09  Tom Tromey  <tom@tromey.com>
13692
13693         * source.c (find_source_lines): Don't reference past the end of
13694         the vector.
13695
13696 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13697
13698         * remote.c (remote_btrace_maybe_reopen): Change error message.
13699         * btrace.c (btrace_enable): Likewise.
13700         (parse_xml_btrace): Likewise.
13701         (parse_xml_btrace_conf): Likewise.
13702
13703 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13704
13705         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13706         (linux_enable_pt, linux_enable_bts): Call
13707         diagnose_perf_event_open_fail.
13708
13709 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13710
13711         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13712         Remove parameter and change return type.  Update callers.  Move it.
13713         (linux_enable_bts, linux_enable_pt): Improve error message.
13714         (linux_enable_pt): Remove zero buffer size check.
13715         (linux_enable_btrace): Improve error messages.  Remove NULL return
13716         check.
13717
13718 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13719
13720         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13721         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13722         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13723         (linux_supports_pt, linux_supports_btrace): Remove.
13724         (linux_enable_bts): Call cpu_supports_bts.
13725         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13726         * remote.c (remote_supports_btrace): Remove.
13727         (init_remote_ops): Remove remote_supports_btrace.
13728         * target-delegates.c: Regenerated.
13729         * target.c (target_supports_btrace): Remove.
13730         * target.h (target_ops) <to_supports_btrace>: Remove
13731         (target_supports_btrace): Remove.
13732         * x86-linux-nat.c (x86_linux_create_target): Remove
13733         linux_supports_btrace.
13734
13735 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13736
13737         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13738         btrace failed.
13739         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13740         exception and use message in own exception.
13741
13742 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13743
13744         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13745         (perf_event_pt_event_type): Use gdb_file_up.
13746         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13747         scoped_fd, and scoped_mmap.
13748
13749 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13750
13751         * common/scoped_mmap.h: New.
13752         * unittests/scoped_mmap-selftest.c: New.
13753         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13754         unittests/scoped_mmap-selftest.c.
13755
13756 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13757
13758         * common/scoped_fd.h: New.
13759         * unittests/scoped_fd-selftest.c: New.
13760         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13761         unittests/scoped_fd-selftest.c.
13762
13763 2018-02-09  Tom Tromey  <tom@tromey.com>
13764
13765         * auto-load.c (auto_load_section_scripts): Use
13766         gdb::unique_xmalloc_ptr.
13767
13768 2018-02-09  Tom Tromey  <tom@tromey.com>
13769
13770         * auto-load.c (execute_script_contents): Use std::string.
13771
13772 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13773
13774         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13775         Python function, rather than a new command.
13776
13777 2018-02-08  Tom Tromey  <tom@tromey.com>
13778
13779         * solib.c (solib_find_1): Use std::string.
13780         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13781
13782 2018-02-08  Tom Tromey  <tom@tromey.com>
13783
13784         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13785
13786 2018-02-08  Tom Tromey  <tom@tromey.com>
13787
13788         * source.c (find_source_lines): Use gdb::def_vector.
13789
13790 2018-02-08  Tom Tromey  <tom@tromey.com>
13791
13792         * macrocmd.c (struct temporary_macro_definition): New.
13793         (macro_define_command): Use temporary_macro_definition.  Remove
13794         cleanups.
13795         (free_macro_definition_ptr): Remove.
13796
13797 2018-02-08  Tom Tromey  <tom@tromey.com>
13798
13799         * macroexp.c (maybe_expand): Use std::string.
13800
13801 2018-02-08  Tom Tromey  <tom@tromey.com>
13802
13803         * macroexp.c (struct macro_buffer): Add initializers for some
13804         members.
13805         (init_buffer, init_shared_buffer, free_buffer)
13806         (free_buffer_return_text): Remove.
13807         (macro_buffer): New constructors.
13808         (~macro_buffer): New destructor.
13809         (macro_buffer::set_shared): New method.
13810         (macro_buffer::resize_buffer, macro_buffer::appendc)
13811         (macro_buffer::appendmem): Now methods, not free functions.
13812         (set_token, append_tokens_without_splicing, stringify)
13813         (macro_stringify): Update.
13814         (gather_arguments): Change return type.  Remove argc_p argument,
13815         add args_ptr argument.  Use std::vector.
13816         (substitute_args): Remove argc argument.  Accept std::vector.
13817         (expand): Update.  Use std::vector.
13818         (scan, macro_expand, macro_expand_next): Update.
13819
13820 2018-02-08  Tom Tromey  <tom@tromey.com>
13821
13822         * symtab.c (default_collect_symbol_completion_matches_break_on):
13823         Use unique_xmalloc_ptr.
13824         * macroscope.h: (sal_macro_scope, user_macro_scope)
13825         (default_macro_scope): Return unique_xmalloc_ptr.
13826         * macroscope.c (sal_macro_scope, user_macro_scope)
13827         (default_macro_scope): Return unique_xmalloc_ptr.
13828         * macroexp.h (macro_expand, macro_expand_once): Return
13829         unique_xmalloc_ptr.
13830         * macroexp.c (macro_expand, macro_expand_once): Return
13831         unique_xmalloc_ptr.
13832         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13833         (info_macro_command, info_macros_command): Use
13834         unique_xmalloc_ptr.
13835         * compile/compile-c-support.c (write_macro_definitions): Use
13836         unique_xmalloc_ptr.
13837         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13838
13839 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13840
13841         * value.c (value_static_field): Assign field type instead of
13842         containing type when returning an optimized out value.
13843
13844 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13845
13846         * ft32-tdep.c (ft32_read_pc): Remove.
13847         (ft32_write_pc): Remove.
13848         (ft32_gdbarch_init): Update.
13849         * m32r-tdep.c (m32r_read_pc): Remove.
13850         (m32r_gdbarch_init): Update.
13851         * mep-tdep.c (mep_read_pc): Remove.
13852         (mep_gdbarch_init): Update.
13853         * microblaze-tdep.c (microblaze_write_pc): Remove.
13854         (microblaze_gdbarch_init): Update.
13855         * mn10300-tdep.c (mn10300_read_pc): Remove.
13856         (mn10300_write_pc): Remove.
13857         (mn10300_gdbarch_init): Update.
13858         * moxie-tdep.c (moxie_read_pc): Remove.
13859         (moxie_write_pc): Remove.
13860         (moxie_gdbarch_init): Update.
13861
13862 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13863
13864         * expprint.c (print_subexp_standard): Handle
13865         OP_F77_UNDETERMINED_ARGLIST.
13866         (dump_subexp_body_standard): Likewise.
13867
13868 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13869
13870         * target-descriptions.c (tdesc_element_visitor) Add empty
13871         implementations.
13872         (tdesc_type): Move make_gdb_type from here.
13873         (tdesc_type_builtin): Likewise.
13874         (tdesc_type_vector): Likewise.
13875         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13876         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13877         (make_gdb_type_union): Likewise.
13878         (make_gdb_type_flags): Likewise.
13879         (make_gdb_type_enum): Likewise.
13880         (make_gdb_type): New function.
13881         (tdesc_register_type): Use static make_gdb_type.
13882
13883 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13884
13885         * infcmd.c (default_print_one_register_info): Align natural-format
13886         column values consistently one under another.
13887         (pad_to_column): New function.
13888
13889 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13890
13891         * dwarf2read.c (dwarf2_physname): Move commment.
13892
13893 2018-02-01  Leszek Swirski  <leszeks@google.com>
13894
13895         * varobj.c (varobj_formatted_print_options): Allow recursive
13896         pretty printing if pretty printing is enabled.
13897
13898 2018-02-01  Leszek Swirski  <leszeks@google.com>
13899
13900         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13901         names after a structop as a filename.
13902
13903 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13904
13905         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13906         (arm_record_coproc_data_proc): Likewise.
13907
13908 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13909
13910         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13911
13912 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13913
13914         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13915         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13916
13917 2018-01-31  Pedro Alves  <palves@redhat.com>
13918
13919         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13920         * inflow.c (child_terminal_save_inferior): Wrap reference to
13921         tcgetpgrp in HAVE_TERMIOS_H.
13922         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13923         _WIN32.
13924         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13925         always iterate over all inferiors.
13926         (gdbsim_cntrl_c): Adjust.
13927         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13928
13929 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13930
13931         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13932         index type is objfile-owned if the element type is as well.
13933
13934 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13935
13936         GDB 8.1 released.
13937
13938 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13939
13940         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13941         "features/s390x-linux64.c".
13942         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13943         s390_linux32 and s390x_linux64.
13944         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13945         default tdesc.
13946         * s390-tdep.c: Include "features/s390-linux32.c" and
13947         "features/s390x-linux64.c".
13948         (s390_tdesc_valid): Add check for tdesc_has_registers.
13949         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13950         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13951         tdesc_s390x_linux64.
13952         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13953         tdesc_s390x_linux64 to...
13954         * s390-tdep.h: ...here.
13955
13956 2018-01-30  Pedro Alves  <palves@redhat.com>
13957
13958         PR gdb/13211
13959         * config.in, configure: Regenerate.
13960         * configure.ac: Check for getpgid.
13961         * go32-nat.c (go32_pass_ctrlc): New.
13962         (go32_target): Install it.
13963         * inf-child.c (inf_child_target): Install
13964         child_terminal_save_inferior, child_pass_ctrlc and
13965         child_interrupt.
13966         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13967         (inf_ptrace_target): No longer install it.
13968         * infcmd.c (interrupt_target_1): Adjust.
13969         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13970         (child_interrupt): Declare.
13971         (inferior::terminal_state): New.
13972         * inflow.c (struct terminal_info): Update comments.
13973         (inferior_process_group): Delete.
13974         (terminal_is_ours): Delete.
13975         (gdb_tty_state): New.
13976         (child_terminal_init): Adjust.
13977         (is_gdb_terminal, sharing_input_terminal_1)
13978         (sharing_input_terminal): New functions.
13979         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13980         Set the process's actual process group in the foreground if
13981         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13982         mark terminal as the inferior's if not sharing GDB's terminal.
13983         Don't check attach_flag.
13984         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13985         pass down a target_terminal_state.
13986         (child_terminal_save_inferior): New, factored out from ...
13987         (child_terminal_ours_1): ... this.  Handle
13988         target_terminal_state::is_ours_for_output.
13989         (child_interrupt, child_pass_ctrlc): New.
13990         (inflow_inferior_exit): Clear the inferior's terminal_state.
13991         (copy_terminal_info): Copy the inferior's terminal state.
13992         (_initialize_inflow): Remove reference to terminal_is_ours.
13993         * inflow.h (inferior_process_group): Delete.
13994         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13995         * procfs.c (procfs_target): Don't install procfs_interrupt.
13996         (procfs_interrupt): Delete.
13997         * remote.c (remote_serial_quit_handler): Adjust.
13998         (remote_interrupt): Remove ptid parameter.  Adjust.
13999         * target-delegates.c: Regenerate.
14000         * target.c: Include "terminal.h".
14001         (target_terminal::terminal_state): Rename to ...
14002         (target_terminal::m_terminal_state): ... this.
14003         (target_terminal::init): Adjust.
14004         (target_terminal::inferior): Adjust to per-inferior
14005         terminal_state.
14006         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14007         (target_terminal::ours, target_terminal::ours_for_output): Use
14008         target_terminal_is_ours_kind.
14009         (target_interrupt): Remove ptid parameter.  Adjust.
14010         (default_target_pass_ctrlc): Adjust.
14011         * target.h (target_ops::to_terminal_save_inferior): New field.
14012         (target_ops::to_interrupt): Remove ptid_t parameter.
14013         (target_interrupt): Remove ptid_t parameter.  Update comment.
14014         (target_pass_ctrlc): Update comment.
14015         * target/target.h (target_terminal_state): New scoped enum,
14016         factored out of ...
14017         (target_terminal::terminal_state): ... here.
14018         (target_terminal::inferior): Update comments.
14019         (target_terminal::restore_inferior): New.
14020         (target_terminal::is_inferior, target_terminal::is_ours)
14021         (target_terminal::is_ours_for_output): Adjust.
14022         (target_terminal::scoped_restore_terminal_state): Adjust to
14023         rename, and call restore_inferior() instead of inferior().
14024         (target_terminal::scoped_restore_terminal_state::m_state): Change
14025         type.
14026         (target_terminal::terminal_state): Rename to ...
14027         (target_terminal::m_terminal_state): ... this and change type.
14028
14029 2018-01-30  Pedro Alves  <palves@redhat.com>
14030
14031         * linux-nat.c (wait_for_signal): New function.
14032         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14033         directly.
14034         (async_terminal_is_ours)
14035         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14036         (linux_nat_add_target): Don't override
14037         to_terminal_inferior/to_terminal_ours.
14038
14039 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14040
14041         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14042
14043 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14044
14045         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14046         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14047         dwarf2_per_objfile_free here.
14048         (dwarf2_per_objfile_free): Remove.
14049         (_initialize_dwarf2_read): Don't register
14050         dwarf2_per_objfile_free as a registry cleanup.
14051
14052 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14053
14054         Avoid compilation errors in MinGW native builds
14055
14056         The error is triggered by including python-internal.h, and the
14057         error message is:
14058
14059              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14060                       from build-gnulib/import/math.h:27,
14061                       from d:/usr/Python26/include/pyport.h:235,
14062                       from d:/usr/Python26/include/Python.h:58,
14063                       from python/python-internal.h:94,
14064                       from python/py-arch.c:24:
14065              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14066         using ::hypot;
14067                 ^~~~~
14068
14069         This happens because Python headers define 'hypot' to expand t
14070         '_hypot' in the Windows builds.
14071         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14072         'hypoth'.  This avoids a compilation error.
14073
14074 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14075
14076         * MAINTAINERS (Write After Approval): Fix ordering.
14077
14078 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14079
14080         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14081
14082 2018-01-26  Alan Modra  <amodra@gmail.com>
14083
14084         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14085         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14086         Remove nop.  Make const.  Comment.
14087         (powerpc32_plt_stub_so_2): New.
14088         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14089         Correct count.  Update uses.
14090         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14091         Move common code reading PLT entry word.  Correct
14092         powerpc32_plt_stub PLT address calculation.
14093         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14094         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14095         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14096         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14097         (ppc64_standard_linkage8): Likewise.
14098         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14099         Correct insns description.
14100         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14101
14102 2018-01-24  Pedro Alves  <palves@redhat.com>
14103
14104         GCC PR libstdc++/83906
14105         * gdbtypes.c (operator==(const dynamic_prop &,
14106         const dynamic_prop &)): New.
14107         (operator==(const range_bounds &, const range_bounds &)): New.
14108         (check_types_equal): Use them instead of memcmp.
14109         * gdbtypes.h (operator==(const dynamic_prop &,
14110         const dynamic_prop &)): Declare.
14111         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14112         (operator==(const range_bounds &, const range_bounds &)): Declare.
14113         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14114
14115 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14116
14117         * s390-linux-tdep.c (s390_record_address_mask)
14118         (s390_record_calc_disp_common, s390_record_calc_disp)
14119         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14120         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14121         (s390_process_record): Move to s390-tdep.c.
14122         (s390_linux_init_abi_any): Adjust.
14123         * s390-tdep.c (s390_record_address_mask)
14124         (s390_record_calc_disp_common, s390_record_calc_disp)
14125         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14126         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14127         (s390_process_record): Moved from s390-linux-tdep.c
14128         (s390_gdbarch_init): Adjust.
14129
14130 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14131
14132         * s390-linux-nat.c (s390-tdep.h): New include.
14133         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14134         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14135         (ALLDEPFILES): Add s390-tdep.c.
14136         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14137         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14138         * s390-tdep.h: ...this.  New file.
14139         * s390-linux-tdep.c (s390-tdep.h): New include.
14140         (_initialize_s390_tdep): Rename to...
14141         (_initialize_s390_linux_tdep): ...this and adjust.
14142         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14143         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14144         s390-tdep.h.
14145         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14146         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14147         (s390_is_partial_instruction, s390_software_single_step)
14148         (is_non_branch_ril, s390_displaced_step_copy_insn)
14149         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14150         (s390_prologue_data, s390_addr, s390_store, s390_load)
14151         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14152         (s390_register_call_saved, s390_guess_tracepoint_registers)
14153         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14154         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14155         (s390_pseudo_register_name, s390_pseudo_register_type)
14156         (s390_pseudo_register_read, s390_pseudo_register_write)
14157         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14158         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14159         (s390_addr_bits_remove, s390_address_class_type_flags)
14160         (s390_address_class_type_flags_to_name)
14161         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14162         (s390_function_arg_float, s390_function_arg_vector)
14163         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14164         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14165         (s390_frame_align, s390_register_return_value, s390_return_value)
14166         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14167         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14168         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14169         (s390_trad_frame_prev_register, s390_unwind_cache)
14170         (s390_prologue_frame_unwind_cache)
14171         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14172         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14173         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14174         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14175         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14176         (s390_frame_base_address, s390_local_base_address)
14177         (s390_frame_base, s390_gcc_target_options)
14178         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14179         (s390_validate_reg_range, s390_tdesc_valid)
14180         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14181         * s390-tdep.c: ...this.  New file.
14182
14183 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14184
14185         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14186         (s390_process_record, s390_gdbarch_tdep_alloc)
14187         (s390_linux_init_abi_any): Use/set new hook.
14188
14189 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14190
14191         * s390-linux-tdep.c (osabi.h): New include.
14192         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14193         (s390_linux_init_abi_any): New functions.
14194         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14195
14196 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14197
14198         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14199         tdesc_has_registers check
14200
14201 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14202
14203         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14204         (s390_validate_reg_range): New macro.
14205         (s390_gdbarch_init): Adjust.
14206
14207 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14208
14209         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14210         (s390_gdbarch_tdep_alloc): Adjust.
14211         (s390_gdbarch_init): Adjust.
14212
14213 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14214
14215         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14216         <have_tdb>: Change type to bool.
14217         (s390_gdbarch_tdep_alloc): Adjust.
14218         (s390_gdbarch_init): Adjust.
14219
14220 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14221
14222         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14223         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14224         (s390_gdbarch_tdep_alloc): New function.
14225         (s390_gdbarch_init): Allocate tdep at start and use its fields
14226         instead of separate variables.
14227
14228 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14229
14230         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14231         when looking for cached gdbarch and add comment for remaining.
14232
14233 2018-01-22  Pedro Alves  <palves@redhat.com>
14234             Sergio Durigan Junior  <sergiodj@redhat.com>
14235
14236         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14237         case.
14238
14239 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14240
14241         * MAINTAINERS: Update my company e-mail address.
14242
14243 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14244
14245         * regcache.c (cooked_write_test): New function.
14246         (_initialize_regcache): Register the test.
14247
14248 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14249
14250         * ia64-tdep.c (ia64_pseudo_register_read): Call
14251         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14252         * m32c-tdep.c (m32c_cat_read): Likewise.
14253         (m32c_r3r2r1r0_read): Likewise.
14254         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14255         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14256
14257 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14258
14259         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14260         method raw_read instead of regcache_raw_read.
14261         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14262         * arm-tdep.c (arm_neon_quad_read): Likewise.
14263         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14264         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14265         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14266         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14267         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14268         (i386_pseudo_register_read_into_value): Likewise.
14269         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14270         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14271         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14272         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14273         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14274         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14275         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14276         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14277         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14278
14279 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14280
14281         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14282         * configure.tgt: Remove target mt.
14283         * mt-tdep.c: Remove.
14284         * regcache.c (cooked_read_test): Remove the check for mt.
14285
14286 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14287
14288         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14289         instead of gdbarch_pseudo_register_read_value.
14290
14291 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14292
14293         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14294         language is Ada.
14295
14296 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14297
14298         * linespec.c (create_sals_line_offset): Remove code that preserved
14299         the symtab_and_line's line number.
14300
14301 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14302
14303         * varobj.c (varobj_create): Don't set valid_block when creating a
14304         floating varobj.
14305
14306 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14307
14308         * varobj.c (varobj_create): Remove out of date comment.
14309
14310 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14311
14312         PR mi/20395
14313         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14314         updating innermost block.
14315         * parse.c (innermost_block_tracker::update): Take extra type
14316         parameter, and check types match before updating innermost block.
14317         (write_dollar_variable): Update innermost block for registers.
14318         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14319         (innermost_block_tracker::innermost_block_tracker): Initialise
14320         m_types member.
14321         (innermost_block_tracker::reset): Take type parameter.
14322         (innermost_block_tracker::update): Take type parameter, and pass
14323         type through as needed.
14324         (innermost_block_tracker::m_types): New member.
14325         * varobj.c (varobj_create): Pass type when reseting innermost
14326         block.
14327
14328 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14329
14330         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14331         * ada-lang.c (resolve_subexp): Likewise.
14332         * breakpoint.c (set_breakpoint_condition) Likewise.
14333         (watch_command_1) Likewise.
14334         * c-exp.y (variable): Likewise.
14335         * d-exp.y (PrimaryExpression): Likewise.
14336         * f-exp.y (variable): Likewise.
14337         * go-exp.y (variable): Likewise.
14338         * m2-exp.y (variable): Likewise.
14339         * objfiles.c (objfile::~objfile): Likewise.
14340         * p-exp.y (variable): Likewise.
14341         * parse.c (innermost_block): Change type.
14342         * parser-defs.h (class innermost_block_tracker): New.
14343         (innermost_block): Change to innermost_block_tracker.
14344         * printcmd.c (display_command): Switch to innermost_block API.
14345         (do_one_display): Likewise.
14346         * rust-exp.y (do_one_display): Likewise.
14347         * symfile.c (clear_symtab_users): Likewise.
14348         * varobj.c (varobj_create): Switch to innermost_block API, replace
14349         use of innermost_block with block stored on varobj object.
14350
14351 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14352
14353         * expression.h (innermost_block): Remove declaration.
14354         * varobj.c: Add 'parser-defs.h' include.
14355
14356 2018-01-19  Tom Tromey  <tom@tromey.com>
14357
14358         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14359         symbols in the static and global blocks.
14360
14361 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14362
14363         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14364         gdb_ptrace.h, and move including gdb_wait.h ...
14365         * nat/linux-ptrace.h: ... to here.
14366
14367 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14368
14369         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14370         inf_ptrace_detach_success.
14371         (inf_ptrace_detach_success): Add inferior parameter, use it
14372         instead of inferior_ptid, pass it to detach_inferior.
14373         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14374         parameter.
14375         * inferior.c (detach_inferior): Add overload that takes an
14376         inferior object.
14377         * inferior.h (detach_inferior): Likewise.
14378         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14379         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14380         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14381
14382 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14383
14384         * target.h (struct target_ops) <to_detach>: Add inferior
14385         parameter.
14386         (target_detach): Likewise.
14387         * target.c (dispose_inferior): Pass inferior down.
14388         (target_detach): Pass inferior down.  Assert that it is equal to
14389         the current inferior.
14390         * aix-thread.c (aix_thread_detach): Pass inferior down.
14391         * corefile.c (core_file_command): Pass current_inferior() down.
14392         * corelow.c (core_detach): Add inferior parameter.
14393         * darwin-nat.c (darwin_detach): Likewise.
14394         * gnu-nat.c (gnu_detach): Likewise.
14395         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14396         * infcmd.c (detach_command): Pass current_inferior() down to
14397         target_detach.
14398         * infrun.c (follow_fork_inferior): Pass parent_inf to
14399         target_detach.
14400         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14401         target_detach.
14402         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14403         * linux-thread-db.c (thread_db_detach): Likewise.
14404         * nto-procfs.c (procfs_detach): Likewise.
14405         * procfs.c (procfs_detach): Likewise.
14406         * record.c (record_detach): Likewise.
14407         * record.h (struct inferior): Forward-declare.
14408         (record_detach): Add inferior parameter.
14409         * remote-sim.c (gdbsim_detach): Likewise.
14410         * remote.c (remote_detach_1): Likewise.
14411         (remote_detach): Likewise.
14412         (extended_remote_detach): Likewise.
14413         * sol-thread.c (sol_thread_detach): Likewise.
14414         * target-debug.h (target_debug_print_inferior_p): New macro.
14415         * target-delegates.c: Re-generate.
14416         * top.c (kill_or_detach): Pass inferior down to target_detach.
14417         * windows-nat.c (windows_detach): Add inferior parameter.
14418
14419 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14420
14421         * target.h (struct target_ops) <to_detach>: Remove args
14422         parameter.
14423         (target_detach): Likewise.
14424         * target.c (dispose_inferior): Adjust.
14425         (target_detach): Remove args parameter, adjust.
14426         * aix-thread.c (aix_thread_detach): Adjust.
14427         * corefile.c (core_file_command): Adjust.
14428         * corelow.c (core_detach): Adjust.
14429         * darwin-nat.c (darwin_detach): Adjust.
14430         * gnu-nat.c (gnu_detach): Adjust.
14431         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14432         * infcmd.c (detach_command): Adjust
14433         * infrun.c (follow_fork_inferior): Adjust.
14434         (handle_vfork_child_exec_or_exit): Adjust.
14435         * linux-fork.c (linux_fork_detach): Remove args parameter.
14436         * linux-fork.h (linux_fork_detach): Likewise.
14437         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14438         * linux-thread-db.c (thread_db_detach): Likewise.
14439         * nto-procfs.c (procfs_detach): Likewise.
14440         * procfs.c (procfs_detach): Likewise.
14441         (do_detach): Remove signo parameter.
14442         * record.c (record_detach): Remove args parameter.
14443         * record.h (record_detach): Likewise.
14444         * remote-sim.c (gdbsim_detach): Likewise.
14445         * remote.c (remote_detach_1): Likewise.
14446         (remote_detach): Likewise.
14447         (extended_remote_detach): Likewise.
14448         * sol-thread.c (sol_thread_detach): Likewise.
14449         * target-delegates.c: Re-generate.
14450         * top.c (struct qt_args) <args>: Remove field.
14451         (kill_or_detach): Don't pass args.
14452         (quit_force): Don't set args.
14453         * windows-nat.c (windows_detach): Remove args parameter.
14454
14455 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14456
14457         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14458         (arm_linux_init_abi): Install it.
14459
14460 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14461
14462         * osabi.c (gdb_osabi_names): Extend the regexp for
14463         arm-linux-gnueabihf.
14464
14465 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14466
14467         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14468         m_abbrevs.
14469         (abbrev_table::add_abbrev): Update.
14470         (abbrev_table::lookup_abbrev): Update.
14471
14472 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14473
14474         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14475
14476 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14477
14478         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14479         to "std::string".
14480
14481 2018-01-17  Tom Tromey  <tom@tromey.com>
14482
14483         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14484
14485 2018-01-17  Tom Tromey  <tom@tromey.com>
14486
14487         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14488         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14489         (create_array_type_with_stride): Update.
14490         * dwarf2read.c (set_die_type): Update.
14491
14492 2018-01-17  Tom Tromey  <tom@tromey.com>
14493
14494         * dwarf2read.c (delayed_method_info): Remove typedef.
14495         (dwarf2_cu::method_info): Now a std::vector.
14496         (add_to_method_list): Update.
14497         (free_delayed_list): Remove.
14498         (compute_delayed_physnames): Update.
14499         (process_full_comp_unit, process_full_type_unit): Clear the method
14500         list.  Remove cleanups.
14501         (psymtab_include_file_name): Add name_holder parameter.  Use
14502         unique_xmalloc_ptr.
14503         (dwarf_decode_lines): Update.
14504
14505 2018-01-17  Tom Tromey  <tom@tromey.com>
14506             Simon Marchi  <simon.marchi@ericsson.com>
14507
14508         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14509         (dwarf2_per_objfile::free_cached_comp_units)
14510         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14511         (init_cutu_and_read_dies_no_follow): Update.
14512         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14513         (dwarf2_cu::~dwarf2_cu): New.
14514         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14515         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14516
14517 2018-01-17  Tom Tromey  <tom@tromey.com>
14518             Simon Marchi  <simon.marchi@ericsson.com>
14519
14520         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14521         (struct die_reader_specs) <abbrev_table>: New member.
14522         (struct abbrev_table): Add constructor.
14523         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14524         <abbrev_obstack>: Now an auto_obstack.
14525         (abbrev_table_up): New typedef.
14526         (init_cu_die_reader): Add abbrev_table parameter.
14527         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14528         Add result_dwo_abbrev_table.
14529         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14530         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14531         Update.
14532         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14533         parameter.
14534         (skip_children): Update.
14535         (abbrev_table::alloc_abbrev): Rename from
14536         abbrev_table_alloc_abbrev.
14537         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14538         (abbrev_table::lookup_abbrev): Rename from
14539         abbrev_table_lookup_abbrev.
14540         (abbrev_table_read_table): Return abbrev_table_up.
14541         (abbrev_table_free, abbrev_table_free_cleanup)
14542         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14543         (load_partial_dies): Update.
14544
14545 2018-01-17  Tom Tromey  <tom@tromey.com>
14546
14547         * dwarf2read.c (dwarf2_compute_name): Update comment.
14548         (read_func_scope, read_variable): Update.
14549         (new_symbol): Remove.
14550         (new_symbol_full): Rename to new_symbol.
14551
14552 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14553
14554         PR gdb/16577
14555         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14556         a warning instead of throwing an error, set section size to 0 and return
14557         NULL.
14558         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14559
14560 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14561
14562         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14563         std::string.
14564         (linux_ptrace_attach_fail_reason_string): Likewise.
14565         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14566         Likewise.
14567         (linux_ptrace_attach_fail_reason_string): Likewise.
14568         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14569
14570 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14571
14572         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14573
14574 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14575
14576         PR gdb/21559
14577         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14578         checking for fs_base/gs_base fields in struct user_regs_struct.
14579         * configure: Regenerate.
14580
14581 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14582
14583         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14584         function.
14585         (aarch64_linux_init_abi): Install it to gdbarch hook
14586         gcc_target_options.
14587
14588 2018-01-15  Pedro Alves  <palves@redhat.com>
14589
14590         * common/signals-state-save-restore.c
14591         (save_original_signals_state): Fix typos.
14592
14593 2017-01-12  Tom Tromey  <tom@tromey.com>
14594             Sergio Durigan Junior  <sergiodj@redhat.com>
14595
14596         * Makefile.in (install-only): Install gdb-add-index.
14597
14598 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14599
14600         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14601
14602 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14603
14604         * infrun.c (keep_going_pass_signal): Clear step-over info when
14605         insert_breakpoints fails.
14606
14607 2018-01-11  Pedro Alves  <palves@redhat.com>
14608
14609         PR gdb/22583
14610         * infrun.c (resume): Rename to ...
14611         (resume_1): ... this.
14612         (resume): Reimplement as wrapper around resume_1.
14613
14614 2018-01-11  Pedro Alves  <palves@redhat.com>
14615
14616         PR remote/22597
14617         * remote.c (remote_parse_stop_reply): Default to the last-set
14618         general thread instead of to 'magic_null_ptid'.
14619
14620 2018-01-10  Pedro Alves  <palves@redhat.com>
14621
14622         * language.h (language_get_symbol_name_matcher): Rename ...
14623         (get_symbol_name_matcher): ... this.
14624         * language.c (language_get_symbol_name_matcher): Ditto.
14625         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14626         callers adjusted.
14627
14628 2018-01-10  Pedro Alves  <palves@redhat.com>
14629
14630         PR gdb/22670
14631         * dwarf2read.c
14632         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14633         Adjust to use language_get_symbol_name_matcher instead of
14634         language_defn::la_get_symbol_name_matcher.
14635         * language.c (language_get_symbol_name_matcher): If in Ada mode
14636         and the lookup name is a verbatim match, return Ada's matcher.
14637         * language.h (language_get_symbol_name_matcher): Adjust comment.
14638         (ada_lookup_name_info::verbatim_p):: New method.
14639
14640 2018-01-10  Pedro Alves  <palves@redhat.com>
14641
14642         PR gdb/22670
14643         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14644         minsym's language is language_auto or language_cplus, pass down
14645         language_ada instead.
14646         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14647
14648 2018-01-10  Pedro Alves  <palves@redhat.com>
14649
14650         PR gdb/22670
14651         * minsyms.c (linkage_name_str): New function.
14652         (iterate_over_minimal_symbols): Use it.
14653
14654 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14655
14656         * NEWS: Document that 'info proc' now works on FreeBSD.
14657
14658 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14659
14660         * configure.ac: Check for kinfo_getfile in libutil.
14661         * configure: Regenerate.
14662         * config.in: Regenerate.
14663         * fbsd-nat.c: Include "fbsd-tdep.h".
14664         (fbsd_fetch_cmdline): New.
14665         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14666         rather than calling error.
14667         (fbsd_info_proc): New.
14668         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14669         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14670         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14671
14672 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14673
14674         * fbsd-nat.c (struct free_deleter): Remove.
14675         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14676
14677 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14678
14679         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14680         NULL for an empty pathname.
14681
14682 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14683
14684         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14685         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14686         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14687         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14688         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14689         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14690         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14691         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14692         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14693         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14694         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14695         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14696         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14697         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14698         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14699
14700 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14701
14702         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14703         (gnu_xfer_auxv): New function.
14704         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14705         TARGET_OBJECT_AUXV.
14706
14707 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14708             Simon Marchi  <simon.marchi@ericsson.com>
14709
14710         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14711         common/selftest.c.
14712         (COMMON_OBS): Remove selftest.o.
14713         * configure.ac: Append selftest-arch.c and common/selftest.c to
14714         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14715         * configure: Re-generated.
14716         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14717         GDB_SELF_TEST.
14718         (maintenance_info_selftests): Likewise.
14719
14720 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14721
14722         * ada-valprint.c (val_print_packed_array_elements): Use
14723         proper number of elements when printing an array indexed
14724         by an enumeration type.
14725
14726 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14727
14728         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14729         (dw2_get_file_names_reader): Adjust.
14730         (lookup_dwo_signatured_type): Adjust.
14731         (lookup_dwp_signatured_type): Adjust.
14732         (lookup_signatured_type): Adjust.
14733         (create_type_unit_group): Adjust.
14734         (get_type_unit_group): Adjust.
14735         (process_psymtab_comp_unit_reader): Adjust.
14736         (build_type_psymtabs_reader): Adjust.
14737         (scan_partial_symbols): Adjust.
14738         (add_partial_symbol): Adjust.
14739         (add_partial_subprogram): Adjust.
14740         (peek_die_abbrev): Adjust.
14741         (fixup_go_packaging): Adjust.
14742         (process_imported_unit_die): Adjust.
14743         (dwarf2_compute_name): Adjust.
14744         (dwarf2_physname): Adjust.
14745         (read_import_statement): Adjust.
14746         (handle_DW_AT_stmt_list): Adjust.
14747         (read_file_scope): Adjust.
14748         (read_func_scope): Adjust.
14749         (read_lexical_block_scope): Adjust.
14750         (read_call_site_scope): Adjust.
14751         (read_variable): Adjust.
14752         (dwarf2_rnglists_process): Adjust.
14753         (dwarf2_ranges_process): Adjust.
14754         (dwarf2_ranges_read): Adjust.
14755         (dwarf2_get_pc_bounds): Adjust.
14756         (dwarf2_record_block_ranges): Adjust.
14757         (dwarf2_add_field): Adjust.
14758         (dwarf2_add_member_fn): Adjust.
14759         (read_structure_type): Adjust.
14760         (process_structure_scope): Adjust.
14761         (read_enumeration_type): Adjust.
14762         (read_array_type): Adjust.
14763         (mark_common_block_symbol_computed): Adjust.
14764         (read_common_block): Adjust.
14765         (read_namespace_type): Adjust.
14766         (read_namespace): Adjust.
14767         (read_module_type): Adjust.
14768         (read_tag_pointer_type): Adjust.
14769         (read_tag_ptr_to_member_type): Adjust.
14770         (read_tag_string_type): Adjust.
14771         (read_subroutine_type): Adjust.
14772         (read_typedef): Adjust.
14773         (read_base_type): Adjust.
14774         (attr_to_dynamic_prop): Adjust.
14775         (read_subrange_type): Adjust.
14776         (read_unspecified_type): Adjust.
14777         (dwarf2_read_abbrevs): Adjust.
14778         (load_partial_dies): Adjust.
14779         (read_partial_die): Adjust.
14780         (find_partial_die): Adjust.
14781         (guess_partial_die_structure_name): Adjust.
14782         (fixup_partial_die): Adjust.
14783         (read_attribute_value): Adjust.
14784         (read_addr_index): Adjust.
14785         (read_addr_index_from_leb128): Adjust.
14786         (read_str_index): Adjust.
14787         (dwarf2_string_attr): Adjust.
14788         (get_debug_line_section): Adjust.
14789         (dwarf_decode_line_header): Adjust.
14790         (lnp_state_machine::check_line_address): Adjust.
14791         (dwarf_decode_lines_1): Adjust.
14792         (dwarf_decode_lines): Adjust.
14793         (dwarf2_start_symtab): Adjust.
14794         (var_decode_location): Adjust.
14795         (new_symbol_full): Adjust.
14796         (dwarf2_const_value_data): Adjust.
14797         (dwarf2_const_value_attr): Adjust.
14798         (dwarf2_const_value): Adjust.
14799         (die_type): Adjust.
14800         (die_containing_type): Adjust.
14801         (build_error_marker_type): Adjust.
14802         (lookup_die_type): Adjust.
14803         (guess_full_die_structure_name): Adjust.
14804         (anonymous_struct_prefix): Adjust.
14805         (determine_prefix): Adjust.
14806         (dwarf2_name): Adjust.
14807         (follow_die_ref_or_sig): Adjust.
14808         (follow_die_offset): Adjust.
14809         (follow_die_ref): Adjust.
14810         (follow_die_sig_1): Adjust.
14811         (follow_die_sig): Adjust.
14812         (get_signatured_type): Adjust.
14813         (get_DW_AT_signature_type): Adjust.
14814         (decode_locdesc): Adjust.
14815         (dwarf_decode_macros): Adjust.
14816         (cu_debug_loc_section): Adjust.
14817         (fill_in_loclist_baton): Adjust.
14818         (dwarf2_symbol_mark_computed): Adjust.
14819         (init_one_comp_unit): Don't assign
14820         dwarf2_cu::dwarf2_per_objfile.
14821         (set_die_type): Adjust.
14822
14823 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14824
14825         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14826         <dwarf2_per_objfile>: New field.
14827         (dwarf2_per_objfile): Remove global.
14828         (get_dwarf2_per_objfile): New function.
14829         (set_dwarf2_per_objfile): New function.
14830         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14831         dwarf2_per_objfile.
14832         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14833         (read_abbrev_offset): Likewise.
14834         (read_indirect_string): Likewise.
14835         (read_indirect_line_string): Likewise.
14836         (read_indirect_string_at_offset): Likewise.
14837         (read_indirect_string_from_dwz): Likewise.
14838         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14839         dwarf2_per_objfile.
14840         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14841         (create_all_comp_units): Change objfile parameter to
14842         dwarf2_per_objfile.
14843         (create_all_type_units): Likewise.
14844         (process_queue): Add dwarf2_per_objfile parameter.
14845         (read_and_check_comp_unit_head): Likewise.
14846         (lookup_dwo_unit_in_dwp): Likewise.
14847         (get_dwp_file): Likewise.
14848         (process_cu_includes): Likewise.
14849         (struct free_dwo_file_cleanup_data): New struct.
14850         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14851         set_dwarf2_per_objfile.
14852         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14853         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14854         context, adjust calls.
14855         (dw2_instantiate_symtab): Likewise.
14856         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14857         (dw2_get_cu): Likewise.
14858         (create_cu_from_index_list): Change objfile parameter to
14859         dwarf2_per_objfile.
14860         (create_cus_from_index_list): Get dwarf2_per_objfile from
14861         context, adjust calls.
14862         (create_cus_from_index): Likewise.
14863         (create_signatured_type_table_from_index): Change objfile
14864         parameter to dwarf2_per_objfile.
14865         (create_signatured_type_table_from_debug_names): Change objfile
14866         parameter to dwarf2_per_objfile.
14867         (create_addrmap_from_index): Likewise.
14868         (create_addrmap_from_aranges): Likewise.
14869         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14870         (dw2_setup): Remove.
14871         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14872         context.
14873         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14874         get_dwarf2_per_objfile.
14875         (dw2_forget_cached_source_info): Likewise.
14876         (dw2_map_symtabs_matching_filename): Likewise.
14877         (struct dw2_symtab_iterator) <index>: Remove.
14878         <dwarf2_per_objfile>: New field.
14879         (dw2_symtab_iter_init): Replace index parameter with
14880         dwarf2_per_objfile.
14881         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14882         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14883         (dw2_print_stats): Likewise.
14884         (dw2_dump): Likewise.
14885         (dw2_expand_symtabs_for_function): Likewise.
14886         (dw2_expand_all_symtabs): Likewise.
14887         (dw2_expand_symtabs_with_fullname): Likewise.
14888         (dw2_expand_marked_cus): Replace index and objfile parameters
14889         with dwarf2_per_objfile.
14890         (dw_expand_symtabs_matching_file_matcher): Add
14891         dwarf2_per_objfile parameter and adjust calls.
14892         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14893         adjust calls.
14894         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14895         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14896         adjust calls.
14897         (create_cus_from_debug_names_list): Replace objfile parameter
14898         with dwarf2_per_objfile and adjust calls.
14899         (create_cus_from_debug_names): Likewise.
14900         (dwarf2_read_debug_names): Likewise.
14901         (mapped_debug_names::namei_to_name): Adjust call.
14902         (dw2_debug_names_iterator::next): Likewise.
14903         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14904         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14905         (dw2_debug_names_dump): Likewise.
14906         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14907         (dw2_debug_names_expand_symtabs_matching): Likewise.
14908         (dwarf2_initialize_objfile): Likewise.
14909         (dwarf2_build_psymtabs): Likewise.
14910         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14911         this_cu.
14912         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14913         (read_and_check_comp_unit_head): Likewise.
14914         (read_abbrev_offset): Likewise.
14915         (create_debug_type_hash_table): Likewise.
14916         (create_debug_types_hash_table): Likewise.
14917         (create_all_type_units): Replace objfile parameter with
14918         dwarf2_per_objfile.
14919         (add_type_unit): Add dwarf2_per_objfile parameter.
14920         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14921         with dwarf2_per_objfile.
14922         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14923         (lookup_dwp_signatured_type): Likewise.
14924         (lookup_signatured_type): Likewise.
14925         (read_cutu_die_from_dwo): Likewise.
14926         (init_tu_and_read_dwo_dies): Likewise.
14927         (init_cutu_and_read_dies): Likewise.
14928         (init_cutu_and_read_dies_no_follow): Likewise.
14929         (allocate_type_unit_groups_table): Add objfile parameter.
14930         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14931         (get_type_unit_group): Likewise.
14932         (process_psymtab_comp_unit): Update call.
14933         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14934         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14935         (print_tu_stats): Likewise.
14936         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14937         in void* parameter.
14938         (build_type_psymtabs): Change objfile parameter to
14939         dwarf2_per_objfile.
14940         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14941         passed in void* parameter.
14942         (process_skeletonless_type_units): Change objfile parameter to
14943         dwarf2_per_objfile.
14944         (set_partial_user): Likewise.
14945         (dwarf2_build_psymtabs_hard): Likewise.
14946         (read_comp_units_from_section): Likewise.
14947         (create_all_comp_units): Likewise.
14948         (scan_partial_symbols): Update calls.
14949         (add_partial_symbol): Likewise.
14950         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14951         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14952         (process_queue): Add dwarf2_per_objfile parameter.
14953         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14954         (compute_compunit_symtab_includes): Likewise.
14955         (process_cu_includes): Add dwarf2_per_objfile parameter.
14956         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14957         (process_full_type_unit): Likewise.
14958         (process_imported_unit_die): Update call.
14959         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14960         (read_file_scope): Likewise.
14961         (allocate_dwo_file_hash_table): Add objfile parameter.
14962         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14963         (create_cus_hash_table): Likewise.
14964         (create_dwp_hash_table): Likewise.
14965         (create_dwo_unit_in_dwp_v1): Likewise.
14966         (create_dwp_v2_section): Likewise.
14967         (create_dwo_unit_in_dwp_v2): Likewise.
14968         (lookup_dwo_unit_in_dwp): Likewise.
14969         (try_open_dwop_file): Likewise.
14970         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14971         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14972         cleanup to include a reference to dwarf2_per_objfile.
14973         (open_dwp_file): Add dwarf2_per_objfile parameter.
14974         (open_and_init_dwp_file): Likewise.
14975         (get_dwp_file): Likewise.
14976         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14977         (queue_and_load_all_dwo_tus): Update call.
14978         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14979         data.
14980         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14981         (dwarf2_ranges_process): Likewise.
14982         (dwarf2_get_pc_bounds): Likewise.
14983         (mark_common_block_symbol_computed): Likewise.
14984         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14985         (dwarf2_read_abbrevs): Update call.
14986         (read_partial_die): Use dwarf2_per_objfile from cu.
14987         (find_partial_die): Likewise.
14988         (fixup_partial_die): Likewise.
14989         (read_attribute_value): Likewise.
14990         (read_indirect_string_at_offset_from): Add objfile parameter.
14991         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14992         parameter.
14993         (read_indirect_string_from_dwz): Add objfile parameter.
14994         (read_indirect_string): Add objfile parameter.
14995         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14996         (read_addr_index): Use dwarf2_per_objfile from cu.
14997         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14998         call dw2_setup.
14999         (read_str_index): Use dwarf2_per_objfile from cu.
15000         (get_debug_line_section): Likewise.
15001         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15002         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15003         (new_symbol_full): Use dwarf2_per_objfile from cu.
15004         (build_error_marker_type): Likewise.
15005         (lookup_die_type): Likewise.
15006         (determine_prefix): Likewise.
15007         (follow_die_offset): Likewise.
15008         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15009         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15010         (dwarf2_fetch_die_type_sect_off): Likewise.
15011         (dwarf2_get_die_type): Likewise.
15012         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15013         (get_signatured_type): Likewise.
15014         (get_DW_AT_signature_type): Likewise.
15015         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15016         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15017         (cu_debug_loc_section): Likewise.
15018         (fill_in_loclist_baton): Likewise.
15019         (dwarf2_symbol_mark_computed): Likewise.
15020         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15021         dwarf2_per_objfile.
15022         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15023         parameter.
15024         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15025         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15026         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15027         (set_die_type): Use dwarf2_free_objfile from cu.
15028         (get_die_type_at_offset): Likewise.
15029         (dwarf2_per_objfile_free): Don't assign global variable.
15030         (debug_names) <constructor>: Add dwarf2_per_objfile
15031         parameter, update m_debugstrlookup construction.
15032         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15033         parameter.
15034         <m_dwarf2_per_objfile>: New field.
15035         <lookup>: Use m_dwarf2_per_objfile.
15036         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15037         (psyms_seen_size): Likewise.
15038         (write_gdbindex): Replace objfile parameter with
15039         dwarf2_per_objfile.
15040         (write_debug_names): Likewise.
15041         (write_psymtabs_to_index): Likewise.
15042         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15043         calls.
15044
15045 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15046
15047         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15048         <dwarf2_per_objfile>: New field.
15049         (struct dwarf2_per_cu_data) <objfile>: Remove.
15050         <dwarf2_per_objfile>: New field.
15051         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15052         of objfile.
15053         (create_signatured_type_table_from_index): Likewise.
15054         (create_debug_type_hash_table): Likewise.
15055         (fill_in_sig_entry_from_dwo_entry): Likewise.
15056         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15057         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15058         objfile.
15059         (create_partial_symtab): Access objfile through
15060         dwarf2_per_objfile.
15061         (process_psymtab_comp_unit_reader): Likewise.
15062         (read_comp_units_from_section): Likewise.
15063         (scan_partial_symbols): Likewise.
15064         (add_partial_symbol): Likewise.
15065         (add_partial_subprogram): Likewise.
15066         (peek_die_abbrev): Likewise.
15067         (fixup_go_packaging): Likewise.
15068         (process_full_comp_unit): Likewise.
15069         (process_full_type_unit): Likewise.
15070         (process_imported_unit_die): Likewise.
15071         (dwarf2_compute_name): Likewise.
15072         (dwarf2_physname): Likewise.
15073         (read_import_statement): Likewise.
15074         (create_cus_hash_table): Assign dwarf2_physname instead of
15075         objfile.
15076         (read_func_scope): Access objfile through dwarf2_per_objfile.
15077         (read_lexical_block_scope): Likewise.
15078         (read_call_site_scope): Likewise.
15079         (read_variable): Likewise.
15080         (dwarf2_rnglists_process): Likewise.
15081         (dwarf2_ranges_process): Likewise.
15082         (dwarf2_ranges_read): Likewise.
15083         (dwarf2_record_block_ranges): Likewise.
15084         (dwarf2_add_field): Likewise.
15085         (dwarf2_add_member_fn): Likewise.
15086         (read_structure_type): Likewise.
15087         (process_structure_scope): Likewise.
15088         (read_enumeration_type): Likewise.
15089         (read_array_type): Likewise.
15090         (read_common_block): Likewise.
15091         (read_namespace_type): Likewise.
15092         (read_namespace): Likewise.
15093         (read_module_type): Likewise.
15094         (read_tag_pointer_type): Likewise.
15095         (read_tag_ptr_to_member_type): Likewise.
15096         (read_tag_string_type): Likewise.
15097         (read_subroutine_type): Likewise.
15098         (read_typedef): Likewise.
15099         (read_base_type): Likewise.
15100         (attr_to_dynamic_prop): Likewise.
15101         (read_subrange_type): Likewise.
15102         (read_unspecified_type): Likewise.
15103         (load_partial_dies): Likewise.
15104         (read_partial_die): Likewise.
15105         (find_partial_die): Likewise.
15106         (guess_partial_die_structure_name): Likewise.
15107         (fixup_partial_die): Likewise.
15108         (read_attribute_value): Likewise.
15109         (read_addr_index_from_leb128): Likewise.
15110         (dwarf2_read_addr_index): Likewise.
15111         (dwarf2_string_attr): Likewise.
15112         (lnp_state_machine::check_line_address): Likewise.
15113         (dwarf_decode_lines_1): Likewise.
15114         (dwarf_decode_lines): Likewise.
15115         (dwarf2_start_symtab): Likewise.
15116         (var_decode_location): Likewise.
15117         (new_symbol_full): Likewise.
15118         (dwarf2_const_value_data): Likewise.
15119         (dwarf2_const_value_attr): Likewise.
15120         (dwarf2_const_value): Likewise.
15121         (die_type): Likewise.
15122         (die_containing_type): Likewise.
15123         (lookup_die_type): Likewise.
15124         (guess_full_die_structure_name): Likewise.
15125         (anonymous_struct_prefix): Likewise.
15126         (dwarf2_name): Likewise.
15127         (follow_die_ref_or_sig): Likewise.
15128         (follow_die_offset): Likewise.
15129         (follow_die_ref): Likewise.
15130         (dwarf2_fetch_die_loc_sect_off): Likewise.
15131         (dwarf2_fetch_constant_bytes): Likewise.
15132         (dwarf2_fetch_die_type_sect_off): Likewise.
15133         (dwarf2_get_die_type): Likewise.
15134         (follow_die_sig): Likewise.
15135         (decode_locdesc): Likewise.
15136         (dwarf2_per_cu_objfile): Likewise.
15137         (dwarf2_per_cu_text_offset): Likewise.
15138         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15139         objfile.
15140         (set_die_type): Access objfile through
15141         dwarf2_per_objfile.
15142
15143 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15144
15145         * valprint.c (converted_character_d): Remove typedef.
15146         (DEF_VEC_O (converted_character_d)): Remove.
15147         (count_next_character): Use std::vector.
15148         (print_converted_chars_to_obstack): Likewise.
15149         (generic_printstr): Likewise.
15150
15151 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15152
15153         * xml-support.h (struct gdb_xml_value): Add constructor.
15154         <value>: Change type to unique_xmalloc_ptr.
15155         (gdb_xml_value_s): Remove typedef.
15156         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15157         (gdb_xml_element_start_handler): Change parameter type to
15158         std::vector.
15159         (xml_find_attribute): Likewise.
15160         * xml-support.c (xml_find_attribute): Change parameter type to
15161         std::vector and adjust.
15162         (gdb_xml_values_cleanup): Remove.
15163         (gdb_xml_parser::start_element): Adjust to std::vector.
15164         (xinclude_start_include): Change paraeter type to std::vector
15165         and adjust.
15166         * btrace.c (check_xml_btrace_version): Likewise.
15167         (parse_xml_btrace_block): Likewise.
15168         (parse_xml_btrace_pt_config_cpu): Likewise.
15169         (parse_xml_btrace_pt): Likewise.
15170         (parse_xml_btrace_conf_bts): Likewise.
15171         (parse_xml_btrace_conf_pt): Likewise.
15172         * memory-map.c (memory_map_start_memory): Likewise.
15173         (memory_map_start_property): Likewise.
15174         * osdata.c (osdata_start_osdata): Likewise.
15175         (osdata_start_item): Likewise.
15176         (osdata_start_column): Likewise.
15177         * remote.c (start_thread): Likewise.
15178         * solib-aix.c (library_list_start_library): Likewise.
15179         (library_list_start_list): Likewise.
15180         * solib-svr4.c (library_list_start_library): Likewise.
15181         (svr4_library_list_start_list): Likewise.
15182         * solib-target.c (library_list_start_segment): Likewise.
15183         (library_list_start_section): Likewise.
15184         (library_list_start_library): Likewise.
15185         (library_list_start_list): Likewise.
15186         * tracepoint.c (traceframe_info_start_memory): Likewise.
15187         (traceframe_info_start_tvar): Likewise.
15188         * xml-syscall.c (syscall_start_syscall): Likewise.
15189         * xml-tdesc.c (tdesc_start_target): Likewise.
15190         (tdesc_start_feature): Likewise.
15191         (tdesc_start_reg): Likewise.
15192         (tdesc_start_union): Likewise.
15193         (tdesc_start_struct): Likewise.
15194         (tdesc_start_flags): Likewise.
15195         (tdesc_start_enum): Likewise.
15196         (tdesc_start_field): Likewise.
15197         (tdesc_start_enum_value): Likewise.
15198         (tdesc_start_vector): Likewise.
15199
15200 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15201
15202         * extension.h (struct xmethod_worker) <clone>: Remove.
15203         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15204         Remove.
15205         (python_xmethod_worker::clone): Remove.
15206         * valops.c (find_overload_match): Use std::move instead of
15207         clone.
15208
15209 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15210
15211         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15212         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15213         <free_xmethod_worker_data>: Remove.
15214         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15215         <get_xmethod_arg_types>: Remove.
15216         <get_xmethod_result_type>: Remove.
15217         <invoke_xmethod>: Remove.
15218         * extension.c (new_xmethod_worker): Remove.
15219         (clone_xmethod_worker): Remove.
15220         (get_matching_xmethod_workers): Return void, pass std::vector by
15221         pointer.
15222         (get_xmethod_arg_types): Rename to...
15223         (xmethod_worker::get_arg_types): ... this, and adjust.
15224         (get_xmethod_result_type): Rename to...
15225         (xmethod_worker::get_result_type): ... this, and adjust.
15226         (invoke_xmethod): Remove.
15227         (free_xmethod_worker): Remove.
15228         (free_xmethod_worker_vec): Remove.
15229         * extension.h (enum ext_lang_rc): Move here from
15230         extension-priv.h.
15231         (struct xmethod_worker): Add constructor and destructor.
15232         <data>: Remove.
15233         <value>: Remove.
15234         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15235         virtual pure methods.
15236         <get_arg_types, get_result_type>: New methods.
15237         (xmethod_worker_ptr): Remove typedef.
15238         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15239         (xmethod_worker_vec): Remove typedef.
15240         (xmethod_worker_up): New typedef.
15241         (invoke_xmethod): Remove.
15242         (clone_xmethod_worker): Remove.
15243         (free_xmethod_worker): Remove.
15244         (free_xmethod_worker_vec): Remove.
15245         (get_xmethod_arg_types): Remove.
15246         (get_xmethod_result_type): Remove.
15247         * valops.c (find_method_list): Use std::vector, don't use
15248         intermediate vector.
15249         (value_find_oload_method_list): Use std::vector.
15250         (find_overload_match): Use std::vector.
15251         (find_oload_champ): Use std::vector.
15252         * value.c (value_free): Use operator delete.
15253         (value_of_xmethod): Rename to...
15254         (value_from_xmethod): ... this.  Don't assign
15255         xmethod_worker::value, take rvalue-reference.
15256         (result_type_of_xmethod): Adjust.
15257         (call_xmethod): Adjust.
15258         * value.h: Include extension.h.
15259         (struct xmethod_worker): Don't forward-declare.
15260         (value_of_xmethod): Rename to...
15261         (value_from_xmethod): ... this, take rvalue-reference.
15262         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15263         (struct python_xmethod_worker): ... this, add constructor and
15264         destructor.
15265         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15266         (gdbpy_free_xmethod_worker_data): Rename to...
15267         (python_xmethod_worker::~python_xmethod_worker): ... this and
15268         adjust.
15269         (gdbpy_clone_xmethod_worker_data): Rename to...
15270         (python_xmethod_worker::clone): ... this and adjust.
15271         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15272         temporary vector.
15273         (gdbpy_get_xmethod_arg_types): Rename to...
15274         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15275         (gdbpy_get_xmethod_result_type): Rename to...
15276         (python_xmethod_worker::do_get_result_type): ... this and
15277         adjust.
15278         (gdbpy_invoke_xmethod): Rename to...
15279         (python_xmethod_worker::invoke): ... this and adjust.
15280         (new_python_xmethod_worker): Rename to...
15281         (python_xmethod_worker::python_xmethod_worker): ... this and
15282         adjust.
15283         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15284         Remove.
15285         (gdbpy_free_xmethod_worker_data): Remove.
15286         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15287         (gdbpy_get_xmethod_arg_types): Remove.
15288         (gdbpy_get_xmethod_result_type): Remove.
15289         (gdbpy_invoke_xmethod): Remove.
15290         * python/python.c (python_extension_ops): Remove obsolete
15291         callbacks.
15292
15293 2018-01-05  Pedro Alves  <palves@redhat.com>
15294
15295         PR gdb/18653
15296         * common/signals-state-save-restore.c
15297         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15298         find a custom handler preinstalled, instead of internal erroring.
15299         But only warn if !quiet.
15300         * common/signals-state-save-restore.h
15301         (save_original_signals_state): New parameter 'quiet'.
15302         * main.c (captured_main_1): Move save_original_signals_state call
15303         after option handling, and pass QUIET.
15304
15305 2018-01-05  Pedro Alves  <palves@redhat.com>
15306
15307         * spu-tdep.c (spu_catch_start): Pass
15308         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15309
15310 2018-01-05  Pedro Alves  <palves@redhat.com>
15311
15312         PR gdb/22670
15313         * ada-lang.c (literal_symbol_name_matcher): New function.
15314         (ada_get_symbol_name_matcher): Use it for
15315         symbol_name_match_type::SEARCH_NAME.
15316         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15317         it down instead of assuming symbol_name_match_type::FULL.
15318         * block.h (block_lookup_symbol): New parameter 'match_type'.
15319         * c-valprint.c (print_unpacked_pointer): Use
15320         lookup_symbol_search_name instead of lookup_symbol.
15321         * compile/compile-object-load.c (get_out_value_type): Pass down
15322         symbol_name_match_type::SEARCH_NAME.
15323         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15324         symbol_name_match_type::FULL.
15325         * cp-support.c (cp_get_symbol_name_matcher): Handle
15326         symbol_name_match_type::SEARCH_NAME.
15327         * infrun.c (insert_exception_resume_breakpoint): Use
15328         lookup_symbol_search_name.
15329         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15330         * psymtab.c (maintenance_check_psymtabs): Use
15331         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15332         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15333         SYMBOL_SEARCH_NAME.
15334         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15335         if symbol_name_match_type::SEARCH_NAME.
15336         (lookup_symbol_in_language): Pass down
15337         symbol_name_match_type::FULL.
15338         (lookup_symbol_search_name): New.
15339         (lookup_language_this): Pass down
15340         symbol_name_match_type::SEARCH_NAME.
15341         (lookup_symbol_aux, lookup_local_symbol): New parameter
15342         'match_type'.  Pass it down.
15343         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15344         (lookup_symbol_search_name): New declaration.
15345         (lookup_symbol_in_block): New 'match_type' parameter.
15346
15347 2018-01-05  Pedro Alves  <palves@redhat.com>
15348
15349         PR gdb/22670
15350         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15351         ada_lookup_symbol.
15352         (ada_lookup_symbol): Reimplement in terms of
15353         ada_lookup_symbol_list, bits factored out from
15354         ada_lookup_encoded_symbol.
15355
15356 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15357
15358         * ada-exp.y (write_object_renaming): When subscripting an array
15359         using a symbol as the index, pass the block in call to
15360         ada_lookup_encoded_symbol when looking that symbol up.
15361
15362 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15363
15364         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15365         TYPE_INDEX_TYPE.
15366
15367 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15368
15369         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15370         the case where VALUE_LVAL (val0) is not lval_memory.
15371
15372 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15373
15374         * ada-valprint.c (print_optional_low_bound): Handle
15375         character-indexed array printing like boolean-indexed array
15376         printing.
15377
15378 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15379
15380         * NEWS: Create a new section for the next release branch.
15381         Rename the section of the current branch, now that it has
15382         been cut.
15383
15384 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15385
15386         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15387         * version.in: Bump version to 8.1.50.DATE-git.
15388
15389 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15390
15391         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15392         Add field.
15393         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15394         Add field.
15395         (default_exception_support_info) <catch_handlers_sym>: Add field.
15396         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15397         (ada_exception_name_addr_1): Add "catch handlers" handling.
15398         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15399         Update all callers.
15400         (create_excep_cond_exprs) <ex>: Add parameter.
15401         (re_set_exception): Update create_excep_cond_exprs call.
15402         (print_it_exception, print_one_exception, print_mention_exception)
15403         (print_recreate_exception): Add "catch handler" handling.
15404         (allocate_location_catch_handlers, re_set_catch_handlers)
15405         (check_status_catch_handlers, print_it_catch_handlers)
15406         (print_one_catch_handlers, print_mention_catch_handlers)
15407         (print_recreate_catch_handlers): New function.
15408         (catch_handlers_breakpoint_ops): New variable.
15409         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15410         Add parameter.  Add "catch handler" handling.
15411         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15412         Add "catch handler" handling.
15413         (ada_exception_catchpoint_cond_string): Add "catch handler"
15414         handling.
15415         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15416         call.
15417         (catch_ada_handlers_command): New function.
15418         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15419         operations structure.
15420         (_initialize_ada_language): Add "catch handlers" command entry.
15421         * NEWS: Document "catch handlers" feature.
15422
15423 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15424
15425         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15426         account when creating the array type of the slice.
15427         (ada_value_slice): Likewise.
15428
15429 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15430
15431         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15432         New enum value.
15433         (create_array_type_with_stride): Add byte_stride_prop parameter.
15434         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15435         New parameter.  Update all callers in this file.
15436         (array_type_has_dynamic_stride): New function.
15437         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15438         of arrays with dynamic byte strides.
15439         * dwarf2read.c (read_array_type): Add support for dynamic
15440         DW_AT_byte_stride attributes.
15441
15442 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15443
15444         * dwarf2read.c (read_unspecified_type): Treat
15445         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15446
15447 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15448
15449         Update copyright year range in all GDB files.
15450
15451 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15452
15453         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15454         and gdb/testsuite/gdb.base/step-line.c.
15455
15456 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15457
15458         * copyright.py (main): Dump the contents of
15459         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15460         even if BY_HAND is empty.
15461
15462 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15463
15464         * top.c (print_gdb_version): Update Copyright year in version
15465         message.
15466
15467 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15468
15469         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15470
15471 For older changes see ChangeLog-2017.
15472 \f
15473 Local Variables:
15474 mode: change-log
15475 left-margin: 8
15476 fill-column: 74
15477 version-control: never
15478 coding: utf-8
15479 End: