Avoid crash when calling warning too early
[external/binutils.git] / gdb / ChangeLog
1 2018-11-08  Tom Tromey  <tom@tromey.com>
2
3         PR gdb/23555:
4         PR gdb/23838:
5         * target.h (target_supports_terminal_ours): Return bool.
6         * target.c (target_supports_terminal_ours): Handle case where
7         current_top_target returns nullptr.  Return bool.
8
9 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
10
11         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
12         return the correct count for potential HFAs.
13
14 2018-11-08  Jan Beulich  <jbeulich@suse.com>
15
16         * i387-tdep.c (i387_supply_xsave): Split handling of
17         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
18         (i387_collect_xsave): Likewise.
19
20 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
21
22         * riscv-tdep.c (riscv_insn::decode): Update header comment.
23         (riscv_frame_this_id): Catch errors thrown while building the
24         frame cache, leave the frame id as the default, which is the outer
25         frame id.
26
27 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
28
29         * ada-lang.c (read_atcb): Only set task_info->called_task if
30         task_info->state == Entry_Caller_Sleep.
31         (print_ada_task_info): Do not check task_info->state before
32         checking task_info->called_task.
33         (info_task): Likewise.
34
35 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
36
37         * ada-tasks.c (read_atcb): Clear task_info before computing
38         the value of each of its fields.
39
40 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
41
42         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
43         NULL before dereferencing it.
44
45 2018-11-06  Tom de Vries  <tdevries@suse.de>
46
47         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
48         program headers.
49
50 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
51
52         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
53         so that it applies to uclinux as well.
54
55 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
56
57         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
58         when on AAPCS.
59
60 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
61
62         * riscv-fbsd-nat.c (getregs_supplies): Return true for
63         RISCV_CSR_SSTATUS_REGNUM.
64
65 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
66
67         * source.c (open_source_file): Fix leak by transferring the
68         current s->fullname to the unique_xmalloc_ptr fullname given
69         to find_and_open_source.
70
71 2018-11-04  Tom Tromey  <tom@tromey.com>
72
73         * varobj.c (install_default_visualizer): Update.
74         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
75         Return gdbpy_ref.
76         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
77         (find_pretty_printer_from_progspace)
78         (find_pretty_printer_from_gdb, find_pretty_printer)
79         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
80         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
81         Update.
82
83 2018-11-04  Tom Tromey  <tom@tromey.com>
84
85         * python/python.c (gdbpy_parameter_value): Update.
86         * python/python-internal.h (python_string_to_unicode)
87         (python_string_to_target_python_string)
88         (host_string_to_python_string): Return gdbpy_ref.
89         * python/py-utils.c (python_string_to_unicode)
90         (unicode_to_encoded_python_string)
91         (unicode_to_target_python_string)
92         (python_string_to_target_string)
93         (python_string_to_target_python_string): Return gdbpy_ref.
94         (python_string_to_host_string): Update.
95         (host_string_to_python_string): Return gdbpy_ref.
96         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
97         (stpy_fullname): Update.
98         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
99         Update.
100         * python/py-prettyprint.c (print_string_repr): Update.
101         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
102         (objfpy_get_build_id): Update.
103         * python/py-breakpoint.c (bppy_get_location)
104         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
105         Update.
106
107 2018-11-04  Tom Tromey  <tom@tromey.com>
108
109         * python/python-internal.h (gdb_py_object_from_longest)
110         (gdb_py_object_from_ulongest): Return gdbpy_ref.
111         * python/py-value.c (valpy_int): Update.
112         * python/py-utils.c (gdb_py_object_from_longest): Return
113         gdbpy_ref.
114         (gdb_py_object_from_ulongest): Likewise.
115         * python/py-type.c (typy_get_alignof): Update.
116         * python/py-linetable.c (ltpy_get_all_source_lines)
117         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
118         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
119
120 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
121
122         * ada-lang.c (_initialize_ada_language): Fix typo.
123
124 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
125
126         * language.c (type): Remove.
127         (_initialize_language): Remove assignment to type.
128
129 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
130
131         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
132         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
133         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
134         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
135         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
136         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
137         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
138         and aarch64-ravenscar-thread.o.
139         * NEWS: Add entry documenting Ravenscar tasking support
140         on AArch64 ELF.
141
142 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
143
144         * symtab.c (info_functions_command): Initialize quiet flag.
145         * stack.c (info_args_command): Likewise.
146
147 2018-11-01  Jim Wilson  <jimw@sifive.com>
148
149         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
150         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
151         debugging messages.
152
153 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
154
155         * ada-lang.c (ada_watch_location_expression): New function.
156         (ada_language_defn): Set la_watch_location_expression to
157         ada_watch_location_expression.
158
159 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
160
161         * print-utils.c (int_string): Remove unnecessary trailing spaces.
162
163 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
164
165         * rs6000-tdep.c (skip_prologue): Fix potential negative left
166         shifting.
167
168 2018-11-01  Jerome Guitton  <guitton@adacore.com>
169             Joel Brobecker  <brobecker@adacore.com>
170
171         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
172         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
173         * arm-pikeos-tdep.c: New file.
174         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
175         embedded system.
176         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
177
178 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
179
180         * common/pathstuff.c (get_standard_temp_dir): New.
181         * common/pathstuff.h (get_standard_temp_dir): New.
182         * config.in: Re-generate.
183         * configure: Re-generate.
184         * configure.ac: Don't check for mkdtemp.
185         * gnulib/aclocal-m4-deps.mk: Re-generate.
186         * gnulib/aclocal.m4: Re-generate.
187         * gnulib/config.in: Re-generate.
188         * gnulib/configure: Re-generate.
189         * gnulib/import/Makefile.am: Re-generate.
190         * gnulib/import/Makefile.in: Re-generate.
191         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
192         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
193         * gnulib/import/m4/mkdtemp.m4: New file.
194         * gnulib/import/mkdtemp.c: New file.
195         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
196         Add mkdtemp module.
197         * unittests/mkdir-recursive-selftests.c (test): Use
198         get_standard_temp_dir.
199         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
200         ifdef.
201         * compile/compile.c (get_compile_file_tempdir): Likewise.
202
203 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
204
205         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
206         (SIG_FRAME_LR_OFFSET64): New define.
207         (SIG_FRAME_FP_OFFSET64): New define.
208         (aix_sighandle_frame_cache): New Function.
209         (aix_sighandle_frame_this_id): New Function.
210         (aix_sighandle_frame_prev_register): New Function.
211         (aix_sighandle_frame_sniffer): New Function.
212         (aix_sighandle_frame_unwind): New global variable.
213         (rs6000_aix_init_osabi): Install new frame unwinder.
214
215 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
216
217         PR gdb/23835
218         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
219         already defined.
220
221 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
222
223         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
224
225 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
226
227         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
228         (producer_is_icc): New function.
229         (check_producer): Set producer_is_icc field on dwarf2_cu.
230         (dwarf2_init_integer_type): New function.
231         (read_base_type): Call dwarf2_init_integer_type instead of
232         init_integer_type in all cases.
233         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
234         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
235         LEN is greater than 0.
236
237 2018-10-30  Tom Tromey  <tom@tromey.com>
238
239         * main.c (captured_main_1): Check return value of bfd_init.
240
241 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
242
243         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
244         Adjust comments.
245
246 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
247
248         * procfs.c: Include common/pathstuff.h.
249
250 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
251
252         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
253         Add missing braces.  No functional change.
254
255 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
256
257         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
258         to report a bad option and fix indentation.
259         * demangle.c (demangle_command): Use report_unrecognized_option_error
260         to report a bad option and correctly report the bad option.
261
262 2018-10-27  Tom Tromey  <tom@tromey.com>
263
264         PR cli/23364:
265         * darwin-nat.c (copied_shell): New global.
266         (may_have_sip): Rename from should_disable_startup_with_shell.
267         (copy_shell_to_cache, maybe_cache_shell): New functions.
268         (darwin_nat_target::create_inferior): Update.  Use
269         copied_shell.
270
271 2018-10-27  Tom Tromey  <tom@tromey.com>
272
273         * unittests/scoped_fd-selftests.c (test_to_file): New function.
274         (run_tests): Call test_to_file.
275         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
276         temporary files.
277         * common/scoped_fd.h (scoped_fd::to_file): New method.
278
279 2018-10-27  Tom Tromey  <tom@tromey.com>
280
281         * unittests/scoped_mmap-selftests.c (test_normal): Use
282         gdb_mkostemp_cloexec.
283         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
284         Use gdb_mkostemp_cloexec.
285         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
286         gnulib/config.in, gnulib/configure,
287         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
288         gnulib/import/m4/gnulib-cache.m4,
289         gnulib/import/m4/gnulib-comp.m4: Update.
290         * gnulib/import/m4/mkostemp.m4: New file.
291         * gnulib/import/m4/mkstemp.m4: Remove.
292         * gnulib/import/mkostemp.c: New file.
293         * gnulib/import/mkstemp.m4: Remove.
294         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
295         mkstemp, add mkostemp.  Apply new patch.
296         * gnulib/import/stdlib.in.h: Apply patch.
297         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
298         New file.
299         * dwarf-index-write.c (write_psymtabs_to_index): Use
300         gdb_mkostemp_cloexec.
301         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
302
303 2018-10-27  Tom Tromey  <tom@tromey.com>
304
305         * unittests/mkdir-recursive-selftests.c: New file.
306         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
307         unittests/mkdir-recursive-selftests.c.
308         * dwarf-index-cache.c (mkdir_recursive): Move to
309         common/filestuff.c.
310         (index_cache::store): Check return value of mkdir_recursive.
311         (create_dir_and_check, test_mkdir_recursive): Move to new file.
312         (_initialize_index_cache): Don't register test.
313         * common/filestuff.h (mkdir_recursive): Declare.
314         * common/filestuff.c (mkdir_recursive): Move from
315         dwarf-index-cache.c.  Return bool.
316
317 2018-10-27  Tom Tromey  <tom@tromey.com>
318
319         * dwarf-index-write.c (write_psymtabs_to_index): Move
320         make_temp_filename to common/pathstuff.c.
321         * common/pathstuff.h (make_temp_filename): Declare.
322         * common/pathstuff.c (make_temp_filename): New function, moved
323         from dwarf-index-write.c.
324
325 2018-10-27  Tom Tromey  <tom@tromey.com>
326
327         * procfs.c (procfs_target::create_inferior): Use get_shell.
328         * cli/cli-cmds.c (shell_escape): Use get_shell.
329         * windows-nat.c (windows_nat_target::create_inferior): Use
330         get_shell.
331         * common/pathstuff.c (get_shell): New function.
332         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
333         (fork_inferior): Use get_shell.
334         * common/pathstuff.h (get_shell): Declare.
335
336 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
337
338         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
339
340 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
341
342         * stack.c (print_variable_and_value_data): Add preg and treg.
343         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
344         and update callers.
345         (print_frame_arg_vars): Likewise.
346         (prepare_reg): New function.
347         (info_locals_command): Extract info print args and use them.
348         (info_args_command): Likewise.
349         (_initialize_stack): Modify on-line help.
350         * symtab.c (treg_matches_sym_type_name): New function.
351         (search_symbols): New arg t_regexp.
352         (symtab_symbol_info): New args quiet, regexp, t_regexp.
353         (info_variables_command): Extract info print args and use them.
354         (info_functions_command): Likewise.
355         (info_types_command): Update call to symtab_symbol_info.
356         (_initialize_symtab): Modify on-line help.
357         * symtab.h (treg_matches_sym_type_name): New function.
358         (search_symbols): New t_regexp arg.
359
360 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
361
362         * cli-utils.c (extract_arg_maybe_quoted): New function.
363         (extract_info_print_args): New function.
364         (info_print_args_help): New function.
365         (report_unrecognized_option_error): New function.
366         * cli-utils.h (extract_arg_maybe_quoted): New function.
367         (extract_info_print_args): New function.
368         (info_print_args_help): New function.
369         (report_unrecognized_option_error): New function.
370
371 2018-10-26  Tom Tromey  <tom@tromey.com>
372
373         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
374         (compute_compunit_symtab_includes): Update.
375         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
376         (compunit_symtab_ptr): Likewise.
377
378 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
379
380         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
381         default_print_auxv_entry for specific tag values.
382
383 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
384
385         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
386
387 2018-10-26  Jim Wilson  <jimw@sifive.com>
388
389         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
390         (riscv_linux_sigframe_init): Declare.
391         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
392         (riscv_linux_sigframe): New.
393         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
394         (riscv_linux_sigframe_init): Define.
395         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
396
397         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
398         (riscv_isa_flen): Likewise.  Drop static.
399         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
400         (riscv_isa_flen): Likewise.  Declare.
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_htm_vsx32l)
406         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
407         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
408         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
409         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
410         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
411         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
412         Define.
413         (struct ppc_linux_features) <htm>: New field.
414         (ppc_linux_no_features): Add initializer for htm field.
415         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
416         new tdescs.
417         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
418         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
419         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
420         Define if not already defined.
421         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
422         and rs6000/powerpc-isa207-htm-vsx64l.
423         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
424         rs6000/powerpc-isa207-htm-vsx64l.xml.
425         * features/rs6000/power-htm-spr.xml: New file.
426         * features/rs6000/power-htm-core.xml: New file.
427         * features/rs6000/power64-htm-core.xml: New file.
428         * features/rs6000/power-htm-fpu.xml: New file.
429         * features/rs6000/power-htm-altivec.xml: New file.
430         * features/rs6000/power-htm-vsx.xml: New file.
431         * features/rs6000/power-htm-ppr.xml: New file.
432         * features/rs6000/power-htm-dscr.xml: New file.
433         * features/rs6000/power-htm-tar.xml: New file.
434         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
435         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
436         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
437         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
438         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
439         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
440         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
441         fetch_regset with HTM regsets.
442         (store_register, store_ppc_registers): Call store_regset with HTM
443         regsets.
444         (ppc_linux_nat_target::read_description): Set htm field in the
445         features struct if needed.
446         * ppc-linux-tdep.c: Include
447         features/rs6000/powerpc-isa207-htm-vsx32l.c and
448         features/rs6000/powerpc-isa207-htm-vsx64l.c.
449         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
450         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
451         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
452         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
453         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
454         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
455         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
456         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
457         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
458         (ppc32_linux_ctarregset): New globals.
459         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
460         (ppc_linux_collect_core_cpgrregset): New function.
461         (ppc_linux_iterate_over_regset_sections): Call back with the htm
462         regsets.
463         (ppc_linux_core_read_description): Check if the tm spr section is
464         present and set htm in the features struct.
465         (_initialize_ppc_linux_tdep): Call
466         initialize_tdesc_powerpc_isa207_htm_vsx32l and
467         initialize_tdesc_powerpc_isa207_htm_vsx64l.
468         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
469         Declare.
470         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
471         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
472         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
473         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
474         New fields.
475         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
476         Likewise.
477         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
478         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
479         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
480         New enum fields.
481         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
482         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
483         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
484         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
485         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
486         <PPC_CTAR_REGNUM>: Likewise.
487         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
488         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
489         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
490         (IS_CEFP_PSEUDOREG): Define.
491         (rs6000_register_name): Hide the upper halves of checkpointed VSX
492         registers.  Return names for the checkpointed DFP, VSX, and EFP
493         pseudo registers.
494         (rs6000_pseudo_register_type): Remove initial assert and raise an
495         internal error in the else clause instead.  Return types for the
496         checkpointed DFP, VSX, and EFP pseudo registers.
497         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
498         checkpointed DFP pseudo registers.
499         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
500         checkpointed VSX pseudo registers.
501         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
502         from efpr_pseudo_register_read and
503         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
504         registers.
505         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
506         Handle checkpointed DFP, VSX, and EFP registers.
507         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
508         (efp_ax_pseudo_register_collect): New functions.
509         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
510         register logic to new functions.  Handle checkpointed DFP, VSX,
511         and EFP pseudo registers.
512         (rs6000_gdbarch_init): Look for and validate the htm features.
513         Include checkpointed DFP, VSX and EFP pseudo-registers.
514         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
515         HTM registers.
516
517 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
518
519         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
520         without altivec or fpu.
521
522 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
523             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
524
525         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
526         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
527         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
528         Define if not already defined.
529         * features/rs6000/power-ebb.xml: New file.
530         * features/rs6000/power-linux-pmu.xml: New file.
531         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
532         features.
533         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
534         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
535         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
536         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
537         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
538         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
539         fetch_regset with ebb and pmu regsets.
540         (store_register, store_ppc_registers): Call store_regset with ebb
541         and pmu regsets.
542         (ppc_linux_nat_target::read_description): Set isa207 field in the
543         features struct if ebb and pmu are avaiable.
544         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
545         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
546         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
547         and pmu regsets.
548         (ppc_linux_core_read_description): Check if the pmu section is
549         present and set isa207 in the features struct.
550         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
551         (ppc32_linux_pmuregset): Declare.
552         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
553         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
554         <ppc_sier_regnum>: New field.
555         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
556         New enum values.
557         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
558         values.
559         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
560         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
561         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
562         ebb and pmu features.
563
564 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
565             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
566
567         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
568         (tdesc_powerpc_isa207_vsx64l): Declare.
569         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
570         (struct ppc_linux_features) <isa207>: New field.
571         (ppc_linux_no_features): Add initializer for isa207 field.
572         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
573         new tdescs.
574         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
575         (NT_PPC_TAR): Define if not already defined.
576         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
577         rs6000/powerpc-isa207-vsx64l.
578         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
579         rs6000/powerpc-isa207-vsx64l.xml.
580         * features/rs6000/power-tar.xml: New file.
581         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
582         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
583         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
584         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
585         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
586         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
587         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
588         fetch_regset with the TAR regset.
589         (store_register, store_ppc_registers): Call store_regset with the
590         TAR regset.
591         (ppc_linux_nat_target::read_description): Set isa207 field in the
592         features struct if needed.
593         * ppc-linux-tdep.c: Include
594         features/rs6000/powerpc-isa207-vsx32l.c and
595         features/rs6000/powerpc-isa207-vsx64l.c.
596         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
597         (ppc_linux_iterate_over_regset_sections): Call back with the tar
598         regset.
599         (ppc_linux_core_read_description): Check if the tar section is
600         present and set isa207 in the features struct.
601         (_initialize_ppc_linux_tdep): Call
602         initialize_tdesc_powerpc_isa207_vsx32l and
603         initialize_tdesc_powerpc_isa207_vsx64l.
604         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
605         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
606         (enum) <PPC_TAR_REGNUM>: New enum value.
607         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
608         feature.
609         (ppc_process_record_op31): Record changes to TAR.
610
611 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
612             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
613
614         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
615         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
616         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
617         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
618         (struct ppc_linux_features) <ppr_dscr>: New field.
619         (ppc_linux_no_features): Add initializer for ppr_dscr field.
620         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
621         new tdescs.
622         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
623         Define if not already defined.
624         * features/Makefile (WHICH): Add
625         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
626         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
627         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
628         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
629         * features/rs6000/power-dscr.xml: New file.
630         * features/rs6000/power-ppr.xml: New file.
631         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
632         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
633         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
634         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
635         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
636         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
637         * ppc-linux-nat.c: Include <sys/uio.h>.
638         (fetch_regset, store_regset, check_regset): New functions.
639         (fetch_register, fetch_ppc_registers): Call fetch_regset with
640         DSCR and PPR regsets.
641         (store_register, store_ppc_registers): Call store_regset with
642         DSCR and PPR regsets.
643         (ppc_linux_get_hwcap2): New function.
644         (ppc_linux_nat_target::read_description): Call
645         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
646         features struct if needed.
647         * ppc-linux-tdep.c: Include
648         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
649         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
650         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
651         (ppc32_linux_dscrregset): New globals.
652         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
653         and dscr regsets.
654         (ppc_linux_core_read_description): Check if the ppr and dscr
655         sections are present and set ppr_dscr in the features struct.
656         (_initialize_ppc_linux_tdep): Call
657         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
658         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
659         * ppc-linux-tdep.h (ppc32_linux_pprregset)
660         (ppc32_linux_dscrregset): Declare.
661         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
662         <ppc_dscr_regnum>: New field.
663         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
664         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
665         and dscr features.
666         (ppc_process_record_op31): Record changes to PPR and DSCR.
667
668 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
669
670         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
671         second initializer line for the have_* variables.  Initialize
672         have_fpu to 0 instead of 1.
673
674 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
675
676         * arch/ppc-linux-common.c (ppc_linux_match_description):
677         Parenthesize tdesc assignements and indent them properly.
678
679 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
680
681         * ppc-linux-nat.c (fetch_register): Change if statement to else
682         if.
683         (store_register): Likewise.
684
685 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
686
687         * rs6000-tdep.c: Remove reggroups.h include.
688         (rs6000_pseudo_register_reggroup_p): Remove.
689         (rs6000_gdbarch_init): Remove call to
690         set_tdesc_pseudo_register_reggroup_p.
691
692 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
693
694         * reggroups.c (default_register_reggroup_p): Return true for
695         decfloat registers and float_reggroup.
696
697 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
698
699         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
700         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
701         ppc_linux_collect_vrregset by regcache_collect_regset.
702
703 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
704
705         * linux-tdep.c (linux_collect_regset_section_cb): Use
706         std::vector<gdb_byte> instead of char * and malloc for buf.
707         Remove xfree.
708
709 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
710
711         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
712         symtab_start instead of always using language_unknown.
713
714 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
715
716         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
717         READ_P parameter, catch and ignore register access errors from
718         either the old or new MISA location.
719         (riscv_has_feature): Update call to riscv_read_misa_reg.
720
721 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
722
723         * python/py-function.c (convert_values_to_python): Return
724         gdbpy_ref<>.  Add header comment.
725         (fnpy_call): Adjust.
726
727 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
728
729         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
730         (cmdpy_completer_handle_brkchars): Adjust.
731         (cmdpy_completer): Adjust.
732
733 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
734
735         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
736         Pass correct regnum to raw_supply_zeroed.
737
738 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
739
740         * regcache.c (cooked_read_test): Add CSKY to the list of
741         architectures with a save_reggroup
742
743 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
744
745         PR gdb/23368
746         * infrun.c (follow_exec): In the follow_exec_mode_new case,
747         transfer terminal state from old new new inferior.
748         * terminal.h (swap_terminal_info): New function.
749         * inflow.c (swap_terminal_info): New function.
750
751 2018-10-23  Tom Tromey  <tom@tromey.com>
752
753         * record-btrace.c (get_thread_current_frame_id): Rename from
754         get_thread_current_frame.  Return a frame_id.
755         (record_btrace_start_replaying): Update.
756
757 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
758
759         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
760         for CSRs.
761
762 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
763
764         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
765         have_nonsteppable_watchpoint attribute to 1.
766
767 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
768
769         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
770         register names.
771         (struct register_alias): Rename to...
772         (struct riscv_register_alias): ...this, and update comment.
773         (riscv_register_aliases): Update type, and alias names.  Remove
774         CSR names from this list.
775         (riscv_register_name): Use riscv_gdb_reg_names for int and float
776         register names.  Add an extra assertion.
777         (riscv_is_regnum_a_named_csr): New function.
778         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
779
780 2018-10-22  Jim Wilson  <jimw@sifive.com>
781
782         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
783         FP reg smaller than FP reg size, and fill with -1 instead of 0.
784
785         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
786         (riscv_register_type): Use them.
787         (riscv_print_one_register_info): Handle union of floats same as float.
788         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
789         riscv_fpreg_q_type fields.
790
791 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
792
793         * gdbarch.sh (gdbarch_num_cooked_regs): New.
794         * gdbarch.h: Re-generate.
795         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
796         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
797         * eval.c (evaluate_subexp_standard): Likewise.
798         * findvar.c (value_of_register): Likewise.
799         (value_of_register_lazy): Likewise.
800         (address_from_register): Likewise.
801         * frame.c (get_frame_register_bytes): Likewise.
802         * gdbarch-selftests.c (register_to_value_test): Likewise.
803         * h8300-tdep.c (h8300_register_type): Likewise.
804         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
805         (i386_svr4_reg_to_regnum): Likewise.
806         * infcmd.c (default_print_registers_info): Likewise.
807         (registers_info): Likewise.
808         (print_vector_info): Likewise.
809         (default_print_float_info): Likewise.
810         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
811         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
812         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
813         (mi_cmd_data_list_changed_registers): Likewise.
814         (mi_cmd_data_list_register_values): Likewise.
815         (mi_cmd_data_write_register_values): Likewise.
816         (mi_cmd_trace_frame_collected): Likewise.
817         * mips-tdep.c (print_gp_register_row): Likewise.
818         (mips_print_registers_info): Likewise.
819         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
820         * regcache.c (init_regcache_descr): Likewise.
821         (register_size): Likewise.
822         (register_dump::dump): Likewise.
823         (cooked_read_test): Likewise.
824         (cooked_write_test): Likewise.
825         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
826         (rs6000_gdbarch_init): Likewise.
827         * stabsread.c (stab_reg_to_regnum): Likewise.
828         * stack.c (info_frame_command): Likewise.
829         * target-descriptions.c (tdesc_register_name): Likewise.
830         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
831         * tui/tui-regs.c (tui_show_register_group): Likewise.
832         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
833         (user_reg_map_regnum_to_name): Likewise.
834         (value_of_user_reg): Likewise.
835         (maintenance_print_user_registers): Likewise.
836         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
837         (xtensa_register_name): Likewise.
838         (xtensa_register_type): Likewise.
839         (xtensa_reg_to_regnum): Likewise.
840         (xtensa_pseudo_register_read): Likewise.
841         (xtensa_pseudo_register_write): Likewise.
842
843 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
844
845         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
846         correctly-sized buffer with raw_read.
847         (amd64_pseudo_register_write): Use correctly-sized buffer for
848         raw_read/raw_write.
849
850 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
851
852         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
853         in add_prefix_cmd of set print type.
854
855 2018-10-19  Tom Tromey  <tom@tromey.com>
856
857         PR tui/18388:
858         * NEWS: Mention tabset deprecation.
859         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
860         (update_tab_width): New function.
861         (tui_set_tab_width, tui_show_tab_width): New functions.
862         (tui_set_tab_width_command): Use update_tab_width.
863         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
864         Add new "set tui tab-width" command.
865         * tui/tui-source.c (tui_set_source_content): Update.
866         * tui/tui-disasm.c (tui_set_disassem_content): Update.
867         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
868         Don't declare.
869         (tui_tab_width): Declare.
870         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
871         (tui_set_default_tab_len): Remove.
872
873 2018-10-19  Tom Tromey  <tom@tromey.com>
874
875         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
876         (key_is_backspace, tui_getc): Don't declare.
877         * tui/tui-io.c (key_is_start_sequence): Now static.
878         (key_is_end_sequence, key_is_backspace): Remove.
879         (tui_getc): Now static.
880
881 2018-10-19  Tom Tromey  <tom@tromey.com>
882
883         * symfile.c (reread_symbols): Clear "static_links".
884
885 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
886
887         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
888         define.
889         (aarch64_linux_sigframe_init): Extra boundary checks.
890
891 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
892
893         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
894         the possibly non-existent tdesc type 'vec128', but the type of raw
895         register v16 instead.
896
897 2018-10-19  Gary Benson <gbenson@redhat.com>
898
899         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
900
901 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
902
903         PR cli/23785
904         * cli/cli-dump.c (restore_binary_file): Check if "file" is
905         NULL.
906
907 2018-10-17  Paul Koning  <paul_koning@dell.com>
908
909         * charset.c (convert_between_encodings): Fix unsigned overflow.
910
911 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
912
913         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
914         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
915         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
916         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
917         New functions.
918         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
919         and fbsd_info_proc_mappings_header.
920         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
921         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
922         New.
923
924 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
925
926         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
927         Solaris Maintainer.
928
929 2018-10-15  Tom Tromey  <tom@tromey.com>
930
931         * tui/tui.c (strcat_to_buf): Remove casts.
932         * tui/tui-winsource.c (tui_show_source_line)
933         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
934         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
935         * tui/tui-windata.c (tui_first_data_item_displayed)
936         (tui_delete_data_content_windows, tui_erase_data_content)
937         (tui_display_all_data, tui_display_data_from)
938         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
939         * tui/tui-win.c (tui_set_win_height)
940         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
941         casts.
942         * tui/tui-win.c (tui_resize_all): Remove casts.
943         (tui_scroll_backward_command, tui_set_focus)
944         (tui_set_tab_width_command): Likewise.
945         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
946         * tui/tui-regs.c (tui_show_register_group): Remove cast.
947         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
948         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
949         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
950         Remove casts.
951
952 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
953
954         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
955         AArch64/ARM maintainer.
956
957 2018-10-11  Gary Benson <gbenson@redhat.com>
958
959         * interps.h (interp::m_name): Make private and mutable.
960         * interps.c (interp::~interp): Free m_name.
961
962 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
963             Simon Marchi <simark@simark.ca>
964
965         * README (`configure' options): Add documentation for new
966         "--enable-unit-tests" option.
967         * acinclude.m4: Include "selftest.m4".
968         * configure: Regenerate.
969         * configure.ac: Use "GDB_AC_SELFTEST".
970         * maint.c (maintenance_selftest): Update message informing
971         that selftests have been disabled.
972         (maintenance_info_selftests): Likewise.
973         * selftest.m4: New file.
974
975 2018-10-10  Gary Benson <gbenson@redhat.com>
976
977         * remote.c (remote_target::remote_send_printf): Add
978         missing va_end found by Coverity.
979
980 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
981
982         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
983
984 2018-10-09  Tom Tromey  <tom@tromey.com>
985
986         * configure: Rebuild.
987         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
988         * NEWS: Update --enable-ubsan documentation.
989
990 2018-10-09  Gary Benson <gbenson@redhat.com>
991
992         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
993         found by Coverity.
994
995 2018-10-08  Tom Tromey  <tom@tromey.com>
996
997         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
998         variable.
999         (riscv_fbsd_init_abi): Likewise.
1000
1001 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1002         * valops.c (value_struct_elt_for_reference): Rename local variable
1003         to work around the shadowing a previous local warning.
1004
1005 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1006
1007         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1008         * NEWS: Mention new FreeBSD/riscv native configuration.
1009         * configure.host: Add riscv*-*-freebsd*.
1010         * configure.nat: Likewise.
1011         * riscv-fbsd-nat.c: New file.
1012
1013 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1014
1015         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1016         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1017         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1018         * NEWS: Mention new FreeBSD/riscv target.
1019         * configure.tgt: Add riscv*-*-freebsd*.
1020         * riscv-fbsd-tdep.c: New file.
1021         * riscv-fbsd-tdep.h: New file.
1022
1023 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1024
1025         * regcache.h (struct regcache_map_entry): Note that this type can
1026         be used with traditional frame caches.
1027         * trad-frame.c (trad_frame_set_reg_regmap): New.
1028         * trad-frame.h (trad_frame_set_reg_regmap): New.
1029
1030 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1031
1032         PR c++/16841
1033         * valops.c (get_virtual_base_offset): New function.
1034         (value_struct_elt_for_reference): Use it to get virtual base offset
1035         and add it in calculating class member address.
1036
1037 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1038
1039     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1040       (check_producer): Check if the producer is codewarrior.
1041       (producer_is_codewarrior): New function.
1042       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1043        produced by codewarrior.
1044       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1045
1046 2018-10-06  Tom Tromey  <tom@tromey.com>
1047
1048         PR python/19399:
1049         * python/py-inferior.c: Add "architecture" entry.
1050         (infpy_architecture): New function.
1051
1052 2018-10-06  Tom Tromey  <tom@tromey.com>
1053
1054         PR python/21765:
1055         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1056         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1057         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1058         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1059
1060 2018-10-06  Tom Tromey  <tom@tromey.com>
1061
1062         PR build/17077:
1063         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1064         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1065         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1066         #include.
1067
1068 2018-10-06  Tom Tromey  <tom@tromey.com>
1069
1070         * python/py-breakpoint.c (bppy_get_location): Handle a
1071         bp_breakpoint without a location.
1072
1073 2018-10-06  Tom Tromey  <tom@tromey.com>
1074
1075         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1076         (_RegEx): Reformat help text.
1077         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1078         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1079         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1080         text.
1081         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1082         (EnableXMethod, DisableXMethod): Remove help indentation.
1083         Capitalize meta-syntactic variables.
1084         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1085         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1086         Capitalize meta-syntactic variables.
1087         * python/lib/gdb/command/explore.py (ExploreCommand)
1088         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1089         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1090         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1091         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1092         Remove help indentation.
1093         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1094         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1095         (DisableFrameFilter, SetFrameFilterPriority)
1096         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1097
1098 2018-10-06  Tom Tromey  <tom@tromey.com>
1099
1100         PR tui/28819:
1101         * tui/tui-io.c (gdb_wgetch): New function.
1102         (tui_mld_getc, tui_getc): Use it.
1103
1104 2018-10-05  Tom Tromey  <tom@tromey.com>
1105
1106         * sol-thread.c (sol_thread_target::wait): Rename inner
1107         "save_ptid".
1108
1109 2018-10-04  Tom Tromey  <tom@tromey.com>
1110
1111         * configure: Rebuild.
1112         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1113
1114 2018-10-04  Tom Tromey  <tom@tromey.com>
1115
1116         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1117         declaration of "block".
1118
1119 2018-10-04  Tom Tromey  <tom@tromey.com>
1120
1121         * common/filestuff.c (fdwalk): Remove inner declaration of
1122         "result".
1123
1124 2018-10-04  Tom Tromey  <tom@tromey.com>
1125
1126         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1127         "structs_addr" and hoist declaration.
1128
1129 2018-10-04  Tom Tromey  <tom@tromey.com>
1130
1131         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1132         variable "size".
1133
1134 2018-10-04  Tom Tromey  <tom@tromey.com>
1135
1136         * mdebugread.c (parse_partial_symbols): Use std::string.
1137
1138 2018-10-04  Tom Tromey  <tom@tromey.com>
1139
1140         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1141         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1142         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1143         header.
1144         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1145         more inner scope.
1146         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1147         * varobj.c (varobj_update): Rename inner "newobj",
1148         "type_changed".
1149         * valprint.c (generic_emit_char): Rename inner "buf".
1150         * valops.c (find_overload_match): Rename inner "temp".
1151         (value_struct_elt_for_reference): Declare "v" in more inner
1152         scope.
1153         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1154         * unittests/array-view-selftests.c (run_tests): Rename inner
1155         "vec".
1156         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1157         header.
1158         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1159         "tsv" in more inner scope.
1160         (print_one_static_tracepoint_marker): Rename inner
1161         "tuple_emitter".
1162         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1163         (tic6x_push_dummy_call): Don't redeclare "addr".
1164         * target-float.c: Declare "dto" lower.
1165         * symtab.c (lookup_local_symbol): Rename inner "sym".
1166         (find_pc_sect_line): Rename inner "pc".
1167         * stack.c (print_frame): Don't redeclare "gdbarch".
1168         (return_command): Rename inner "gdbarch".
1169         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1170         "sp".
1171         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1172         header.
1173         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1174         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1175         scope.
1176         * remote.c (remote_target::update_thread_list): Don't redeclare
1177         "tp".
1178         (remote_target::process_initial_stop_replies): Rename inner
1179         "thread".
1180         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1181         (remote_target::wait_as): Don't redeclare "stop_reply".
1182         (remote_target::get_thread_local_address): Rename inner
1183         "result".
1184         (remote_target::get_tib_address): Likewise.
1185
1186         * regcache.c (cooked_read_test): Rename "regnum".
1187         * record-btrace.c (cmd_record_btrace_start): Rename inner
1188         "exception".
1189         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1190         loop header.
1191         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1192         header.
1193         (ppu2spu_sniffer): Rename inner "buf".
1194         * parse.c (operator_check_standard): Rename inner "type",
1195         "objfile".
1196         * p-valprint.c (pascal_val_print): Introduce new scope for
1197         "low_bound", "high_bound".
1198         * p-exp.y (yylex): Declare "i" in loop header.
1199         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1200         Lower declaration of "s".
1201         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1202         header.
1203         (nios2_push_dummy_call): Rename "len".
1204         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1205         "buf".
1206         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1207         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1208         (linux_xfer_osdata_modules): Likewise.
1209         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1210         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1211         (mips_o64_push_dummy_call): Likewise.
1212         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1213         "op".
1214         * mi/mi-main.c (list_available_thread_groups): Rename inner
1215         "tuple_emitter".
1216         (mi_cmd_data_read_memory): Rename inner "opts".
1217         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1218         "tuple_emitter".
1219         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1220         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1221         more inner scope.
1222         (parse_partial_symbols): Rename inner "pst", "p", "name"
1223         * main.c (captured_main_1): Rename inner "i"s.
1224         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1225         "oso2".
1226         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1227         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1228         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1229         (handle_signal_stop): Rename inner "gdbarch".
1230         (handle_command): Declare "signum" in loop header.
1231         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1232         "status".
1233         (examine_prologue): Rename inner "sol" and "sof".
1234         (ia64_extract_return_value): Rename inner "val".  Declare another
1235         "val" in a more inner scope.
1236         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1237         inner scope.
1238         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1239         "except".
1240         * findvar.c (default_read_var_value): Don't redeclare "addr".
1241         * f-exp.y (yylex): Declare "i" in loop header.
1242         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1243         Rename inner "type", "expect_type".
1244         (evaluate_subexp_for_sizeof): Rename inner "pc".
1245         * elfread.c (elf_symfile_read): Rename inner "abfd".
1246         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1247         "bytes_read".
1248         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1249         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1250         (dwarf_decode_line_header): Rename inner "lh".
1251         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1252         "offset".  Declare "i" in loop header.
1253         (disassemble_dwarf_expression): Rename inner "addr_size".
1254         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1255         inner "result".
1256         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1257         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1258         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1259         "inner_list_emitter".
1260         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1261         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1262         declaration in a block.
1263         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1264         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1265         "obstack_final_size".
1266         * cp-support.c (inspect_type): Declare "i" in loop header.
1267         * compile/compile.c (compile_instance::insert_symbol_error):
1268         Rename inner "e".
1269         * common/agent.c (agent_run_command): Remove inner "ret"
1270         declaration.
1271         * coffread.c (coff_symfile_read): Rename inner "name".
1272         (coff_symfile_read): Rename inner "abfd".
1273         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1274         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1275         "high".
1276         * c-exp.y (lex_one_token): Move "len" declaration lower.
1277         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1278         "gdbarch".
1279         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1280         "b".
1281         (watch_command_1): Declare "mark" later.
1282         (clear_command): Don't shadow "a" or "b".
1283         (delete_command): Rename inner "b".
1284         (delete_trace_command): Likewise.
1285         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1286         "op".
1287         (arm_gdbarch_init): Remove inner "e_flags".
1288         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1289         "offset" in inner blocks.
1290
1291 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1292
1293         * dwarf-index-write.c (file_write): Don't write if the vector is
1294         empty.
1295
1296 2018-10-05  Tom de Vries  <tdevries@suse.de>
1297
1298         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1299         PyArg_ParseTuple call.
1300
1301 2018-10-05  Tom de Vries  <tdevries@suse.de>
1302
1303         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1304         PyArg_ParseTuple call.
1305
1306 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1307
1308         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1309         to avoid exceeding 80 characters per line limit.
1310
1311 2018-10-04  Tom Tromey  <tom@tromey.com>
1312
1313         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1314         (reread_symbols): Update.
1315         * complaints.h (clear_complaints): Remove argument.
1316         * complaints.c (enum complaint_series): Remove.
1317         (series): Remove global.
1318         (complaint_internal): Update.
1319         (clear_complaints): Remove argument.
1320
1321 2018-10-04  Tom Tromey  <tom@tromey.com>
1322
1323         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1324         debugging symbols" message if there is a separate debug objfile.
1325
1326 2018-10-04  Tom Tromey  <tom@tromey.com>
1327
1328         PR cli/19551:
1329         * symfile.c (symbol_file_add_with_addrs): Update output.
1330         * psymtab.c (require_partial_symbols): Update output.
1331
1332 2018-10-04  Tom Tromey  <tom@tromey.com>
1333
1334         PR cli/22234:
1335         * complaints.c: Emit \n.
1336
1337 2018-10-04  Tom Tromey  <tom@tromey.com>
1338
1339         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1340         (separate_debug_file_exists, find_separate_debug_file)
1341         (add_symbol_file_command, reread_symbols, allocate_symtab)
1342         (allocate_compunit_symtab): Use filtered printing, not
1343         unfiltered.
1344         * psymtab.c (require_partial_symbols, dump_psymtab)
1345         (allocate_psymtab): Use filtered printing, not unfiltered.
1346
1347 2018-10-04  Tom Tromey  <tom@tromey.com>
1348
1349         * complaints.c (complaint_internal): Correctly check complaint
1350         count.
1351
1352 2018-10-04  Tom Tromey  <tom@tromey.com>
1353
1354         * complaints.h (struct complaints): Remove declaration.
1355         * complaints.c (clear_complaints): Remove an unused variable.
1356
1357 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1358
1359         * MAINTAINERS (Write After Approval): Add self.
1360
1361 2018-10-03  Tom Tromey  <tom@tromey.com>
1362
1363         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1364         "buffer_contents".
1365         * coffread.c (coff_symtab_read): Initialize "newobj".
1366
1367 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1368
1369         * dwarf2read.c (read_func_scope): Remove struct keyword in
1370         range-based for.
1371
1372 2018-10-03  Tom Tromey  <tom@tromey.com>
1373
1374         * README: Mention --enable-ubsan.
1375         * NEWS: Mention --enable-ubsan.
1376         * acinclude.m4: Include sanitize.m4.
1377         * configure: Rebuild.
1378         * configure.ac: Call AM_GDB_UBSAN.
1379         * sanitize.m4: New file.
1380
1381 2018-10-03  Tom Tromey  <tom@tromey.com>
1382
1383         * expression.h (enum exp_opcode): Use uint8_t as base type.
1384         * expprint.c (op_name): Handle invalid opcodes.
1385
1386 2018-10-03  Tom Tromey  <tom@tromey.com>
1387
1388         * parse.c (prefixify_expression): Add assert.
1389         (parse_exp_in_context_1): Throw exception if the expression is
1390         empty.
1391
1392 2018-10-03  Tom Tromey  <tom@tromey.com>
1393
1394         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1395
1396 2018-10-03  Tom Tromey  <tom@tromey.com>
1397
1398         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1399
1400 2018-10-03  Tom Tromey  <tom@tromey.com>
1401
1402         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1403         unsigned.
1404
1405 2018-10-03  Tom Tromey  <tom@tromey.com>
1406
1407         * findvar.c (extract_integer): Do work in an unsigned type.
1408
1409 2018-10-03  Tom Tromey  <tom@tromey.com>
1410
1411         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1412         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1413         base type.
1414         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1415         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1416         type.
1417         * c-lang.h (enum c_string_type_values): Use unsigned as base
1418         type.
1419         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1420
1421 2018-10-03  Tom Tromey  <tom@tromey.com>
1422
1423         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1424         <~dwarf2_frame_state_reg_info>: Update.
1425         <dwarf2_frame_state_reg_info>: Update.
1426         <alloc_regs>: Add assertion.  Update.
1427         <reg>: Now a std::vector.
1428         <num_regs>: Remove.
1429         <swap>: Update.
1430         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1431         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1432
1433 2018-10-03  Tom Tromey  <tom@tromey.com>
1434
1435         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1436
1437 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1438
1439         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1440
1441 2018-10-02  Tom Tromey  <tom@tromey.com>
1442
1443         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1444
1445 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1446
1447         * NEWS: Mention changed commands.
1448         * ser-uds.c: New file.
1449         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1450         * configure: Regenerate.
1451         * Makefile.in: Add new file.
1452         * serial.c (serial_open): Check if filename is a socket
1453           and lookup the appropriate interface accordingly.
1454
1455 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1456
1457         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1458         define.
1459         (AARCH64_EXTRA_MAGIC): Likewise.
1460         (AARCH64_FPSIMD_MAGIC): Likewise.
1461         (AARCH64_SVE_MAGIC): Likewise.
1462         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1463         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1464         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1465         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1466         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1467         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1468         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1469         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1470         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1471         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1472         (read_aarch64_ctx): Add function.
1473         (aarch64_linux_sigframe_init): Detect FP registers.
1474
1475 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1476
1477         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1478         (AARCH64_D0_REGNUM): Likewise.
1479         (AARCH64_S0_REGNUM): Likewise.
1480         (AARCH64_H0_REGNUM): Likewise.
1481         (AARCH64_B0_REGNUM): Likewise.
1482         (AARCH64_SVE_V0_REGNUM): Likewise.
1483         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1484         (AARCH64_D0_REGNUM): Likewise.
1485         (AARCH64_S0_REGNUM): Likewise.
1486         (AARCH64_H0_REGNUM): Likewise.
1487         (AARCH64_B0_REGNUM): Likewise.
1488         (AARCH64_SVE_V0_REGNUM): Likewise.
1489
1490 2018-10-01  Gary Benson <gbenson@redhat.com>
1491
1492         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1493         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1494         prfpregset_t instead of gdb_prfpregset_t.
1495         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1496         * configure, config.in: Rebuild.
1497
1498 2018-10-01  Gary Benson <gbenson@redhat.com>
1499
1500         * common/gdb_proc_service.h: New file, factored out from...
1501         * gdb_proc_service.h: Moved common code to the above file.
1502         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1503
1504 2018-10-01  Gary Benson <gbenson@redhat.com>
1505
1506         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1507         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1508
1509 2018-10-01  Gary Benson <gbenson@redhat.com>
1510
1511         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1512         (AC_CHECK_HEADERS): Check for linux/elf.h.
1513         * configure, config.in: Rebuild.
1514         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1515         doesn't define elf_fpregset_t.
1516
1517 2018-10-01  Gary Benson <gbenson@redhat.com>
1518
1519         * gdb_proc_service.h: Whitespace change.
1520
1521 2018-10-01  Tom Tromey  <tom@tromey.com>
1522
1523         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1524         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1525         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1526
1527 2018-10-01  Tom Tromey  <tom@tromey.com>
1528
1529         * README: Minor change.
1530
1531 2018-09-30  Pedro Alves  <palves@redhat.com>
1532
1533         * darwin-nat-info.c (darwin_debug_regions_recurse)
1534         (info_mach_exceptions_command): Remove unused local variables.
1535         * darwin-nat.c (darwin_decode_notify_message)
1536         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1537         (darwin_stop_inferior, darwin_setup_exceptions)
1538         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1539         (darwin_nat_target::attach, darwin_nat_target::detach)
1540         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1541         local variables.
1542         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1543         variables.
1544
1545 2018-09-29  Tom Tromey  <tom@tromey.com>
1546
1547         * README: Remove some leftover text.
1548
1549 2018-09-29  Tom Tromey  <tom@tromey.com>
1550
1551         * PROBLEMS: Rewrite.
1552         * README: Update.
1553
1554 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1555
1556         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1557         case with explicit breakpoint kind.
1558         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1559         'additional_info' and related logic.
1560         (riscv_debug_breakpoints): New variable.
1561         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1562         instruction to determine the breakpoint kind.
1563         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1564         flag.  Update description of 'set/show riscv
1565         use-compressed-breakpoints' flag.
1566
1567 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1568
1569         (NEWS): Mention changes to frame related commands.
1570         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1571         (add_prefix_cmd_suppress_notification): New function.
1572         (add_com_suppress_notification): Call
1573         add_cmd_suppress_notification.
1574         * command.h (add_cmd_suppress_notification): Declare.
1575         (add_prefix_cmd_suppress_notification): Declare.
1576         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1577         (parse_frame_specification): Moved from stack.c, with
1578         simplification to handle a single argument.
1579         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1580         switch to the selected frame.  Add a header comment.
1581         * stack.c: Remove 'safe-ctype.h' include.
1582         (find_frame_for_function): Add declaration.
1583         (find_frame_for_address): New function.
1584         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1585         (frame_selection_by_function_completer): New function.
1586         (info_frame_command): Rename to...
1587         (info_frame_command_core): ...this, and update parameter types.
1588         (select_frame_command): Rename to...
1589         (select_frame_command_core): ...this, and update parameter types.
1590         (frame_command): Rename to...
1591         (frame_command_core): ...this, and update parameter types.
1592         (class frame_command_helper): New class to wrap implementations of
1593         frame related sub-commands.
1594         (frame_apply_cmd_list): New static global.
1595         (frame_cmd_list): Make static.
1596         (select_frame_cmd_list): New global for sub-commands.
1597         (info_frame_cmd_list): New global for sub-commands.
1598         (_initialize_stack): Register sub-commands for 'frame',
1599         'select-frame', and 'info frame'.  Update 'frame apply' commands
1600         to use frame_apply_cmd_list.  Move function local static
1601         frame_apply_list to file static frame_apply_cmd_list for
1602         consistency.
1603         * stack.h (select_frame_command): Delete declarationn.
1604         (select_frame_for_mi): Declare new function.
1605
1606 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1607
1608         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1609         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1610         and NOP.
1611
1612 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1613
1614         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1615
1616 2018-09-26  Tom Tromey  <tom@tromey.com>
1617
1618         * valops.c (auto_abandon): Remove dead code.
1619
1620 2018-09-26  Tom Tromey  <tom@tromey.com>
1621
1622         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1623
1624 2018-09-24  Tom Tromey  <tom@tromey.com>
1625
1626         * common/pathstuff.c (get_standard_cache_dir): Make
1627         "xdg_cache_home" and "home" const.
1628         * top.c (init_history): Make "tmpenv" const.
1629         * main.c (get_init_files): Make "homedir" const.
1630
1631 2018-09-23  Tom Tromey  <tom@tromey.com>
1632
1633         PR python/18852:
1634         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1635
1636 2018-09-23  Tom Tromey  <tom@tromey.com>
1637
1638         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1639         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1640         * python/python-internal.h (gdbpy_handle_exception): Declare.
1641         * python/py-utils.c (gdbpy_handle_exception): New function.
1642
1643 2018-09-23  Tom Tromey  <tom@tromey.com>
1644
1645         PR python/17284:
1646         * python/py-type.c (typy_template_argument): Check for negative
1647         argument number.
1648
1649 2018-09-23  Tom Tromey  <tom@tromey.com>
1650
1651         PR python/14062:
1652         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1653
1654 2018-09-23  Tom Tromey  <tom@tromey.com>
1655
1656         PR python/18170:
1657         * python/py-value.c (valpy_int): Allow conversion from pointer
1658         type.
1659
1660 2018-09-23  Tom Tromey  <tom@tromey.com>
1661
1662         PR python/20126:
1663         * python/py-value.c (valpy_int): Respect type sign.
1664
1665 2018-09-23  Tom Tromey  <tom@tromey.com>
1666
1667         PR python/18352;
1668         * python/py-value.c (valpy_float): Allow conversions from int or
1669         char.
1670         (valpy_int, valpy_long): Allow conversions from float.
1671
1672 2018-09-23  Tom Tromey  <tom@tromey.com>
1673
1674         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1675         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1676
1677 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1678
1679         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1680         __sighndlr.
1681         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1682
1683 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1684
1685         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1686         target_terminal::ours().
1687
1688 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1689
1690         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1691         of vl to ULONGEST.
1692
1693 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1694
1695         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1696         redundant condition.
1697
1698 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1699
1700         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1701
1702         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1703         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1704         * sol-thread.c (ps_pdmodel): Don't guard definition.
1705
1706         * procfs.c: Fix formatting.
1707
1708         * procfs.c (sysset_t_alloc): Remove.
1709         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1710         (procfs_debug_inferior): Likewise.
1711         (procfs_set_exec_trap): Likewise.
1712         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1713         (proc_set_traced_sysexit): Likewise.
1714
1715         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1716         (dead_procinfo): Likewise.
1717         (proc_warn): Likewise.
1718         (proc_error): Likewise.
1719         (proc_get_LDT_entry): Likewise.
1720         (do_attach): Likewise.
1721         (procfs_target::pid_to_str): Likewise.
1722         (iterate_over_mappings): Likewise.
1723
1724         * procfs.c (create_procinfo): Fix ARI warning.
1725         (proc_get_status): Likewise.
1726         (proc_stop_process): Likewise.
1727         (proc_run_process): Likewise.
1728         (proc_kill): Likewise.
1729         (proc_get_LDT_entry): Likewise.
1730         (procfs_find_LDT_entry): Likewise.
1731         (proc_update_threads): Likewise.
1732         (proc_iterate_over_threads): Likewise.
1733         (do_attach): Likewise.
1734         (procfs_xfer_memory): Likewise.
1735         (invalidate_cache): Likewise.
1736         (procfs_target::resume): Likewise.
1737         (procfs_init_inferior): Likewise.
1738         (procfs_set_exec_trap): Likewise.
1739         (procfs_target::thread_alive): Likewise.
1740         (procfs_target::pid_to_exec_file): Likewise.
1741         (iterate_over_mappings): Likewise.
1742         (procfs_target::make_corefile_notes): Likewise.
1743         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1744
1745         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1746         (procfs_find_LDT_entry): Likewise.
1747         * sol-thread.c (ps_lgetLDT): Likewise.
1748
1749 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1750
1751         PR tdep/17903
1752         * procfs.c (procfs_target): Declare pid_to_exec_file.
1753         (procfs_target::pid_to_exec_file): New.
1754
1755 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1756
1757         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1758         renaming.
1759         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1760         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1761
1762 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1763
1764         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1765         (supply_fpregset, fill_fpregset): Move ...
1766         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1767         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1768         Remove references to ioctl-based procfs.
1769         Include <sys/reg.h>.
1770         Remove PR_MODEL_NATIVE guards.
1771         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1772         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1773
1774 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1775
1776         PR gdb/20981:
1777         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1778         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1779         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1780
1781 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1782
1783         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1784         (fbsd_print_sockaddr_in6): Likewise.
1785
1786 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1787             Chris January  <chris.january@arm.com>
1788
1789         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1790         (evaluate_subexp_standard): Return a dummy type when
1791         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1792         OP_F77_UNDETERMINED_ARGLIST case.
1793         * expression.h (enum noside): Update comment.
1794
1795 2018-09-19  George Vasick <george.vasick@oracle.com>
1796
1797         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1798
1799 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1800             April Chin <april.chin@oracle.com>
1801             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1802
1803         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1804         uint_t lwpid_t.
1805         (create_procinfo): Print pids in /proc without leading zeros.
1806
1807 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1808
1809         * nios2-tdep.c (nios2_gcc_target_options): New.
1810         (nios2_gdb_arch_init): Install new hook.
1811
1812 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1813
1814         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1815         New file.
1816         * update-gnulib.sh: Apply patch.
1817         * configure: Re-generate.
1818
1819 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1820
1821         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1822         description.  Make "info proc" command descriptions more
1823         consistent.
1824
1825 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1826
1827         * NEWS: Mention 'info proc files' command.
1828
1829 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1830
1831         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1832         descriptors for IP_FILES and IP_ALL.
1833
1834 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1835
1836         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1837         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1838         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1839         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1840         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1841         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1842         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1843         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1844         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1845         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1846         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1847         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1848         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1849         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1850         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1851         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1852         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1853         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1854         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1855         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1856         (struct fbsd_sockaddr_un): New types.
1857         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1858         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1859         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1860         (fbsd_core_info_proc_files): New functions.
1861         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1862         IP_ALL.
1863         * fbsd-tdep.h (fbsd_info_proc_files_header)
1864         (fbsd_info_proc_files_entry): New.
1865
1866 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1867
1868         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1869         * infcmd.c (info_proc_cmd_files): New function.
1870         (_initialize_infcmd): Register 'info proc files' command.
1871
1872 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1873
1874         * gnulib/aclocal-m4-deps.mk: Re-generate.
1875         * gnulib/aclocal.m4: Re-generate.
1876         * gnulib/config.in: Re-generate.
1877         * gnulib/configure: Re-generate.
1878         * gnulib/import/Makefile.am: Re-generate.
1879         * gnulib/import/Makefile.in: Re-generate.
1880         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1881         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1882         * gnulib/import/arpa_inet.in.h: New file.
1883         * gnulib/import/inet_ntop.c: New file.
1884         * gnulib/import/m4/arpa_inet_h.m4: New file.
1885         * gnulib/import/m4/inet_ntop.m4: New file.
1886         * gnulib/import/m4/netinet_in_h.m4: New file.
1887         * gnulib/import/m4/socklen.m4: New file.
1888         * gnulib/import/m4/sockpfaf.m4: New file.
1889         * gnulib/import/m4/stdalign.m4: New file.
1890         * gnulib/import/m4/sys_uio_h.m4: New file.
1891         * gnulib/import/netinet_in.in.h: New file.
1892         * gnulib/import/stdalign.in.h: New file.
1893         * gnulib/import/sys_socket.c: New file.
1894         * gnulib/import/sys_socket.in.h: New file.
1895         * gnulib/import/sys_uio.in.h: New file.
1896         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1897         module.
1898
1899 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1900
1901         * gnulib/aclocal-m4-deps.mk: New file.
1902         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1903         deterministically.
1904
1905 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1906
1907         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1908         KVE_PATH.
1909
1910 2018-09-18  Tom Tromey  <tom@tromey.com>
1911
1912         * compile/compile-object-load.c (struct
1913         link_hash_table_cleanup_data): Add constructor and destructor.
1914         Use DISABLE_COPY_AND_ASSIGN.
1915         (~link_hash_table_cleanup_data): Rename from
1916         link_hash_table_free.  Now a destructor.
1917         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1918
1919 2018-09-18  Tom Tromey  <tom@tromey.com>
1920
1921         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1922         * compile/compile-object-load.c (struct munmap_list): Move to
1923         header file.
1924         (munmap_list::add): Rename from munmap_list_add; rewrite.
1925         (munmap_list::~munmap_list): Rename from munmap_list_free.
1926         (munmap_listp_free_cleanup): Remove.
1927         (compile_object_load): Update.
1928         * compile/compile-object-load.h (struct munmap_list): Move from
1929         compile-object-load.c.  Rewrite.
1930
1931 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1932
1933         * aarch64-tdep.c (pass_in_v): Use register size.
1934         (aarch64_extract_return_value): Likewise.
1935         (aarch64_store_return_value): Likewise.
1936
1937 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1938
1939         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1940         rlim_t.
1941
1942 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1943
1944         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1945         Fix short help line.
1946
1947 2018-09-17  Tom Tromey  <tom@tromey.com>
1948
1949         PR python/20445:
1950         * configure: Rebuild.
1951         * configure.ac: Conditionally use -DNDEBUG for Python.
1952
1953 2018-09-17  Tom Tromey  <tom@tromey.com>
1954
1955         * configure: Rebuild.
1956         * configure.ac: Use gmp as a library dependency when checking for
1957         mpfr.
1958
1959 2018-09-17  Pedro Alves  <palves@redhat.com>
1960
1961         * python/py-inferior.c (find_inferior_object): Delete.
1962
1963 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1964
1965         * compile/compile-cplus-types.c
1966         (compile_cplus_instance::enter_scope): Don't use new_scope after
1967         std::move.
1968
1969 2018-09-17  Tom Tromey  <tom@tromey.com>
1970
1971         * common/pathstuff.c (get_standard_cache_dir): Use
1972         ~/Library/Caches on macOS.
1973         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1974
1975 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1976
1977         PR python/23669
1978         * breakpoint.c (commands_cmd_element): New.
1979         (_initialize_breakpoint): Assign commands_cmd_element.
1980         * breakpoint.h (commands_cmd_element): New.
1981         * cli/cli-script.c (while_cmd_element, if_command,
1982         define_cmd_element): New.
1983         (command_name_equals): Remove.
1984         (process_next_line): Compare commands by pointer, not by name.
1985         (_initialize_cli_script): Assign the various cmd_list_element
1986         variables.
1987         * compile/compile.c (compile_cmd_element): New.
1988         (_initialize_compile): Assign compile_cmd_element.
1989         * compile/compile.h (compile_cmd_element): New.
1990         * guile/guile.c (guile_cmd_element): New.
1991         (install_gdb_commands): Assign guile_cmd_element.
1992         * guile/guile.h (guile_cmd_element): New.
1993         * python/python.c (python_cmd_element): New.
1994         (_initialize_python): Assign python_cmd_element.
1995         * python/python.h (python_cmd_element): New.
1996         * tracepoint.c (while_stepping_cmd_element): New.
1997         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1998         * tracepoint.h (while_stepping_cmd_element): New.
1999
2000 2018-09-17  Tom Tromey  <tom@tromey.com>
2001
2002         * infrun.c (save_infcall_suspend_state): Return
2003         infcall_suspend_state_up.
2004         (save_infcall_control_state): Return infcall_control_state_up.
2005         * inferior.h (save_infcall_suspend_state)
2006         (save_infcall_control_state): Declare later.  Return unique
2007         pointers.
2008
2009 2018-09-17  Tom Tromey  <tom@tromey.com>
2010
2011         * infrun.c (struct stop_context): Declare constructor,
2012         destructor, "changed" method.
2013         (stop_context::stop_context): Rename from save_stop_context.
2014         (stop_context::~stop_context): Rename from
2015         release_stop_context_cleanup.
2016         (normal_stop): Update.
2017         (stop_context::changed): Rename from stop_context_changed.  Return
2018         bool.
2019
2020 2018-09-17  Tom Tromey  <tom@tromey.com>
2021
2022         * inferior.h (struct infcall_suspend_state_deleter): New.
2023         (infcall_suspend_state_up): New typedef.
2024         (struct infcall_control_state_deleter): New.
2025         (infcall_control_state_up): New typedef.
2026         (make_cleanup_restore_infcall_suspend_state)
2027         (make_cleanup_restore_infcall_control_state): Don't declare.
2028         * infcall.c (call_function_by_hand_dummy): Update.
2029         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2030         (make_cleanup_restore_infcall_suspend_state): Remove.
2031         (do_restore_infcall_control_state_cleanup)
2032         (make_cleanup_restore_infcall_control_state): Remove.
2033
2034 2018-09-17  Tom Tromey  <tom@tromey.com>
2035
2036         * gdbthread.h (struct thread_control_state): Add initializer.
2037         (class thread_info) <control>: Remove initializer.
2038         * inferior.h (struct inferior_control_state): Add initializer.
2039         (class inferior) <control>: Remove initializer.
2040         (exit_inferior_1): Update.
2041         * infrun.c (struct infcall_control_state): Add constructors.
2042         (save_infcall_control_state): Use new.
2043         (restore_infcall_control_state, discard_infcall_control_state):
2044         Use delete.
2045
2046 2018-09-17  Tom Tromey  <tom@tromey.com>
2047
2048         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2049         unique_ptr.
2050         <siginfo_data>: Now a unique_xmalloc_ptr.
2051         (save_infcall_suspend_state, restore_infcall_suspend_state)
2052         (discard_infcall_suspend_state)
2053         (get_infcall_suspend_state_regcache): Update.
2054
2055 2018-09-17  Tom Tromey  <tom@tromey.com>
2056
2057         * gdbthread.h (struct thread_suspend_state): Add initializers.
2058         (class thread_info) <suspend>: Remove initializer.
2059         * infrun.c (struct infcall_suspend_state): Add initializers.
2060         (save_infcall_suspend_state): Use new.
2061         (discard_infcall_suspend_state): Use delete.
2062
2063 2018-09-16  Tom Tromey  <tom@tromey.com>
2064
2065         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2066         Remove.
2067         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2068         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2069         (py_varobj_iter_new): Likewise.
2070         (py_varobj_get_iterator): Use gdbpy_ref.
2071
2072 2018-09-16  Tom Tromey  <tom@tromey.com>
2073
2074         * python/py-threadevent.c (py_get_event_thread): Simplify.
2075         * python/py-inferior.c (infpy_thread_from_thread_handle):
2076         Return immediately after calling thread_to_thread_object.  Use
2077         Py_RETURN_NONE.
2078         (thread_to_thread_object): Set the exception on a NULL return.
2079
2080 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2081
2082         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2083
2084 2018-09-16  Tom Tromey  <tom@tromey.com>
2085
2086         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2087         Remove.
2088
2089 2018-09-16  Tom Tromey  <tom@tromey.com>
2090
2091         * python/python-internal.h (thread_to_thread_object): Change
2092         return type.
2093         * python/py-inferior.c (thread_to_thread_object): Return a new
2094         reference.
2095         (infpy_thread_from_thread_handle): Update.
2096         * python/py-infthread.c (gdbpy_selected_thread): Update.
2097         * python/py-stopevent.c (create_stop_event_object): Update.
2098         * python/py-threadevent.c (py_get_event_thread): Return a new
2099         reference.
2100         (py_get_event_thread): Update.
2101         * python/py-event.h (py_get_event_thread): Change return type.
2102         * python/py-continueevent.c (create_continue_event_object):
2103         Update.
2104
2105 2018-09-16  Tom Tromey  <tom@tromey.com>
2106
2107         * python/py-progspace.c (pspy_get_objfiles): Update.
2108         * python/python-internal.h (objfile_to_objfile_object): Change
2109         return type.
2110         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2111         Update.
2112         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2113         Update.
2114         * python/python.c (gdbpy_get_current_objfile): Update.
2115         (gdbpy_objfiles): Update.
2116         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2117         Update.
2118         (objfile_to_objfile_object): Return a new reference.
2119         * python/py-symtab.c (stpy_get_objfile): Update.
2120         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2121         Update.
2122
2123 2018-09-16  Tom Tromey  <tom@tromey.com>
2124
2125         * python/py-inferior.c (infpy_get_progspace): Update.
2126         * python/python-internal.h (pspace_to_pspace_object): Change
2127         return type.
2128         * python/py-newobjfileevent.c
2129         (create_clear_objfiles_event_object): Update.
2130         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2131         Update.
2132         * python/python.c (gdbpy_get_current_progspace): Update.
2133         (gdbpy_progspaces): Update.
2134         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2135         reference.
2136         * python/py-objfile.c (objfpy_get_progspace): Update.
2137         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2138         Update.
2139
2140 2018-09-16  Tom Tromey  <tom@tromey.com>
2141
2142         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2143         (solib_name, block_for_pc, find_pc_line): New functions.
2144         (execute_unwinders): Update.
2145         * python/py-block.c (gdbpy_block_for_pc): Remove.
2146         * python/py-inferior.c (infpy_get_progspace): New function.
2147         (inferior_object_getset) <progspace>: Add.
2148         * python/py-progspace.c (pspy_objfiles): Rewrite.
2149         (pspy_solib_name, pspy_block_for_pc)
2150         (pspy_find_pc_line, pspy_is_valid): New functions.
2151         (progspace_object_methods): Add entries for solib_name,
2152         block_for_pc, find_pc_line, is_valid.
2153         * python/python-internal.h (gdbpy_block_for_pc)
2154         (build_objfiles_list): Don't declare.
2155         * python/python.c: Don't include solib.h.
2156         (gdbpy_solib_name, gdbpy_find_pc_line)
2157         (gdbpy_get_current_progspace, build_objfiles_list)
2158         (gdbpy_objfiles): Remove.
2159         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2160         solib_name, find_pc_line>: Remove entries.
2161
2162 2018-09-16  Tom Tromey  <tom@tromey.com>
2163
2164         * top.c (new_ui_command): Use GNU style for metasyntactic
2165         variables.
2166         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2167         variables.
2168         * maint.c (maintenance_translate_address): Remove "<>" around
2169         text.
2170         * interps.c (interpreter_exec_cmd): Use GNU style for
2171         metasyntactic variables.
2172         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2173         metasyntactic variables.
2174         * tracepoint.c (tfind_range_command): Use GNU style for
2175         metasyntactic variables.
2176         (tfind_outside_command): Likewise.
2177         (_initialize_tracepoint): Likewise.
2178         * remote.c (extended_remote_target::create_inferior): Use GNU
2179         style for metasyntactic variables.
2180         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2181         metasyntactic variables.
2182         (adi_assign_command): Likewise.
2183
2184 2018-09-16  Tom Tromey  <tom@tromey.com>
2185
2186         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2187         metasyntactic variables.  Print message if no disassembler options
2188         are available.
2189
2190 2018-09-15  Tom Tromey  <tom@tromey.com>
2191
2192         * infcmd.c (get_inferior_args): Return const char *.
2193         * inferior.h (get_inferior_args): Return type now const.
2194         * linux-tdep.c (linux_fill_prpsinfo): Update.
2195         * procfs.c (procfs_target::make_corefile_notes): Update.
2196
2197 2018-09-07  Tom Tromey  <tom@tromey.com>
2198
2199         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2200         inside the TRY.
2201
2202 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2203
2204         * nios2-tdep.c (nios2_type_align): New.
2205         (nios2_gdb_arch_init): Install type_align hook.
2206
2207 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2208
2209         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2210         type that is neither object file owned, nor gdbarch owned.
2211         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2212         gdbarch is non-NULL.
2213         (alloc_type_instance): Allocate non-objfile owned types on the
2214         gdbarch obstack.
2215         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2216         using TYPE_ALLOC to ensure memory is allocated on the correct
2217         obstack.
2218         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2219         obstack, or the gdbarch obstack.
2220         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2221
2222 2018-09-14  Tom Tromey  <tom@tromey.com>
2223
2224         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2225         block.
2226
2227 2018-09-14  Tom Tromey  <tom@tromey.com>
2228
2229         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2230
2231 2018-09-13  Tom Tromey  <tom@tromey.com>
2232
2233         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2234         static.
2235
2236 2018-09-13  Tom Tromey  <tom@tromey.com>
2237
2238         * exec.c (try_open_exec_file): Use std::string.
2239
2240 2018-09-13  Tom Tromey  <tom@tromey.com>
2241
2242         * utils.h (gdb_bfd_errmsg): Return std::string.
2243         * exec.c (exec_file_attach): Update.
2244         * compile/compile-object-load.c (compile_object_load): Update.
2245         * utils.c (gdb_bfd_errmsg): Return std::string.
2246
2247 2018-09-13  Tom Tromey  <tom@tromey.com>
2248
2249         * procfs.c (struct procinfo_deleter): New.
2250         (procinfo_up): New typedef.
2251         (do_destroy_procinfo_cleanup): Remove.
2252         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2253
2254 2018-09-13  Tom Tromey  <tom@tromey.com>
2255
2256         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2257
2258 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2259 2018-09-13  Tom Tromey  <tom@tromey.com>
2260
2261         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2262         (pspy_get_objfiles): New function.
2263         (progspace_object_methods): New.
2264         (pspace_object_type): Add tp_methods callback.
2265         * python/python-internal.h (build_objfiles_list): New
2266         declaration.
2267         * python/python.c (build_objfiles_list): New function.
2268         (gdbpy_objfiles): Implement using build_objfiles_list.
2269         * NEWS: Mention the Progspace.objfiles method.
2270
2271 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2272
2273         * python/py-inferior.c (infpy_get_progspace): New function.
2274         (inferior_object_getset): Add progspace property.
2275         * NEWS: Mention the new property.
2276
2277 2018-09-13  Tom Tromey  <tom@tromey.com>
2278
2279         PR rust/23650:
2280         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2281
2282 2018-09-13  Tom Tromey  <tom@tromey.com>
2283
2284         PR rust/23626:
2285         * rust-lang.c (rust_enum_variant): Now static.
2286         (rust_empty_enum_p): New function.
2287         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2288         Handle empty enum.
2289
2290 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2291
2292         * python/py-inferior.c (infpy_repr): New.
2293         (inferior_object_type): Register infpy_repr.
2294         * python/py-objfile.c (objfpy_repr): New.
2295         (objfile_object_type): Register objfpy_repr.
2296
2297 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2298
2299         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2300
2301 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2302
2303         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2304         typo.
2305
2306 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2307
2308         * common/common-utils.c: Don't include '<sys/stat.h>'.
2309         (is_regular_file): Move to...
2310         * common/filestuff.c (is_regular_file): ... here.
2311         * common/common-utils.h (is_regular_file): Move to...
2312         * common/filestuff.h (is_regular_file): ... here.
2313
2314 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2315
2316         * skip.c (debug_skip): New variable.
2317         (skiplist_entry::do_skip_file_p): Add debug output.
2318         (skiplist_entry::do_skip_gfile_p): Likewise.
2319         (skiplist_entry::skip_function_p): Likewise.
2320         (_initialize_step_skip): Create debug command.
2321         * NEWS: Mention set/show debug skip.
2322
2323 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2324
2325         * darwin-nat.c (should_disable_startup_with_shell):
2326         New function.
2327         (darwin_nat_target::create_inferior): Add call.
2328
2329 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2330
2331         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2332         inf_port, msg_state>: Initialize.
2333         (struct darwin_thread_info) <signaled, single_step>: Change
2334         type and initialize.
2335         (struct darwin_thread_info) <event>: Initialize.
2336
2337 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2338
2339         PR gdb/23555
2340         PR gdb/23558
2341         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2342         guesses.
2343
2344 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2345
2346         Revert:
2347         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2348
2349         PR gdb/23555
2350         PR gdb/23558
2351         * gnulib/aclocal.m4: Regenerate.
2352         * gnulib/config.in: Regenerate.
2353         * gnulib/configure: Regenerate.
2354         * gnulib/import/Makefile.am: Update.
2355         * gnulib/import/Makefile.in: Update.
2356         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2357         * gnulib/import/_Noreturn.h: ... this.
2358         * gnulib/import/alloca.in.h: Update.
2359         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2360         * gnulib/import/arg-nonnull.h: ... this.
2361         * gnulib/import/assure.h: Update.
2362         * gnulib/import/at-func.c: Update.
2363         * gnulib/import/basename-lgpl.c: Update.
2364         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2365         * gnulib/import/c++defs.h: ... this.
2366         * gnulib/import/canonicalize-lgpl.c: Update.
2367         * gnulib/import/cdefs.h: Update.
2368         * gnulib/import/chdir-long.c: Update.
2369         * gnulib/import/chdir-long.h: Update.
2370         * gnulib/import/cloexec.c: Update.
2371         * gnulib/import/cloexec.h: Update.
2372         * gnulib/import/close.c: Update.
2373         * gnulib/import/closedir.c: Update.
2374         * gnulib/import/config.charset: Update.
2375         * gnulib/import/dirent-private.h: Update.
2376         * gnulib/import/dirent.in.h: Update.
2377         * gnulib/import/dirfd.c: Update.
2378         * gnulib/import/dirname-lgpl.c: Update.
2379         * gnulib/import/dirname.h: Update.
2380         * gnulib/import/dosname.h: Update.
2381         * gnulib/import/dup-safer-flag.c: Update.
2382         * gnulib/import/dup-safer.c: Update.
2383         * gnulib/import/dup.c: Update.
2384         * gnulib/import/dup2.c: Update.
2385         * gnulib/import/errno.in.h: Update.
2386         * gnulib/import/error.c: Update.
2387         * gnulib/import/error.h: Update.
2388         * gnulib/import/exitfail.c: Update.
2389         * gnulib/import/exitfail.h: Update.
2390         * gnulib/import/extra/update-copyright: Update.
2391         * gnulib/import/fchdir.c: Update.
2392         * gnulib/import/fcntl.c: Update.
2393         * gnulib/import/fcntl.in.h: Update.
2394         * gnulib/import/fd-hook.c: Update.
2395         * gnulib/import/fd-hook.h: Update.
2396         * gnulib/import/fd-safer-flag.c: Update.
2397         * gnulib/import/fd-safer.c: Update.
2398         * gnulib/import/fdopendir.c: Update.
2399         * gnulib/import/filename.h: Update.
2400         * gnulib/import/filenamecat-lgpl.c: Update.
2401         * gnulib/import/filenamecat.h: Update.
2402         * gnulib/import/flexmember.h: Update.
2403         * gnulib/import/float+.h: Update.
2404         * gnulib/import/float.c: Update.
2405         * gnulib/import/float.in.h: Update.
2406         * gnulib/import/fnmatch.c: Update.
2407         * gnulib/import/fnmatch.in.h: Update.
2408         * gnulib/import/fnmatch_loop.c: Update.
2409         * gnulib/import/fpucw.h: Update.
2410         * gnulib/import/frexp.c: Update.
2411         * gnulib/import/frexpl.c: Update.
2412         * gnulib/import/fstat.c: Update.
2413         * gnulib/import/fstatat.c: Update.
2414         * gnulib/import/getcwd-lgpl.c: Update.
2415         * gnulib/import/getcwd.c: Update.
2416         * gnulib/import/getdtablesize.c: Update.
2417         * gnulib/import/getlogin_r.c: Update.
2418         * gnulib/import/getprogname.c: Update.
2419         * gnulib/import/getprogname.h: Update.
2420         * gnulib/import/gettext.h: Update.
2421         * gnulib/import/gettimeofday.c: Update.
2422         * gnulib/import/glob-libc.h: Update.
2423         * gnulib/import/glob.c: Update.
2424         * gnulib/import/glob.in.h: Update.
2425         * gnulib/import/glob_internal.h: Update.
2426         * gnulib/import/glob_pattern_p.c: Update.
2427         * gnulib/import/globfree.c: Update.
2428         * gnulib/import/hard-locale.c: Update.
2429         * gnulib/import/hard-locale.h: Update.
2430         * gnulib/import/intprops.h: Update.
2431         * gnulib/import/inttypes.in.h: Update.
2432         * gnulib/import/isnan.c: Update.
2433         * gnulib/import/isnand-nolibm.h: Update.
2434         * gnulib/import/isnand.c: Update.
2435         * gnulib/import/isnanl-nolibm.h: Update.
2436         * gnulib/import/isnanl.c: Update.
2437         * gnulib/import/itold.c: Update.
2438         * gnulib/import/libc-config.h: Update.
2439         * gnulib/import/limits.in.h: Update.
2440         * gnulib/import/localcharset.c: Update.
2441         * gnulib/import/localcharset.h: Update.
2442         * gnulib/import/localtime-buffer.c: Update.
2443         * gnulib/import/localtime-buffer.h: Update.
2444         * gnulib/import/lstat.c: Update.
2445         * gnulib/import/m4/00gnulib.m4: Update.
2446         * gnulib/import/m4/__inline.m4: Update.
2447         * gnulib/import/m4/absolute-header.m4: Update.
2448         * gnulib/import/m4/alloca.m4: Update.
2449         * gnulib/import/m4/builtin-expect.m4: Update.
2450         * gnulib/import/m4/canonicalize.m4: Update.
2451         * gnulib/import/m4/chdir-long.m4: Update.
2452         * gnulib/import/m4/close.m4: Update.
2453         * gnulib/import/m4/closedir.m4: Update.
2454         * gnulib/import/m4/configmake.m4: Update.
2455         * gnulib/import/m4/d-ino.m4: Update.
2456         * gnulib/import/m4/d-type.m4: Update.
2457         * gnulib/import/m4/dirent_h.m4: Update.
2458         * gnulib/import/m4/dirfd.m4: Update.
2459         * gnulib/import/m4/dirname.m4: Update.
2460         * gnulib/import/m4/double-slash-root.m4: Update.
2461         * gnulib/import/m4/dup.m4: Update.
2462         * gnulib/import/m4/dup2.m4: Update.
2463         * gnulib/import/m4/eealloc.m4: Update.
2464         * gnulib/import/m4/environ.m4: Update.
2465         * gnulib/import/m4/errno_h.m4: Update.
2466         * gnulib/import/m4/error.m4: Update.
2467         * gnulib/import/m4/exponentd.m4: Update.
2468         * gnulib/import/m4/exponentl.m4: Update.
2469         * gnulib/import/m4/extensions.m4: Update.
2470         * gnulib/import/m4/extern-inline.m4: Update.
2471         * gnulib/import/m4/fchdir.m4: Update.
2472         * gnulib/import/m4/fcntl-o.m4: Update.
2473         * gnulib/import/m4/fcntl.m4: Update.
2474         * gnulib/import/m4/fcntl_h.m4: Update.
2475         * gnulib/import/m4/fdopendir.m4: Update.
2476         * gnulib/import/m4/filenamecat.m4: Update.
2477         * gnulib/import/m4/flexmember.m4: Update.
2478         * gnulib/import/m4/float_h.m4: Update.
2479         * gnulib/import/m4/fnmatch.m4: Update.
2480         * gnulib/import/m4/fnmatch_h.m4: Update.
2481         * gnulib/import/m4/fpieee.m4: Update.
2482         * gnulib/import/m4/frexp.m4: Update.
2483         * gnulib/import/m4/frexpl.m4: Update.
2484         * gnulib/import/m4/fstat.m4: Update.
2485         * gnulib/import/m4/fstatat.m4: Update.
2486         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2487         * gnulib/import/m4/getcwd-path-max.m4: Update.
2488         * gnulib/import/m4/getcwd.m4: Update.
2489         * gnulib/import/m4/getdtablesize.m4: Update.
2490         * gnulib/import/m4/getlogin.m4: Update.
2491         * gnulib/import/m4/getlogin_r.m4: Update.
2492         * gnulib/import/m4/getpagesize.m4: Update.
2493         * gnulib/import/m4/getprogname.m4: Update.
2494         * gnulib/import/m4/gettimeofday.m4: Update.
2495         * gnulib/import/m4/glibc21.m4: Update.
2496         * gnulib/import/m4/glob.m4: Update.
2497         * gnulib/import/m4/glob_h.m4: Update.
2498         * gnulib/import/m4/gnulib-cache.m4: Update.
2499         * gnulib/import/m4/gnulib-common.m4: Update.
2500         * gnulib/import/m4/gnulib-comp.m4: Update.
2501         * gnulib/import/m4/gnulib-tool.m4: Update.
2502         * gnulib/import/m4/hard-locale.m4: Update.
2503         * gnulib/import/m4/include_next.m4: Update.
2504         * gnulib/import/m4/inttypes-pri.m4: Update.
2505         * gnulib/import/m4/inttypes.m4: Update.
2506         * gnulib/import/m4/isnand.m4: Update.
2507         * gnulib/import/m4/isnanl.m4: Update.
2508         * gnulib/import/m4/largefile.m4: Update.
2509         * gnulib/import/m4/limits-h.m4: Update.
2510         * gnulib/import/m4/localcharset.m4: Update.
2511         * gnulib/import/m4/locale-fr.m4: Update.
2512         * gnulib/import/m4/locale-ja.m4: Update.
2513         * gnulib/import/m4/locale-zh.m4: Update.
2514         * gnulib/import/m4/localtime-buffer.m4: Update.
2515         * gnulib/import/m4/longlong.m4: Update.
2516         * gnulib/import/m4/lstat.m4: Update.
2517         * gnulib/import/m4/malloc.m4: Update.
2518         * gnulib/import/m4/malloca.m4: Update.
2519         * gnulib/import/m4/math_h.m4: Update.
2520         * gnulib/import/m4/mbrtowc.m4: Update.
2521         * gnulib/import/m4/mbsinit.m4: Update.
2522         * gnulib/import/m4/mbsrtowcs.m4: Update.
2523         * gnulib/import/m4/mbstate_t.m4: Update.
2524         * gnulib/import/m4/memchr.m4: Update.
2525         * gnulib/import/m4/memmem.m4: Update.
2526         * gnulib/import/m4/mempcpy.m4: Update.
2527         * gnulib/import/m4/memrchr.m4: Update.
2528         * gnulib/import/m4/mkdir.m4: Update.
2529         * gnulib/import/m4/mkstemp.m4: Update.
2530         * gnulib/import/m4/mmap-anon.m4: Update.
2531         * gnulib/import/m4/mode_t.m4: Update.
2532         * gnulib/import/m4/msvc-inval.m4: Update.
2533         * gnulib/import/m4/msvc-nothrow.m4: Update.
2534         * gnulib/import/m4/multiarch.m4: Update.
2535         * gnulib/import/m4/nocrash.m4: Update.
2536         * gnulib/import/m4/off_t.m4: Update.
2537         * gnulib/import/m4/onceonly.m4: Update.
2538         * gnulib/import/m4/open-cloexec.m4: Update.
2539         * gnulib/import/m4/open.m4: Update.
2540         * gnulib/import/m4/openat.m4: Update.
2541         * gnulib/import/m4/opendir.m4: Update.
2542         * gnulib/import/m4/pathmax.m4: Update.
2543         * gnulib/import/m4/rawmemchr.m4: Update.
2544         * gnulib/import/m4/readdir.m4: Update.
2545         * gnulib/import/m4/readlink.m4: Update.
2546         * gnulib/import/m4/realloc.m4: Update.
2547         * gnulib/import/m4/rename.m4: Update.
2548         * gnulib/import/m4/rewinddir.m4: Update.
2549         * gnulib/import/m4/rmdir.m4: Update.
2550         * gnulib/import/m4/save-cwd.m4: Update.
2551         * gnulib/import/m4/secure_getenv.m4: Update.
2552         * gnulib/import/m4/setenv.m4: Update.
2553         * gnulib/import/m4/signal_h.m4: Update.
2554         * gnulib/import/m4/ssize_t.m4: Update.
2555         * gnulib/import/m4/stat-time.m4: Update.
2556         * gnulib/import/m4/stat.m4: Update.
2557         * gnulib/import/m4/std-gnu11.m4: Update.
2558         * gnulib/import/m4/stdbool.m4: Update.
2559         * gnulib/import/m4/stddef_h.m4: Update.
2560         * gnulib/import/m4/stdint.m4: Update.
2561         * gnulib/import/m4/stdio_h.m4: Update.
2562         * gnulib/import/m4/stdlib_h.m4: Update.
2563         * gnulib/import/m4/strchrnul.m4: Update.
2564         * gnulib/import/m4/strdup.m4: Update.
2565         * gnulib/import/m4/strerror.m4: Update.
2566         * gnulib/import/m4/string_h.m4: Update.
2567         * gnulib/import/m4/strstr.m4: Update.
2568         * gnulib/import/m4/strtok_r.m4: Update.
2569         * gnulib/import/m4/sys_socket_h.m4: Update.
2570         * gnulib/import/m4/sys_stat_h.m4: Update.
2571         * gnulib/import/m4/sys_time_h.m4: Update.
2572         * gnulib/import/m4/sys_types_h.m4: Update.
2573         * gnulib/import/m4/tempname.m4: Update.
2574         * gnulib/import/m4/time_h.m4: Update.
2575         * gnulib/import/m4/unistd-safer.m4: Update.
2576         * gnulib/import/m4/unistd_h.m4: Update.
2577         * gnulib/import/m4/warn-on-use.m4: Update.
2578         * gnulib/import/m4/wchar_h.m4: Update.
2579         * gnulib/import/m4/wchar_t.m4: Update.
2580         * gnulib/import/m4/wctype_h.m4: Update.
2581         * gnulib/import/m4/wint_t.m4: Update.
2582         * gnulib/import/malloc.c: Update.
2583         * gnulib/import/malloc/scratch_buffer.h: Update.
2584         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2585         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2586         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2587         * gnulib/import/malloca.c: Update.
2588         * gnulib/import/malloca.h: Update.
2589         * gnulib/import/malloca.valgrind: Update.
2590         * gnulib/import/math.in.h: Update.
2591         * gnulib/import/mbrtowc.c: Update.
2592         * gnulib/import/mbsinit.c: Update.
2593         * gnulib/import/mbsrtowcs-impl.h: Update.
2594         * gnulib/import/mbsrtowcs-state.c: Update.
2595         * gnulib/import/mbsrtowcs.c: Update.
2596         * gnulib/import/memchr.c: Update.
2597         * gnulib/import/memmem.c: Update.
2598         * gnulib/import/mempcpy.c: Update.
2599         * gnulib/import/memrchr.c: Update.
2600         * gnulib/import/mkdir.c: Update.
2601         * gnulib/import/mkstemp.c: Update.
2602         * gnulib/import/msvc-inval.c: Update.
2603         * gnulib/import/msvc-inval.h: Update.
2604         * gnulib/import/msvc-nothrow.c: Update.
2605         * gnulib/import/msvc-nothrow.h: Update.
2606         * gnulib/import/open.c: Update.
2607         * gnulib/import/openat-die.c: Update.
2608         * gnulib/import/openat-priv.h: Update.
2609         * gnulib/import/openat-proc.c: Update.
2610         * gnulib/import/openat.c: Update.
2611         * gnulib/import/openat.h: Update.
2612         * gnulib/import/opendir.c: Update.
2613         * gnulib/import/pathmax.h: Update.
2614         * gnulib/import/pipe-safer.c: Update.
2615         * gnulib/import/rawmemchr.c: Update.
2616         * gnulib/import/readdir.c: Update.
2617         * gnulib/import/readlink.c: Update.
2618         * gnulib/import/realloc.c: Update.
2619         * gnulib/import/ref-add.sin: Update.
2620         * gnulib/import/ref-del.sin: Update.
2621         * gnulib/import/rename.c: Update.
2622         * gnulib/import/rewinddir.c: Update.
2623         * gnulib/import/rmdir.c: Update.
2624         * gnulib/import/same-inode.h: Update.
2625         * gnulib/import/save-cwd.c: Update.
2626         * gnulib/import/save-cwd.h: Update.
2627         * gnulib/import/scratch_buffer.h: Update.
2628         * gnulib/import/secure_getenv.c: Update.
2629         * gnulib/import/setenv.c: Update.
2630         * gnulib/import/signal.in.h: Update.
2631         * gnulib/import/stat-time.c: Update.
2632         * gnulib/import/stat-time.h: Update.
2633         * gnulib/import/stat-w32.c: Update.
2634         * gnulib/import/stat-w32.h: Update.
2635         * gnulib/import/stat.c: Update.
2636         * gnulib/import/stdbool.in.h: Update.
2637         * gnulib/import/stddef.in.h: Update.
2638         * gnulib/import/stdint.in.h: Update.
2639         * gnulib/import/stdio.in.h: Update.
2640         * gnulib/import/stdlib.in.h: Update.
2641         * gnulib/import/str-two-way.h: Update.
2642         * gnulib/import/strchrnul.c: Update.
2643         * gnulib/import/strdup.c: Update.
2644         * gnulib/import/streq.h: Update.
2645         * gnulib/import/strerror-override.c: Update.
2646         * gnulib/import/strerror-override.h: Update.
2647         * gnulib/import/strerror.c: Update.
2648         * gnulib/import/string.in.h: Update.
2649         * gnulib/import/stripslash.c: Update.
2650         * gnulib/import/strnlen1.c: Update.
2651         * gnulib/import/strnlen1.h: Update.
2652         * gnulib/import/strstr.c: Update.
2653         * gnulib/import/strtok_r.c: Update.
2654         * gnulib/import/sys_stat.in.h: Update.
2655         * gnulib/import/sys_time.in.h: Update.
2656         * gnulib/import/sys_types.in.h: Update.
2657         * gnulib/import/tempname.c: Update.
2658         * gnulib/import/tempname.h: Update.
2659         * gnulib/import/time.in.h: Update.
2660         * gnulib/import/unistd--.h: Update.
2661         * gnulib/import/unistd-safer.h: Update.
2662         * gnulib/import/unistd.in.h: Update.
2663         * gnulib/import/unsetenv.c: Update.
2664         * gnulib/import/verify.h: Update.
2665         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2666         * gnulib/import/wchar.in.h: Update.
2667         * gnulib/import/wctype.in.h: Update.
2668         * gnulib/import/xalloc-oversized.h: Update.
2669         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2670         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2671
2672 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2673
2674         * record-btrace.c (get_thread_current_frame): Remove
2675         old_inferior_ptid.
2676
2677 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2678
2679         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2680         with check_tag to 1 if and only if the type is tagged and the
2681         component being searched cannot been found in the current
2682         view. Otherwise, always call ada_to_fixed_type with
2683         check_tag to 0.
2684
2685 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2686
2687         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2688         declaration.
2689         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2690         * ada-varobj.c (ada_varobj_get_number_of_children,
2691         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2692
2693 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2694
2695         * ada-valprint.c (ada_value_print): Use type instead of
2696         enclosing type.
2697
2698 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2699
2700         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2701         an array of access to unconstrained array.
2702
2703 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2704
2705         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2706         (ada_check_typedef): Use it.
2707
2708 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2709
2710         * ada-varobj.c (ada_varobj_describe_struct_child)
2711         (ada_varobj_describe_child): Handle union case like struct one.
2712
2713 2018-09-10  Tom Tromey  <tom@tromey.com>
2714
2715         PR python/18380:
2716         * python/python.c (_initialize_python): Make example in "python"
2717         help work in Python 3.
2718
2719 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2720
2721         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2722         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2723         $(EXEEXT) to the script, as it is not a program.
2724
2725 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2726
2727         * python/py-prettyprint.c (pretty_print_one_value): Return
2728         gdbpy_ref<>.
2729         (print_string_repr): Adjust.
2730         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2731         * python/python-internal.h (apply_varobj_pretty_printer): Return
2732         gdbpy_ref<>.
2733         * varobj.c (varobj_value_get_print_value): Adjust.
2734
2735 2018-09-08  Tom Tromey  <tom@tromey.com>
2736
2737         PR python/16047:
2738         * python/py-prettyprint.c (pretty_print_one_value): Check for
2739         to_string method.
2740
2741 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2742
2743         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2744         replace_operator_with_call.
2745
2746 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2747
2748         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2749
2750 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2751
2752         * ada-typeprint.c (print_range): Print the bounds using TYPE
2753         rather than its TYPE_TARGET_TYPE.
2754
2755 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2756
2757         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2758         call to ada_to_fixed_value_create.
2759
2760 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2761
2762         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2763
2764 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2765
2766         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2767         by calls to error.
2768
2769 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2770
2771         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2772         Move update of loop variable "fi".
2773
2774 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2775
2776         * ada-lang.c (value_assign_to_component): In the case of
2777         big-endian targets, extract the bits of the given VAL
2778         using an src_offset of zero if container is not a scalar.
2779
2780 2018-09-06  Simon Ser  <contact@emersion.fr>
2781
2782         PR gdb/23105
2783         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2784         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2785         * fbsd-tdep.c (fbsd_make_note_desc): New.
2786         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2787         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2788         * target.h (enum target_object) Add FreeBSD-specific
2789         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2790
2791 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2792
2793         * compile/compile-c.h (generate_c_for_variable_locations):
2794         Change reference to pointer.
2795         * compile/compile-c-support.c (compile_program) <compute>:
2796         Likewise.
2797         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2798         (generate_c_for_for_one_variable): Likewise
2799         (generate_c_for_variable_locations): Likewise
2800         * compile/compile-c-types.c (compile_c_instance::convert_type):
2801         Likewise
2802         * compile/compile-cplus-symbols.c (convert_one_symbol):
2803         std::move the scope passed to enter_scope.
2804         * compile/compile-cplus-types.c
2805         (compile_cplus_instance::enter_scope): Make parameter
2806         rvalue-reference.
2807         (compile_cplus_instance::new_scope): Change reference to
2808         pointer.
2809         (compile_cplus_instance::convert_type): Likewise
2810         (compile_cplus_convert_typedef): std::move the scope passed to
2811         enter_scope.
2812         (compile_cplus_convert_struct_or_union): Likewise.
2813         (compile_cplus_convert_enum): Likewise.
2814         (compile_cplus_convert_namespace): Likewise.
2815         * compile/compile-cplus.h (compile_cplus_instance)
2816         <enter_scope>: Make parameter rvalue-reference.
2817         * compile/compile-internal.h (compile_instance)
2818         <get_cached_type>: Likewise
2819         * compile/compile-loc2c.c (push): Likewise
2820         (pushf): Likewise
2821         (unary): Likewise
2822         (binary): Likewise
2823         (print_label): Likewise
2824         (pushf_register_address): Likewise
2825         (pushf_register): Likewise
2826         (do_compile_dwarf_expr_to_c): Likewise
2827         (compile_dwarf_expr_to_c): Likewise
2828         (compile_dwarf_bounds_to_c): Likewise
2829         * compile/compile.c (compile_instance::get_cached_type):
2830         Likewise
2831         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2832         (compile_dwarf_bounds_to_c): Likewise
2833         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2834         (dwarf2_compile_property_to_c): Likewise
2835         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2836         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2837         Likewise
2838
2839 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2840
2841         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2842         * tui/tui-data.c (init_content_element): Don't initialize it.
2843
2844 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2845
2846         * tui/tui-data.h (struct tui_win_info)
2847         <detail::opaque>: Remove.
2848         * tui/tui-data.c (init_win_info): Remove assignment.
2849
2850 2018-09-05  Tom Tromey  <tom@tromey.com>
2851
2852         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2853         -Wformat-nonliteral.
2854         * target-float.c (host_float_ops<T>::to_string)
2855         (host_float_ops<T>::from_string): Use
2856         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2857         * configure: Rebuild.
2858
2859 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2860
2861         * printcmd.c (printf_c_string): Use
2862         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2863         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2864
2865 2018-09-05  Tom Tromey  <tom@tromey.com>
2866
2867         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2868
2869 2018-09-05  Tom de Vries  <tdevries@suse.de>
2870
2871         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2872         with resolve_abstract_p == true.
2873         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2874         defaulting to false. Propagate resolve_abstract_p to
2875         dwarf2_fetch_die_loc_sect_off.
2876         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2877         parameter, defaulting to false.
2878         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2879         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2880         parameter.
2881         * dwarf2read.h (struct die_info): Forward-declare.
2882         (die_info_ptr): New typedef.
2883         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2884
2885 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2886
2887         GDB 8.2 released.
2888
2889 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2890             Pedro Alves  <palves@redhat.com>
2891
2892         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2893         "aclocal-m4-deps.mk".  Include file here.
2894         $(srcdir)/aclocal.m4: Add "configure.ac".
2895         * gnulib/aclocal-m4-deps.mk: New file.
2896         * gnulib/update-gnulib.sh: Automatically update
2897         "aclocal-m4-deps.mk".
2898
2899 2018-09-04  Tom Tromey  <tom@tromey.com>
2900
2901         * configure: Rebuild.
2902         * configure.ac: Remove multi-ice code.
2903
2904 2018-09-04  Tom Tromey  <tom@tromey.com>
2905
2906         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2907         (ada-exp.o): Update.
2908
2909 2018-09-04  Tom Tromey  <tom@tromey.com>
2910
2911         * Makefile.in (printcmd.o, target-float.o): Remove.
2912         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2913
2914 2018-09-04  Tom Tromey  <tom@tromey.com>
2915
2916         * gnulib/Makefile.in: Remove obsolete comment.
2917         * Makefile.in: Remove obsolete comment.
2918
2919 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2920
2921         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2922         line with '+'.
2923
2924 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2925
2926         * riscv-tdep.c: Add 'prologue-value.h' include.
2927         (struct riscv_unwind_cache): New struct.
2928         (riscv_debug_unwinder): New global.
2929         (riscv_scan_prologue): Update arguments, capture register details
2930         from prologue scan.
2931         (riscv_skip_prologue): Reformat arguments line, move end of
2932         prologue calculation into riscv_scan_prologue.
2933         (riscv_frame_cache): Update return type, create
2934         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2935         details.
2936         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2937         (riscv_frame_prev_register): Use the trad_frame within the
2938         riscv_unwind_cache.
2939         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2940         flag.
2941
2942 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2943
2944         * trad-frame.h (trad_frame_set_realreg): Declare.
2945         (trad_frame_set_addr): Declare.
2946         * trad-frame.c (trad_frame_set_realreg): Define new function.
2947         (trad_frame_set_addr): Define new function.
2948         (trad_frame_set_reg_realreg): Use new function.
2949         (trad_frame_set_reg_addr): Use new function.
2950
2951 2018-09-01  Keith Seitz  <keiths@redhat.com>
2952
2953         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2954         pulongest instead of "%lld".
2955         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2956         ATTRIBUTE_UNUSED.
2957
2958 2018-08-31  Tom Tromey  <tom@tromey.com>
2959
2960         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2961         variant part type.
2962
2963 2018-08-31  Pedro Alves  <palves@redhat.com>
2964
2965         * gdbarch.h: Regenerate.
2966
2967 2018-08-31  Pedro Alves  <palves@redhat.com>
2968
2969         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2970         * target.h (Hardware watchpoint interfaces): Describe
2971         continuable/steppable/non-steppable watchpoints.
2972         * gdbarch.h, gdbarch.c: Regenerate.
2973
2974 2018-08-31  Pedro Alves  <palves@redhat.com>
2975
2976         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2977         Delete.
2978         * s390-linux-nat.c
2979         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2980         * target.h (target_ops::have_continuable_watchpoint): Delete.
2981         (target_have_continuable_watchpoint): Delete.
2982         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2983         * target-delegates.c: Regenerate.
2984
2985 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2986
2987         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2988         the files present in "gnulib/import/m4/".
2989
2990 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2991
2992         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2993         c.sw, c.swsp, and c.sdsp.
2994
2995 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2996
2997         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2998         (riscv_read_misa_reg): Don't cache value read into inferior data.
2999         (riscv_new_inferior_data): Delete.
3000         (riscv_inferior_data_cleanup): Delete.
3001         (riscv_inferior_data): Delete.
3002         (riscv_invalidate_inferior_data): Delete.
3003         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3004
3005 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3006
3007         * compile/compile-cplus-types.c
3008         (compile_cplus_instance::leave_scope): Take the address of scope
3009         object.
3010         (compile_cplus_instance::convert_qualified_base): Compare quals
3011         to 0.
3012
3013 2018-08-30  Keith Seitz  <keiths@redhat.com>
3014
3015         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3016         Use "%s" and host_address_to_string instead of "%p" in printf.
3017
3018 2018-08-29  Keith Seitz  <keiths@redhat.com>
3019
3020         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3021         and compile-cplus-types.c.
3022         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3023         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3024         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3025         Declare.
3026         * compile/compile-c-support.c: Include compile-cplus.h.
3027         (load_libcompile): Templatize.
3028         (get_compile_context): "New" function.
3029         (c_get_compile_context): Use get_compile_context.
3030         (cplus_get_compile_context): New function.
3031         (cplus_push_user_expression, cplus_pop_user_expression)
3032         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3033         (cplus_compute_program): Define new structs/functions.
3034         * compile/compile-cplus-symmbols.c: New file.
3035         * compile/compile-cplus-types.c: New file.
3036         * compile/compile-cplus.h: New file.
3037         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3038         Declare.
3039         * compile/compile-object-load.c (get_out_value_type): Use
3040         strncmp_iw when comparing symbol names.
3041         (compile_object_load): Add mst_bss and mst_data.
3042         * compile/compile.c (_initialize_compile): Remove
3043         -Wno-implicit-function-declaration from `compile_args'.
3044         * compile/gcc-cp-plugin.h: New file.
3045         * NEWS: Mention C++ compile support and new debug options.
3046
3047 2018-08-29  Keith Seitz  <keiths@redhat.com>
3048
3049         * linespec.c (collect_info::add_symbol): Make virtual.
3050         (struct symbol_searcher_collect_info): New struct.
3051         (symbol_searcher::find_all_symbols): New method.
3052         * symtab.h (class symbol_searcher): New class.
3053
3054 2018-08-29  Keith Seitz  <keiths@redhat.com>
3055
3056         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3057         Change to vector of block_symbol.  Update all users.
3058         (struct collect_info) <symbols>: Likewise.
3059         (collect_info::add_symbol): Take block_symbol as argument.
3060         Update all callers.
3061         (decode_compound_collector) <m_symbols>: Change type to vector
3062         of block_symbol.  Update all users.
3063         (decode_compound_collector::operator ()): Change parameter type
3064         to block_symbol.
3065         (find_method, find_function_symbols, find_linespec_symbols)
3066         (find_label_symbols_in_block, find_label_symbols): Change symbol
3067         vectors to block_symbol vectors.
3068         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3069         block_symbol.
3070
3071 2018-08-29  Keith Seitz  <keiths@redhat.com>
3072
3073         * linespec.c (symbolp): Remove typedef and VEC definitions.
3074         (bound_minimal_symbol_d): Likewise.
3075
3076 2018-08-29  Keith Seitz  <keiths@redhat.com>
3077
3078         * linespec.c (decode_compound_collector::decode_compound_collector):
3079         Remove initialization for `m_symtabs'.
3080         (decode_compound_collector::release_symbols): Change return type
3081         to std::vector.  Update all callers.
3082         (class decode_compound_collector) <m_symbols>: Change type to
3083         std::vector.
3084         (lookup_prefix_sym): Change return type to std::vector.  Update all
3085         callers.
3086         (compare_symbols): Remove.
3087         (std_compare_symbols): Rename to `compare_symbols'.
3088         (find_method): Change `sym_classes' parameter to std::vector.
3089         Update all callers.  Use std::sort to sort sym_classes.
3090         (find_linespec_symbols): Remove cleanup.
3091
3092 2018-08-29  Keith Seitz  <keiths@redhat.com>
3093
3094         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3095         std::vector.  Update all users.
3096         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3097         (struct collect_info) <minimal_symbols>: Likewise.
3098         (compare_msymbols): Return bool.  Change parameters to const
3099         bound_minimal_symbol references.
3100         (find_method, find_function_symbols, find_linespec_symbols): Change
3101         `minsyms' parameter to std::vector.  Update all callers.
3102
3103 2018-08-29  Keith Seitz  <keiths@redhat.com>
3104
3105         * linespec.c (struct linespec) <label_symbols>: Change type to
3106         std::vector.  Update all users.
3107         (find_label_symbols_in_block): Change `result' parameter to
3108         std::vector.  Update all callers.
3109         (find_label_symbols): Return std::vector.  Update all callers.
3110
3111 2018-08-29  Keith Seitz  <keiths@redhat.com>
3112
3113         * linespec.c (struct linespec) <function_symbols>: Change type to
3114         std::vector.  Update all users.
3115         (struct collect_info) <function_symbols>: Likewise.
3116         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3117         (std_compare_symbols): New function.
3118         (find_method, find_function_symbols, find_linespec_symbols)
3119         (find_label_symbols_in_block): Change `symbols' parameter to
3120         std::vector.  Update all callers.
3121         (find_label_symbols): Likewise for `function_symbols' and
3122         `label_funcs_ret'.
3123
3124 2018-08-29  Keith Seitz  <keiths@redhat.com>
3125
3126         * linespec.c (symtab_vector_up): Define.
3127         (struct linespec) <file_symtabs>: Change type to std::vector *.
3128         Update all uses.
3129         (struct collect_info) <file_symtabs>: Likewise.
3130         (collect_symtabs_from_filename): Return symtab_vector_up.
3131         Update all callers.
3132         (decode_objc): Remove cleanup.
3133         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3134         (symtab_collector::release_symtabs): Return symtab_vector_up.
3135         Update all callers.
3136         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3137         Update all users.
3138         (collect_symtabs_from_filename, symtabs_from_filename): Return
3139         symtab_vector_up.  Update all callers.
3140
3141 2018-08-29  Tom Tromey  <tom@tromey.com>
3142
3143         * csky-tdep.c (csky_analyze_prologue): Use
3144         core_addr_to_string_nz.
3145
3146 2018-08-29  Tom Tromey  <tom@tromey.com>
3147
3148         * windows-nat.c (struct xlate_exception) <them>: Change type to
3149         DWORD.
3150         (xlate): Fix formatting.  Remove last entry.
3151         (struct xlate_exception, xlate): Comment out.
3152         (windows_nat_target::resume): Use ranged for.
3153
3154 2018-08-29  Jim Wilson  <jimw@sifive.com>
3155
3156         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3157         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3158         of NT_PRFPREG.
3159         (riscv_linux_nat_target::store_registers): Likewise.
3160
3161 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3162
3163         PR gdb/23555
3164         PR gdb/23558
3165         * gnulib/aclocal.m4: Regenerate.
3166         * gnulib/config.in: Regenerate.
3167         * gnulib/configure: Regenerate.
3168         * gnulib/import/Makefile.am: Update.
3169         * gnulib/import/Makefile.in: Update.
3170         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3171         * gnulib/import/_Noreturn.h: ... this.
3172         * gnulib/import/alloca.in.h: Update.
3173         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3174         * gnulib/import/arg-nonnull.h: ... this.
3175         * gnulib/import/assure.h: Update.
3176         * gnulib/import/at-func.c: Update.
3177         * gnulib/import/basename-lgpl.c: Update.
3178         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3179         * gnulib/import/c++defs.h: ... this.
3180         * gnulib/import/canonicalize-lgpl.c: Update.
3181         * gnulib/import/cdefs.h: Update.
3182         * gnulib/import/chdir-long.c: Update.
3183         * gnulib/import/chdir-long.h: Update.
3184         * gnulib/import/cloexec.c: Update.
3185         * gnulib/import/cloexec.h: Update.
3186         * gnulib/import/close.c: Update.
3187         * gnulib/import/closedir.c: Update.
3188         * gnulib/import/config.charset: Update.
3189         * gnulib/import/dirent-private.h: Update.
3190         * gnulib/import/dirent.in.h: Update.
3191         * gnulib/import/dirfd.c: Update.
3192         * gnulib/import/dirname-lgpl.c: Update.
3193         * gnulib/import/dirname.h: Update.
3194         * gnulib/import/dosname.h: Update.
3195         * gnulib/import/dup-safer-flag.c: Update.
3196         * gnulib/import/dup-safer.c: Update.
3197         * gnulib/import/dup.c: Update.
3198         * gnulib/import/dup2.c: Update.
3199         * gnulib/import/errno.in.h: Update.
3200         * gnulib/import/error.c: Update.
3201         * gnulib/import/error.h: Update.
3202         * gnulib/import/exitfail.c: Update.
3203         * gnulib/import/exitfail.h: Update.
3204         * gnulib/import/extra/update-copyright: Update.
3205         * gnulib/import/fchdir.c: Update.
3206         * gnulib/import/fcntl.c: Update.
3207         * gnulib/import/fcntl.in.h: Update.
3208         * gnulib/import/fd-hook.c: Update.
3209         * gnulib/import/fd-hook.h: Update.
3210         * gnulib/import/fd-safer-flag.c: Update.
3211         * gnulib/import/fd-safer.c: Update.
3212         * gnulib/import/fdopendir.c: Update.
3213         * gnulib/import/filename.h: Update.
3214         * gnulib/import/filenamecat-lgpl.c: Update.
3215         * gnulib/import/filenamecat.h: Update.
3216         * gnulib/import/flexmember.h: Update.
3217         * gnulib/import/float+.h: Update.
3218         * gnulib/import/float.c: Update.
3219         * gnulib/import/float.in.h: Update.
3220         * gnulib/import/fnmatch.c: Update.
3221         * gnulib/import/fnmatch.in.h: Update.
3222         * gnulib/import/fnmatch_loop.c: Update.
3223         * gnulib/import/fpucw.h: Update.
3224         * gnulib/import/frexp.c: Update.
3225         * gnulib/import/frexpl.c: Update.
3226         * gnulib/import/fstat.c: Update.
3227         * gnulib/import/fstatat.c: Update.
3228         * gnulib/import/getcwd-lgpl.c: Update.
3229         * gnulib/import/getcwd.c: Update.
3230         * gnulib/import/getdtablesize.c: Update.
3231         * gnulib/import/getlogin_r.c: Update.
3232         * gnulib/import/getprogname.c: Update.
3233         * gnulib/import/getprogname.h: Update.
3234         * gnulib/import/gettext.h: Update.
3235         * gnulib/import/gettimeofday.c: Update.
3236         * gnulib/import/glob-libc.h: Update.
3237         * gnulib/import/glob.c: Update.
3238         * gnulib/import/glob.in.h: Update.
3239         * gnulib/import/glob_internal.h: Update.
3240         * gnulib/import/glob_pattern_p.c: Update.
3241         * gnulib/import/globfree.c: Update.
3242         * gnulib/import/hard-locale.c: Update.
3243         * gnulib/import/hard-locale.h: Update.
3244         * gnulib/import/intprops.h: Update.
3245         * gnulib/import/inttypes.in.h: Update.
3246         * gnulib/import/isnan.c: Update.
3247         * gnulib/import/isnand-nolibm.h: Update.
3248         * gnulib/import/isnand.c: Update.
3249         * gnulib/import/isnanl-nolibm.h: Update.
3250         * gnulib/import/isnanl.c: Update.
3251         * gnulib/import/itold.c: Update.
3252         * gnulib/import/libc-config.h: Update.
3253         * gnulib/import/limits.in.h: Update.
3254         * gnulib/import/localcharset.c: Update.
3255         * gnulib/import/localcharset.h: Update.
3256         * gnulib/import/localtime-buffer.c: Update.
3257         * gnulib/import/localtime-buffer.h: Update.
3258         * gnulib/import/lstat.c: Update.
3259         * gnulib/import/m4/00gnulib.m4: Update.
3260         * gnulib/import/m4/__inline.m4: Update.
3261         * gnulib/import/m4/absolute-header.m4: Update.
3262         * gnulib/import/m4/alloca.m4: Update.
3263         * gnulib/import/m4/builtin-expect.m4: Update.
3264         * gnulib/import/m4/canonicalize.m4: Update.
3265         * gnulib/import/m4/chdir-long.m4: Update.
3266         * gnulib/import/m4/close.m4: Update.
3267         * gnulib/import/m4/closedir.m4: Update.
3268         * gnulib/import/m4/configmake.m4: Update.
3269         * gnulib/import/m4/d-ino.m4: Update.
3270         * gnulib/import/m4/d-type.m4: Update.
3271         * gnulib/import/m4/dirent_h.m4: Update.
3272         * gnulib/import/m4/dirfd.m4: Update.
3273         * gnulib/import/m4/dirname.m4: Update.
3274         * gnulib/import/m4/double-slash-root.m4: Update.
3275         * gnulib/import/m4/dup.m4: Update.
3276         * gnulib/import/m4/dup2.m4: Update.
3277         * gnulib/import/m4/eealloc.m4: Update.
3278         * gnulib/import/m4/environ.m4: Update.
3279         * gnulib/import/m4/errno_h.m4: Update.
3280         * gnulib/import/m4/error.m4: Update.
3281         * gnulib/import/m4/exponentd.m4: Update.
3282         * gnulib/import/m4/exponentl.m4: Update.
3283         * gnulib/import/m4/extensions.m4: Update.
3284         * gnulib/import/m4/extern-inline.m4: Update.
3285         * gnulib/import/m4/fchdir.m4: Update.
3286         * gnulib/import/m4/fcntl-o.m4: Update.
3287         * gnulib/import/m4/fcntl.m4: Update.
3288         * gnulib/import/m4/fcntl_h.m4: Update.
3289         * gnulib/import/m4/fdopendir.m4: Update.
3290         * gnulib/import/m4/filenamecat.m4: Update.
3291         * gnulib/import/m4/flexmember.m4: Update.
3292         * gnulib/import/m4/float_h.m4: Update.
3293         * gnulib/import/m4/fnmatch.m4: Update.
3294         * gnulib/import/m4/fnmatch_h.m4: Update.
3295         * gnulib/import/m4/fpieee.m4: Update.
3296         * gnulib/import/m4/frexp.m4: Update.
3297         * gnulib/import/m4/frexpl.m4: Update.
3298         * gnulib/import/m4/fstat.m4: Update.
3299         * gnulib/import/m4/fstatat.m4: Update.
3300         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3301         * gnulib/import/m4/getcwd-path-max.m4: Update.
3302         * gnulib/import/m4/getcwd.m4: Update.
3303         * gnulib/import/m4/getdtablesize.m4: Update.
3304         * gnulib/import/m4/getlogin.m4: Update.
3305         * gnulib/import/m4/getlogin_r.m4: Update.
3306         * gnulib/import/m4/getpagesize.m4: Update.
3307         * gnulib/import/m4/getprogname.m4: Update.
3308         * gnulib/import/m4/gettimeofday.m4: Update.
3309         * gnulib/import/m4/glibc21.m4: Update.
3310         * gnulib/import/m4/glob.m4: Update.
3311         * gnulib/import/m4/glob_h.m4: Update.
3312         * gnulib/import/m4/gnulib-cache.m4: Update.
3313         * gnulib/import/m4/gnulib-common.m4: Update.
3314         * gnulib/import/m4/gnulib-comp.m4: Update.
3315         * gnulib/import/m4/gnulib-tool.m4: Update.
3316         * gnulib/import/m4/hard-locale.m4: Update.
3317         * gnulib/import/m4/include_next.m4: Update.
3318         * gnulib/import/m4/inttypes-pri.m4: Update.
3319         * gnulib/import/m4/inttypes.m4: Update.
3320         * gnulib/import/m4/isnand.m4: Update.
3321         * gnulib/import/m4/isnanl.m4: Update.
3322         * gnulib/import/m4/largefile.m4: Update.
3323         * gnulib/import/m4/limits-h.m4: Update.
3324         * gnulib/import/m4/localcharset.m4: Update.
3325         * gnulib/import/m4/locale-fr.m4: Update.
3326         * gnulib/import/m4/locale-ja.m4: Update.
3327         * gnulib/import/m4/locale-zh.m4: Update.
3328         * gnulib/import/m4/localtime-buffer.m4: Update.
3329         * gnulib/import/m4/longlong.m4: Update.
3330         * gnulib/import/m4/lstat.m4: Update.
3331         * gnulib/import/m4/malloc.m4: Update.
3332         * gnulib/import/m4/malloca.m4: Update.
3333         * gnulib/import/m4/math_h.m4: Update.
3334         * gnulib/import/m4/mbrtowc.m4: Update.
3335         * gnulib/import/m4/mbsinit.m4: Update.
3336         * gnulib/import/m4/mbsrtowcs.m4: Update.
3337         * gnulib/import/m4/mbstate_t.m4: Update.
3338         * gnulib/import/m4/memchr.m4: Update.
3339         * gnulib/import/m4/memmem.m4: Update.
3340         * gnulib/import/m4/mempcpy.m4: Update.
3341         * gnulib/import/m4/memrchr.m4: Update.
3342         * gnulib/import/m4/mkdir.m4: Update.
3343         * gnulib/import/m4/mkstemp.m4: Update.
3344         * gnulib/import/m4/mmap-anon.m4: Update.
3345         * gnulib/import/m4/mode_t.m4: Update.
3346         * gnulib/import/m4/msvc-inval.m4: Update.
3347         * gnulib/import/m4/msvc-nothrow.m4: Update.
3348         * gnulib/import/m4/multiarch.m4: Update.
3349         * gnulib/import/m4/nocrash.m4: Update.
3350         * gnulib/import/m4/off_t.m4: Update.
3351         * gnulib/import/m4/onceonly.m4: Update.
3352         * gnulib/import/m4/open-cloexec.m4: Update.
3353         * gnulib/import/m4/open.m4: Update.
3354         * gnulib/import/m4/openat.m4: Update.
3355         * gnulib/import/m4/opendir.m4: Update.
3356         * gnulib/import/m4/pathmax.m4: Update.
3357         * gnulib/import/m4/rawmemchr.m4: Update.
3358         * gnulib/import/m4/readdir.m4: Update.
3359         * gnulib/import/m4/readlink.m4: Update.
3360         * gnulib/import/m4/realloc.m4: Update.
3361         * gnulib/import/m4/rename.m4: Update.
3362         * gnulib/import/m4/rewinddir.m4: Update.
3363         * gnulib/import/m4/rmdir.m4: Update.
3364         * gnulib/import/m4/save-cwd.m4: Update.
3365         * gnulib/import/m4/secure_getenv.m4: Update.
3366         * gnulib/import/m4/setenv.m4: Update.
3367         * gnulib/import/m4/signal_h.m4: Update.
3368         * gnulib/import/m4/ssize_t.m4: Update.
3369         * gnulib/import/m4/stat-time.m4: Update.
3370         * gnulib/import/m4/stat.m4: Update.
3371         * gnulib/import/m4/std-gnu11.m4: Update.
3372         * gnulib/import/m4/stdbool.m4: Update.
3373         * gnulib/import/m4/stddef_h.m4: Update.
3374         * gnulib/import/m4/stdint.m4: Update.
3375         * gnulib/import/m4/stdio_h.m4: Update.
3376         * gnulib/import/m4/stdlib_h.m4: Update.
3377         * gnulib/import/m4/strchrnul.m4: Update.
3378         * gnulib/import/m4/strdup.m4: Update.
3379         * gnulib/import/m4/strerror.m4: Update.
3380         * gnulib/import/m4/string_h.m4: Update.
3381         * gnulib/import/m4/strstr.m4: Update.
3382         * gnulib/import/m4/strtok_r.m4: Update.
3383         * gnulib/import/m4/sys_socket_h.m4: Update.
3384         * gnulib/import/m4/sys_stat_h.m4: Update.
3385         * gnulib/import/m4/sys_time_h.m4: Update.
3386         * gnulib/import/m4/sys_types_h.m4: Update.
3387         * gnulib/import/m4/tempname.m4: Update.
3388         * gnulib/import/m4/time_h.m4: Update.
3389         * gnulib/import/m4/unistd-safer.m4: Update.
3390         * gnulib/import/m4/unistd_h.m4: Update.
3391         * gnulib/import/m4/warn-on-use.m4: Update.
3392         * gnulib/import/m4/wchar_h.m4: Update.
3393         * gnulib/import/m4/wchar_t.m4: Update.
3394         * gnulib/import/m4/wctype_h.m4: Update.
3395         * gnulib/import/m4/wint_t.m4: Update.
3396         * gnulib/import/malloc.c: Update.
3397         * gnulib/import/malloc/scratch_buffer.h: Update.
3398         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3399         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3400         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3401         * gnulib/import/malloca.c: Update.
3402         * gnulib/import/malloca.h: Update.
3403         * gnulib/import/malloca.valgrind: Update.
3404         * gnulib/import/math.in.h: Update.
3405         * gnulib/import/mbrtowc.c: Update.
3406         * gnulib/import/mbsinit.c: Update.
3407         * gnulib/import/mbsrtowcs-impl.h: Update.
3408         * gnulib/import/mbsrtowcs-state.c: Update.
3409         * gnulib/import/mbsrtowcs.c: Update.
3410         * gnulib/import/memchr.c: Update.
3411         * gnulib/import/memmem.c: Update.
3412         * gnulib/import/mempcpy.c: Update.
3413         * gnulib/import/memrchr.c: Update.
3414         * gnulib/import/mkdir.c: Update.
3415         * gnulib/import/mkstemp.c: Update.
3416         * gnulib/import/msvc-inval.c: Update.
3417         * gnulib/import/msvc-inval.h: Update.
3418         * gnulib/import/msvc-nothrow.c: Update.
3419         * gnulib/import/msvc-nothrow.h: Update.
3420         * gnulib/import/open.c: Update.
3421         * gnulib/import/openat-die.c: Update.
3422         * gnulib/import/openat-priv.h: Update.
3423         * gnulib/import/openat-proc.c: Update.
3424         * gnulib/import/openat.c: Update.
3425         * gnulib/import/openat.h: Update.
3426         * gnulib/import/opendir.c: Update.
3427         * gnulib/import/pathmax.h: Update.
3428         * gnulib/import/pipe-safer.c: Update.
3429         * gnulib/import/rawmemchr.c: Update.
3430         * gnulib/import/readdir.c: Update.
3431         * gnulib/import/readlink.c: Update.
3432         * gnulib/import/realloc.c: Update.
3433         * gnulib/import/ref-add.sin: Update.
3434         * gnulib/import/ref-del.sin: Update.
3435         * gnulib/import/rename.c: Update.
3436         * gnulib/import/rewinddir.c: Update.
3437         * gnulib/import/rmdir.c: Update.
3438         * gnulib/import/same-inode.h: Update.
3439         * gnulib/import/save-cwd.c: Update.
3440         * gnulib/import/save-cwd.h: Update.
3441         * gnulib/import/scratch_buffer.h: Update.
3442         * gnulib/import/secure_getenv.c: Update.
3443         * gnulib/import/setenv.c: Update.
3444         * gnulib/import/signal.in.h: Update.
3445         * gnulib/import/stat-time.c: Update.
3446         * gnulib/import/stat-time.h: Update.
3447         * gnulib/import/stat-w32.c: Update.
3448         * gnulib/import/stat-w32.h: Update.
3449         * gnulib/import/stat.c: Update.
3450         * gnulib/import/stdbool.in.h: Update.
3451         * gnulib/import/stddef.in.h: Update.
3452         * gnulib/import/stdint.in.h: Update.
3453         * gnulib/import/stdio.in.h: Update.
3454         * gnulib/import/stdlib.in.h: Update.
3455         * gnulib/import/str-two-way.h: Update.
3456         * gnulib/import/strchrnul.c: Update.
3457         * gnulib/import/strdup.c: Update.
3458         * gnulib/import/streq.h: Update.
3459         * gnulib/import/strerror-override.c: Update.
3460         * gnulib/import/strerror-override.h: Update.
3461         * gnulib/import/strerror.c: Update.
3462         * gnulib/import/string.in.h: Update.
3463         * gnulib/import/stripslash.c: Update.
3464         * gnulib/import/strnlen1.c: Update.
3465         * gnulib/import/strnlen1.h: Update.
3466         * gnulib/import/strstr.c: Update.
3467         * gnulib/import/strtok_r.c: Update.
3468         * gnulib/import/sys_stat.in.h: Update.
3469         * gnulib/import/sys_time.in.h: Update.
3470         * gnulib/import/sys_types.in.h: Update.
3471         * gnulib/import/tempname.c: Update.
3472         * gnulib/import/tempname.h: Update.
3473         * gnulib/import/time.in.h: Update.
3474         * gnulib/import/unistd--.h: Update.
3475         * gnulib/import/unistd-safer.h: Update.
3476         * gnulib/import/unistd.in.h: Update.
3477         * gnulib/import/unsetenv.c: Update.
3478         * gnulib/import/verify.h: Update.
3479         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3480         * gnulib/import/wchar.in.h: Update.
3481         * gnulib/import/wctype.in.h: Update.
3482         * gnulib/import/xalloc-oversized.h: Update.
3483         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3484         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3485
3486 2018-08-16  Gary Benson <gbenson@redhat.com>
3487
3488         PR gdb/13000:
3489         * gdb/main.c (captured_main_1): Exit with nonzero status
3490         in batch mode if the last command to be executed failed.
3491         * NEWS: Mention the above.
3492
3493 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3494
3495         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3496         end of warning message.
3497
3498 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3499
3500         PR gdb/22943:
3501         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3502         (aarch64_extract_return_value): Use
3503         aapcs_is_vfp_call_or_return_candidate.
3504         (aarch64_return_in_memory): Likewise.
3505         (aarch64_store_return_value): Likewise.
3506
3507 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3508
3509         * aarch64-tdep.c
3510         (aapcs_is_vfp_call_or_return_candidate): Make static
3511         (pass_in_v_or_stack): Remove function.
3512         (pass_in_v_vfp_candidate): New function.
3513         (aarch64_push_dummy_call): Check for float register candidates.
3514
3515 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3516
3517         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3518         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3519         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3520
3521 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3522
3523         PR build/23399
3524         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3525         (struct ipa_sym_addresses): Rename to...
3526         (struct ipa_sym_addresses_common): ... this.
3527         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3528
3529 2018-08-28  Tom Tromey  <tom@tromey.com>
3530
3531         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3532         (token_fifo): Now a std::vector.
3533         (yylex, c_parse): Update.
3534         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3535         (token_fifo): Now a std::vector.
3536         (yylex, d_parse): Update.
3537         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3538         (token_fifo): Now a std::vector.
3539         (yylex, go_parse): Update.
3540
3541 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3542
3543         * parser-defs.h (struct type_stack) <elements>: Change type to
3544         std::vector<union type_stack_elt>.
3545         <depth, size>: Remove.
3546         * parse.c (parse_exp_in_context_1): Adjust.
3547         (type_stack_reserve): Remove.
3548         (check_type_stack_depth): Remove.
3549         (insert_into_type_stack): Adjust to std::vector.
3550         (insert_type): Likewise.
3551         (push_type): Likewise.
3552         (push_type_int): Likewise.
3553         (insert_type_address_space): Likewise.
3554         (pop_type): Likewise.
3555         (pop_type_int): Likewise.
3556         (pop_typelist): Likewise.
3557         (pop_type_stack): Likewise.
3558         (append_type_stack): Likewise.
3559         (push_type_stack): Likewise.
3560         (get_type_stack): Likewise.
3561         (type_stack_cleanup): Likewise.
3562         (push_typelist): Likewise.
3563         (follow_types): Likewise.
3564         (_initialize_parse): Likewise.
3565
3566 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3567
3568         * NEWS: Mention csky target.
3569
3570 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3571             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3572             Don Breazeal  <donb@codesourcery.com>
3573
3574         * csky-linux-tdep.c: New file.
3575         * csky-tdep.c: Likewise.
3576         * csky-tdep.h: Likewise.
3577         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3578         csky-tdep.o.
3579         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3580         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3581         * configure.tgt: Add csky support.
3582
3583 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3584
3585         * python/py-framefilter.c (py_print_frame): Print frame architecture
3586         when printing on an MI output.
3587
3588 2018-08-27  Tom Tromey  <tom@tromey.com>
3589
3590         PR build/23087:
3591         * configure: Rebuild.
3592         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3593
3594 2018-08-27  Tom Tromey  <tom@tromey.com>
3595
3596         * aarch64-linux-tdep.c
3597         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3598         casts to int.
3599
3600 2018-08-27  Tom Tromey  <tom@tromey.com>
3601
3602         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3603         unsigned.
3604         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3605         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3606         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3607         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3608         unsigned.
3609
3610 2018-08-27  Tom Tromey  <tom@tromey.com>
3611
3612         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3613         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3614
3615 2018-08-27  Tom Tromey  <tom@tromey.com>
3616
3617         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3618         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3619         ULONGEST_MAX.
3620         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3621         ULONGEST_MAX.
3622         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3623         ULONGEST_MAX.
3624         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3625         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3626         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3627         ULONGEST_MAX.
3628         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3629         (ppc64_linux_sigaction_tramp_frame)
3630         (ppc32_linux_sighandler_tramp_frame)
3631         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3632         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3633         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3634         * mn10300-linux-tdep.c (am33_linux_sigframe)
3635         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3636         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3637         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3638         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3639         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3640         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3641         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3642         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3643         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3644         * microblaze-linux-tdep.c
3645         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3646         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3647         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3648         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3649         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3650         * common/common-types.h (ULONGEST_MAX): New define.
3651         (CORE_ADDR_MAX): Fix formatting.
3652         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3653         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3654         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3655         (arm_linux_rt_sigreturn_tramp_frame)
3656         (arm_eabi_linux_sigreturn_tramp_frame)
3657         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3658         (thumb2_eabi_linux_sigreturn_tramp_frame)
3659         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3660         (arm_linux_restart_syscall_tramp_frame)
3661         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3662         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3663         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3664         ULONGEST_MAX.
3665         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3666
3667 2018-08-27  Tom Tromey  <tom@tromey.com>
3668
3669         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3670         CORE_ADDR_MAX.
3671         * mips-tdep.c (mips_deal_with_atomic_sequence)
3672         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3673         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3674         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3675         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3676         CORE_ADDR_MAX.
3677         * aarch64-tdep.c (aarch64_software_single_step): Use
3678         CORE_ADDR_MAX.
3679
3680 2018-08-27  Tom Tromey  <tom@tromey.com>
3681
3682         * linespec.c (complete_linespec_component): Add cast to "char".
3683         * completer.c (completion_tracker::build_completion_result): Add
3684         cast to "char".
3685
3686 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3687
3688         * solist.h (struct solist, struct target_so_ops): Fix
3689         indentation.
3690
3691 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3692
3693         * ada-tasks.c (ada_task_info_s): Remove typedef.
3694         (DEF_VEC_O(ada_task_info_s)): Remove.
3695         (struct ada_tasks_inferior_data): Initialize fields.
3696         <task_list>: Make an std::vector.
3697         (get_ada_tasks_inferior_data): Allocate with new.
3698         (ada_get_task_number): Adjust.
3699         (get_task_number_from_id): Likewise.
3700         (valid_task_id): Likewise.
3701         (ada_get_task_info_from_ptid): Likewise.
3702         (iterate_over_live_ada_tasks): Likewise.
3703         (add_ada_task): Likewise.
3704         (read_known_tasks): Likewise.
3705         (ada_build_task_list): Likewise.
3706         (print_ada_task_info): Likewise.
3707         (info_task): Likewise.
3708         (task_command_1): Likewise.
3709
3710 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3711
3712         * ada-lang.c (add_angle_brackets): Return std::string.
3713
3714 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3715
3716         * python/py-threadevent.c (py_get_event_thread): Initialize
3717         pythread.
3718
3719 2018-08-24  Pedro Alves  <palves@redhat.com>
3720
3721         * python/py-bpevent.c (create_breakpoint_event_object): Use
3722         copy-initialization.
3723         * python/py-continueevent.c (emit_continue_event): Use
3724         copy-initialization.
3725         * python/py-exitedevent.c (create_exited_event_object): Return a
3726         gdbpy_ref<>.
3727         (emit_exited_event): Use copy-initialization.
3728         * python/py-inferior.c (python_new_inferior)
3729         (python_inferior_deleted, add_thread_object): Use
3730         copy-initialization.
3731         * python/py-infevents.c (create_inferior_call_event_object)
3732         (create_register_changed_event_object)
3733         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3734         (emit_inferior_call_event, emit_memory_changed_event)
3735         (emit_register_changed_event): Use copy-initialization.
3736         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3737         Return a gdbpy_ref<>.
3738         (emit_new_objfile_event): Use copy-initialization.
3739         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3740         (emit_clear_objfiles_event): Use copy-initialization.
3741         * python/py-signalevent.c (create_signal_event_object): Use
3742         copy-initialization.
3743         * python/py-threadevent.c (create_thread_event_object): Use
3744         copy-initialization.
3745
3746 2018-08-24  Pedro Alves  <palves@redhat.com>
3747             Simon Marchi  <simon.marchi@ericsson.com>
3748
3749         PR gdb/23379
3750         * python/py-continueevent.c: Include "gdbthread.h".
3751         (create_continue_event_object): Add intro comment.  Add 'ptid'
3752         parameter.  Use it to find thread to pass to
3753         create_thread_event_object.
3754         (emit_continue_event): Pass PTID down to
3755         create_continue_event_object.
3756         * python/py-event.h (py_get_event_thread): Declare.
3757         (create_thread_event_object): Remove default from 'thread'
3758         parameter.
3759         * python/py-stopevent.c (create_stop_event_object): Use
3760         py_get_event_thread.
3761         * python/py-threadevent.c (get_event_thread): Rename to ...
3762         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3763         and use it to find the thread.
3764         (create_thread_event_object): Assert that THREAD isn't null.
3765         Don't find the event thread here.
3766
3767 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3768
3769         * block.h (blockrange, blockranges): New struct declarations.
3770         (struct block): Add new field named `ranges'.
3771         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3772         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3773         macros for accessing ranges in struct block.
3774         (make_blockranges): New declaration.
3775         block.c (make_blockranges): New function.
3776         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3777         for block.
3778         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3779         * blockframe.c (cache_pc_function_block): New static global.
3780         (clear_pc_function_cache): Clear cache_pc_function_block.
3781         (find_pc_partial_function): Move comment to symtab.h.  Add
3782         support for non-contiguous blocks.
3783         * cli/cli-cmds.c (block.h): Include.
3784         (print_disassembly): Handle printing of non-contiguous blocks.
3785         (disassemble_current_function): Likewise.
3786         (disassemble_command): Likewise.
3787
3788         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3789         BLOCK_START.
3790         * blockframe.c (get_pc_function_start): Likewise.
3791         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3792         (gcc_symbol_address): Likewise.
3793         * compile/compile-object-run.c (compile_object_run): Likewise.
3794         * compile/compile.c (get_expr_block_and_pc): Likewise.
3795         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3796         (func_addr_to_tail_call_list): Likewise.
3797         * findvar.c (default_read_var_value): Likewise.
3798         * inline-frame.c (inline_frame_this_id): Likewise.
3799         (skip-inline_frames): Likewise.
3800         * infcmd.c (until_next_command): Likewise.
3801         * linespec.c (convert_linespec_to_sals): Likewise.
3802         * parse.c (parse_exp_in_context_1): Likewise.
3803         * printcmd.c (build_address_symbolic): likewise.
3804         (info_address_command): Likewise.
3805         symtab.c (find_function_start_sal): Likewise.
3806         (skip_prologue_sal): Likewise.
3807         (find_function_alias_target): Likewise.
3808         (find_gnu_ifunc): Likewise.
3809         * stack.c (find_frame_funname): Likewise.
3810         * symtab.c (fixup_symbol_section): Likewise.
3811         (find_function_start_sal): Likewise.
3812         (skip_prologue_sal): Likewsie.
3813         (find_function_alias_target): Likewise.
3814         (find_gnu_ifunc): Likewise.
3815         * tracepoint.c (info_scope_command): Likewise.
3816         * value.c (value_fn_field): Likewise.
3817
3818         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3819         in place of find_pc_partial_function.
3820         * blockframe.c (find_function_entry_range_from_pc): New function.
3821         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3822         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3823         for each range in a block.
3824
3825
3826 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3827
3828         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3829         incrementation.
3830
3831 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3832
3833         * solib-svr4.c (read_program_headers_from_bfd): Return
3834         gdb::optional<gdb::byte_vector>.
3835         (svr4_exec_displacement): Adjust.
3836
3837 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3838
3839         * solib-svr4.c (read_program_header): Return
3840         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3841         (find_program_interpreter): Return
3842         gdb::optional<gdb::byte_vector>.
3843         (scan_dyntag_auxv): Adjust.
3844         (enable_break): Adjust.
3845         (svr4_exec_displacement): Adjust.
3846
3847 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3848
3849         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3850         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3851
3852 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3853
3854         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3855         string_vprintf.
3856         * guile/scm-utils.c (gdbscm_printf): Likewise.
3857         * serial.c (serial_printf): Likewise.
3858         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3859
3860 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3861
3862         * stack.c (print_frame): Print frame architecture when printing on
3863         an MI output.
3864         * NEWS: Mention new "arch" attribute in frame output.
3865
3866 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3867
3868         * arch/aarch64.h (aarch64_regnum): Update comment.
3869
3870 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3871
3872         * NEWS: Add SVE to 8.2 section.
3873
3874 2018-08-21  Pedro Alves  <palves@redhat.com>
3875
3876         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3877         out from gdbscm_parse_function_args.
3878         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3879         gdbscm_parse_function_args_1.
3880
3881 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3882
3883         PR gdb/17816
3884         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3885         operator.
3886
3887 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3888
3889         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3890
3891 2018-08-19  Michael Spang  <spang@google.com>
3892
3893         PR gdb/11786
3894         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3895         for PT_TLS segments.
3896
3897 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3898
3899         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3900         dwarf_variable_value.
3901         * dwarf2-frame.c (class dwarf_expr_executor):
3902         Add override for dwarf_variable_value.
3903         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3904         (class symbol_needs_eval_context): Likewise.
3905         (indirect_synthetic_pointer): Add forward declaration.
3906         (sect_variable_value): New function.
3907         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3908         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3909         for DW_OP_GNU_variable_value.
3910
3911 2018-08-16  Tom Tromey  <tom@tromey.com>
3912
3913         * top.c (read_command_file): Update.
3914         (command_line_input): Remove "repeat" argument.
3915         * ada-lang.c (get_selections): Update.
3916         * linespec.c (decode_line_2): Update.
3917         * defs.h (command_line_input): Remove argument.
3918         * cli/cli-script.c (read_next_line): Update.
3919         * python/py-gdb-readline.c: Update.
3920
3921 2018-08-17  Tom Tromey  <tom@tromey.com>
3922
3923         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3924         command_line_input.
3925
3926 2018-08-15  Tom Tromey  <tom@tromey.com>
3927
3928         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3929
3930 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3931
3932         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3933         If used, use find_pc_partial_function to find address range
3934         to disassemble.
3935         * mi/mi-main.c (mi_cmd_list_features): Report
3936         "data-disassemble-a-option" feature.
3937         * NEWS: Mention new -data-disassemble option -a.
3938
3939 2018-08-13  Tom Tromey  <tom@tromey.com>
3940
3941         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3942
3943 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3944
3945         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3946         (aarch64_linux_collect_sve_regset): Likewise.
3947         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3948         * regcache.h (regcache_map_entry_size): New function.
3949
3950 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3951
3952         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3953         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3954         (SVE_HEADER_VL_LENGTH): Likewise.
3955         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3956         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3957         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3958         (SVE_HEADER_SIZE_OFFSET): Likewise.
3959         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3960         (SVE_HEADER_VL_OFFSET): Likewise.
3961         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3962         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3963         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3964         (SVE_HEADER_SIZE): Likewise.
3965         (aarch64_linux_core_read_vq): Add function.
3966         (aarch64_linux_core_read_description): Check for SVE section.
3967
3968 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3969
3970         * aarch64-fbsd-tdep.c
3971         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3972         collect_size.
3973         * aarch64-linux-tdep.c
3974         (aarch64_linux_iterate_over_regset_sections): Likewise.
3975         * alpha-linux-tdep.c
3976         (alpha_linux_iterate_over_regset_sections):
3977         * alpha-nbsd-tdep.c
3978         (alphanbsd_iterate_over_regset_sections): Likewise.
3979         * amd64-fbsd-tdep.c
3980         (amd64fbsd_iterate_over_regset_sections): Likewise.
3981         * amd64-linux-tdep.c
3982         (amd64_linux_iterate_over_regset_sections): Likewise.
3983         * arm-bsd-tdep.c
3984         (armbsd_iterate_over_regset_sections): Likewise.
3985         * arm-fbsd-tdep.c
3986         (arm_fbsd_iterate_over_regset_sections): Likewise.
3987         * arm-linux-tdep.c
3988         (arm_linux_iterate_over_regset_sections): Likewise.
3989         * corelow.c (get_core_registers_cb): Likewise.
3990         (core_target::fetch_registers): Likewise.
3991         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3992         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3993         * gdbarch.h (void): Regenerate.
3994         * gdbarch.sh: Add supply_size and collect_size.
3995         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3996         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3997         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3998         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3999         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4000         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4001         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4002         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4003         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4004         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4005         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4006         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4007         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4008         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4009         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4010         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4011         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4012         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4013         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4014         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4015         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4016         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4017         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4018         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4019         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4020         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4021         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4022         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4023         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4024         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4025
4026 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4027
4028         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4029         with string_printf.
4030
4031 2018-08-10  Keith Seitz  <keiths@redhat.com>
4032
4033         * compile/compile-c-support.c (add_code_header, add_code_footer):
4034         Move into policy class.
4035         (c_push_user_expression, pop_user_expression_nop)
4036         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4037         (compile_program): New host class.
4038         (c_compile_program): New typedef.
4039         (c_compute_porgram): Use c_compile_program.
4040
4041 2018-08-10  Keith Seitz  <keiths@redhat.com>
4042
4043         * compile/compile-internal.h (compile_instance::~compile_instance):
4044         Remove calls to htab_delete.
4045         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4046         * compile.c (compile_instance::compile_instance): Initialize
4047         htab unique pointers.
4048         (compile_instance::get_cached_type, compile_instance::insert_type)
4049         (compile_instance::error_symbol_once): Update for unique_ptr.
4050
4051 2018-08-10  Keith Seitz  <keiths@redhat.com>
4052
4053         * compile/compile-c-symbols.c (struct symbol_error)
4054         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4055         (compile_instance::insert_symbol_error)
4056         (compile_instance::error_symbol_once): Move to ...
4057         * compile/compile.c: ... here.
4058
4059 2018-08-10  Keith Seitz  <keiths@redhat.com>
4060
4061         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4062         instead of `new_compile_instance'.
4063         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4064         Update description.
4065         If the symbol error map is not initialized, create it.
4066         (generate_c_for_for_one_symbol): Do not check/initialize
4067         the symbol error map.
4068         * compile/compile-c-types.c (compile_c_instance): Make a class.
4069         Update all callers.
4070         (compile_instance::compile_instance): Initialize the type cache.
4071         (get_cached_type): New function.
4072         (insert_type): Update description.
4073         (compile_c_instance::m_default_cflags): Define.
4074         (convert_type): Update description.  Use get_cached_type.
4075         (delete_instance): Moved to destructor.
4076         (new_compile_instance): Moved to constructor.
4077         * compile/compile-c.h (compile_c_instance): Make class inheriting
4078         from compile_instance.
4079         <base>: Remove field.
4080         <type_map, symbol_err_map>: Move to base class.
4081         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4082         * compile/compile-internal.h (compile_instance): Make class.
4083         <type_map_t, symbol_err_map_t>: Define.
4084         <fe>: Rename to `m_gcc_fe'.
4085         <scope, block, gcc_target_options>: Add `m_' prefix.
4086         <m_type_map, m_symbol_err_map>: New fields, moved from
4087         compile_c_instance.
4088         <destroy>: Remove.
4089         (convert_type, new_compile_instance): Remove.
4090         * compile/compile.c (cleanup_compile_instance): Remove.
4091         (compile_to_object): Use unique_ptr to eliminate cleanups.
4092         (compile_instance::set_print_callback, compile_instance::version)
4093         (compile_instance::set_verbose)
4094         (compile_instance::set_driver_filename)
4095         (compile_instance::set_triplet_regexp)
4096         (compile_instance::set_arguments)
4097         (compile_instance::set_source_file)
4098         (compile_instance::compile): Define.
4099
4100 2018-08-10  Keith Seitz  <keiths@redhat.com>
4101
4102         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4103         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4104         gcc-c-fe.def to define C plugin.
4105         (delete_instance): Delete `c_plugin'.
4106         (new_compile_instance): Initialize `c_plugin'.
4107         * compile/compile-c.h: Include gcc_c_plugin.h.
4108         (struct compile_c_instance) <c_plugin>: New member.
4109         * gcc-c-plugin.h: New file.
4110         Update all callers with API change.
4111
4112 2018-08-10  Keith Seitz  <keiths@redhat.com>
4113
4114         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4115         (HFILES_NO_SRCDIR): ... to here.
4116         Add compile-internal.h and compile-c.h.
4117         * compile/compile-c-support.c: Include compile-c.h.
4118         * compile/compile-c-symbols.c: Include compile-c.h.
4119         (generate_c_for_variable_locations): Update comment.
4120         * compile/compile-c-types.c: Include compile-c.h.
4121         * compile/compile-c.h: New file -- moved C language declarations
4122         from other files here.
4123         * compile/compile-internal.h: Do not include hashtab.h or
4124         common/enum-flags.h.
4125         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4126         (gcc_convert_symbol, gcc_symbol_address)
4127         (generate_c_for_variable_locations, c_get_mode_for_size)
4128         (c_get_range_decl_name): Definitions moved to compile-c.h.
4129         * compile/compile-loc2c.c: Include compile-c.h.
4130
4131 2018-08-10  Keith Seitz  <keiths@redhat.com>
4132
4133         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4134         (c_symbol_substitution_name): ... this.
4135         Update all callers.
4136
4137 2018-08-10  Keith Seitz  <keiths@redhat.com>
4138
4139         * compile/compile-c-support.c (c_compute_program): Use
4140         unique_xmalloc_ptr to eliminate cleanup.
4141         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4142         Return a unique_xmalloc_ptr and eliminate cleanup.
4143         * compile/compile-internal.h (generate_c_for_variable_locations):
4144         Return unique_xmalloc_ptr and update description.
4145
4146 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4147
4148         * corelow.c (core_target::get_core_register_section): Rename
4149         min_size to section_min_size.
4150
4151 2018-08-09  Jim Wilson  <jimw@sifive.com>
4152
4153         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4154         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4155         * NEWS: Mention new GNU/Linux RISC-V target.
4156         * configure.host: Add riscv*-*-linux*.
4157         * configure.nat: Add riscv*.
4158         * configure.tgt: Add riscv*-*-linux*.
4159         * riscv-linux-nat.c: New file.
4160         * riscv-linux-tdep.c: New file.
4161
4162 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4163
4164         * infrun.c (resume): Make static, add forward declaration.
4165         (proceed): Update header comment.
4166         * infrun.h (resume): Delete declaration.
4167
4168 2018-08-09  Tom Tromey  <tom@tromey.com>
4169
4170         * riscv-tdep.h: Minor formatting fixes.
4171
4172 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4173
4174         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4175         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4176         (test_mkdir_recursive): Likewise.
4177         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4178
4179 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4180
4181         * valarith.c (value_subscripted_rvalue): If an array is not in
4182         memory, and we don't know the upper bound, then we can't know that
4183         the requested element exists or not.
4184
4185 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4186
4187         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4188         (target_options_to_string): Add comment.
4189
4190 2018-08-08  Tom Tromey  <tom@tromey.com>
4191
4192         * unittests/scoped_mmap-selftests.c: Check result of "write".
4193
4194 2018-08-08  Jim Wilson  <jimw@sifive.com>
4195
4196         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4197         (decode_register_index_short): New.
4198         (decode_j_type_insn, decode_cj_type_insn): New.
4199         (decode_b_type_insn, decode_cb_type_insn): New.
4200         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4201         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4202         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4203         is_c_sw_insn instead of is_sw_insn.
4204         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4205         (riscv_software_single_step): New.
4206         * riscv-tdep.h (riscv_software_single_step): Declare.
4207
4208         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4209         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4210
4211 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4212
4213         PR gdb/18050:
4214         * target.c (dispose_inferior): Don't dispose of inferiors that are
4215         already killed.
4216
4217 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4218
4219         * remote.c (remote_target::download_tracepoint): Change char* to
4220         const char*.
4221
4222 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4223
4224         * target.h (target_options_to_string): Return an std::string.
4225         * target.c (str_comma_list_concat_elem): Return void, use
4226         std::string.
4227         (do_option): Likewise.
4228         (target_options_to_string): Return an std::string.
4229         * linux-nat.c (linux_nat_target::wait): Adjust.
4230         * target-debug.h (target_debug_print_options): Adjust.
4231
4232 2018-08-07  Tom Tromey  <tom@tromey.com>
4233
4234         * Makefile.in (CPPFLAGS): New variable.
4235         (INTERNAL_CPPFLAGS): Use it.
4236
4237 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4238
4239         * NEWS: Mention the index cache.
4240
4241 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4242
4243         * common/pathstuff.h (get_standard_cache_dir): New.
4244         * common/pathstuff.c (get_standard_cache_dir): New.
4245         * build-id.h (build_id_to_string): New.
4246         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4247         DEBUG_STR_SUFFIX): Move to here.
4248         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4249         DEBUG_STR_SUFFIX): Move from there.
4250         (write_psymtabs_to_index): Make non-static, add basename
4251         parameter.  Write to temporary files, rename when done.
4252         (save_gdb_index_command): Adjust call to
4253         write_psymtabs_to_index.
4254         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4255         field.
4256         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4257         (get_gdb_index_contents_from_cache): New.
4258         (get_gdb_index_contents_from_cache_dwz): New.
4259         (dwarf2_initialize_objfile): Read index from cache.
4260         (dwarf2_build_psymtabs): Save to index.
4261         * dwarf-index-cache.h: New file.
4262         * dwarf-index-cache.c: New file.
4263         * dwarf-index-write.h: New file.
4264
4265 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4266
4267         * gnulib/aclocal.m4: Re-generate.
4268         * gnulib/config.in: Re-generate.
4269         * gnulib/configure: Re-generate.
4270         * gnulib/import/Makefile.am: Re-generate.
4271         * gnulib/import/Makefile.in: Re-generate.
4272         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4273         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4274         * gnulib/import/m4/mkdir.m4: New file.
4275         * gnulib/import/mkdir.c: New file.
4276         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4277         module.
4278
4279 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4280
4281         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4282         * common/scoped_mmap.c: New file.
4283         * common/scoped_mmap.h (destroy): New method.
4284         (~scoped_mmap, reset): Use destroy.
4285         (scoped_mmap): New move constructor.
4286         (mmap_file): New declaration.
4287         * unittests/scoped_mmap-selftests.c (test_normal,
4288         test_invalid_filename, run_tests): New functions.
4289         (_initialize_scoped_mmap_selftests): Register selftest.
4290
4291 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4292
4293         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4294         (read_gdb_index_from_buffer): ... this.  Remove section
4295         parameter, add buffer parameter.
4296         (get_gdb_index_contents_ftype,
4297         get_gdb_index_contents_dwz_ftype): New typedefs.
4298         (dwarf2_read_gdb_index): Add callback parameters to get the
4299         index contents.
4300         (get_gdb_index_contents_from_section): New.
4301         (dwarf2_initialize_objfile): Update call to
4302         dwarf2_read_gdb_index.
4303
4304 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4305
4306         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4307         (gdb_open_cloexec): Likewise.
4308         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4309         (commandline_from_pid): Likewise.
4310         (linux_xfer_osdata_threads): Likewise.
4311         (linux_xfer_osdata_fds): Likewise.
4312         * ada-lang.c (is_package_name): Likewise.
4313         * auxv.c (procfs_xfer_auxv): Likewise.
4314         * breakpoint.c (print_one_breakpoint_location): Use
4315         uiout::field_fmt.
4316         (print_one_catch_solib): Use string_printf.
4317         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4318         (add_pe_forwarded_sym): Likewise.
4319         * dwarf2read.c (create_type_unit_group): Likewise.
4320         (build_error_marker_type): Likewise.
4321         * infcall.c (get_function_name): Likewise.
4322         * valprint.c (print_converted_chars_to_obstack): Likewise.
4323         * xtensa-tdep.c (xtensa_register_type): Likewise.
4324
4325 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4326
4327         * remote.c (remote_target::download_tracepoint): Fix format
4328         string errors.
4329
4330 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4331
4332         * tracefile.c: Include common/byte-vector.h.
4333         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4334         with trace_regblock_size if needed.  Update uses of buf.
4335
4336 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4337
4338         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4339         std::vector<unsigned char>.
4340         * tracepoint.c (collection_list::collection_list): Remove
4341         m_regs_mask initializer from initializer list.  Resize
4342         m_regs_mask using the largest remote register number.
4343         (collection_list::add_remote_register): Remove size check on
4344         m_regs_mask.  Use at to access element.
4345         (collection_list::stringify): Change type of temp_buf to
4346         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4347         stringify the register mask.  Use pack_hex_byte for the register
4348         mask.
4349
4350 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4351
4352         * tracepoint.h (class collection_list) <add_register>: Remove.
4353         <add_remote_register, add_ax_registers, add_local_register>:
4354         Declare.
4355         <add_memrange>: Add scope parameter.
4356         * tracepoint.c (encode_actions_1): Likewise.
4357         (collection_list::add_register): Rename to ...
4358         (collection_list::add_remote_register): ... this.  Update
4359         comment.
4360         (collection_list::add_ax_registers, add_local_register): New
4361         methods.
4362         (collection_list::add_memrange): Add scope parameter.  Call
4363         add_local_register instead of add_register.
4364         (finalize_tracepoint_aexpr): New function.
4365         (collection_list::collect_symbol): Update calls to add_memrange.
4366         Call add_local_register instead of add_register.  Call
4367         add_ax_registers.  Call finalize_tracepoint_aexpr.
4368         (encode_actions_1): Get remote regnos for $reg action.  Call
4369         add_remote_register, add_ax_registers, and add_local_register.
4370         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4371         (validate_actionline): Call finalize_tracepoint_aexpr.
4372
4373 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4374
4375         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4376         Replace array buf with gdb::char_vector buf, of size
4377         get_remote_packet_size ().  Replace references to buf and
4378         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4379         and xsnprintf with snprintf.  Raise errors if the buffer is too
4380         small.
4381
4382 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4383
4384         * remote.c (remote_target::download_tracepoint): Fix the has_more
4385         predicate in the QTDP action list iteration.
4386
4387 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4388
4389         * remote.c (remote_target::download_tracepoint): Fix indentation
4390         in for block.
4391
4392 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4393
4394         * proc-api.c (_initialize_proc_api): Remove c, unused.
4395         * procfs.c (procfs_init_inferior): Remove signals, unused.
4396         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4397         unused.
4398
4399 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4400             Andrew Burgess  <andrew.burgess@embecosm.com>
4401
4402         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4403         'W_STOPCODE (0)' as this could be ambiguous.
4404
4405 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4406
4407         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4408         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4409         "ai_socktype").
4410
4411 2018-08-02  Tom Tromey  <tom@tromey.com>
4412
4413         PR symtab/16842.
4414         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4415         symbols.
4416         (process_structure_scope): Likewise.
4417
4418 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4419
4420         PR gdb/22629:
4421         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4422         kill inferior.
4423
4424 2018-08-02  Tom Tromey  <tom@tromey.com>
4425
4426         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4427         (darwin_suspend_inferior, darwin_resume_inferior)
4428         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4429         (darwin_check_new_threads): Check result of get_darwin_inferior.
4430
4431 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4432
4433         GDB 8.1.1 released.
4434
4435 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4436
4437         * varobj.c (varobj_get_path_expr_parent): Report an error if
4438         parent is a dynamic varobj.
4439
4440 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4441
4442         * gnulib/aclocal.m4: Re-generate.
4443         * gnulib/config.in: Re-generate.
4444         * gnulib/configure: Re-generate.
4445         * gnulib/import/Makefile.in: Re-generate.
4446         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4447         * gnulib/import/m4/onceonly.m4: Re-generate.
4448
4449 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4450
4451         * target-descriptions.c (struct xml_test_tdesc): New.
4452         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4453         (record_xml_tdesc): Update.
4454         (maintenance_check_xml_descriptions): Update.
4455         * target-descriptions.h (record_xml_tdesc): Update comment.
4456
4457 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4458
4459         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4460         checking array bounds are defined.
4461
4462 2018-07-30  Tom Tromey  <tom@tromey.com>
4463
4464         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4465         irreflexivity violation.
4466
4467 2018-07-30  Tom Tromey  <tom@tromey.com>
4468
4469         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4470         * value.c (unpack_long): Remove lint code.
4471         * valops.c (value_ind): Remove lint code.
4472         * valarith.c (value_x_binop, value_x_unop, value_equal)
4473         (value_pos): Remove lint code.
4474
4475 2018-07-28  Tom de Vries  <tdevries@suse.de>
4476
4477         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4478         with undefined upper bound as <optimized out>.
4479
4480 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4481
4482         * gcore.in: Rename variable "name" to "prefix".  Expand
4483         "usage" text.
4484
4485 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4486
4487         * windows-nat.c (windows_nat_target::create_inferior): Update to
4488         call close() in global namespace.
4489
4490 2018-07-26  Tom Tromey  <tom@tromey.com>
4491
4492         * dwarf-index-write.c (add_address_entry): Don't add objfile
4493         offsets.
4494         * dbxread.c (find_stab_function): Rename from
4495         find_stab_function_addr.  Return a bound_minimal_symbol.
4496         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4497         Don't add objfile offsets.
4498         (end_psymtab): Use raw_text_low, raw_text_high,
4499         MSYMBOL_VALUE_RAW_ADDRESS.
4500         (read_ofile_symtab): Update.
4501         (process_one_symbol): Update.
4502         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4503         offsets.
4504         (dw2_relocate): Remove.
4505         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4506         searching addrmap.
4507         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4508         Update.
4509         (process_psymtab_comp_unit_reader, add_partial_symbol)
4510         (add_partial_subprogram, dwarf2_ranges_read): Update.
4511         (load_partial_dies): Update.
4512         (add_address_entry): Don't add objfile offsets.
4513         (dwarf2_build_include_psymtabs): Update.
4514         (create_addrmap_from_aranges): Don't add objfile offsets.
4515         (dw2_find_pc_sect_compunit_symtab): Update.
4516         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4517         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4518         Update.
4519         (parse_partial_symbols): Don't add objfile offsets.  Use
4520         raw_text_low, raw_text_high.  Update.
4521         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4522         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4523         or call 'relocate' quick function.  Clear psymbol_map.
4524         * psympriv.h (struct partial_symbol) <address>: Add section
4525         offset.
4526         <set_unrelocated_address>: Rename from set_address.
4527         <raw_text_low, raw_text_high>: New methods.
4528         <text_low, text_high>: Add objfile parameter.
4529         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4530         set_unrelocated_address.
4531         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4532         (find_pc_psymbol): Update.
4533         (fixup_psymbol_section, relocate_psymtabs): Remove.
4534         (dump_psymtab, psym_functions): Update.
4535         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4536         parameter.
4537         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4538         (start_psymtab_common): Update.
4539         * symfile-debug.c (debug_qf_relocate): Remove.
4540         (debug_sym_quick_functions): Update.
4541         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4542         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4543         Update.
4544
4545 2018-07-26  Tom Tromey  <tromey@redhat.com>
4546
4547         * dbxread.c (end_psymtab): Use text_high_valid and
4548         text_low_valid.
4549         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4550         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4551         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4552         Update comment.
4553         <text_low_valid, text_high_valid>: New fields.
4554         <set_text_low, set_text_high>: Update.
4555         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4556
4557 2018-07-26  Tom Tromey  <tom@tromey.com>
4558
4559         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4560         Update.
4561         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4562         textlow and texthigh fields.
4563         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4564         Update.
4565         * mdebugread.c (parse_lines, parse_partial_symbols)
4566         (psymtab_to_symtab_1): Update.
4567         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4568         Rename fields.  Update comment.  Now private.
4569         <text_low, text_high, set_text_low, set_text_high>: New methods.
4570         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4571         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4572         (start_psymtab_common, maintenance_info_psymtabs)
4573         (maintenance_check_psymtabs): Update.
4574         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4575         texthigh fields.
4576         (scan_xcoff_symtab): Update.
4577
4578 2018-07-26  Tom Tromey  <tromey@redhat.com>
4579
4580         * psympriv.h (struct partial_symbol) <unrelocated_address,
4581         address, set_address>: New methods.
4582         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4583         (fixup_psymbol_section, relocate_psymtabs): Update.
4584         (print_partial_symbols): Add 'objfile' parameter.  Update.
4585         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4586         Update.
4587
4588 2018-07-26  Tom Tromey  <tom@tromey.com>
4589
4590         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4591         (debug_names::write_psymbols): Update.
4592         * psympriv.h (struct partial_symbol): Derive from
4593         general_symbol_info.
4594         <obj_section>: New method.
4595         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4596         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4597         (find_pc_sect_psymbol, fixup_psymbol_section)
4598         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4599         (print_partial_symbols, recursively_search_psymtabs)
4600         (compare_psymbols, psymbol_hash, psymbol_compare)
4601         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4602         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4603
4604 2018-07-26  Tom Tromey  <tromey@redhat.com>
4605
4606         * dbxread.c (end_psymtab): Remove dead code.
4607
4608 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4609
4610         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4611         DWARF unwinders are disabled.
4612         * dwarf2-frame.c: Add dwarf2read.h include.
4613         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4614         disabled.
4615         (dwarf2_frame_unwinders_enabled_p): Define.
4616         (show_dwarf_unwinders_enabled_p): New function.
4617         (_initialize_dwarf2_frame): Register switch to control DWARF
4618         unwinder use.
4619         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4620         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4621         (show_dwarf_cmdlist): Remove static keyword.
4622         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4623         (show_dwarf_cmdlist): Declare.
4624         * NEWS: Document new feature.
4625
4626 2018-07-26  Tom de Vries  <tdevries@suse.de>
4627
4628         PR breakpoints/23366
4629         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4630
4631 2018-07-26  Tom de Vries  <tdevries@suse.de>
4632
4633         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4634         DW_AT_count can't be translated to a dynamic prop.
4635
4636 2018-07-25  Tom de Vries  <tdevries@suse.de>
4637
4638         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4639         try/catch.
4640
4641 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4642
4643         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4644
4645 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4646
4647         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4648
4649 2018-07-24  Keith Seitz  <keiths@redhat.comt
4650
4651         PR symtab/23010
4652         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4653         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4654         instead of add_symbol_to_list.
4655         (read_file_scope): Call prepare_one_comp_unit before reading
4656         any other DIEs.
4657
4658 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4659
4660         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4661
4662 2018-07-24  Tom Tromey  <tom@tromey.com>
4663
4664         * utils.c (malloc, realloc, free): Don't declare.
4665         * configure, config.in: Rebuild.
4666         * configure.ac: Don't check for declarations of free, malloc, or
4667         realloc.
4668
4669 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4670
4671         * aarch64-linux-nat.c
4672         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4673         variable.
4674         * arm-linux-nat.c (fetch_regs): Likewise.
4675         (store_regs): Likewise.
4676         (fetch_vfp_regs): Likewise.
4677         (store_vfp_regs): Likewise.
4678         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4679         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4680         (arm_linux_nat_target::insert_watchpoint): Likewise.
4681         (arm_linux_nat_target::remove_watchpoint): Likewise.
4682         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4683         Likewise.
4684         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4685         Likewise.
4686         * ppc-linux-nat.c (fetch_register): Likewise.
4687         (fetch_all_gp_regs): Likewise.
4688         (fetch_ppc_registers): Likewise.
4689         (store_all_gp_regs): Likewise.
4690         (store_ppc_registers): Likewise.
4691         (hwdebug_insert_point): Likewise.
4692         (can_use_watchpoint_cond_accel): Likewise.
4693         * remote-sim.c (gdb_os_write_stdout): Likewise.
4694
4695 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4696             Tom Tromey  <tom@tromey.com>
4697
4698         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4699         test for it.
4700         * configure: Rebuild.
4701
4702 2018-07-22  Tom Tromey  <tom@tromey.com>
4703
4704         * regformats/regdat.sh: Define xmltarget_${name} inside
4705         #ifndef IN_PROCESS_AGENT.
4706
4707 2018-07-22  Tom Tromey  <tom@tromey.com>
4708
4709         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4710
4711 2018-07-22  Tom Tromey  <tom@tromey.com>
4712
4713         * symfile.c (reread_symbols): Notify iter, not objfile.
4714
4715 2018-07-22  Tom Tromey  <tom@tromey.com>
4716
4717         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4718         Use arch_ops.
4719         (ravenscar_thread_target::prepare_to_store): Likewise.
4720
4721 2018-07-22  Tom Tromey  <tom@tromey.com>
4722
4723         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4724         unused variable.  Call value_fetch_lazy when needed.
4725         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4726         Remove unused variable.  Call value_fetch_lazy when needed.
4727
4728 2018-07-22  Tom Tromey  <tom@tromey.com>
4729
4730         * m32c-tdep.c (mark_dma): Return void.
4731         (make_regs): Remove unused declarations.
4732
4733 2018-07-22  Tom Tromey  <tom@tromey.com>
4734
4735         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4736         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4737         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4738         bkscm_get_valid_block_smob_arg_unsafe for effect.
4739
4740 2018-07-22  Tom Tromey  <tom@tromey.com>
4741
4742         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4743         value_type.
4744
4745 2018-07-22  Tom Tromey  <tom@tromey.com>
4746
4747         * windows-nat.c (saved_context): Conditionally define.
4748         * remote.c (remote_target::remote_btrace_maybe_reopen):
4749         Conditionally declare "warned".
4750         * inflow.c (sigquit_ours): Conditionally define.
4751         (new_tty): Move "tty" declaration inside #if.
4752         * guile/guile.c (guile_datadir): Conditionally define.
4753         * charset.c (set_be_le_names): Move some declarations inside #if.
4754         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4755         #if.
4756         (parse_xml_btrace_conf): Likewise.
4757
4758 2018-07-22  Tom Tromey  <tom@tromey.com>
4759
4760         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4761
4762 2018-07-22  Tom Tromey  <tom@tromey.com>
4763
4764         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4765         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4766         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4767         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4768         * stack.c (frame_apply_level_command): Remove unused variable.
4769         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4770         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4771         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4772         unused variable.
4773         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4774         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4775         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4776         variable.
4777         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4778         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4779         variable.
4780         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4781         Remove unused variable.
4782         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4783         variable.
4784         * common/tdesc.c (print_xml_feature::visit): Remove unused
4785         variable.
4786         * compile/compile-object-load.c (store_regs): Remove unused
4787         variables.
4788         * complaints.c (clear_complaints): Remove unused variable.
4789         * corelow.c (core_target_open): Remove unused variable.
4790         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4791         variable.
4792         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4793         variable.
4794         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4795         variable.
4796         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4797         variable.
4798         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4799         variable.
4800         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4801         variable.
4802         * ia64-tdep.c (examine_prologue): Remove unused variable.
4803         * infcall.c (run_inferior_call): Remove unused variable.
4804         * inferior.c (exit_inferior): Remove unused variable.
4805         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4806         * linespec.c (decode_line_2): Remove unused variable.
4807         * linux-nat.c (super_close): Remove.
4808         * linux-tdep.c (linux_info_proc): Remove unused variable.
4809         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4810         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4811         Remove unused variable.
4812         * parse.c (find_minsym_type_and_address): Remove unused variable.
4813         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4814         variable.
4815         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4816         variable.
4817         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4818         variables.
4819         * record-btrace.c (record_btrace_target::store_registers): Remove
4820         unused variable.
4821         (cmd_show_record_btrace_cpu): Remove unused variable.
4822         * riscv-tdep.c (riscv_register_reggroup_p)
4823         (riscv_push_dummy_call, riscv_return_value): Remove unused
4824         variable.
4825         * rust-exp.y (literal): Remove unused variable.
4826         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4827         unused variable.
4828         <STRUCTOP_ANONYMOUS>: Likewise.
4829         * s390-linux-tdep.c (s390_linux_init_abi_31)
4830         (s390_linux_init_abi_64): Remove unused variable.
4831         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4832         (file_select_thread, net_windows_open, _initialize_ser_windows):
4833         Remove unused variables.
4834         * symtab.c (find_pc_sect_line): Remove unused variable.
4835         * target-memory.c (compute_garbled_blocks): Remove unused
4836         variable.
4837         (target_write_memory_blocks): Remove unused variable.
4838         * target.c (target_stack::unpush): Remove unused variables.
4839         * tracepoint.c (start_tracing, all_tracepoint_actions)
4840         (merge_uploaded_trace_state_variables)
4841         (print_one_static_tracepoint_marker): Remove unused variable.
4842         * unittests/basic_string_view/element_access/char/1.cc (test01):
4843         Remove unused variable.
4844         * windows-nat.c (windows_continue, windows_add_all_dlls)
4845         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4846         Remove unused variables.
4847
4848 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4849
4850         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4851         attr_profile in HAVE_ELF.
4852         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4853         HAVE_ELF.
4854
4855 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4856
4857         * frame.c (frame_register_unwind): Change parameter name.
4858         (frame_unwind_register): Likewise.
4859         (frame_unwind_register_value): Likewise.
4860         (frame_unwind_register_signed): Likewise.
4861         (frame_unwind_register_unsigned): Likewise.
4862         * frame.h (frame_register_unwind): Likewise.
4863         (frame_unwind_register): Likewise.
4864         (frame_unwind_register_value): Likewise.
4865         (frame_unwind_register_signed): Likewise.
4866         (frame_unwind_register_unsigned): Likewise.
4867         (frame_unwind_arch): Likewise.
4868
4869 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4870
4871         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4872         ISA maintenance.
4873
4874 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4875
4876         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4877         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4878         hand.
4879
4880 2018-07-20  Keith Seitz  <keiths@redhat.com>
4881
4882         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4883         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4884         m_compunit_symtab, m_language>: Add "m_" prefix.
4885         Update all uses.
4886         * buildsym.c: Update all uses.
4887
4888 2018-07-20  Tom Tromey  <tom@tromey.com>
4889
4890         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4891         * buildsym.h (record_line_ftype): Remove typedef.
4892
4893 2018-07-20  Tom Tromey  <tom@tromey.com>
4894
4895         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4896         (end_expandable_symtab): Likewise.
4897         (end_symtab_get_static_block): Likewise.
4898         (end_symtab_from_static_block): Likewise.
4899         * buildsym-legacy.c (augment_type_symtab): Remove.
4900         (end_expandable_symtab): Remove.
4901         (end_symtab_get_static_block): Remove.
4902         (end_symtab_from_static_block): Remove.
4903
4904 2018-07-20  Tom Tromey  <tom@tromey.com>
4905
4906         * dwarf2read.c: Include buildsym.h.
4907         (struct dwarf2_cu) <builder>: New method.
4908         (fixup_go_packaging): Update.
4909         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4910         use scoped_free_pendings.
4911         (using_directives): Add "cu" parameter, remove "language".
4912         (read_import_statement, setup_type_unit_groups, )
4913         (read_func_scope, read_lexical_block_scope)
4914         (dwarf2_record_block_ranges, read_namespace): Update.
4915         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4916         (lnp_state_machine::handle_end_sequence): Update.
4917         (class lnp_state_machine) <m_cu>: New member.
4918         <m_record_line_callback>: Remove.
4919         <m_currently_recording_lines>: New member.
4920         (lnp_state_machine::handle_set_file): Update.
4921         (noop_record_line): Remove.
4922         (dwarf_record_line_p): Add cu parameter.
4923         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4924         (lnp_state_machine::record_line)
4925         (lnp_state_machine::lnp_state_machine)
4926         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4927         (dwarf_decode_lines): Update.
4928         (dwarf2_start_subfile): Add cu parameter.
4929         (dwarf2_start_symtab, new_symbol): Update.
4930         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4931         Remove dwarf2_per_objfile parameter.
4932         (dwarf_decode_macros): Update.
4933
4934 2018-07-20  Tom Tromey  <tom@tromey.com>
4935
4936         * stabsread.c (define_symbol): Update.
4937         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4938         * dwarf2read.c (new_symbol): Update.
4939         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4940         * cp-namespace.c: Include buildsym.h.
4941         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4942         * buildsym-legacy.c (get_buildsym_compunit): New function.
4943
4944 2018-07-20  Tom Tromey  <tom@tromey.com>
4945
4946         * xcoffread.c: Include buildsym-legacy.h.
4947         * windows-nat.c: Include buildsym-legacy.h.
4948         * stabsread.c: Include buildsym-legacy.h.
4949         * mdebugread.c: Include buildsym-legacy.h.
4950         * buildsym-legacy.h: New file.
4951         * buildsym-legacy.c: New file, from buildsym.c.
4952         * go32-nat.c: Include buildsym-legacy.h.
4953         * dwarf2read.c: Include buildsym-legacy.h.
4954         * dbxread.c: Include buildsym-legacy.h.
4955         * cp-namespace.c: Include buildsym-legacy.h.
4956         * coffread.c: Include buildsym-legacy.h.
4957         * buildsym.h: Move some contents to buildsym-legacy.h.
4958         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4959         buildsym-legacy.c.
4960         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4961
4962 2018-07-20  Tom Tromey  <tom@tromey.com>
4963
4964         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4965         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4966         (buildsym_compunit::buildsym_compunit)
4967         (buildsym_compunit::~buildsym_compunit)
4968         (buildsym_compunit::get_macro_table): Define.
4969
4970 2018-07-20  Tom Tromey  <tom@tromey.com>
4971
4972         * buildsym.c (reset_symtab_globals): Remove.
4973         (buildsym_compunit::end_symtab_from_static_block): Update.
4974         (buildsym_compunit::augment_type_symtab): Update.
4975         (end_symtab_from_static_block): Call free_buildsym_compunit.
4976         (augment_type_symtab, end_symtab, end_expandable_symtab):
4977         Likewise.
4978
4979 2018-07-20  Tom Tromey  <tom@tromey.com>
4980
4981         * arch-utils.c: Do not include buildsym.h.
4982         * mipsread.c: Do not include buildsym.h.
4983         * machoread.c: Do not include buildsym.h.
4984         * elfread.c: Do not include buildsym.h.
4985
4986 2018-07-20  Tom Tromey  <tom@tromey.com>
4987
4988         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4989         initialization.
4990         (buildsym_compunit): Add new constructor.
4991         (struct buildsym_compunit) <get_last_source_file, finish_block,
4992         record_block_range, start_subfile, patch_subfile_names,
4993         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4994         set_last_source_start_addr, get_last_source_start_addr,
4995         get_local_using_directives, set_local_using_directives,
4996         get_global_using_directives, outermost_context_p,
4997         get_current_context_stack, get_context_stack_depth,
4998         get_current_subfile, get_local_symbols, get_file_symbols,
4999         get_global_symbols, record_debugformat, record_producer,
5000         push_context, pop_context, end_symtab_get_static_block,
5001         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5002         New public methods.
5003         <record_pending_block, finish_block_internal, make_blockvector,
5004         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5005         private methods.
5006         Update all users.
5007
5008 2018-05-22  Tom Tromey  <tom@tromey.com>
5009
5010         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5011         parameter.
5012         (finish_block_internal): Update.
5013
5014 2018-07-20  Tom Tromey  <tom@tromey.com>
5015
5016         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5017         parameter.
5018         (finish_block_internal): Update.
5019
5020 2018-07-20  Tom Tromey  <tom@tromey.com>
5021
5022         * buildsym.h (EXTERN): Don't define or undef.
5023         * buildsym.c (EXTERN): Don't define.
5024
5025 2018-07-20  Tom Tromey  <tom@tromey.com>
5026
5027         * buildsym.c: Remove TODO comment.
5028
5029 2018-07-20  Tom Tromey  <tom@tromey.com>
5030
5031         * coffread.c (coff_symtab_read): Update.
5032         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5033         (xcoff_new_init): Update.
5034         * mipsread.c (mipscoff_new_init): Update.
5035         * mdebugread.c (mdebug_build_psymtabs): Update.
5036         * elfread.c (elf_new_init): Update.
5037         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5038         Update.
5039         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5040         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5041         (stabsect_build_psymtabs): Update.
5042         * buildsym.h (buildsym_init): Don't declare.
5043         * buildsym.c: Update comment.
5044         (prepare_for_building): Remove.
5045         (start_symtab, restart_symtab): Update.
5046         (reset_symtab_globals): Update comment.
5047         (buildsym_init): Remove.
5048
5049 2018-07-20  Tom Tromey  <tom@tromey.com>
5050
5051         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5052         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5053         (read_enum_type, common_block_start, common_block_end)
5054         (cleanup_undefined_types_1, finish_global_stabs): Update.
5055         * mdebugread.c (psymtab_to_symtab_1): Update.
5056         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5057         (read_lexical_block_scope, new_symbol): Update.
5058         * dbxread.c (process_one_symbol): Update.
5059         * coffread.c (coff_symtab_read, process_coff_symbol)
5060         (coff_read_enum_type): Update.
5061         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5062         declare.
5063         (get_local_symbols, get_file_symbols, get_global_symbols): New
5064         functions.
5065         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5066         m_global_symbols.
5067         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5068         (~scoped_free_pendings): Update.
5069         (finish_block, prepare_for_building, reset_symtab_globals)
5070         (end_symtab_get_static_block, end_symtab_with_blockvector)
5071         (augment_type_symtab, push_context): Update.
5072         (get_local_symbols, get_file_symbols, get_global_symbols): New
5073         functions.
5074         (buildsym_init): Update.
5075
5076 2018-07-20  Tom Tromey  <tom@tromey.com>
5077
5078         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5079         (process_full_type_unit): Likewise.
5080         (dwarf2_start_symtab): Set list_in_scope.
5081
5082 2018-07-20  Tom Tromey  <tom@tromey.com>
5083
5084         * dwarf2read.c (process_psymtab_comp_unit_reader)
5085         (build_type_psymtabs_reader): Do not set list_in_scope.
5086
5087 2018-07-20  Tom Tromey  <tom@tromey.com>
5088
5089         * buildsym.c (free_pendings): Remove.
5090         (add_symbol_to_list, scoped_free_pendings)
5091         (finish_block_internal, buildsym_init): Update.
5092
5093 2018-07-20  Tom Tromey  <tom@tromey.com>
5094
5095         * xcoffread.c (read_xcoff_symtab): Update.
5096         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5097         Update.
5098         * dbxread.c (process_one_symbol): Update.
5099         * coffread.c (coff_symtab_read): Update.
5100         * buildsym.h (finish_block): Update.
5101         * buildsym.c (finish_block): Remove "listhead" argument.
5102         (end_symtab_get_static_block): Update.
5103
5104 2018-07-20  Tom Tromey  <tom@tromey.com>
5105
5106         * buildsym.h (class scoped_free_pendings): Remove constructor.
5107         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5108         method.
5109         <m_pending_block_obstack, m_pending_blocks>: New members.
5110         (pending_block_obstack, pending_blocks): Remove.
5111         (scoped_free_pendings::scoped_free_pendings): Default.
5112         (~scoped_free_pendings): Update.
5113         (free_pending_blocks): Remove.
5114         (finish_block_internal, record_pending_block, make_blockvector)
5115         (end_symtab_get_static_block, augment_type_symtab, push_context)
5116         (buildsym_init): Update.
5117
5118 2018-07-20  Tom Tromey  <tom@tromey.com>
5119
5120         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5121         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5122         members.
5123         (pending_addrmap, pending_addrmap_obstack)
5124         (pending_addrmap_interesting): Remove.
5125         (scoped_free_pendings, record_block_range, make_blockvector)
5126         (prepare_for_building, reset_symtab_globals, buildsym_init):
5127         Update.
5128
5129 2018-07-20  Tom Tromey  <tom@tromey.com>
5130
5131         * xcoffread.c (process_linenos): Update.
5132         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5133         * mdebugread.c (psymtab_to_symtab_1): Update.
5134         * dwarf2read.c (setup_type_unit_groups)
5135         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5136         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5137         * dbxread.c (process_one_symbol): Update.
5138         * coffread.c (coff_symtab_read, enter_linenos)
5139         (process_coff_symbol): Update.
5140         * buildsym.h (current_subfile): Don't declare.
5141         (get_current_subfile): Declare.
5142         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5143         member.
5144         (start_subfile, free_buildsym_compunit, push_subfile)
5145         (prepare_for_building, start_symtab): Update.
5146         (get_current_subfile): New function.
5147
5148 2018-07-20  Tom Tromey  <tom@tromey.com>
5149
5150         * coffread.c (coff_symtab_read): Update.
5151         * xcoffread.c (read_xcoff_symtab): Update.
5152         * dwarf2read.c (new_symbol): Update.
5153         (read_func_scope, read_lexical_block_scope): Update.
5154         * dbxread.c (process_one_symbol): Update.
5155         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5156         (outermost_context_p): Remove macro.
5157         (outermost_context_p, get_current_context_stack)
5158         (get_context_stack_depth): Declare.
5159         (pop_context): Return struct context_stack.
5160         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5161         member.
5162         (context_stack_size): Remove.
5163         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5164         (prepare_for_building, end_symtab_get_static_block)
5165         (augment_type_symtab, push_context): Update.
5166         (pop_context): Return struct context_stack.
5167         (outermost_context_p, get_current_context_stack)
5168         (get_context_stack_depth): New functions.
5169         (buildsym_init): Update.
5170
5171 2018-07-20  Tom Tromey  <tom@tromey.com>
5172
5173         * rust-exp.y: Now a pure parser.  Update all rules.
5174         (%union): Move earlier.
5175         (current_parser, work_obstack): Remove globals.
5176         (rust_parser, ~rust_parser): Update.
5177         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5178         lex_character, lex_number, lex_string, lex_identifier,
5179         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5180         convert_name, convert_params_to_expression,
5181         convert_ast_to_expression, ast_basic_type, ast_operation,
5182         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5183         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5184         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5185         ast_array_type, ast_slice_type, ast_reference_type,
5186         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5187         (rust_parse): Update.
5188         (rustyyerror, rustyylex): Add parser parameter.
5189         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5190         (rust_lex_stringish_test, rust_lex_test_sequence)
5191         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5192         (rust_lex_test_push_back, rust_lex_tests): Update.
5193
5194 2018-07-19  Pedro Alves  <palves@redhat.com>
5195
5196         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5197         gdb::unique_xmalloc_ptr.
5198         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5199         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5200         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5201         copy-initialization.
5202         * guile/scm-pretty-print.c (ppscm_print_children): Use
5203         gdb::unique_xmalloc_ptr instead of cleanups.
5204         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5205         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5206         gdb::unique_xmalloc_ptr.
5207         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5208         Adjust to use gdb::unique_xmalloc_ptr.
5209         * guile/scm-utils.c (extract_arg): Adjust.
5210         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5211         gdb::unique_xmalloc_ptr instead of a cleanup.
5212
5213 2018-07-19  Tom Tromey  <tom@tromey.com>
5214
5215         * utils.c (do_value_free_to_mark)
5216         (make_cleanup_value_free_to_mark): Remove.
5217         * utils.h (make_cleanup_value_free_to_mark): Remove.
5218
5219 2018-07-19  Pedro Alves  <palves@redhat.com>
5220
5221         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5222         forwarding reference.
5223
5224 2018-07-18  Pedro Alves  <palves@redhat.com>
5225
5226         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5227         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5228         cleanup.
5229
5230 2018-07-18  Pedro Alves  <palves@redhat.com>
5231
5232         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5233         exceptions.
5234         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5235         (gdbscm_wrap): New.
5236         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5237         directly instead of a cleanup.
5238         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5239         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5240         (vlscm_binop_gdbthrow): New, factored out from ...
5241         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5242         (vlscm_rich_compare): Use gdbscm_wrap.
5243         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5244         instead of a cleanup.
5245         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5246         cleanup.
5247         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5248         Use xfree directly instead of a cleanup.
5249         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5250         Adjust to use gdbscm_wrap and scoped_value_mark.
5251         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5252         (gdbscm_value_address, gdbscm_value_dereference)
5253         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5254         scoped_value_mark.
5255         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5256         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5257         scoped_value_mark.
5258         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5259         gdbscm_wrap and scoped_value_mark.
5260         (gdbscm_value_to_string): Use xfree directly instead of a
5261         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5262         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5263         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5264         scoped_value_mark.
5265         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5266         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5267         scoped_value_mark.
5268         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5269         gdbscm_wrap.
5270
5271 2018-07-18  Tom de Vries  <tdevries@suse.de>
5272
5273         * findvar.c (default_read_var_value): Also resolve dynamic type for
5274         LOC_OPTIMIZED_OUT vars.
5275
5276 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5277
5278         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5279         decoding.
5280
5281 2018-07-17  Tom Tromey  <tom@tromey.com>
5282
5283         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5284         (compute_enum_list, pascm_set_param_value_x)
5285         (gdbscm_parameter_value): Update.
5286         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5287         (gdbscm_scm_to_host_string): Update.
5288         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5289         Update.
5290         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5291         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5292         * guile/scm-string.c (gdbscm_scm_to_string): Return
5293         unique_xmalloc_ptr.
5294         (gdbscm_scm_to_host_string): Likewise.
5295
5296 2018-07-17  Tom Tromey  <tom@tromey.com>
5297
5298         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5299         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5300         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5301         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5302         unique_xmalloc_ptr.
5303
5304 2018-07-17  Tom Tromey  <tom@tromey.com>
5305
5306         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5307         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5308         Update.
5309         * guile/scm-cmd.c (cmdscm_function): Update.
5310         * guile/scm-pretty-print.c
5311         (ppscm_print_exception_unless_memory_error): Update.
5312         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5313         Return unique_xmalloc_ptr.
5314
5315 2018-07-17  Tom Tromey  <tom@tromey.com>
5316
5317         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5318         Use string_printf.
5319
5320 2018-07-17  Jim Wilson  <jimw@sifive.com>
5321
5322         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5323         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5324         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5325         unecessary braces after EF_RISCV_RVC test.  Delete call to
5326         set_gdbarch_decr_pc_after_break.
5327
5328         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5329         RISCV_LAST_FP_REGNUM + 1.
5330         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5331
5332 2018-07-17  Tom Tromey  <tom@tromey.com>
5333
5334         * configure.ac: Remove --disable-gdbcli.
5335         * configure: Rebuild.
5336         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5337         (SUBDIR_CLI_CFLAGS): Remove.
5338         (SFILES): Use SUBDIR_CLI_SRCS.
5339         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5340
5341 2018-07-17  Tom Tromey  <tom@tromey.com>
5342
5343         PR gdb/18624:
5344         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5345
5346 2018-07-16  Jim Wilson  <jimw@sifive.com>
5347
5348         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5349
5350 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5351
5352         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5353         variable.
5354         (libunwind_frame_sniffer): Likewise.
5355         (libunwind_frame_prev_register): Likewise.
5356         (libunwind_sigtramp_frame_sniffer): Likewise.
5357         * ia64-tdep.c (ia64_access_reg): Likewise.
5358         (ia64_access_rse_reg): Likewise.
5359         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5360         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5361
5362 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5363
5364         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5365
5366 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5367
5368         * remote-sim.c (gdbsim_target::close,
5369         gdbsim_target::mourn_inferior): Remove unused variables.
5370
5371 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5372
5373         * ia64-tdep.c (ktab_buf): New global.
5374         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5375         (get_kernel_table): Adjust.
5376
5377 2018-07-16  Tom Tromey  <tom@tromey.com>
5378
5379         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5380         * dwarf2read.c (using_directives, new_symbol): Use
5381         outermost_context_p.
5382         * dbxread.c (process_one_symbol): Use outermost_context_p.
5383         * coffread.c (coff_symtab_read): Use outermost_context_p.
5384
5385 2018-07-16  Tom Tromey  <tom@tromey.com>
5386
5387         * dwarf2read.c (using_directives, read_func_scope)
5388         (read_lexical_block_scope): Update.
5389         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5390         * buildsym.h (local_using_directives, global_using_directives):
5391         Don't declare.
5392         (get_local_using_directives, set_local_using_directives)
5393         (get_global_using_directives): Declare.
5394         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5395         m_global_using_directives>: New members.
5396         (finish_block_internal, prepare_for_building)
5397         (reset_symtab_globals, end_symtab_get_static_block)
5398         (push_context): Update.
5399         (get_local_using_directives, set_local_using_directives)
5400         (get_global_using_directives): New functions.
5401         (buildsym_init): Update.
5402
5403 2018-07-16  Tom Tromey  <tom@tromey.com>
5404
5405         * xcoffread.c (xcoff_initial_scan): Don't call
5406         free_pending_blocks.
5407         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5408         * buildsym.h (class scoped_free_pendings): Add constructor.
5409         (free_pending_blocks): Don't declare.
5410         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5411         (free_pending_blocks): Now static.
5412
5413 2018-07-16  Tom Tromey  <tom@tromey.com>
5414
5415         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5416         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5417         member.
5418         (struct subfile_stack): Remove.
5419         (subfile_stack): Remove.
5420         (push_subfile, pop_subfile, buildsym_init): Update.
5421
5422 2018-07-16  Tom Tromey  <tom@tromey.com>
5423
5424         * buildsym.c (push_subfile): Use gdb_assert.
5425         (pop_subfile): Use gdb_assert.
5426
5427 2018-07-16  Tom Tromey  <tom@tromey.com>
5428
5429         * buildsym.h (merge_symbol_lists): Remove.
5430         * buildsym.c (merge_symbol_lists): Remove.
5431
5432 2018-07-16  Tom Tromey  <tom@tromey.com>
5433
5434         * stabsread.c (scan_file_globals): Update comment.
5435         * stabsread.h (scan_file_globals): Move from buildsym.h.
5436         * buildsym.h (scan_file_globals): Move to stabsread.h.
5437
5438 2018-07-16  Tom Tromey  <tom@tromey.com>
5439
5440         * xcoffread.c (xcoff_new_init): Update.
5441         * mipsread.c (mipscoff_new_init): Update.
5442         * mdebugread.c (mdebug_build_psymtabs): Update.
5443         * elfread.c (elf_new_init): Update.
5444         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5445         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5446         * buildsym.h (buildsym_new_init): Don't declare.
5447         * buildsym.c (buildsym_new_init): Remove.
5448
5449 2018-07-16  Tom Tromey  <tom@tromey.com>
5450
5451         * stabsread.h (within_function): Move from buildsym.h.
5452         * stabsread.c (start_stabs): Clear within_function.
5453         * coffread.c (coff_start_symtab): Clear within_function.
5454         * buildsym.h (within_function): Move to stabsread.h.
5455         * buildsym.c (prepare_for_building): Update.
5456
5457 2018-07-16  Tom Tromey  <tom@tromey.com>
5458
5459         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5460         * dwarf2read.c (dwarf2_start_symtab): Don't set
5461         processing_gcc_compilation.
5462         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5463
5464 2018-07-16  Tom Tromey  <tom@tromey.com>
5465
5466         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5467         (next_symbol_text_func): Move from buildsym.h.
5468         * stabsread.c (hashname): Move from buildsym.c.
5469         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5470         (next_symbol_text_func, hashname): Move to stabsread.h.
5471         * buildsym.c: Don't include bcache.h
5472         (hashname): Move to stasbread.c.
5473
5474 2018-07-16  Tom Tromey  <tom@tromey.com>
5475
5476         * buildsym.h (context_stack_size): Don't declare.
5477         * buildsym.c (context_stack_size): New global.
5478
5479 2018-07-16  Tom Tromey  <tom@tromey.com>
5480
5481         * dbxread.c (processing_acc_compilation): New global.
5482         * buildsym.h (processing_acc_compilation): Don't declare.
5483
5484 2018-07-16  Tom Tromey  <tom@tromey.com>
5485
5486         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5487         * dbxread.c (read_ofile_symtab): Update.
5488         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5489         * buildsym.h (last_source_start_addr): Remove.
5490         (set_last_source_start_addr, get_last_source_start_addr):
5491         Declare.
5492         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5493         parameter.
5494         (struct buildsym_compunit) <m_last_source_start_addr>: New
5495         member.
5496         (prepare_for_building): Remove start_addr parameter.
5497         (start_symtab, restart_symtab, end_symtab_get_static_block)
5498         (end_symtab_with_blockvector): Update.
5499         (set_last_source_start_addr, get_last_source_start_addr): New
5500         functions.
5501
5502 2018-07-16  Tom Tromey  <tom@tromey.com>
5503
5504         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5505         member.
5506         (have_line_numbers): Remove.
5507         (record_line, prepare_for_building, end_symtab_get_static_block)
5508         (augment_type_symtab): Update.
5509
5510 2018-07-16  Tom Tromey  <tom@tromey.com>
5511
5512         * buildsym.c (~buildsym_compunit): Free the macro table.
5513         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5514         methods.
5515         <m_pending_macros>: New member.
5516         (pending_macros): Remove.
5517         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5518         (reset_symtab_globals, end_symtab_get_static_block)
5519         (end_symtab_with_blockvector, augment_type_symtab)
5520         (buildsym_init): Update.
5521
5522 2018-07-16  Tom Tromey  <tom@tromey.com>
5523
5524         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5525         parameter.
5526         (buildsym_compunit::set_last_source_file): New method.
5527         <m_last_source_file>: New member.
5528         (prepare_for_building): Remove "name" parameter.
5529         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5530         (last_source_file): Remove.
5531         (set_last_source_file, get_last_source_file): Update.
5532
5533 2018-07-16  Tom Tromey  <tom@tromey.com>
5534
5535         * buildsym.c (prepare_for_building): Add assert.
5536
5537 2018-07-16  Tom Tromey  <tom@tromey.com>
5538
5539         * buildsym.c (~buildsym_compunit): Update.
5540         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5541         (start_subfile, patch_subfile_names)
5542         (end_symtab_with_blockvector): Update.
5543
5544 2018-07-16  Tom Tromey  <tom@tromey.com>
5545
5546         * buildsym.c (struct buildsym_compunit): Add constructor,
5547         destructor, initializers.
5548         (start_buildsym_compunit): Remove.
5549         (free_buildsym_compunit): Use "delete".
5550         (start_symtab, restart_symtab): Use "new".
5551
5552 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5553
5554         * symfile.c (set_objfile_default_section_offset): Remove struct
5555         keyword.
5556
5557 2018-07-14  Stafford Horne  <shorne@gmail.com>
5558
5559         * (Responsible Maintainers): Add myself as or1k maintainer.
5560
5561 2018-07-13  Tom Tromey  <tom@tromey.com>
5562
5563         * symfile.c (set_objfile_default_section_offset): Use extra braces
5564         around initializer.
5565
5566 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5567
5568         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5569         non-branching basr.
5570
5571 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5572
5573         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5574         unittests/cli-utils-selftests.c
5575         * unittests/cli-utils-selftests.c: New file.
5576
5577 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5578
5579         * NEWS: Mention new commands. Mention change to 'thread apply'.
5580
5581 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5582
5583         * thread.c (thr_try_catch_cmd): New function.
5584         (thread_apply_all_command): Handle qcs flags.
5585         (thread_apply_command): Handle qcs flags.
5586         (taas_command): New function.
5587         (tfaas_command): New function.
5588         (_initialize_thread): Update to setup the new commands 'taas
5589         and 'tfaas'. Change doc string for 'thread apply'.
5590
5591 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5592
5593         * stack.c: (trailing_outermost_frame): New function, mostly
5594         extracted from backtrace_command_1.
5595         (leading_innermost_frame): New function.
5596         (backtrace_command_1): Update to call trailing_outermost_frame.
5597         (frame_apply_command_count): New function.
5598         (frame_apply_level_command): New function.
5599         (frame_apply_all_command): New function.
5600         (frame_apply_command): New function.
5601         (faas_command): New function.
5602         (frame_cmd_list): New variable.
5603         (_initialize_stack): Update to setup the new commands 'frame apply'
5604         and 'faas'.
5605
5606 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5607
5608         * cli-utils.c (number_or_range_parser::get_number): Only handle
5609         numbers or convenience var as numbers.
5610         (parse_flags): New function.
5611         (parse_flags_qcs): New function.
5612         (number_or_range_parser::finished): Ensure parsing end is detected
5613         before end of string.
5614         * cli-utils.h (parse_flags): New function.
5615         (parse_flags_qcs): New function.
5616         (number_or_range_parser): Remove m_finished bool.
5617         (number_or_range_parser::skip_range): Set m_in_range to false.
5618
5619 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5620
5621         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5622         on Windows.
5623
5624 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5625             Jan Kratochvil  <jan.kratochvil@redhat.com>
5626             Paul Fertser  <fercerpav@gmail.com>
5627             Tsutomu Seki  <sekiriki@gmail.com>
5628             Pedro Alves  <palves@redhat.com>
5629
5630         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5631         'unittests/parse-connection-spec-selftests.c'.
5632         (COMMON_SFILES): Add 'common/netstuff.c'.
5633         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5634         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5635         * common/netstuff.c: New file.
5636         * common/netstuff.h: New file.
5637         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5638         (wait_for_connect): Update comment.  New parameter
5639         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5640         Use 'sock' directly instead of 'scb->fd'.
5641         (try_connect): New function, with code from 'net_open'.
5642         (net_open): Rewrite main loop to deal with multiple
5643         sockets/addresses.  Handle IPv6-style hostnames; implement
5644         support for IPv6 connections.
5645         * unittests/parse-connection-spec-selftests.c: New file.
5646
5647 2018-07-11  Pedro Alves  <palves@redhat.com>
5648
5649         PR gdb/23377
5650         * remote.c (remote_target::remote_detach_pid): Call
5651         set_current_process.
5652
5653 2018-07-11  Pedro Alves  <palves@redhat.com>
5654
5655         * h8300-tdep.c (h8300_gdbarch_init): Remove
5656         set_gdbarch_ecoff_reg_to_regnum calls.
5657
5658 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5659
5660         PR c++/23373
5661         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5662         offsets/sizes for static members of a class/struct.
5663
5664 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5665
5666         * target-descriptions.c (tdesc_register_bitsize): Rename.
5667         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5668         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5669         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5670
5671 2018-07-10  Tom Tromey  <tom@tromey.com>
5672
5673         * breakpoint.c (moribund_locations): Now static and a
5674         std::vector.
5675         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5676         (build_bpstat_chain, update_global_location_list)
5677         (breakpoint_retire_moribund): Update.
5678         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5679         VEC.
5680
5681 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5682
5683         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5684         (riscv_register_reggroup_p): Use new function, remove unneeded
5685         parenthesis.
5686         (riscv_push_dummy_call): Extend assert to compare against xlen or
5687         flen based on register type.
5688
5689 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5690
5691         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5692
5693 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5694
5695         * remote.c (show_hardware_watchpoint_limit): New function.
5696         (show_hardware_watchpoint_length_limit): New function.
5697         (show_hardware_breakpoint_limit): New function.
5698         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5699         where appropriate, update help text.
5700
5701 2018-07-09  Tom Tromey  <tom@tromey.com>
5702
5703         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5704         (CLIBS): Don't mention NAT_CLIBS.
5705
5706 2018-07-09  Tom Tromey  <tom@tromey.com>
5707
5708         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5709         (LIBGDB_OBS, clean mostlyclean): Update.
5710         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5711
5712 2018-07-09  Tom Tromey  <tom@tromey.com>
5713
5714         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5715         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5716         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5717
5718 2018-07-09  Tom Tromey  <tom@tromey.com>
5719
5720         * Makefile.in (ALLDEPFILES): Remove exec.c.
5721         (COMMON_OBS): Remove exec.o.
5722         (COMMON_SFILES): Add exec.c.
5723
5724 2018-07-09  Tom Tromey  <tom@tromey.com>
5725
5726         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5727
5728 2018-07-09  Tom Tromey  <tom@tromey.com>
5729
5730         * Makefile.in (clean mostlyclean): Remove stamp-version.
5731         (version.c): Depend on stamp-version.
5732         (stamp-version): New rule, from version.c rule.
5733
5734 2018-07-09  Tom Tromey  <tom@tromey.com>
5735
5736         * Makefile.in (init.c): Depend on stamp-init.
5737         (stamp-init): New rule, from init.c rule.
5738         (clean mostlyclean): Remove stamp-init.
5739
5740 2018-07-09  Tom Tromey  <tom@tromey.com>
5741
5742         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5743         SUBDIR_GCC_COMPILE_SRCS.
5744
5745 2018-07-09  Tom Tromey  <tom@tromey.com>
5746
5747         * Makefile.in (init.c): Remove some unused sed rules.
5748
5749 2018-07-09  Tom Tromey  <tom@tromey.com>
5750
5751         * Makefile.in (TSOBS): Remove.
5752         (INIT_FILES): Update.
5753         (LIBGDB_OBS): Update.
5754         (COMMON_SFILES): Add inflow.c.
5755         (SFILES): Remove inflow.c.
5756
5757 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5758
5759         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5760
5761 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5762
5763         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5764         get_saveloc_name, is_signal_frame_name, step_name,
5765         init_remote_name, create_addr_space_name,
5766         destroy_addr_space_name, search_unwind_table_name,
5767         find_dyn_list_name): Constify.
5768
5769 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5770
5771         * darwin-nat.c (darwin_pthread_kill): New function.
5772         (darwin_resume_thread): Use darwin_pthread_kill.
5773
5774 2018-07-05  Tom de Vries  <tdevries@suse.de>
5775
5776         * macroexp.c (macro_buffer) <operator=>: New member function.
5777
5778 2018-07-04  Tom Tromey  <tom@tromey.com>
5779
5780         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5781
5782 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5783
5784         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5785         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5786         * maint.c: Likewise.
5787         * top.c: Likewise.
5788
5789 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5790
5791         * NEWS: Create a new section for the next release branch.
5792         Rename the section of the current branch, now that it has
5793         been cut.
5794
5795 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5796
5797         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5798         * version.in: Bump version to 8.2.50.DATE-git.
5799
5800 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5801             Pedro Alves  <palves@redhat.com>
5802
5803         * linux-nat.c (linux_init_ptrace): Rename to ...
5804         (linux_init_ptrace_procfs): ... this.  Call
5805         linux_proc_init_warnings.
5806         (linux_nat_target::post_attach)
5807         (linux_nat_target::post_startup_inferior): Adjust.
5808         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5809         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5810
5811 2018-07-04  Tom de Vries  <tdevries@suse.de>
5812
5813         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5814         check ...
5815         (read_comp_unit_head): ... here.
5816
5817 2018-07-03  Tom Tromey  <tom@tromey.com>
5818
5819         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5820         (stop_tracing, tstatus_command)
5821         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5822         (print_one_static_tracepoint_marker): Update.
5823         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5824         std::vector.
5825         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5826         VEC.
5827         (all_tracepoints, static_tracepoints_here): Return std::vector.
5828
5829 2018-07-03  Tom Tromey  <tom@tromey.com>
5830
5831         * common/ptid.c (ptid_equal): Remove.
5832         * common/ptid.h (ptid_equal): Don't declare.
5833         * ada-tasks.c: Update.
5834         * breakpoint.c: Update.
5835         * common/agent.c: Update.
5836         * corelow.c: Update.
5837         * darwin-nat-info.c: Update.
5838         * darwin-nat.c: Update.
5839         * dcache.c: Update.
5840         * dtrace-probe.c: Update.
5841         * dummy-frame.c: Update.
5842         * fbsd-nat.c: Update.
5843         * frame.c: Update.
5844         * gdbthread.h: Update.
5845         * gnu-nat.c: Update.
5846         * go32-nat.c: Update.
5847         * inf-loop.c: Update.
5848         * inf-ptrace.c: Update.
5849         * infcall.c: Update.
5850         * infcmd.c: Update.
5851         * inflow.c: Update.
5852         * infrun.c: Update.
5853         * linux-fork.c: Update.
5854         * linux-nat.c: Update.
5855         * linux-thread-db.c: Update.
5856         * mi/mi-cmd-var.c: Update.
5857         * mi/mi-interp.c: Update.
5858         * mi/mi-main.c: Update.
5859         * nto-procfs.c: Update.
5860         * ppc-linux-tdep.c: Update.
5861         * procfs.c: Update.
5862         * python/py-inferior.c: Update.
5863         * python/py-record-btrace.c: Update.
5864         * python/py-record.c: Update.
5865         * ravenscar-thread.c: Update.
5866         * regcache.c: Update.
5867         * remote-sim.c: Update.
5868         * remote.c: Update.
5869         * sol-thread.c: Update.
5870         * solib.c: Update.
5871         * target.c: Update.
5872         * tui/tui-stack.c: Update.
5873         * varobj.c: Update.
5874         * windows-nat.c: Update.
5875         * windows-tdep.c: Update.
5876
5877 2018-07-03  Tom Tromey  <tom@tromey.com>
5878
5879         * common/ptid.c (ptid_match): Remove.
5880         * common/ptid.h (ptid_match): Don't declare.
5881         * fbsd-nat.c: Update.
5882         * infcmd.c: Update.
5883         * infrun.c: Update.
5884         * linux-nat.c: Update.
5885         * record-btrace.c: Update.
5886         * regcache.c: Update.
5887         * remote.c: Update.
5888
5889 2018-07-03  Tom Tromey  <tom@tromey.com>
5890
5891         * common/ptid.c (ptid_tid_p): Remove.
5892         * common/ptid.h (ptid_tid_p): Don't declare.
5893         * sol-thread.c: Update.
5894
5895 2018-07-03  Tom Tromey  <tom@tromey.com>
5896
5897         * common/ptid.c (ptid_lwp_p): Remove.
5898         * common/ptid.h (ptid_lwp_p): Don't declare.
5899         * fbsd-nat.c: Update.
5900         * linux-nat.c: Update.
5901         * nat/linux-procfs.c: Update.
5902         * nat/x86-linux-dregs.c: Update.
5903         * sol-thread.c: Update.
5904
5905 2018-07-03  Tom Tromey  <tom@tromey.com>
5906
5907         * common/ptid.c (ptid_is_pid): Remove.
5908         * common/ptid.h (ptid_is_pid): Don't declare.
5909         * infrun.c: Update.
5910         * linux-nat.c: Update.
5911         * mi/mi-interp.c: Update.
5912         * remote.c: Update.
5913         * thread.c: Update.
5914
5915 2018-07-03  Tom Tromey  <tom@tromey.com>
5916
5917         * common/ptid.c (ptid_get_tid): Remove.
5918         * common/ptid.h (ptid_get_tid): Don't declare.
5919         * ada-tasks.c: Update.
5920         * aix-thread.c: Update.
5921         * bsd-uthread.c: Update.
5922         * darwin-nat.c: Update.
5923         * fbsd-nat.c: Update.
5924         * i386-darwin-nat.c: Update.
5925         * infrun.c: Update.
5926         * linux-tdep.c: Update.
5927         * nto-procfs.c: Update.
5928         * ppc-ravenscar-thread.c: Update.
5929         * python/py-infthread.c: Update.
5930         * ravenscar-thread.c: Update.
5931         * sol-thread.c: Update.
5932         * sparc-ravenscar-thread.c: Update.
5933         * windows-nat.c: Update.
5934
5935 2018-07-03  Tom Tromey  <tom@tromey.com>
5936
5937         * common/ptid.c (ptid_get_lwp): Remove.
5938         * common/ptid.h (ptid_get_lwp): Don't declare.
5939         * aarch64-linux-nat.c: Update.
5940         * ada-tasks.c: Update.
5941         * aix-thread.c: Update.
5942         * amd64-linux-nat.c: Update.
5943         * arm-linux-nat.c: Update.
5944         * corelow.c: Update.
5945         * fbsd-nat.c: Update.
5946         * fbsd-tdep.c: Update.
5947         * gnu-nat.c: Update.
5948         * i386-cygwin-tdep.c: Update.
5949         * i386-gnu-nat.c: Update.
5950         * i386-linux-nat.c: Update.
5951         * ia64-linux-nat.c: Update.
5952         * inf-ptrace.c: Update.
5953         * infrun.c: Update.
5954         * linux-fork.c: Update.
5955         * linux-nat.c: Update.
5956         * linux-tdep.c: Update.
5957         * linux-thread-db.c: Update.
5958         * mips-linux-nat.c: Update.
5959         * nat/aarch64-linux-hw-point.c: Update.
5960         * nat/aarch64-linux.c: Update.
5961         * nat/linux-btrace.c: Update.
5962         * nat/linux-osdata.c: Update.
5963         * nat/linux-procfs.c: Update.
5964         * nat/x86-linux-dregs.c: Update.
5965         * obsd-nat.c: Update.
5966         * ppc-fbsd-nat.c: Update.
5967         * ppc-linux-nat.c: Update.
5968         * procfs.c: Update.
5969         * python/py-infthread.c: Update.
5970         * ravenscar-thread.c: Update.
5971         * remote.c: Update.
5972         * s390-linux-nat.c: Update.
5973         * sol-thread.c: Update.
5974         * sol2-tdep.c: Update.
5975         * spu-linux-nat.c: Update.
5976         * x86-linux-nat.c: Update.
5977         * xtensa-linux-nat.c: Update.
5978
5979 2018-07-03  Tom Tromey  <tom@tromey.com>
5980
5981         * common/ptid.c (ptid_get_pid): Remove.
5982         * common/ptid.h (ptid_get_pid): Don't declare.
5983         * aarch64-linux-nat.c: Update.
5984         * ada-lang.c: Update.
5985         * aix-thread.c: Update.
5986         * alpha-bsd-nat.c: Update.
5987         * amd64-fbsd-nat.c: Update.
5988         * amd64-linux-nat.c: Update.
5989         * arm-linux-nat.c: Update.
5990         * arm-nbsd-nat.c: Update.
5991         * auxv.c: Update.
5992         * break-catch-syscall.c: Update.
5993         * breakpoint.c: Update.
5994         * bsd-uthread.c: Update.
5995         * corelow.c: Update.
5996         * ctf.c: Update.
5997         * darwin-nat.c: Update.
5998         * fbsd-nat.c: Update.
5999         * fbsd-tdep.c: Update.
6000         * gcore.c: Update.
6001         * gnu-nat.c: Update.
6002         * hppa-nbsd-nat.c: Update.
6003         * hppa-obsd-nat.c: Update.
6004         * i386-fbsd-nat.c: Update.
6005         * ia64-linux-nat.c: Update.
6006         * inf-ptrace.c: Update.
6007         * infcmd.c: Update.
6008         * inferior.c: Update.
6009         * inferior.h: Update.
6010         * inflow.c: Update.
6011         * infrun.c: Update.
6012         * linux-fork.c: Update.
6013         * linux-nat.c: Update.
6014         * linux-tdep.c: Update.
6015         * linux-thread-db.c: Update.
6016         * m68k-bsd-nat.c: Update.
6017         * mi/mi-interp.c: Update.
6018         * mi/mi-main.c: Update.
6019         * mips-linux-nat.c: Update.
6020         * mips-nbsd-nat.c: Update.
6021         * mips64-obsd-nat.c: Update.
6022         * nat/aarch64-linux-hw-point.c: Update.
6023         * nat/aarch64-linux.c: Update.
6024         * nat/linux-btrace.c: Update.
6025         * nat/linux-osdata.c: Update.
6026         * nat/linux-procfs.c: Update.
6027         * nat/x86-linux-dregs.c: Update.
6028         * nto-procfs.c: Update.
6029         * obsd-nat.c: Update.
6030         * ppc-linux-nat.c: Update.
6031         * ppc-nbsd-nat.c: Update.
6032         * ppc-obsd-nat.c: Update.
6033         * proc-service.c: Update.
6034         * procfs.c: Update.
6035         * python/py-inferior.c: Update.
6036         * python/py-infthread.c: Update.
6037         * ravenscar-thread.c: Update.
6038         * record.c: Update.
6039         * remote-sim.c: Update.
6040         * remote.c: Update.
6041         * rs6000-nat.c: Update.
6042         * s390-linux-nat.c: Update.
6043         * sh-nbsd-nat.c: Update.
6044         * sol-thread.c: Update.
6045         * sparc-nat.c: Update.
6046         * sparc64-tdep.c: Update.
6047         * spu-linux-nat.c: Update.
6048         * spu-tdep.c: Update.
6049         * target-debug.h: Update.
6050         * target.c: Update.
6051         * thread.c: Update.
6052         * tid-parse.c: Update.
6053         * tracefile-tfile.c: Update.
6054         * vax-bsd-nat.c: Update.
6055         * windows-nat.c: Update.
6056         * x86-linux-nat.c: Update.
6057         * x86-nat.c: Update.
6058
6059 2018-07-03  Tom Tromey  <tom@tromey.com>
6060
6061         * common/ptid.c (pid_to_ptid): Remove.
6062         * common/ptid.h (pid_to_ptid): Don't declare.
6063         * aix-thread.c: Update.
6064         * arm-linux-nat.c: Update.
6065         * common/ptid.c: Update.
6066         * common/ptid.h: Update.
6067         * corelow.c: Update.
6068         * ctf.c: Update.
6069         * darwin-nat.c: Update.
6070         * fbsd-nat.c: Update.
6071         * fork-child.c: Update.
6072         * gnu-nat.c: Update.
6073         * go32-nat.c: Update.
6074         * inf-ptrace.c: Update.
6075         * infcmd.c: Update.
6076         * inferior.c: Update.
6077         * infrun.c: Update.
6078         * linux-fork.c: Update.
6079         * linux-nat.c: Update.
6080         * nat/aarch64-linux-hw-point.c: Update.
6081         * nat/fork-inferior.c: Update.
6082         * nat/x86-linux-dregs.c: Update.
6083         * nto-procfs.c: Update.
6084         * obsd-nat.c: Update.
6085         * procfs.c: Update.
6086         * progspace.c: Update.
6087         * remote.c: Update.
6088         * rs6000-nat.c: Update.
6089         * s390-linux-nat.c: Update.
6090         * sol-thread.c: Update.
6091         * spu-linux-nat.c: Update.
6092         * target.c: Update.
6093         * top.c: Update.
6094         * tracefile-tfile.c: Update.
6095         * windows-nat.c: Update.
6096
6097 2018-07-03  Tom Tromey  <tom@tromey.com>
6098
6099         * common/ptid.h (ptid_build): Don't declare.
6100         * common/ptid.c (ptid_build): Remove.
6101         * aix-thread.c: Update.
6102         * bsd-kvm.c: Update.
6103         * bsd-uthread.c: Update.
6104         * common/agent.c: Update.
6105         * common/ptid.c: Update.
6106         * common/ptid.h: Update.
6107         * corelow.c: Update.
6108         * darwin-nat.c: Update.
6109         * fbsd-nat.c: Update.
6110         * gnu-nat.c: Update.
6111         * linux-fork.c: Update.
6112         * linux-nat.c: Update.
6113         * linux-thread-db.c: Update.
6114         * nat/linux-osdata.c: Update.
6115         * nat/linux-procfs.c: Update.
6116         * nto-procfs.c: Update.
6117         * obsd-nat.c: Update.
6118         * proc-service.c: Update.
6119         * procfs.c: Update.
6120         * ravenscar-thread.c: Update.
6121         * remote-sim.c: Update.
6122         * remote.c: Update.
6123         * sol-thread.c: Update.
6124         * target.c: Update.
6125         * windows-nat.c: Update.
6126
6127 2018-07-03  Tom Tromey  <tom@tromey.com>
6128
6129         * infrun.c (follow_exec): Use exit_inferior_silent.
6130         * inferior.c (exit_inferior_num_silent): Remove.
6131         * inferior.h (exit_inferior_num_silent): Don't declare.
6132
6133 2018-07-03  Tom Tromey  <tom@tromey.com>
6134
6135         PR cli/23340:
6136         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6137         inferior_ptid on error.
6138
6139 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6140             Simon Marchi  <simon.marchi@polymtl.ca>
6141
6142         PR tdep/8282
6143         * disasm.h (gdb_disassembler): Add
6144         `m_disassembler_options_holder'. member
6145         * disasm.c (get_all_disassembler_options): New function.
6146         (gdb_disassembler::gdb_disassembler): Use it.
6147         (gdb_buffered_insn_length_init_dis): Likewise.
6148         (gdb_buffered_insn_length): Adjust accordingly.
6149         (set_disassembler_options): Handle options with arguments.
6150         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6151         line if showing options with descriptions.
6152         (disassembler_options_completer): Adapt to using the
6153         `disasm_options_and_args_t' structure.
6154         * mips-tdep.c (mips_disassembler_options): New variable.
6155         (mips_disassembler_options_o32): Likewise.
6156         (mips_disassembler_options_n32): Likewise.
6157         (mips_disassembler_options_n64): Likewise.
6158         (gdb_print_insn_mips): Don't set `disassembler_options'.
6159         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6160         functions.
6161         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6162         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6163         `gdbarch_disassembler_options_implicit' and
6164         `gdbarch_valid_disassembler_options'.
6165         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6166         `disasm_options_and_args_t' structure.
6167         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6168         method.
6169         (valid_disassembler_options): Switch from `disasm_options_t' to
6170         the `disasm_options_and_args_t' structure.
6171         * NEWS: Document `set disassembler-options' support for the MIPS
6172         target.
6173         * gdbarch.h: Regenerate.
6174         * gdbarch.c: Regenerate.
6175
6176 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6177
6178         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6179
6180 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6181
6182         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6183         parameter in call to amd64_target_description.
6184         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6185         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6186         (amd64fbsd_init_abi): Likewise.
6187         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6188         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6189         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6190         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6191
6192 2018-06-29  Pedro Alves  <palves@redhat.com>
6193
6194         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6195         "segments" parameter.
6196         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6197         (_initialize_amd64_tdep): Update call to
6198         amd64_create_target_description.
6199         (amd64_target_description): Add "segments" parameter.  Adjust
6200         the implementation to use it.
6201         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6202         call to amd64_create_target_description.
6203         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6204         * gdb/arch/amd64.h (amd64_create_target_description): Add
6205         "segments" register.
6206         * gdb/arch/amd64.c (amd64_create_target_description): Add
6207         "segments" parameter.  Call create_feature_i386_64bit_segments
6208         only if SEGMENTS is true.
6209         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6210         call to amd64_create_target_description.
6211
6212 2018-06-29  Pedro Alves  <palves@redhat.com>
6213
6214         * thread.c (thread_target_id_str): New, factored out from ...
6215         (print_thread_info_1): ... here.  Use it to compute the max
6216         "Target Id" column width.
6217
6218 2018-06-29  Pedro Alves  <palves@redhat.com>
6219
6220         * remote.c (remote_target::extra_thread_info): Delete
6221         'display_buf' and 'n' locals.  from the cache, regardless of
6222         packet mechanims is in use.  Use cache for qThreadExtra and qP
6223         methods too.
6224
6225 2018-06-29  Pedro Alves  <palves@redhat.com>
6226
6227         * blockframe.c (find_pc_sect_containing_function): New function.
6228         * breakpoint.c (print_breakpoint_location): Don't call
6229         find_pc_sect_function.
6230         * linespec.c (create_sals_line_offset): Record the location's
6231         symbol in the sal.
6232         * linespec.c (convert_address_location_to_sals): Fill in sal's
6233         symbol with find_pc_sect_containing_function.
6234         * symtab.c (find_function_start_sal): Rename to ...
6235         (find_function_start_sal_1): ... this.
6236         (find_function_start_sal): Reimplement as wrapper around
6237         find_function_start_sal_1, and use
6238         find_pc_sect_containing_function to fill in the sal's symbol.
6239         (find_function_start_sal(symbol*, bool)): Adjust.
6240         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6241         comments.
6242         (find_pc_sect_containing_function): Declare.
6243
6244 2018-06-29  Pedro Alves  <palves@redhat.com>
6245
6246         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6247         true if the the location has no symbol.
6248
6249 2018-06-28  Tom Tromey  <tom@tromey.com>
6250
6251         * NEWS: Mention --enable-codesign.
6252         * silent-rules.mk (ECHO_SIGN): New variable.
6253         * configure.ac: Add --enable-codesign.
6254         * configure: Rebuild.
6255         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6256         (gdb$(EXEEXT)): Optionally invoke codesign.
6257
6258 2018-06-28  Pedro Alves  <palves@redhat.com>
6259
6260         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6261         comments.
6262         (switch_to_thread_no_regs): Adjust comment.
6263         * infcmd.c (stop_pc): Delete.
6264         (post_create_inferior, info_program_command): Replace references
6265         to stop_pc with references to thread_info->suspend.stop_pc.
6266         * inferior.h (stop_pc): Delete declaration.
6267         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6268         (handle_inferior_event_1, handle_signal_stop)
6269         (process_event_stop_test, keep_going_stepped_thread)
6270         (handle_step_into_function, handle_step_into_function_backward)
6271         (print_stop_location): Replace references to stop_pc with
6272         references to thread_info->suspend.stop_pc.
6273         (struct infcall_suspend_state) <stop_pc>: Delete field.
6274         (save_infcall_suspend_state, restore_infcall_suspend_state):
6275         Remove references to inf_stat->stop_pc.
6276         * linux-fork.c (fork_load_infrun_state): Likewise.
6277         * record-btrace.c (record_btrace_set_replay): Likewise.
6278         * record-full.c (record_full_goto_entry): Likewise.
6279         * remote.c (print_one_stopped_thread): Likewise.
6280         * target.c (target_resume): Extend comment.
6281         * thread.c (set_executing_thread): New.
6282         (set_executing): Use it.
6283         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6284         Remove references to stop_pc.
6285
6286 2018-06-28  Pedro Alves  <palves@redhat.com>
6287
6288         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6289         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6290
6291 2018-06-28  Tom Tromey  <tom@tromey.com>
6292
6293         * coffread.c (coff_symfile_finish): Update.
6294         * xcoffread.c (xcoff_symfile_finish): Update.
6295         * elfread.c (elf_symfile_finish): Update.
6296         * symfile.h (dwarf2_free_objfile): Don't declare.
6297         * dwarf2read.c (_initialize_dwarf2_read): Use
6298         register_objfile_data_with_cleanup.
6299         (dwarf2_free_objfile): Now static.  Change signature.
6300
6301 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6302
6303         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6304         option "-o" to add-symbol-file-load to add an offset to each
6305         section's load address.
6306         * symfile.c (set_objfile_default_section_offset): New function.
6307
6308 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6309
6310         * symfile.c (add_symbol_file_command): Make sure that sections
6311         with the same name are sorted in the same order.
6312
6313 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6314
6315         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6316         require the second argument.  If omitted, load sections at the
6317         addresses specified in the file.
6318
6319 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6320
6321         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6322         (_initialize_symfile): Add option "-o" to symbol-file to add an
6323         offset to each section of the symbol file.
6324
6325 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6326
6327         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6328
6329 2018-06-27  Tom Tromey  <tom@tromey.com>
6330
6331         * stack.c (_initialize_stack): Update "func" help text.
6332
6333 2018-06-27  Tom Tromey  <tom@tromey.com>
6334
6335         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6336         std::vector.
6337         (unwind_infopy_str, pyuw_create_unwind_info)
6338         (unwind_infopy_add_saved_register, pyuw_sniffer)
6339         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6340         Update.
6341         (struct saved_reg): Add constructor.
6342         <value>: Now a gdbpy_ref<>.
6343
6344 2018-06-27  Tom Tromey  <tom@tromey.com>
6345
6346         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6347
6348 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6349
6350         * gdb-gdb.py.in: Format using autopep8.
6351
6352 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6353
6354         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6355         (type_lookup_function): Recognize CORE_ADDR values.
6356
6357 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6358
6359         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6360         print tag_name.
6361
6362 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6363
6364         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6365         <__lt__>: Add.
6366
6367 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6368
6369         * gdb-gdb.py: Move to...
6370         * gdb-gdb.py.in: ... here.
6371         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6372         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6373         dependencies.
6374         (distclean): Remove gdb-gdb.py when cleaning.
6375         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6376         * configure: Re-generate.
6377
6378 2018-06-27  Pedro Alves  <palves@redhat.com>
6379
6380         * proc-service.c (get_ps_regcache): New.
6381         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6382         (ps_lsetfpregs): Use it.
6383
6384 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6385
6386         PR gdb/21695
6387         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6388         (dwarf_decode_lines_1): Adjust.
6389
6390 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6391
6392         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6393         override.
6394         <info_proc>: Likewise.
6395
6396 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6397
6398         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6399         to windows_fetch_one_register, and only handle the case of
6400         fetching one register.  Move the code that reloads the context
6401         and iterates over all registers if R is negative to...
6402         (windows_nat_target::fetch_registers): ... here.
6403         (do_windows_store_inferior_registers): Rename to
6404         windows_store_one_register, and only handle the case of storing
6405         one register.  Move the code that handles the case where r is
6406         negative to...
6407         (windows_nat_target::store_registers) ... here.
6408
6409 2018-06-26  Tom Tromey  <tom@tromey.com>
6410
6411         PR rust/22574:
6412         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6413         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6414         Update.
6415         (rust_internal_print_type): Add podata parameter.
6416         (rust_print_type): Update.
6417
6418 2018-06-26  Tom Tromey  <tom@tromey.com>
6419
6420         * typeprint.h (struct print_offset_data) <update, finish,
6421         maybe_print_hole>: New methods.
6422         <indentation>: New constant.
6423         * typeprint.c (print_offset_data::indentation): Define.
6424         (print_offset_data::maybe_print_hole, print_offset_data::update)
6425         (print_offset_data::finish): Move from c-typeprint.c and rename.
6426         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6427         (print_spaces_filtered_with_print_options): Update.
6428         (c_print_type_union_field_offset, maybe_print_hole)
6429         (c_print_type_struct_field_offset): Move to typeprint.c and
6430         rename.
6431         (c_type_print_base_struct_union): Update.
6432
6433 2018-06-25  Pedro Alves  <palves@redhat.com>
6434
6435         * gdbthread.h (thread_info_ref, delete_thread)
6436         (delete_thread_silent, first_thread_of_inferior)
6437         (any_thread_of_inferior, switch_to_thread)
6438         (enable_thread_stack_temporaries)
6439         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6440         (get_last_thread_stack_temporary)
6441         (value_in_thread_stack_temporaries, can_access_registers_thread):
6442         Spell out "struct thread_info" instead of just "thread_info".
6443         * inferior.h (notice_new_inferior): Likewise.
6444
6445 2018-06-25  Pedro Alves  <palves@redhat.com>
6446
6447         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6448         pass thread_info pointer to delete_thread.
6449         (windows_nat_target::detach): Pass inferior pointer to
6450         detach_inferior.
6451         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6452         delete_thread.
6453         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6454         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6455         and pass a thread_info pointer to delete_thread.
6456         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6457         pass thread_info pointer to delete_thread.
6458         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6459         delete_thread_silent call.
6460         * procfs.c (procfs_target::detach): Pass inferior pointer to
6461         detach_inferior.
6462         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6463         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6464         delete_thread_silent call.
6465         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6466         pass thread_info pointer to delete_thread.
6467         (windows_nat_target::detach): Pass inferior pointer to
6468         delete_inferior.
6469
6470 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6471
6472         * regcache.c (readable_regcache::read_part): Fix asserts.
6473         (reg_buffer::raw_collect_part): New function.
6474         (regcache::write_part): Fix asserts.
6475         (reg_buffer::raw_supply_part): New function.
6476         (regcache::transfer_regset_register): New helper function.
6477         (regcache::transfer_regset): Call new functions.
6478         (regcache_supply_regset): Use gdb_byte*.
6479         (regcache::supply_regset): Likewise.
6480         (regcache_collect_regset): Likewise.
6481         (regcache::collect_regset): Likewise.
6482         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6483         (reg_buffer::raw_supply_part): Likewise.
6484         (regcache::transfer_regset_register): Likewise.
6485         (regcache::transfer_regset): Use gdb_byte*.
6486
6487 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6488
6489         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6490
6491 2018-06-21  Pedro Alves  <palves@redhat.com>
6492
6493         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6494         instead of a ptid_t.  All callers adjusted.
6495         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6496         adjusted.
6497         (print_ada_task_info, display_current_task_id, task_command_1):
6498         Adjust.
6499         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6500         inferior_thread.
6501         (breakpoint_kind): Adjust.
6502         (remove_breakpoints_pid): Rename to ...
6503         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6504         pointer.  All callers adjusted.
6505         (bpstat_clear_actions): Use inferior_thread.
6506         (get_bpstat_thread): New.
6507         (bpstat_do_actions): Use it.
6508         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6509         to take a thread_info pointer.  All callers adjusted.
6510         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6511         (breakpoint_re_set_thread): Use inferior_thread.
6512         * breakpoint.h (struct inferior): Forward declare.
6513         (bpstat_stop_status): Update.
6514         (remove_breakpoints_pid): Delete.
6515         (remove_breakpoints_inf): New.
6516         * bsd-uthread.c (bsd_uthread_target::wait)
6517         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6518         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6519         (maint_btrace_packet_history_cmd)
6520         (maint_btrace_clear_packet_history_cmd): Adjust.
6521         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6522         inferior_thread.
6523         * cli/cli-interp.c: Include "inferior.h".
6524         * common/refcounted-object.h (struct
6525         refcounted_object_ref_policy): New.
6526         * compile/compile-object-load.c: Include gdbthread.h.
6527         (store_regs): Use inferior_thread.
6528         * corelow.c (core_target::close): Use current_inferior.
6529         (core_target_open): Adjust to use first_thread_of_inferior and use
6530         the current inferior.
6531         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6532         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6533         <thread>: ... this new field.  All references adjusted.
6534         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6535         Take a thread_info pointer instead of a ptid_t.
6536         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6537         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6538         thread_info pointer instead of a ptid_t.
6539         * elfread.c: Include "inferior.h".
6540         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6541         Use inferior_thread.
6542         * eval.c (evaluate_subexp): Likewise.
6543         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6544         inferior_thread.
6545         * gdb_proc_service.h (struct thread_info): Forward declare.
6546         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6547         <thread>: ... this new field.  All references adjusted.
6548         * gdbarch.h, gdbarch.c: Regenerate.
6549         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6550         'thread' parameter.  All implementations and callers adjusted.
6551         * gdbthread.h (thread_info) <set_running>: New method.
6552         (delete_thread, delete_thread_silent): Take a thread_info pointer
6553         instead of a ptid.
6554         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6555         (first_thread_of_process): Delete, replaced by ...
6556         (first_thread_of_inferior): ... this new function.  All callers
6557         adjusted.
6558         (any_live_thread_of_process): Delete, replaced by ...
6559         (any_live_thread_of_inferior): ... this new function.  All callers
6560         adjusted.
6561         (switch_to_thread, switch_to_no_thread): Declare.
6562         (is_executing): Delete.
6563         (enable_thread_stack_temporaries): Update comment.
6564         <enable_thread_stack_temporaries>: Take a thread_info pointer
6565         instead of a ptid_t.  Incref the thread.
6566         <~enable_thread_stack_temporaries>: Decref the thread.
6567         <m_ptid>: Delete
6568         <m_thr>: New.
6569         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6570         (get_last_thread_stack_temporary)
6571         (value_in_thread_stack_temporaries, can_access_registers_thread):
6572         Take a thread_info pointer instead of a ptid_t.  All callers
6573         adjusted.
6574         * infcall.c (get_call_return_value): Use inferior_thread.
6575         (run_inferior_call): Work with thread pointers instead of ptid_t.
6576         (call_function_by_hand_dummy): Work with thread pointers instead
6577         of ptid_t.  Use thread_info_ref.
6578         * infcmd.c (proceed_thread_callback): Access thread's state
6579         directly.
6580         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6581         access thread's state directly.
6582         (continue_command): Use inferior_thread.
6583         (info_program_command): Use find_thread_ptid and access thread
6584         state directly.
6585         (proceed_after_attach_callback): Use thread state directly.
6586         (notice_new_inferior): Take a thread_info pointer instead of a
6587         ptid_t.  All callers adjusted.
6588         (exit_inferior): Take an inferior pointer instead of a pid.  All
6589         callers adjusted.
6590         (exit_inferior_silent): New.
6591         (detach_inferior): Delete.
6592         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6593         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6594         (detach_inferior_command, kill_inferior_command): Use
6595         find_inferior_id instead of valid_gdb_inferior_id and
6596         gdb_inferior_id_to_pid.
6597         (inferior_command): Use inferior and thread pointers.
6598         * inferior.h (struct thread_info): Forward declare.
6599         (notice_new_inferior): Take a thread_info pointer instead of a
6600         ptid_t.  All callers adjusted.
6601         (detach_inferior): Delete declaration.
6602         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6603         instead of a pid.  All callers adjusted.
6604         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6605         (valid_gdb_inferior_id): Delete.
6606         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6607         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6608         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6609         ...
6610         <inf>: ... this new field.
6611         <step_ptid>: Delete, replaced by ...
6612         <step_thread>: ... this new field.
6613         (get_displaced_stepping_state): Take an inferior pointer instead
6614         of a pid.  All callers adjusted.
6615         (displaced_step_in_progress_any_inferior): Adjust.
6616         (displaced_step_in_progress_thread): Take a thread pointer instead
6617         of a ptid_t.  All callers adjusted.
6618         (displaced_step_in_progress, add_displaced_stepping_state): Take
6619         an inferior pointer instead of a pid.  All callers adjusted.
6620         (get_displaced_step_closure_by_addr): Adjust.
6621         (remove_displaced_stepping_state): Take an inferior pointer
6622         instead of a pid.  All callers adjusted.
6623         (displaced_step_prepare_throw, displaced_step_prepare)
6624         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6625         All callers adjusted.
6626         (start_step_over): Adjust.
6627         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6628         displaced step queue.
6629         (do_target_resume): Adjust.
6630         (fetch_inferior_event): Use inferior_thread.
6631         (context_switch, get_inferior_stop_soon): Take an
6632         execution_control_state pointer instead of a ptid_t.  All callers
6633         adjusted.
6634         (switch_to_thread_cleanup): Delete.
6635         (stop_all_threads): Use scoped_restore_current_thread.
6636         * inline-frame.c: Include "gdbthread.h".
6637         (inline_state) <inline_state>: Take a thread pointer instead of a
6638         ptid_t.  All callers adjusted.
6639         <ptid>: Delete, replaced by ...
6640         <thread>: ... this new field.
6641         (find_inline_frame_state): Take a thread pointer instead of a
6642         ptid_t.  All callers adjusted.
6643         (skip_inline_frames, step_into_inline_frame)
6644         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6645         pointer instead of a ptid_t.  All callers adjusted.
6646         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6647         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6648         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6649         pointers directly.
6650         * linux-nat.c (get_detach_signal): Likewise.
6651         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6652         (thread_db_notice_clone): Adjust.
6653         (thread_db_find_new_threads_silently)
6654         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6655         a thread pointer instead of a ptid_t.  All callers adjusted.
6656         * mi/mi-cmd-var.c: Include "inferior.h".
6657         (mi_cmd_var_update_iter): Update to use thread pointers.
6658         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6659         inferior directly.
6660         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6661         out to ...
6662         (mi_output_running): ... this new function.
6663         (mi_on_resume_1): Adjust to use it.
6664         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6665         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6666         directly.
6667         (interrupt_thread_callback): : Adjust to use thread and inferior
6668         pointers.
6669         * proc-service.c: Include "gdbthread.h".
6670         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6671         * progspace-and-thread.c: Include "inferior.h".
6672         * progspace.c: Include "inferior.h".
6673         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6674         hold a reference to an inferior_object.
6675         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6676         inferior_thread.
6677         * python/py-inferior.c (struct inferior_object): Give the type a
6678         tag name instead of a typedef.
6679         (python_on_normal_stop): No need to check if the current thread is
6680         listed.
6681         (inferior_to_inferior_object): Change return type to
6682         inferior_object.  All callers adjusted.
6683         (find_thread_object): Delete, bits factored out to ...
6684         (thread_to_thread_object): ... this new function.
6685         * python/py-infthread.c (create_thread_object): Use
6686         inferior_to_inferior_object.
6687         (thpy_is_stopped): Use thread pointer directly.
6688         (gdbpy_selected_thread): Use inferior_thread.
6689         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6690         field, replaced with ...
6691         <thread>: ... this new field.  All users adjusted.
6692         (btpy_insn_or_gap_new): Drop const.
6693         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6694         callers adjusted.
6695         * python/py-record.c: Include "gdbthread.h".
6696         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6697         a ptid_t.  All callers adjusted.
6698         (gdbpy_current_recording): Use inferior_thread.
6699         * python/py-record.h (recpy_record_object) <ptid>: Delete
6700         field, replaced with ...
6701         <thread>: ... this new field.  All users adjusted.
6702         (recpy_element_object) <ptid>: Delete
6703         field, replaced with ...
6704         <thread>: ... this new field.  All users adjusted.
6705         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6706         a ptid_t.  All callers adjusted.
6707         * python/py-threadevent.c: Include "gdbthread.h".
6708         (get_event_thread): Use thread_to_thread_object.
6709         * python/python-internal.h (struct inferior_object): Forward
6710         declare.
6711         (find_thread_object, find_inferior_object): Delete declarations.
6712         (thread_to_thread_object, inferior_to_inferior_object): New
6713         declarations.
6714         * record-btrace.c: Include "inferior.h".
6715         (require_btrace_thread): Use inferior_thread.
6716         (record_btrace_frame_sniffer)
6717         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6718         (get_thread_current_frame): Use scoped_restore_current_thread and
6719         switch_to_thread.
6720         (get_thread_current_frame): Use thread pointer directly.
6721         (record_btrace_replay_at_breakpoint): Use thread's inferior
6722         pointer directly.
6723         * record-full.c: Include "inferior.h".
6724         * regcache.c: Include "gdbthread.h".
6725         (get_thread_arch_regcache): Use the inferior's address space
6726         directly.
6727         (get_thread_regcache, registers_changed_thread): New.
6728         * regcache.h (get_thread_regcache(thread_info *thread)): New
6729         overload.
6730         (registers_changed_thread): New.
6731         (remote_target) <remote_detach_1>: Swap order of parameters.
6732         (remote_add_thread): <remote_add_thread>: Return the new thread.
6733         (get_remote_thread_info(ptid_t)): New overload.
6734         (remote_target::remote_notice_new_inferior): Use thread pointers
6735         directly.
6736         (remote_target::process_initial_stop_replies): Use
6737         thread_info::set_running.
6738         (remote_target::remote_detach_1, remote_target::detach)
6739         (extended_remote_target::detach): Adjust.
6740         * stack.c (frame_show_address): Use inferior_thread.
6741         * target-debug.h (target_debug_print_thread_info_pp): New.
6742         * target-delegates.c: Regenerate.
6743         * target.c (default_thread_address_space): Delete.
6744         (memory_xfer_partial_1): Use current_inferior.
6745         (target_detach): Use current_inferior.
6746         (target_thread_address_space): Delete.
6747         (generic_mourn_inferior): Use current_inferior.
6748         * target.h (struct target_ops) <thread_address_space>: Delete.
6749         (target_thread_address_space): Delete.
6750         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6751         pointers directly.
6752         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6753         thread pointer instead of a ptid_t.  Adjust all callers.
6754         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6755         (first_thread_of_process): Delete, replaced by ...
6756         (first_thread_of_inferior): ... this new function.  All callers
6757         adjusted.
6758         (any_thread_of_process): Rename to ...
6759         (any_thread_of_inferior): ... this, and take an inferior pointer.
6760         (any_live_thread_of_process): Rename to ...
6761         (any_live_thread_of_inferior): ... this, and take an inferior
6762         pointer.
6763         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6764         (value_in_thread_stack_temporaries)
6765         (get_last_thread_stack_temporary): Take a thread pointer instead
6766         of a ptid_t.  Adjust all callers.
6767         (thread_info::set_running): New.
6768         (validate_registers_access): Use inferior_thread.
6769         (can_access_registers_ptid): Rename to ...
6770         (can_access_registers_thread): ... this, and take a thread
6771         pointer.
6772         (print_thread_info_1): Adjust to compare thread pointers instead
6773         of ptids.
6774         (switch_to_no_thread, switch_to_thread): Make extern.
6775         (scoped_restore_current_thread::~scoped_restore_current_thread):
6776         Use m_thread pointer directly.
6777         (scoped_restore_current_thread::scoped_restore_current_thread):
6778         Use inferior_thread.
6779         (thread_command): Use thread pointer directly.
6780         (thread_num_make_value_helper): Use inferior_thread.
6781         * top.c (execute_command): Use inferior_thread.
6782         * tui/tui-interp.c: Include "inferior.h".
6783         * varobj.c (varobj_create): Use inferior_thread.
6784         (value_of_root_1): Use find_thread_global_id instead of
6785         global_thread_id_to_ptid.
6786
6787 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6788
6789         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6790         possible.
6791         (regcache::write_part): Likewise.
6792         (readable_regcache::cooked_read_part): Update comment.
6793         (readable_regcache::cooked_write_part): Likewise.
6794         * regcache.h: (readable_regcache::read_part): Likewise.
6795         (regcache::write_part): Likewise.
6796
6797 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6798             Dirk Schubert  <dirk.schubert@arm.com>
6799
6800         * aarch64-linux-nat.c (post_attach): New.
6801         (aarch64_linux_nat_target::post_attach): Override post_attach to
6802         record the number of hardware debug registers.
6803
6804 2018-06-20  Tom Tromey  <tom@tromey.com>
6805
6806         * python/py-param.c (add_setshow_generic): Make parameters const.
6807         (parmpy_init): Update.
6808
6809 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6810
6811         * regcache.h (regcache_cooked_read_ftype): Rename to...
6812         (register_read_ftype): ...this, change type to function_view.
6813         (class reg_buffer) <save>: Remove src parameter.
6814         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6815         parameter non-const in first overload.  Remove src parameter in
6816         second overload.
6817         * regcache.c (do_cooked_read): Remove.
6818         (readonly_detached_regcache::readonly_detached_regcache): Make
6819         parameter non-const, adjust call to other constructor.
6820         (reg_buffer::save): Remove src parameter.
6821         * frame.c (do_frame_register_read): Remove.
6822         (frame_save_as_regcache): Use lambda function.
6823         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6824         parameter to ppu2spu_data *.
6825         (ppu2spu_sniffer): Use lambda function.
6826
6827 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6828
6829         * record-full.c (record_full_target::insert_breakpoint): Remove
6830         "struct" keyword, add const.
6831
6832 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6833
6834         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6835         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6836         * configure.ac: Remove AC_PREREQ, add missing quoting.
6837         * gnulib/configure.ac: Modernize usage of
6838         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6839         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6840         (AUTOMAKE_VERSION): Bump to 1.15.1.
6841         * configure: Re-generate.
6842         * config.in: Re-generate.
6843         * aclocal.m4: Re-generate.
6844         * gnulib/aclocal.m4: Re-generate.
6845         * gnulib/config.in: Re-generate.
6846         * gnulib/configure: Re-generate.
6847         * gnulib/import/Makefile.in: Re-generate.
6848
6849 2018-06-19  Pedro Alves  <palves@redhat.com>
6850
6851         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6852         (lookup_minimal_symbol_by_pc_section): ... here with
6853         gdb_assert_not_reached added.
6854
6855 2018-06-19  Pedro Alves  <palves@redhat.com>
6856
6857         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6858         parameter with a block parameter.  Compare location's block symbol
6859         with the frame's block instead of addresses.
6860         (skip_inline_frames): Pass the current block instead of the
6861         frame's address.  Break out as soon as we determine the frame
6862         should not be skipped.
6863
6864 2018-06-18  Tom Tromey  <tom@tromey.com>
6865
6866         * solib-aix.c (solib_aix_get_section_offsets): Return
6867         unique_xmalloc_ptr.
6868         (solib_aix_solib_create_inferior_hook): Update.
6869
6870 2018-06-18  Tom Tromey  <tom@tromey.com>
6871
6872         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6873
6874 2018-06-18  Tom Tromey  <tom@tromey.com>
6875
6876         * solib-frv.c (frv_relocate_main_executable): Use
6877         unique_xmalloc_ptr.
6878         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6879         unique_xmalloc_ptr.
6880
6881 2018-06-18  Tom Tromey  <tom@tromey.com>
6882
6883         * objfiles.h (inhibit_section_map_updates): Update.
6884         (resume_section_map_updates, resume_section_map_updates_cleanup):
6885         Remove.
6886         * solib-svr4.c (svr4_handle_solib_event): Update.
6887         * objfiles.c (inhibit_section_map_updates): Return
6888         scoped_restore_tmpl<int>.
6889         (resume_section_map_updates, resume_section_map_updates_cleanup):
6890         Remove.
6891
6892 2018-06-18  Tom Tromey  <tom@tromey.com>
6893
6894         * valprint.h (read_string): Update.
6895         * valprint.c (read_string): Change type of "buffer".
6896         (val_print_string): Update.
6897         * python/py-value.c (valpy_string): Update.
6898         * language.h (struct language_defn) <la_get_string>: Change
6899         type of "buffer".
6900         (default_get_string, c_get_string): Update.
6901         * language.c (default_get_string): Change type of "buffer".
6902         * guile/scm-value.c (gdbscm_value_to_string): Update.
6903         * c-lang.c (c_get_string): Change type of "buffer".
6904
6905 2018-06-18  Tom Tromey  <tom@tromey.com>
6906
6907         * ser-mingw.c (struct pipe_state_destroyer): New.
6908         (pipe_state_up): New typedef.
6909         (cleanup_pipe_state): Remove.
6910         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6911
6912 2018-06-18  Tom Tromey  <tom@tromey.com>
6913
6914         * rust-lang.h (rust_yyerror): Don't declare.
6915         * rust-lang.c (rust_language_defn): Update.
6916         * rust-exp.y (yyerror): Now static.
6917         * parse.c (parse_exp_in_context_1): Update.
6918         * p-lang.h (p_yyerror): Don't declare.
6919         * p-lang.c (p_language_defn): Update.
6920         * p-exp.y (yyerror): Now static.
6921         * opencl-lang.c (opencl_language_defn): Update.
6922         * objc-lang.c (objc_language_defn): Update.
6923         * m2-lang.h (m2_yyerror): Don't declare.
6924         * m2-lang.c (m2_language_defn): Update.
6925         * m2-exp.y (yyerror): Now static.
6926         * language.h (struct language_defn) <la_error>: Remove.
6927         * language.c (unk_lang_error): Remove.
6928         (unknown_language_defn, auto_language_defn): Remove.
6929         * go-lang.h (go_yyerror): Don't declare.
6930         * go-lang.c (go_language_defn): Update.
6931         * go-exp.y (yyerror): Now static.
6932         * f-lang.h (f_yyerror): Don't declare.
6933         * f-lang.c (f_language_defn): Update.
6934         * f-exp.y (yyerror): Now static.
6935         * d-lang.h (d_yyerror): Don't declare.
6936         * d-lang.c (d_language_defn): Update.
6937         * d-exp.y (yyerror): Now static.
6938         * c-lang.h (c_yyerror): Don't declare.
6939         * c-lang.c (c_language_defn, cplus_language_defn)
6940         (asm_language_defn, minimal_language_defn): Update.
6941         * c-exp.y (yyerror): Now static.
6942         * ada-lang.h (ada_yyerror): Don't declare.
6943         * ada-lang.c (ada_language_defn): Update.
6944         * ada-exp.y (yyerror): Now static.
6945
6946 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6947
6948         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6949         (store_sveregs_to_thread): Likewise.
6950         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6951         (aarch64_linux_store_inferior_registers): Likewise.
6952         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6953         function.
6954         (aarch64_sve_regs_copy_to_regcache): Likewise.
6955         (aarch64_sve_regs_copy_from_regcache): Likewise.
6956         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6957         declaration.
6958         (aarch64_sve_regs_copy_to_regcache): Likewise.
6959         (aarch64_sve_regs_copy_from_regcache): Likewise.
6960         (sve_context): Structure from Linux headers.
6961         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6962         (SVE_SIG_ZREG_SIZE): Likewise.
6963         (SVE_SIG_PREG_SIZE): Likewise.
6964         (SVE_SIG_FFR_SIZE): Likewise.
6965         (SVE_SIG_REGS_OFFSET): Likewise.
6966         (SVE_SIG_ZREGS_OFFSET): Likewise.
6967         (SVE_SIG_ZREG_OFFSET): Likewise.
6968         (SVE_SIG_ZREGS_SIZE): Likewise.
6969         (SVE_SIG_PREGS_OFFSET): Likewise.
6970         (SVE_SIG_PREG_OFFSET): Likewise.
6971         (SVE_SIG_PREGS_SIZE): Likewise.
6972         (SVE_SIG_FFR_OFFSET): Likewise.
6973         (SVE_SIG_REGS_SIZE): Likewise.
6974         (SVE_SIG_CONTEXT_SIZE): Likewise.
6975         (SVE_PT_REGS_MASK): Likewise.
6976         (SVE_PT_REGS_FPSIMD): Likewise.
6977         (SVE_PT_REGS_SVE): Likewise.
6978         (SVE_PT_VL_INHERIT): Likewise.
6979         (SVE_PT_VL_ONEXEC): Likewise.
6980         (SVE_PT_REGS_OFFSET): Likewise.
6981         (SVE_PT_FPSIMD_OFFSET): Likewise.
6982         (SVE_PT_FPSIMD_SIZE): Likewise.
6983         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6984         (SVE_PT_SVE_PREG_SIZE): Likewise.
6985         (SVE_PT_SVE_FFR_SIZE): Likewise.
6986         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6987         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6988         (__SVE_SIG_TO_PT): Likewise.
6989         (SVE_PT_SVE_OFFSET): Likewise.
6990         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6991         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6992         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6993         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6994         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6995         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6996         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6997         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6998         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6999         (SVE_PT_SVE_SIZE): Likewise.
7000         (SVE_PT_SIZE): Likewise.
7001         (HAS_SVE_STATE): New define.
7002
7003 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7004
7005         * nat/aarch64-sve-linux-sigcontext.h: New file.
7006         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7007         new files.
7008         (SVE_VQ_MIN): Likewise.
7009         (SVE_VQ_MAX): Likewise.
7010         (SVE_VL_MIN): Likewise.
7011         (SVE_VL_MAX): Likewise.
7012         (SVE_NUM_ZREGS): Likewise.
7013         (SVE_NUM_PREGS): Likewise.
7014         (sve_vl_valid): Likewise.
7015         (struct user_sve_header): Likewise.
7016
7017 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7018             Richard Bunt <Richard.Bunt@arm.com>
7019
7020         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7021         was requested by GDB.
7022
7023 2018-06-15  Tom de Vries  <tdevries@suse.de>
7024
7025         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7026
7027 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7028
7029         * gnulib/update-gnulib.sh: Print expected versions of
7030         autoconf/aclocal.
7031
7032 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7033
7034         * arch-utils.c (default_type_align): Use type_length_units.
7035         * gdbtypes.c (type_align): Use type_length_units.
7036
7037 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7038
7039         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7040         of 'define' command.
7041
7042 2018-06-14  Tom de Vries  <tdevries@suse.de>
7043
7044         PR cli/22573
7045         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7046         get_no_prettyformat_print_options.
7047
7048 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7049
7050         * sparc-nat.h: Include target.h.
7051         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7052         <fetch_registers>: Remove this argument in function call.
7053         <store_registers>: Remove this argument in function call, remove
7054         extra semicolon.
7055         <low_forget_process>: Call sparc64_forget_process instead of
7056         sparc_forget_process.
7057
7058 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7059
7060         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7061         (procfs_target::make_corefile_notes): Adjust to new
7062         target_read_alloc return type.
7063
7064 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7065             Stephen Roberts  <stephen.roberts@arm.com>
7066
7067         PR gdb/22882
7068         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7069         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7070         Move should_notify_stop local into more inner scope.
7071
7072 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7073             Stephen Roberts  <stephen.roberts@arm.com>
7074
7075         PR gdb/22882
7076         * infrun.c (resume_1): Add call to mark_async_event_handler.
7077
7078 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7079
7080         * infrun.c (do_target_wait): Change old version of $pc printed.
7081
7082 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7083
7084         * dwarf2read.c (read_index_from_section): Rename to...
7085         (read_gdb_index_from_section): ... this, update all callers.
7086         (dwarf2_read_index): Rename to...
7087         (dwarf2_read_gdb_index): ... this, update all callers.
7088
7089 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7090
7091         * gdb/hppa-linux-nat.c
7092         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7093         hppa_linux_nat_target::fetch_registers.
7094
7095 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7096
7097         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7098         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7099         (AARCH64_DWARF_SVE_FFR): Likewise.
7100         (AARCH64_DWARF_SVE_P0): Likewise.
7101         (AARCH64_DWARF_SVE_Z0): Likewise.
7102
7103 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7104
7105         * common/common-regcache.h (raw_compare): New function.
7106         * regcache.c (regcache::raw_compare): Likewise.
7107         * regcache.h (regcache::raw_compare): New declaration.
7108
7109 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7110
7111         * common/common-regcache.h (reg_buffer_common): New structure.
7112         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7113         (reg_buffer::raw_supply): Likewise.
7114         (reg_buffer::raw_supply_integer): Likewise.
7115         (reg_buffer::raw_supply_zeroed): Likewise.
7116         (reg_buffer::raw_collect): Likewise.
7117         (reg_buffer::raw_collect_integer): Likewise.
7118         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7119         (reg_buffer::raw_supply): Likewise.
7120         (reg_buffer::raw_supply_integer): Likewise.
7121         (reg_buffer::raw_supply_zeroed): Likewise.
7122         (reg_buffer::raw_collect): Likewise.
7123         (reg_buffer::raw_collect_integer): Likewise.
7124
7125 2018-06-10  Tom Tromey  <tom@tromey.com>
7126
7127         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7128         (class remote_state) <stop_reply_queue>: Now std::vector.
7129         (remote_state::~remote_state)
7130         (remote_target::stop_reply_queue_length): Update.
7131         (struct queue_iter_param, remove_child_of_pending_fork)
7132         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7133         (check_pending_event_prevents_wildcard_vcont_callback)
7134         (remove_stop_reply_for_inferior)
7135         (remove_stop_reply_of_remote_state)
7136         (remote_notif_remove_once_on_match)
7137         (stop_reply_match_ptid_and_ws)
7138         (remote_kill_child_of_pending_fork): Remove.
7139         (remote_target::remove_new_fork_children)
7140         (remote_target::check_pending_events_prevent_wildcard_vcont)
7141         (remote_target::discard_pending_stop_replies)
7142         (remote_target::discard_pending_stop_replies_in_queue)
7143         (remote_target::remote_notif_remove_queued_reply)
7144         (remote_target::queued_stop_reply)
7145         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7146         (remote_target::wait, remote_target::kill_new_fork_children)
7147         (remote_target::async): Update.
7148
7149 2018-06-10  Tom Tromey  <tom@tromey.com>
7150
7151         * record-full.c (record_full_arch_list_cleanups): Remove.
7152         (record_full_message): Use try/catch.
7153         (record_full_wait_cleanups): Remove.
7154         (record_full_wait_1): Use try/catch.
7155         (record_full_restore): Likewise.
7156
7157 2018-06-10  Tom Tromey  <tom@tromey.com>
7158
7159         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7160         declare VEC.  Add constructor.
7161         <in_target_beneath>: Now bool.
7162         (record_full_breakpoints): Now a std::vector, static.
7163         (record_full_sync_record_breakpoints)
7164         (record_full_init_record_breakpoints)
7165         (record_full_target::insert_breakpoint)
7166         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7167
7168 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7169
7170         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7171         * serial.c (serial_interface_lookup): Remove struct keyword.
7172
7173 2018-06-10  Tom Tromey  <tom@tromey.com>
7174
7175         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7176         method.
7177         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7178         a method.
7179         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7180         method.
7181         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7182         "beneath" as a method.
7183         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7184         Use "beneath" as a method.
7185
7186 2018-06-10  Tom Tromey  <tom@tromey.com>
7187
7188         * tracefile.c (struct trace_file_writer_deleter): New.
7189         <operator()>: Rename from trace_file_writer_xfree.
7190         (trace_file_writer_up): New typedef.
7191         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7192
7193 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7194
7195         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7196         <m_registers, m_register_status>: Change type to
7197         std::unique_ptr.
7198         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7199         XCNEWVEC.
7200
7201 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7202
7203         * common/common-regcache.h (enum register_status): Add
7204         underlying type "signed char".
7205         * regcache.h (reg_buffer) <m_register_status>: Change type to
7206         register_status *.
7207         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7208         register_status instead of signed char.
7209         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7210         (reg_buffer::get_register_status): Remove cast.
7211         (readable_regcache::raw_read): Remove cast.
7212         (readable_regcache::cooked_read): Remove cast.
7213
7214 2018-06-09  Tom Tromey  <tom@tromey.com>
7215
7216         * source.c (reverse_search_command, forward_search_command): Use
7217         scoped_fd.
7218
7219 2018-06-09  Tom Tromey  <tom@tromey.com>
7220
7221         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7222         (serial_ops_list): Now static, std::vector.
7223         (serial_interface_lookup, serial_add_interface): Update.
7224
7225 2018-06-09  Tom Tromey  <tom@tromey.com>
7226
7227         * dwarf2read.c (process_cu_includes): Update.
7228         (process_full_comp_unit): Update.
7229         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7230         std::vector.
7231
7232 2018-06-08  Paul Koning  <paul_koning@dell.com>
7233
7234         PR gdb/23252
7235
7236         * python/python.c (do_start_initialization):
7237         Avoid call to internal Python API.
7238         (init__gdb_module): New function.
7239
7240 2018-06-08  Gary Benson <gbenson@redhat.com>
7241
7242         * linux-thread-db.c (valprint.h): New include.
7243         (struct check_thread_db_info): New structure.
7244         (check_thread_db_on_load, tdb_testinfo): New static globals.
7245         (check_thread_db, check_thread_db_callback): New functions.
7246         (try_thread_db_load_1): Run integrity checks if requested.
7247         (maintenance_check_libthread_db): New function.
7248         (_initialize_thread_db): Register "maint check libthread-db"
7249         and "maint set/show check-libthread-db".
7250         * NEWS: Mention the above new commands.
7251
7252 2018-06-08  Tom Tromey  <tom@tromey.com>
7253
7254         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7255         now a method.
7256
7257 2018-06-08  Tom Tromey  <tom@tromey.com>
7258
7259         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7260
7261 2018-06-08  Tom Tromey  <tom@tromey.com>
7262
7263         * common/btrace-common.h (struct btrace_data): Add constructor,
7264         destructor, move assignment operator.
7265         <empty, clear, fini>: New methods.
7266         <format>: Initialize.
7267         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7268         (btrace_data_empty): Don't declare.
7269         * common/btrace-common.c (btrace_data_init): Remove.
7270         (btrace_data::fini): Rename from btrace_data_fini.
7271         (btrace_data::empty): Rename from btrace_data_empty.
7272         (btrace_data::clear): Rename from btrace_data_clear.  Return
7273         bool.
7274         * btrace.h (make_cleanup_btrace_data): Don't declare.
7275         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7276         (parse_xml_btrace): Update.
7277         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7278         (maint_btrace_clear_packet_history_cmd): Update.
7279
7280 2018-06-07  Pedro Alves  <palves@redhat.com>
7281
7282         * target.h (target_ops) <beneath>: Now a method.  All references
7283         updated.
7284         (class target_stack): New.
7285         * target.c (g_target_stack): New.
7286         (g_current_top_target): Delete.
7287         (current_top_target): Get the top target out of g_target_stack.
7288         (target_stack::push, target_stack::unpush): New.
7289         (push_target, unpush_target): Reimplement.
7290         (target_is_pushed): Reimplement in terms of g_target_stack.
7291         (target_ops::beneath, target_stack::find_beneath): New.
7292
7293 2018-06-07  Pedro Alves  <palves@redhat.com>
7294
7295         * target.h (find_target_beneath): Delete declaration.
7296         * target.c (find_target_beneath): Delete definition.
7297         * aix-thread.c: All callers of find_target_beneath adjusted to
7298         call target_ops::beneath instead.
7299         * bsd-uthread.c: Likewise.
7300         * linux-thread-db.c: Likewise.
7301         * ravenscar-thread.c: Likewise.
7302         * sol-thread.c: Likewise.
7303         * spu-multiarch.c: Likewise.
7304
7305 2018-06-07  Pedro Alves  <palves@redhat.com>
7306
7307         * target.h (target_ops) <beneath>: Now a method.  All references
7308         updated.
7309         (target_ops) <m_beneath>: New.
7310         * target.c (target_ops::beneath): New.
7311         * corelow.c: Adjust all references to target_ops::beneath.
7312         * linux-thread-db.c: Likewise.
7313         * make-target-delegates: Likewise.
7314         * record-btrace.c: Likewise.
7315         * record-full.c: Likewise.
7316         * remote.c: Likewise.
7317         * target.c: Likewise.
7318         * target-delegates.c: Regenerate.
7319
7320 2018-06-07  Pedro Alves  <palves@redhat.com>
7321
7322         * target.h (target_stack): Delete.
7323         (current_top_target): Declare function.
7324         * target.c (target_stack): Delete.
7325         (g_current_top_target): New.
7326         (current_top_target): New function.
7327         * auxv.c: Use current_top_target instead of target_stack
7328         throughout.
7329         * avr-tdep.c: Likewise.
7330         * breakpoint.c: Likewise.
7331         * corefile.c: Likewise.
7332         * elfread.c: Likewise.
7333         * eval.c: Likewise.
7334         * exceptions.c: Likewise.
7335         * frame.c: Likewise.
7336         * gdbarch-selftests.c: Likewise.
7337         * gnu-v3-abi.c: Likewise.
7338         * ia64-tdep.c: Likewise.
7339         * ia64-vms-tdep.c: Likewise.
7340         * infcall.c: Likewise.
7341         * infcmd.c: Likewise.
7342         * infrun.c: Likewise.
7343         * linespec.c: Likewise.
7344         * linux-tdep.c: Likewise.
7345         * minsyms.c: Likewise.
7346         * ppc-linux-nat.c: Likewise.
7347         * ppc-linux-tdep.c: Likewise.
7348         * procfs.c: Likewise.
7349         * regcache.c: Likewise.
7350         * remote.c: Likewise.
7351         * rs6000-tdep.c: Likewise.
7352         * s390-linux-nat.c: Likewise.
7353         * s390-tdep.c: Likewise.
7354         * solib-aix.c: Likewise.
7355         * solib-darwin.c: Likewise.
7356         * solib-dsbt.c: Likewise.
7357         * solib-spu.c: Likewise.
7358         * solib-svr4.c: Likewise.
7359         * solib-target.c: Likewise.
7360         * sparc-tdep.c: Likewise.
7361         * sparc64-tdep.c: Likewise.
7362         * spu-tdep.c: Likewise.
7363         * symfile.c: Likewise.
7364         * symtab.c: Likewise.
7365         * target-descriptions.c: Likewise.
7366         * target-memory.c: Likewise.
7367         * target.c: Likewise.
7368         * target.h: Likewise.
7369         * tracefile-tfile.c: Likewise.
7370         * tracepoint.c: Likewise.
7371         * valops.c: Likewise.
7372         * valprint.c: Likewise.
7373         * value.c: Likewise.
7374         * windows-tdep.c: Likewise.
7375         * mi/mi-main.c: Likewise.
7376
7377 2018-06-07  Tom Tromey  <tom@tromey.com>
7378
7379         * valprint.h (build_address_symbolic): Declare.
7380         * printcmd.c (print_address_symbolic): Update.
7381         (build_address_symbolic): Change "name" and "filename" to
7382         std::string.
7383         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7384         Update.
7385         * defs.h (build_address_symbolic): Remove declaration.
7386
7387 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7388
7389         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7390         (aarch64_vnv_type): Add function.
7391         (aarch64_pseudo_register_name): Add V regs for SVE.
7392         (aarch64_pseudo_register_type): Likewise.
7393         (aarch64_pseudo_register_reggroup_p): Likewise.
7394         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7395         (aarch64_pseudo_read_value): Add V regs for SVE.
7396         (aarch64_pseudo_write_2): Use V0 offset for SVE
7397         (aarch64_pseudo_write): Add V regs for SVE.
7398         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7399
7400 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7401
7402         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7403         (sve_vl_from_vq): Likewise.
7404
7405 2018-06-05  Tom Tromey  <tom@tromey.com>
7406
7407         * cli/cli-cmds.c (show_version): Update.
7408         * top.c (print_gdb_version): Add "interactive" parameter.
7409         Update.
7410         * main.c (captured_main_1): Update.
7411         * top.h (print_gdb_version): Add "interactive" parameter and a
7412         comment.
7413
7414 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7415
7416         * common/enum-flags.h: Add trailing semicolon to example in
7417         comment.
7418
7419 2018-06-05  Tom Tromey  <tom@tromey.com>
7420
7421         PR cli/12326:
7422         * NEWS: Add entry about pager.
7423         * utils.c (pagination_disabled_for_command): New global.
7424         (prompt_for_continue): Allow "c" response to prompt.
7425         (reinitialize_more_filter): Clear
7426         pagination_disabled_for_command.
7427         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7428
7429 2018-06-04  Tom Tromey  <tom@tromey.com>
7430
7431         * ada-lang.h (ada_lookup_symbol_list): Update.
7432         * ada-lang.c (resolve_subexp): Update.
7433         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7434         parameter.
7435         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7436         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7437         results parameter to std::vector.
7438         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7439         Update.
7440         * ada-exp.y (block_lookup): Update.
7441         (select_possible_type_sym): Change type of syms.  Remove nsyms
7442         parameter.
7443         (write_var_or_type, write_name_assoc): Update.
7444
7445 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7446
7447         * windows-nat.c (windows_nat_target::xfer_partial): Return
7448         TARGET_XFER_E_IO if we need to delegate to the target beneath
7449         but BENEATH is NULL.
7450
7451 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7452
7453         * Makefile.in (config.status): Add configure.nat as a
7454         dependency.
7455
7456 2018-06-04  Tom Tromey  <tom@tromey.com>
7457
7458         * cp-name-parser.y (cpname_state): Add method declarations.
7459         (HANDLE_QUAL): Update.
7460         (cpname_state::d_grab, cpname_state::fill_comp)
7461         (cpname_state::make_operator, cpname_state::make_dtor)
7462         (cpname_state::make_builtin_type, cpname_state::make_name)
7463         (cpname_state::d_qualify, cpname_state::d_int_type)
7464         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7465         (%union): Move earlier.
7466
7467 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7468
7469         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7470
7471 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7472
7473         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7474         (aarch64_pseudo_write_1): Likewise.
7475         (aarch64_pseudo_read_value): Use helper.
7476         (aarch64_pseudo_write): Likewise.
7477
7478 2018-06-04  Pedro Alves  <palves@redhat.com>
7479
7480         * darwin-nat.c (darwin_ops): Delete.
7481         (darwin_attach_pid): Use get_native_target.
7482
7483 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7484
7485         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7486         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7487
7488 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7489
7490         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7491         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7492         (aarch64_gdbarch_init): Check for SVE.
7493         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7494
7495 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7496
7497         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7498         * aarch64-tdep.h (aarch64_read_description): Likewise.
7499         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7500         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7501         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7502         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7503         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7504
7505 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7506
7507         * value.c (value_fetch_lazy_bitfield): New.
7508         (value_fetch_lazy_memory): New.
7509         (value_fetch_lazy_register): New.
7510         (value_fetch_lazy): Factor out to smaller functions.
7511
7512 2018-06-01  Tom Tromey  <tom@tromey.com>
7513
7514         * cp-name-parser.y (backslashable, represented): Now const.
7515
7516 2018-06-01  Tom Tromey  <tom@tromey.com>
7517
7518         * cp-name-parser.y: Include parser-defs.h.
7519         (parser_fprintf): Remove declaration.
7520
7521 2018-06-01  Tom Tromey  <tom@tromey.com>
7522
7523         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7524         %parse-param.
7525         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7526         (global_result): Remove globals.
7527         (struct cpname_state): New.
7528         (yyparse): Don't declare.
7529         (yylex, yyerror): Move declarations after %union.
7530         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7531         (make_name): Add state parameter.
7532         Update all callers.
7533         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7534         parameter.
7535         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7536         Update.
7537         (yylex): Add lvalp, state parameters.
7538         (yyerror): Add state parameter.
7539         (cp_demangled_name_to_comp): Update.
7540
7541 2018-06-01  Tom Tromey  <tom@tromey.com>
7542
7543         * cp-name-parser.y (parser_fprintf): Declare.
7544         (GDB_YY_REMAP_PREFIX): Define.
7545         Include yy-remap.h.  Don't redefine yy* identifiers.
7546
7547 2018-06-01  Tom Tromey  <tom@tromey.com>
7548
7549         * python/py-type.c (typy_legacy_template_argument): Update.
7550         * cp-support.h (cp_demangled_name_to_comp): Update.
7551         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7552         parameter to be a "std::string *".
7553         (main): Update.
7554
7555 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7556
7557         * ada-lex.l: Include "diagnostics.h" instead of
7558         "common/diagnostics.h".
7559         * unittests/environ-selftests.c: Likewise.
7560         * common/diagnostics.h: Moved to ../include.
7561
7562 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7563
7564         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7565         to language_mode_manual while calling breakpoint_re_set_one.
7566
7567 2018-06-01  Tom Tromey  <tom@tromey.com>
7568
7569         * valops.c (value_cast_structs, destructor_name_p): Update.
7570         * symtab.c (gdb_mangle_name): Update.
7571         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7572         Update.
7573         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7574         (pascal_object_print_value_fields, pascal_object_print_value):
7575         Update.
7576         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7577         * linespec.c (find_methods): Update.
7578         * gdbtypes.h (type_name_no_tag): Remove.
7579         (type_name_or_error): Rename from type_name_no_tag_or_error.
7580         * gdbtypes.c (type_name_no_tag): Remove.
7581         (type_name_or_error): Rename from type_name_no_tag_or_error.
7582         (lookup_struct_elt_type, check_typedef): Update.
7583         * expprint.c (print_subexp_standard): Update.
7584         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7585         * d-namespace.c (d_lookup_nested_symbol): Update.
7586         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7587         (cp_print_class_member): Update.
7588         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7589         * completer.c (add_struct_fields): Update.
7590         * c-typeprint.c (cp_type_print_derivation_info)
7591         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7592         Update.
7593         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7594         (ada_prefer_type, ada_is_exception_sym): Update.
7595
7596 2018-06-01  Tom Tromey  <tom@tromey.com>
7597
7598         * valops.c (enum_constant_from_type, value_namespace_elt)
7599         (value_maybe_namespace_elt): Update.
7600         * valarith.c (find_size_for_pointer_math): Update.
7601         * target-descriptions.c (make_gdb_type): Update.
7602         * symmisc.c (print_symbol): Update.
7603         * stabsread.c (define_symbol, read_type)
7604         (complain_about_struct_wipeout, add_undefined_type)
7605         (cleanup_undefined_types_1): Update.
7606         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7607         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7608         (rust_internal_print_type, rust_composite_type)
7609         (rust_evaluate_funcall, rust_evaluate_subexp)
7610         (rust_inclusive_range_type_p): Update.
7611         * python/py-type.c (typy_get_tag): Update.
7612         * p-typeprint.c (pascal_type_print_base): Update.
7613         * mdebugread.c (parse_symbol, parse_type): Update.
7614         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7615         Update.
7616         * guile/scm-type.c (gdbscm_type_tag): Update.
7617         * go-lang.c (sixg_string_p): Update.
7618         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7619         Update.
7620         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7621         (TYPE_TAG_NAME): Remove.
7622         * gdbtypes.c (type_name_no_tag): Simplify.
7623         (check_typedef, check_types_equal, recursive_dump_type)
7624         (copy_type_recursive, arch_composite_type): Update.
7625         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7626         in summary mode when needed.
7627         * eval.c (evaluate_funcall): Update.
7628         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7629         (process_structure_scope, read_enumeration_type)
7630         (read_namespace_type, read_module_type, determine_prefix): Update.
7631         * cp-support.c (inspect_type): Update.
7632         * coffread.c (process_coff_symbol, decode_base_type): Update.
7633         * c-varobj.c (c_is_path_expr_parent): Update.
7634         * c-typeprint.c (c_type_print_base_struct_union): Update.
7635         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7636         summary when using C language.
7637         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7638         (gen_maybe_namespace_elt): Update.
7639         * ada-lang.c (ada_type_name): Simplify.
7640         (empty_record, ada_template_to_fixed_record_type_1)
7641         (template_to_static_fixed_type)
7642         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7643
7644 2018-06-01  Tom Tromey  <tom@tromey.com>
7645
7646         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7647         c_print_type.
7648         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7649         (c_print_type): Update.
7650         (c_print_type): New overload.
7651         (c_type_print_varspec_prefix, c_type_print_args)
7652         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7653         (c_type_print_base_struct_union, c_type_print_base_1)
7654         (cp_type_print_method_args): Add "language" parameter.
7655         (c_type_print_base): Update.
7656         * c-lang.h (c_print_type): Add new overload.
7657
7658 2018-06-01  Tom Tromey  <tom@tromey.com>
7659
7660         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7661         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7662
7663 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7664
7665         * aarch64-tdep.c (aarch64_sve_register_names): New const
7666         var.
7667         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7668         (AARCH64_SVE_Z_REGS_NUM): New define.
7669         (AARCH64_SVE_P_REGS_NUM): Likewise.
7670         (AARCH64_SVE_NUM_REGS): Likewise.
7671
7672 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7673
7674         * nat/linux-ptrace.h [__alpha__]
7675         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7676         definitions.
7677
7678 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7679
7680         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7681         the endianness selected.
7682         * NEWS: Document `set endian auto' mode operation update.
7683
7684 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7685
7686         * Makefile.in: Add new header.
7687         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7688         (sve_vl_from_vg): Likewise.
7689         (sve_vq_from_vl): Likewise.
7690         (sve_vl_from_vq): Likewise.
7691         (sve_vq_from_vg): Likewise.
7692         (sve_vg_from_vq): Likewise.
7693         * configure.nat: Add new c file.
7694         * nat/aarch64-sve-linux-ptrace.c: New file.
7695         * nat/aarch64-sve-linux-ptrace.h: New file.
7696
7697 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7698
7699         * aarch64-linux-nat.c (aarch64_linux_read_description):
7700         Add parmeter zero.
7701         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7702         Likewise.
7703         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7704         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7705         (aarch64_gdbarch_init): Add parmeter zero.
7706         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7707         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7708         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7709         parmeter.
7710         * doc/gdb.texinfo: Describe SVE feature
7711         * features/aarch64-sve.c: New file.
7712
7713 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7714
7715         PR gdb/23210
7716         * gdbarch.sh (significant_addr_bit): Default to zero when
7717         not set by target architecture.
7718         * gdbarch.c: Re-generated.
7719         * utils.c (address_significant): Update.
7720
7721 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7722
7723         * stack.c (func_command): Remove trailing newline in call to error.
7724
7725 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7726
7727         * regcache.h (regcache_raw_collect): Remove, update callers to
7728         use regcache::raw_collect.
7729         * regcache.c (regcache_raw_collect): Remove.
7730
7731 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7732
7733         * regcache.h (regcache_raw_supply): Remove, update callers to
7734         use detached_regcache::raw_supply.
7735         * regcache.c (regcache_raw_supply): Remove.
7736
7737 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7738
7739         * regcache.h (regcache_cooked_write_part): Remove, update
7740         callers to use regcache::cooked_write_part.
7741         * regcache.c (regcache_cooked_write_part): Remove.
7742
7743 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7744
7745         * regcache.h (regcache_cooked_read_part): Remove, update callers
7746         to use readable_regcache::cooked_read_part.
7747         * regcache.c (regcache_cooked_read_part): Remove.
7748
7749 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7750
7751         * regcache.h (regcache_cooked_read_value): Remove, update
7752         callers to use readable_regcache::cooked_read_value.
7753         * regcache.c (regcache_cooked_read_value): Remove.
7754
7755 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7756
7757         * regcache.h (regcache_cooked_write): Remove, update callers to
7758         use regcache::cooked_write.
7759         * regcache.c (regcache_cooked_write): Remove.
7760
7761 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7762
7763         * regcache.h (regcache_invalidate): Remove, update callers to
7764         use detached_regcache::invalidate instead.
7765         * regcache.c (regcache_invalidate): Remove.
7766
7767 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7768
7769         * regcache.h (regcache_raw_write_part): Remove, update callers
7770         to use regcache::raw_write_part instead.
7771         * regcache.c (regcache_raw_write_part): Remove.
7772
7773 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7774
7775         * regcache.h (regcache_raw_read_part): Remove, update callers to
7776         use readable_regcache::raw_read_part instead.
7777         * regcache.c (regcache_raw_read_part): Remove.
7778
7779 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7780
7781         * regcache.h (regcache_cooked_read): Remove, update callers to
7782         use readable_regcache::cooked_read instead.
7783         * regcache.c (regcache_cooked_read): Remove.
7784
7785 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7786
7787         * regcache.h (regcache_raw_write): Remove, update callers to use
7788         regcache::raw_write instead.
7789         * regcache.c (regcache_raw_write): Remove.
7790
7791 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7792
7793         * regcache.h (regcache_raw_read): Remove, update callers to use
7794         readable_regcache::raw_read instead.
7795         * regcache.c (regcache_raw_read): Remove.
7796
7797 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7798
7799         * regcache.h (regcache_raw_update): Remove, update callers to
7800         use readable_regcache::raw_update instead.
7801         * regcache.c (regcache_raw_update): Remove.
7802
7803 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7804
7805         * regcache.h (regcache_register_status): Remove, update callers
7806         to use reg_buffer::get_register_status directly instead.
7807         * regcache.c (regcache_register_status): Remove.
7808
7809 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7810
7811         * regcache.h (regcache_get_ptid): Remove, update all callers to
7812         call regcache::ptid instead.
7813         * regcache.c (regcache_get_ptid): Remove.
7814
7815 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7816
7817         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7818
7819 2018-05-30  Pedro Alves  <palves@redhat.com>
7820
7821         * common/common-exceptions.h (exception_rethrow): Use
7822         ATTRIBUTE_NORETURN.
7823
7824 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7825
7826         * breakpoint.c (print_solib_event, check_status_catch_solib):
7827         Remove struct keyword in range-based for loops.
7828         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7829         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7830         Likewise.
7831         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7832         Likewise.
7833         * symfile.c (addr_info_make_relative): Likewise.
7834         * thread.c (value_in_thread_stack_temporaries): Likewise.
7835
7836 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7837
7838         PR gdb/16841
7839         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7840         aggregate type to get its real type before accessing it.
7841
7842 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7843
7844         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7845         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7846         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7847         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7848         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7849         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7850         * printcmd.c (info_address_command): Likewise.
7851
7852 2018-05-29  Tom Tromey  <tom@tromey.com>
7853
7854         * windows-nat.c (handle_exception): Update fall-through comment.
7855
7856 2018-05-29  Tom Tromey  <tom@tromey.com>
7857
7858         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7859         (struct program_space) <added_solibs>: Now a std::vector.
7860         * breakpoint.c (print_solib_event): Update.
7861         (check_status_catch_solib): Update.
7862         * progspace.c (clear_program_space_solib_cache): Update.
7863         * solib.c (update_solib_list): Update.
7864
7865 2018-05-29  Tom Tromey  <tom@tromey.com>
7866
7867         * python/py-type.c (typy_richcompare): Update.
7868         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7869         * gdbtypes.h (types_deeply_equal): Return bool.
7870         (types_equal): Likewise.
7871         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7872         declare VEC.
7873         (check_types_equal): Change worklist to std::vector.  Return
7874         bool.
7875         (struct type_equality_entry): Add constructor.
7876         (compare_maybe_null_strings): Return bool.
7877         (check_types_worklist): Return bool.  Change worklist to
7878         std::vector.
7879         (types_deeply_equal): Use std::vector.
7880         (types_equal): Return bool.
7881         (compare_maybe_null_strings): Simplify.
7882
7883 2018-05-29  Tom Tromey  <tom@tromey.com>
7884
7885         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7886
7887 2018-05-29  Tom Tromey  <tom@tromey.com>
7888
7889         * objc-lang.h: Don't include cp-support.h.
7890         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7891         declare VEC.
7892
7893 2018-05-27  Tom Tromey  <tom@tromey.com>
7894
7895         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7896
7897 2018-05-25  Tom Tromey  <tom@tromey.com>
7898
7899         * value.c (value::location): Initialize.
7900
7901 2018-05-25  Tom Tromey  <tom@tromey.com>
7902
7903         * dbxread.c (init_bincl_list): Remove.
7904         (bincl_list): Now a std::vector.
7905         (bincls_allocated, next_bincl): Remove.
7906         (free_bincl_list, do_free_bincl_list_cleanup)
7907         (make_cleanup_free_bincl_list): Remove.
7908         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7909         unique_xmalloc_ptr.
7910         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7911         (struct header_file_location): Add constructor.
7912         (add_bincl_to_list): Remove.
7913
7914 2018-05-25  Tom Tromey  <tom@tromey.com>
7915
7916         * tui/tui.c (tui_enable): Update.
7917         * mi/mi-interp.c (mi_interp::init): Update.
7918         * interps.h (class interp) <name>: New method.
7919         <m_name>: Rename from name.
7920         (~scoped_restore_interp): Update.
7921         * interps.c (interp::interp): Update.
7922         (interp_add, interp_set, interp_lookup_existing)
7923         (current_interp_named_p): Update.
7924
7925 2018-05-25  Tom Tromey  <tom@tromey.com>
7926
7927         * interps.c (interp_name): Remove.
7928         * mi/mi-interp.c (mi_interp::init): Update.
7929         * interps.h (interp_name): Remove.
7930         (~scoped_restore_interp): Update.
7931         * tui/tui.c (tui_enable): Update.
7932
7933 2018-05-25  Tom Tromey  <tom@tromey.com>
7934
7935         * utils.c (fputs_maybe_filtered): Update.
7936         * linespec.c (decode_line_full): Update.
7937         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7938         (mi_print_breakpoint_for_event, mi_solib_loaded)
7939         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7940         (mi_user_selected_context_changed): Update.
7941         * mi/mi-main.c (mi_execute_command): Update.
7942         * cli/cli-script.c (execute_control_command): Update.
7943         * python/python.c (execute_gdb_command): Update.
7944         * solib.c (info_sharedlibrary_command): Update.
7945         * interps.c (interp_ui_out): Remove.
7946         * interps.h (interp_ui_out): Remove.
7947
7948 2018-05-25  Tom Tromey  <tom@tromey.com>
7949
7950         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7951         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7952         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7953
7954 2018-05-25  Tom Tromey  <tom@tromey.com>
7955
7956         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7957         * interps.c (interp_exec): Use scoped_restore.
7958
7959 2018-05-25  Tom Tromey  <tom@tromey.com>
7960
7961         * remote.c (remote_target::remote_file_get): Use
7962         gdb::byte_vector.
7963         (remote_target::remote_file_put): Likewise.
7964
7965 2018-05-25  Tom Tromey  <tom@tromey.com>
7966
7967         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7968         a std::string.
7969         (get_pe_section_index, add_pe_exported_sym): Update.
7970         (read_pe_exported_syms): Use gdb::def_vector.
7971
7972 2018-05-25  Tom Tromey  <tom@tromey.com>
7973
7974         * frame.c (remove_prev_frame): Remove.
7975         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7976
7977 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7978
7979         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7980         Remove prototypes.
7981         * mips-linux-nat.c (supply_fpregset): Always call
7982         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7983         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7984         `mips_fill_fpregset'.
7985         * mips-linux-tdep.c (mips_supply_fpregset)
7986         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7987         (mips_fill_fpregset_wrapper): Remove functions.
7988         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7989         (mips_linux_fpregset): Remove variable.
7990         (mips_linux_iterate_over_regset_sections): Use
7991         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7992         (mips_linux_o32_sigframe_init): Remove comment.
7993
7994 2018-05-25  Pedro Alves  <palves@redhat.com>
7995
7996         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7997         (struct readahead_cache, struct packet_reg, struct
7998         remote_arch_state, class remote_state): Move higher up in the
7999         file.
8000         (remote_target::m_remote_state): Now an object instead of a pointer.
8001         (remote_target::get_remote_state): Adjust.
8002
8003 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8004
8005         * stack.c (select_and_print_frame): Delete.
8006         (struct function_bounds): Move struct within function.
8007         (func_command): Most content moved into new function
8008         find_frame_for_function, use new function, print result, add
8009         function comment.
8010         (find_frame_for_function): New function, now returns a result.
8011
8012 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8013
8014         * stack.c (iterate_over_block_arg_vars): Fix comment.
8015         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8016
8017 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8018
8019         PR gdb/23203
8020         * frame.c
8021         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8022         Define.
8023         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8024         Define.
8025         * frame.h (class scoped_restore_selected_frame): New class.
8026         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8027         of any exception, use scoped_restore_selected_frame to restore the
8028         frame instead.
8029
8030 2018-05-24  Pedro Alves  <palves@redhat.com>
8031
8032         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8033         override.
8034
8035 2018-05-23  Tom Tromey  <tom@tromey.com>
8036
8037         * complaints.c (struct complaints): Remove.
8038         (symfile_complaint_book): Remove.
8039         (series): New global.
8040         (complaint_internal): Update.
8041         (clear_complaints): Update.
8042
8043 2018-05-23  Tom Tromey  <tom@tromey.com>
8044
8045         * complaints.c (counters): New global.
8046         (struct complain): Remove.
8047         (struct complaints) <root>: Remove.
8048         (complaint_sentinel): Remove.
8049         (symfile_complaint_book): Update.
8050         (find_complaint) Remove.
8051         (complaint_internal, clear_complaints): Update.
8052
8053 2018-05-23  Tom Tromey  <tom@tromey.com>
8054
8055         * complaints.c (struct complain) <file, line>: Remove.
8056         (find_complaint): Remove file, line parameters.
8057         (complaint_internal): Update.
8058
8059 2018-05-23  Tom Tromey  <tom@tromey.com>
8060
8061         * complaints.c (vcomplaint): Remove.
8062         (complaint_internal) Merge in contents of vcomplaint.
8063
8064 2018-05-23  Tom Tromey  <tom@tromey.com>
8065
8066         * complaints.c (struct complaints) <explanation>: Remove.
8067         (symfile_explanations): Remove.
8068         (symfile_complaint_book): Update.
8069         (vcomplaint): Update.
8070         (struct explanation): Remove.
8071
8072 2018-05-23  Tom Tromey  <tom@tromey.com>
8073
8074         * complaints.c (symfile_complaints): Remove.
8075         (complaint_internal): Remove "complaints" parameter.
8076         (clear_complaints, vcomplaint): Remove "c" parameter.
8077         (get_complaints): Remove.
8078         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8079         (dwarf2_debug_line_missing_file_complaint)
8080         (dwarf2_debug_line_missing_end_sequence_complaint)
8081         (dwarf2_complex_location_expr_complaint)
8082         (dwarf2_const_value_length_mismatch_complaint)
8083         (dwarf2_section_buffer_overflow_complaint)
8084         (dwarf2_macro_malformed_definition_complaint)
8085         (dwarf2_invalid_attrib_class_complaint)
8086         (create_addrmap_from_index, dw2_symtab_iter_next)
8087         (dw2_expand_marked_cus)
8088         (dw2_debug_names_iterator::find_vec_in_debug_names)
8089         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8090         (create_debug_type_hash_table, init_cutu_and_read_dies)
8091         (partial_die_parent_scope, add_partial_enumeration)
8092         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8093         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8094         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8095         (create_cus_hash_table, create_dwp_hash_table)
8096         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8097         (dwarf2_rnglists_process, dwarf2_ranges_process)
8098         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8099         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8100         (handle_struct_member_die, process_structure_scope)
8101         (read_array_type, read_common_block, read_module_type)
8102         (read_tag_pointer_type, read_typedef, read_base_type)
8103         (read_subrange_type, load_partial_dies, partial_die_info::read)
8104         (partial_die_info::read, partial_die_info::read)
8105         (partial_die_info::read, read_checked_initial_length_and_offset)
8106         (dwarf2_string_attr, read_formatted_entries)
8107         (dwarf_decode_line_header)
8108         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8109         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8110         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8111         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8112         (get_signatured_type, get_DW_AT_signature_type)
8113         (decode_locdesc, file_file_name, consume_improper_spaces)
8114         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8115         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8116         (dwarf2_symbol_mark_computed, set_die_type)
8117         (read_attribute_value): Update.
8118         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8119         Update.
8120         * dbxread.c (unknown_symtype_complaint)
8121         (lbrac_mismatch_complaint, repeated_header_complaint)
8122         (set_namestring, function_outside_compilation_unit_complaint)
8123         (read_dbx_symtab, process_one_symbol): Update.
8124         * gdbtypes.c (stub_noname_complaint): Update.
8125         * windows-nat.c (handle_unload_dll): Update.
8126         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8127         (decode_base_type): Update.
8128         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8129         (eb_complaint, record_include_begin, record_include_end)
8130         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8131         (process_xcoff_symbol, read_symbol)
8132         (function_outside_compilation_unit_complaint)
8133         (scan_xcoff_symtab): Update.
8134         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8135         * buildsym.c (finish_block_internal, make_blockvector)
8136         (end_symtab_get_static_block, augment_type_symtab): Update.
8137         * dtrace-probe.c (dtrace_process_dof)
8138         (dtrace_static_probe_ops::get_probes): Update.
8139         * complaints.h (struct complaint): Don't declare.
8140         (symfile_complaints): Remove.
8141         (complaint_internal): Remove "complaints" parameter.
8142         (complaint): Likewise.
8143         (clear_complaints): Likewise.
8144         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8145         (reread_symbols): Update.
8146         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8147         (dwarf2_frame_cache, decode_frame_entry): Update.
8148         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8149         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8150         (info_selectors_command): Update.
8151         * macrotab.c (macro_include, check_for_redefinition)
8152         (macro_undef): Update.
8153         * objfiles.c (filter_overlapping_sections): Update.
8154         * stabsread.c (invalid_cpp_abbrev_complaint)
8155         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8156         (define_symbol, error_type, read_type, rs6000_builtin_type)
8157         (stabs_method_name_from_physname, read_member_functions)
8158         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8159         (attach_fields_to_type, complain_about_struct_wipeout)
8160         (read_range_type, read_args, common_block_start)
8161         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8162         Update.
8163         * mdebugread.c (index_complaint, unknown_ext_complaint)
8164         (basic_type_complaint, bad_tag_guess_complaint)
8165         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8166         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8167         (parse_procedure, parse_lines)
8168         (function_outside_compilation_unit_complaint)
8169         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8170         (bad_tag_guess_complaint, reg_value_complaint): Update.
8171         * cp-support.c (demangled_name_complaint): Update.
8172         * macroscope.c (sal_macro_scope): Update.
8173         * dwarf-index-write.c (class debug_names): Update.
8174
8175 2018-05-23  Tom Tromey  <tom@tromey.com>
8176
8177         * complaints.c (clear_complaints): Remove "noisy" parameter.
8178         * complaints.h (clear_complaints): Update.
8179         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8180         (reread_symbols): Update.
8181
8182 2018-05-23  Tom Tromey  <tom@tromey.com>
8183
8184         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8185         SUBSEQUENT_MESSAGE.
8186         (vcomplaint, clear_complaints): Update.
8187         (symfile_explanations): Remove some messages.
8188
8189 2018-05-23  Tom Tromey  <tom@tromey.com>
8190
8191         * complaints.c (internal_complaint): Remove.
8192         * complaints.h (internal_complaint): Remove.
8193
8194 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8195
8196         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8197
8198 2018-05-22  Pedro Alves  <palves@redhat.com>
8199
8200         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8201         (remote_fileio_badfd, remote_fileio_return_errno)
8202         (remote_fileio_return_success, remote_fileio_func_open)
8203         (remote_fileio_func_open, remote_fileio_func_close)
8204         (remote_fileio_func_read, remote_fileio_func_write)
8205         (remote_fileio_func_lseek, remote_fileio_func_rename)
8206         (remote_fileio_func_unlink, remote_fileio_func_stat)
8207         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8208         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8209         remote_target parameter.
8210         (remote_fio_func_map) <func>: Add remote_target parameter.
8211         (do_remote_fileio_request, remote_fileio_request):
8212         * remote-fileio.h (remote_fileio_request):
8213         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8214         remote_target parameter.
8215         (remote_notif_process, handle_notification): Adjust to pass down
8216         the remote.
8217         (remote_notif_state_allocate): Add remote_target parameter.  Save
8218         it.
8219         * remote-notif.h (struct remote_target): Forward declare.
8220         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8221         remote_target parameter.
8222         (struct remote_notif_state) <remote>: New field.
8223         (remote_notif_ack, remote_notif_parse): Add remote_target
8224         parameter.
8225         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8226         remote_target parameter.
8227         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8228         (threads_listing_context, rmt_thread_action, protocol_feature)
8229         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8230         (packet_result, struct threads_listing_context, remote_state):
8231         Move definitions and declarations higher up.
8232         (remote_target) <~remote_target>: Declare.
8233         (remote_download_command_source, remote_file_put, remote_file_get)
8234         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8235         (remote_hostio_pread_vFile, remote_hostio_send_command)
8236         (remote_hostio_set_filesystem, remote_hostio_open)
8237         (remote_hostio_close, remote_hostio_unlink, remote_state)
8238         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8239         (get_memory_write_packet_size, get_memory_read_packet_size)
8240         (append_pending_thread_resumptions, remote_detach_1)
8241         (append_resumption, remote_resume_with_vcont)
8242         (add_current_inferior_and_thread, wait_ns, wait_as)
8243         (process_stop_reply, remote_notice_new_inferior)
8244         (process_initial_stop_replies, remote_add_thread)
8245         (btrace_sync_conf, remote_btrace_maybe_reopen)
8246         (remove_new_fork_children, kill_new_fork_children)
8247         (discard_pending_stop_replies, stop_reply_queue_length)
8248         (check_pending_events_prevent_wildcard_vcont)
8249         (discard_pending_stop_replies_in_queue, stop_reply)
8250         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8251         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8252         (remote_interrupt_as, remote_interrupt_ns)
8253         (remote_get_noisy_reply, remote_query_attached)
8254         (remote_add_inferior, remote_current_thread, get_current_thread)
8255         (set_thread, set_general_thread, set_continue_thread)
8256         (set_general_process, write_ptid)
8257         (remote_unpack_thread_info_response, remote_get_threadinfo)
8258         (parse_threadlist_response, remote_get_threadlist)
8259         (remote_threadlist_iterator, remote_get_threads_with_ql)
8260         (remote_get_threads_with_qxfer)
8261         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8262         (get_offsets, remote_check_symbols, remote_supported_packet)
8263         (remote_query_supported, remote_packet_size)
8264         (remote_serial_quit_handler, remote_detach_pid)
8265         (remote_vcont_probe, remote_resume_with_hc)
8266         (send_interrupt_sequence, interrupt_query)
8267         (remote_notif_get_pending_events, fetch_register_using_p)
8268         (send_g_packet, process_g_packet, fetch_registers_using_g)
8269         (store_register_using_P, store_registers_using_G)
8270         (set_remote_traceframe, check_binary_download)
8271         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8272         (remote_xfer_live_readonly_partial, remote_read_bytes)
8273         (remote_send_printf, remote_flash_write, readchar)
8274         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8275         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8276         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8277         (extended_remote_disable_randomization, extended_remote_run)
8278         (send_environment_packet, extended_remote_environment_support)
8279         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8280         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8281         (packet_command): Now methods of ...
8282         (remote_target): ... this class.
8283         (m_remote_state) <remote_target>: New field.
8284         (struct remote_state) <stop_reply_queue,
8285         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8286         fields.
8287         (remote_state::remote_state): Allocate stop_reply_queue.
8288         (remote_state): Delete global.
8289         (get_remote_state_raw): Delete.
8290         (remote_target::get_remote_state): Allocate m_remote_state on
8291         demand.
8292         (get_current_remote_target): New.
8293         (remote_ops, extended_remote_ops): Delete.
8294         (wait_forever_enabled_p, remote_async_inferior_event_token):
8295         Delete, moved to struct remote_state.
8296         (remote_target::close): Delete self.  Destruction bits split to
8297         ...
8298         (remote_target::~remote_target): ... this.
8299         (show_memory_packet_size): Adjust to use
8300         get_current_remote_target.
8301         (struct protocol_feature) <func>: Add remote_target parameter.
8302         All callers adjusted.
8303         (curr_quit_handler_target): New.
8304         (remote_serial_quit_handler): Reimplement.
8305         (remote_target::open_1): Adjust to use get_current_remote_target.
8306         Heap-allocate remote_target/extended_remote_target instances.
8307         (vcont_builder::vcont_builder): Add remote_target parameter, and
8308         save it in m_remote.  All callers adjusted.
8309         (vcont_builder::m_remote): New field.
8310         (vcont_builder::restart, vcont_builder::flush)
8311         (vcont_builder::push_action): Use it.
8312         (remote_target::commit_resume): Use it.
8313         (struct queue_iter_param) <remote>: New field.
8314         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8315         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8316         (check_pending_event_prevents_wildcard_vcont_callback)
8317         (remote_target::check_pending_events_prevent_wildcard_vcont)
8318         (remote_target::discard_pending_stop_replies)
8319         (remote_target::discard_pending_stop_replies_in_queue)
8320         (remote_target::remote_notif_remove_queued_reply): Fill in
8321         'remote' field.
8322         (remote_notif_get_pending_events): New.
8323         (remote_target::readchar, remote_target::remote_serial_write):
8324         Save/restore curr_quit_handler_target.
8325         (putpkt): New.
8326         (kill_new_fork_children): Fill in 'remote' field.
8327         (packet_command): Use get_current_remote_target, defer to
8328         remote_target method of same name.
8329         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8330         parameter, and save it in m_remote.  All callers adjusted.
8331         (scoped_remote_fd::release): Use m_remote.
8332         (scoped_remote_fd::m_remote): New field.
8333         (remote_file_put, remote_file_get, remote_file_delete): Use
8334         get_current_remote_target, defer to remote_target method of same
8335         name.
8336         (remote_btrace_reset): Add remote_state paremeter.  Update all
8337         callers.
8338         (remote_async_inferior_event_handler). Pass down 'data'.
8339         (remote_new_objfile): Use get_current_remote_target.
8340         (remote_target::vcont_r_supported): New.
8341         (set_range_stepping): Use get_current_remote_target and
8342         remote_target::vcont_r_supported.
8343         (_initialize_remote): Don't allocate 'remote_state' and
8344         'stop_reply_queue' globals.
8345         * remote.h (struct remote_target): Forward declare.
8346         (getpkt, putpkt, remote_notif_get_pending_events): Add
8347         'remote_target' parameter.
8348
8349 2018-05-22  Pedro Alves  <palves@redhat.com>
8350
8351         * remote.c (vcont_builder): Now a class.  Make all data members
8352         private.
8353         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8354         Declare methods.
8355         (vcont_builder_restart): Rename to ...
8356         (vcont_builder::restart): ... this.
8357         (vcont_builder_flush): Rename to ...
8358         (vcont_builder::flush): ... this.
8359         (vcont_builder_push_action): Rename to ...
8360         (vcont_builder::push_action): ... this.
8361         (remote_target::commit_resume): Adjust.
8362
8363 2018-05-22  Pedro Alves  <palves@redhat.com>
8364
8365         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8366         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8367         (get_fixed_memory_packet_size): New.
8368         (get_memory_packet_size): Use it.
8369         (set_memory_packet_size): Don't override the config size with
8370         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8371         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8372         Don't refer to get_memory_packet_size if not connected to a remote
8373         target.  Show "(default)" if configured size is 0.
8374
8375 2018-05-22  Pedro Alves  <palves@redhat.com>
8376
8377         * remote.c (remote_target::mourn_inferior): Move
8378         discard_pending_stop_replies call here from ...
8379         (_initialize_remote): ... here.
8380
8381 2018-05-22  Pedro Alves  <palves@redhat.com>
8382
8383         * remote.c (compare_section_command): Remove set_general_process
8384         call.
8385
8386 2018-05-22  Pedro Alves  <palves@redhat.com>
8387
8388         * remote.c (struct packet_reg, struct remote_arch_state):
8389         Move higher up in the file.
8390         (remote_state) <m_arch_states>: Store remote_arch_state values
8391         instead of remote_arch_state pointers.
8392         (remote_state::get_remote_arch_state): Adjust.
8393
8394 2018-05-22  Pedro Alves  <palves@redhat.com>
8395
8396         * remote.c: Include <unordered_map>.
8397         (remote_state): Now a class.
8398         (remote_state) <get_remote_arch_state>: Declare method.
8399         <get_remote_arch_state>: New field.
8400         (remote_arch_state) <remote_arch_state>: Declare ctor.
8401         <regs>: Now a unique_ptr.
8402         (remote_gdbarch_data_handle): Delete.
8403         (get_remote_arch_state): Delete.
8404         (remote_state::get_remote_arch_state): New.
8405         (get_remote_state): Adjust to call remote_state's
8406         get_remote_arch_state method.
8407         (init_remote_state): Delete, bits factored out to ...
8408         (remote_arch_state::remote_arch_state): ... this new method.
8409         (get_remote_packet_size, get_memory_packet_size)
8410         (process_g_packet, remote_target::fetch_registers)
8411         (remote_target::prepare_to_store, store_registers_using_G)
8412         (remote_target::store_registers, remote_target::get_trace_status):
8413         Adjust to call remote_state's method.
8414         (_initialize_remote): Remove reference to
8415         remote_gdbarch_data_handle.
8416
8417 2018-05-22  Pedro Alves  <palves@redhat.com>
8418
8419         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8420         pread>: New method declarations.
8421         (remote_target::open_1): Adjust.
8422         (readahead_cache_invalidate): Rename to ...
8423         (readahead_cache::invalidate): ... this, and adjust to be a class
8424         method.
8425         (readahead_cache_invalidate_fd): Rename to ...
8426         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8427         class method.
8428         (remote_hostio_pwrite): Adjust.
8429         (remote_hostio_pread_from_cache): Rename to ...
8430         (readahead_cache::pread): ... this, and adjust to be a class
8431         method.
8432         (remote_hostio_close): Adjust.
8433
8434 2018-05-22  Pedro Alves  <palves@redhat.com>
8435
8436         * remote.c (remote_hostio_close_cleanup): Delete.
8437         (class scoped_remote_fd): New.
8438         (remote_file_put, remote_file_get): Use it.
8439
8440 2018-05-22  Pedro Alves  <palves@redhat.com>
8441
8442         (struct vCont_action_support): Use bool and initialize all fields.
8443         (struct readahead_cache): Initialize all fields.
8444         (remote_state): Use bool and initialize all fields.
8445         (remote_state::remote_state, remote_state::~remote_state): New.
8446         (new_remote_state): Delete.
8447         (_initialize_remote): Use new to allocate remote_state.
8448
8449 2018-05-22  Pedro Alves  <palves@redhat.com>
8450             張俊芝  <zjz@zjz.name>
8451
8452         PR gdb/22973
8453         * c-exp.y: Include "c-support.h".
8454         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8455         of tolower.  Use c_ident_is_alpha to scan names.
8456         * c-lang.c: Include "c-support.h".
8457         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8458         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8459         * c-support.h: New file, with bits factored out from ...
8460         * cp-name-parser.y: ... this file.
8461         Include "c-support.h".
8462         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8463         c-support.h and renamed.
8464         (symbol_end, yylex): Adjust.
8465
8466 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8467
8468         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8469         parameter type to CORE_ADDR.
8470         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8471         parameter type in declaration to CORE_ADDR.
8472         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8473         target_auxv_search to get AT_HWCAP and use the result to get the
8474         target description.
8475         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8476         to CORE_ADDR. Remove the cast of the return value to unsigned
8477         long. Fix error predicate of target_auxv_search.
8478         (ppc_linux_nat_target::read_description): Change the type of the
8479         hwcap variable to CORE_ADDR.
8480
8481 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8482
8483         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8484         if the size of fpscr is larger than 32 bits.
8485
8486 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8487
8488         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8489         (ppc32_linux_vsxregmap): New global.
8490         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8491         regcache_supply_regset, and regcache_collect_regset.
8492         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8493         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8494         (fetch_vsx_register, store_vsx_register): Remove.
8495         (fetch_vsx_registers): Add regno parameter. Get regset using
8496         ppc_linux_vsxregset. Use regset to supply registers.
8497         (store_vsx_registers): Add regno parameter. Get regset using
8498         ppc_linux_vsxregset. Use regset to collect registers.
8499         (fetch_register): Call fetch_vsx_registers instead of
8500         fetch_vsx_register.
8501         (store_register): Call store_vsx_registers instead of
8502         store_vsx_register.
8503         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8504         new regno parameter.
8505         (store_ppc_registers): Call store_vsx_registers with -1 for the
8506         new regno parameter.
8507         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8508         (ppc_collect_vsxregset): Remove.
8509
8510 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8511
8512         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8513         offset fields.
8514         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8515         for vector register offset fields.
8516         (ppc64_fbsd_reg_offsets): Likewise.
8517         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8518         to vector register offset fields.
8519         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8520         to vector register offset fields.
8521         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8522         vector register offset fields.
8523         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8524         initializers for vector register offset fields.
8525         (rs6000_aix64_reg_offsets): Likewise.
8526         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8527         (ppc_supply_vrregset): Remove.
8528         (ppc_collect_vrregset): Remove.
8529         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8530         (ppc_linux_vrregset) : New function.
8531         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8532         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8533         (ppc32_linux_vrregset): Remove.
8534         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8535         and use result instead of ppc32_linux_vrregset.
8536         (ppc32_linux_reg_offsets): Remove initializers for vector register
8537         offset fields.
8538         (ppc64_linux_reg_offsets): Likewise.
8539         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8540         * ppc-linux-nat.c: Include regset.h.
8541         (gdb_vrregset_t): Adjust comment to account for little-endian
8542         mode.
8543         (supply_vrregset, fill_vrregset): Remove.
8544         (fetch_altivec_register, store_altivec_register): Remove.
8545         (fetch_altivec_registers): Add regno parameter. Get regset using
8546         ppc_linux_vrregset. Use regset to supply registers.
8547         (store_altivec_registers): Add regno parameter. Get regset using
8548         ppc_linux_vrregset. Use regset to collect registers.
8549         (fetch_register): Call fetch_altivec_registers instead of
8550         fetch_altivec_register.
8551         (store_register): Call store_altivec_registers instead of
8552         store_altivec_register.
8553         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8554         the new regno parameter.
8555         (store_ppc_registers): Call store_altivec_registers with -1 for
8556         the new regno parameter.
8557
8558 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8559
8560         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8561         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8562         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8563         (gdb_vrregset_t): Change array type size to
8564         PPC_LINUX_SIZEOF_VRREGSET.
8565         (gdb_vsxregset_t): Change array type size to
8566         PPC_LINUX_SIZEOF_VSXREGSET.
8567         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8568         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8569         PPC_LINUX_SIZEOF_VSXREGSET.
8570
8571 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8572
8573         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8574         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8575         nat/ppc-linux.c.
8576         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8577         ppc_linux_target_wordsize with tid.
8578         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8579         wordsize with tid.
8580         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8581         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8582         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8583         tid parameter. Remove static specifier.
8584         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8585         (ppc_linux_target_wordsize): New declaration.
8586
8587 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8588
8589         * arch/ppc-linux-common.c: New file.
8590         * arch/ppc-linux-common.h: New file.
8591         * arch/ppc-linux-tdesc.h: New file.
8592         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8593         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8594         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8595         arch/ppc-linux-tdesc.h.
8596         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8597         arch/ppc-linux-tdesc.h.
8598         (ppc_linux_nat_target::read_description): Remove target
8599         description matching code. Fill a ppc_linux_features struct and
8600         call ppc_linux_match_description with it. Move comment about ISA
8601         2.05 to ppc-linux-common.c.
8602         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8603         arch/ppc-linux-tdesc.h.
8604         (ppc_linux_core_read_description): Remove target description
8605         matching code. Fill a ppc_linux_features struct and call
8606         ppc_linux_match_description with it.
8607         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8608         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8609         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8610         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8611         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8612         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8613         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8614         (tdesc_powerpc_e500l): Remove.
8615
8616 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8617
8618         * ada-lang.c (catch_assert_command): Pass empty string instead
8619         of NULL for excep_string argument.
8620
8621 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8622
8623         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8624         the width of the requested register exceeds the width of the
8625         `ptrace' data type.
8626
8627 2018-05-21  Tom Tromey  <tom@tromey.com>
8628
8629         * printcmd.c (output_command): Remove.
8630         (output_command_const): Rename to output_command.
8631         * valprint.h (output_command): Rename from output_command_const.
8632         * tracepoint.c (trace_dump_actions): Call output_command.
8633
8634 2018-05-21  Tom Tromey  <tom@tromey.com>
8635
8636         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8637         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8638         * ada-lang.h (create_ada_exception_catchpoint): Update.
8639         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8640         std::string.
8641         (create_excep_cond_exprs, ~ada_catchpoint)
8642         (should_stop_exception, print_one_exception)
8643         (print_mention_exception, print_recreate_exception): Update.
8644         (ada_get_next_arg): Remove.
8645         (catch_ada_exception_command_split): Use std::string.  Change type
8646         of "excep_string", "cond_string".
8647         (catch_ada_exception_command): Update.
8648         (create_ada_exception_catchpoint): Change type of excep_string.
8649         (ada_exception_sal): Remove excep_string parameter.
8650         (~ada_catchpoint): Remove.
8651
8652 2018-05-21  Tom Tromey  <tom@tromey.com>
8653
8654         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8655         cleanup.
8656
8657 2018-05-21  Tom Tromey  <tom@tromey.com>
8658
8659         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8660         Return unique_xmalloc_ptr.
8661         (print_it_exception): Update.
8662
8663 2018-05-21  Tom Tromey  <tom@tromey.com>
8664
8665         * tracepoint.c (trace_dump_actions): Use std::string.
8666
8667 2018-05-21  Tom Tromey  <tom@tromey.com>
8668
8669         * symfile.c (reread_symbols): Use std::string for original_name.
8670
8671 2018-05-21  Tom Tromey  <tom@tromey.com>
8672
8673         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8674         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8675         constructor.
8676
8677 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8678
8679         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8680         instance to...
8681         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8682         * objfiles.c (get_objfile_bfd_data): Allocate
8683         objfile_per_bfd_storage with obstack_new when allocating on
8684         obstack.
8685
8686 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8687
8688         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8689         OBSTACK_ZALLOC.
8690         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8691         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8692         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8693         (add_pending): Likewise.
8694         (parse_symbol): Likewise.
8695         (parse_partial_symbols): Likewise.
8696         (psymtab_to_symtab_1): Likewise.
8697         (new_psymtab): Likewise.
8698         (elfmdebug_build_psymtabs): Likewise.
8699         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8700         * objfiles.c (get_objfile_bfd_data): Likewise.
8701         (objfile_register_static_link): Likewise.
8702         * psymtab.c (allocate_psymtab): Likewise.
8703         * stabsread.c (read_member_functions): Likewise.
8704         * xcoffread.c (xcoff_end_psymtab): Likewise.
8705
8706 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8707
8708         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8709         compiler supports std::is_trivially_constructible.
8710         * common/poison.h: Include obstack.h.
8711         (IsMallocable): Define to is_trivially_constructible if the
8712         compiler supports it, define to true_type otherwise.
8713         (xobnew): New.
8714         (XOBNEW): Redefine.
8715         (xobnewvec): New.
8716         (XOBNEWVEC): Redefine.
8717         * gdb_obstack.h (obstack_zalloc): New.
8718         (OBSTACK_ZALLOC): Redefine.
8719         (obstack_calloc): New.
8720         (OBSTACK_CALLOC): Redefine.
8721         (obstack_new): New.
8722         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8723         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8724         gdbarch.c.
8725         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8726         obstack_calloc/obstack_zalloc.
8727         (gdbarch_obstack_zalloc): Remove.
8728         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8729
8730 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8731
8732         * stack.c (backtrace_command_1): Remove useless variable int i.
8733
8734 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8735
8736         * stack.c (print_frame_info): Fix comment.
8737
8738 2018-05-18  Tom Tromey  <tom@tromey.com>
8739
8740         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8741         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8742         (~dwarf2_per_objfile): Update
8743         (dwarf2_get_dwz_file): Use new.
8744         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8745         unique_ptr.
8746
8747 2018-05-18  Tom Tromey  <tom@tromey.com>
8748
8749         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8750         unique_ptr.
8751         * dwarf2read.c (struct dwp_file): Add constructor and
8752         initializers.
8753         (open_and_init_dwp_file): Return a unique_ptr.
8754         (dwarf2_per_objfile, create_dwp_hash_table)
8755         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8756         (lookup_dwo_unit_in_dwp): Update.
8757         (open_and_init_dwp_file, get_dwp_file): Update.
8758
8759 2018-05-18  Tom Tromey  <tom@tromey.com>
8760
8761         * dwarf2read.c (dwarf2_per_objfile): Update.
8762         (struct mapped_index): Add initializers.
8763         (dwarf2_read_index): Use new.
8764         (dw2_symtab_iter_init): Update.
8765         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8766         unique_ptr.
8767
8768 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8769
8770         * dwarf2read.c (mapped_index) <total_size>: Remove.
8771
8772 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8773
8774         * unittests/format_pieces-selftests.c (test_format_specifier):
8775         Add ARI comments.
8776
8777 2018-05-18  Tom Tromey  <tom@tromey.com>
8778
8779         * c-typeprint.c (maybe_print_hole): New function.
8780         (c_print_type_struct_field_offset): Update.
8781         (c_type_print_base_struct_union): Call maybe_print_hole.
8782
8783 2018-05-17  Keith Seitz  <keiths@redhat.com>
8784
8785         * breakpoint.c (build_bpstat_chain): New function, moved from
8786         bpstat_stop_status.
8787         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8788         If no stop chain is passed, call build_bpstat_chain to build it.
8789         * breakpoint.h (build_bpstat_chain): Declare.
8790         (bpstat_stop_status): Move documentation here from breakpoint.c.
8791         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8792         build the stop chain and pass it to skip_inline_frames.
8793         Pass this stop chain to bpstat_stop_status.
8794         * inline-frame.c: Include breakpoint.h.
8795         (stopped_by_user_bp_inline_frame): New function.
8796         (skip_inline_frames): Add parameter `stop_chain'.
8797         Move documention to inline-frame.h.
8798         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8799         whether the frame should be elided.
8800         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8801         Add moved documentation and update for new parameter.
8802
8803 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8804
8805         PR cli/14975
8806         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8807         unittests/format_pieces-selftests.c.
8808         * common/format.h (format_piece) <operator==>: New.
8809         (format_pieces) <operator[]>: Remove.
8810         * common/format.c (format_pieces::format_pieces): Handle \e.
8811         * unittests/format_pieces-selftests.c: New.
8812
8813 2018-05-17  Tom Tromey  <tom@tromey.com>
8814
8815         PR symtab/23010:
8816         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8817         (dw2_instantiate_symtab): Add skip_partial parameter.
8818         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8819         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8820         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8821         (dw2_expand_symtabs_matching_one)
8822         (dw2_find_pc_sect_compunit_symtab)
8823         (dw2_debug_names_lookup_symbol)
8824         (dw2_debug_names_expand_symtabs_for_function): Update.
8825         (init_cutu_and_read_dies): Add skip_partial parameter.
8826         (process_psymtab_comp_unit, build_type_psymtabs_1)
8827         (process_skeletonless_type_unit, load_partial_comp_unit)
8828         (psymtab_to_symtab_1): Update.
8829         (load_full_comp_unit): Add skip_partial parameter.
8830         (process_imported_unit_die, dwarf2_read_addr_index)
8831         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8832         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8833         (read_signatured_type): Update.
8834
8835 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8836
8837         * value.c (release_value): Remove unused variable.
8838         (record_latest_value): Likewise.
8839         (access_value_history): Likewise.
8840         (preserve_values): Likewise.
8841
8842 2018-05-17  Tom Tromey  <tom@tromey.com>
8843
8844         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8845         Initialize.
8846
8847 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8848
8849         PR gdb/22286
8850         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8851         Also handle registers whose width is not a multiple of
8852         PTRACE_TYPE_RET.
8853         (linux_nat_trad_target::store_register): Likewise.
8854
8855 2018-05-16  Tom Tromey  <tom@tromey.com>
8856
8857         * gdbcore.h (core_bfd): Redefine.
8858         * corelow.c (core_target::close): Update.
8859         (core_target_open): Update.
8860         * progspace.h (struct program_space) <cbfd>: Now a
8861         gdb_bfd_ref_ptr.
8862
8863 2018-05-16  Tom Tromey  <tom@tromey.com>
8864
8865         PR cli/19551:
8866         * symfile-add-flags.h (enum symfile_add_flags)
8867         <SYMFILE_NOT_FILENAME>: New constant.
8868         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8869         objfile name from BFD.
8870         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8871         * minidebug.c (find_separate_debug_file_in_section): Put
8872         ".gnu_debugdata" into BFD's file name.
8873
8874 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8875
8876         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8877         Remove.
8878
8879 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8880
8881         PR binutils/21446
8882         * aarch64-tdep.c (aarch64_analyze_prologue,
8883         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8884         Indicate not interested in errors.
8885
8886 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8887
8888         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8889         Supply the MIPS_ZERO_REGNUM register.
8890
8891 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8892
8893         * mips-tdep.c (mask_address_var): Make variable static.
8894
8895 2018-05-14  Tom Tromey  <tom@tromey.com>
8896
8897         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8898
8899 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8900
8901         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8902         FXSAVE_ADDR for the mxcsr register.
8903
8904 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8905
8906         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8907
8908 2018-05-11  Pedro Alves  <palves@redhat.com>
8909
8910         * corelow.c (core_target) <core_target>: No longer inline.
8911         Initialize m_core_gdbarch, m_core_vec and build the section table
8912         here.
8913         <~core_target>: New.
8914         <core_gdbarch, get_core_register_section>: New methods.
8915         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8916         factored out from ...
8917         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8918         (core_ops): Delete.
8919         (sniff_core_bfd): Add gdbarch parameter.
8920         (core_close): Delete, merged into ...
8921         (core_target::close): ... here.  Delete self.
8922         (core_close_cleanup): Delete.
8923         (core_target_open): Allocate a core_target on the heap.  Use a
8924         unique_ptr instead of a cleanup.  Bits moved into the core_target
8925         ctor.  Adjust to use core_target methods instead of globals.
8926         (get_core_register_section): Rename to ...
8927         (core_target::get_core_register_section): ... this and adjust.
8928         (struct get_core_registers_cb_data): New.
8929         (get_core_registers_cb): Use it.  Use bool.
8930         (core_target::fetch_registers, core_target::files_info)
8931         (core_target::xfer_partial, core_target::read_description)
8932         (core_target::pid_to, core_target::thread_name): Adjust to
8933         reference class fields instead of globals.
8934         * target.h (struct target_ops_deleter, target_ops_up): New.
8935
8936 2018-05-11  Pedro Alves  <palves@redhat.com>
8937
8938         * corefile.c (core_file_command): Move to corelow.c.
8939         * corelow.c (the_core_target): Delete.
8940         (core_file_command): Moved from corefile.c.  Check exec_bfd
8941         instead of the_core_target.  Use target_detach instead of calling
8942         into the_core_target directly.
8943         (maybe_say_no_core_file_now): New.
8944         (core_target::detach): Use it.
8945         (_initialize_corelow): Remove references to the_core_target.
8946         * gdbcore.h (the_core_target): Delete.
8947
8948 2018-05-11  Tom Tromey  <tromey@redhat.com>
8949             Pedro Alves  <palves@redhat.com>
8950
8951         * corefile.c (core_bfd): Remove.
8952         * gdbcore.h (core_bfd): Now a macro.
8953         * progspace.h (struct program_space) <cbfd>: New field.
8954
8955 2018-05-11  Tom Tromey  <tom@tromey.com>
8956
8957         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8958         gdb::def_vector.
8959
8960 2018-05-10  Tom Tromey  <tom@tromey.com>
8961
8962         * configure: Rebuild.
8963         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8964
8965 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8966
8967         PR server/23158:
8968         * regformats/regdat.sh: Adjust script, following the addition
8969         of the new expedite_regs parameter to init_target_desc.
8970
8971 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8972     
8973         PR gdb/23127
8974         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8975         set_gdbarch_significant_addr_bit.
8976         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8977         set_gdbarch_significant_addr_bit.
8978         * utils.c (address_significant): Update to sign extend addr.
8979
8980 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8981
8982         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8983         (xtensa_linux_init_abi): Limit tdep->num_regs by
8984         tdep->num_nopriv_regs.
8985         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8986         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8987         not initialized.
8988
8989 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8990
8991         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8992
8993 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8994
8995         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8996         (I387_MXCSR_INIT_VAL): New constant.
8997         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8998         buffer if it was supplied by the inferior.
8999         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9000         (i387_xsave_get_clear_bv): New function.
9001         (i387_supply_xsave): Only read x87 control registers from the
9002         xsave buffer if the feature is enabled, and the state will have
9003         been written, otherwise, provide a suitable default.
9004         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9005         including x87 control registers.  Update control registers if they
9006         have changed from the default value, and mark features as enabled
9007         as required.
9008         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9009
9010 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9011
9012         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9013
9014 2018-05-07  Tom Tromey  <tom@tromey.com>
9015
9016         * configure: Rebuild.
9017         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9018
9019 2018-05-07  Tom Tromey  <tom@tromey.com>
9020
9021         PR tdep/20362:
9022         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9023         bit.  Use correct value for VDIV.
9024
9025 2018-05-04  Tom Tromey  <tom@tromey.com>
9026
9027         * configure: Rebuild.
9028         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9029
9030 2018-05-04  Tom Tromey  <tom@tromey.com>
9031
9032         * linux-record.c (record_linux_system_call) <case
9033         RECORD_SYS_RECVFROM>: Add "break".
9034
9035 2018-05-04  Tom Tromey  <tom@tromey.com>
9036
9037         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9038         Add missing "break".
9039         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9040         Add missing "break".
9041
9042 2018-05-04  Tom Tromey  <tom@tromey.com>
9043
9044         * rs6000-tdep.c (ppc_process_record_op4)
9045         (ppc_process_record_op63): Add fall-through comment.
9046
9047 2018-05-04  Tom Tromey  <tom@tromey.com>
9048
9049         * i386-tdep.c (i386_process_record): Add fall-through comment.
9050
9051 2018-05-04  Tom Tromey  <tom@tromey.com>
9052
9053         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9054         comment.
9055
9056 2018-05-04  Tom Tromey  <tom@tromey.com>
9057
9058         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9059         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9060         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9061         comment.
9062         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9063         comment.
9064         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9065         comment.
9066
9067 2018-05-04  Tom Tromey  <tom@tromey.com>
9068
9069         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9070
9071 2018-05-04  Tom Tromey  <tom@tromey.com>
9072
9073         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9074         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9075         * symfile.c (section_is_mapped): Fix fall-through comment.
9076         * stabsread.c (define_symbol, read_member_functions): Fix
9077         fall-through comment.
9078         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9079         comment.
9080         * remote.c (remote_wait_as): Fix fall-through comment.
9081         * p-exp.y (yylex): Fix fall-through comment.
9082         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9083         comment.
9084         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9085         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9086         * jv-exp.y (yylex): Fix fall-through comment.
9087         * go-exp.y (lex_one_token): Fix fall-through comment.
9088         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9089         fall-through comment.
9090         * f-exp.y (yylex): Fix fall-through comment.
9091         * dwarf2read.c (process_die): Fix fall-through comments.
9092         * dbxread.c (process_one_symbol): Fix fall-through comment.
9093         * d-exp.y (lex_one_token): Fix fall-through comment.
9094         * cp-name-parser.y (yylex): Fix fall-through comment.
9095         * coffread.c (coff_symtab_read): Fix fall-through comment.
9096         * c-exp.y (lex_one_token): Fix fall-through comment.
9097         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9098         comment.
9099         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9100         comment.
9101
9102 2018-05-04  Tom Tromey  <tom@tromey.com>
9103
9104         PR python/22730:
9105         * NEWS: Mention gdb.execute change.
9106         * gdbcmd.h (execute_control_command): Don't declare.
9107         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9108         execute_control_commands, execute_control_commands_to_string.
9109         * cli/cli-script.h (execute_control_commands)
9110         (execute_control_commands_to_string): Declare.
9111         (execute_control_command): Add from_tty parameter.
9112         * cli/cli-script.c (execute_control_commands)
9113         (execute_control_commands_to_string): New functions.
9114         (execute_user_command): Use execute_control_commands.
9115         (execute_control_command_1): Add "from_tty" parameter.  Update.
9116         (execute_control_command): Likewise.
9117
9118 2018-05-04  Tom Tromey  <tom@tromey.com>
9119
9120         PR python/22731:
9121         * NEWS: Mention that breakpoint commands are writable.
9122         * python/py-breakpoint.c (bppy_set_commands): New function.
9123         (breakpoint_object_getset) <"commands">: Use it.
9124
9125 2018-05-04  Tom Tromey  <tom@tromey.com>
9126
9127         * tracepoint.c (actions_command): Update.
9128         * mi/mi-cmd-break.c (mi_command_line_array)
9129         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9130         (mi_read_next_line): Remove.
9131         (mi_cmd_break_commands): Update.
9132         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9133         function_view.
9134         * cli/cli-script.c (get_command_line): Update.
9135         (process_next_line): Use function_view.  Constify.
9136         (recurse_read_control_structure, read_command_lines)
9137         (read_command_lines_1): Change argument types to function_view.
9138         (do_define_command, document_command): Update.
9139         * breakpoint.h (check_tracepoint_command): Don't declare.
9140         * breakpoint.c (check_tracepoint_command): Remove.
9141         (commands_command_1, create_tracepoint_from_upload): Update.
9142
9143 2018-05-04  Tom Tromey  <tom@tromey.com>
9144
9145         PR gdb/11750:
9146         * cli/cli-script.h (enum command_control_type) <define_control>:
9147         New constant.
9148         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9149         (build_command_line, execute_control_command_1)
9150         (process_next_line): Likewise.
9151         (do_define_command): New function, extracted from define_command.
9152         (define_command): Use it.
9153
9154 2018-05-04  Tom Tromey  <tom@tromey.com>
9155
9156         * tracepoint.c (actions_command): Update.
9157         * cli/cli-script.h (read_command_lines): Update.
9158         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9159         (MAX_TMPBUF): Remove define.
9160         (define_command): Use string_printf.
9161         (document_command): Likewise.
9162         * breakpoint.c (commands_command_1): Update.
9163
9164 2018-05-04  Tom Tromey  <tom@tromey.com>
9165
9166         * top.c (execute_command): Update.
9167         * cli/cli-script.h (print_command_lines): Now varargs.
9168         * cli/cli-script.c (print_command_lines): Now varargs.
9169         (execute_control_command_1) <case while_control, case if_control>:
9170         Update.
9171
9172 2018-05-04  Tom Tromey  <tom@tromey.com>
9173
9174         * tracepoint.c (all_tracepoint_actions): Rename from
9175         all_tracepoint_actions_and_cleanup.  Change return type.
9176         (actions_command, encode_actions_1, encode_actions)
9177         (trace_dump_actions, tdump_command): Update.
9178         * remote.c (remote_download_command_source): Update.
9179         * python/python.c (gdbpy_eval_from_control_command)
9180         (python_command, python_interactive_command): Update.
9181         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9182         * guile/guile.c (guile_command)
9183         (gdbscm_eval_from_control_command, guile_command): Update.
9184         * compile/compile.c (compile_code_command)
9185         (compile_print_command, compile_to_object): Update.
9186         * cli/cli-script.h (struct command_lines_deleter): New.
9187         (counted_command_line): New typedef.
9188         (struct command_line): Add constructor, destructor.
9189         <body_list>: Remove.
9190         <body_list_0, body_list_1>: New members.
9191         (command_line_up): Remove typedef.
9192         (read_command_lines, read_command_lines_1, get_command_line):
9193         Update.
9194         (copy_command_lines): Don't declare.
9195         * cli/cli-script.c (build_command_line): Use "new".
9196         (get_command_line): Return counted_command_line.
9197         (print_command_lines, execute_user_command)
9198         (execute_control_command_1, while_command, if_command): Update.
9199         (realloc_body_list): Remove.
9200         (process_next_line, recurse_read_control_structure): Update.
9201         (read_command_lines, read_command_lines_1): Return counted_command_line.
9202         (free_command_lines): Use "delete".
9203         (copy_command_lines): Remove.
9204         (define_command, document_command, show_user_1): Update.
9205         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9206         a counted_command_line.
9207         * breakpoint.h (counted_command_line): Remove typedef.
9208         (breakpoint_set_commands): Update.
9209         * breakpoint.c (check_no_tracepoint_commands)
9210         (validate_commands_for_breakpoint): Update.
9211         (breakpoint_set_commands): Change commands to be a
9212         counted_command_line.
9213         (commands_command_1, update_dprintf_command_list)
9214         (create_tracepoint_from_upload): Update.
9215
9216 2018-05-04  Tom Tromey  <tom@tromey.com>
9217
9218         * cli/cli-decode.h (cmd_list_element): New constructor.
9219         (~cmd_list_element): New destructor.
9220         (struct cmd_list_element): Add initializers.
9221         * cli/cli-decode.c (do_add_cmd): Use "new".
9222         (delete_cmd): Use "delete".
9223
9224 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9225             Pedro Alves <palves@redhat.com>
9226
9227         PR breakpoints/19806 and support for PR external/20207.
9228         * NEWS: Mention Aarch64 watchpoint improvements.
9229         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9230         watchpoints and PR external/20207 watchpoints.
9231         * nat/aarch64-linux-hw-point.c
9232         (kernel_supports_any_contiguous_range): New.
9233         (aarch64_watchpoint_offset): New.
9234         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9235         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9236         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9237         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9238         next_addr_orig_p.  Support PR external/20207 watchpoints.
9239         (aarch64_downgrade_regs): New.
9240         (aarch64_dr_state_insert_one_point): New parameters offset and
9241         addr_orig.
9242         (aarch64_dr_state_remove_one_point): Likewise.
9243         (aarch64_handle_breakpoint): Update caller.
9244         (aarch64_handle_aligned_watchpoint): Likewise.
9245         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9246         aligned_offset.
9247         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9248         aarch64_downgrade_regs.
9249         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9250         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9251         (DR_CONTROL_MASK): ... this.
9252         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9253         (unsigned int aarch64_watchpoint_offset): New prototype.
9254         (aarch64_linux_set_debug_regs): Remove const from state.
9255         * utils.c (align_up, align_down): Move to ...
9256         * common/common-utils.c (align_up, align_down): ... here.
9257         * utils.h (align_up, align_down): Move to ...
9258         * common/common-utils.h (align_up, align_down): ... here.
9259
9260 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9261
9262         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9263         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9264         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9265         Re-implement to match the ABI as summarized in GCC's
9266         gcc/config/sparc/sparc.c.  All callers updated.
9267         (sparc32_store_arguments): Remove assertion.
9268
9269 2018-05-04  Tom Tromey  <tom@tromey.com>
9270
9271         * printcmd.c: Don't include tui.h.
9272         (decode_format): Use skip_spaces.
9273
9274 2018-05-04  Tom Tromey  <tom@tromey.com>
9275
9276         PR gdb/22619:
9277         * printcmd.c (last_count): New global.
9278         (x_command): Use saved count when repeating.
9279
9280 2018-05-04  Tom Tromey  <tom@tromey.com>
9281
9282         * nto-procfs.c (do_closedir_cleanup): Remove.
9283         (procfs_pidlist): Use gdb_dir_up.
9284         * procfs.c (do_closedir_cleanup): Remove.
9285         (proc_update_threads): Use gdb_dir_up.
9286         * common/filestuff.h (struct gdb_dir_deleter): New.
9287         (gdb_dir_up): New typedef.
9288
9289 2018-05-04  Tom Tromey  <tom@tromey.com>
9290
9291         * ada-lang.c (print_mention_exception): Use std::string.
9292
9293 2018-05-04  Tom Tromey  <tom@tromey.com>
9294
9295         * ada-lang.c (create_excep_cond_exprs): Update.
9296         (ada_exception_catchpoint_cond_string): Use std::string.
9297
9298 2018-05-04  Tom Tromey  <tom@tromey.com>
9299
9300         * ada-lang.c (xget_renaming_scope): Return std::string.
9301         (old_renaming_is_invisible): Update.
9302
9303 2018-05-04  Tom Tromey  <tom@tromey.com>
9304
9305         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9306         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9307
9308 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9309
9310         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9311
9312 2018-05-04  Tom Tromey  <tom@tromey.com>
9313
9314         * remote.c (remote_query_supported_append): Change type.
9315         (remote_check_symbols): Update.
9316
9317 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9318
9319         PR gdb/11420
9320         * configure.ac: Prepend libpython.
9321         * python/python-config.py: Likewise.
9322         * configure: Regenerate.
9323
9324 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9325
9326         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9327
9328 2018-05-03  Pedro Alves  <palves@redhat.com>
9329
9330         * s390-linux-nat.c
9331         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9332         override.  Write 'true' instead of '1'.
9333         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9334         declaration.
9335
9336 2018-05-02  Pedro Alves  <palves@redhat.com>
9337
9338         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9339         add_inf_child_target.
9340         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9341         add_inf_child_target.
9342         * aix-thread.c (aix_thread_target_info): New.
9343         (aix_thread_target) <shortname, longname, doc>: Delete.
9344         <info>: New.
9345         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9346         add_inf_child_target.
9347         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9348         add_inf_child_target.
9349         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9350         add_inf_child_target.
9351         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9352         add_inf_child_target.
9353         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9354         add_inf_child_target.
9355         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9356         add_inf_child_target.
9357         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9358         add_inf_child_target.
9359         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9360         add_inf_child_target.
9361         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9362         add_inf_child_target.
9363         * bfd-target.c (target_bfd_target_info): New.
9364         (target_bfd) <shortname, longname, doc>: Delete.
9365         <info>: New.
9366         * bsd-kvm.c (bsd_kvm_target_info): New.
9367         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9368         <info>: New.
9369         (bsd_kvm_target::open): Rename to ...
9370         (bsd_kvm_target_open): ... this.  Adjust.
9371         * bsd-uthread.c (bsd_uthread_target_info): New.
9372         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9373         <info>: New.
9374         * corefile.c (core_file_command): Adjust.
9375         * corelow.c (core_target_info): New.
9376         (core_target) <shortname, longname, doc>: Delete.
9377         <info>: New.
9378         (core_target::open): Rename to ...
9379         (core_target_open): ... this.  Adjust.
9380         * ctf.c (ctf_target_info): New.
9381         (ctf_target) <shortname, longname, doc>: Delete.
9382         <info>: New.
9383         (ctf_target::open): Rename to ...
9384         (ctf_target_open): ... this.
9385         (_initialize_ctf): Adjust.
9386         * exec.c (exec_target_info): New.
9387         (exec_target) <shortname, longname, doc>: Delete.
9388         <info>: New.
9389         (exec_target::open): Rename to ...
9390         (exec_target_open): ... this.
9391         * gdbcore.h (core_target_open): Declare.
9392         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9393         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9394         add_inf_child_target.
9395         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9396         add_inf_child_target.
9397         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9398         add_inf_child_target.
9399         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9400         add_inf_child_target.
9401         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9402         add_inf_child_target.
9403         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9404         add_inf_child_target.
9405         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9406         add_inf_child_target.
9407         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9408         add_inf_child_target.
9409         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9410         add_inf_child_target.
9411         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9412         add_inf_child_target.
9413         * inf-child.c (inf_child_target_info): New.
9414         (inf_child_target::info): New.
9415         (inf_child_open_target): Remove 'target' parameter.  Use
9416         get_native_target instead.
9417         (inf_child_target::open): Delete.
9418         (add_inf_child_target): New.
9419         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9420         Delete.
9421         <info>: New.
9422         (add_inf_child_target): Declare.
9423         (inf_child_open_target): Declare.
9424         * linux-thread-db.c (thread_db_target_info): New.
9425         (thread_db_target) <shortname, longname, doc>: Delete.
9426         <info>: New.
9427         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9428         add_inf_child_target.
9429         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9430         add_inf_child_target.
9431         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9432         add_inf_child_target.
9433         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9434         add_inf_child_target.
9435         * make-target-delegates (print_class): Adjust.
9436         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9437         add_inf_child_target.
9438         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9439         add_inf_child_target.
9440         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9441         add_inf_child_target.
9442         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9443         add_inf_child_target.
9444         * nto-procfs.c (nto_native_target_info): New.
9445         (nto_procfs_target_native) <shortname, longname, doc>:
9446         Delete.
9447         <info>: New.
9448         (nto_procfs_target_info): New.
9449         (nto_procfs_target_procfs) <shortname, longname, doc>:
9450         Delete.
9451         <info>: New.
9452         (init_procfs_targets): Adjust.
9453         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9454         add_inf_child_target.
9455         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9456         add_inf_child_target.
9457         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9458         add_inf_child_target.
9459         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9460         add_inf_child_target.
9461         * ravenscar-thread.c (ravenscar_target_info): New.
9462         (ravenscar_thread_target) <shortname, longname, doc>:
9463         Delete.
9464         <info>: New.
9465         * record-btrace.c (record_btrace_target_info):
9466         (record_btrace_target) <shortname, longname, doc>: Delete.
9467         <info>: New.
9468         (record_btrace_target::open): Rename to ...
9469         (record_btrace_target_open): ... this.  Adjust.
9470         * record-full.c (record_longname, record_doc): New.
9471         (record_full_base_target) <shortname, longname, doc>: Delete.
9472         <info>: New.
9473         (record_full_target_info): New.
9474         (record_full_target): <shortname>: Delete.
9475         <info>: New.
9476         (record_full_core_open_1, record_full_open_1): Update comments.
9477         (record_full_base_target::open): Rename to ...
9478         (record_full_open): ... this.
9479         (cmd_record_full_restore): Update.
9480         (_initialize_record_full): Update.
9481         * remote-sim.c (remote_sim_target_info): New.
9482         (gdbsim_target) <shortname, longname, doc>: Delete.
9483         <info>: New.
9484         (gdbsim_target::open): Rename to ...
9485         (gdbsim_target_open): ... this.
9486         (_initialize_remote_sim): Adjust.
9487         * remote.c (remote_doc): New.
9488         (remote_target_info): New.
9489         (remote_target) <shortname, longname, doc>: Delete.
9490         <info>: New.
9491         (extended_remote_target_info): New.
9492         (extended_remote_target) <shortname, longname, doc>: Delete.
9493         <info>: New.
9494         (remote_target::open_1): Make static.  Adjust.
9495         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9496         * s390-linux-nat.c (_initialize_s390_nat): Use
9497         add_inf_child_target.
9498         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9499         add_inf_child_target.
9500         * sol-thread.c (thread_db_target_info): New.
9501         (sol_thread_target) <shortname, longname, doc>: Delete.
9502         <info>: New.
9503         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9504         add_inf_child_target.
9505         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9506         add_inf_child_target.
9507         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9508         add_inf_child_target.
9509         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9510         add_inf_child_target.
9511         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9512         add_inf_child_target.
9513         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9514         add_inf_child_target.
9515         * spu-linux-nat.c (_initialize_spu_nat): Use
9516         add_inf_child_target.
9517         * spu-multiarch.c (spu_multiarch_target_info): New.
9518         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9519         <info>: New.
9520         * target-delegates.c: Regenerate.
9521         * target.c: Include <unordered_map>.
9522         (target_ops_p): Delete.
9523         (DEF_VEC_P(target_ops_p)): Delete.
9524         (target_factories): New.
9525         (test_target_info): New.
9526         (test_target_ops::info): New.
9527         (open_target): Adjust to use target_factories.
9528         (add_target_with_completer): Rename to ...
9529         (add_target): ... this.  Change prototype.  Register target_info
9530         and open callback in target_factories.  Register target_info in
9531         command context instead of target_ops.
9532         (add_target): Delete old implementation.
9533         (add_deprecated_target_alias): Change prototype.  Adjust.
9534         (the_native_target): New.
9535         (set_native_target, get_native_target): New.
9536         (find_default_run_target): Use the_native_target.
9537         (find_attach_target, find_run_target): Simplify.
9538         (target_ops::open): Delete.
9539         (dummy_target_info): New.
9540         (dummy_target::shortname, dummy_target::longname)
9541         (dummy_target::doc): Delete.
9542         (dummy_target::info): New.
9543         (debug_target::shortname, debug_target::longname)
9544         (debug_target::doc): Delete.
9545         (debug_target::info): New.
9546         * target.h (struct target_info): New.
9547         (target_ops::~target_ops): Add comment.
9548         (target_ops::info): New.
9549         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9550         longer virtual.  Implement in terms of target_info.
9551         (set_native_target, get_native_target): Declare.
9552         (target_open_ftype): New.
9553         (add_target, add_target_with_completer)
9554         (add_deprecated_target_alias): Change prototype.
9555         (test_target) <shortname, longname, doc>: Delete.
9556         <info>: New.
9557         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9558         add_inf_child_target.
9559         * tracefile-tfile.c (tfile_target_info): New.
9560         (tfile_target) <shortname, longname, doc>: Delete.
9561         <info>: New.
9562         (tfile_target::open): Rename to ...
9563         (tfile_target_open): ... this.
9564         (_initialize_tracefile_tfile): Adjust.
9565         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9566         add_inf_child_target.
9567         * windows-nat.c (_initialize_windows_nat): Use
9568         add_inf_child_target.
9569         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9570         add_inf_child_target.
9571
9572 2018-05-02  Pedro Alves  <palves@redhat.com>
9573
9574         * linux-nat.h (linux_nat_target) <low_new_thread,
9575         low_delete_thread, low_new_fork, low_forget_process,
9576         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9577         New virtual methods.
9578         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9579         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9580         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9581         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9582         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9583         Delete.
9584         * linux-fork.c (delete_fork): Adjust to call low method.
9585         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9586         (linux_nat_new_fork, linux_nat_forget_process_hook)
9587         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9588         (linux_nat_status_is_event):
9589         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9590         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9591         to call low method.
9592         (sigtrap_is_event): Rename to ...
9593         (linux_nat_target::low_status_is_event): ... this.
9594         (linux_nat_set_status_is_event): Delete.
9595         (save_stop_reason, linux_nat_wait_1)
9596         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9597         low methods.
9598         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9599         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9600         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9601         (linux_nat_set_prepare_to_resume): Delete.
9602         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9603         low virtual methods.
9604         * amd64-linux-nat.c: Likewise.
9605         * arm-linux-nat.c: Likewise.
9606         * i386-linux-nat.c: Likewise.
9607         * ia64-linux-nat.c: Likewise.
9608         * mips-linux-nat.c: Likewise.
9609         * ppc-linux-nat.c: Likewise.
9610         * s390-linux-nat.c: Likewise.
9611         * sparc64-linux-nat.c: Likewise.
9612         * x86-linux-nat.c: Likewise.
9613         * x86-linux-nat.h: Include "nat/x86-linux.h".
9614         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9615         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9616         Override methods.
9617
9618 2018-05-02  Pedro Alves  <palves@redhat.com>
9619
9620         * target.h (target_ops)
9621         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9622         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9623         stopped_by_watchpoint, have_continuable_watchpoint,
9624         stopped_data_address, watchpoint_addr_within_range,
9625         can_accel_watchpoint_condition, can_run, thread_alive,
9626         has_all_memory, has_memory, has_stack, has_registers,
9627         has_execution, can_async_p, is_async_p, supports_non_stop,
9628         always_non_stop_p, can_execute_reverse, supports_multi_process,
9629         supports_enable_disable_tracepoint,
9630         supports_disable_randomization, supports_string_tracing,
9631         supports_evaluation_of_breakpoint_conditions,
9632         can_run_breakpoint_commands, filesystem_is_local,
9633         can_download_tracepoint, get_trace_state_variable_value,
9634         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9635         record_is_replaying, record_will_replay,
9636         augmented_libraries_svr4_read>: Adjust to return bool.
9637         * aarch64-linux-nat.c: All implementations adjusted.
9638         * aix-thread.c: All implementations adjusted.
9639         * arm-linux-nat.c: All implementations adjusted.
9640         * breakpoint.c: All implementations adjusted.
9641         * bsd-kvm.c: All implementations adjusted.
9642         * bsd-uthread.c: All implementations adjusted.
9643         * corelow.c: All implementations adjusted.
9644         * ctf.c: All implementations adjusted.
9645         * darwin-nat.c: All implementations adjusted.
9646         * darwin-nat.h: All implementations adjusted.
9647         * exec.c: All implementations adjusted.
9648         * fbsd-nat.c: All implementations adjusted.
9649         * fbsd-nat.h: All implementations adjusted.
9650         * gnu-nat.c: All implementations adjusted.
9651         * gnu-nat.h: All implementations adjusted.
9652         * go32-nat.c: All implementations adjusted.
9653         * ia64-linux-nat.c: All implementations adjusted.
9654         * inf-child.c: All implementations adjusted.
9655         * inf-child.h: All implementations adjusted.
9656         * inf-ptrace.c: All implementations adjusted.
9657         * inf-ptrace.h: All implementations adjusted.
9658         * linux-nat.c: All implementations adjusted.
9659         * linux-nat.h: All implementations adjusted.
9660         * mips-linux-nat.c: All implementations adjusted.
9661         * nto-procfs.c: All implementations adjusted.
9662         * ppc-linux-nat.c: All implementations adjusted.
9663         * procfs.c: All implementations adjusted.
9664         * ravenscar-thread.c: All implementations adjusted.
9665         * record-btrace.c: All implementations adjusted.
9666         * record-full.c: All implementations adjusted.
9667         * remote-sim.c: All implementations adjusted.
9668         * remote.c: All implementations adjusted.
9669         * s390-linux-nat.c: All implementations adjusted.
9670         * sol-thread.c: All implementations adjusted.
9671         * spu-multiarch.c: All implementations adjusted.
9672         * target-delegates.c: All implementations adjusted.
9673         * target.c: All implementations adjusted.
9674         * target.h: All implementations adjusted.
9675         * tracefile-tfile.c: All implementations adjusted.
9676         * tracefile.c: All implementations adjusted.
9677         * tracefile.h: All implementations adjusted.
9678         * windows-nat.c: All implementations adjusted.
9679         * x86-linux-nat.h: All implementations adjusted.
9680         * x86-nat.h: All implementations adjusted.
9681
9682 2018-05-02  Pedro Alves  <palves@redhat.com>
9683
9684         * make-target-delegates (scan_target_h): Don't trim lines here.
9685         Replace sequences of tabs and/or whitespace with a single
9686         whitespace.
9687         (top level, parsing methods): Trim each line before processing it
9688         here.
9689
9690 2018-05-02  Pedro Alves  <palves@redhat.com>
9691             John Baldwin  <jhb@freebsd.org>
9692
9693         * target.h (enum strata) <debug_stratum>: New.
9694         (struct target_ops) <all delegation methods>: Replace by C++
9695         virtual methods, and drop "to_" prefix.  All references updated
9696         throughout.
9697         <to_shortname, to_longname, to_doc, to_data,
9698         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9699         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9700         virtual methods.  All references updated throughout.
9701         <can_attach, supports_terminal_ours, can_create_inferior,
9702         get_thread_control_capabilities, attach_no_wait>: New
9703         virtual methods.
9704         <insert_breakpoint, remove_breakpoint>: Now
9705         TARGET_DEFAULT_NORETURN methods.
9706         <info_proc>: Now returns bool.
9707         <to_magic>: Delete.
9708         (OPS_MAGIC): Delete.
9709         (current_target): Delete.  All references replaced by references
9710         to ...
9711         (target_stack): ... this.  New.
9712         (target_shortname, target_longname): Adjust.
9713         (target_can_run): Now a function declaration.
9714         (default_child_has_all_memory, default_child_has_memory)
9715         (default_child_has_stack, default_child_has_registers)
9716         (default_child_has_execution): Remove target_ops parameter.
9717         (complete_target_initialization): Delete.
9718         (memory_breakpoint_target): New template class.
9719         (test_target_ops): Refactor as a C++ class with virtual methods.
9720         * make-target-delegates (NAME_PART): Tighten.
9721         (POINTER_PART, CP_SYMBOL): New.
9722         (SIMPLE_RETURN_PART): Reimplement.
9723         (VEC_RETURN_PART): Expect less.
9724         (RETURN_PART, VIRTUAL_PART): New.
9725         (METHOD): Adjust to C++ virtual methods.
9726         (scan_target_h): Remove reference to C99.
9727         (dname): Output "target_ops::" prefix.
9728         (write_function_header): Adjust to output a C++ class method.
9729         (write_declaration): New.
9730         (write_delegator): Adjust to output a C++ class method.
9731         (tdname): Output "dummy_target::" prefix.
9732         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9733         method.
9734         (tdefault_names, debug_names): Delete.
9735         (return_types, tdefaults, styles, argtypes_array): New.
9736         (top level): All methods are delegators.
9737         (print_class): New.
9738         (top level): Print dummy_target and debug_target classes.
9739         * target-delegates.c: Regenerate.
9740         * target-debug.h (target_debug_print_enum_info_proc_what)
9741         (target_debug_print_thread_control_capabilities)
9742         (target_debug_print_thread_info_p): New.
9743         * target.c (dummy_target): Delete.
9744         (the_dummy_target, the_debug_target): New.
9745         (target_stack): Now extern.
9746         (set_targetdebug): Push/unpush debug target.
9747         (default_child_has_all_memory, default_child_has_memory)
9748         (default_child_has_stack, default_child_has_registers)
9749         (default_child_has_execution): Remove target_ops parameter.
9750         (complete_target_initialization): Delete.
9751         (add_target_with_completer): No longer call
9752         complete_target_initialization.
9753         (target_supports_terminal_ours): Use regular delegation.
9754         (update_current_target): Delete.
9755         (push_target): No longer check magic number.  Don't call
9756         update_current_target.
9757         (unpush_target): Don't call update_current_target.
9758         (target_is_pushed): No longer check magic number.
9759         (target_require_runnable): Skip for all stratums over
9760         process_stratum.
9761         (target_ops::info_proc): New.
9762         (target_info_proc): Use find_target_at and
9763         find_default_run_target.
9764         (target_supports_disable_randomization): Use regular delegation.
9765         (target_get_osdata): Use find_target_at.
9766         (target_ops::open, target_ops::close, target_ops::can_attach)
9767         (target_ops::attach, target_ops::can_create_inferior)
9768         (target_ops::create_inferior, target_ops::can_run)
9769         (target_can_run): New.
9770         (default_fileio_target): Use regular delegation.
9771         (target_ops::fileio_open, target_ops::fileio_pwrite)
9772         (target_ops::fileio_pread, target_ops::fileio_fstat)
9773         (target_ops::fileio_close, target_ops::fileio_unlink)
9774         (target_ops::fileio_readlink): New.
9775         (target_fileio_open_1, target_fileio_unlink)
9776         (target_fileio_readlink): Always call the target method.  Handle
9777         FILEIO_ENOSYS.
9778         (return_zero, return_zero_has_execution): Delete.
9779         (init_dummy_target): Delete.
9780         (dummy_target::dummy_target, dummy_target::shortname)
9781         (dummy_target::longname, dummy_target::doc)
9782         (debug_target::debug_target, debug_target::shortname)
9783         (debug_target::longname, debug_target::doc): New.
9784         (target_supports_delete_record): Use regular delegation.
9785         (setup_target_debug): Delete.
9786         (maintenance_print_target_stack): Skip debug_stratum.
9787         (initialize_targets): Instantiate the_dummy_target and
9788         the_debug_target.
9789         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9790         use target_stack.
9791         (target_auxv_search, fprint_target_auxv): Adjust.
9792         (info_auxv_command): Adjust to use target_stack.
9793         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9794         * exceptions.c (print_flush): Handle a NULL target_stack.
9795         * regcache.c (target_ops_no_register): Refactor as class with
9796         virtual methods.
9797
9798         * exec.c (exec_target): New class.
9799         (exec_ops): Now an exec_target.
9800         (exec_open, exec_close_1, exec_get_section_table)
9801         (exec_xfer_partial, exec_files_info, exec_has_memory)
9802         (exec_make_note_section): Refactor as exec_target methods.
9803         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9804         Delete.
9805         (exec_target::find_memory_regions): New.
9806         (_initialize_exec): Don't call init_exec_ops.
9807         * gdbcore.h (exec_file_clear): Delete.
9808
9809         * corefile.c (core_target): Delete.
9810         (core_file_command): Adjust.
9811         * corelow.c (core_target): New class.
9812         (the_core_target): New.
9813         (core_close): Remove target_ops parameter.
9814         (core_close_cleanup): Adjust.
9815         (core_target::close): New.
9816         (core_open, core_detach, get_core_registers, core_files_info)
9817         (core_xfer_partial, core_thread_alive, core_read_description)
9818         (core_pid_to_str, core_thread_name, core_has_memory)
9819         (core_has_stack, core_has_registers, core_info_proc): Rework as
9820         core_target methods.
9821         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9822         (_initialize_corelow): Initialize the_core_target.
9823         * gdbcore.h (core_target): Delete.
9824         (the_core_target): New.
9825
9826         * ctf.c: (ctf_target): New class.
9827         (ctf_ops): Now a ctf_target.
9828         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9829         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9830         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9831         methods.
9832         (init_ctf_ops): Delete.
9833         (_initialize_ctf): Don't call it.
9834         * tracefile-tfile.c (tfile_target): New class.
9835         (tfile_ops): Now a tfile_target.
9836         (tfile_open, tfile_close, tfile_files_info)
9837         (tfile_get_tracepoint_status, tfile_trace_find)
9838         (tfile_fetch_registers, tfile_xfer_partial)
9839         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9840         Refactor as tfile_target methods.
9841         (tfile_xfer_partial_features): Remove target_ops parameter.
9842         (init_tfile_ops): Delete.
9843         (_initialize_tracefile_tfile): Don't call it.
9844         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9845         (tracefile_has_stack, tracefile_has_registers)
9846         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9847         tracefile_target methods.
9848         (init_tracefile_ops): Delete.
9849         (tracefile_target::tracefile_target): New.
9850         * tracefile.h: Include "target.h".
9851         (tracefile_target): New class.
9852         (init_tracefile_ops): Delete.
9853
9854         * spu-multiarch.c (spu_multiarch_target): New class.
9855         (spu_ops): Now a spu_multiarch_target.
9856         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9857         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9858         (spu_search_memory, spu_mourn_inferior): Refactor as
9859         spu_multiarch_target methods.
9860         (init_spu_ops): Delete.
9861         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9862         complete_target_initialization.
9863
9864         * ravenscar-thread.c (ravenscar_thread_target): New class.
9865         (ravenscar_ops): Now a ravenscar_thread_target.
9866         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9867         (ravenscar_thread_alive, ravenscar_pid_to_str)
9868         (ravenscar_fetch_registers, ravenscar_store_registers)
9869         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9870         (ravenscar_stopped_by_hw_breakpoint)
9871         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9872         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9873         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9874         methods.
9875         (init_ravenscar_thread_ops): Delete.
9876         (_initialize_ravenscar): Remove references to
9877         init_ravenscar_thread_ops and complete_target_initialization.
9878
9879         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9880         (bsd_uthread_target): New class.
9881         (bsd_uthread_ops): Now a bsd_uthread_target.
9882         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9883         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9884         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9885         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9886         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9887         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9888         (bsd_uthread_target): Delete function.
9889         (_initialize_bsd_uthread): Remove reference to
9890         complete_target_initialization.
9891
9892         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9893         (target_bfd): ... this new class.
9894         (target_bfd_xfer_partial, target_bfd_get_section_table)
9895         (target_bfd_close): Refactor as target_bfd methods.
9896         (target_bfd::~target_bfd): New.
9897         (target_bfd_reopen): Adjust.
9898         (target_bfd::close): New.
9899
9900         * record-btrace.c (record_btrace_target): New class.
9901         (record_btrace_ops): Now a record_btrace_target.
9902         (record_btrace_open, record_btrace_stop_recording)
9903         (record_btrace_disconnect, record_btrace_close)
9904         (record_btrace_async, record_btrace_info)
9905         (record_btrace_insn_history, record_btrace_insn_history_range)
9906         (record_btrace_insn_history_from, record_btrace_call_history)
9907         (record_btrace_call_history_range)
9908         (record_btrace_call_history_from, record_btrace_record_method)
9909         (record_btrace_is_replaying, record_btrace_will_replay)
9910         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9911         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9912         (record_btrace_store_registers, record_btrace_prepare_to_store)
9913         (record_btrace_to_get_unwinder)
9914         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9915         (record_btrace_commit_resume, record_btrace_wait)
9916         (record_btrace_stop, record_btrace_can_execute_reverse)
9917         (record_btrace_stopped_by_sw_breakpoint)
9918         (record_btrace_supports_stopped_by_sw_breakpoint)
9919         (record_btrace_stopped_by_hw_breakpoint)
9920         (record_btrace_supports_stopped_by_hw_breakpoint)
9921         (record_btrace_update_thread_list, record_btrace_thread_alive)
9922         (record_btrace_goto_begin, record_btrace_goto_end)
9923         (record_btrace_goto, record_btrace_stop_replaying_all)
9924         (record_btrace_execution_direction)
9925         (record_btrace_prepare_to_generate_core)
9926         (record_btrace_done_generating_core): Refactor as
9927         record_btrace_target methods.
9928         (init_record_btrace_ops): Delete.
9929         (_initialize_record_btrace): Remove reference to
9930         init_record_btrace_ops.
9931         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9932         the execution_direction global.
9933         (record_full_base_target, record_full_target)
9934         (record_full_core_target): New classes.
9935         (record_full_ops): Now a record_full_target.
9936         (record_full_core_ops): Now a record_full_core_target.
9937         (record_full_target::detach, record_full_target::disconnect)
9938         (record_full_core_target::disconnect)
9939         (record_full_target::mourn_inferior, record_full_target::kill):
9940         New.
9941         (record_full_open, record_full_close, record_full_async): Refactor
9942         as methods of the record_full_base_target class.
9943         (record_full_resume, record_full_commit_resume): Refactor
9944         as methods of the record_full_target class.
9945         (record_full_wait, record_full_stopped_by_watchpoint)
9946         (record_full_stopped_data_address)
9947         (record_full_stopped_by_sw_breakpoint)
9948         (record_full_supports_stopped_by_sw_breakpoint)
9949         (record_full_stopped_by_hw_breakpoint)
9950         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9951         methods of the record_full_base_target class.
9952         (record_full_store_registers, record_full_xfer_partial)
9953         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9954         Refactor as methods of the record_full_target class.
9955         (record_full_can_execute_reverse, record_full_get_bookmark)
9956         (record_full_goto_bookmark, record_full_execution_direction)
9957         (record_full_record_method, record_full_info, record_full_delete)
9958         (record_full_is_replaying, record_full_will_replay)
9959         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9960         (record_full_stop_replaying): Refactor as methods of the
9961         record_full_base_target class.
9962         (record_full_core_resume, record_full_core_kill)
9963         (record_full_core_fetch_registers)
9964         (record_full_core_prepare_to_store)
9965         (record_full_core_store_registers, record_full_core_xfer_partial)
9966         (record_full_core_insert_breakpoint)
9967         (record_full_core_remove_breakpoint)
9968         (record_full_core_has_execution): Refactor
9969         as methods of the record_full_core_target class.
9970         (record_full_base_target::supports_delete_record): New.
9971         (init_record_full_ops): Delete.
9972         (init_record_full_core_ops): Delete.
9973         (record_full_save): Refactor as method of the
9974         record_full_base_target class.
9975         (_initialize_record_full): Remove references to
9976         init_record_full_ops and init_record_full_core_ops.
9977
9978         * remote.c (remote_target, extended_remote_target): New classes.
9979         (remote_ops): Now a remote_target.
9980         (extended_remote_ops): Now an extended_remote_target.
9981         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9982         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9983         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9984         (remote_pass_signals, remote_set_syscall_catchpoint)
9985         (remote_program_signals, )
9986         (remote_thread_always_alive): Remove target_ops parameter.
9987         (remote_thread_alive, remote_thread_name)
9988         (remote_update_thread_list, remote_threads_extra_info)
9989         (remote_static_tracepoint_marker_at)
9990         (remote_static_tracepoint_markers_by_strid)
9991         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9992         (remote_open): Refactor as methods of remote_target.
9993         (extended_remote_open, extended_remote_detach)
9994         (extended_remote_attach, extended_remote_post_attach):
9995         (extended_remote_supports_disable_randomization)
9996         (extended_remote_create_inferior): : Refactor as method of
9997         extended_remote_target.
9998         (remote_set_permissions, remote_open_1, remote_detach)
9999         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10000         (remote_resume, remote_commit_resume, remote_stop)
10001         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10002         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10003         (remote_prepare_to_store, remote_store_registers)
10004         (remote_flash_erase, remote_flash_done, remote_files_info)
10005         (remote_kill, remote_mourn, remote_insert_breakpoint)
10006         (remote_remove_breakpoint, remote_insert_watchpoint)
10007         (remote_watchpoint_addr_within_range)
10008         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10009         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10010         (remote_supports_stopped_by_sw_breakpoint)
10011         (remote_stopped_by_hw_breakpoint)
10012         (remote_supports_stopped_by_hw_breakpoint)
10013         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10014         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10015         (remote_verify_memory): Refactor as methods of remote_target.
10016         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10017         parameter.
10018         (remote_xfer_partial, remote_get_memory_xfer_limit)
10019         (remote_search_memory, remote_rcmd, remote_memory_map)
10020         (remote_pid_to_str, remote_get_thread_local_address)
10021         (remote_get_tib_address, remote_read_description): Refactor as
10022         methods of remote_target.
10023         (remote_target::fileio_open, remote_target::fileio_pwrite)
10024         (remote_target::fileio_pread, remote_target::fileio_close): New.
10025         (remote_hostio_readlink, remote_hostio_fstat)
10026         (remote_filesystem_is_local, remote_can_execute_reverse)
10027         (remote_supports_non_stop, remote_supports_disable_randomization)
10028         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10029         (remote_supports_enable_disable_tracepoint)
10030         (remote_supports_string_tracing)
10031         (remote_can_run_breakpoint_commands, remote_trace_init)
10032         (remote_download_tracepoint, remote_can_download_tracepoint)
10033         (remote_download_trace_state_variable, remote_enable_tracepoint)
10034         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10035         (remote_trace_start, remote_get_trace_status)
10036         (remote_get_tracepoint_status, remote_trace_stop)
10037         (remote_trace_find, remote_get_trace_state_variable_value)
10038         (remote_save_trace_data, remote_get_raw_trace_data)
10039         (remote_set_disconnected_tracing, remote_core_of_thread)
10040         (remote_set_circular_trace_buffer, remote_traceframe_info)
10041         (remote_get_min_fast_tracepoint_insn_len)
10042         (remote_set_trace_buffer_size, remote_set_trace_notes)
10043         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10044         (remote_disable_btrace, remote_teardown_btrace)
10045         (remote_read_btrace, remote_btrace_conf)
10046         (remote_augmented_libraries_svr4_read, remote_load)
10047         (remote_pid_to_exec_file, remote_can_do_single_step)
10048         (remote_execution_direction, remote_thread_handle_to_thread_info):
10049         Refactor as methods of remote_target.
10050         (init_remote_ops, init_extended_remote_ops): Delete.
10051         (remote_can_async_p, remote_is_async_p, remote_async)
10052         (remote_thread_events, remote_upload_tracepoints)
10053         (remote_upload_trace_state_variables): Refactor as methods of
10054         remote_target.
10055         (_initialize_remote): Remove references to init_remote_ops and
10056         init_extended_remote_ops.
10057
10058         * remote-sim.c (gdbsim_target): New class.
10059         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10060         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10061         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10062         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10063         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10064         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10065         Refactor as methods of gdbsim_target.
10066         (gdbsim_ops): Now a gdbsim_target.
10067         (init_gdbsim_ops): Delete.
10068         (gdbsim_cntrl_c): Adjust.
10069         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10070
10071         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10072         (the_amd64_linux_nat_target): New.
10073         (amd64_linux_fetch_inferior_registers)
10074         (amd64_linux_store_inferior_registers): Refactor as methods of
10075         amd64_linux_nat_target.
10076         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10077         * i386-linux-nat.c: Don't include "linux-nat.h".
10078         (i386_linux_nat_target): New class.
10079         (the_i386_linux_nat_target): New.
10080         (i386_linux_fetch_inferior_registers)
10081         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10082         as methods of i386_linux_nat_target.
10083         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10084         * inf-child.c (inf_child_ops): Delete.
10085         (inf_child_fetch_inferior_registers)
10086         (inf_child_store_inferior_registers): Delete.
10087         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10088         methods of inf_child_target.
10089         (inf_child_target::supports_terminal_ours)
10090         (inf_child_target::terminal_init)
10091         (inf_child_target::terminal_inferior)
10092         (inf_child_target::terminal_ours_for_output)
10093         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10094         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10095         New.
10096         (inf_child_open, inf_child_disconnect, inf_child_close)
10097         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10098         (inf_child_post_startup_inferior, inf_child_can_run)
10099         (inf_child_pid_to_exec_file): Refactor as methods of
10100         inf_child_target.
10101         (inf_child_follow_fork): Delete.
10102         (inf_child_target::can_create_inferior)
10103         (inf_child_target::can_attach): New.
10104         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10105         (inf_child_target::has_stack, inf_child_target::has_registers)
10106         (inf_child_target::has_execution): New.
10107         (inf_child_fileio_open, inf_child_fileio_pwrite)
10108         (inf_child_fileio_pread, inf_child_fileio_fstat)
10109         (inf_child_fileio_close, inf_child_fileio_unlink)
10110         (inf_child_fileio_readlink, inf_child_use_agent)
10111         (inf_child_can_use_agent): Refactor as methods of
10112         inf_child_target.
10113         (return_zero, inf_child_target): Delete.
10114         (inf_child_target::inf_child_target): New.
10115         * inf-child.h: Include "target.h".
10116         (inf_child_target): Delete function prototype.
10117         (inf_child_target): New class.
10118         (inf_child_open_target, inf_child_mourn_inferior)
10119         (inf_child_maybe_unpush_target): Delete.
10120         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10121         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10122         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10123         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10124         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10125         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10126         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10127         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10128         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10129         methods of inf_ptrace_target.
10130         (inf_ptrace_target): Delete function.
10131         * inf-ptrace.h: Include "inf-child.h".
10132         (inf_ptrace_target): Delete function declaration.
10133         (inf_ptrace_target): New class.
10134         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10135         * linux-nat.c (linux_target): New.
10136         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10137         (linux_nat_target::~linux_nat_target): New.
10138         (linux_child_post_attach, linux_child_post_startup_inferior)
10139         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10140         (linux_child_remove_fork_catchpoint)
10141         (linux_child_insert_vfork_catchpoint)
10142         (linux_child_remove_vfork_catchpoint)
10143         (linux_child_insert_exec_catchpoint)
10144         (linux_child_remove_exec_catchpoint)
10145         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10146         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10147         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10148         (linux_nat_stopped_data_address)
10149         (linux_nat_stopped_by_sw_breakpoint)
10150         (linux_nat_supports_stopped_by_sw_breakpoint)
10151         (linux_nat_stopped_by_hw_breakpoint)
10152         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10153         (linux_nat_kill, linux_nat_mourn_inferior)
10154         (linux_nat_xfer_partial, linux_nat_thread_alive)
10155         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10156         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10157         (linux_child_static_tracepoint_markers_by_strid)
10158         (linux_nat_is_async_p, linux_nat_can_async_p)
10159         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10160         (linux_nat_supports_multi_process)
10161         (linux_nat_supports_disable_randomization, linux_nat_async)
10162         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10163         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10164         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10165         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10166         methods of linux_nat_target.
10167         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10168         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10169         parameter.
10170         (check_stopped_by_watchpoint): Adjust.
10171         (linux_xfer_partial): Delete.
10172         (linux_target_install_ops, linux_target, linux_nat_add_target):
10173         Delete.
10174         (linux_nat_target::linux_nat_target): New.
10175         * linux-nat.h: Include "inf-ptrace.h".
10176         (linux_nat_target): New.
10177         (linux_target, linux_target_install_ops, linux_nat_add_target):
10178         Delete function declarations.
10179         (linux_target): Declare global.
10180         * linux-thread-db.c (thread_db_target): New.
10181         (thread_db_target::thread_db_target): New.
10182         (thread_db_ops): Delete.
10183         (the_thread_db_target): New.
10184         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10185         (thread_db_update_thread_list, thread_db_pid_to_str)
10186         (thread_db_extra_thread_info)
10187         (thread_db_thread_handle_to_thread_info)
10188         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10189         (thread_db_resume): Refactor as methods of thread_db_target.
10190         (init_thread_db_ops): Delete.
10191         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10192         * x86-linux-nat.c: Don't include "linux-nat.h".
10193         (super_post_startup_inferior): Delete.
10194         (x86_linux_nat_target::~x86_linux_nat_target): New.
10195         (x86_linux_child_post_startup_inferior)
10196         (x86_linux_read_description, x86_linux_enable_btrace)
10197         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10198         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10199         methods of x86_linux_nat_target.
10200         (x86_linux_create_target): Delete.  Bits folded ...
10201         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10202         pointer.
10203         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10204         (x86_linux_nat_target): New class.
10205         (x86_linux_create_target): Delete.
10206         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10207         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10208         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10209         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10210         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10211         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10212         make extern.
10213         (x86_use_watchpoints): Delete.
10214         * x86-nat.h: Include "breakpoint.h" and "target.h".
10215         (x86_use_watchpoints): Delete.
10216         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10217         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10218         (x86_insert_watchpoint, x86_remove_watchpoint)
10219         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10220         (x86_stopped_by_hw_breakpoint): New declarations.
10221         (x86_nat_target): New template class.
10222
10223         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10224         (the_ppc_linux_nat_target): New.
10225         (ppc_linux_fetch_inferior_registers)
10226         (ppc_linux_can_use_hw_breakpoint)
10227         (ppc_linux_region_ok_for_hw_watchpoint)
10228         (ppc_linux_ranged_break_num_registers)
10229         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10230         (ppc_linux_insert_mask_watchpoint)
10231         (ppc_linux_remove_mask_watchpoint)
10232         (ppc_linux_can_accel_watchpoint_condition)
10233         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10234         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10235         (ppc_linux_watchpoint_addr_within_range)
10236         (ppc_linux_masked_watch_num_registers)
10237         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10238         (ppc_linux_read_description): Refactor as methods of
10239         ppc_linux_nat_target.
10240         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10241
10242         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10243         (procfs_target): New class.
10244         (the_procfs_target): New.
10245         (procfs_target): Delete function.
10246         (procfs_auxv_parse, procfs_attach, procfs_detach)
10247         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10248         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10249         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10250         (procfs_create_inferior, procfs_update_thread_list)
10251         (procfs_thread_alive, procfs_pid_to_str)
10252         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10253         (procfs_stopped_data_address, procfs_insert_watchpoint)
10254         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10255         (proc_find_memory_regions, procfs_info_proc)
10256         (procfs_make_note_section): Refactor as methods of procfs_target.
10257         (_initialize_procfs): Adjust.
10258         * sol-thread.c (sol_thread_target): New class.
10259         (sol_thread_ops): Now a sol_thread_target.
10260         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10261         (sol_thread_fetch_registers, sol_thread_store_registers)
10262         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10263         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10264         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10265         (init_sol_thread_ops): Delete.
10266         (_initialize_sol_thread): Adjust.  Remove references to
10267         init_sol_thread_ops and complete_target_initialization.
10268
10269         * windows-nat.c (windows_nat_target): New class.
10270         (windows_fetch_inferior_registers)
10271         (windows_store_inferior_registers, windows_resume, windows_wait)
10272         (windows_attach, windows_detach, windows_pid_to_exec_file)
10273         (windows_files_info, windows_create_inferior)
10274         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10275         (windows_close, windows_pid_to_str, windows_xfer_partial)
10276         (windows_get_tib_address, windows_get_ada_task_ptid)
10277         (windows_thread_name, windows_thread_alive): Refactor as
10278         windows_nat_target methods.
10279         (do_initial_windows_stuff): Adjust.
10280         (windows_target): Delete function.
10281         (_initialize_windows_nat): Adjust.
10282
10283         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10284         (darwin_mourn_inferior, darwin_kill_inferior)
10285         (darwin_create_inferior, darwin_attach, darwin_detach)
10286         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10287         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10288         (darwin_supports_multi_process): Refactor as darwin_nat_target
10289         methods.
10290         (darwin_resume_to, darwin_files_info): Delete.
10291         (_initialize_darwin_inferior): Rename to ...
10292         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10293         * darwin-nat.h: Include "inf-child.h".
10294         (darwin_nat_target): New class.
10295         (darwin_complete_target): Delete.
10296         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10297         (darwin_target): New.
10298         (i386_darwin_fetch_inferior_registers)
10299         (i386_darwin_store_inferior_registers): Refactor as methods of
10300         darwin_nat_target.
10301         (darwin_complete_target): Delete, with ...
10302         (_initialize_i386_darwin_nat): ... bits factored out here.
10303
10304         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10305         (the_alpha_linux_nat_target): New.
10306         (alpha_linux_register_u_offset): Refactor as
10307         alpha_linux_nat_target method.
10308         (_initialize_alpha_linux_nat): Adjust.
10309         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10310         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10311         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10312         methods of linux_nat_trad_target.
10313         (linux_trad_target): Delete.
10314         * linux-nat-trad.h (linux_trad_target): Delete function.
10315         (linux_nat_trad_target): New class.
10316         * mips-linux-nat.c (mips_linux_nat_target): New class.
10317         (super_fetch_registers, super_store_registers, super_close):
10318         Delete.
10319         (the_mips_linux_nat_target): New.
10320         (mips64_linux_regsets_fetch_registers)
10321         (mips64_linux_regsets_store_registers)
10322         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10323         (mips_linux_register_u_offset, mips_linux_read_description)
10324         (mips_linux_can_use_hw_breakpoint)
10325         (mips_linux_stopped_by_watchpoint)
10326         (mips_linux_stopped_data_address)
10327         (mips_linux_region_ok_for_hw_watchpoint)
10328         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10329         (mips_linux_close): Refactor as methods of mips_linux_nat.
10330         (_initialize_mips_linux_nat): Adjust to C++ification.
10331
10332         * aix-thread.c (aix_thread_target): New class.
10333         (aix_thread_ops): Now an aix_thread_target.
10334         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10335         (aix_thread_fetch_registers, aix_thread_store_registers)
10336         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10337         (aix_thread_thread_alive, aix_thread_pid_to_str)
10338         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10339         Refactor as methods of aix_thread_target.
10340         (init_aix_thread_ops): Delete.
10341         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10342         and complete_target_initialization.
10343         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10344         (rs6000_nat_target): New class.
10345         (the_rs6000_nat_target): New.
10346         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10347         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10348         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10349         (super_create_inferior): Delete.
10350         (_initialize_rs6000_nat): Adjust to C++ification.
10351
10352         * arm-linux-nat.c (arm_linux_nat_target): New class.
10353         (the_arm_linux_nat_target): New.
10354         (arm_linux_fetch_inferior_registers)
10355         (arm_linux_store_inferior_registers, arm_linux_read_description)
10356         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10357         (arm_linux_remove_hw_breakpoint)
10358         (arm_linux_region_ok_for_hw_watchpoint)
10359         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10360         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10361         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10362         arm_linux_nat_target.
10363         (_initialize_arm_linux_nat): Adjust to C++ification.
10364
10365         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10366         (the_aarch64_linux_nat_target): New.
10367         (aarch64_linux_fetch_inferior_registers)
10368         (aarch64_linux_store_inferior_registers)
10369         (aarch64_linux_child_post_startup_inferior)
10370         (aarch64_linux_read_description)
10371         (aarch64_linux_can_use_hw_breakpoint)
10372         (aarch64_linux_insert_hw_breakpoint)
10373         (aarch64_linux_remove_hw_breakpoint)
10374         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10375         (aarch64_linux_region_ok_for_hw_watchpoint)
10376         (aarch64_linux_stopped_data_address)
10377         (aarch64_linux_stopped_by_watchpoint)
10378         (aarch64_linux_watchpoint_addr_within_range)
10379         (aarch64_linux_can_do_single_step): Refactor as methods of
10380         aarch64_linux_nat_target.
10381         (super_post_startup_inferior): Delete.
10382         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10383
10384         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10385         (the_hppa_linux_nat_target): New.
10386         (hppa_linux_fetch_inferior_registers)
10387         (hppa_linux_store_inferior_registers): Refactor as methods of
10388         hppa_linux_nat_target.
10389         (_initialize_hppa_linux_nat): Adjust to C++ification.
10390
10391         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10392         (the_ia64_linux_nat_target): New.
10393         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10394         (ia64_linux_stopped_data_address)
10395         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10396         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10397         ia64_linux_nat_target methods.
10398         (super_xfer_partial): Delete.
10399         (_initialize_ia64_linux_nat): Adjust to C++ification.
10400
10401         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10402         (the_m32r_linux_nat_target): New.
10403         (m32r_linux_fetch_inferior_registers)
10404         (m32r_linux_store_inferior_registers): Refactor as
10405         m32r_linux_nat_target methods.
10406         (_initialize_m32r_linux_nat): Adjust to C++ification.
10407
10408         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10409         (the_m68k_linux_nat_target): New.
10410         (m68k_linux_fetch_inferior_registers)
10411         (m68k_linux_store_inferior_registers): Refactor as
10412         m68k_linux_nat_target methods.
10413         (_initialize_m68k_linux_nat): Adjust to C++ification.
10414
10415         * s390-linux-nat.c (s390_linux_nat_target): New class.
10416         (the_s390_linux_nat_target): New.
10417         (s390_linux_fetch_inferior_registers)
10418         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10419         (s390_insert_watchpoint, s390_remove_watchpoint)
10420         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10421         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10422         (s390_auxv_parse, s390_read_description): Refactor as methods of
10423         s390_linux_nat_target.
10424         (_initialize_s390_nat): Adjust to C++ification.
10425
10426         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10427         (the_sparc_linux_nat_target): New.
10428         (_initialize_sparc_linux_nat): Adjust to C++ification.
10429         * sparc-nat.c (sparc_fetch_inferior_registers)
10430         (sparc_store_inferior_registers): Remove target_ops parameter.
10431         * sparc-nat.h (sparc_fetch_inferior_registers)
10432         (sparc_store_inferior_registers): Remove target_ops parameter.
10433         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10434         (the_sparc64_linux_nat_target): New.
10435         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10436
10437         * spu-linux-nat.c (spu_linux_nat_target): New class.
10438         (the_spu_linux_nat_target): New.
10439         (spu_child_post_startup_inferior, spu_child_post_attach)
10440         (spu_child_wait, spu_fetch_inferior_registers)
10441         (spu_store_inferior_registers, spu_xfer_partial)
10442         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10443         methods.
10444         (_initialize_spu_nat): Adjust to C++ification.
10445
10446         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10447         (the_tilegx_linux_nat_target): New.
10448         (fetch_inferior_registers, store_inferior_registers):
10449         Refactor as methods.
10450         (_initialize_tile_linux_nat): Adjust to C++ification.
10451
10452         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10453         (the_xtensa_linux_nat_target): New.
10454         (xtensa_linux_fetch_inferior_registers)
10455         (xtensa_linux_store_inferior_registers): Refactor as
10456         xtensa_linux_nat_target methods.
10457         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10458
10459         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10460         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10461         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10462         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10463         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10464         (fbsd_stopped_by_sw_breakpoint)
10465         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10466         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10467         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10468         (fbsd_post_startup_inferior, fbsd_post_attach)
10469         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10470         (fbsd_set_syscall_catchpoint)
10471         (super_xfer_partial, super_resume, super_wait)
10472         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10473         (fbsd_handle_debug_trap): Remove target_ops parameter.
10474         (fbsd_nat_add_target): Delete.
10475         * fbsd-nat.h: Include "inf-ptrace.h".
10476         (fbsd_nat_add_target): Delete.
10477         (USE_SIGTRAP_SIGINFO): Define.
10478         (fbsd_nat_target): New class.
10479
10480         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10481         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10482         (amd64bsd_target): Delete.
10483         * amd64-bsd-nat.h: New file.
10484         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10485         "x86-bsd-nat.h".
10486         (amd64_fbsd_nat_target): New class.
10487         (the_amd64_fbsd_nat_target): New.
10488         (amd64fbsd_read_description): Refactor as method of
10489         amd64_fbsd_nat_target.
10490         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10491         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10492         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10493         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10494         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10495         (i386bsd_target): Delete.
10496         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10497         (i386bsd_fetch_inferior_registers)
10498         (i386bsd_store_inferior_registers): Declare.
10499         (i386_bsd_nat_target): New class.
10500         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10501         (the_i386_fbsd_nat_target): New.
10502         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10503         i386_fbsd_nat_target methods.
10504         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10505         (_initialize_i386fbsd_nat): Adjust to C++ification.
10506         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10507         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10508         (_initialize_x86_bsd_nat): Adjust to C++ification.
10509         * x86-bsd-nat.h: Include "x86-nat.h".
10510         (x86bsd_target): Delete declaration.
10511         (x86bsd_nat_target): New class.
10512
10513         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10514         (the_aarch64_fbsd_nat_target): New.
10515         (aarch64_fbsd_fetch_inferior_registers)
10516         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10517         aarch64_fbsd_nat_target.
10518         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10519         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10520         (the_alpha_bsd_nat_target): New.
10521         (alphabsd_fetch_inferior_registers)
10522         (alphabsd_store_inferior_registers): Refactor as
10523         alpha_bsd_nat_target methods.
10524         (_initialize_alphabsd_nat): Refactor as methods of
10525         alpha_bsd_nat_target.
10526         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10527         (the_amd64_nbsd_nat_target): New.
10528         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10529         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10530         (the_amd64_obsd_nat_target): New.
10531         (_initialize_amd64obsd_nat): Adjust to C++ification.
10532         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10533         (the_arm_fbsd_nat_target): New.
10534         (arm_fbsd_fetch_inferior_registers)
10535         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10536         (_initialize_arm_fbsd_nat): Refactor as methods of
10537         arm_fbsd_nat_target.
10538         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10539         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10540         (the_arm_netbsd_nat_target): New.
10541         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10542         arm_netbsd_nat_target.
10543         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10544         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10545         (the_hppa_nbsd_nat_target): New.
10546         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10547         hppa_nbsd_nat_target methods.
10548         (_initialize_hppanbsd_nat): Adjust to C++ification.
10549         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10550         (the_hppa_obsd_nat_target): New.
10551         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10552         methods of hppa_obsd_nat_target.
10553         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10554         add_target.
10555         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10556         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10557         add_target.
10558         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10559         (_initialize_i386obsd_nat): Use add_target.
10560         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10561         (the_m68k_bsd_nat_target): New.
10562         (m68kbsd_fetch_inferior_registers)
10563         (m68kbsd_store_inferior_registers): Refactor as methods of
10564         m68k_bsd_nat_target.
10565         (_initialize_m68kbsd_nat): Adjust to C++ification.
10566         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10567         (the_mips_fbsd_nat_target): New.
10568         (mips_fbsd_fetch_inferior_registers)
10569         (mips_fbsd_store_inferior_registers): Refactor as methods of
10570         mips_fbsd_nat_target.
10571         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10572         add_target.
10573         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10574         (the_mips_nbsd_nat_target): New.
10575         (mipsnbsd_fetch_inferior_registers)
10576         (mipsnbsd_store_inferior_registers): Refactor as methods of
10577         mips_nbsd_nat_target.
10578         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10579         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10580         (the_mips64_obsd_nat_target): New.
10581         (mips64obsd_fetch_inferior_registers)
10582         (mips64obsd_store_inferior_registers): Refactor as methods of
10583         mips64_obsd_nat_target.
10584         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10585         add_target.
10586         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10587         nbsd_nat_target.
10588         * nbsd-nat.h: Include "inf-ptrace.h".
10589         (nbsd_nat_target): New class.
10590         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10591         (obsd_wait): Refactor as methods of obsd_nat_target.
10592         (obsd_add_target): Delete.
10593         * obsd-nat.h: Include "inf-ptrace.h".
10594         (obsd_nat_target): New class.
10595         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10596         (the_ppc_fbsd_nat_target): New.
10597         (ppcfbsd_fetch_inferior_registers)
10598         (ppcfbsd_store_inferior_registers): Refactor as methods of
10599         ppc_fbsd_nat_target.
10600         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10601         add_target.
10602         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10603         (the_ppc_nbsd_nat_target): New.
10604         (ppcnbsd_fetch_inferior_registers)
10605         (ppcnbsd_store_inferior_registers): Refactor as methods of
10606         ppc_nbsd_nat_target.
10607         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10608         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10609         (the_ppc_obsd_nat_target): New.
10610         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10611         methods of ppc_obsd_nat_target.
10612         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10613         add_target.
10614         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10615         (the_sh_nbsd_nat_target): New.
10616         (shnbsd_fetch_inferior_registers)
10617         (shnbsd_store_inferior_registers): Refactor as methods of
10618         sh_nbsd_nat_target.
10619         (_initialize_shnbsd_nat): Adjust to C++ification.
10620         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10621         (inf_ptrace_xfer_partial): Delete.
10622         (sparc_xfer_partial, sparc_target): Delete.
10623         * sparc-nat.h (sparc_fetch_inferior_registers)
10624         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10625         (sparc_target): Delete function declaration.
10626         (sparc_target): New template class.
10627         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10628         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10629         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10630         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10631         add_target.
10632         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10633         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10634         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10635         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10636         add_target.
10637         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10638         (the_vax_bsd_nat_target): New.
10639         (vaxbsd_fetch_inferior_registers)
10640         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10641         methods.
10642         (_initialize_vaxbsd_nat): Adjust to C++ification.
10643
10644         * bsd-kvm.c (bsd_kvm_target): New class.
10645         (bsd_kvm_ops): Now a bsd_kvm_target.
10646         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10647         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10648         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10649         bsd_kvm_target.
10650         (bsd_kvm_return_one): Delete.
10651         (bsd_kvm_add_target): Adjust to C++ification.
10652
10653         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10654         (nto_procfs_target_procfs): New classes.
10655         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10656         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10657         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10658         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10659         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10660         (procfs_remove_hw_breakpoint, procfs_resume)
10661         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10662         (procfs_kill_inferior, procfs_store_registers)
10663         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10664         as methods of nto_procfs_target.
10665         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10666         (nto_native_ops): Delete.
10667         (procfs_open, procfs_native_open): Delete.
10668         (nto_native_ops): Now an nto_procfs_target_native.
10669         (init_procfs_targets): Adjust to C++ification.
10670         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10671         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10672         Refactor as methods of nto_procfs_target.
10673
10674         * go32-nat.c (go32_nat_target): New class.
10675         (the_go32_nat_target): New.
10676         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10677         (go32_store_registers, go32_xfer_partial, go32_files_info)
10678         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10679         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10680         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10681         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10682         (go32_target): Delete.
10683         (_initialize_go32_nat): Adjust to C++ification.
10684
10685         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10686         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10687         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10688         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10689         gnu_nat_target.
10690         (gnu_target): Delete.
10691         * gnu-nat.h (gnu_target): Delete.
10692         (gnu_nat_target): New class.
10693         * i386-gnu-nat.c (gnu_base_target): New.
10694         (i386_gnu_nat_target): New class.
10695         (the_i386_gnu_nat_target): New.
10696         (_initialize_i386gnu_nat): Adjust to C++ification.
10697
10698 2018-05-02  Pedro Alves  <palves@redhat.com>
10699
10700         * bfd-target.c (target_bfd_xclose): Rename to ...
10701         (target_bfd_close): ... this.
10702         (target_bfd_reopen): Adjust.
10703         * target.c (target_close): Remove references to to_xclose.
10704         * target.h (target_ops::to_xclose): Delete.
10705         (target_ops::to_close): Update comments.
10706
10707 2018-05-02  Pedro Alves  <palves@redhat.com>
10708
10709         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10710         "linux-nat.h".
10711         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10712         * inf-ptrace.c (inf_ptrace_register_u_offset)
10713         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10714         (inf_ptrace_store_register, inf_ptrace_store_registers)
10715         (inf_ptrace_trad_target): Move to ...
10716         * linux-nat-trad.c: ... this new file.
10717         * linux-nat-trad.h: New file.
10718         * linux-nat.c (linux_target_install_ops): Make extern.
10719         (linux_trad_target): Delete.
10720         * linux-nat.h (linux_trad_target): Delete declaration.
10721         (linux_target_install_ops): Declare.
10722         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10723         "linux-nat.h".
10724
10725 2018-05-02  Pedro Alves  <palves@redhat.com>
10726
10727         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10728         procfs_target/add_target here.
10729         * procfs.c (procfs_target): Make static.
10730         (_initialize_procfs): Call add_target here.
10731         * procfs.h (struct target_ops): Remove forward declaration.
10732         (procfs_target): Remove declaration.
10733         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10734
10735 2018-05-02  Pedro Alves  <palves@redhat.com>
10736
10737         * procfs.c (procfs_stopped_by_watchpoint)
10738         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10739         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10740         Forward declare.
10741         (procfs_use_watchpoints): Delete, move contents...
10742         (procfs_target): ... here.
10743         * procfs.h (procfs_use_watchpoints): Delete declaration.
10744         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10745         procfs_use_watchpoints.
10746         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10747         procfs_use_watchpoints.
10748
10749 2018-05-02  Tom Tromey  <tom@tromey.com>
10750
10751         PR python/20084:
10752         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10753         and var_zuinteger_unlimited.
10754         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10755         and PARAM_ZUINTEGER_UNLIMITED.
10756         (set_parameter_value): Handle var_zuinteger and
10757         var_zuinteger_unlimited.
10758         (add_setshow_generic): Likewise.
10759         (parmpy_init): Likewise.
10760
10761 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10762
10763         PR rust/23124
10764         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10765         pointer is not null before dereferencing it.
10766
10767 2018-04-30  Tom Tromey  <tom@tromey.com>
10768
10769         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10770         is_mi_like_p.
10771
10772 2018-04-30  Tom Tromey  <tom@tromey.com>
10773
10774         * breakpoint.c (mention): Remove use of is_mi_like_p.
10775         (print_mention_ranged_breakpoint): Likewise.
10776         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10777         of is_mi_like_p.
10778
10779 2018-04-30  Tom Tromey  <tom@tromey.com>
10780
10781         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10782
10783 2018-04-30  Tom Tromey  <tom@tromey.com>
10784
10785         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10786         (info_spu_event_command): Remove some uses of is_mi_like_p.
10787
10788 2018-04-30  Tom Tromey  <tom@tromey.com>
10789
10790         * python/py-framefilter.c (py_print_single_arg)
10791         (enumerate_locals, py_print_args, py_print_frame): Remove some
10792         uses of is_mi_like_p.
10793
10794 2018-04-30  Tom Tromey  <tom@tromey.com>
10795
10796         * ui-out.c: Update.
10797         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10798         * ui-out.h (ui_out::is_mi_like_p): Now const.
10799         (ui_out::do_is_mi_like_p): Now const.
10800         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10801
10802 2018-04-30  Tom Tromey  <tom@tromey.com>
10803
10804         * varobj.c (varobj_set_visualizer): Use new_reference.
10805         * python/python.c (gdbpy_decode_line): Use new_reference.
10806         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10807         new_reference.
10808
10809 2018-04-30  Tom Tromey  <tom@tromey.com>
10810
10811         * varobj.c (install_new_value): Use new_reference.
10812         * value.h (value_incref): Return void.  Swap intro comment with
10813         value_decref.
10814         * value.c (set_value_parent): Use new_reference.
10815         (value_incref): Return void.  Update intro comment.
10816         (release_value): Use new_reference.
10817         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10818
10819 2018-04-30  Tom Tromey  <tom@tromey.com>
10820
10821         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10822         * gdb_bfd.h (new_bfd_ref): Remove.
10823         (gdb_bfd_open): Update comment.
10824         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10825         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10826         (gdb_bfd_fdopenr): Use new_reference.
10827         * exec.c (exec_file_attach): Use new_reference.
10828
10829 2018-04-30  Tom Tromey  <tom@tromey.com>
10830
10831         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10832         method.
10833
10834 2018-04-30  Tom Tromey  <tom@tromey.com>
10835
10836         * jit.c (jit_read_code_entry): Use type_align.
10837         * i386-tdep.c (i386_gdbarch_init): Don't call
10838         set_gdbarch_long_long_align_bit.
10839         * gdbarch.sh: Remove long_long_align_bit.
10840         * gdbarch.c, gdbarch.h: Rebuild.
10841         * arc-tdep.c (arc_type_align): New function.
10842         (arc_gdbarch_init): Use arc_type_align.  Don't call
10843         set_gdbarch_long_long_align_bit.
10844
10845 2018-04-30  Tom Tromey  <tom@tromey.com>
10846
10847         * rust-lang.c (rust_type_alignment): Remove.
10848         (rust_composite_type): Use type_align.
10849
10850 2018-04-30  Tom Tromey  <tom@tromey.com>
10851
10852         * NEWS: Mention Type.align.
10853         * python/py-type.c (typy_get_alignof): New function.
10854         (type_object_getset): Add "alignof".
10855
10856 2018-04-30  Tom Tromey  <tom@tromey.com>
10857
10858         PR exp/17095:
10859         * NEWS: Update.
10860         * std-operator.def (UNOP_ALIGNOF): New operator.
10861         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10862         New.
10863         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10864         * c-lang.c (c_op_print_tab): Add alignof.
10865         * c-exp.y (ALIGNOF): New token.
10866         (exp): Add "ALIGNOF" production.
10867         (ident_tokens): Add _Alignof and alignof.
10868
10869 2018-04-30  Tom Tromey  <tom@tromey.com>
10870
10871         * i386-tdep.c (i386_type_align): New function.
10872         (i386_gdbarch_init): Update.
10873         * gdbarch.sh (type_align): New method.
10874         * gdbarch.c, gdbarch.h: Rebuild.
10875         * arch-utils.h (default_type_align): Declare.
10876         * arch-utils.c (default_type_align): New function.
10877         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10878         (struct type) <align_log2>: New field.
10879         <instance_flags>: Now a bitfield.
10880         (TYPE_RAW_ALIGN): New macro.
10881         (type_align, type_raw_align, set_type_align): Declare.
10882         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10883         functions.
10884         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10885         (get_alignment, maybe_set_alignment): New functions.
10886         (read_structure_type, read_enumeration_type, read_array_type)
10887         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10888         (read_subrange_type, read_base_type): Set type alignment.
10889
10890 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10891
10892         * dwarf2read.c (read_index_from_section): Use bool.
10893
10894 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10895
10896         PR gdb/22950
10897         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10898         with #ifdef.
10899
10900 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10901
10902         PR build/22873
10903         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10904         last step, and do it atomically.
10905
10906 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10907
10908         * compile/compile-c-types.c (convert_int, convert_float):
10909         Update for C FE v1.
10910
10911 2018-04-27  Tom Tromey  <tom@tromey.com>
10912
10913         PR rust/22545:
10914         * rust-lang.c (rust_inclusive_range_type_p): New function.
10915         (rust_range): Handle inclusive ranges.
10916         (rust_compute_range): Likewise.
10917         * rust-exp.y (struct rust_op) <inclusive>: New field.
10918         (DOTDOTEQ): New constant.
10919         (range_expr): Add "..=" productions.
10920         (operator_tokens): Add "..=" token.
10921         (ast_range): Add "inclusive" parameter.
10922         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10923         ranges.
10924         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10925         bounds values.
10926         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10927         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10928         Update comments.
10929         * expprint.c (print_subexp_standard): Handle new bounds values.
10930         (dump_subexp_body_standard): Likewise.
10931
10932 2018-04-27  Tom Tromey  <tom@tromey.com>
10933
10934         * configure: Rebuild.
10935         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10936         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10937         "OVERRIDE".
10938         (class symbol_needs_eval_context): Likewise.
10939         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10940         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10941         "virtual".
10942         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10943         "override".
10944         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10945         * aarch64-tdep.c (instruction_reader::read): Use "override".
10946         (instruction_reader_test::read): Likewise.
10947         * arm-tdep.c (instruction_reader::read): Use "override".
10948         (instruction_reader_thumb::read): Likewise.
10949
10950 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10951
10952         PR remote/9665
10953         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10954         instead of remote_send.
10955         (remote_send): Remove.
10956
10957 2018-04-26  Pedro Alves  <palves@redhat.com>
10958
10959         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10960         find_function_start_sal instead of find_pc_line.
10961
10962 2018-04-26  Pedro Alves  <palves@redhat.com>
10963
10964         * breakpoint.c (set_breakpoint_location_function): Handle
10965         mst_data_gnu_ifunc.
10966         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10967         * elfread.c (elf_symtab_read): Give data symbols with
10968         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10969         (elf_rel_plt_read): Update comment.
10970         * linespec.c (convert_linespec_to_sals): Handle
10971         mst_data_gnu_ifunc.
10972         (minsym_found): Handle mst_data_gnu_ifunc.
10973         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10974         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10975         * parse.c (find_minsym_type_and_address): Handle
10976         mst_data_gnu_ifunc.
10977         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10978         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10979         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10980         comment.
10981         <mst_data_gnu_ifunc>: New enumerator.
10982
10983 2018-04-26  Pedro Alves  <palves@redhat.com>
10984
10985         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10986         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10987         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10988         Handle it.
10989         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10990         (lookup_minimal_symbol_by_pc): Adjust.
10991         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10992         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10993         * minsyms.h (lookup_msym_prefer): New enum.
10994         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10995         parameter by a lookup_msym_prefer parameter.
10996
10997 2018-04-26  Pedro Alves  <palves@redhat.com>
10998
10999         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11000         ends in "@plt" instead of looking at the symbol's section.
11001
11002 2018-04-26  Pedro Alves  <palves@redhat.com>
11003
11004         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11005         all references.
11006         (find_pc_partial_function_gnu_ifunc): Rename to ...
11007         (find_pc_partial_function): ... this, and remove references to
11008         'is_gnu_ifunc_p'.
11009         (find_pc_partial_function): Delete old implementation.
11010         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11011
11012 2018-04-26  Pedro Alves  <palves@redhat.com>
11013
11014         * linespec.c (struct bound_minimal_symbol_search_key): New.
11015         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11016         skip first line if we found a GNU ifunc minimal symbol by name.
11017         (compare_msymbols): Change parameters to work with a destructured
11018         lhs minsym.
11019         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11020         functions.
11021
11022 2018-04-26  Pedro Alves  <palves@redhat.com>
11023
11024         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11025         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11026         address/name.
11027         (add_location_to_breakpoint): Store the minsym and the objfile in
11028         the breakpoint location.
11029         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11030         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11031         Record the minsym in the sal.
11032         * symtab.h (symtab_and_line) <msymbol>: New field.
11033
11034 2018-04-26  Pedro Alves  <palves@redhat.com>
11035
11036         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11037         unless we actually resolved the ifunc.
11038
11039 2018-04-26  Pedro Alves  <palves@redhat.com>
11040
11041         * c-exp.y (variable production): Prefer ifunc minsyms over
11042         regular function symbols.
11043         * symtab.c (find_gnu_ifunc): New function.
11044         * minsyms.h (lookup_msym_prefer): New enum.
11045         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11046         parameter by a lookup_msym_prefer parameter.
11047         * symtab.h (find_gnu_ifunc): New declaration.
11048
11049 2018-04-26  Pedro Alves  <palves@redhat.com>
11050
11051         * blockframe.c (find_gnu_ifunc_target_type): New function.
11052         (find_function_type): New.
11053         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11054         return a value with a memory address.
11055         (eval_call): For calls to GNU ifunc functions, try to find the
11056         type of the target function from the type that the resolver
11057         returns.
11058         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11059         symbols.
11060         * infcall.c (find_function_return_type): Delete.
11061         (find_function_addr): Add 'function_type' parameter.  For calls to
11062         GNU ifunc functions, try to find the type of the target function
11063         from the type that the resolver returns, and return it via
11064         FUNCTION_TYPE.
11065         (call_function_by_hand_dummy): Adjust to use the function type
11066         returned by find_function_addr.
11067         (find_function_addr): Add 'function_type' parameter and move
11068         description here.
11069         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11070         declarations.
11071
11072 2018-04-26  Pedro Alves  <palves@redhat.com>
11073
11074         * c-exp.y (variable production): Skip finding an alias for ifunc
11075         symbols.
11076
11077 2018-04-26  Pedro Alves  <palves@redhat.com>
11078
11079         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11080
11081 2018-04-25  Pedro Alves  <palves@redhat.com>
11082
11083         * infcmd.c (kill_command): Print the pid as string, not the whole
11084         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11085         message.
11086         * remote.c (remote_detach_1): Print the pid as string, not the
11087         whole thread's ptid.
11088
11089 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11090             Sergio Durigan Junior  <sergiodj@redhat.com>
11091             Pedro Alves  <palves@redhat.com>
11092
11093         * infcmd.c (kill_command): Print message when inferior has
11094         been killed.
11095         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11096         '1'.
11097         (add_inferior): Improve message printed when
11098         'print_inferior_events' is on.
11099         (exit_inferior): Remove message printed when
11100         'print_inferior_events' is on.
11101         (detach_inferior): Improve message printed when
11102         'print_inferior_events' is on.
11103         (initialize_inferiors): Use 'add_inferior_silent' to set
11104         'current_inferior_'.
11105         * inferior.h (print_inferior_events): Declare here as
11106         'extern'.
11107         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11108         '[Detaching...]' messages when 'print_inferior_events' is on.
11109         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11110         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11111         'Detaching after fork from child...', replace it by '... from
11112         parent...'.
11113         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11114         prefix/suffix when printing 'Detaching...' messages.  Print
11115         them when 'print_inferior_events' is on.
11116         * remote.c (remote_detach_1): Print message when detaching
11117         from inferior and '!is_fork_parent'.
11118
11119 2018-04-24  Tom Tromey  <tom@tromey.com>
11120
11121         * cli-out.h: Reindent.
11122
11123 2018-04-24  Tom Tromey  <tom@tromey.com>
11124
11125         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11126         (cli_ui_out::do_field_string): Use fputs_filtered.
11127         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11128
11129 2018-04-23  Tom Tromey  <tom@tromey.com>
11130
11131         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11132         gdb::unique_xmalloc_ptr.
11133
11134 2018-04-23  Tom Tromey  <tom@tromey.com>
11135
11136         * configure: Rebuild.
11137
11138 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11139
11140         PR gdb/23095
11141         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11142         prepare_for_testing.  Set normal_bp to r_debug_state if target
11143         is bsd.
11144
11145 2018-04-21  Pedro Alves  <palves@redhat.com>
11146             Rajendra SY  <rajendra.sy@gmail.com>
11147
11148         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11149         * remote.c (extended_remote_attach): In all-stop mode, mark the
11150         thread as executing.
11151
11152 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11153
11154         * thread.c (thread_apply_all_command): Fix comment.
11155         (thread_command): Fix comment.
11156
11157 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11158
11159         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11160         parameter.
11161         * features/aarch64-core.c (create_feature_aarch64_core):
11162         Regenerate.
11163         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11164         Likewise.
11165         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11166         Likewise.
11167         * features/i386/32bit-avx512.c
11168         (create_feature_i386_32bit_avx512): Likewise.
11169         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11170         Likewise.
11171         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11172         Likewise.
11173         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11174         Likewise.
11175         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11176         Likewise.
11177         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11178         Likewise.
11179         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11180         Likewise.
11181         * features/i386/64bit-avx512.c
11182         (create_feature_i386_64bit_avx512): Likewise.
11183         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11184         Likewise.
11185         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11186         Likewise.
11187         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11188         Likewise.
11189         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11190         Likewise.
11191         * features/i386/64bit-segments.c
11192         (create_feature_i386_64bit_segments): Likewise.
11193         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11194         Likewise.
11195         * features/i386/x32-core.c
11196         (create_feature_i386_x32_core): Likewise.
11197         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11198         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11199         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11200         * target-descriptions.c: In generated code, don't pass xml
11201         filename.
11202
11203 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11204
11205         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11206         (print_xml_feature::visit_post): Likewise.
11207         (print_xml_feature::visit): Likewise.
11208         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11209         (print_xml_feature): Add new class.
11210         * regformats/regdat.sh: Null xmltarget on feature targets.
11211         * target-descriptions.c (struct target_desc): Add xmltarget.
11212         (maintenance_check_tdesc_xml_convert): Add unittest function.
11213         (tdesc_get_features_xml): Add function to get xml.
11214         (maintenance_check_xml_descriptions): Test xml generation.
11215         * xml-tdesc.c (string_read_description_xml): Add function.
11216         * xml-tdesc.h (string_read_description_xml): Add declaration.
11217
11218 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11219
11220         * features/Makefile: Add feature marker to targets with new style
11221         target descriptions.
11222         * regformats/aarch64.dat: Regenerate.
11223         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11224         * regformats/i386/amd64-avx-linux.dat: Likewise.
11225         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11226         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11227         * regformats/i386/amd64-linux.dat: Likewise.
11228         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11229         * regformats/i386/amd64.dat: Likewise.
11230         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11231         * regformats/i386/i386-avx-linux.dat: Likewise.
11232         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11233         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11234         * regformats/i386/i386-linux.dat: Likewise.
11235         * regformats/i386/i386-mmx-linux.dat: Likewise.
11236         * regformats/i386/i386-mpx-linux.dat: Likewise.
11237         * regformats/i386/i386.dat: Likewise.
11238         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11239         * regformats/i386/x32-avx-linux.dat: Likewise.
11240         * regformats/i386/x32-linux.dat: Likewise.
11241         * regformats/tic6x-c62x-linux.dat: Likewise.
11242         * regformats/tic6x-c64x-linux.dat: Likewise.
11243         * regformats/tic6x-c64xp-linux.dat: Likewise.
11244         * regformats/regdat.sh: Parse feature marker.
11245
11246 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11247
11248         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11249         (tdesc_osabi_name): Likewise.
11250         * target-descriptions.c (tdesc_architecture_name): Add new
11251         function.
11252         (tdesc_osabi_name): Likewise.
11253
11254 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11255
11256         * common/tdesc.c (tdesc_predefined_type): Move to here.
11257         (tdesc_named_type): Likewise.
11258         (tdesc_create_vector): Likewise.
11259         (tdesc_create_struct): Likewise.
11260         (tdesc_set_struct_size): Likewise.
11261         (tdesc_create_union): Likewise.
11262         (tdesc_create_flags): Likewise.
11263         (tdesc_create_enum): Likewise.
11264         (tdesc_add_field): Likewise.
11265         (tdesc_add_typed_bitfield): Likewise.
11266         (tdesc_add_bitfield): Likewise.
11267         (tdesc_add_flag): Likewise.
11268         (tdesc_add_enum_value): Likewise.
11269         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11270         (struct tdesc_type_vector): Likewise.
11271         (struct tdesc_type_field): Likewise.
11272         (struct tdesc_type_with_fields): Likewise.
11273         (tdesc_create_enum): Add declaration.
11274         (tdesc_add_typed_bitfield): Likewise.
11275         (tdesc_add_enum_value): Likewise.
11276         * target-descriptions.c (tdesc_type_field): Move from here.
11277         (tdesc_type_builtin): Likewise.
11278         (tdesc_type_vector): Likewise.
11279         (tdesc_type_with_fields): Likewise.
11280         (tdesc_predefined_types): Likewise.
11281         (tdesc_named_type): Likewise.
11282         (tdesc_create_vector): Likewise.
11283         (tdesc_create_struct): Likewise.
11284         (tdesc_set_struct_size): Likewise.
11285         (tdesc_create_union): Likewise.
11286         (tdesc_create_flags): Likewise.
11287         (tdesc_create_enum): Likewise.
11288         (tdesc_add_field): Likewise.
11289         (tdesc_add_typed_bitfield): Likewise.
11290         (tdesc_add_bitfield): Likewise.
11291         (tdesc_add_flag): Likewise.
11292         (tdesc_add_enum_value): Likewise.
11293         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11294         (tdesc_add_typed_bitfield): Likewise.
11295         (tdesc_add_enum_value): Likewise.
11296
11297 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11298
11299         * common/tdesc.c (tdesc_feature::accept): Move to here.
11300         (tdesc_feature::operator==): Likewise.
11301         (tdesc_create_reg): Likewise.
11302         * common/tdesc.h (tdesc_type_kind): Likewise.
11303         (struct tdesc_type): Likewise.
11304         (struct tdesc_feature): Likewise.
11305         * regformats/regdat.sh: Create a feature.
11306         * target-descriptions.c (tdesc_type_kind): Move from here.
11307         (tdesc_type): Likewise.
11308         (tdesc_type_up): Likewise.
11309         (tdesc_feature): Likewise.
11310         (tdesc_create_reg): Likewise.
11311
11312 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11313
11314         * Makefile.in: Add arch/tdesc.c
11315         * common/tdesc.c: New file.
11316         * common/tdesc.h (tdesc_element_visitor): Move to here.
11317         (tdesc_element): Likewise.
11318         (tdesc_reg): Likewise.
11319         (tdesc_reg_up): Likewise.
11320         * regformats/regdef.h (reg): Add offset to constructors.
11321         * target-descriptions.c (tdesc_element_visitor): Move from here.
11322         (tdesc_element): Likewise.
11323         (tdesc_reg): Likewise.
11324         (tdesc_reg_up): Likewise.
11325
11326 2018-04-17  Tom Tromey  <tom@tromey.com>
11327
11328         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11329         discriminant field.
11330
11331 2018-04-17  Tom Tromey  <tom@tromey.com>
11332
11333         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11334
11335 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11336
11337         * symtab.c (print_symbol_info): Skip printing filename and line
11338         number when `last' is NULL.
11339         (symtab_symbol_info): Use empty string instead of NULL for first
11340         invocation of print_symbol_info.
11341         (rbreak_command): Pass NULL to `last' parameter of
11342         print_symbol_info.
11343
11344 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11345
11346         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11347         instead of nullptr.
11348
11349 2018-04-16  Pedro Alves  <palves@redhat.com>
11350
11351         * MAINTAINERS (sh): Remove.
11352         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11353         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11354         (ALLDEPFILES): Remove sh64-tdep.c.
11355         * NEWS: Mentions that support for SH-5/SH64 is removed.
11356         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11357         (sh*-*-openbsd*): Ditto.
11358         (sh64-*-elf*): Remove.
11359         (sh*): Remove.
11360         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11361         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11362         * sh-tdep.c: No longer include "sh64-tdep.h".
11363         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11364         * sh64-tdep.c, sh64-tdep.h: Remove files.
11365
11366 2018-04-16  Pedro Alves  <palves@redhat.com>
11367
11368         * MAINTAINERS: Remove m88k.
11369         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11370         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11371         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11372         * NEWS: Mention that support for m88k was removed.
11373         * configure.host (m88*-*-*): Remove support.
11374         * configure.nat (m88k-*-*): Remove support.
11375         * configure.tgt (m88*-*-openbsd*): Remove.
11376         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11377
11378 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11379
11380         * configure.tgt (x86_tobjs): New variable.
11381         (amd64_tobjs, i386_tobjs): Use it.
11382
11383 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11384
11385         * symtab.c (print_symbol_info): Precede the symbol definition by
11386         the line number when available.
11387         * NEWS: Advertise this enhancement.
11388
11389 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11390
11391         * NEWS (New options): announce set/show record btrace cpu.
11392         * btrace.c: Include record-btrace.h.
11393         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11394         the vendor is unknown.
11395         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11396         Maybe overwrite the btrace configuration's cpu.
11397         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11398         (btrace_fetch): Add cpu parameter.  Update callers.
11399         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11400         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11401         errata workarounds if the vendor is unknown.
11402         * python/py-record-btrace.c: Include record-btrace.h.
11403         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11404         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11405         * record-btrace.c (record_btrace_cpu_state_kind): New.
11406         (record_btrace_cpu): New.
11407         (set_record_btrace_cpu_cmdlist): New.
11408         (record_btrace_get_cpu): New.
11409         (require_btrace_thread, record_btrace_info)
11410         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11411         (cmd_set_record_btrace_cpu_none): New.
11412         (cmd_set_record_btrace_cpu_auto): New.
11413         (cmd_set_record_btrace_cpu): New.
11414         (cmd_show_record_btrace_cpu): New.
11415         (_initialize_record_btrace): Initialize set/show record btrace cpu
11416         commands.
11417         * record-btrace.h (record_btrace_get_cpu): New.
11418
11419 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11420
11421         * record.c (set_record_command): Fix typo in message.
11422
11423 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11424
11425         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11426
11427 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11428
11429         * infrun.c (process_event_stop_test): Call
11430         gdbarch_in_indirect_branch_thunk.
11431         * gdbarch.sh (in_indirect_branch_thunk): New.
11432         * gdbarch.c: Regenerated.
11433         * gdbarch.h: Regenerated.
11434         * x86-tdep.h: New.
11435         * x86-tdep.c: New.
11436         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11437         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11438         (ALLDEPFILES): Add x86-tdep.c.
11439         * arch-utils.h (default_in_indirect_branch_thunk): New.
11440         * arch-utils.c (default_in_indirect_branch_thunk): New.
11441         * i386-tdep: Include x86-tdep.h.
11442         (i386_in_indirect_branch_thunk): New.
11443         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11444         function.
11445         * amd64-tdep: Include x86-tdep.h.
11446         (amd64_in_indirect_branch_thunk): New.
11447         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11448
11449 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11450
11451         PR gdb/23053
11452         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11453         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11454         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11455         regression.
11456
11457 2018-04-12  Tom Tromey  <tom@tromey.com>
11458
11459         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11460         (rust_evaluate_subexp): Likewise.
11461
11462 2018-04-12  Pedro Alves  <palves@redhat.com>
11463
11464         * procfs.c (procfs_detach): Make forward declaration's prototype
11465         match definition's protototype.
11466         (proc_get_LDT_entry): Remove stale do_cleanups call.
11467
11468 2018-04-12  Pedro Alves  <palves@redhat.com>
11469
11470         * target.h (target_ops::to_has_exited): Delete.
11471         (target_has_exited): Delete.
11472         * target-delegates.c: Regenerate.
11473
11474 2018-04-11  Pedro Alves  <palves@redhat.com>
11475
11476         * target.c (fileio_fh_t::t): Add comment.
11477         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11478         (target_fileio_close): Handle a NULL target.
11479         (invalidate_fileio_fh): New.
11480         (target_close): Call it.
11481         * remote.c (remote_hostio_send_command): No longer check whether
11482         remote_desc is open.
11483
11484 2018-04-11  Pedro Alves  <palves@redhat.com>
11485
11486         * target.c (fileio_fh_t): Make it a named struct instead of a
11487         typedef.
11488         (fileio_fh_t::is_closed): New method.
11489         (DEF_VEC_O (fileio_fh_t)): Remove.
11490         (fileio_fhandles): Now a std::vector.
11491         (is_closed_fileio_fh): Delete.
11492         (acquire_fileio_fd): Adjust.  Rename parameters.
11493         (release_fileio_fd): Adjust.
11494         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11495         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11496         (target_fileio_close): Adjust.
11497
11498 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11499
11500         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11501         index.
11502
11503 2018-04-10  Pedro Alves  <palves@redhat.com>
11504
11505         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11506         (scoped_finish_thread_state): New class.
11507         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11508         cleanup.
11509         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11510         (fetch_inferior_event, normal_stop): Likewise.
11511         * thread.c (finish_thread_state_cleanup): Delete.
11512
11513 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11514             Pedro Alves  <palves@redhat.com>
11515
11516         * value.c: Include "selftest.h" and "common/array-view.h".
11517         (struct range) <operator ==>: New.
11518         (test_ranges_contain): New.
11519         (check_ranges_vector): New.
11520         (test_insert_into_bit_range_vector): New.
11521         (_initialize_values): Register selftests.
11522         * common/array-view.h (operator==, operator!=): New.
11523
11524 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11525
11526         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11527         an iterator.
11528         * inline-frame.c: Include <algorithm>.
11529         (struct inline_state): Add constructor.
11530         (inline_state_s): Remove.
11531         (DEF_VEC_O(inline_state_s)): Remove.
11532         (inline_states): Change type to std::vector.
11533         (find_inline_frame_state): Adjust to std::vector.
11534         (allocate_inline_frame_state): Remove.
11535         (clear_inline_frame_state): Adjust to std::vector.
11536         (skip_inline_frames): Adjust to std::vector.
11537
11538 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11539
11540         * tracepoint.h (struct trace_state_variable): Add constructor.
11541         <name>: Change type to std::string.
11542         * tracepoint.c (tsv_s): Remove.
11543         (DEF_VEC_O(tsv_s)): Remove.
11544         (tvariables): Change to std::vector.
11545         (create_trace_state_variable): Adjust to std::vector.
11546         (find_trace_state_variable): Likewise.
11547         (find_trace_state_variable_by_number): Likewise.
11548         (delete_trace_state_variable): Likewise.
11549         (trace_variable_command): Adjust to std::string.
11550         (delete_trace_variable_command): Likewise.
11551         (tvariables_info_1): Adjust to std::vector.
11552         (save_trace_state_variables): Likewise.
11553         (start_tracing): Likewise.
11554         (merge_uploaded_trace_state_variables): Adjust to std::vector
11555         and std::string.
11556         * target.h (struct target_ops)
11557         <to_download_trace_state_variable>: Pass reference to
11558         trace_state_variable.
11559         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11560         * target-delegates.c: Re-generate.
11561         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11562         (mi_tsv_deleted): Likewise.
11563         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11564         * remote.c (remote_download_trace_state_variable): Change
11565         pointer to reference and adjust.
11566         * make-target-delegates (parse_argtypes): Handle references.
11567         (write_function_header): Likewise.
11568         (munge_type): Likewise.
11569
11570 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11571
11572         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11573         string_view-selftests.c.
11574         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11575         testsuite.
11576         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11577         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11578         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11579         * unittests/basic_string_view/element_access/char/1.cc:
11580         Likewise.
11581         * unittests/basic_string_view/element_access/char/empty.cc:
11582         Likewise.
11583         * unittests/basic_string_view/element_access/char/front_back.cc:
11584         Likewise.
11585         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11586         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11587         Likewise.
11588         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11589         Likewise.
11590         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11591         Likewise.
11592         * unittests/basic_string_view/operations/compare/char/1.cc:
11593         Likewise.
11594         * unittests/basic_string_view/operations/compare/char/13650.cc:
11595         Likewise.
11596         * unittests/basic_string_view/operations/copy/char/1.cc:
11597         Likewise.
11598         * unittests/basic_string_view/operations/data/char/1.cc:
11599         Likewise.
11600         * unittests/basic_string_view/operations/find/char/1.cc:
11601         Likewise.
11602         * unittests/basic_string_view/operations/find/char/2.cc:
11603         Likewise.
11604         * unittests/basic_string_view/operations/find/char/3.cc:
11605         Likewise.
11606         * unittests/basic_string_view/operations/find/char/4.cc:
11607         Likewise.
11608         * unittests/basic_string_view/operations/rfind/char/1.cc:
11609         Likewise.
11610         * unittests/basic_string_view/operations/rfind/char/2.cc:
11611         Likewise.
11612         * unittests/basic_string_view/operations/rfind/char/3.cc:
11613         Likewise.
11614         * unittests/basic_string_view/operations/substr/char/1.cc:
11615         Likewise.
11616         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11617         * unittests/string_view-selftests.c: New file.
11618
11619 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11620
11621         * unittests/basic_string_view/capacity/1.cc: New file.
11622         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11623         * unittests/basic_string_view/cons/char/1.cc: New file.
11624         * unittests/basic_string_view/cons/char/2.cc: New file.
11625         * unittests/basic_string_view/cons/char/3.cc: New file.
11626         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11627         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11628         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11629         * unittests/basic_string_view/element_access/char/1.cc: New file.
11630         * unittests/basic_string_view/element_access/char/2.cc: New file.
11631         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11632         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11633         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11634         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11635         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11636         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11637         * unittests/basic_string_view/include.cc: New file.
11638         * unittests/basic_string_view/inserters/char/1.cc: New file.
11639         * unittests/basic_string_view/inserters/char/2.cc: New file.
11640         * unittests/basic_string_view/inserters/char/3.cc: New file.
11641         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11642         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11643         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11644         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11645         * unittests/basic_string_view/literals/types.cc: New file.
11646         * unittests/basic_string_view/literals/values.cc: New file.
11647         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11648         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11649         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11650         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11651         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11652         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11653         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11654         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11655         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11656         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11657         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11658         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11659         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11660         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11661         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11662         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11663         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11664         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11665         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11666         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11667         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11668         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11669         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11670         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11671         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11672         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11673         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11674         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11675         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11676         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11677         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11678         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11679         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11680         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11681         * unittests/basic_string_view/operators/char/2.cc: New file.
11682         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11683         * unittests/basic_string_view/range_access/char/1.cc: New file.
11684         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11685         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11686         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11687         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11688         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11689         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11690         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11691         * unittests/basic_string_view/typedefs.cc: New file.
11692         * unittests/basic_string_view/types/1.cc: New file.
11693
11694 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11695
11696         * common/gdb_string_view.h: Remove libstdc++ implementation
11697         details, adjust to gdb reality.
11698         * common/gdb_string_view.tcc: Likewise.
11699         * cli/cli-script.c (struct string_view): Remove.
11700         (user_args) <m_args>: Change element type to gdb::string_view.
11701         (user_args::insert_args): Adjust.
11702
11703 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11704
11705         * common/gdb_string_view.h: New file.
11706         * common/gdb_string_view.tcc: New file.
11707
11708 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11709
11710         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11711         * configure: Re-generate.
11712
11713 2018-04-09  Pedro Alves  <palves@redhat.com>
11714
11715         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11716         (set_target_gdbarch): Call
11717         gdb::observers::architecture_changed.notify instead of
11718         observer_notify_architecture_changed.
11719
11720 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11721
11722         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11723         (do_restore_current_traceframe_cleanup): Remove.
11724         (restore_current_traceframe_cleanup_dtor): Remove.
11725         (make_cleanup_restore_current_traceframe): Remove.
11726         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11727         New.
11728         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11729         * infrun.c (fetch_inferior_event): Use
11730         scoped_restore_current_traceframe.
11731
11732 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11733
11734         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11735         Remove.
11736         <n_allocated_type_units>: Remove.
11737         <all_type_units>: Change to std::vector.
11738         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11739         to std::vector change.
11740         (dwarf2_per_objfile::get_cutu): Likewise.
11741         (dwarf2_per_objfile::get_tu): Likewise.
11742         (create_signatured_type_table_from_index): Likewise.
11743         (create_signatured_type_table_from_debug_names): Likewise.
11744         (dw2_symtab_iter_next): Likewise.
11745         (dw2_print_stats): Likewise.
11746         (dw2_expand_all_symtabs): Likewise.
11747         (dw2_expand_marked_cus): Likewise.
11748         (dw2_debug_names_iterator::next): Likewise.
11749         (dwarf2_initialize_objfile): Likewise.
11750         (add_signatured_type_cu_to_table): Likewise.
11751         (create_all_type_units): Likewise.
11752         (add_type_unit): Likewise.
11753         (struct tu_abbrev_offset): Add constructor.
11754         (build_type_psymtabs_1): Adjust to std::vector change.
11755         (print_tu_stats): Likewise.
11756         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11757         (write_debug_names): Likewise.
11758
11759 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11760
11761         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11762         Make an std::vector.
11763         <n_comp_units>: Remove.
11764         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11765         to std::vector change.
11766         (dwarf2_per_objfile::get_cutu): Likewise.
11767         (dwarf2_per_objfile::get_cu): Likewise.
11768         (create_cus_from_index): Likewise.
11769         (create_addrmap_from_index): Likewise.
11770         (create_addrmap_from_aranges): Likewise.
11771         (dwarf2_read_index): Likewise.
11772         (dw2_find_last_source_symtab): Likewise.
11773         (dw2_map_symtabs_matching_filename): Likewise.
11774         (dw2_symtab_iter_next): Likewise.
11775         (dw2_print_stats): Likewise.
11776         (dw2_expand_all_symtabs): Likewise.
11777         (dw2_expand_symtabs_with_fullname): Likewise.
11778         (dw2_expand_marked_cus): Likewise.
11779         (dw2_map_symbol_filenames): Likewise.
11780         (create_cus_from_debug_names): Likewise.
11781         (dwarf2_read_debug_names): Likewise.
11782         (dw2_debug_names_iterator::next): Likewise.
11783         (dwarf2_initialize_objfile): Likewise.
11784         (set_partial_user): Likewise.
11785         (dwarf2_build_psymtabs_hard): Likewise.
11786         (read_comp_units_from_section): Remove arguments, adjust to
11787         std::vector change.
11788         (create_all_comp_units): Adjust to std::vector and
11789         read_comp_units_from_section changes.
11790         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11791         change.
11792         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11793         (psyms_seen_size): Likewise.
11794         (write_gdbindex): Likewise.
11795         (write_debug_names): Likewise.
11796
11797 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11798
11799         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11800         with dwarf2_per_objfile.
11801         (create_cus_from_index): Likewise.
11802         (create_signatured_type_table_from_index): Likewise.
11803         (dwarf2_read_index): Likewise.
11804         (dwarf2_initialize_objfile): Likewise.
11805         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11806         per_cu rather than get_dwarf2_per_objfile.
11807
11808 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11809
11810         * dwarf2read.h (struct signatured_type): Forward declare.
11811         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11812         New methods.
11813         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11814         (dw2_get_cutu): ...this.
11815         (dwarf2_per_objfile::get_cu): Rename from...
11816         (dw2_get_cu): ...this.
11817         (dwarf2_per_objfile::get_tu): New.
11818         (create_addrmap_from_index): Adjust.
11819         (create_addrmap_from_aranges): Adjust.
11820         (dw2_find_last_source_symtab): Adjust.
11821         (dw2_map_symtabs_matching_filename): Adjust.
11822         (dw2_symtab_iter_next): Adjust.
11823         (dw2_print_stats): Adjust.
11824         (dw2_expand_all_symtabs): Adjust.
11825         (dw2_expand_symtabs_with_fullname): Adjust.
11826         (dw2_expand_marked_cus): Adjust.
11827         (dw_expand_symtabs_matching_file_matcher): Adjust.
11828         (dw2_map_symbol_filenames): Adjust.
11829         (dw2_debug_names_iterator::next): Adjust.
11830         (dwarf2_initialize_objfile): Adjust.
11831         (set_partial_user): Adjust.
11832         (dwarf2_build_psymtabs_hard): Adjust.
11833
11834 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11835
11836         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11837         Remove unused variables.
11838         (dw2_map_symtabs_matching_filename): Likewise.
11839         (dwarf2_record_block_ranges): Likewise.
11840         (dwarf2_read_addr_index): Likewise.
11841         (follow_die_offset): Likewise.
11842
11843 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11844
11845         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11846         to symbol_file_add_main.
11847
11848 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11849
11850         PR mi/22299
11851         * mi/mi-console.c (do_fputc_async_safe): New.
11852         (mi_console_file::write_async_safe): New.
11853         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11854         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11855         New.
11856         * ui-file.c (ui_file::putstrn): Adjust call to
11857         fputstrn_unfiltered.
11858         * utils.c (printchar): Replace do_fputs and do_fprintf
11859         parameters by do_fputc.
11860         (fputstr_filtered): Adjust call to printchar.
11861         (fputstr_unfiltered): Likewise.
11862         (fputstrn_filtered): Likewise.
11863         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11864         printchar.
11865         * utils.h (do_fputc_ftype): New typedef.
11866         (fputstrn_unfiltered): Add do_fputc parameter.
11867
11868 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11869
11870         * regformats/i386/i386-avx.dat: Remove.
11871
11872 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11873
11874         PR gdb/22979
11875         * amd64-tdep.c (amd64_none_init_abi): New function.
11876         (amd64_x32_none_init_abi): New function.
11877         (_initialize_amd64_tdep): Register handlers for x86-64 and
11878         x64_32 with GDB_OSABI_NONE.
11879         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11880         GDB_OSABI_NONE osabi.
11881
11882 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11883
11884         PR gdb/22980
11885         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11886         GDB_OSABI_NONE.
11887         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11888         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11889
11890 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11891
11892         * common/byte-vector.h (char_vector): New type.
11893         * target.h (target_read_alloc): Return
11894         gdb::optional<byte_vector>.
11895         (target_read_stralloc): Return gdb::optional<char_vector>.
11896         (target_get_osdata): Return gdb::optional<char_vector>.
11897         * target.c (target_read_alloc_1): Templatize.  Replacement
11898         manual memory management with vector.
11899         (target_read_alloc): Change return type, adjust.
11900         (target_read_stralloc): Change return type, adjust.
11901         (target_get_osdata): Change return type, adjust.
11902         * auxv.c (struct auxv_info) <length>: Remove.
11903         <data>: Change type to gdb::optional<byte_vector>.
11904         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11905         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11906         (target_auxv_search): Adjust.
11907         (fprint_target_auxv): Adjust.
11908         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11909         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11910         (linux_make_corefile_notes): Adjust.
11911         * osdata.c (get_osdata): Adjust.
11912         * remote.c (remote_get_threads_with_qxfer): Adjust.
11913         (remote_memory_map): Adjust.
11914         (remote_traceframe_info): Adjust.
11915         (btrace_read_config): Adjust.
11916         (remote_read_btrace): Adjust.
11917         (remote_pid_to_exec_file): Adjust.
11918         * solib-aix.c (solib_aix_get_library_list): Adjust.
11919         * solib-dsbt.c (decode_loadmap): Don't free buf.
11920         (dsbt_get_initial_loadmaps): Adjust.
11921         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11922         * solib-target.c (solib_target_current_sos): Adjust.
11923         * tracepoint.c (sdata_make_value): Adjust.
11924         * xml-support.c (xinclude_start_include): Adjust.
11925         (xml_fetch_content_from_file): Adjust.
11926         * xml-support.h (xml_fetch_another): Change return type.
11927         (xml_fetch_content_from_file): Change return type.
11928         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11929         * xml-tdesc.c (file_read_description_xml): Adjust.
11930         (fetch_available_features_from_target): Change return type.
11931         (target_fetch_description_xml): Adjust.
11932         (target_read_description_xml): Adjust.
11933
11934 2018-04-06  Tom Tromey  <tom@tromey.com>
11935
11936         * value.c (~value): Update.
11937         (struct value) <contents>: Now unique_xmalloc_ptr.
11938         (value_contents_bits_eq, allocate_value_contents)
11939         (value_contents_raw, value_contents_all_raw)
11940         (value_contents_for_printing, value_contents_for_printing_const)
11941         (set_value_enclosing_type): Update.
11942
11943 2018-04-06  Tom Tromey  <tom@tromey.com>
11944
11945         * value.c (range_s): Remove typedef, VEC.
11946         (struct range): Add operator<.
11947         (range_lessthan): Remove.
11948         (ranges_contain): Change type.
11949         (~value): Update.
11950         (struct value) <unavailable, optimized_out>: Now std::vector.
11951         (value_entirely_available)
11952         (value_entirely_covered_by_range_vector)
11953         (value_entirely_unavailable, value_entirely_optimized_out):
11954         Update.
11955         (insert_into_bit_range_vector): Change argument type.
11956         (find_first_range_overlap): Likewise.
11957         (struct ranges_and_idx, value_contents_bits_eq)
11958         (require_not_optimized_out, require_available): Update.
11959         (ranges_copy_adjusted): Change argument types.
11960         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11961
11962 2018-04-06  Tom Tromey  <tom@tromey.com>
11963
11964         * value.c (~value): Update.
11965         (struct value) <parent>: Now a value_ref_ptr.
11966         (value_parent, set_value_parent, value_address, value_copy):
11967         Update.
11968
11969 2018-04-06  Tom Tromey  <tom@tromey.com>
11970
11971         * value.c (struct value): Add constructor, destructor, and member
11972         initializers.
11973         (allocate_value_lazy, value_decref): Update.
11974
11975 2018-04-06  Tom Tromey  <tom@tromey.com>
11976
11977         * value.c (struct value) <released, next>: Remove.
11978         (all_values): Now a std::vector.
11979         (allocate_value_lazy): Update.
11980         (value_next): Remove.
11981         (value_mark, value_free_to_mark, release_value)
11982         (value_release_to_mark): Update.
11983
11984 2018-04-06  Tom Tromey  <tom@tromey.com>
11985
11986         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11987         (free_value_chain): Remove.
11988         * value.c (free_value_chain): Remove.
11989         (value_release_to_mark): Return a std::vector.
11990         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11991         std::vector.
11992         (check_condition): Update.
11993         * eval.c (fetch_subexp_value): Change "val_chain" to a
11994         std::vector.
11995         * breakpoint.c (update_watchpoint): Update.
11996         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11997
11998 2018-04-06  Tom Tromey  <tom@tromey.com>
11999
12000         * value.h (free_all_values): Remove.
12001         * value.c (free_all_values): Remove.
12002
12003 2018-04-06  Tom Tromey  <tom@tromey.com>
12004
12005         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12006         (value_history_chain, value_history_count): Remove.
12007         (value_history): New global.
12008         (record_latest_value, access_value_history, show_values)
12009         (preserve_values): Update.
12010
12011 2018-04-06  Tom Tromey  <tom@tromey.com>
12012
12013         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12014         * varobj.c (varobj_set_display_format, varobj_set_value)
12015         (install_default_visualizer, construct_visualizer)
12016         (install_new_value, ~varobj, varobj_get_value_type)
12017         (my_value_of_variable, varobj_editable_p): Update.
12018         * c-varobj.c (c_describe_child, c_value_of_variable)
12019         (cplus_number_of_children, cplus_describe_child): Update.
12020         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12021         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12022         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12023
12024 2018-04-06  Tom Tromey  <tom@tromey.com>
12025
12026         * printcmd.c (last_examine_address): Change type to
12027         value_ref_ptr.
12028         (do_examine, x_command): Update.
12029
12030 2018-04-06  Tom Tromey  <tom@tromey.com>
12031
12032         * value.c (release_value): Update.
12033         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12034         (struct bpstats) <val>: Now a value_ref_ptr.
12035         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12036         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12037         (~watchpoint, print_it_watchpoint, watch_command_1)
12038         (invalidate_bp_value_on_memory_change): Update.
12039
12040 2018-04-06  Tom Tromey  <tom@tromey.com>
12041
12042         * varobj.c (varobj_clear_saved_item)
12043         (update_dynamic_varobj_children, install_new_value, ~varobj):
12044         Update.
12045         * value.h (value_incref): Move declaration earlier.
12046         (value_decref): Rename from value_free.
12047         (struct value_ref_policy): New.
12048         (value_ref_ptr): New typedef.
12049         (struct value_deleter): Remove.
12050         (gdb_value_up): Remove typedef.
12051         (release_value): Change return type.
12052         (release_value_or_incref): Remove.
12053         * value.c (set_value_parent): Update.
12054         (value_incref): Change return type.
12055         (value_decref): Rename from value_free.
12056         (value_free_to_mark, free_all_values, free_value_chain): Update.
12057         (release_value): Return value_ref_ptr.
12058         (release_value_or_incref): Remove.
12059         (record_latest_value, set_internalvar, clear_internalvar):
12060         Update.
12061         * stack.c (info_frame_command): Don't call value_free.
12062         * python/py-value.c (valpy_dealloc, valpy_new)
12063         (value_to_value_object): Update.
12064         * printcmd.c (do_examine): Update.
12065         * opencl-lang.c (lval_func_free_closure): Update.
12066         * mi/mi-main.c (register_changed_p): Don't call value_free.
12067         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12068         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12069         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12070         value_free.
12071         * guile/scm-value.c (vlscm_free_value_smob)
12072         (vlscm_scm_from_value): Update.
12073         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12074         (frame_unwind_register_unsigned, get_frame_register_bytes)
12075         (put_frame_register_bytes): Don't call value_free.
12076         * findvar.c (address_from_register): Don't call value_free.
12077         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12078         * dwarf2loc.c (entry_data_value_free_closure)
12079         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12080         (dwarf2_evaluate_loc_desc_full): Update.
12081         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12082         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12083         (~watchpoint, watch_command_1)
12084         (invalidate_bp_value_on_memory_change): Update.
12085         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12086
12087 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12088
12089         PR gdb/23022
12090         * warning.m4: Add -Wno-error=deprecated-register.
12091         * configure: Re-generate.
12092
12093 2018-04-05  Tom Tromey  <tom@tromey.com>
12094
12095         * linespec.h: Remove include of "vec.h".
12096
12097 2018-04-05  Tom Tromey  <tom@tromey.com>
12098
12099         * linespec.c (typep): Remove typedef.
12100         (find_methods, find_superclass_methods): Take a std::vector.
12101         (find_method): Use std::vector.
12102
12103 2018-04-05  Tom Tromey  <tom@tromey.com>
12104
12105         * utils.c (compare_strings): Remove.
12106         * utils.h (compare_strings): Remove.
12107         * objc-lang.h (find_imps): Update.
12108         * objc-lang.c (find_methods): Take a std::vector.
12109         (uniquify_strings, find_imps): Likewise.
12110         * linespec.c (find_methods): Take a std::vector.
12111         (decode_objc): Use std::vector.
12112         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12113         a std::vector.
12114         (find_method, find_function_symbols): Use std::vector.
12115
12116 2018-04-05  Tom Tromey  <tom@tromey.com>
12117
12118         * completer.c (completion_tracker::completion_tracker): Remove
12119         cast.
12120         (completion_tracker::discard_completions): Likewise.
12121         * breakpoint.c (ambiguous_names_p): Remove cast.
12122         * ada-lang.c (_initialize_ada_language): Remove cast.
12123         * utils.h (streq): Update.
12124         (streq_hash): Add new declaration.
12125         * utils.c (streq): Return bool.
12126         (streq_hash): New function.
12127
12128 2018-04-05  Tom Tromey  <tom@tromey.com>
12129
12130         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12131         Remove a string copy.
12132
12133 2018-04-05  Tom Tromey  <tom@tromey.com>
12134
12135         * linespec.c (filter_results): Use std::vector.
12136         (decode_line_2, decode_line_full): Update.
12137
12138 2018-04-05  Tom Tromey  <tom@tromey.com>
12139
12140         * linespec.c (canonical_to_fullform): Return std::string.
12141         (filter_results): Update.
12142         (struct decode_line_2_item): Add constructor.
12143         <fullform, displayform>: Now std::string.
12144         (decode_line_2_compare_items): Now a std::sort comparator.
12145         (decode_line_2): Update.
12146
12147 2018-04-05  Tom Tromey  <tom@tromey.com>
12148
12149         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12150         (unexpected_linespec_error): Update.
12151         (linespec_parse_basic, parse_linespec): Update.
12152
12153 2018-04-05  Tom Tromey  <tom@tromey.com>
12154
12155         * linespec.c (linespec_parse_basic): Reindent.
12156
12157 2018-04-05  Tom Tromey  <tom@tromey.com>
12158
12159         * minsyms.h (iterate_over_minimal_symbols): Update.
12160         * minsyms.c (iterate_over_minimal_symbols): Take a
12161         gdb::function_view.
12162         * linespec.c (struct collect_minsyms): Remove.
12163         (compare_msyms): Now a std::sort comparator.
12164         (add_minsym): Add parameters.
12165         (search_minsyms_for_name): Update.  Use std::vector.
12166
12167 2018-04-03  Tom Tromey  <tom@tromey.com>
12168
12169         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12170         gdb::byte_vector.
12171
12172 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12173
12174         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12175
12176 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12177
12178         PR gdb/16959
12179         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12180         printing static type.
12181
12182 2018-04-01  Tom Tromey  <tom@tromey.com>
12183
12184         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12185         (rs6000_xfer_shared_libraries): Update.
12186
12187 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12188
12189         * common/gdb_vecs.h (char_ptr): Remove.
12190         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12191
12192 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12193
12194         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12195         with std::vector.
12196         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12197
12198 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12199
12200         * tracepoint.h (struct uploaded_tp): Initialize fields.
12201         <actions, step_actions, cmd_strings>: Change type to
12202         std::vector<char *>.
12203         * tracepoint.c (get_uploaded_tp): Allocate with new.
12204         (free_uploaded_tps): Free with delete.
12205         (parse_tracepoint_definition): Adjust to std::vector change.
12206         * breakpoint.c (read_uploaded_action): Likewise.
12207         (create_tracepoint_from_upload): Likewise.
12208         * ctf.c (ctf_write_uploaded_tp): Likewise.
12209         (SET_ARRAY_FIELD): Likewise.
12210         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12211
12212 2018-03-30  Tom Tromey  <tom@tromey.com>
12213
12214         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12215         std::unique_ptr.
12216         (svr4_keep_data_in_core): Update.
12217         (svr4_read_so_list): Update.
12218
12219 2018-03-30  Tom Tromey  <tom@tromey.com>
12220
12221         * windows-nat.c (handle_output_debug_string, handle_exception):
12222         Update.
12223         * target.h (target_read_string): Update.
12224         * target.c (target_read_string): Change "string" to
12225         unique_xmalloc_ptr.
12226         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12227         Update.
12228         * solib-frv.c (frv_current_sos): Update.
12229         * solib-dsbt.c (dsbt_current_sos): Update.
12230         * solib-darwin.c (darwin_current_sos): Update.
12231         * linux-thread-db.c (inferior_has_bug): Update.
12232         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12233         Update.  Remove alloca.
12234         * ada-lang.c (ada_main_name): Update.
12235
12236 2018-03-30  Tom Tromey  <tom@tromey.com>
12237
12238         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12239         (struct dwo_file_deleter): New.
12240         (dwo_file_up): New typedef.
12241         (open_and_init_dwo_file): Use dwo_file_up.
12242         (free_dwo_file_cleanup): Remove.
12243
12244 2018-03-30  Tom Tromey  <tom@tromey.com>
12245
12246         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12247         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12248
12249 2018-03-30  Tom Tromey  <tom@tromey.com>
12250
12251         * dwarf2read.c (class free_cached_comp_units): New class.
12252         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12253         (free_cached_comp_units): Remove function.
12254
12255 2018-03-30  Tom Tromey  <tom@tromey.com>
12256
12257         * utils.h (make_cleanup_unpush_target): Remove.
12258         * inf-ptrace.c (struct target_unpusher): New.
12259         (target_unpush_up) New typedef.
12260         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12261         target_unpush_up.
12262         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12263
12264 2018-03-27  Tom Tromey  <tom@tromey.com>
12265
12266         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12267
12268 2018-03-27  Pedro Alves  <palves@redhat.com>
12269             Tom Tromey  <tom@tromey.com>
12270
12271         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12272         destructor.  Now a class.
12273         (gdb_readline_wrapper_cleanup): Remove function.
12274         (gdb_readline_wrapper): Remove cleanups.
12275
12276 2018-03-27  Tom Tromey  <tom@tromey.com>
12277
12278         * typeprint.h (struct type_print_options) <local_typedefs,
12279         global_typedefs>: Remove "struct" keyword.
12280         (class typedef_hash_table): New class.
12281         (recursively_update_typedef_hash, add_template_parameters)
12282         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12283         (find_typedef_in_hash): Don't declare.
12284         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12285         (typedef_hash_table::recursively_update): Rename from
12286         recursively_update_typedef_hash.  Now a member.
12287         (typedef_hash_table::add_template_parameters): Rename from
12288         add_template_parameters.  Now a member.
12289         (typedef_hash_table::typedef_hash_table): Now a constructor;
12290         rename from create_typedef_hash.
12291         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12292         rename from free_typedef_hash.
12293         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12294         (do_free_global_table): Remove.
12295         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12296         from copy_type_recursive.
12297         (create_global_typedef_table): Remove.
12298         (typedef_hash_table::find_global_typedef): Now a member of
12299         typedef_hash_table.
12300         (typedef_hash_table::find_typedef): Rename from
12301         find_typedef_in_hash; now a member.
12302         (whatis_exp): Update.
12303         * extension.h (struct ext_lang_type_printers): Add constructor and
12304         destructor.
12305         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12306         declare.
12307         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12308         Now a constructor; rename from start_ext_lang_type_printers.
12309         (ext_lang_type_printers): Now a destructor; rename from
12310         free_ext_lang_type_printers.
12311         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12312         Update.
12313         (c_type_print_base_struct_union): Update.  Remove cleanups.
12314
12315 2018-03-27  Tom Tromey  <tom@tromey.com>
12316
12317         * dwarf-index-write.c: Include <cmath>.
12318
12319 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12320
12321         * NEWS: Add entry describing new "set|show varsize-limit" command.
12322         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12323         command.
12324         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12325         "set variable".
12326
12327 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12328
12329         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12330         dwarf-index-write.c
12331         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12332         * dwarf-index-common.c: New file.
12333         * dwarf-index-common.h: New file.
12334         * dwarf-index-write.c: New file.
12335         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12336         (struct dwarf2_section_info): Move from here.
12337         (dwarf2_section_info_def): Likewise.
12338         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12339         (offset_type): Likewise.
12340         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12341         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12342         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12343         (byte_swap): Likewise.
12344         (MAYBE_SWAP): Likewise.
12345         (dwarf2_per_cu_ptr): Likewise.
12346         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12347         (struct tu_stats): Likewise.
12348         (struct dwarf2_per_objfile): Likewise.
12349         (struct dwarf2_per_cu_data): Likewise.
12350         (struct signatured_type): Likewise.
12351         (sig_type_ptr): Likewise.
12352         (DEF_VEC_P (sig_type_ptr)): Likewise.
12353         (INDEX4_SUFFIX): Likewise.
12354         (INDEX5_SUFFIX): Likewise.
12355         (DEBUG_STR_SUFFIX): Likewise.
12356         (dwarf2_read_section): Make non-static.
12357         (mapped_index_string_hash): Move from here.
12358         (dwarf5_djb_hash): Likewise.
12359         (file_write): Likewise.
12360         (class data_buf): Likewise.
12361         (struct symtab_index_entry): Likewise.
12362         (struct mapped_symtab): Likewise.
12363         (find_slot): Likewise.
12364         (hash_expand): Likewise.
12365         (add_index_entry): Likewise.
12366         (uniquify_cu_indices): Likewise.
12367         (class c_str_view): Likewise.
12368         (class c_str_view_hasher): Likewise.
12369         (class vector_hasher): Likewise.
12370         (write_hash_table): Likewise.
12371         (psym_index_map): Likewise.
12372         (struct addrmap_index_data): Likewise.
12373         (add_address_entry): Likewise.
12374         (add_address_entry_worker): Likewise.
12375         (write_address_map): Likewise.
12376         (symbol_kind): Likewise.
12377         (write_psymbols): Likewise.
12378         (struct signatured_type_index_data): Likewise.
12379         (write_one_signatured_type): Likewise.
12380         (recursively_count_psymbols): Likewise.
12381         (recursively_write_psymbols): Likewise.
12382         (class debug_names): Likewise.
12383         (check_dwarf64_offsets): Likewise.
12384         (psyms_seen_size): Likewise.
12385         (write_gdbindex): Likewise.
12386         (write_debug_names): Likewise.
12387         (assert_file_size): Likewise.
12388         (write_psymtabs_to_index): Likewise.
12389         (save_gdb_index_command): Likewise.
12390         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12391         command.
12392         * dwarf2read.h: New file.
12393
12394 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12395
12396         PR gdb/22670
12397         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12398         symbol name if the CU's language stores symbol names in linkage
12399         format.
12400         * language.h (struct language_defn)
12401         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12402         all instances of this struct.
12403
12404 2018-03-26  Tom Tromey  <tom@tromey.com>
12405
12406         * stack.c (backtrace_command_1): Remove verbose code.
12407
12408 2018-03-26  Tom Tromey  <tom@tromey.com>
12409
12410         * python/py-framefilter.c (py_print_type): Don't catch
12411         exceptions.  Return void.
12412         (py_print_value): Likewise.
12413         (py_print_single_arg): Likewise.
12414         (enumerate_args): Don't catch exceptions.
12415         (py_print_args): Likewise.
12416         (py_print_frame): Likewise.
12417         (gdbpy_apply_frame_filter): Catch exceptions here.
12418
12419 2018-03-26  Tom Tromey  <tom@tromey.com>
12420
12421         * stack.c (_initialize_stack): Remove trailing newlines from help
12422         text.  Add "Usage" line to "backtrace" help.
12423
12424 2018-03-26  Tom Tromey  <tom@tromey.com>
12425
12426         PR python/16486:
12427         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12428
12429 2018-03-26  Tom Tromey  <tom@tromey.com>
12430
12431         * python/py-framefilter.c (py_print_single_arg): Return
12432         EXT_LANG_BT_ERROR from catch.
12433
12434 2018-03-26  Tom Tromey  <tom@tromey.com>
12435
12436         PR backtrace/15584:
12437         * stack.c (backtrace_command_1): Move some code into no-filters
12438         "if".
12439
12440 2018-03-26  Tom Tromey  <tom@tromey.com>
12441
12442         * python/py-framefilter.c (throw_quit_or_print_exception): New
12443         function.
12444         (gdbpy_apply_frame_filter): Use it.
12445
12446 2018-03-26  Tom Tromey  <tom@tromey.com>
12447
12448         PR cli/17716:
12449         * python/py-framefilter.c (py_print_type, py_print_value)
12450         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12451         RETURN_MASK_ERROR.
12452
12453 2018-03-26  Tom Tromey  <tom@tromey.com>
12454
12455         * python/py-framefilter.c (enumerate_args): Use
12456         gdb::unique_xmalloc_ptr.
12457
12458 2018-03-26  Tom Tromey  <tom@tromey.com>
12459
12460         * python/py-framefilter.c (py_print_frame): Return
12461         EXT_LANG_BT_OK.
12462         (gdbpy_apply_frame_filter): Update comment.
12463         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12464         Remove.
12465         <EXT_LANG_BT_NO_FILTERS>: Change value.
12466
12467 2018-03-26  Tom Tromey  <tom@tromey.com>
12468
12469         PR backtrace/15582:
12470         * stack.c (backtrace_command): Parse "hide" argument.
12471         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12472         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12473         constant.
12474
12475 2018-03-26  Tom Tromey  <tom@tromey.com>
12476
12477         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12478         add "flags".
12479         (backtrace_command): Remove "fulltrace", add "flags".
12480
12481 2018-03-26  Tom Tromey  <tom@tromey.com>
12482
12483         * stack.c (backtrace_command): Rewrite command line parsing.
12484
12485 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12486
12487         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12488
12489 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12490
12491         * filename-seen-cache.h: Add include guard.
12492
12493 2018-03-26  Keith Seitz  <keiths@redhat.com>
12494
12495         * symfile.c (place_section): Remove "struct" from section_addr_info
12496         in comment.
12497         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12498         "struct" keyword from section_addr_info.
12499
12500 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12501
12502         * regformats/regdef.h (reg): Add constructors.
12503
12504 2018-03-25  Pedro Alves  <palves@redhat.com>
12505
12506         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12507         if then/else bodies in var_func_name extraction.
12508
12509 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12510
12511         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12512         lookup_minimal_symbol() to find symbol entry.
12513         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12514
12515 2018-03-23  Keith Seitz  <keiths@redhat.com>
12516
12517         PR c++/22968
12518         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12519         nested type definitions for C++, too.
12520
12521 2018-03-23  Tom Tromey  <tom@tromey.com>
12522
12523         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12524         a typedef.
12525         (macho_register_oso): Remove.
12526         (macho_symtab_read): Take a std::vector.
12527         (oso_el_compare_name): Now a std::sort comparator.
12528         (macho_symfile_read_all_oso): Take a std::vector.
12529         (macho_symfile_read): Use std::vector.  Remove cleanups.
12530
12531 2018-03-22  Tom Tromey  <tom@tromey.com>
12532
12533         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12534         (record_full_goto_bookmark): Use std::string.
12535
12536 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12537
12538         PR tdep/18295
12539         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12540         a single mask.
12541
12542 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12543
12544         * rs6000-tdep.c (store_insn_p): New function.
12545         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12546         and cr_reg to their unshifted values. Use store_insn_p to
12547         match LR saves using either R1 or fdata->alloca_reg. Use
12548         store_insn_p to match CR saves. Set alloca_reg_offset
12549         when alloca_reg and framep are set. Remove lr_reg shift
12550         when assigning to fdata->lr_register.
12551
12552 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12553
12554         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12555         command line args instead of emitting a warning.
12556
12557 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12558
12559         * tracepoint.h (struct static_tracepoint_marker): Initialize
12560         fields, define default constructor, move constructor and move
12561         assignment, disable the rest.
12562         <str_id, extra>: Make std::string.
12563         (release_static_tracepoint_marker): Remove.
12564         (free_current_marker): Remove.
12565         * tracepoint.c (free_current_marker): Remove.
12566         (parse_static_tracepoint_marker_definition): Adjust to
12567         std::string, use new hex2str overload.
12568         (release_static_tracepoint_marker): Remove.
12569         (print_one_static_tracepoint_marker): Get marker by reference
12570         and adjust to std::string.
12571         (info_static_tracepoint_markers_command): Adjust to std::vector
12572         changes
12573         * target.h (static_tracepoint_marker_p): Remove typedef.
12574         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12575         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12576         bool.
12577         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12578         * target-debug.h
12579         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12580         (target_debug_print_std_vector_static_tracepoint_marker): New.
12581         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12582         to...
12583         (target_debug_print_static_tracepoint_marker_p): ... this.
12584         * target-delegates.c: Re-generate.
12585         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12586         Make std::string.
12587         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12588         (decode_static_tracepoint_spec): Adjust to std::vector.
12589         (tracepoint_print_one_detail): Adjust to std::string.
12590         (strace_marker_decode_location): Adjust to std::string.
12591         (update_static_tracepoint): Adjust to std::string, remove call
12592         to release_static_tracepoint_marker.
12593         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12594         Adjust to std::vector.
12595         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12596         (remote_static_tracepoint_markers_by_strid): Adjust to
12597         std::vector.
12598         * common/rsp-low.h (hex2str): New overload with explicit count
12599         of bytes.
12600         * common/rsp-low.c (hex2str): New overload with explicit count
12601         of bytes.
12602         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12603         (_initialize_rsp_low_selftests): Add test_hex2str test.
12604         * unittests/tracepoint-selftests.c
12605         (test_parse_static_tracepoint_marker_definition): Adjust to
12606         std::string.
12607
12608 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12609
12610         * tracepoint.c (parse_static_tracepoint_marker_definition):
12611         Consider case where the definition is followed by more
12612         definitions.
12613         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12614         tracepoint-selftests.c.
12615         * unittests/tracepoint-selftests.c: New.
12616
12617 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12618
12619         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12620         Carvalho.
12621
12622 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12623
12624         * symtab.c (find_pc_sect_line): fixed indentation.
12625
12626 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12627
12628         * symtab.c (find_pc_sect_line): now uses binary search.
12629
12630 2018-03-19  Tom Tromey  <tom@tromey.com>
12631
12632         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12633         "IDENT" production.
12634
12635 2018-03-19  Pedro Alves  <palves@redhat.com>
12636             Tom Tromey  <tom@tromey.com>
12637
12638         * unittests/observable-selftests.c: New file.
12639         * common/observable.h: New file.
12640         * observable.h: New file.
12641         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12642         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12643         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12644         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12645         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12646         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12647         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12648         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12649         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12650         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12651         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12652         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12653         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12654         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12655         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12656         tui/tui-interp.c, valops.c: Update all users.
12657         * tui/tui-hooks.c (tui_bp_created_observer)
12658         (tui_bp_deleted_observer, tui_bp_modified_observer)
12659         (tui_inferior_exit_observer, tui_before_prompt_observer)
12660         (tui_normal_stop_observer, tui_register_changed_observer):
12661         Remove.
12662         (tui_observers_token): New global.
12663         (attach_or_detach, tui_attach_detach_observers): New functions.
12664         (tui_install_hooks, tui_remove_hooks): Use
12665         tui_attach_detach_observers.
12666         * record-btrace.c (record_btrace_thread_observer): Remove.
12667         (record_btrace_thread_observer_token): New global.
12668         * observer.sh: Remove.
12669         * observer.c: Rename to observable.c.
12670         * observable.c (namespace gdb_observers): Define new objects.
12671         (observer_debug): Move into gdb_observers namespace.
12672         (struct observer, struct observer_list, xalloc_observer_list_node)
12673         (xfree_observer_list_node, generic_observer_attach)
12674         (generic_observer_detach, generic_observer_notify): Remove.
12675         (_initialize_observer): Update.
12676         Don't include observer.inc.
12677         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12678         (clean mostlyclean): Likewise.
12679         (observer.h, observer.inc): Remove targets.
12680         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12681         (COMMON_SFILES): Use observable.c, not observer.c.
12682         * .gitignore: Remove observer.h.
12683
12684 2018-03-18  Tom Tromey  <tom@tromey.com>
12685
12686         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12687         gdb::def_vector.
12688         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12689
12690 2018-03-17  Tom Tromey  <tom@tromey.com>
12691
12692         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12693
12694 2018-03-17  Tom Tromey  <tom@tromey.com>
12695
12696         * target.c (class scoped_target_fd): New.
12697         (target_fileio_close_cleanup): Remove.
12698         (target_fileio_read_alloc_1): Use scoped_target_fd.
12699
12700 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12701
12702         * silent-rules.mk: New.
12703         * Makefile.in: Include silent-rules.mk
12704         (srcdir, VPATH, top_srcdir): Move up.
12705         (COMPILE): Add ECHO_CXX.
12706         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12707         (init.c): Add ECHO_INIT_C.
12708         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12709         (version.c): Add ECHO_GEN.
12710         (printcmd.o): Add ECHO_CXX.
12711         (target-float.o): Add ECHO_CXX.
12712         (ada-exp.o): Add ECHO_CXX.
12713         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12714         (insight$(EXEEXT)): Add ECHO_CXXLD.
12715         * gnulib/configure.ac: Add AM_SILENT_RULES.
12716         * gnulib/aclocal.m4: Re-generate.
12717         * gnulib/configure: Re-generate.
12718         * gnulib/import/Makefile.in: Re-generate.
12719
12720 2018-03-16  Tom Tromey  <tom@tromey.com>
12721
12722         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12723         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12724         * utils.c (do_free_section_addr_info)
12725         (make_cleanup_free_section_addr_info): Remove.
12726         * symfile.h (struct other_sections): Add constructor.
12727         (struct section_addr_info): Remove.
12728         (section_addr_info): New typedef.
12729         (struct sym_fns) <sym_offsets>: Change type of parameter.
12730         (build_section_addr_info_from_objfile)
12731         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12732         (default_symfile_offsets, symbol_file_add)
12733         (symbol_file_add_from_bfd)
12734         (build_section_addr_info_from_section_table): Update.
12735         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12736         * symfile.c (alloc_section_addr_info): Remove.
12737         (build_section_addr_info_from_section_table): Change return type.
12738         Update.
12739         (build_section_addr_info_from_bfd)
12740         (build_section_addr_info_from_objfile): Likewise.
12741         (free_section_addr_info): Remove.
12742         (relative_addr_info_to_section_offsets): Change type of "addrs".
12743         (addrs_section_compar): Now a std::sort comparator.
12744         (addrs_section_sort): Change return type.
12745         (addr_info_make_relative): Change type of "addrs".  Update.
12746         (default_symfile_offsets, syms_from_objfile_1)
12747         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12748         (symbol_file_add_separate): Update.
12749         (symbol_file_add): Change type of "addrs".  Update.
12750         (add_symbol_file_command): Update.  Remove cleanups.
12751         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12752         cleanups.
12753         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12754         * solib.c (solib_read_symbols): Update.
12755         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12756         * machoread.c (macho_symfile_offsets): Update.
12757         * jit.c (jit_bfd_try_read_symtab): Update.
12758
12759 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12760
12761         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12762         unittests/utils-selftests.c.
12763         * unittests/utils-selftests.c: New file.
12764
12765 2018-03-14  Tom Tromey  <tom@tromey.com>
12766
12767         PR cli/14977:
12768         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12769         for NULL.
12770
12771 2018-03-14  Tom Tromey  <tom@tromey.com>
12772
12773         PR cli/19918:
12774         * printcmd.c (printf_pointer): Allow "-" in format.
12775
12776 2018-03-14  Tom Tromey  <tom@tromey.com>
12777
12778         * printcmd.c (_initialize_printcmd): Add usage to printf.
12779
12780 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12781
12782         * MAINTAINERS: Update my email address.
12783
12784 2018-03-13  Tom Tromey  <tom@tromey.com>
12785
12786         * machoread.c (macho_check_dsym): Change filenamep to a
12787         std::string*.
12788         (macho_symfile_read): Update.
12789         * symfile.c (load_command): Use std::string.
12790
12791 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12792
12793         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12794         to error message string.
12795         (riscv_register_name): Use xsnprintf instead of sprintf.
12796         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12797         internal_error.
12798         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12799         error.
12800         (riscv_push_dummy_call): Likewise.
12801
12802 2018-03-12  Tom Tromey  <tom@tromey.com>
12803
12804         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12805         Use gdb::byte_vector.
12806         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12807
12808 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12809
12810         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12811         parameter type to readable_regcache.
12812         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12813         the declaration.
12814
12815 2018-03-11  Tom Tromey  <tom@tromey.com>
12816
12817         * dwarf2read.c (struct nextfield): Add initializers.
12818         (struct nextfnfield): Remove.
12819         (struct fnfieldlist): Add initializers.  Remove "length" and
12820         "head", use std::vector.
12821         (struct decl_field_list): Remove.
12822         (struct field_info): Add initializers.
12823         <fields, baseclasses>: Now std::vector.
12824         <nbaseclasses, nfnfields, typedef_field_list_count,
12825         nested_types_list_count>: Remove.
12826         (dwarf2_add_field, dwarf2_add_type_defn)
12827         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12828         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12829         (process_structure_scope): Update.
12830
12831 2018-03-11  Tom Tromey  <tom@tromey.com>
12832
12833         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12834         for use by std::sort.
12835         (build_type_psymtabs_1): Use std::vector.
12836
12837 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12838
12839         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12840         and LIBMPFR in the printed configuration.
12841
12842 2018-03-08  Tom Tromey  <tom@tromey.com>
12843
12844         * source.c (get_filename_and_charpos): Use scoped_fd.
12845         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12846         (procfs_pidlist): Likewise.
12847         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12848         (iterate_over_mappings): Likewise.
12849
12850 2018-03-08  Tom Tromey  <tom@tromey.com>
12851
12852         * infcall.c (struct call_return_meta_info)
12853         <stack_temporaries_enabled>: Remove.
12854         (get_call_return_value, call_function_by_hand_dummy): Update.
12855         * thread.c (disable_thread_stack_temporaries): Remove.
12856         (enable_thread_stack_temporaries): Remove.
12857         (thread_stack_temporaries_enabled_p): Return bool.
12858         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12859         (get_last_thread_stack_temporary): Update.
12860         * eval.c (evaluate_subexp): Update.
12861         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12862         class, not a function.
12863         (value_ptr, value_vec): Remove typedefs.
12864         (class thread_info) <stack_temporaries_enabled>: Now bool.
12865         <stack_temporaries>: Now a std::vector.
12866         (thread_stack_temporaries_enabled_p)
12867         (value_in_thread_stack_temporaries): Return bool.
12868
12869 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12870
12871         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12872         (getpkt_or_notif_sane_1): Likewise.
12873
12874 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12875
12876         * build-id.c (build_id_to_debug_bfd): Use std::string.
12877
12878 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12879
12880         * build-id.c (find_separate_debug_file_by_buildid): Return
12881         std::string.
12882         * build-id.h (find_separate_debug_file_by_buildid): Return
12883         std::string.
12884         * coffread.c (coff_symfile_read): Adjust to std::string.
12885         * elfread.c (elf_symfile_read): Adjust to std::string.
12886         * symfile.c (separate_debug_file_exists): Change parameter to
12887         std::string.
12888         (find_separate_debug_file): Return std::string.
12889         (find_separate_debug_file_by_debuglink): Return std::string.
12890         * symfile.h (find_separate_debug_file_by_debuglink): Return
12891         std::string.
12892
12893 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12894
12895         * common/xml-utils.c (xml_escape_text): Move code to...
12896         (xml_escape_text_append): ... this new function.
12897         * common/xml-utils.h (xml_escape_text_append): New declaration.
12898         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12899         New function.
12900         (_initialize_xml_utils): register test_xml_escape_text_append as
12901         a selftest.
12902
12903 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12904
12905         * defs.h: Remove MAX_REGISTER_SIZE.
12906         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12907         asserts.
12908         * python/py-unwind.c (pyuw_sniffer): Likewise.
12909
12910 2018-03-07  Tom Tromey  <tom@tromey.com>
12911
12912         * linux-tdep.c (linux_info_proc): Update.
12913         * target.h (struct target_ops) <to_fileio_readlink>: Return
12914         optional<string>.
12915         (target_fileio_readlink): Return optional<string>.
12916         * remote.c (remote_hostio_readlink): Return optional<string>.
12917         * inf-child.c (inf_child_fileio_readlink): Return
12918         optional<string>.
12919         * target.c (target_fileio_readlink): Return optional<string>.
12920
12921 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12922
12923         * regcache.c (cooked_read_test): Add riscv to the list of
12924         architectures that have a save_reggroup.
12925
12926 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12927
12928         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12929         value is not a dynamic class object.
12930
12931 2018-03-06  Tom Tromey  <tom@tromey.com>
12932
12933         * rust-exp.y: Formatting fixes.
12934
12935 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12936
12937         * riscv-tdep.c (riscv_register_name): Remove target description
12938         support.
12939         (riscv_gdbarch_init): Remove target description check.
12940
12941 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12942
12943         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12944         comment.
12945         * riscv-tdep.h: Likewise.
12946
12947 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12948
12949         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12950         (riscv_pseudo_register_write): Delete.
12951         (riscv_gdbarch_init): Remove all use of pseudo registers.
12952
12953 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12954
12955         * record-btrace.c (btrace_print_lines): Replace cleanup
12956         parameter with RAII equivalents.
12957         (btrace_insn_history): Replace cleanup with RAII equivalents.
12958         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12959         make_cleanup_ui_out_tuple_begin_end): Remove.
12960         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12961         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12962         make_cleanup_ui_out_list_begin_end): Remove.
12963
12964 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12965
12966         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12967         parameter types to std::vector.  Use bool.
12968         (record_btrace_wait): Replace VEC(tp_t) with
12969         std::vector<thread_info *>.
12970         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12971
12972 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12973
12974         * record-btrace.c (record_btrace_disable_callback): Remove.
12975         (struct scoped_btrace_disable): New.
12976         (record_btrace_open): Use scoped_btrace_disable.
12977
12978 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12979
12980         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12981         reading values from registers.
12982
12983 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12984
12985         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12986         where appropriate.
12987
12988 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12989
12990         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12991         change parameter type.  Use GDB's print functions, and use
12992         core_addr_to_string where appropriate.
12993         (riscv_push_dummy_call): Use core_addr_to_string where
12994         appropriate, update call to riscv_print_arg_location, and reindent
12995         a few lines.
12996         (riscv_return_value): Update call to riscv_print_arg_location.
12997
12998 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12999             Tim Newsome <tim@sifive.com>
13000             Albert Ou <a0u@eecs.berkeley.edu>
13001             Darius Rad <darius@bluespec.com>
13002
13003         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13004         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13005         (ALLDEPFILES): Add riscv-tdep.c
13006         * configure.tgt: Add riscv support.
13007         * riscv-tdep.c: New file.
13008         * riscv-tdep.h: New file.
13009         * NEWS: Mention new target.
13010         * MAINTAINERS: Add entry for riscv.
13011
13012 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13013
13014         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13015         fields within aggregates.
13016
13017 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13018
13019         * record-btrace.c (btrace_print_lines): Change type of flags to
13020         gdb_disassembly_flags.
13021
13022 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13023
13024         * fbsd-nat.c: Include "inf-ptrace.h".
13025         (USE_SIGTRAP_SIGINFO): Conditionally define.
13026         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13027         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13028         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13029         function.
13030         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13031         Likewise.
13032         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13033         Likewise.
13034         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13035         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13036         "supports_stopped_by_hw_breakpoint" target methods.
13037
13038 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13039
13040         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13041         * fbsd-nat.c (debug_fbsd_nat): New variable.
13042         (show_fbsd_nat_debug): New function.
13043         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13044         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13045
13046 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13047
13048         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13049         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13050         prototype.
13051         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13052         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13053         method.
13054
13055 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13056
13057         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13058         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13059
13060 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13061
13062         * charset.c (struct charset_vector): New.
13063         (charsets): Change type to charset_vector.
13064         (find_charset_names): Adjust.
13065         (add_one): Adjust.
13066         (_initialize_charset): Adjust.
13067
13068 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13069
13070         * progspace.h (struct program_space) <deleted_solibs>: Change
13071         type to std::vector<std::string>.
13072         * progspace.c (clear_program_space_solib_cache): Adjust.
13073         * breakpoint.c (print_solib_event): Adjust.
13074         (check_status_catch_solib): Adjust.
13075         * solib.c (update_solib_list): Adjust.
13076         * ui-out.h (class ui_out) <field_string>: New overload.
13077         * ui-out.c (ui_out::field_string): New overload.
13078
13079 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13080
13081         * progspace.h (struct program_space): Add constructor and
13082         destructor, initialize fields.
13083         (add_program_space): Remove.
13084         * progspace.c (add_program_space): Rename to...
13085         (program_space::program_space): ... this.
13086         (release_program_space): Rename to...
13087         (program_space::~program_space): ... this.
13088         (delete_program_space): Use delete to delete program_space.
13089         (initialize_progspace): Use new to allocate program_space.
13090         * inferior.c (add_inferior_with_spaces): Likewise.
13091         (clone_inferior_command): Likewise.
13092         * infrun.c (follow_fork_inferior): Likewise.
13093         (handle_vfork_child_exec_or_exit): Likewise.
13094
13095 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13096
13097         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13098         (delim_string_to_char_ptr_vec): Return std::vector of
13099         gdb::unique_xmalloc_ptr.
13100         (dirnames_to_char_ptr_vec_append): Take std::vector of
13101         gdb::unique_xmalloc_ptr.
13102         (dirnames_to_char_ptr_vec): Return std::vector of
13103         gdb::unique_xmalloc_ptr.
13104         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13105         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13106         (delim_string_to_char_ptr_vec): Return an std::vector of
13107         gdb::unique_xmalloc_ptr, adjust the code.
13108         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13109         gdb::unique_xmalloc_ptr, adjust the code.
13110         (dirnames_to_char_ptr_vec): Return an std::vector of
13111         gdb::unique_xmalloc_ptr, adjust the code.
13112         * auto-load.c (auto_load_safe_path_vec): Change type to
13113         std::vector of gdb::unique_xmalloc_ptr.
13114         (auto_load_expand_dir_vars): Return an std::vector of
13115         gdb::unique_xmalloc_ptr, adjust the code.
13116         (auto_load_safe_path_vec_update): Adjust.
13117         (filename_is_in_auto_load_safe_path_vec): Adjust.
13118         (auto_load_objfile_script_1): Adjust.
13119         * build-id.c (build_id_to_debug_bfd): Adjust.
13120         * linux-thread-db.c (thread_db_load_search): Adjust.
13121         * source.c (add_path): Adjust.
13122         (openp): Adjust.
13123         * symfile.c (find_separate_debug_file): Adjust.
13124         * utils.c (do_free_char_ptr_vec): Remove.
13125         (make_cleanup_free_char_ptr_vec): Remove.
13126
13127 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13128
13129         PR gdb/22907
13130         * common/pathstuff.c: Conditionally include "<windows.h>".
13131
13132 2018-03-01  Georg Sauthoff  <mail@georg.so>
13133
13134         PR gdb/22888
13135         * gcore.in: Quote variables and switch interpreter to bash.
13136
13137 2018-03-01  Tom Tromey  <tom@tromey.com>
13138
13139         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13140         assertion.  Add assertion for discriminant_index.
13141         (quirk_rust_enum): Use correct base type name in univariant case.
13142
13143 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13144
13145         * record.c (get_call_history_modifiers): Return a
13146         record_print_flags.
13147         (cmd_record_call_history): Adjust.
13148         * record-btrace.c (record_btrace_call_history): Adjust.
13149         (record_btrace_call_history_range): Adjust.
13150         (record_btrace_call_history_from): Adjust.
13151         * target-debug.h (target_debug_print_record_print_flags): New.
13152         * target-delegates.c: Re-generate.
13153         * target.c (target_call_history): Change flags type.
13154         (target_call_history_from): Likewise.
13155         (target_call_history_range): Likewise.
13156         * target.h (struct target_ops) <target_call_history>: Likewise.
13157         (target_call_history_from): Likewise.
13158         (target_call_history_range): Likewise.
13159
13160 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13161             Simon Marchi  <simon.marchi@polymtl.ca>
13162
13163         * common/common-utils.c: Include "sys/stat.h".
13164         (is_regular_file): Move here from "source.c"; change return
13165         type to "bool".
13166         * common/common-utils.h (is_regular_file): New prototype.
13167         * common/pathstuff.c (contains_dir_separator): New function.
13168         * common/pathstuff.h (contains_dir_separator): New prototype.
13169         * source.c: Don't include "sys/stat.h".
13170         (is_regular_file): Move to "common/common-utils.c".
13171
13172 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13173
13174         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13175         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13176         * auto-load.c: Include "common/pathstuff.h".
13177         * common/common-def.h (current_directory): Move here.
13178         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13179         function.
13180         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13181         prototype.
13182         * common/pathstuff.c: New file.
13183         * common/pathstuff.h: New file.
13184         * compile/compile.c: Include "common/pathstuff.h".
13185         * defs.h (current_directory): Move to "common/common-defs.h".
13186         * dwarf2read.c: Include "common/pathstuff.h".
13187         * exec.c: Likewise.
13188         * guile/scm-safe-call.c: Likewise.
13189         * linux-thread-db.c: Likewise.
13190         * main.c: Likewise.
13191         * nto-tdep.c: Likewise.
13192         * objfiles.c: Likewise.
13193         * source.c: Likewise.
13194         * symtab.c: Likewise.
13195         * utils.c: Include "common/pathstuff.h".
13196         (gdb_realpath): Move to "common/pathstuff.c".
13197         (gdb_realpath_keepfile): Likewise.
13198         (gdb_abspath): Likewise.
13199         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13200         (gdb_realpath_keepfile): Likewise.
13201         (gdb_abspath): Likewise.
13202
13203 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13204
13205         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13206         wildcard process pid for super_resume for kernels with a
13207         specific bug.
13208
13209 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13210
13211         * compile/compile.c (get_args): Add additional comments
13212         explaining function.
13213
13214 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13215             Tom Tromey  <tom@tromey.com>
13216
13217         * target.h (memory_write_request_s): Remove typedef.  Don't define
13218         VEC.
13219         (target_write_memory_blocks): Change argument to std::vector.
13220         (struct memory_write_request): Add constructor.
13221         * target-memory.c (compare_block_starting_address): Return bool.
13222         Change argument types.
13223         (claim_memory): Change arguments to use std::vector.
13224         (split_regular_and_flash_blocks, blocks_to_erase)
13225         (compute_garbled_blocks): Likewise.
13226         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13227         (target_write_memory_blocks): Change argument to std::vector.
13228         * symfile.c (struct load_section_data): Add constructor and
13229         destructor.  Use std::vector for "requests".
13230         (struct load_progress_data): Add initializers.
13231         (load_section_callback): Update.  Use "new".
13232         (clear_memory_write_data): Remove.
13233         (generic_load): Update.
13234
13235 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13236
13237         * arch/aarch64.h: Use common/tdesc.h.
13238
13239 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13240
13241         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13242         architecture with a 64-bit ABI.
13243
13244 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13245
13246         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13247         ahead of target description loading.
13248
13249 2018-02-26  Tom Tromey  <tom@tromey.com>
13250
13251         * stack.c (backtrace_command_1): Update.
13252         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13253         of "flags".
13254         * python/py-framefilter.c (py_print_frame)
13255         (gdbpy_apply_frame_filter): Change type of "flags".
13256         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13257         of "flags".
13258         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13259         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13260         * extension.h (enum frame_filter_flag): Rename from
13261         frame_filter_flags.
13262         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13263         (apply_ext_lang_frame_filter): Change type of "flags".
13264         * extension.c (apply_ext_lang_frame_filter): Change type of
13265         "flags".
13266         * extension-priv.h (struct extension_language_ops)
13267         <apply_frame_filter>: Change type of "flags".
13268
13269 2018-02-26  Tom Tromey  <tom@tromey.com>
13270
13271         PR python/16497:
13272         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13273         off-by-one in py_end computation.
13274         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13275         PRINT_MORE_FRAMES.
13276         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13277         constant.
13278
13279 2018-02-26  Tom Tromey  <tom@tromey.com>
13280
13281         * dwarf2read.c (struct variant_field): New.
13282         (struct nextfield) <variant>: New field.
13283         (dwarf2_add_field): Handle DW_TAG_variant_part.
13284         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13285         discriminated union.
13286         (read_structure_type): Handle DW_TAG_variant_part.
13287         (handle_struct_member_die): New function, extracted from
13288         process_structure_scope.  Handle DW_TAG_variant.
13289         (process_structure_scope): Handle discriminated unions.  Call
13290         handle_struct_member_die.
13291
13292 2018-02-26  Tom Tromey  <tom@tromey.com>
13293
13294         * rust-lang.h (rust_last_path_segment): Declare.
13295         * rust-lang.c (rust_last_path_segment): Now public.  Change
13296         contract.
13297         (struct disr_info): Remove.
13298         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13299         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13300         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13301         (rust_enum_p, rust_enum_variant): New function.
13302         (rust_underscore_fields): Remove "offset" parameter.
13303         (rust_print_enum): New function.
13304         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13305         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13306         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13307         enums.
13308         (rust_internal_print_type): New function, from rust_print_type.
13309         Remove enum code.
13310         (rust_print_type): Call rust_internal_print_type.
13311         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13312         Update enum handling.
13313         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13314         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13315         (rust_union_quirks): New functions.
13316         (process_full_comp_unit, process_full_type_unit): Call
13317         rust_union_quirks.
13318         (process_structure_scope): Update rust_unions if necessary.
13319
13320 2018-02-26  Tom Tromey  <tom@tromey.com>
13321
13322         * value.h (value_union_variant): Declare.
13323         * valops.c (value_union_variant): New function.
13324         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13325         (struct discriminant_info): New.
13326         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13327         enumerator.
13328         (struct main_type) <flag_discriminated_union>: New field.
13329
13330 2018-02-26  Tom Tromey  <tom@tromey.com>
13331
13332         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13333         unittests/unpack-selftests.c.
13334         * unittests/unpack-selftests.c: New file.
13335         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13336
13337 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13338
13339         * dwarf2read.c (struct partial_die_info) <read>: New method.
13340         (read_partial_die): Remove the declaration.
13341         (load_partial_dies): Update.
13342         (partial_die_info::partial_die_info):
13343         (read_partial_die): Change it to partial_die_info::read.
13344
13345 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13346
13347         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13348         (fixup_partial_die): Remove declaration.
13349         (scan_partial_symbols): Update.
13350         (partial_die_parent_scope): Likewise.
13351         (partial_die_full_name): Likewise.
13352         (fixup_partial_die): Change it to partial_die_info::fixup.
13353
13354 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13355
13356         * dwarf2read.c (read_partial_die): Update the declaration.
13357         (load_partial_dies): Caller update.
13358         (read_partial_die): Remove one argument abbrev_len.
13359
13360 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13361
13362         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13363         assignment operator.
13364         (load_partial_dies): Use ctor and copy ctor.
13365         (read_partial_die): Update.
13366         (dwarf2_cu::find_partial_die): Use ctor.
13367
13368 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13369
13370         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13371         (find_partial_die_in_comp_unit): Change it to
13372         dwarf2_cu::find_partial_die.
13373         (find_partial_die): Update.
13374
13375 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13376
13377         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13378         is NULL.
13379
13380 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13381
13382         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13383
13384 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13385
13386         * arch/amd64.h: Use common/tdesc.h.
13387         * arch/i386.c: Likewise.
13388         * arch/i386.h: Likewise.
13389         * arch/tic6x.c: Likewise.
13390         * arch/tdesc.h: Move file from here...
13391         * common/tdesc.h: ...to here.
13392         * features/aarch64-core.c: Regenerate.
13393         * features/aarch64-fpu.c: Regenerate.
13394         * features/i386/32bit-avx.c: Regenerate.
13395         * features/i386/32bit-avx512.c: Regenerate.
13396         * features/i386/32bit-core.c: Regenerate.
13397         * features/i386/32bit-linux.c: Regenerate.
13398         * features/i386/32bit-mpx.c: Regenerate.
13399         * features/i386/32bit-pkeys.c: Regenerate.
13400         * features/i386/32bit-sse.c: Regenerate.
13401         * features/i386/64bit-avx.c: Regenerate.
13402         * features/i386/64bit-avx512.c: Regenerate.
13403         * features/i386/64bit-core.c: Regenerate.
13404         * features/i386/64bit-linux.c: Regenerate.
13405         * features/i386/64bit-mpx.c: Regenerate.
13406         * features/i386/64bit-pkeys.c: Regenerate.
13407         * features/i386/64bit-segments.c: Regenerate.
13408         * features/i386/64bit-sse.c: Regenerate.
13409         * features/i386/x32-core.c: Regenerate.
13410         * features/tic6x-c6xp.c: Regenerate.
13411         * features/tic6x-core.c: Regenerate.
13412         * features/tic6x-gp.c: Regenerate.
13413         * target-descriptions.c: Use common/tdesc.h.
13414         * target-descriptions.h: Likewise.
13415
13416 2018-02-24  Tom Tromey  <tom@tromey.com>
13417
13418         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13419         (try_thread_db_load_from_dir, thread_db_load_search): Use
13420         std::string.
13421         (info_auto_load_libthread_db_compare): Return bool.  Change
13422         argument types.
13423         (info_auto_load_libthread_db): Use std::vector, std::string.
13424         Remove cleanups.
13425
13426 2018-02-24  Tom Tromey  <tom@tromey.com>
13427
13428         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13429         std::string.
13430         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13431         std::string*.
13432         * gdbarch.c: Rebuild.
13433         * gdbarch.h: Rebuild.
13434         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13435         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13436         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13437         std::string*.
13438
13439 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13440
13441         * gdbtypes.h (sect_offset): Change type to uint64_t.
13442         (sect_offset_str): New function.
13443         * dwarf2read.c (create_addrmap_from_aranges): Use
13444         sect_offset_str.
13445         (error_check_comp_unit_head): Likewise.
13446         (create_debug_type_hash_table): Likewise.
13447         (read_cutu_die_from_dwo): Likewise.
13448         (init_cutu_and_read_dies): Likewise.
13449         (init_cutu_and_read_dies_no_follow): Likewise.
13450         (process_psymtab_comp_unit_reader): Likewise.
13451         (partial_die_parent_scope): Likewise.
13452         (peek_die_abbrev): Likewise.
13453         (process_queue): Likewise.
13454         (dwarf2_physname): Likewise.
13455         (read_namespace_alias): Likewise.
13456         (read_import_statement): Likewise.
13457         (create_dwo_cu_reader): Likewise.
13458         (create_cus_hash_table): Likewise.
13459         (lookup_dwo_cutu): Likewise.
13460         (inherit_abstract_dies): Likewise.
13461         (read_func_scope): Likewise.
13462         (read_call_site_scope): Likewise.
13463         (dwarf2_add_member_fn): Likewise.
13464         (read_common_block): Likewise.
13465         (read_module_type): Likewise.
13466         (read_typedef): Likewise.
13467         (read_subrange_type): Likewise.
13468         (load_partial_dies): Likewise.
13469         (read_partial_die): Likewise.
13470         (find_partial_die): Likewise.
13471         (read_str_index): Likewise.
13472         (dwarf2_string_attr): Likewise.
13473         (build_error_marker_type): Likewise.
13474         (lookup_die_type): Likewise.
13475         (dump_die_shallow): Likewise.
13476         (follow_die_ref): Likewise.
13477         (dwarf2_fetch_die_loc_sect_off): Likewise.
13478         (dwarf2_fetch_constant_bytes): Likewise.
13479         (follow_die_sig): Likewise.
13480         (get_signatured_type): Likewise.
13481         (get_DW_AT_signature_type): Likewise.
13482         (dwarf2_find_containing_comp_unit): Likewise.
13483         (set_die_type): Likewise.
13484
13485 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13486
13487         * arch/aarch64.c: Include "common-defs.h".
13488         * arch/amd64.c: Likewise.
13489         * arch/i386.c: Likewise.
13490
13491 2018-02-21  Tom Tromey  <tom@tromey.com>
13492
13493         * value.h: (extract_field_op): Update.
13494         * eval.c (extract_field_op): Return a const char *.
13495         * expression.h (parse_expression_for_completion): Update.
13496         * completer.c (complete_expression): Update.
13497         (add_struct_fields): Make fieldname const.
13498         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13499         (mark_completion_tag, parse_exp_in_context_1): Update.
13500         (parse_expression_for_completion): Change "name" to
13501         unique_xmalloc_ptr*.
13502
13503 2018-02-21  Tom Tromey  <tom@tromey.com>
13504
13505         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13506
13507 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13508
13509         * avr-tdep.c (avr_read_pc): Change parameter type to
13510         readable_regcache.
13511         * gdbarch.sh (read_pc): Likewise.
13512         * gdbarch.c: Re-generated.
13513         * gdbarch.h: Re-generated.
13514         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13515         readable_regcache.
13516         * ia64-tdep.c (ia64_read_pc): Likewise.
13517         * mips-tdep.c (mips_read_pc): Likewise.
13518         * spu-tdep.c (spu_read_pc): Likewise.
13519
13520 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13521
13522         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13523         * regcache-dump.c: New file.
13524         * regcache.c: Move register_dump to regcache-dump.c.
13525         (maintenance_print_registers): Likewise.
13526         (maintenance_print_raw_registers): Likewise.
13527         (maintenance_print_cooked_registers): Likewise.
13528         (maintenance_print_register_groups): Likewise.
13529         (maintenance_print_remote_registers): Likewise.
13530         (_initialize_regcache): Likewise.
13531         * regcache.h (register_dump): Moved from regcache.c.
13532
13533 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13534
13535         * regcache.c (regcache::regcache): Update.
13536         (regcache::invalidate): Move it to detached_regcache::invalidate.
13537         (get_thread_arch_aspace_regcache): Update.
13538         (regcache::raw_update): Update.
13539         (regcache::cooked_read): Remove some code.
13540         (regcache::cooked_read_value): Likewise.
13541         (regcache::raw_write): Remove assert on m_readonly_p.
13542         (regcache::raw_supply_integer): Move it to
13543         detached_regcache::raw_supply_integer.
13544         (regcache::raw_supply_zeroed): Likewise.
13545         * regcache.h (detached_regcache) <raw_supply_integer>: New
13546         declaration.
13547         <raw_supply_zeroed, invalidate>: Likewise.
13548         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13549         <invalidate>: Likewise.
13550         <m_readonly_p>: Removed.
13551
13552 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13553
13554         * infcmd.c (get_return_value): Let stop_regs point to
13555         get_current_regcache.
13556         * regcache.c (regcache::regcache): Remove.
13557         (register_dump_reg_buffer): New class.
13558         (regcache_print): Adjust.
13559         * regcache.h (regcache): Remove constructors.
13560
13561 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13562
13563         * regcache.c (class register_dump): New class.
13564         (register_dump_regcache, register_dump_none): New class.
13565         (register_dump_remote, register_dump_groups): New class.
13566         (regcache_print): Update.
13567         * regcache.h (regcache_dump_what): Move it to regcache.c.
13568         (regcache) <dump>: Remove.
13569
13570 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13571
13572         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13573          reg_buffer_rw *.
13574         (jit_unwind_reg_set_impl): Call raw_supply.
13575         (jit_frame_sniffer): Use reg_buffer_rw.
13576         * record-full.c (record_full_core_regbuf): Change its type.
13577         (record_full_core_open_1): Use reg_buffer_rw.
13578         (record_full_close): Likewise.
13579         (record_full_core_fetch_registers): Use regcache->raw_supply.
13580         (record_full_core_store_registers): Likewise.
13581         * regcache.c (regcache::get_register_status): Move it to
13582         reg_buffer.
13583         (regcache_raw_set_cached_value): Remove.
13584         (regcache::raw_set_cached_value): Remove.
13585         (regcache::raw_write): Call raw_supply.
13586         (regcache::raw_supply): Move it to reg_buffer_rw.
13587         * regcache.h (regcache_raw_set_cached_value): Remove.
13588         (reg_buffer_rw): New class.
13589
13590 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13591
13592         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13593         readonly_detached_regcache.
13594         (dummy_frame_prev_register): Use regcache->cooked_read.
13595         * frame.c (frame_save_as_regcache): Change return type.
13596         (frame_pop): Update.
13597         * frame.h (frame_save_as_regcache): Update declaration.
13598         * inferior.h (get_infcall_suspend_state_regcache): Update
13599         declaration.
13600         * infrun.c (infcall_suspend_state) <registers>: use
13601         readonly_detached_regcache.
13602         (save_infcall_suspend_state): Don't use regcache_dup.
13603         (get_infcall_suspend_state_regcache): Change return type.
13604         * linux-fork.c (struct fork_info) <savedregs>: Change to
13605         readonly_detached_regcache.
13606         <pc>: New field.
13607         (fork_save_infrun_state): Don't use regcache_dup.
13608         (info_checkpoints_command): Adjust.
13609         * mi/mi-main.c (register_changed_p): Update declaration.
13610         (mi_cmd_data_list_changed_registers): Use
13611         readonly_detached_regcache.
13612         (register_changed_p): Change parameter type to
13613         readonly_detached_regcache.
13614         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13615         readonly_detached_regcache.
13616         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13617         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13618         New.
13619         (regcache::save): Move it to reg_buffer.
13620         (regcache::restore): Change parameter type.
13621         (regcache_dup): Remove.
13622         * regcache.h (reg_buffer) <save>: New method.
13623         (readonly_detached_regcache): New class.
13624         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13625         readonly_detached_regcache.
13626         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13627
13628 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13629
13630         * frame.c (frame_save_as_regcache): Use regcache method save.
13631         (frame_pop): Use regcache method restore.
13632         * infrun.c (restore_infcall_suspend_state): Likewise.
13633         * linux-fork.c (fork_load_infrun_state): Likewise.
13634         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13635         save.
13636         * regcache.c (regcache_save): Remove.
13637         (regcache::restore): More asserts.
13638         (regcache_cpy): Remove.
13639         * regcache.h (regcache_save): Remove the declaration.
13640         (regcache::restore): Move from private to public.
13641         Remove the friend declaration of regcache_cpy.
13642         (regcache_cpy): Remove declaration.
13643
13644 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13645
13646         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13647         parameter type to 'readable_regcache *'.
13648         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13649         * arm-tdep.c (arm_neon_quad_read): Likewise.
13650         (arm_pseudo_read): Likewise.
13651         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13652         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13653         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13654         * gdbarch.c: Re-generated.
13655         * gdbarch.h: Re-generated.
13656         * gdbarch.sh (pseudo_register_read): Change parameter type to
13657         'readable_regcache *'.
13658         (pseudo_register_read_value): Likewise.
13659         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13660         (h8300_pseudo_register_read): Likewise.
13661         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13662         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13663         (i386_pseudo_register_read_into_value): Likewise.
13664         (i386_pseudo_register_read_value): Likewise.
13665         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13666         declaration.
13667         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13668         * m32c-tdep.c (m32c_raw_read): Likewise.
13669         (m32c_read_flg): Likewise.
13670         (m32c_banked_register): Likewise.
13671         (m32c_banked_read): Likewise.
13672         (m32c_sb_read): Likewise.
13673         (m32c_part_read): Likewise.
13674         (m32c_cat_read): Likewise.
13675         (m32c_r3r2r1r0_read): Likewise.
13676         (m32c_pseudo_register_read): Likewise.
13677         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13678         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13679         (mep_pseudo_cr64_read): Likewise.
13680         (mep_pseudo_register_read): Likewise.
13681         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13682         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13683         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13684         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13685         (regcache::cooked_read): Likewise.
13686         (regcache::cooked_read_value): Likewise.
13687         (regcache_cooked_read_signed):
13688         (regcache::cooked_read): Likewise.
13689         * regcache.h (readable_regcache): New class.
13690         (regcache): Inherit readable_regcache.  Move some methods to
13691         readable_regcache.
13692         * rl78-tdep.c (rl78_pseudo_register_read): Change
13693         parameter type to 'readable_regcache *'.
13694         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13695         (e500_pseudo_register_read): Change parameter type to
13696         'readable_regcache *'.
13697         (dfp_pseudo_register_read): Likewise.
13698         (vsx_pseudo_register_read): Likewise.
13699         (efpr_pseudo_register_read): Likewise.
13700         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13701         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13702         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13703         (sh64_pseudo_register_read): Likewise.
13704         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13705         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13706         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13707         (spu_pseudo_register_read): Likewise.
13708         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13709         (xtensa_pseudo_register_read): Likewise.
13710
13711 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13712
13713         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13714         (regcache::arch): Move it to reg_buffer::arch.
13715         (regcache::register_buffer): Likewise.
13716         (regcache::assert_regnum): Likewise.
13717         (regcache::num_raw_registers): Likewise.
13718         * regcache.h (reg_buffer): New class.
13719         (regcache): Inherit reg_buffer.
13720
13721 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13722
13723         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13724         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13725
13726 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13727
13728         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13729
13730 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13731
13732         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13733         (SFILES): Remove common/*.c files.
13734         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13735         * common/common.host: Add common reference.
13736         * configure.ac: Likewise.
13737         * configure: Regenerate.
13738
13739 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13740
13741         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13742         (block_initialize_namespace): Use new.
13743         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13744         (dwarf2_free_objfile): Use delete.
13745         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13746         (copy_type_recursive): Use new.
13747         * gdb_obstack.h (allocate_on_obstack): New.
13748
13749 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13750
13751         PR gdb/22849
13752         * inferior.c (exit_inferior_1): Reset inf->control.
13753
13754 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13755
13756         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13757         declaration.
13758
13759 2018-02-14  Pedro Alves  <palves@redhat.com>
13760
13761         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13762         frame_cleanup_after_sniffer on exception.
13763
13764 2018-02-14  Tom Tromey  <tom@tromey.com>
13765
13766         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13767         const.
13768         (solib_bfd_open): Make pathname const.
13769         * solib.c (solib_bfd_open): Make pathname const.
13770         * solib-spu.c (spu_bfd_fopen): Make name const.
13771         (spu_bfd_open): Make pathname const.
13772         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13773         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13774
13775 2018-02-14  Tom Tromey  <tom@tromey.com>
13776
13777         * symfile.c (symfile_bfd_open): Update.
13778         * source.h (openp, source_full_path_of, find_and_open_source):
13779         Change argument type to unique_xmalloc_ptr.
13780         * source.c (openp): Take a unique_xmalloc_ptr.
13781         (source_full_path_of, find_and_open_source): Likewise.
13782         (open_source_file, symtab_to_fullname): Update.
13783         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13784         unique_xmalloc_ptr.
13785         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13786         (exec_file_find): Update.
13787         * psymtab.c (psymtab_to_fullname): Update.
13788         * nto-tdep.h (nto_find_and_open_solib): Update.
13789         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13790         unique_xmalloc_ptr.
13791         * exec.c (exec_file_attach): Update.
13792         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13793         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13794
13795 2018-02-14  Tom Tromey  <tom@tromey.com>
13796
13797         * solib.c: Include source.h.
13798         * nto-tdep.c: Include source.h.
13799         * mi/mi-cmd-env.c: Include source.h.
13800         * infcmd.c: Include source.h.
13801         * exec.c: Include source.h.
13802         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13803         (add_path, directory_switch, source_path, init_source_path): Move
13804         declarations...
13805         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13806         (add_path, directory_switch, source_path, init_source_path):
13807         ...here.
13808
13809 2018-02-14  Tom Tromey  <tom@tromey.com>
13810
13811         * solist.h (exec_file_find, solib_find): Return
13812         unique_xmalloc_ptr.
13813         (solib_bfd_fopen): Take a const char *.
13814         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13815         (exec_file_find, solib_find): Likewise.
13816         (solib_bfd_fopen): Do not take ownership of "pathname".
13817         (solib_bfd_open): Use unique_xmalloc_ptr.
13818         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13819         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13820         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13821         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13822
13823 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13824
13825         * ada-lang.c (name_match_type_from_name): Remove reference to
13826         ada_name_for_lookup in function's documentation.
13827         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13828
13829 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13830
13831         * defs.h (enum openp_flags): New enum.
13832         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13833         Move to enum openp_flags.
13834         (openp_flags): New enum flags.
13835         (openp): Change parameter type to openp_flags.
13836         * source.c (openp): Change parameter type to openp_flags.
13837         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13838         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13839
13840 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13841
13842         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13843         per-command.
13844
13845 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13846
13847         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13848         into...
13849         (class dwarf2_queue_guard): ...the destructor of this new class.
13850         (dw2_do_instantiate_symtab): Create instance of the new class
13851         dwarf2_queue_guard, remove cleanup.
13852
13853 2018-02-09  Tom Tromey  <tom@tromey.com>
13854
13855         * source.c (find_source_lines): Don't reference past the end of
13856         the vector.
13857
13858 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13859
13860         * remote.c (remote_btrace_maybe_reopen): Change error message.
13861         * btrace.c (btrace_enable): Likewise.
13862         (parse_xml_btrace): Likewise.
13863         (parse_xml_btrace_conf): Likewise.
13864
13865 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13866
13867         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13868         (linux_enable_pt, linux_enable_bts): Call
13869         diagnose_perf_event_open_fail.
13870
13871 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13872
13873         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13874         Remove parameter and change return type.  Update callers.  Move it.
13875         (linux_enable_bts, linux_enable_pt): Improve error message.
13876         (linux_enable_pt): Remove zero buffer size check.
13877         (linux_enable_btrace): Improve error messages.  Remove NULL return
13878         check.
13879
13880 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13881
13882         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13883         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13884         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13885         (linux_supports_pt, linux_supports_btrace): Remove.
13886         (linux_enable_bts): Call cpu_supports_bts.
13887         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13888         * remote.c (remote_supports_btrace): Remove.
13889         (init_remote_ops): Remove remote_supports_btrace.
13890         * target-delegates.c: Regenerated.
13891         * target.c (target_supports_btrace): Remove.
13892         * target.h (target_ops) <to_supports_btrace>: Remove
13893         (target_supports_btrace): Remove.
13894         * x86-linux-nat.c (x86_linux_create_target): Remove
13895         linux_supports_btrace.
13896
13897 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13898
13899         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13900         btrace failed.
13901         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13902         exception and use message in own exception.
13903
13904 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13905
13906         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13907         (perf_event_pt_event_type): Use gdb_file_up.
13908         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13909         scoped_fd, and scoped_mmap.
13910
13911 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13912
13913         * common/scoped_mmap.h: New.
13914         * unittests/scoped_mmap-selftest.c: New.
13915         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13916         unittests/scoped_mmap-selftest.c.
13917
13918 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13919
13920         * common/scoped_fd.h: New.
13921         * unittests/scoped_fd-selftest.c: New.
13922         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13923         unittests/scoped_fd-selftest.c.
13924
13925 2018-02-09  Tom Tromey  <tom@tromey.com>
13926
13927         * auto-load.c (auto_load_section_scripts): Use
13928         gdb::unique_xmalloc_ptr.
13929
13930 2018-02-09  Tom Tromey  <tom@tromey.com>
13931
13932         * auto-load.c (execute_script_contents): Use std::string.
13933
13934 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13935
13936         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13937         Python function, rather than a new command.
13938
13939 2018-02-08  Tom Tromey  <tom@tromey.com>
13940
13941         * solib.c (solib_find_1): Use std::string.
13942         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13943
13944 2018-02-08  Tom Tromey  <tom@tromey.com>
13945
13946         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13947
13948 2018-02-08  Tom Tromey  <tom@tromey.com>
13949
13950         * source.c (find_source_lines): Use gdb::def_vector.
13951
13952 2018-02-08  Tom Tromey  <tom@tromey.com>
13953
13954         * macrocmd.c (struct temporary_macro_definition): New.
13955         (macro_define_command): Use temporary_macro_definition.  Remove
13956         cleanups.
13957         (free_macro_definition_ptr): Remove.
13958
13959 2018-02-08  Tom Tromey  <tom@tromey.com>
13960
13961         * macroexp.c (maybe_expand): Use std::string.
13962
13963 2018-02-08  Tom Tromey  <tom@tromey.com>
13964
13965         * macroexp.c (struct macro_buffer): Add initializers for some
13966         members.
13967         (init_buffer, init_shared_buffer, free_buffer)
13968         (free_buffer_return_text): Remove.
13969         (macro_buffer): New constructors.
13970         (~macro_buffer): New destructor.
13971         (macro_buffer::set_shared): New method.
13972         (macro_buffer::resize_buffer, macro_buffer::appendc)
13973         (macro_buffer::appendmem): Now methods, not free functions.
13974         (set_token, append_tokens_without_splicing, stringify)
13975         (macro_stringify): Update.
13976         (gather_arguments): Change return type.  Remove argc_p argument,
13977         add args_ptr argument.  Use std::vector.
13978         (substitute_args): Remove argc argument.  Accept std::vector.
13979         (expand): Update.  Use std::vector.
13980         (scan, macro_expand, macro_expand_next): Update.
13981
13982 2018-02-08  Tom Tromey  <tom@tromey.com>
13983
13984         * symtab.c (default_collect_symbol_completion_matches_break_on):
13985         Use unique_xmalloc_ptr.
13986         * macroscope.h: (sal_macro_scope, user_macro_scope)
13987         (default_macro_scope): Return unique_xmalloc_ptr.
13988         * macroscope.c (sal_macro_scope, user_macro_scope)
13989         (default_macro_scope): Return unique_xmalloc_ptr.
13990         * macroexp.h (macro_expand, macro_expand_once): Return
13991         unique_xmalloc_ptr.
13992         * macroexp.c (macro_expand, macro_expand_once): Return
13993         unique_xmalloc_ptr.
13994         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13995         (info_macro_command, info_macros_command): Use
13996         unique_xmalloc_ptr.
13997         * compile/compile-c-support.c (write_macro_definitions): Use
13998         unique_xmalloc_ptr.
13999         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14000
14001 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14002
14003         * value.c (value_static_field): Assign field type instead of
14004         containing type when returning an optimized out value.
14005
14006 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14007
14008         * ft32-tdep.c (ft32_read_pc): Remove.
14009         (ft32_write_pc): Remove.
14010         (ft32_gdbarch_init): Update.
14011         * m32r-tdep.c (m32r_read_pc): Remove.
14012         (m32r_gdbarch_init): Update.
14013         * mep-tdep.c (mep_read_pc): Remove.
14014         (mep_gdbarch_init): Update.
14015         * microblaze-tdep.c (microblaze_write_pc): Remove.
14016         (microblaze_gdbarch_init): Update.
14017         * mn10300-tdep.c (mn10300_read_pc): Remove.
14018         (mn10300_write_pc): Remove.
14019         (mn10300_gdbarch_init): Update.
14020         * moxie-tdep.c (moxie_read_pc): Remove.
14021         (moxie_write_pc): Remove.
14022         (moxie_gdbarch_init): Update.
14023
14024 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14025
14026         * expprint.c (print_subexp_standard): Handle
14027         OP_F77_UNDETERMINED_ARGLIST.
14028         (dump_subexp_body_standard): Likewise.
14029
14030 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14031
14032         * target-descriptions.c (tdesc_element_visitor) Add empty
14033         implementations.
14034         (tdesc_type): Move make_gdb_type from here.
14035         (tdesc_type_builtin): Likewise.
14036         (tdesc_type_vector): Likewise.
14037         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14038         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14039         (make_gdb_type_union): Likewise.
14040         (make_gdb_type_flags): Likewise.
14041         (make_gdb_type_enum): Likewise.
14042         (make_gdb_type): New function.
14043         (tdesc_register_type): Use static make_gdb_type.
14044
14045 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14046
14047         * infcmd.c (default_print_one_register_info): Align natural-format
14048         column values consistently one under another.
14049         (pad_to_column): New function.
14050
14051 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14052
14053         * dwarf2read.c (dwarf2_physname): Move commment.
14054
14055 2018-02-01  Leszek Swirski  <leszeks@google.com>
14056
14057         * varobj.c (varobj_formatted_print_options): Allow recursive
14058         pretty printing if pretty printing is enabled.
14059
14060 2018-02-01  Leszek Swirski  <leszeks@google.com>
14061
14062         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14063         names after a structop as a filename.
14064
14065 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14066
14067         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14068         (arm_record_coproc_data_proc): Likewise.
14069
14070 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14071
14072         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14073
14074 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14075
14076         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14077         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14078
14079 2018-01-31  Pedro Alves  <palves@redhat.com>
14080
14081         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14082         * inflow.c (child_terminal_save_inferior): Wrap reference to
14083         tcgetpgrp in HAVE_TERMIOS_H.
14084         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14085         _WIN32.
14086         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14087         always iterate over all inferiors.
14088         (gdbsim_cntrl_c): Adjust.
14089         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14090
14091 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14092
14093         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14094         index type is objfile-owned if the element type is as well.
14095
14096 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14097
14098         GDB 8.1 released.
14099
14100 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14101
14102         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14103         "features/s390x-linux64.c".
14104         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14105         s390_linux32 and s390x_linux64.
14106         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14107         default tdesc.
14108         * s390-tdep.c: Include "features/s390-linux32.c" and
14109         "features/s390x-linux64.c".
14110         (s390_tdesc_valid): Add check for tdesc_has_registers.
14111         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14112         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14113         tdesc_s390x_linux64.
14114         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14115         tdesc_s390x_linux64 to...
14116         * s390-tdep.h: ...here.
14117
14118 2018-01-30  Pedro Alves  <palves@redhat.com>
14119
14120         PR gdb/13211
14121         * config.in, configure: Regenerate.
14122         * configure.ac: Check for getpgid.
14123         * go32-nat.c (go32_pass_ctrlc): New.
14124         (go32_target): Install it.
14125         * inf-child.c (inf_child_target): Install
14126         child_terminal_save_inferior, child_pass_ctrlc and
14127         child_interrupt.
14128         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14129         (inf_ptrace_target): No longer install it.
14130         * infcmd.c (interrupt_target_1): Adjust.
14131         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14132         (child_interrupt): Declare.
14133         (inferior::terminal_state): New.
14134         * inflow.c (struct terminal_info): Update comments.
14135         (inferior_process_group): Delete.
14136         (terminal_is_ours): Delete.
14137         (gdb_tty_state): New.
14138         (child_terminal_init): Adjust.
14139         (is_gdb_terminal, sharing_input_terminal_1)
14140         (sharing_input_terminal): New functions.
14141         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14142         Set the process's actual process group in the foreground if
14143         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14144         mark terminal as the inferior's if not sharing GDB's terminal.
14145         Don't check attach_flag.
14146         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14147         pass down a target_terminal_state.
14148         (child_terminal_save_inferior): New, factored out from ...
14149         (child_terminal_ours_1): ... this.  Handle
14150         target_terminal_state::is_ours_for_output.
14151         (child_interrupt, child_pass_ctrlc): New.
14152         (inflow_inferior_exit): Clear the inferior's terminal_state.
14153         (copy_terminal_info): Copy the inferior's terminal state.
14154         (_initialize_inflow): Remove reference to terminal_is_ours.
14155         * inflow.h (inferior_process_group): Delete.
14156         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14157         * procfs.c (procfs_target): Don't install procfs_interrupt.
14158         (procfs_interrupt): Delete.
14159         * remote.c (remote_serial_quit_handler): Adjust.
14160         (remote_interrupt): Remove ptid parameter.  Adjust.
14161         * target-delegates.c: Regenerate.
14162         * target.c: Include "terminal.h".
14163         (target_terminal::terminal_state): Rename to ...
14164         (target_terminal::m_terminal_state): ... this.
14165         (target_terminal::init): Adjust.
14166         (target_terminal::inferior): Adjust to per-inferior
14167         terminal_state.
14168         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14169         (target_terminal::ours, target_terminal::ours_for_output): Use
14170         target_terminal_is_ours_kind.
14171         (target_interrupt): Remove ptid parameter.  Adjust.
14172         (default_target_pass_ctrlc): Adjust.
14173         * target.h (target_ops::to_terminal_save_inferior): New field.
14174         (target_ops::to_interrupt): Remove ptid_t parameter.
14175         (target_interrupt): Remove ptid_t parameter.  Update comment.
14176         (target_pass_ctrlc): Update comment.
14177         * target/target.h (target_terminal_state): New scoped enum,
14178         factored out of ...
14179         (target_terminal::terminal_state): ... here.
14180         (target_terminal::inferior): Update comments.
14181         (target_terminal::restore_inferior): New.
14182         (target_terminal::is_inferior, target_terminal::is_ours)
14183         (target_terminal::is_ours_for_output): Adjust.
14184         (target_terminal::scoped_restore_terminal_state): Adjust to
14185         rename, and call restore_inferior() instead of inferior().
14186         (target_terminal::scoped_restore_terminal_state::m_state): Change
14187         type.
14188         (target_terminal::terminal_state): Rename to ...
14189         (target_terminal::m_terminal_state): ... this and change type.
14190
14191 2018-01-30  Pedro Alves  <palves@redhat.com>
14192
14193         * linux-nat.c (wait_for_signal): New function.
14194         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14195         directly.
14196         (async_terminal_is_ours)
14197         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14198         (linux_nat_add_target): Don't override
14199         to_terminal_inferior/to_terminal_ours.
14200
14201 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14202
14203         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14204
14205 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14206
14207         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14208         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14209         dwarf2_per_objfile_free here.
14210         (dwarf2_per_objfile_free): Remove.
14211         (_initialize_dwarf2_read): Don't register
14212         dwarf2_per_objfile_free as a registry cleanup.
14213
14214 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14215
14216         Avoid compilation errors in MinGW native builds
14217
14218         The error is triggered by including python-internal.h, and the
14219         error message is:
14220
14221              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14222                       from build-gnulib/import/math.h:27,
14223                       from d:/usr/Python26/include/pyport.h:235,
14224                       from d:/usr/Python26/include/Python.h:58,
14225                       from python/python-internal.h:94,
14226                       from python/py-arch.c:24:
14227              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14228         using ::hypot;
14229                 ^~~~~
14230
14231         This happens because Python headers define 'hypot' to expand t
14232         '_hypot' in the Windows builds.
14233         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14234         'hypoth'.  This avoids a compilation error.
14235
14236 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14237
14238         * MAINTAINERS (Write After Approval): Fix ordering.
14239
14240 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14241
14242         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14243
14244 2018-01-26  Alan Modra  <amodra@gmail.com>
14245
14246         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14247         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14248         Remove nop.  Make const.  Comment.
14249         (powerpc32_plt_stub_so_2): New.
14250         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14251         Correct count.  Update uses.
14252         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14253         Move common code reading PLT entry word.  Correct
14254         powerpc32_plt_stub PLT address calculation.
14255         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14256         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14257         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14258         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14259         (ppc64_standard_linkage8): Likewise.
14260         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14261         Correct insns description.
14262         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14263
14264 2018-01-24  Pedro Alves  <palves@redhat.com>
14265
14266         GCC PR libstdc++/83906
14267         * gdbtypes.c (operator==(const dynamic_prop &,
14268         const dynamic_prop &)): New.
14269         (operator==(const range_bounds &, const range_bounds &)): New.
14270         (check_types_equal): Use them instead of memcmp.
14271         * gdbtypes.h (operator==(const dynamic_prop &,
14272         const dynamic_prop &)): Declare.
14273         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14274         (operator==(const range_bounds &, const range_bounds &)): Declare.
14275         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14276
14277 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14278
14279         * s390-linux-tdep.c (s390_record_address_mask)
14280         (s390_record_calc_disp_common, s390_record_calc_disp)
14281         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14282         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14283         (s390_process_record): Move to s390-tdep.c.
14284         (s390_linux_init_abi_any): Adjust.
14285         * s390-tdep.c (s390_record_address_mask)
14286         (s390_record_calc_disp_common, s390_record_calc_disp)
14287         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14288         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14289         (s390_process_record): Moved from s390-linux-tdep.c
14290         (s390_gdbarch_init): Adjust.
14291
14292 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14293
14294         * s390-linux-nat.c (s390-tdep.h): New include.
14295         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14296         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14297         (ALLDEPFILES): Add s390-tdep.c.
14298         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14299         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14300         * s390-tdep.h: ...this.  New file.
14301         * s390-linux-tdep.c (s390-tdep.h): New include.
14302         (_initialize_s390_tdep): Rename to...
14303         (_initialize_s390_linux_tdep): ...this and adjust.
14304         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14305         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14306         s390-tdep.h.
14307         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14308         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14309         (s390_is_partial_instruction, s390_software_single_step)
14310         (is_non_branch_ril, s390_displaced_step_copy_insn)
14311         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14312         (s390_prologue_data, s390_addr, s390_store, s390_load)
14313         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14314         (s390_register_call_saved, s390_guess_tracepoint_registers)
14315         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14316         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14317         (s390_pseudo_register_name, s390_pseudo_register_type)
14318         (s390_pseudo_register_read, s390_pseudo_register_write)
14319         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14320         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14321         (s390_addr_bits_remove, s390_address_class_type_flags)
14322         (s390_address_class_type_flags_to_name)
14323         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14324         (s390_function_arg_float, s390_function_arg_vector)
14325         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14326         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14327         (s390_frame_align, s390_register_return_value, s390_return_value)
14328         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14329         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14330         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14331         (s390_trad_frame_prev_register, s390_unwind_cache)
14332         (s390_prologue_frame_unwind_cache)
14333         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14334         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14335         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14336         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14337         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14338         (s390_frame_base_address, s390_local_base_address)
14339         (s390_frame_base, s390_gcc_target_options)
14340         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14341         (s390_validate_reg_range, s390_tdesc_valid)
14342         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14343         * s390-tdep.c: ...this.  New file.
14344
14345 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14346
14347         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14348         (s390_process_record, s390_gdbarch_tdep_alloc)
14349         (s390_linux_init_abi_any): Use/set new hook.
14350
14351 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14352
14353         * s390-linux-tdep.c (osabi.h): New include.
14354         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14355         (s390_linux_init_abi_any): New functions.
14356         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14357
14358 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14359
14360         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14361         tdesc_has_registers check
14362
14363 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14364
14365         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14366         (s390_validate_reg_range): New macro.
14367         (s390_gdbarch_init): Adjust.
14368
14369 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14370
14371         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14372         (s390_gdbarch_tdep_alloc): Adjust.
14373         (s390_gdbarch_init): Adjust.
14374
14375 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14376
14377         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14378         <have_tdb>: Change type to bool.
14379         (s390_gdbarch_tdep_alloc): Adjust.
14380         (s390_gdbarch_init): Adjust.
14381
14382 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14383
14384         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14385         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14386         (s390_gdbarch_tdep_alloc): New function.
14387         (s390_gdbarch_init): Allocate tdep at start and use its fields
14388         instead of separate variables.
14389
14390 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14391
14392         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14393         when looking for cached gdbarch and add comment for remaining.
14394
14395 2018-01-22  Pedro Alves  <palves@redhat.com>
14396             Sergio Durigan Junior  <sergiodj@redhat.com>
14397
14398         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14399         case.
14400
14401 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14402
14403         * MAINTAINERS: Update my company e-mail address.
14404
14405 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14406
14407         * regcache.c (cooked_write_test): New function.
14408         (_initialize_regcache): Register the test.
14409
14410 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14411
14412         * ia64-tdep.c (ia64_pseudo_register_read): Call
14413         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14414         * m32c-tdep.c (m32c_cat_read): Likewise.
14415         (m32c_r3r2r1r0_read): Likewise.
14416         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14417         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14418
14419 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14420
14421         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14422         method raw_read instead of regcache_raw_read.
14423         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14424         * arm-tdep.c (arm_neon_quad_read): Likewise.
14425         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14426         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14427         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14428         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14429         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14430         (i386_pseudo_register_read_into_value): Likewise.
14431         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14432         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14433         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14434         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14435         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14436         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14437         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14438         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14439         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14440
14441 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14442
14443         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14444         * configure.tgt: Remove target mt.
14445         * mt-tdep.c: Remove.
14446         * regcache.c (cooked_read_test): Remove the check for mt.
14447
14448 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14449
14450         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14451         instead of gdbarch_pseudo_register_read_value.
14452
14453 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14454
14455         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14456         language is Ada.
14457
14458 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14459
14460         * linespec.c (create_sals_line_offset): Remove code that preserved
14461         the symtab_and_line's line number.
14462
14463 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14464
14465         * varobj.c (varobj_create): Don't set valid_block when creating a
14466         floating varobj.
14467
14468 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14469
14470         * varobj.c (varobj_create): Remove out of date comment.
14471
14472 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14473
14474         PR mi/20395
14475         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14476         updating innermost block.
14477         * parse.c (innermost_block_tracker::update): Take extra type
14478         parameter, and check types match before updating innermost block.
14479         (write_dollar_variable): Update innermost block for registers.
14480         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14481         (innermost_block_tracker::innermost_block_tracker): Initialise
14482         m_types member.
14483         (innermost_block_tracker::reset): Take type parameter.
14484         (innermost_block_tracker::update): Take type parameter, and pass
14485         type through as needed.
14486         (innermost_block_tracker::m_types): New member.
14487         * varobj.c (varobj_create): Pass type when reseting innermost
14488         block.
14489
14490 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14491
14492         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14493         * ada-lang.c (resolve_subexp): Likewise.
14494         * breakpoint.c (set_breakpoint_condition) Likewise.
14495         (watch_command_1) Likewise.
14496         * c-exp.y (variable): Likewise.
14497         * d-exp.y (PrimaryExpression): Likewise.
14498         * f-exp.y (variable): Likewise.
14499         * go-exp.y (variable): Likewise.
14500         * m2-exp.y (variable): Likewise.
14501         * objfiles.c (objfile::~objfile): Likewise.
14502         * p-exp.y (variable): Likewise.
14503         * parse.c (innermost_block): Change type.
14504         * parser-defs.h (class innermost_block_tracker): New.
14505         (innermost_block): Change to innermost_block_tracker.
14506         * printcmd.c (display_command): Switch to innermost_block API.
14507         (do_one_display): Likewise.
14508         * rust-exp.y (do_one_display): Likewise.
14509         * symfile.c (clear_symtab_users): Likewise.
14510         * varobj.c (varobj_create): Switch to innermost_block API, replace
14511         use of innermost_block with block stored on varobj object.
14512
14513 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14514
14515         * expression.h (innermost_block): Remove declaration.
14516         * varobj.c: Add 'parser-defs.h' include.
14517
14518 2018-01-19  Tom Tromey  <tom@tromey.com>
14519
14520         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14521         symbols in the static and global blocks.
14522
14523 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14524
14525         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14526         gdb_ptrace.h, and move including gdb_wait.h ...
14527         * nat/linux-ptrace.h: ... to here.
14528
14529 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14530
14531         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14532         inf_ptrace_detach_success.
14533         (inf_ptrace_detach_success): Add inferior parameter, use it
14534         instead of inferior_ptid, pass it to detach_inferior.
14535         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14536         parameter.
14537         * inferior.c (detach_inferior): Add overload that takes an
14538         inferior object.
14539         * inferior.h (detach_inferior): Likewise.
14540         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14541         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14542         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14543
14544 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14545
14546         * target.h (struct target_ops) <to_detach>: Add inferior
14547         parameter.
14548         (target_detach): Likewise.
14549         * target.c (dispose_inferior): Pass inferior down.
14550         (target_detach): Pass inferior down.  Assert that it is equal to
14551         the current inferior.
14552         * aix-thread.c (aix_thread_detach): Pass inferior down.
14553         * corefile.c (core_file_command): Pass current_inferior() down.
14554         * corelow.c (core_detach): Add inferior parameter.
14555         * darwin-nat.c (darwin_detach): Likewise.
14556         * gnu-nat.c (gnu_detach): Likewise.
14557         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14558         * infcmd.c (detach_command): Pass current_inferior() down to
14559         target_detach.
14560         * infrun.c (follow_fork_inferior): Pass parent_inf to
14561         target_detach.
14562         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14563         target_detach.
14564         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14565         * linux-thread-db.c (thread_db_detach): Likewise.
14566         * nto-procfs.c (procfs_detach): Likewise.
14567         * procfs.c (procfs_detach): Likewise.
14568         * record.c (record_detach): Likewise.
14569         * record.h (struct inferior): Forward-declare.
14570         (record_detach): Add inferior parameter.
14571         * remote-sim.c (gdbsim_detach): Likewise.
14572         * remote.c (remote_detach_1): Likewise.
14573         (remote_detach): Likewise.
14574         (extended_remote_detach): Likewise.
14575         * sol-thread.c (sol_thread_detach): Likewise.
14576         * target-debug.h (target_debug_print_inferior_p): New macro.
14577         * target-delegates.c: Re-generate.
14578         * top.c (kill_or_detach): Pass inferior down to target_detach.
14579         * windows-nat.c (windows_detach): Add inferior parameter.
14580
14581 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14582
14583         * target.h (struct target_ops) <to_detach>: Remove args
14584         parameter.
14585         (target_detach): Likewise.
14586         * target.c (dispose_inferior): Adjust.
14587         (target_detach): Remove args parameter, adjust.
14588         * aix-thread.c (aix_thread_detach): Adjust.
14589         * corefile.c (core_file_command): Adjust.
14590         * corelow.c (core_detach): Adjust.
14591         * darwin-nat.c (darwin_detach): Adjust.
14592         * gnu-nat.c (gnu_detach): Adjust.
14593         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14594         * infcmd.c (detach_command): Adjust
14595         * infrun.c (follow_fork_inferior): Adjust.
14596         (handle_vfork_child_exec_or_exit): Adjust.
14597         * linux-fork.c (linux_fork_detach): Remove args parameter.
14598         * linux-fork.h (linux_fork_detach): Likewise.
14599         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14600         * linux-thread-db.c (thread_db_detach): Likewise.
14601         * nto-procfs.c (procfs_detach): Likewise.
14602         * procfs.c (procfs_detach): Likewise.
14603         (do_detach): Remove signo parameter.
14604         * record.c (record_detach): Remove args parameter.
14605         * record.h (record_detach): Likewise.
14606         * remote-sim.c (gdbsim_detach): Likewise.
14607         * remote.c (remote_detach_1): Likewise.
14608         (remote_detach): Likewise.
14609         (extended_remote_detach): Likewise.
14610         * sol-thread.c (sol_thread_detach): Likewise.
14611         * target-delegates.c: Re-generate.
14612         * top.c (struct qt_args) <args>: Remove field.
14613         (kill_or_detach): Don't pass args.
14614         (quit_force): Don't set args.
14615         * windows-nat.c (windows_detach): Remove args parameter.
14616
14617 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14618
14619         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14620         (arm_linux_init_abi): Install it.
14621
14622 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14623
14624         * osabi.c (gdb_osabi_names): Extend the regexp for
14625         arm-linux-gnueabihf.
14626
14627 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14628
14629         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14630         m_abbrevs.
14631         (abbrev_table::add_abbrev): Update.
14632         (abbrev_table::lookup_abbrev): Update.
14633
14634 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14635
14636         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14637
14638 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14639
14640         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14641         to "std::string".
14642
14643 2018-01-17  Tom Tromey  <tom@tromey.com>
14644
14645         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14646
14647 2018-01-17  Tom Tromey  <tom@tromey.com>
14648
14649         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14650         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14651         (create_array_type_with_stride): Update.
14652         * dwarf2read.c (set_die_type): Update.
14653
14654 2018-01-17  Tom Tromey  <tom@tromey.com>
14655
14656         * dwarf2read.c (delayed_method_info): Remove typedef.
14657         (dwarf2_cu::method_info): Now a std::vector.
14658         (add_to_method_list): Update.
14659         (free_delayed_list): Remove.
14660         (compute_delayed_physnames): Update.
14661         (process_full_comp_unit, process_full_type_unit): Clear the method
14662         list.  Remove cleanups.
14663         (psymtab_include_file_name): Add name_holder parameter.  Use
14664         unique_xmalloc_ptr.
14665         (dwarf_decode_lines): Update.
14666
14667 2018-01-17  Tom Tromey  <tom@tromey.com>
14668             Simon Marchi  <simon.marchi@ericsson.com>
14669
14670         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14671         (dwarf2_per_objfile::free_cached_comp_units)
14672         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14673         (init_cutu_and_read_dies_no_follow): Update.
14674         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14675         (dwarf2_cu::~dwarf2_cu): New.
14676         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14677         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14678
14679 2018-01-17  Tom Tromey  <tom@tromey.com>
14680             Simon Marchi  <simon.marchi@ericsson.com>
14681
14682         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14683         (struct die_reader_specs) <abbrev_table>: New member.
14684         (struct abbrev_table): Add constructor.
14685         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14686         <abbrev_obstack>: Now an auto_obstack.
14687         (abbrev_table_up): New typedef.
14688         (init_cu_die_reader): Add abbrev_table parameter.
14689         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14690         Add result_dwo_abbrev_table.
14691         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14692         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14693         Update.
14694         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14695         parameter.
14696         (skip_children): Update.
14697         (abbrev_table::alloc_abbrev): Rename from
14698         abbrev_table_alloc_abbrev.
14699         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14700         (abbrev_table::lookup_abbrev): Rename from
14701         abbrev_table_lookup_abbrev.
14702         (abbrev_table_read_table): Return abbrev_table_up.
14703         (abbrev_table_free, abbrev_table_free_cleanup)
14704         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14705         (load_partial_dies): Update.
14706
14707 2018-01-17  Tom Tromey  <tom@tromey.com>
14708
14709         * dwarf2read.c (dwarf2_compute_name): Update comment.
14710         (read_func_scope, read_variable): Update.
14711         (new_symbol): Remove.
14712         (new_symbol_full): Rename to new_symbol.
14713
14714 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14715
14716         PR gdb/16577
14717         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14718         a warning instead of throwing an error, set section size to 0 and return
14719         NULL.
14720         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14721
14722 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14723
14724         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14725         std::string.
14726         (linux_ptrace_attach_fail_reason_string): Likewise.
14727         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14728         Likewise.
14729         (linux_ptrace_attach_fail_reason_string): Likewise.
14730         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14731
14732 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14733
14734         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14735
14736 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14737
14738         PR gdb/21559
14739         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14740         checking for fs_base/gs_base fields in struct user_regs_struct.
14741         * configure: Regenerate.
14742
14743 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14744
14745         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14746         function.
14747         (aarch64_linux_init_abi): Install it to gdbarch hook
14748         gcc_target_options.
14749
14750 2018-01-15  Pedro Alves  <palves@redhat.com>
14751
14752         * common/signals-state-save-restore.c
14753         (save_original_signals_state): Fix typos.
14754
14755 2017-01-12  Tom Tromey  <tom@tromey.com>
14756             Sergio Durigan Junior  <sergiodj@redhat.com>
14757
14758         * Makefile.in (install-only): Install gdb-add-index.
14759
14760 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14761
14762         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14763
14764 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14765
14766         * infrun.c (keep_going_pass_signal): Clear step-over info when
14767         insert_breakpoints fails.
14768
14769 2018-01-11  Pedro Alves  <palves@redhat.com>
14770
14771         PR gdb/22583
14772         * infrun.c (resume): Rename to ...
14773         (resume_1): ... this.
14774         (resume): Reimplement as wrapper around resume_1.
14775
14776 2018-01-11  Pedro Alves  <palves@redhat.com>
14777
14778         PR remote/22597
14779         * remote.c (remote_parse_stop_reply): Default to the last-set
14780         general thread instead of to 'magic_null_ptid'.
14781
14782 2018-01-10  Pedro Alves  <palves@redhat.com>
14783
14784         * language.h (language_get_symbol_name_matcher): Rename ...
14785         (get_symbol_name_matcher): ... this.
14786         * language.c (language_get_symbol_name_matcher): Ditto.
14787         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14788         callers adjusted.
14789
14790 2018-01-10  Pedro Alves  <palves@redhat.com>
14791
14792         PR gdb/22670
14793         * dwarf2read.c
14794         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14795         Adjust to use language_get_symbol_name_matcher instead of
14796         language_defn::la_get_symbol_name_matcher.
14797         * language.c (language_get_symbol_name_matcher): If in Ada mode
14798         and the lookup name is a verbatim match, return Ada's matcher.
14799         * language.h (language_get_symbol_name_matcher): Adjust comment.
14800         (ada_lookup_name_info::verbatim_p):: New method.
14801
14802 2018-01-10  Pedro Alves  <palves@redhat.com>
14803
14804         PR gdb/22670
14805         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14806         minsym's language is language_auto or language_cplus, pass down
14807         language_ada instead.
14808         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14809
14810 2018-01-10  Pedro Alves  <palves@redhat.com>
14811
14812         PR gdb/22670
14813         * minsyms.c (linkage_name_str): New function.
14814         (iterate_over_minimal_symbols): Use it.
14815
14816 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14817
14818         * NEWS: Document that 'info proc' now works on FreeBSD.
14819
14820 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14821
14822         * configure.ac: Check for kinfo_getfile in libutil.
14823         * configure: Regenerate.
14824         * config.in: Regenerate.
14825         * fbsd-nat.c: Include "fbsd-tdep.h".
14826         (fbsd_fetch_cmdline): New.
14827         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14828         rather than calling error.
14829         (fbsd_info_proc): New.
14830         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14831         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14832         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14833
14834 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14835
14836         * fbsd-nat.c (struct free_deleter): Remove.
14837         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14838
14839 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14840
14841         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14842         NULL for an empty pathname.
14843
14844 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14845
14846         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14847         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14848         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14849         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14850         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14851         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14852         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14853         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14854         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14855         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14856         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14857         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14858         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14859         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14860         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14861
14862 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14863
14864         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14865         (gnu_xfer_auxv): New function.
14866         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14867         TARGET_OBJECT_AUXV.
14868
14869 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14870             Simon Marchi  <simon.marchi@ericsson.com>
14871
14872         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14873         common/selftest.c.
14874         (COMMON_OBS): Remove selftest.o.
14875         * configure.ac: Append selftest-arch.c and common/selftest.c to
14876         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14877         * configure: Re-generated.
14878         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14879         GDB_SELF_TEST.
14880         (maintenance_info_selftests): Likewise.
14881
14882 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14883
14884         * ada-valprint.c (val_print_packed_array_elements): Use
14885         proper number of elements when printing an array indexed
14886         by an enumeration type.
14887
14888 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14889
14890         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14891         (dw2_get_file_names_reader): Adjust.
14892         (lookup_dwo_signatured_type): Adjust.
14893         (lookup_dwp_signatured_type): Adjust.
14894         (lookup_signatured_type): Adjust.
14895         (create_type_unit_group): Adjust.
14896         (get_type_unit_group): Adjust.
14897         (process_psymtab_comp_unit_reader): Adjust.
14898         (build_type_psymtabs_reader): Adjust.
14899         (scan_partial_symbols): Adjust.
14900         (add_partial_symbol): Adjust.
14901         (add_partial_subprogram): Adjust.
14902         (peek_die_abbrev): Adjust.
14903         (fixup_go_packaging): Adjust.
14904         (process_imported_unit_die): Adjust.
14905         (dwarf2_compute_name): Adjust.
14906         (dwarf2_physname): Adjust.
14907         (read_import_statement): Adjust.
14908         (handle_DW_AT_stmt_list): Adjust.
14909         (read_file_scope): Adjust.
14910         (read_func_scope): Adjust.
14911         (read_lexical_block_scope): Adjust.
14912         (read_call_site_scope): Adjust.
14913         (read_variable): Adjust.
14914         (dwarf2_rnglists_process): Adjust.
14915         (dwarf2_ranges_process): Adjust.
14916         (dwarf2_ranges_read): Adjust.
14917         (dwarf2_get_pc_bounds): Adjust.
14918         (dwarf2_record_block_ranges): Adjust.
14919         (dwarf2_add_field): Adjust.
14920         (dwarf2_add_member_fn): Adjust.
14921         (read_structure_type): Adjust.
14922         (process_structure_scope): Adjust.
14923         (read_enumeration_type): Adjust.
14924         (read_array_type): Adjust.
14925         (mark_common_block_symbol_computed): Adjust.
14926         (read_common_block): Adjust.
14927         (read_namespace_type): Adjust.
14928         (read_namespace): Adjust.
14929         (read_module_type): Adjust.
14930         (read_tag_pointer_type): Adjust.
14931         (read_tag_ptr_to_member_type): Adjust.
14932         (read_tag_string_type): Adjust.
14933         (read_subroutine_type): Adjust.
14934         (read_typedef): Adjust.
14935         (read_base_type): Adjust.
14936         (attr_to_dynamic_prop): Adjust.
14937         (read_subrange_type): Adjust.
14938         (read_unspecified_type): Adjust.
14939         (dwarf2_read_abbrevs): Adjust.
14940         (load_partial_dies): Adjust.
14941         (read_partial_die): Adjust.
14942         (find_partial_die): Adjust.
14943         (guess_partial_die_structure_name): Adjust.
14944         (fixup_partial_die): Adjust.
14945         (read_attribute_value): Adjust.
14946         (read_addr_index): Adjust.
14947         (read_addr_index_from_leb128): Adjust.
14948         (read_str_index): Adjust.
14949         (dwarf2_string_attr): Adjust.
14950         (get_debug_line_section): Adjust.
14951         (dwarf_decode_line_header): Adjust.
14952         (lnp_state_machine::check_line_address): Adjust.
14953         (dwarf_decode_lines_1): Adjust.
14954         (dwarf_decode_lines): Adjust.
14955         (dwarf2_start_symtab): Adjust.
14956         (var_decode_location): Adjust.
14957         (new_symbol_full): Adjust.
14958         (dwarf2_const_value_data): Adjust.
14959         (dwarf2_const_value_attr): Adjust.
14960         (dwarf2_const_value): Adjust.
14961         (die_type): Adjust.
14962         (die_containing_type): Adjust.
14963         (build_error_marker_type): Adjust.
14964         (lookup_die_type): Adjust.
14965         (guess_full_die_structure_name): Adjust.
14966         (anonymous_struct_prefix): Adjust.
14967         (determine_prefix): Adjust.
14968         (dwarf2_name): Adjust.
14969         (follow_die_ref_or_sig): Adjust.
14970         (follow_die_offset): Adjust.
14971         (follow_die_ref): Adjust.
14972         (follow_die_sig_1): Adjust.
14973         (follow_die_sig): Adjust.
14974         (get_signatured_type): Adjust.
14975         (get_DW_AT_signature_type): Adjust.
14976         (decode_locdesc): Adjust.
14977         (dwarf_decode_macros): Adjust.
14978         (cu_debug_loc_section): Adjust.
14979         (fill_in_loclist_baton): Adjust.
14980         (dwarf2_symbol_mark_computed): Adjust.
14981         (init_one_comp_unit): Don't assign
14982         dwarf2_cu::dwarf2_per_objfile.
14983         (set_die_type): Adjust.
14984
14985 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14986
14987         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14988         <dwarf2_per_objfile>: New field.
14989         (dwarf2_per_objfile): Remove global.
14990         (get_dwarf2_per_objfile): New function.
14991         (set_dwarf2_per_objfile): New function.
14992         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14993         dwarf2_per_objfile.
14994         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14995         (read_abbrev_offset): Likewise.
14996         (read_indirect_string): Likewise.
14997         (read_indirect_line_string): Likewise.
14998         (read_indirect_string_at_offset): Likewise.
14999         (read_indirect_string_from_dwz): Likewise.
15000         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15001         dwarf2_per_objfile.
15002         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15003         (create_all_comp_units): Change objfile parameter to
15004         dwarf2_per_objfile.
15005         (create_all_type_units): Likewise.
15006         (process_queue): Add dwarf2_per_objfile parameter.
15007         (read_and_check_comp_unit_head): Likewise.
15008         (lookup_dwo_unit_in_dwp): Likewise.
15009         (get_dwp_file): Likewise.
15010         (process_cu_includes): Likewise.
15011         (struct free_dwo_file_cleanup_data): New struct.
15012         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15013         set_dwarf2_per_objfile.
15014         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15015         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15016         context, adjust calls.
15017         (dw2_instantiate_symtab): Likewise.
15018         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15019         (dw2_get_cu): Likewise.
15020         (create_cu_from_index_list): Change objfile parameter to
15021         dwarf2_per_objfile.
15022         (create_cus_from_index_list): Get dwarf2_per_objfile from
15023         context, adjust calls.
15024         (create_cus_from_index): Likewise.
15025         (create_signatured_type_table_from_index): Change objfile
15026         parameter to dwarf2_per_objfile.
15027         (create_signatured_type_table_from_debug_names): Change objfile
15028         parameter to dwarf2_per_objfile.
15029         (create_addrmap_from_index): Likewise.
15030         (create_addrmap_from_aranges): Likewise.
15031         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15032         (dw2_setup): Remove.
15033         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15034         context.
15035         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15036         get_dwarf2_per_objfile.
15037         (dw2_forget_cached_source_info): Likewise.
15038         (dw2_map_symtabs_matching_filename): Likewise.
15039         (struct dw2_symtab_iterator) <index>: Remove.
15040         <dwarf2_per_objfile>: New field.
15041         (dw2_symtab_iter_init): Replace index parameter with
15042         dwarf2_per_objfile.
15043         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15044         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15045         (dw2_print_stats): Likewise.
15046         (dw2_dump): Likewise.
15047         (dw2_expand_symtabs_for_function): Likewise.
15048         (dw2_expand_all_symtabs): Likewise.
15049         (dw2_expand_symtabs_with_fullname): Likewise.
15050         (dw2_expand_marked_cus): Replace index and objfile parameters
15051         with dwarf2_per_objfile.
15052         (dw_expand_symtabs_matching_file_matcher): Add
15053         dwarf2_per_objfile parameter and adjust calls.
15054         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15055         adjust calls.
15056         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15057         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15058         adjust calls.
15059         (create_cus_from_debug_names_list): Replace objfile parameter
15060         with dwarf2_per_objfile and adjust calls.
15061         (create_cus_from_debug_names): Likewise.
15062         (dwarf2_read_debug_names): Likewise.
15063         (mapped_debug_names::namei_to_name): Adjust call.
15064         (dw2_debug_names_iterator::next): Likewise.
15065         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15066         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15067         (dw2_debug_names_dump): Likewise.
15068         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15069         (dw2_debug_names_expand_symtabs_matching): Likewise.
15070         (dwarf2_initialize_objfile): Likewise.
15071         (dwarf2_build_psymtabs): Likewise.
15072         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15073         this_cu.
15074         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15075         (read_and_check_comp_unit_head): Likewise.
15076         (read_abbrev_offset): Likewise.
15077         (create_debug_type_hash_table): Likewise.
15078         (create_debug_types_hash_table): Likewise.
15079         (create_all_type_units): Replace objfile parameter with
15080         dwarf2_per_objfile.
15081         (add_type_unit): Add dwarf2_per_objfile parameter.
15082         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15083         with dwarf2_per_objfile.
15084         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15085         (lookup_dwp_signatured_type): Likewise.
15086         (lookup_signatured_type): Likewise.
15087         (read_cutu_die_from_dwo): Likewise.
15088         (init_tu_and_read_dwo_dies): Likewise.
15089         (init_cutu_and_read_dies): Likewise.
15090         (init_cutu_and_read_dies_no_follow): Likewise.
15091         (allocate_type_unit_groups_table): Add objfile parameter.
15092         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15093         (get_type_unit_group): Likewise.
15094         (process_psymtab_comp_unit): Update call.
15095         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15096         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15097         (print_tu_stats): Likewise.
15098         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15099         in void* parameter.
15100         (build_type_psymtabs): Change objfile parameter to
15101         dwarf2_per_objfile.
15102         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15103         passed in void* parameter.
15104         (process_skeletonless_type_units): Change objfile parameter to
15105         dwarf2_per_objfile.
15106         (set_partial_user): Likewise.
15107         (dwarf2_build_psymtabs_hard): Likewise.
15108         (read_comp_units_from_section): Likewise.
15109         (create_all_comp_units): Likewise.
15110         (scan_partial_symbols): Update calls.
15111         (add_partial_symbol): Likewise.
15112         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15113         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15114         (process_queue): Add dwarf2_per_objfile parameter.
15115         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15116         (compute_compunit_symtab_includes): Likewise.
15117         (process_cu_includes): Add dwarf2_per_objfile parameter.
15118         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15119         (process_full_type_unit): Likewise.
15120         (process_imported_unit_die): Update call.
15121         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15122         (read_file_scope): Likewise.
15123         (allocate_dwo_file_hash_table): Add objfile parameter.
15124         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15125         (create_cus_hash_table): Likewise.
15126         (create_dwp_hash_table): Likewise.
15127         (create_dwo_unit_in_dwp_v1): Likewise.
15128         (create_dwp_v2_section): Likewise.
15129         (create_dwo_unit_in_dwp_v2): Likewise.
15130         (lookup_dwo_unit_in_dwp): Likewise.
15131         (try_open_dwop_file): Likewise.
15132         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15133         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15134         cleanup to include a reference to dwarf2_per_objfile.
15135         (open_dwp_file): Add dwarf2_per_objfile parameter.
15136         (open_and_init_dwp_file): Likewise.
15137         (get_dwp_file): Likewise.
15138         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15139         (queue_and_load_all_dwo_tus): Update call.
15140         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15141         data.
15142         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15143         (dwarf2_ranges_process): Likewise.
15144         (dwarf2_get_pc_bounds): Likewise.
15145         (mark_common_block_symbol_computed): Likewise.
15146         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15147         (dwarf2_read_abbrevs): Update call.
15148         (read_partial_die): Use dwarf2_per_objfile from cu.
15149         (find_partial_die): Likewise.
15150         (fixup_partial_die): Likewise.
15151         (read_attribute_value): Likewise.
15152         (read_indirect_string_at_offset_from): Add objfile parameter.
15153         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15154         parameter.
15155         (read_indirect_string_from_dwz): Add objfile parameter.
15156         (read_indirect_string): Add objfile parameter.
15157         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15158         (read_addr_index): Use dwarf2_per_objfile from cu.
15159         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15160         call dw2_setup.
15161         (read_str_index): Use dwarf2_per_objfile from cu.
15162         (get_debug_line_section): Likewise.
15163         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15164         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15165         (new_symbol_full): Use dwarf2_per_objfile from cu.
15166         (build_error_marker_type): Likewise.
15167         (lookup_die_type): Likewise.
15168         (determine_prefix): Likewise.
15169         (follow_die_offset): Likewise.
15170         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15171         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15172         (dwarf2_fetch_die_type_sect_off): Likewise.
15173         (dwarf2_get_die_type): Likewise.
15174         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15175         (get_signatured_type): Likewise.
15176         (get_DW_AT_signature_type): Likewise.
15177         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15178         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15179         (cu_debug_loc_section): Likewise.
15180         (fill_in_loclist_baton): Likewise.
15181         (dwarf2_symbol_mark_computed): Likewise.
15182         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15183         dwarf2_per_objfile.
15184         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15185         parameter.
15186         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15187         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15188         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15189         (set_die_type): Use dwarf2_free_objfile from cu.
15190         (get_die_type_at_offset): Likewise.
15191         (dwarf2_per_objfile_free): Don't assign global variable.
15192         (debug_names) <constructor>: Add dwarf2_per_objfile
15193         parameter, update m_debugstrlookup construction.
15194         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15195         parameter.
15196         <m_dwarf2_per_objfile>: New field.
15197         <lookup>: Use m_dwarf2_per_objfile.
15198         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15199         (psyms_seen_size): Likewise.
15200         (write_gdbindex): Replace objfile parameter with
15201         dwarf2_per_objfile.
15202         (write_debug_names): Likewise.
15203         (write_psymtabs_to_index): Likewise.
15204         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15205         calls.
15206
15207 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15208
15209         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15210         <dwarf2_per_objfile>: New field.
15211         (struct dwarf2_per_cu_data) <objfile>: Remove.
15212         <dwarf2_per_objfile>: New field.
15213         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15214         of objfile.
15215         (create_signatured_type_table_from_index): Likewise.
15216         (create_debug_type_hash_table): Likewise.
15217         (fill_in_sig_entry_from_dwo_entry): Likewise.
15218         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15219         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15220         objfile.
15221         (create_partial_symtab): Access objfile through
15222         dwarf2_per_objfile.
15223         (process_psymtab_comp_unit_reader): Likewise.
15224         (read_comp_units_from_section): Likewise.
15225         (scan_partial_symbols): Likewise.
15226         (add_partial_symbol): Likewise.
15227         (add_partial_subprogram): Likewise.
15228         (peek_die_abbrev): Likewise.
15229         (fixup_go_packaging): Likewise.
15230         (process_full_comp_unit): Likewise.
15231         (process_full_type_unit): Likewise.
15232         (process_imported_unit_die): Likewise.
15233         (dwarf2_compute_name): Likewise.
15234         (dwarf2_physname): Likewise.
15235         (read_import_statement): Likewise.
15236         (create_cus_hash_table): Assign dwarf2_physname instead of
15237         objfile.
15238         (read_func_scope): Access objfile through dwarf2_per_objfile.
15239         (read_lexical_block_scope): Likewise.
15240         (read_call_site_scope): Likewise.
15241         (read_variable): Likewise.
15242         (dwarf2_rnglists_process): Likewise.
15243         (dwarf2_ranges_process): Likewise.
15244         (dwarf2_ranges_read): Likewise.
15245         (dwarf2_record_block_ranges): Likewise.
15246         (dwarf2_add_field): Likewise.
15247         (dwarf2_add_member_fn): Likewise.
15248         (read_structure_type): Likewise.
15249         (process_structure_scope): Likewise.
15250         (read_enumeration_type): Likewise.
15251         (read_array_type): Likewise.
15252         (read_common_block): Likewise.
15253         (read_namespace_type): Likewise.
15254         (read_namespace): Likewise.
15255         (read_module_type): Likewise.
15256         (read_tag_pointer_type): Likewise.
15257         (read_tag_ptr_to_member_type): Likewise.
15258         (read_tag_string_type): Likewise.
15259         (read_subroutine_type): Likewise.
15260         (read_typedef): Likewise.
15261         (read_base_type): Likewise.
15262         (attr_to_dynamic_prop): Likewise.
15263         (read_subrange_type): Likewise.
15264         (read_unspecified_type): Likewise.
15265         (load_partial_dies): Likewise.
15266         (read_partial_die): Likewise.
15267         (find_partial_die): Likewise.
15268         (guess_partial_die_structure_name): Likewise.
15269         (fixup_partial_die): Likewise.
15270         (read_attribute_value): Likewise.
15271         (read_addr_index_from_leb128): Likewise.
15272         (dwarf2_read_addr_index): Likewise.
15273         (dwarf2_string_attr): Likewise.
15274         (lnp_state_machine::check_line_address): Likewise.
15275         (dwarf_decode_lines_1): Likewise.
15276         (dwarf_decode_lines): Likewise.
15277         (dwarf2_start_symtab): Likewise.
15278         (var_decode_location): Likewise.
15279         (new_symbol_full): Likewise.
15280         (dwarf2_const_value_data): Likewise.
15281         (dwarf2_const_value_attr): Likewise.
15282         (dwarf2_const_value): Likewise.
15283         (die_type): Likewise.
15284         (die_containing_type): Likewise.
15285         (lookup_die_type): Likewise.
15286         (guess_full_die_structure_name): Likewise.
15287         (anonymous_struct_prefix): Likewise.
15288         (dwarf2_name): Likewise.
15289         (follow_die_ref_or_sig): Likewise.
15290         (follow_die_offset): Likewise.
15291         (follow_die_ref): Likewise.
15292         (dwarf2_fetch_die_loc_sect_off): Likewise.
15293         (dwarf2_fetch_constant_bytes): Likewise.
15294         (dwarf2_fetch_die_type_sect_off): Likewise.
15295         (dwarf2_get_die_type): Likewise.
15296         (follow_die_sig): Likewise.
15297         (decode_locdesc): Likewise.
15298         (dwarf2_per_cu_objfile): Likewise.
15299         (dwarf2_per_cu_text_offset): Likewise.
15300         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15301         objfile.
15302         (set_die_type): Access objfile through
15303         dwarf2_per_objfile.
15304
15305 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15306
15307         * valprint.c (converted_character_d): Remove typedef.
15308         (DEF_VEC_O (converted_character_d)): Remove.
15309         (count_next_character): Use std::vector.
15310         (print_converted_chars_to_obstack): Likewise.
15311         (generic_printstr): Likewise.
15312
15313 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15314
15315         * xml-support.h (struct gdb_xml_value): Add constructor.
15316         <value>: Change type to unique_xmalloc_ptr.
15317         (gdb_xml_value_s): Remove typedef.
15318         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15319         (gdb_xml_element_start_handler): Change parameter type to
15320         std::vector.
15321         (xml_find_attribute): Likewise.
15322         * xml-support.c (xml_find_attribute): Change parameter type to
15323         std::vector and adjust.
15324         (gdb_xml_values_cleanup): Remove.
15325         (gdb_xml_parser::start_element): Adjust to std::vector.
15326         (xinclude_start_include): Change paraeter type to std::vector
15327         and adjust.
15328         * btrace.c (check_xml_btrace_version): Likewise.
15329         (parse_xml_btrace_block): Likewise.
15330         (parse_xml_btrace_pt_config_cpu): Likewise.
15331         (parse_xml_btrace_pt): Likewise.
15332         (parse_xml_btrace_conf_bts): Likewise.
15333         (parse_xml_btrace_conf_pt): Likewise.
15334         * memory-map.c (memory_map_start_memory): Likewise.
15335         (memory_map_start_property): Likewise.
15336         * osdata.c (osdata_start_osdata): Likewise.
15337         (osdata_start_item): Likewise.
15338         (osdata_start_column): Likewise.
15339         * remote.c (start_thread): Likewise.
15340         * solib-aix.c (library_list_start_library): Likewise.
15341         (library_list_start_list): Likewise.
15342         * solib-svr4.c (library_list_start_library): Likewise.
15343         (svr4_library_list_start_list): Likewise.
15344         * solib-target.c (library_list_start_segment): Likewise.
15345         (library_list_start_section): Likewise.
15346         (library_list_start_library): Likewise.
15347         (library_list_start_list): Likewise.
15348         * tracepoint.c (traceframe_info_start_memory): Likewise.
15349         (traceframe_info_start_tvar): Likewise.
15350         * xml-syscall.c (syscall_start_syscall): Likewise.
15351         * xml-tdesc.c (tdesc_start_target): Likewise.
15352         (tdesc_start_feature): Likewise.
15353         (tdesc_start_reg): Likewise.
15354         (tdesc_start_union): Likewise.
15355         (tdesc_start_struct): Likewise.
15356         (tdesc_start_flags): Likewise.
15357         (tdesc_start_enum): Likewise.
15358         (tdesc_start_field): Likewise.
15359         (tdesc_start_enum_value): Likewise.
15360         (tdesc_start_vector): Likewise.
15361
15362 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15363
15364         * extension.h (struct xmethod_worker) <clone>: Remove.
15365         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15366         Remove.
15367         (python_xmethod_worker::clone): Remove.
15368         * valops.c (find_overload_match): Use std::move instead of
15369         clone.
15370
15371 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15372
15373         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15374         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15375         <free_xmethod_worker_data>: Remove.
15376         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15377         <get_xmethod_arg_types>: Remove.
15378         <get_xmethod_result_type>: Remove.
15379         <invoke_xmethod>: Remove.
15380         * extension.c (new_xmethod_worker): Remove.
15381         (clone_xmethod_worker): Remove.
15382         (get_matching_xmethod_workers): Return void, pass std::vector by
15383         pointer.
15384         (get_xmethod_arg_types): Rename to...
15385         (xmethod_worker::get_arg_types): ... this, and adjust.
15386         (get_xmethod_result_type): Rename to...
15387         (xmethod_worker::get_result_type): ... this, and adjust.
15388         (invoke_xmethod): Remove.
15389         (free_xmethod_worker): Remove.
15390         (free_xmethod_worker_vec): Remove.
15391         * extension.h (enum ext_lang_rc): Move here from
15392         extension-priv.h.
15393         (struct xmethod_worker): Add constructor and destructor.
15394         <data>: Remove.
15395         <value>: Remove.
15396         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15397         virtual pure methods.
15398         <get_arg_types, get_result_type>: New methods.
15399         (xmethod_worker_ptr): Remove typedef.
15400         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15401         (xmethod_worker_vec): Remove typedef.
15402         (xmethod_worker_up): New typedef.
15403         (invoke_xmethod): Remove.
15404         (clone_xmethod_worker): Remove.
15405         (free_xmethod_worker): Remove.
15406         (free_xmethod_worker_vec): Remove.
15407         (get_xmethod_arg_types): Remove.
15408         (get_xmethod_result_type): Remove.
15409         * valops.c (find_method_list): Use std::vector, don't use
15410         intermediate vector.
15411         (value_find_oload_method_list): Use std::vector.
15412         (find_overload_match): Use std::vector.
15413         (find_oload_champ): Use std::vector.
15414         * value.c (value_free): Use operator delete.
15415         (value_of_xmethod): Rename to...
15416         (value_from_xmethod): ... this.  Don't assign
15417         xmethod_worker::value, take rvalue-reference.
15418         (result_type_of_xmethod): Adjust.
15419         (call_xmethod): Adjust.
15420         * value.h: Include extension.h.
15421         (struct xmethod_worker): Don't forward-declare.
15422         (value_of_xmethod): Rename to...
15423         (value_from_xmethod): ... this, take rvalue-reference.
15424         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15425         (struct python_xmethod_worker): ... this, add constructor and
15426         destructor.
15427         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15428         (gdbpy_free_xmethod_worker_data): Rename to...
15429         (python_xmethod_worker::~python_xmethod_worker): ... this and
15430         adjust.
15431         (gdbpy_clone_xmethod_worker_data): Rename to...
15432         (python_xmethod_worker::clone): ... this and adjust.
15433         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15434         temporary vector.
15435         (gdbpy_get_xmethod_arg_types): Rename to...
15436         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15437         (gdbpy_get_xmethod_result_type): Rename to...
15438         (python_xmethod_worker::do_get_result_type): ... this and
15439         adjust.
15440         (gdbpy_invoke_xmethod): Rename to...
15441         (python_xmethod_worker::invoke): ... this and adjust.
15442         (new_python_xmethod_worker): Rename to...
15443         (python_xmethod_worker::python_xmethod_worker): ... this and
15444         adjust.
15445         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15446         Remove.
15447         (gdbpy_free_xmethod_worker_data): Remove.
15448         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15449         (gdbpy_get_xmethod_arg_types): Remove.
15450         (gdbpy_get_xmethod_result_type): Remove.
15451         (gdbpy_invoke_xmethod): Remove.
15452         * python/python.c (python_extension_ops): Remove obsolete
15453         callbacks.
15454
15455 2018-01-05  Pedro Alves  <palves@redhat.com>
15456
15457         PR gdb/18653
15458         * common/signals-state-save-restore.c
15459         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15460         find a custom handler preinstalled, instead of internal erroring.
15461         But only warn if !quiet.
15462         * common/signals-state-save-restore.h
15463         (save_original_signals_state): New parameter 'quiet'.
15464         * main.c (captured_main_1): Move save_original_signals_state call
15465         after option handling, and pass QUIET.
15466
15467 2018-01-05  Pedro Alves  <palves@redhat.com>
15468
15469         * spu-tdep.c (spu_catch_start): Pass
15470         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15471
15472 2018-01-05  Pedro Alves  <palves@redhat.com>
15473
15474         PR gdb/22670
15475         * ada-lang.c (literal_symbol_name_matcher): New function.
15476         (ada_get_symbol_name_matcher): Use it for
15477         symbol_name_match_type::SEARCH_NAME.
15478         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15479         it down instead of assuming symbol_name_match_type::FULL.
15480         * block.h (block_lookup_symbol): New parameter 'match_type'.
15481         * c-valprint.c (print_unpacked_pointer): Use
15482         lookup_symbol_search_name instead of lookup_symbol.
15483         * compile/compile-object-load.c (get_out_value_type): Pass down
15484         symbol_name_match_type::SEARCH_NAME.
15485         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15486         symbol_name_match_type::FULL.
15487         * cp-support.c (cp_get_symbol_name_matcher): Handle
15488         symbol_name_match_type::SEARCH_NAME.
15489         * infrun.c (insert_exception_resume_breakpoint): Use
15490         lookup_symbol_search_name.
15491         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15492         * psymtab.c (maintenance_check_psymtabs): Use
15493         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15494         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15495         SYMBOL_SEARCH_NAME.
15496         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15497         if symbol_name_match_type::SEARCH_NAME.
15498         (lookup_symbol_in_language): Pass down
15499         symbol_name_match_type::FULL.
15500         (lookup_symbol_search_name): New.
15501         (lookup_language_this): Pass down
15502         symbol_name_match_type::SEARCH_NAME.
15503         (lookup_symbol_aux, lookup_local_symbol): New parameter
15504         'match_type'.  Pass it down.
15505         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15506         (lookup_symbol_search_name): New declaration.
15507         (lookup_symbol_in_block): New 'match_type' parameter.
15508
15509 2018-01-05  Pedro Alves  <palves@redhat.com>
15510
15511         PR gdb/22670
15512         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15513         ada_lookup_symbol.
15514         (ada_lookup_symbol): Reimplement in terms of
15515         ada_lookup_symbol_list, bits factored out from
15516         ada_lookup_encoded_symbol.
15517
15518 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15519
15520         * ada-exp.y (write_object_renaming): When subscripting an array
15521         using a symbol as the index, pass the block in call to
15522         ada_lookup_encoded_symbol when looking that symbol up.
15523
15524 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15525
15526         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15527         TYPE_INDEX_TYPE.
15528
15529 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15530
15531         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15532         the case where VALUE_LVAL (val0) is not lval_memory.
15533
15534 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15535
15536         * ada-valprint.c (print_optional_low_bound): Handle
15537         character-indexed array printing like boolean-indexed array
15538         printing.
15539
15540 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15541
15542         * NEWS: Create a new section for the next release branch.
15543         Rename the section of the current branch, now that it has
15544         been cut.
15545
15546 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15547
15548         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15549         * version.in: Bump version to 8.1.50.DATE-git.
15550
15551 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15552
15553         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15554         Add field.
15555         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15556         Add field.
15557         (default_exception_support_info) <catch_handlers_sym>: Add field.
15558         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15559         (ada_exception_name_addr_1): Add "catch handlers" handling.
15560         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15561         Update all callers.
15562         (create_excep_cond_exprs) <ex>: Add parameter.
15563         (re_set_exception): Update create_excep_cond_exprs call.
15564         (print_it_exception, print_one_exception, print_mention_exception)
15565         (print_recreate_exception): Add "catch handler" handling.
15566         (allocate_location_catch_handlers, re_set_catch_handlers)
15567         (check_status_catch_handlers, print_it_catch_handlers)
15568         (print_one_catch_handlers, print_mention_catch_handlers)
15569         (print_recreate_catch_handlers): New function.
15570         (catch_handlers_breakpoint_ops): New variable.
15571         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15572         Add parameter.  Add "catch handler" handling.
15573         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15574         Add "catch handler" handling.
15575         (ada_exception_catchpoint_cond_string): Add "catch handler"
15576         handling.
15577         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15578         call.
15579         (catch_ada_handlers_command): New function.
15580         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15581         operations structure.
15582         (_initialize_ada_language): Add "catch handlers" command entry.
15583         * NEWS: Document "catch handlers" feature.
15584
15585 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15586
15587         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15588         account when creating the array type of the slice.
15589         (ada_value_slice): Likewise.
15590
15591 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15592
15593         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15594         New enum value.
15595         (create_array_type_with_stride): Add byte_stride_prop parameter.
15596         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15597         New parameter.  Update all callers in this file.
15598         (array_type_has_dynamic_stride): New function.
15599         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15600         of arrays with dynamic byte strides.
15601         * dwarf2read.c (read_array_type): Add support for dynamic
15602         DW_AT_byte_stride attributes.
15603
15604 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15605
15606         * dwarf2read.c (read_unspecified_type): Treat
15607         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15608
15609 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15610
15611         Update copyright year range in all GDB files.
15612
15613 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15614
15615         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15616         and gdb/testsuite/gdb.base/step-line.c.
15617
15618 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15619
15620         * copyright.py (main): Dump the contents of
15621         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15622         even if BY_HAND is empty.
15623
15624 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15625
15626         * top.c (print_gdb_version): Update Copyright year in version
15627         message.
15628
15629 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15630
15631         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15632
15633 For older changes see ChangeLog-2017.
15634 \f
15635 Local Variables:
15636 mode: change-log
15637 left-margin: 8
15638 fill-column: 74
15639 version-control: never
15640 coding: utf-8
15641 End: