(AArch64) wrong value returned by "finish" for HFA
[external/binutils.git] / gdb / ChangeLog
1 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
2
3         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
4         return the correct count for potential HFAs.
5
6 2018-11-08  Jan Beulich  <jbeulich@suse.com>
7
8         * i387-tdep.c (i387_supply_xsave): Split handling of
9         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
10         (i387_collect_xsave): Likewise.
11
12 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
13
14         * riscv-tdep.c (riscv_insn::decode): Update header comment.
15         (riscv_frame_this_id): Catch errors thrown while building the
16         frame cache, leave the frame id as the default, which is the outer
17         frame id.
18
19 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
20
21         * ada-lang.c (read_atcb): Only set task_info->called_task if
22         task_info->state == Entry_Caller_Sleep.
23         (print_ada_task_info): Do not check task_info->state before
24         checking task_info->called_task.
25         (info_task): Likewise.
26
27 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
28
29         * ada-tasks.c (read_atcb): Clear task_info before computing
30         the value of each of its fields.
31
32 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
33
34         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
35         NULL before dereferencing it.
36
37 2018-11-06  Tom de Vries  <tdevries@suse.de>
38
39         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
40         program headers.
41
42 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
43
44         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
45         so that it applies to uclinux as well.
46
47 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
48
49         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
50         when on AAPCS.
51
52 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
53
54         * riscv-fbsd-nat.c (getregs_supplies): Return true for
55         RISCV_CSR_SSTATUS_REGNUM.
56
57 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
58
59         * source.c (open_source_file): Fix leak by transferring the
60         current s->fullname to the unique_xmalloc_ptr fullname given
61         to find_and_open_source.
62
63 2018-11-04  Tom Tromey  <tom@tromey.com>
64
65         * varobj.c (install_default_visualizer): Update.
66         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
67         Return gdbpy_ref.
68         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
69         (find_pretty_printer_from_progspace)
70         (find_pretty_printer_from_gdb, find_pretty_printer)
71         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
72         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
73         Update.
74
75 2018-11-04  Tom Tromey  <tom@tromey.com>
76
77         * python/python.c (gdbpy_parameter_value): Update.
78         * python/python-internal.h (python_string_to_unicode)
79         (python_string_to_target_python_string)
80         (host_string_to_python_string): Return gdbpy_ref.
81         * python/py-utils.c (python_string_to_unicode)
82         (unicode_to_encoded_python_string)
83         (unicode_to_target_python_string)
84         (python_string_to_target_string)
85         (python_string_to_target_python_string): Return gdbpy_ref.
86         (python_string_to_host_string): Update.
87         (host_string_to_python_string): Return gdbpy_ref.
88         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
89         (stpy_fullname): Update.
90         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
91         Update.
92         * python/py-prettyprint.c (print_string_repr): Update.
93         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
94         (objfpy_get_build_id): Update.
95         * python/py-breakpoint.c (bppy_get_location)
96         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
97         Update.
98
99 2018-11-04  Tom Tromey  <tom@tromey.com>
100
101         * python/python-internal.h (gdb_py_object_from_longest)
102         (gdb_py_object_from_ulongest): Return gdbpy_ref.
103         * python/py-value.c (valpy_int): Update.
104         * python/py-utils.c (gdb_py_object_from_longest): Return
105         gdbpy_ref.
106         (gdb_py_object_from_ulongest): Likewise.
107         * python/py-type.c (typy_get_alignof): Update.
108         * python/py-linetable.c (ltpy_get_all_source_lines)
109         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
110         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
111
112 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
113
114         * ada-lang.c (_initialize_ada_language): Fix typo.
115
116 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
117
118         * language.c (type): Remove.
119         (_initialize_language): Remove assignment to type.
120
121 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
122
123         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
124         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
125         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
126         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
127         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
128         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
129         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
130         and aarch64-ravenscar-thread.o.
131         * NEWS: Add entry documenting Ravenscar tasking support
132         on AArch64 ELF.
133
134 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
135
136         * symtab.c (info_functions_command): Initialize quiet flag.
137         * stack.c (info_args_command): Likewise.
138
139 2018-11-01  Jim Wilson  <jimw@sifive.com>
140
141         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
142         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
143         debugging messages.
144
145 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
146
147         * ada-lang.c (ada_watch_location_expression): New function.
148         (ada_language_defn): Set la_watch_location_expression to
149         ada_watch_location_expression.
150
151 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
152
153         * print-utils.c (int_string): Remove unnecessary trailing spaces.
154
155 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
156
157         * rs6000-tdep.c (skip_prologue): Fix potential negative left
158         shifting.
159
160 2018-11-01  Jerome Guitton  <guitton@adacore.com>
161             Joel Brobecker  <brobecker@adacore.com>
162
163         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
164         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
165         * arm-pikeos-tdep.c: New file.
166         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
167         embedded system.
168         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
169
170 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
171
172         * common/pathstuff.c (get_standard_temp_dir): New.
173         * common/pathstuff.h (get_standard_temp_dir): New.
174         * config.in: Re-generate.
175         * configure: Re-generate.
176         * configure.ac: Don't check for mkdtemp.
177         * gnulib/aclocal-m4-deps.mk: Re-generate.
178         * gnulib/aclocal.m4: Re-generate.
179         * gnulib/config.in: Re-generate.
180         * gnulib/configure: Re-generate.
181         * gnulib/import/Makefile.am: Re-generate.
182         * gnulib/import/Makefile.in: Re-generate.
183         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
184         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
185         * gnulib/import/m4/mkdtemp.m4: New file.
186         * gnulib/import/mkdtemp.c: New file.
187         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
188         Add mkdtemp module.
189         * unittests/mkdir-recursive-selftests.c (test): Use
190         get_standard_temp_dir.
191         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
192         ifdef.
193         * compile/compile.c (get_compile_file_tempdir): Likewise.
194
195 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
196
197         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
198         (SIG_FRAME_LR_OFFSET64): New define.
199         (SIG_FRAME_FP_OFFSET64): New define.
200         (aix_sighandle_frame_cache): New Function.
201         (aix_sighandle_frame_this_id): New Function.
202         (aix_sighandle_frame_prev_register): New Function.
203         (aix_sighandle_frame_sniffer): New Function.
204         (aix_sighandle_frame_unwind): New global variable.
205         (rs6000_aix_init_osabi): Install new frame unwinder.
206
207 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
208
209         PR gdb/23835
210         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
211         already defined.
212
213 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
214
215         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
216
217 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
218
219         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
220         (producer_is_icc): New function.
221         (check_producer): Set producer_is_icc field on dwarf2_cu.
222         (dwarf2_init_integer_type): New function.
223         (read_base_type): Call dwarf2_init_integer_type instead of
224         init_integer_type in all cases.
225         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
226         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
227         LEN is greater than 0.
228
229 2018-10-30  Tom Tromey  <tom@tromey.com>
230
231         * main.c (captured_main_1): Check return value of bfd_init.
232
233 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
234
235         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
236         Adjust comments.
237
238 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
239
240         * procfs.c: Include common/pathstuff.h.
241
242 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
243
244         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
245         Add missing braces.  No functional change.
246
247 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
248
249         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
250         to report a bad option and fix indentation.
251         * demangle.c (demangle_command): Use report_unrecognized_option_error
252         to report a bad option and correctly report the bad option.
253
254 2018-10-27  Tom Tromey  <tom@tromey.com>
255
256         PR cli/23364:
257         * darwin-nat.c (copied_shell): New global.
258         (may_have_sip): Rename from should_disable_startup_with_shell.
259         (copy_shell_to_cache, maybe_cache_shell): New functions.
260         (darwin_nat_target::create_inferior): Update.  Use
261         copied_shell.
262
263 2018-10-27  Tom Tromey  <tom@tromey.com>
264
265         * unittests/scoped_fd-selftests.c (test_to_file): New function.
266         (run_tests): Call test_to_file.
267         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
268         temporary files.
269         * common/scoped_fd.h (scoped_fd::to_file): New method.
270
271 2018-10-27  Tom Tromey  <tom@tromey.com>
272
273         * unittests/scoped_mmap-selftests.c (test_normal): Use
274         gdb_mkostemp_cloexec.
275         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
276         Use gdb_mkostemp_cloexec.
277         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
278         gnulib/config.in, gnulib/configure,
279         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
280         gnulib/import/m4/gnulib-cache.m4,
281         gnulib/import/m4/gnulib-comp.m4: Update.
282         * gnulib/import/m4/mkostemp.m4: New file.
283         * gnulib/import/m4/mkstemp.m4: Remove.
284         * gnulib/import/mkostemp.c: New file.
285         * gnulib/import/mkstemp.m4: Remove.
286         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
287         mkstemp, add mkostemp.  Apply new patch.
288         * gnulib/import/stdlib.in.h: Apply patch.
289         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
290         New file.
291         * dwarf-index-write.c (write_psymtabs_to_index): Use
292         gdb_mkostemp_cloexec.
293         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
294
295 2018-10-27  Tom Tromey  <tom@tromey.com>
296
297         * unittests/mkdir-recursive-selftests.c: New file.
298         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
299         unittests/mkdir-recursive-selftests.c.
300         * dwarf-index-cache.c (mkdir_recursive): Move to
301         common/filestuff.c.
302         (index_cache::store): Check return value of mkdir_recursive.
303         (create_dir_and_check, test_mkdir_recursive): Move to new file.
304         (_initialize_index_cache): Don't register test.
305         * common/filestuff.h (mkdir_recursive): Declare.
306         * common/filestuff.c (mkdir_recursive): Move from
307         dwarf-index-cache.c.  Return bool.
308
309 2018-10-27  Tom Tromey  <tom@tromey.com>
310
311         * dwarf-index-write.c (write_psymtabs_to_index): Move
312         make_temp_filename to common/pathstuff.c.
313         * common/pathstuff.h (make_temp_filename): Declare.
314         * common/pathstuff.c (make_temp_filename): New function, moved
315         from dwarf-index-write.c.
316
317 2018-10-27  Tom Tromey  <tom@tromey.com>
318
319         * procfs.c (procfs_target::create_inferior): Use get_shell.
320         * cli/cli-cmds.c (shell_escape): Use get_shell.
321         * windows-nat.c (windows_nat_target::create_inferior): Use
322         get_shell.
323         * common/pathstuff.c (get_shell): New function.
324         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
325         (fork_inferior): Use get_shell.
326         * common/pathstuff.h (get_shell): Declare.
327
328 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
329
330         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
331
332 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
333
334         * stack.c (print_variable_and_value_data): Add preg and treg.
335         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
336         and update callers.
337         (print_frame_arg_vars): Likewise.
338         (prepare_reg): New function.
339         (info_locals_command): Extract info print args and use them.
340         (info_args_command): Likewise.
341         (_initialize_stack): Modify on-line help.
342         * symtab.c (treg_matches_sym_type_name): New function.
343         (search_symbols): New arg t_regexp.
344         (symtab_symbol_info): New args quiet, regexp, t_regexp.
345         (info_variables_command): Extract info print args and use them.
346         (info_functions_command): Likewise.
347         (info_types_command): Update call to symtab_symbol_info.
348         (_initialize_symtab): Modify on-line help.
349         * symtab.h (treg_matches_sym_type_name): New function.
350         (search_symbols): New t_regexp arg.
351
352 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
353
354         * cli-utils.c (extract_arg_maybe_quoted): New function.
355         (extract_info_print_args): New function.
356         (info_print_args_help): New function.
357         (report_unrecognized_option_error): New function.
358         * cli-utils.h (extract_arg_maybe_quoted): New function.
359         (extract_info_print_args): New function.
360         (info_print_args_help): New function.
361         (report_unrecognized_option_error): New function.
362
363 2018-10-26  Tom Tromey  <tom@tromey.com>
364
365         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
366         (compute_compunit_symtab_includes): Update.
367         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
368         (compunit_symtab_ptr): Likewise.
369
370 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
371
372         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
373         default_print_auxv_entry for specific tag values.
374
375 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
376
377         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
378
379 2018-10-26  Jim Wilson  <jimw@sifive.com>
380
381         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
382         (riscv_linux_sigframe_init): Declare.
383         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
384         (riscv_linux_sigframe): New.
385         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
386         (riscv_linux_sigframe_init): Define.
387         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
388
389         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
390         (riscv_isa_flen): Likewise.  Drop static.
391         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
392         (riscv_isa_flen): Likewise.  Declare.
393
394 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
395             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
396
397         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
398         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
399         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
400         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
401         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
402         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
403         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
404         Define.
405         (struct ppc_linux_features) <htm>: New field.
406         (ppc_linux_no_features): Add initializer for htm field.
407         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
408         new tdescs.
409         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
410         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
411         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
412         Define if not already defined.
413         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
414         and rs6000/powerpc-isa207-htm-vsx64l.
415         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
416         rs6000/powerpc-isa207-htm-vsx64l.xml.
417         * features/rs6000/power-htm-spr.xml: New file.
418         * features/rs6000/power-htm-core.xml: New file.
419         * features/rs6000/power64-htm-core.xml: New file.
420         * features/rs6000/power-htm-fpu.xml: New file.
421         * features/rs6000/power-htm-altivec.xml: New file.
422         * features/rs6000/power-htm-vsx.xml: New file.
423         * features/rs6000/power-htm-ppr.xml: New file.
424         * features/rs6000/power-htm-dscr.xml: New file.
425         * features/rs6000/power-htm-tar.xml: New file.
426         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
427         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
428         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
429         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
430         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
431         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
432         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
433         fetch_regset with HTM regsets.
434         (store_register, store_ppc_registers): Call store_regset with HTM
435         regsets.
436         (ppc_linux_nat_target::read_description): Set htm field in the
437         features struct if needed.
438         * ppc-linux-tdep.c: Include
439         features/rs6000/powerpc-isa207-htm-vsx32l.c and
440         features/rs6000/powerpc-isa207-htm-vsx64l.c.
441         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
442         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
443         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
444         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
445         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
446         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
447         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
448         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
449         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
450         (ppc32_linux_ctarregset): New globals.
451         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
452         (ppc_linux_collect_core_cpgrregset): New function.
453         (ppc_linux_iterate_over_regset_sections): Call back with the htm
454         regsets.
455         (ppc_linux_core_read_description): Check if the tm spr section is
456         present and set htm in the features struct.
457         (_initialize_ppc_linux_tdep): Call
458         initialize_tdesc_powerpc_isa207_htm_vsx32l and
459         initialize_tdesc_powerpc_isa207_htm_vsx64l.
460         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
461         Declare.
462         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
463         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
464         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
465         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
466         New fields.
467         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
468         Likewise.
469         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
470         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
471         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
472         New enum fields.
473         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
474         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
475         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
476         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
477         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
478         <PPC_CTAR_REGNUM>: Likewise.
479         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
480         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
481         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
482         (IS_CEFP_PSEUDOREG): Define.
483         (rs6000_register_name): Hide the upper halves of checkpointed VSX
484         registers.  Return names for the checkpointed DFP, VSX, and EFP
485         pseudo registers.
486         (rs6000_pseudo_register_type): Remove initial assert and raise an
487         internal error in the else clause instead.  Return types for the
488         checkpointed DFP, VSX, and EFP pseudo registers.
489         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
490         checkpointed DFP pseudo registers.
491         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
492         checkpointed VSX pseudo registers.
493         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
494         from efpr_pseudo_register_read and
495         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
496         registers.
497         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
498         Handle checkpointed DFP, VSX, and EFP registers.
499         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
500         (efp_ax_pseudo_register_collect): New functions.
501         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
502         register logic to new functions.  Handle checkpointed DFP, VSX,
503         and EFP pseudo registers.
504         (rs6000_gdbarch_init): Look for and validate the htm features.
505         Include checkpointed DFP, VSX and EFP pseudo-registers.
506         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
507         HTM registers.
508
509 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
510
511         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
512         without altivec or fpu.
513
514 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
515             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
516
517         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
518         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
519         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
520         Define if not already defined.
521         * features/rs6000/power-ebb.xml: New file.
522         * features/rs6000/power-linux-pmu.xml: New file.
523         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
524         features.
525         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
526         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
527         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
528         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
529         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
530         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
531         fetch_regset with ebb and pmu regsets.
532         (store_register, store_ppc_registers): Call store_regset with ebb
533         and pmu regsets.
534         (ppc_linux_nat_target::read_description): Set isa207 field in the
535         features struct if ebb and pmu are avaiable.
536         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
537         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
538         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
539         and pmu regsets.
540         (ppc_linux_core_read_description): Check if the pmu section is
541         present and set isa207 in the features struct.
542         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
543         (ppc32_linux_pmuregset): Declare.
544         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
545         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
546         <ppc_sier_regnum>: New field.
547         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
548         New enum values.
549         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
550         values.
551         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
552         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
553         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
554         ebb and pmu features.
555
556 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
557             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
558
559         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
560         (tdesc_powerpc_isa207_vsx64l): Declare.
561         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
562         (struct ppc_linux_features) <isa207>: New field.
563         (ppc_linux_no_features): Add initializer for isa207 field.
564         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
565         new tdescs.
566         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
567         (NT_PPC_TAR): Define if not already defined.
568         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
569         rs6000/powerpc-isa207-vsx64l.
570         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
571         rs6000/powerpc-isa207-vsx64l.xml.
572         * features/rs6000/power-tar.xml: New file.
573         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
574         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
575         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
576         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
577         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
578         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
579         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
580         fetch_regset with the TAR regset.
581         (store_register, store_ppc_registers): Call store_regset with the
582         TAR regset.
583         (ppc_linux_nat_target::read_description): Set isa207 field in the
584         features struct if needed.
585         * ppc-linux-tdep.c: Include
586         features/rs6000/powerpc-isa207-vsx32l.c and
587         features/rs6000/powerpc-isa207-vsx64l.c.
588         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
589         (ppc_linux_iterate_over_regset_sections): Call back with the tar
590         regset.
591         (ppc_linux_core_read_description): Check if the tar section is
592         present and set isa207 in the features struct.
593         (_initialize_ppc_linux_tdep): Call
594         initialize_tdesc_powerpc_isa207_vsx32l and
595         initialize_tdesc_powerpc_isa207_vsx64l.
596         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
597         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
598         (enum) <PPC_TAR_REGNUM>: New enum value.
599         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
600         feature.
601         (ppc_process_record_op31): Record changes to TAR.
602
603 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
604             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
605
606         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
607         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
608         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
609         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
610         (struct ppc_linux_features) <ppr_dscr>: New field.
611         (ppc_linux_no_features): Add initializer for ppr_dscr field.
612         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
613         new tdescs.
614         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
615         Define if not already defined.
616         * features/Makefile (WHICH): Add
617         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
618         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
619         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
620         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
621         * features/rs6000/power-dscr.xml: New file.
622         * features/rs6000/power-ppr.xml: New file.
623         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
624         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
625         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
626         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
627         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
628         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
629         * ppc-linux-nat.c: Include <sys/uio.h>.
630         (fetch_regset, store_regset, check_regset): New functions.
631         (fetch_register, fetch_ppc_registers): Call fetch_regset with
632         DSCR and PPR regsets.
633         (store_register, store_ppc_registers): Call store_regset with
634         DSCR and PPR regsets.
635         (ppc_linux_get_hwcap2): New function.
636         (ppc_linux_nat_target::read_description): Call
637         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
638         features struct if needed.
639         * ppc-linux-tdep.c: Include
640         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
641         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
642         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
643         (ppc32_linux_dscrregset): New globals.
644         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
645         and dscr regsets.
646         (ppc_linux_core_read_description): Check if the ppr and dscr
647         sections are present and set ppr_dscr in the features struct.
648         (_initialize_ppc_linux_tdep): Call
649         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
650         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
651         * ppc-linux-tdep.h (ppc32_linux_pprregset)
652         (ppc32_linux_dscrregset): Declare.
653         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
654         <ppc_dscr_regnum>: New field.
655         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
656         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
657         and dscr features.
658         (ppc_process_record_op31): Record changes to PPR and DSCR.
659
660 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
661
662         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
663         second initializer line for the have_* variables.  Initialize
664         have_fpu to 0 instead of 1.
665
666 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
667
668         * arch/ppc-linux-common.c (ppc_linux_match_description):
669         Parenthesize tdesc assignements and indent them properly.
670
671 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
672
673         * ppc-linux-nat.c (fetch_register): Change if statement to else
674         if.
675         (store_register): Likewise.
676
677 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
678
679         * rs6000-tdep.c: Remove reggroups.h include.
680         (rs6000_pseudo_register_reggroup_p): Remove.
681         (rs6000_gdbarch_init): Remove call to
682         set_tdesc_pseudo_register_reggroup_p.
683
684 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
685
686         * reggroups.c (default_register_reggroup_p): Return true for
687         decfloat registers and float_reggroup.
688
689 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
690
691         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
692         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
693         ppc_linux_collect_vrregset by regcache_collect_regset.
694
695 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
696
697         * linux-tdep.c (linux_collect_regset_section_cb): Use
698         std::vector<gdb_byte> instead of char * and malloc for buf.
699         Remove xfree.
700
701 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
702
703         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
704         symtab_start instead of always using language_unknown.
705
706 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
707
708         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
709         READ_P parameter, catch and ignore register access errors from
710         either the old or new MISA location.
711         (riscv_has_feature): Update call to riscv_read_misa_reg.
712
713 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
714
715         * python/py-function.c (convert_values_to_python): Return
716         gdbpy_ref<>.  Add header comment.
717         (fnpy_call): Adjust.
718
719 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
720
721         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
722         (cmdpy_completer_handle_brkchars): Adjust.
723         (cmdpy_completer): Adjust.
724
725 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
726
727         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
728         Pass correct regnum to raw_supply_zeroed.
729
730 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
731
732         * regcache.c (cooked_read_test): Add CSKY to the list of
733         architectures with a save_reggroup
734
735 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
736
737         PR gdb/23368
738         * infrun.c (follow_exec): In the follow_exec_mode_new case,
739         transfer terminal state from old new new inferior.
740         * terminal.h (swap_terminal_info): New function.
741         * inflow.c (swap_terminal_info): New function.
742
743 2018-10-23  Tom Tromey  <tom@tromey.com>
744
745         * record-btrace.c (get_thread_current_frame_id): Rename from
746         get_thread_current_frame.  Return a frame_id.
747         (record_btrace_start_replaying): Update.
748
749 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
750
751         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
752         for CSRs.
753
754 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
755
756         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
757         have_nonsteppable_watchpoint attribute to 1.
758
759 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
760
761         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
762         register names.
763         (struct register_alias): Rename to...
764         (struct riscv_register_alias): ...this, and update comment.
765         (riscv_register_aliases): Update type, and alias names.  Remove
766         CSR names from this list.
767         (riscv_register_name): Use riscv_gdb_reg_names for int and float
768         register names.  Add an extra assertion.
769         (riscv_is_regnum_a_named_csr): New function.
770         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
771
772 2018-10-22  Jim Wilson  <jimw@sifive.com>
773
774         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
775         FP reg smaller than FP reg size, and fill with -1 instead of 0.
776
777         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
778         (riscv_register_type): Use them.
779         (riscv_print_one_register_info): Handle union of floats same as float.
780         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
781         riscv_fpreg_q_type fields.
782
783 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
784
785         * gdbarch.sh (gdbarch_num_cooked_regs): New.
786         * gdbarch.h: Re-generate.
787         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
788         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
789         * eval.c (evaluate_subexp_standard): Likewise.
790         * findvar.c (value_of_register): Likewise.
791         (value_of_register_lazy): Likewise.
792         (address_from_register): Likewise.
793         * frame.c (get_frame_register_bytes): Likewise.
794         * gdbarch-selftests.c (register_to_value_test): Likewise.
795         * h8300-tdep.c (h8300_register_type): Likewise.
796         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
797         (i386_svr4_reg_to_regnum): Likewise.
798         * infcmd.c (default_print_registers_info): Likewise.
799         (registers_info): Likewise.
800         (print_vector_info): Likewise.
801         (default_print_float_info): Likewise.
802         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
803         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
804         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
805         (mi_cmd_data_list_changed_registers): Likewise.
806         (mi_cmd_data_list_register_values): Likewise.
807         (mi_cmd_data_write_register_values): Likewise.
808         (mi_cmd_trace_frame_collected): Likewise.
809         * mips-tdep.c (print_gp_register_row): Likewise.
810         (mips_print_registers_info): Likewise.
811         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
812         * regcache.c (init_regcache_descr): Likewise.
813         (register_size): Likewise.
814         (register_dump::dump): Likewise.
815         (cooked_read_test): Likewise.
816         (cooked_write_test): Likewise.
817         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
818         (rs6000_gdbarch_init): Likewise.
819         * stabsread.c (stab_reg_to_regnum): Likewise.
820         * stack.c (info_frame_command): Likewise.
821         * target-descriptions.c (tdesc_register_name): Likewise.
822         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
823         * tui/tui-regs.c (tui_show_register_group): Likewise.
824         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
825         (user_reg_map_regnum_to_name): Likewise.
826         (value_of_user_reg): Likewise.
827         (maintenance_print_user_registers): Likewise.
828         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
829         (xtensa_register_name): Likewise.
830         (xtensa_register_type): Likewise.
831         (xtensa_reg_to_regnum): Likewise.
832         (xtensa_pseudo_register_read): Likewise.
833         (xtensa_pseudo_register_write): Likewise.
834
835 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
836
837         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
838         correctly-sized buffer with raw_read.
839         (amd64_pseudo_register_write): Use correctly-sized buffer for
840         raw_read/raw_write.
841
842 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
843
844         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
845         in add_prefix_cmd of set print type.
846
847 2018-10-19  Tom Tromey  <tom@tromey.com>
848
849         PR tui/18388:
850         * NEWS: Mention tabset deprecation.
851         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
852         (update_tab_width): New function.
853         (tui_set_tab_width, tui_show_tab_width): New functions.
854         (tui_set_tab_width_command): Use update_tab_width.
855         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
856         Add new "set tui tab-width" command.
857         * tui/tui-source.c (tui_set_source_content): Update.
858         * tui/tui-disasm.c (tui_set_disassem_content): Update.
859         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
860         Don't declare.
861         (tui_tab_width): Declare.
862         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
863         (tui_set_default_tab_len): Remove.
864
865 2018-10-19  Tom Tromey  <tom@tromey.com>
866
867         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
868         (key_is_backspace, tui_getc): Don't declare.
869         * tui/tui-io.c (key_is_start_sequence): Now static.
870         (key_is_end_sequence, key_is_backspace): Remove.
871         (tui_getc): Now static.
872
873 2018-10-19  Tom Tromey  <tom@tromey.com>
874
875         * symfile.c (reread_symbols): Clear "static_links".
876
877 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
878
879         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
880         define.
881         (aarch64_linux_sigframe_init): Extra boundary checks.
882
883 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
884
885         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
886         the possibly non-existent tdesc type 'vec128', but the type of raw
887         register v16 instead.
888
889 2018-10-19  Gary Benson <gbenson@redhat.com>
890
891         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
892
893 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
894
895         PR cli/23785
896         * cli/cli-dump.c (restore_binary_file): Check if "file" is
897         NULL.
898
899 2018-10-17  Paul Koning  <paul_koning@dell.com>
900
901         * charset.c (convert_between_encodings): Fix unsigned overflow.
902
903 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
904
905         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
906         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
907         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
908         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
909         New functions.
910         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
911         and fbsd_info_proc_mappings_header.
912         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
913         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
914         New.
915
916 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
917
918         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
919         Solaris Maintainer.
920
921 2018-10-15  Tom Tromey  <tom@tromey.com>
922
923         * tui/tui.c (strcat_to_buf): Remove casts.
924         * tui/tui-winsource.c (tui_show_source_line)
925         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
926         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
927         * tui/tui-windata.c (tui_first_data_item_displayed)
928         (tui_delete_data_content_windows, tui_erase_data_content)
929         (tui_display_all_data, tui_display_data_from)
930         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
931         * tui/tui-win.c (tui_set_win_height)
932         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
933         casts.
934         * tui/tui-win.c (tui_resize_all): Remove casts.
935         (tui_scroll_backward_command, tui_set_focus)
936         (tui_set_tab_width_command): Likewise.
937         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
938         * tui/tui-regs.c (tui_show_register_group): Remove cast.
939         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
940         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
941         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
942         Remove casts.
943
944 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
945
946         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
947         AArch64/ARM maintainer.
948
949 2018-10-11  Gary Benson <gbenson@redhat.com>
950
951         * interps.h (interp::m_name): Make private and mutable.
952         * interps.c (interp::~interp): Free m_name.
953
954 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
955             Simon Marchi <simark@simark.ca>
956
957         * README (`configure' options): Add documentation for new
958         "--enable-unit-tests" option.
959         * acinclude.m4: Include "selftest.m4".
960         * configure: Regenerate.
961         * configure.ac: Use "GDB_AC_SELFTEST".
962         * maint.c (maintenance_selftest): Update message informing
963         that selftests have been disabled.
964         (maintenance_info_selftests): Likewise.
965         * selftest.m4: New file.
966
967 2018-10-10  Gary Benson <gbenson@redhat.com>
968
969         * remote.c (remote_target::remote_send_printf): Add
970         missing va_end found by Coverity.
971
972 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
973
974         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
975
976 2018-10-09  Tom Tromey  <tom@tromey.com>
977
978         * configure: Rebuild.
979         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
980         * NEWS: Update --enable-ubsan documentation.
981
982 2018-10-09  Gary Benson <gbenson@redhat.com>
983
984         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
985         found by Coverity.
986
987 2018-10-08  Tom Tromey  <tom@tromey.com>
988
989         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
990         variable.
991         (riscv_fbsd_init_abi): Likewise.
992
993 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
994         * valops.c (value_struct_elt_for_reference): Rename local variable
995         to work around the shadowing a previous local warning.
996
997 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
998
999         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1000         * NEWS: Mention new FreeBSD/riscv native configuration.
1001         * configure.host: Add riscv*-*-freebsd*.
1002         * configure.nat: Likewise.
1003         * riscv-fbsd-nat.c: New file.
1004
1005 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1006
1007         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1008         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1009         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1010         * NEWS: Mention new FreeBSD/riscv target.
1011         * configure.tgt: Add riscv*-*-freebsd*.
1012         * riscv-fbsd-tdep.c: New file.
1013         * riscv-fbsd-tdep.h: New file.
1014
1015 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1016
1017         * regcache.h (struct regcache_map_entry): Note that this type can
1018         be used with traditional frame caches.
1019         * trad-frame.c (trad_frame_set_reg_regmap): New.
1020         * trad-frame.h (trad_frame_set_reg_regmap): New.
1021
1022 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1023
1024         PR c++/16841
1025         * valops.c (get_virtual_base_offset): New function.
1026         (value_struct_elt_for_reference): Use it to get virtual base offset
1027         and add it in calculating class member address.
1028
1029 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1030
1031     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1032       (check_producer): Check if the producer is codewarrior.
1033       (producer_is_codewarrior): New function.
1034       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1035        produced by codewarrior.
1036       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1037
1038 2018-10-06  Tom Tromey  <tom@tromey.com>
1039
1040         PR python/19399:
1041         * python/py-inferior.c: Add "architecture" entry.
1042         (infpy_architecture): New function.
1043
1044 2018-10-06  Tom Tromey  <tom@tromey.com>
1045
1046         PR python/21765:
1047         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1048         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1049         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1050         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1051
1052 2018-10-06  Tom Tromey  <tom@tromey.com>
1053
1054         PR build/17077:
1055         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1056         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1057         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1058         #include.
1059
1060 2018-10-06  Tom Tromey  <tom@tromey.com>
1061
1062         * python/py-breakpoint.c (bppy_get_location): Handle a
1063         bp_breakpoint without a location.
1064
1065 2018-10-06  Tom Tromey  <tom@tromey.com>
1066
1067         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1068         (_RegEx): Reformat help text.
1069         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1070         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1071         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1072         text.
1073         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1074         (EnableXMethod, DisableXMethod): Remove help indentation.
1075         Capitalize meta-syntactic variables.
1076         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1077         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1078         Capitalize meta-syntactic variables.
1079         * python/lib/gdb/command/explore.py (ExploreCommand)
1080         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1081         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1082         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1083         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1084         Remove help indentation.
1085         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1086         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1087         (DisableFrameFilter, SetFrameFilterPriority)
1088         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1089
1090 2018-10-06  Tom Tromey  <tom@tromey.com>
1091
1092         PR tui/28819:
1093         * tui/tui-io.c (gdb_wgetch): New function.
1094         (tui_mld_getc, tui_getc): Use it.
1095
1096 2018-10-05  Tom Tromey  <tom@tromey.com>
1097
1098         * sol-thread.c (sol_thread_target::wait): Rename inner
1099         "save_ptid".
1100
1101 2018-10-04  Tom Tromey  <tom@tromey.com>
1102
1103         * configure: Rebuild.
1104         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1105
1106 2018-10-04  Tom Tromey  <tom@tromey.com>
1107
1108         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1109         declaration of "block".
1110
1111 2018-10-04  Tom Tromey  <tom@tromey.com>
1112
1113         * common/filestuff.c (fdwalk): Remove inner declaration of
1114         "result".
1115
1116 2018-10-04  Tom Tromey  <tom@tromey.com>
1117
1118         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1119         "structs_addr" and hoist declaration.
1120
1121 2018-10-04  Tom Tromey  <tom@tromey.com>
1122
1123         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1124         variable "size".
1125
1126 2018-10-04  Tom Tromey  <tom@tromey.com>
1127
1128         * mdebugread.c (parse_partial_symbols): Use std::string.
1129
1130 2018-10-04  Tom Tromey  <tom@tromey.com>
1131
1132         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1133         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1134         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1135         header.
1136         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1137         more inner scope.
1138         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1139         * varobj.c (varobj_update): Rename inner "newobj",
1140         "type_changed".
1141         * valprint.c (generic_emit_char): Rename inner "buf".
1142         * valops.c (find_overload_match): Rename inner "temp".
1143         (value_struct_elt_for_reference): Declare "v" in more inner
1144         scope.
1145         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1146         * unittests/array-view-selftests.c (run_tests): Rename inner
1147         "vec".
1148         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1149         header.
1150         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1151         "tsv" in more inner scope.
1152         (print_one_static_tracepoint_marker): Rename inner
1153         "tuple_emitter".
1154         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1155         (tic6x_push_dummy_call): Don't redeclare "addr".
1156         * target-float.c: Declare "dto" lower.
1157         * symtab.c (lookup_local_symbol): Rename inner "sym".
1158         (find_pc_sect_line): Rename inner "pc".
1159         * stack.c (print_frame): Don't redeclare "gdbarch".
1160         (return_command): Rename inner "gdbarch".
1161         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1162         "sp".
1163         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1164         header.
1165         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1166         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1167         scope.
1168         * remote.c (remote_target::update_thread_list): Don't redeclare
1169         "tp".
1170         (remote_target::process_initial_stop_replies): Rename inner
1171         "thread".
1172         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1173         (remote_target::wait_as): Don't redeclare "stop_reply".
1174         (remote_target::get_thread_local_address): Rename inner
1175         "result".
1176         (remote_target::get_tib_address): Likewise.
1177
1178         * regcache.c (cooked_read_test): Rename "regnum".
1179         * record-btrace.c (cmd_record_btrace_start): Rename inner
1180         "exception".
1181         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1182         loop header.
1183         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1184         header.
1185         (ppu2spu_sniffer): Rename inner "buf".
1186         * parse.c (operator_check_standard): Rename inner "type",
1187         "objfile".
1188         * p-valprint.c (pascal_val_print): Introduce new scope for
1189         "low_bound", "high_bound".
1190         * p-exp.y (yylex): Declare "i" in loop header.
1191         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1192         Lower declaration of "s".
1193         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1194         header.
1195         (nios2_push_dummy_call): Rename "len".
1196         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1197         "buf".
1198         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1199         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1200         (linux_xfer_osdata_modules): Likewise.
1201         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1202         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1203         (mips_o64_push_dummy_call): Likewise.
1204         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1205         "op".
1206         * mi/mi-main.c (list_available_thread_groups): Rename inner
1207         "tuple_emitter".
1208         (mi_cmd_data_read_memory): Rename inner "opts".
1209         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1210         "tuple_emitter".
1211         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1212         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1213         more inner scope.
1214         (parse_partial_symbols): Rename inner "pst", "p", "name"
1215         * main.c (captured_main_1): Rename inner "i"s.
1216         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1217         "oso2".
1218         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1219         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1220         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1221         (handle_signal_stop): Rename inner "gdbarch".
1222         (handle_command): Declare "signum" in loop header.
1223         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1224         "status".
1225         (examine_prologue): Rename inner "sol" and "sof".
1226         (ia64_extract_return_value): Rename inner "val".  Declare another
1227         "val" in a more inner scope.
1228         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1229         inner scope.
1230         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1231         "except".
1232         * findvar.c (default_read_var_value): Don't redeclare "addr".
1233         * f-exp.y (yylex): Declare "i" in loop header.
1234         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1235         Rename inner "type", "expect_type".
1236         (evaluate_subexp_for_sizeof): Rename inner "pc".
1237         * elfread.c (elf_symfile_read): Rename inner "abfd".
1238         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1239         "bytes_read".
1240         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1241         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1242         (dwarf_decode_line_header): Rename inner "lh".
1243         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1244         "offset".  Declare "i" in loop header.
1245         (disassemble_dwarf_expression): Rename inner "addr_size".
1246         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1247         inner "result".
1248         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1249         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1250         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1251         "inner_list_emitter".
1252         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1253         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1254         declaration in a block.
1255         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1256         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1257         "obstack_final_size".
1258         * cp-support.c (inspect_type): Declare "i" in loop header.
1259         * compile/compile.c (compile_instance::insert_symbol_error):
1260         Rename inner "e".
1261         * common/agent.c (agent_run_command): Remove inner "ret"
1262         declaration.
1263         * coffread.c (coff_symfile_read): Rename inner "name".
1264         (coff_symfile_read): Rename inner "abfd".
1265         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1266         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1267         "high".
1268         * c-exp.y (lex_one_token): Move "len" declaration lower.
1269         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1270         "gdbarch".
1271         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1272         "b".
1273         (watch_command_1): Declare "mark" later.
1274         (clear_command): Don't shadow "a" or "b".
1275         (delete_command): Rename inner "b".
1276         (delete_trace_command): Likewise.
1277         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1278         "op".
1279         (arm_gdbarch_init): Remove inner "e_flags".
1280         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1281         "offset" in inner blocks.
1282
1283 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1284
1285         * dwarf-index-write.c (file_write): Don't write if the vector is
1286         empty.
1287
1288 2018-10-05  Tom de Vries  <tdevries@suse.de>
1289
1290         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1291         PyArg_ParseTuple call.
1292
1293 2018-10-05  Tom de Vries  <tdevries@suse.de>
1294
1295         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1296         PyArg_ParseTuple call.
1297
1298 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1299
1300         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1301         to avoid exceeding 80 characters per line limit.
1302
1303 2018-10-04  Tom Tromey  <tom@tromey.com>
1304
1305         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1306         (reread_symbols): Update.
1307         * complaints.h (clear_complaints): Remove argument.
1308         * complaints.c (enum complaint_series): Remove.
1309         (series): Remove global.
1310         (complaint_internal): Update.
1311         (clear_complaints): Remove argument.
1312
1313 2018-10-04  Tom Tromey  <tom@tromey.com>
1314
1315         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1316         debugging symbols" message if there is a separate debug objfile.
1317
1318 2018-10-04  Tom Tromey  <tom@tromey.com>
1319
1320         PR cli/19551:
1321         * symfile.c (symbol_file_add_with_addrs): Update output.
1322         * psymtab.c (require_partial_symbols): Update output.
1323
1324 2018-10-04  Tom Tromey  <tom@tromey.com>
1325
1326         PR cli/22234:
1327         * complaints.c: Emit \n.
1328
1329 2018-10-04  Tom Tromey  <tom@tromey.com>
1330
1331         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1332         (separate_debug_file_exists, find_separate_debug_file)
1333         (add_symbol_file_command, reread_symbols, allocate_symtab)
1334         (allocate_compunit_symtab): Use filtered printing, not
1335         unfiltered.
1336         * psymtab.c (require_partial_symbols, dump_psymtab)
1337         (allocate_psymtab): Use filtered printing, not unfiltered.
1338
1339 2018-10-04  Tom Tromey  <tom@tromey.com>
1340
1341         * complaints.c (complaint_internal): Correctly check complaint
1342         count.
1343
1344 2018-10-04  Tom Tromey  <tom@tromey.com>
1345
1346         * complaints.h (struct complaints): Remove declaration.
1347         * complaints.c (clear_complaints): Remove an unused variable.
1348
1349 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1350
1351         * MAINTAINERS (Write After Approval): Add self.
1352
1353 2018-10-03  Tom Tromey  <tom@tromey.com>
1354
1355         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1356         "buffer_contents".
1357         * coffread.c (coff_symtab_read): Initialize "newobj".
1358
1359 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1360
1361         * dwarf2read.c (read_func_scope): Remove struct keyword in
1362         range-based for.
1363
1364 2018-10-03  Tom Tromey  <tom@tromey.com>
1365
1366         * README: Mention --enable-ubsan.
1367         * NEWS: Mention --enable-ubsan.
1368         * acinclude.m4: Include sanitize.m4.
1369         * configure: Rebuild.
1370         * configure.ac: Call AM_GDB_UBSAN.
1371         * sanitize.m4: New file.
1372
1373 2018-10-03  Tom Tromey  <tom@tromey.com>
1374
1375         * expression.h (enum exp_opcode): Use uint8_t as base type.
1376         * expprint.c (op_name): Handle invalid opcodes.
1377
1378 2018-10-03  Tom Tromey  <tom@tromey.com>
1379
1380         * parse.c (prefixify_expression): Add assert.
1381         (parse_exp_in_context_1): Throw exception if the expression is
1382         empty.
1383
1384 2018-10-03  Tom Tromey  <tom@tromey.com>
1385
1386         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1387
1388 2018-10-03  Tom Tromey  <tom@tromey.com>
1389
1390         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1391
1392 2018-10-03  Tom Tromey  <tom@tromey.com>
1393
1394         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1395         unsigned.
1396
1397 2018-10-03  Tom Tromey  <tom@tromey.com>
1398
1399         * findvar.c (extract_integer): Do work in an unsigned type.
1400
1401 2018-10-03  Tom Tromey  <tom@tromey.com>
1402
1403         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1404         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1405         base type.
1406         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1407         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1408         type.
1409         * c-lang.h (enum c_string_type_values): Use unsigned as base
1410         type.
1411         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1412
1413 2018-10-03  Tom Tromey  <tom@tromey.com>
1414
1415         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1416         <~dwarf2_frame_state_reg_info>: Update.
1417         <dwarf2_frame_state_reg_info>: Update.
1418         <alloc_regs>: Add assertion.  Update.
1419         <reg>: Now a std::vector.
1420         <num_regs>: Remove.
1421         <swap>: Update.
1422         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1423         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1424
1425 2018-10-03  Tom Tromey  <tom@tromey.com>
1426
1427         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1428
1429 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1430
1431         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1432
1433 2018-10-02  Tom Tromey  <tom@tromey.com>
1434
1435         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1436
1437 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1438
1439         * NEWS: Mention changed commands.
1440         * ser-uds.c: New file.
1441         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1442         * configure: Regenerate.
1443         * Makefile.in: Add new file.
1444         * serial.c (serial_open): Check if filename is a socket
1445           and lookup the appropriate interface accordingly.
1446
1447 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1448
1449         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1450         define.
1451         (AARCH64_EXTRA_MAGIC): Likewise.
1452         (AARCH64_FPSIMD_MAGIC): Likewise.
1453         (AARCH64_SVE_MAGIC): Likewise.
1454         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1455         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1456         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1457         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1458         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1459         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1460         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1461         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1462         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1463         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1464         (read_aarch64_ctx): Add function.
1465         (aarch64_linux_sigframe_init): Detect FP registers.
1466
1467 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1468
1469         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1470         (AARCH64_D0_REGNUM): Likewise.
1471         (AARCH64_S0_REGNUM): Likewise.
1472         (AARCH64_H0_REGNUM): Likewise.
1473         (AARCH64_B0_REGNUM): Likewise.
1474         (AARCH64_SVE_V0_REGNUM): Likewise.
1475         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1476         (AARCH64_D0_REGNUM): Likewise.
1477         (AARCH64_S0_REGNUM): Likewise.
1478         (AARCH64_H0_REGNUM): Likewise.
1479         (AARCH64_B0_REGNUM): Likewise.
1480         (AARCH64_SVE_V0_REGNUM): Likewise.
1481
1482 2018-10-01  Gary Benson <gbenson@redhat.com>
1483
1484         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1485         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1486         prfpregset_t instead of gdb_prfpregset_t.
1487         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1488         * configure, config.in: Rebuild.
1489
1490 2018-10-01  Gary Benson <gbenson@redhat.com>
1491
1492         * common/gdb_proc_service.h: New file, factored out from...
1493         * gdb_proc_service.h: Moved common code to the above file.
1494         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1495
1496 2018-10-01  Gary Benson <gbenson@redhat.com>
1497
1498         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1499         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1500
1501 2018-10-01  Gary Benson <gbenson@redhat.com>
1502
1503         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1504         (AC_CHECK_HEADERS): Check for linux/elf.h.
1505         * configure, config.in: Rebuild.
1506         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1507         doesn't define elf_fpregset_t.
1508
1509 2018-10-01  Gary Benson <gbenson@redhat.com>
1510
1511         * gdb_proc_service.h: Whitespace change.
1512
1513 2018-10-01  Tom Tromey  <tom@tromey.com>
1514
1515         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1516         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1517         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1518
1519 2018-10-01  Tom Tromey  <tom@tromey.com>
1520
1521         * README: Minor change.
1522
1523 2018-09-30  Pedro Alves  <palves@redhat.com>
1524
1525         * darwin-nat-info.c (darwin_debug_regions_recurse)
1526         (info_mach_exceptions_command): Remove unused local variables.
1527         * darwin-nat.c (darwin_decode_notify_message)
1528         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1529         (darwin_stop_inferior, darwin_setup_exceptions)
1530         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1531         (darwin_nat_target::attach, darwin_nat_target::detach)
1532         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1533         local variables.
1534         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1535         variables.
1536
1537 2018-09-29  Tom Tromey  <tom@tromey.com>
1538
1539         * README: Remove some leftover text.
1540
1541 2018-09-29  Tom Tromey  <tom@tromey.com>
1542
1543         * PROBLEMS: Rewrite.
1544         * README: Update.
1545
1546 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1547
1548         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1549         case with explicit breakpoint kind.
1550         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1551         'additional_info' and related logic.
1552         (riscv_debug_breakpoints): New variable.
1553         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1554         instruction to determine the breakpoint kind.
1555         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1556         flag.  Update description of 'set/show riscv
1557         use-compressed-breakpoints' flag.
1558
1559 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1560
1561         (NEWS): Mention changes to frame related commands.
1562         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1563         (add_prefix_cmd_suppress_notification): New function.
1564         (add_com_suppress_notification): Call
1565         add_cmd_suppress_notification.
1566         * command.h (add_cmd_suppress_notification): Declare.
1567         (add_prefix_cmd_suppress_notification): Declare.
1568         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1569         (parse_frame_specification): Moved from stack.c, with
1570         simplification to handle a single argument.
1571         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1572         switch to the selected frame.  Add a header comment.
1573         * stack.c: Remove 'safe-ctype.h' include.
1574         (find_frame_for_function): Add declaration.
1575         (find_frame_for_address): New function.
1576         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1577         (frame_selection_by_function_completer): New function.
1578         (info_frame_command): Rename to...
1579         (info_frame_command_core): ...this, and update parameter types.
1580         (select_frame_command): Rename to...
1581         (select_frame_command_core): ...this, and update parameter types.
1582         (frame_command): Rename to...
1583         (frame_command_core): ...this, and update parameter types.
1584         (class frame_command_helper): New class to wrap implementations of
1585         frame related sub-commands.
1586         (frame_apply_cmd_list): New static global.
1587         (frame_cmd_list): Make static.
1588         (select_frame_cmd_list): New global for sub-commands.
1589         (info_frame_cmd_list): New global for sub-commands.
1590         (_initialize_stack): Register sub-commands for 'frame',
1591         'select-frame', and 'info frame'.  Update 'frame apply' commands
1592         to use frame_apply_cmd_list.  Move function local static
1593         frame_apply_list to file static frame_apply_cmd_list for
1594         consistency.
1595         * stack.h (select_frame_command): Delete declarationn.
1596         (select_frame_for_mi): Declare new function.
1597
1598 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1599
1600         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1601         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1602         and NOP.
1603
1604 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1605
1606         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1607
1608 2018-09-26  Tom Tromey  <tom@tromey.com>
1609
1610         * valops.c (auto_abandon): Remove dead code.
1611
1612 2018-09-26  Tom Tromey  <tom@tromey.com>
1613
1614         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1615
1616 2018-09-24  Tom Tromey  <tom@tromey.com>
1617
1618         * common/pathstuff.c (get_standard_cache_dir): Make
1619         "xdg_cache_home" and "home" const.
1620         * top.c (init_history): Make "tmpenv" const.
1621         * main.c (get_init_files): Make "homedir" const.
1622
1623 2018-09-23  Tom Tromey  <tom@tromey.com>
1624
1625         PR python/18852:
1626         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1627
1628 2018-09-23  Tom Tromey  <tom@tromey.com>
1629
1630         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1631         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1632         * python/python-internal.h (gdbpy_handle_exception): Declare.
1633         * python/py-utils.c (gdbpy_handle_exception): New function.
1634
1635 2018-09-23  Tom Tromey  <tom@tromey.com>
1636
1637         PR python/17284:
1638         * python/py-type.c (typy_template_argument): Check for negative
1639         argument number.
1640
1641 2018-09-23  Tom Tromey  <tom@tromey.com>
1642
1643         PR python/14062:
1644         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1645
1646 2018-09-23  Tom Tromey  <tom@tromey.com>
1647
1648         PR python/18170:
1649         * python/py-value.c (valpy_int): Allow conversion from pointer
1650         type.
1651
1652 2018-09-23  Tom Tromey  <tom@tromey.com>
1653
1654         PR python/20126:
1655         * python/py-value.c (valpy_int): Respect type sign.
1656
1657 2018-09-23  Tom Tromey  <tom@tromey.com>
1658
1659         PR python/18352;
1660         * python/py-value.c (valpy_float): Allow conversions from int or
1661         char.
1662         (valpy_int, valpy_long): Allow conversions from float.
1663
1664 2018-09-23  Tom Tromey  <tom@tromey.com>
1665
1666         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1667         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1668
1669 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1670
1671         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1672         __sighndlr.
1673         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1674
1675 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1676
1677         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1678         target_terminal::ours().
1679
1680 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1681
1682         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1683         of vl to ULONGEST.
1684
1685 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1686
1687         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1688         redundant condition.
1689
1690 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1691
1692         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1693
1694         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1695         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1696         * sol-thread.c (ps_pdmodel): Don't guard definition.
1697
1698         * procfs.c: Fix formatting.
1699
1700         * procfs.c (sysset_t_alloc): Remove.
1701         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1702         (procfs_debug_inferior): Likewise.
1703         (procfs_set_exec_trap): Likewise.
1704         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1705         (proc_set_traced_sysexit): Likewise.
1706
1707         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1708         (dead_procinfo): Likewise.
1709         (proc_warn): Likewise.
1710         (proc_error): Likewise.
1711         (proc_get_LDT_entry): Likewise.
1712         (do_attach): Likewise.
1713         (procfs_target::pid_to_str): Likewise.
1714         (iterate_over_mappings): Likewise.
1715
1716         * procfs.c (create_procinfo): Fix ARI warning.
1717         (proc_get_status): Likewise.
1718         (proc_stop_process): Likewise.
1719         (proc_run_process): Likewise.
1720         (proc_kill): Likewise.
1721         (proc_get_LDT_entry): Likewise.
1722         (procfs_find_LDT_entry): Likewise.
1723         (proc_update_threads): Likewise.
1724         (proc_iterate_over_threads): Likewise.
1725         (do_attach): Likewise.
1726         (procfs_xfer_memory): Likewise.
1727         (invalidate_cache): Likewise.
1728         (procfs_target::resume): Likewise.
1729         (procfs_init_inferior): Likewise.
1730         (procfs_set_exec_trap): Likewise.
1731         (procfs_target::thread_alive): Likewise.
1732         (procfs_target::pid_to_exec_file): Likewise.
1733         (iterate_over_mappings): Likewise.
1734         (procfs_target::make_corefile_notes): Likewise.
1735         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1736
1737         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1738         (procfs_find_LDT_entry): Likewise.
1739         * sol-thread.c (ps_lgetLDT): Likewise.
1740
1741 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1742
1743         PR tdep/17903
1744         * procfs.c (procfs_target): Declare pid_to_exec_file.
1745         (procfs_target::pid_to_exec_file): New.
1746
1747 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1748
1749         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1750         renaming.
1751         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1752         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1753
1754 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1755
1756         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1757         (supply_fpregset, fill_fpregset): Move ...
1758         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1759         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1760         Remove references to ioctl-based procfs.
1761         Include <sys/reg.h>.
1762         Remove PR_MODEL_NATIVE guards.
1763         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1764         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1765
1766 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1767
1768         PR gdb/20981:
1769         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1770         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1771         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1772
1773 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1774
1775         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1776         (fbsd_print_sockaddr_in6): Likewise.
1777
1778 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1779             Chris January  <chris.january@arm.com>
1780
1781         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1782         (evaluate_subexp_standard): Return a dummy type when
1783         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1784         OP_F77_UNDETERMINED_ARGLIST case.
1785         * expression.h (enum noside): Update comment.
1786
1787 2018-09-19  George Vasick <george.vasick@oracle.com>
1788
1789         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1790
1791 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1792             April Chin <april.chin@oracle.com>
1793             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1794
1795         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1796         uint_t lwpid_t.
1797         (create_procinfo): Print pids in /proc without leading zeros.
1798
1799 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1800
1801         * nios2-tdep.c (nios2_gcc_target_options): New.
1802         (nios2_gdb_arch_init): Install new hook.
1803
1804 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1805
1806         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1807         New file.
1808         * update-gnulib.sh: Apply patch.
1809         * configure: Re-generate.
1810
1811 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1812
1813         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1814         description.  Make "info proc" command descriptions more
1815         consistent.
1816
1817 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1818
1819         * NEWS: Mention 'info proc files' command.
1820
1821 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1822
1823         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1824         descriptors for IP_FILES and IP_ALL.
1825
1826 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1827
1828         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1829         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1830         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1831         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1832         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1833         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1834         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1835         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1836         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1837         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1838         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1839         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1840         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1841         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1842         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1843         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1844         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1845         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1846         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1847         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1848         (struct fbsd_sockaddr_un): New types.
1849         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1850         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1851         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1852         (fbsd_core_info_proc_files): New functions.
1853         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1854         IP_ALL.
1855         * fbsd-tdep.h (fbsd_info_proc_files_header)
1856         (fbsd_info_proc_files_entry): New.
1857
1858 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1859
1860         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1861         * infcmd.c (info_proc_cmd_files): New function.
1862         (_initialize_infcmd): Register 'info proc files' command.
1863
1864 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1865
1866         * gnulib/aclocal-m4-deps.mk: Re-generate.
1867         * gnulib/aclocal.m4: Re-generate.
1868         * gnulib/config.in: Re-generate.
1869         * gnulib/configure: Re-generate.
1870         * gnulib/import/Makefile.am: Re-generate.
1871         * gnulib/import/Makefile.in: Re-generate.
1872         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1873         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1874         * gnulib/import/arpa_inet.in.h: New file.
1875         * gnulib/import/inet_ntop.c: New file.
1876         * gnulib/import/m4/arpa_inet_h.m4: New file.
1877         * gnulib/import/m4/inet_ntop.m4: New file.
1878         * gnulib/import/m4/netinet_in_h.m4: New file.
1879         * gnulib/import/m4/socklen.m4: New file.
1880         * gnulib/import/m4/sockpfaf.m4: New file.
1881         * gnulib/import/m4/stdalign.m4: New file.
1882         * gnulib/import/m4/sys_uio_h.m4: New file.
1883         * gnulib/import/netinet_in.in.h: New file.
1884         * gnulib/import/stdalign.in.h: New file.
1885         * gnulib/import/sys_socket.c: New file.
1886         * gnulib/import/sys_socket.in.h: New file.
1887         * gnulib/import/sys_uio.in.h: New file.
1888         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1889         module.
1890
1891 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1892
1893         * gnulib/aclocal-m4-deps.mk: New file.
1894         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1895         deterministically.
1896
1897 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1898
1899         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1900         KVE_PATH.
1901
1902 2018-09-18  Tom Tromey  <tom@tromey.com>
1903
1904         * compile/compile-object-load.c (struct
1905         link_hash_table_cleanup_data): Add constructor and destructor.
1906         Use DISABLE_COPY_AND_ASSIGN.
1907         (~link_hash_table_cleanup_data): Rename from
1908         link_hash_table_free.  Now a destructor.
1909         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1910
1911 2018-09-18  Tom Tromey  <tom@tromey.com>
1912
1913         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1914         * compile/compile-object-load.c (struct munmap_list): Move to
1915         header file.
1916         (munmap_list::add): Rename from munmap_list_add; rewrite.
1917         (munmap_list::~munmap_list): Rename from munmap_list_free.
1918         (munmap_listp_free_cleanup): Remove.
1919         (compile_object_load): Update.
1920         * compile/compile-object-load.h (struct munmap_list): Move from
1921         compile-object-load.c.  Rewrite.
1922
1923 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1924
1925         * aarch64-tdep.c (pass_in_v): Use register size.
1926         (aarch64_extract_return_value): Likewise.
1927         (aarch64_store_return_value): Likewise.
1928
1929 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1930
1931         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1932         rlim_t.
1933
1934 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1935
1936         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1937         Fix short help line.
1938
1939 2018-09-17  Tom Tromey  <tom@tromey.com>
1940
1941         PR python/20445:
1942         * configure: Rebuild.
1943         * configure.ac: Conditionally use -DNDEBUG for Python.
1944
1945 2018-09-17  Tom Tromey  <tom@tromey.com>
1946
1947         * configure: Rebuild.
1948         * configure.ac: Use gmp as a library dependency when checking for
1949         mpfr.
1950
1951 2018-09-17  Pedro Alves  <palves@redhat.com>
1952
1953         * python/py-inferior.c (find_inferior_object): Delete.
1954
1955 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1956
1957         * compile/compile-cplus-types.c
1958         (compile_cplus_instance::enter_scope): Don't use new_scope after
1959         std::move.
1960
1961 2018-09-17  Tom Tromey  <tom@tromey.com>
1962
1963         * common/pathstuff.c (get_standard_cache_dir): Use
1964         ~/Library/Caches on macOS.
1965         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1966
1967 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1968
1969         PR python/23669
1970         * breakpoint.c (commands_cmd_element): New.
1971         (_initialize_breakpoint): Assign commands_cmd_element.
1972         * breakpoint.h (commands_cmd_element): New.
1973         * cli/cli-script.c (while_cmd_element, if_command,
1974         define_cmd_element): New.
1975         (command_name_equals): Remove.
1976         (process_next_line): Compare commands by pointer, not by name.
1977         (_initialize_cli_script): Assign the various cmd_list_element
1978         variables.
1979         * compile/compile.c (compile_cmd_element): New.
1980         (_initialize_compile): Assign compile_cmd_element.
1981         * compile/compile.h (compile_cmd_element): New.
1982         * guile/guile.c (guile_cmd_element): New.
1983         (install_gdb_commands): Assign guile_cmd_element.
1984         * guile/guile.h (guile_cmd_element): New.
1985         * python/python.c (python_cmd_element): New.
1986         (_initialize_python): Assign python_cmd_element.
1987         * python/python.h (python_cmd_element): New.
1988         * tracepoint.c (while_stepping_cmd_element): New.
1989         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1990         * tracepoint.h (while_stepping_cmd_element): New.
1991
1992 2018-09-17  Tom Tromey  <tom@tromey.com>
1993
1994         * infrun.c (save_infcall_suspend_state): Return
1995         infcall_suspend_state_up.
1996         (save_infcall_control_state): Return infcall_control_state_up.
1997         * inferior.h (save_infcall_suspend_state)
1998         (save_infcall_control_state): Declare later.  Return unique
1999         pointers.
2000
2001 2018-09-17  Tom Tromey  <tom@tromey.com>
2002
2003         * infrun.c (struct stop_context): Declare constructor,
2004         destructor, "changed" method.
2005         (stop_context::stop_context): Rename from save_stop_context.
2006         (stop_context::~stop_context): Rename from
2007         release_stop_context_cleanup.
2008         (normal_stop): Update.
2009         (stop_context::changed): Rename from stop_context_changed.  Return
2010         bool.
2011
2012 2018-09-17  Tom Tromey  <tom@tromey.com>
2013
2014         * inferior.h (struct infcall_suspend_state_deleter): New.
2015         (infcall_suspend_state_up): New typedef.
2016         (struct infcall_control_state_deleter): New.
2017         (infcall_control_state_up): New typedef.
2018         (make_cleanup_restore_infcall_suspend_state)
2019         (make_cleanup_restore_infcall_control_state): Don't declare.
2020         * infcall.c (call_function_by_hand_dummy): Update.
2021         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2022         (make_cleanup_restore_infcall_suspend_state): Remove.
2023         (do_restore_infcall_control_state_cleanup)
2024         (make_cleanup_restore_infcall_control_state): Remove.
2025
2026 2018-09-17  Tom Tromey  <tom@tromey.com>
2027
2028         * gdbthread.h (struct thread_control_state): Add initializer.
2029         (class thread_info) <control>: Remove initializer.
2030         * inferior.h (struct inferior_control_state): Add initializer.
2031         (class inferior) <control>: Remove initializer.
2032         (exit_inferior_1): Update.
2033         * infrun.c (struct infcall_control_state): Add constructors.
2034         (save_infcall_control_state): Use new.
2035         (restore_infcall_control_state, discard_infcall_control_state):
2036         Use delete.
2037
2038 2018-09-17  Tom Tromey  <tom@tromey.com>
2039
2040         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2041         unique_ptr.
2042         <siginfo_data>: Now a unique_xmalloc_ptr.
2043         (save_infcall_suspend_state, restore_infcall_suspend_state)
2044         (discard_infcall_suspend_state)
2045         (get_infcall_suspend_state_regcache): Update.
2046
2047 2018-09-17  Tom Tromey  <tom@tromey.com>
2048
2049         * gdbthread.h (struct thread_suspend_state): Add initializers.
2050         (class thread_info) <suspend>: Remove initializer.
2051         * infrun.c (struct infcall_suspend_state): Add initializers.
2052         (save_infcall_suspend_state): Use new.
2053         (discard_infcall_suspend_state): Use delete.
2054
2055 2018-09-16  Tom Tromey  <tom@tromey.com>
2056
2057         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2058         Remove.
2059         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2060         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2061         (py_varobj_iter_new): Likewise.
2062         (py_varobj_get_iterator): Use gdbpy_ref.
2063
2064 2018-09-16  Tom Tromey  <tom@tromey.com>
2065
2066         * python/py-threadevent.c (py_get_event_thread): Simplify.
2067         * python/py-inferior.c (infpy_thread_from_thread_handle):
2068         Return immediately after calling thread_to_thread_object.  Use
2069         Py_RETURN_NONE.
2070         (thread_to_thread_object): Set the exception on a NULL return.
2071
2072 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2073
2074         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2075
2076 2018-09-16  Tom Tromey  <tom@tromey.com>
2077
2078         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2079         Remove.
2080
2081 2018-09-16  Tom Tromey  <tom@tromey.com>
2082
2083         * python/python-internal.h (thread_to_thread_object): Change
2084         return type.
2085         * python/py-inferior.c (thread_to_thread_object): Return a new
2086         reference.
2087         (infpy_thread_from_thread_handle): Update.
2088         * python/py-infthread.c (gdbpy_selected_thread): Update.
2089         * python/py-stopevent.c (create_stop_event_object): Update.
2090         * python/py-threadevent.c (py_get_event_thread): Return a new
2091         reference.
2092         (py_get_event_thread): Update.
2093         * python/py-event.h (py_get_event_thread): Change return type.
2094         * python/py-continueevent.c (create_continue_event_object):
2095         Update.
2096
2097 2018-09-16  Tom Tromey  <tom@tromey.com>
2098
2099         * python/py-progspace.c (pspy_get_objfiles): Update.
2100         * python/python-internal.h (objfile_to_objfile_object): Change
2101         return type.
2102         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2103         Update.
2104         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2105         Update.
2106         * python/python.c (gdbpy_get_current_objfile): Update.
2107         (gdbpy_objfiles): Update.
2108         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2109         Update.
2110         (objfile_to_objfile_object): Return a new reference.
2111         * python/py-symtab.c (stpy_get_objfile): Update.
2112         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2113         Update.
2114
2115 2018-09-16  Tom Tromey  <tom@tromey.com>
2116
2117         * python/py-inferior.c (infpy_get_progspace): Update.
2118         * python/python-internal.h (pspace_to_pspace_object): Change
2119         return type.
2120         * python/py-newobjfileevent.c
2121         (create_clear_objfiles_event_object): Update.
2122         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2123         Update.
2124         * python/python.c (gdbpy_get_current_progspace): Update.
2125         (gdbpy_progspaces): Update.
2126         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2127         reference.
2128         * python/py-objfile.c (objfpy_get_progspace): Update.
2129         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2130         Update.
2131
2132 2018-09-16  Tom Tromey  <tom@tromey.com>
2133
2134         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2135         (solib_name, block_for_pc, find_pc_line): New functions.
2136         (execute_unwinders): Update.
2137         * python/py-block.c (gdbpy_block_for_pc): Remove.
2138         * python/py-inferior.c (infpy_get_progspace): New function.
2139         (inferior_object_getset) <progspace>: Add.
2140         * python/py-progspace.c (pspy_objfiles): Rewrite.
2141         (pspy_solib_name, pspy_block_for_pc)
2142         (pspy_find_pc_line, pspy_is_valid): New functions.
2143         (progspace_object_methods): Add entries for solib_name,
2144         block_for_pc, find_pc_line, is_valid.
2145         * python/python-internal.h (gdbpy_block_for_pc)
2146         (build_objfiles_list): Don't declare.
2147         * python/python.c: Don't include solib.h.
2148         (gdbpy_solib_name, gdbpy_find_pc_line)
2149         (gdbpy_get_current_progspace, build_objfiles_list)
2150         (gdbpy_objfiles): Remove.
2151         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2152         solib_name, find_pc_line>: Remove entries.
2153
2154 2018-09-16  Tom Tromey  <tom@tromey.com>
2155
2156         * top.c (new_ui_command): Use GNU style for metasyntactic
2157         variables.
2158         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2159         variables.
2160         * maint.c (maintenance_translate_address): Remove "<>" around
2161         text.
2162         * interps.c (interpreter_exec_cmd): Use GNU style for
2163         metasyntactic variables.
2164         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2165         metasyntactic variables.
2166         * tracepoint.c (tfind_range_command): Use GNU style for
2167         metasyntactic variables.
2168         (tfind_outside_command): Likewise.
2169         (_initialize_tracepoint): Likewise.
2170         * remote.c (extended_remote_target::create_inferior): Use GNU
2171         style for metasyntactic variables.
2172         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2173         metasyntactic variables.
2174         (adi_assign_command): Likewise.
2175
2176 2018-09-16  Tom Tromey  <tom@tromey.com>
2177
2178         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2179         metasyntactic variables.  Print message if no disassembler options
2180         are available.
2181
2182 2018-09-15  Tom Tromey  <tom@tromey.com>
2183
2184         * infcmd.c (get_inferior_args): Return const char *.
2185         * inferior.h (get_inferior_args): Return type now const.
2186         * linux-tdep.c (linux_fill_prpsinfo): Update.
2187         * procfs.c (procfs_target::make_corefile_notes): Update.
2188
2189 2018-09-07  Tom Tromey  <tom@tromey.com>
2190
2191         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2192         inside the TRY.
2193
2194 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2195
2196         * nios2-tdep.c (nios2_type_align): New.
2197         (nios2_gdb_arch_init): Install type_align hook.
2198
2199 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2200
2201         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2202         type that is neither object file owned, nor gdbarch owned.
2203         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2204         gdbarch is non-NULL.
2205         (alloc_type_instance): Allocate non-objfile owned types on the
2206         gdbarch obstack.
2207         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2208         using TYPE_ALLOC to ensure memory is allocated on the correct
2209         obstack.
2210         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2211         obstack, or the gdbarch obstack.
2212         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2213
2214 2018-09-14  Tom Tromey  <tom@tromey.com>
2215
2216         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2217         block.
2218
2219 2018-09-14  Tom Tromey  <tom@tromey.com>
2220
2221         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2222
2223 2018-09-13  Tom Tromey  <tom@tromey.com>
2224
2225         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2226         static.
2227
2228 2018-09-13  Tom Tromey  <tom@tromey.com>
2229
2230         * exec.c (try_open_exec_file): Use std::string.
2231
2232 2018-09-13  Tom Tromey  <tom@tromey.com>
2233
2234         * utils.h (gdb_bfd_errmsg): Return std::string.
2235         * exec.c (exec_file_attach): Update.
2236         * compile/compile-object-load.c (compile_object_load): Update.
2237         * utils.c (gdb_bfd_errmsg): Return std::string.
2238
2239 2018-09-13  Tom Tromey  <tom@tromey.com>
2240
2241         * procfs.c (struct procinfo_deleter): New.
2242         (procinfo_up): New typedef.
2243         (do_destroy_procinfo_cleanup): Remove.
2244         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2245
2246 2018-09-13  Tom Tromey  <tom@tromey.com>
2247
2248         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2249
2250 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2251 2018-09-13  Tom Tromey  <tom@tromey.com>
2252
2253         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2254         (pspy_get_objfiles): New function.
2255         (progspace_object_methods): New.
2256         (pspace_object_type): Add tp_methods callback.
2257         * python/python-internal.h (build_objfiles_list): New
2258         declaration.
2259         * python/python.c (build_objfiles_list): New function.
2260         (gdbpy_objfiles): Implement using build_objfiles_list.
2261         * NEWS: Mention the Progspace.objfiles method.
2262
2263 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2264
2265         * python/py-inferior.c (infpy_get_progspace): New function.
2266         (inferior_object_getset): Add progspace property.
2267         * NEWS: Mention the new property.
2268
2269 2018-09-13  Tom Tromey  <tom@tromey.com>
2270
2271         PR rust/23650:
2272         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2273
2274 2018-09-13  Tom Tromey  <tom@tromey.com>
2275
2276         PR rust/23626:
2277         * rust-lang.c (rust_enum_variant): Now static.
2278         (rust_empty_enum_p): New function.
2279         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2280         Handle empty enum.
2281
2282 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2283
2284         * python/py-inferior.c (infpy_repr): New.
2285         (inferior_object_type): Register infpy_repr.
2286         * python/py-objfile.c (objfpy_repr): New.
2287         (objfile_object_type): Register objfpy_repr.
2288
2289 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2290
2291         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2292
2293 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2294
2295         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2296         typo.
2297
2298 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2299
2300         * common/common-utils.c: Don't include '<sys/stat.h>'.
2301         (is_regular_file): Move to...
2302         * common/filestuff.c (is_regular_file): ... here.
2303         * common/common-utils.h (is_regular_file): Move to...
2304         * common/filestuff.h (is_regular_file): ... here.
2305
2306 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2307
2308         * skip.c (debug_skip): New variable.
2309         (skiplist_entry::do_skip_file_p): Add debug output.
2310         (skiplist_entry::do_skip_gfile_p): Likewise.
2311         (skiplist_entry::skip_function_p): Likewise.
2312         (_initialize_step_skip): Create debug command.
2313         * NEWS: Mention set/show debug skip.
2314
2315 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2316
2317         * darwin-nat.c (should_disable_startup_with_shell):
2318         New function.
2319         (darwin_nat_target::create_inferior): Add call.
2320
2321 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2322
2323         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2324         inf_port, msg_state>: Initialize.
2325         (struct darwin_thread_info) <signaled, single_step>: Change
2326         type and initialize.
2327         (struct darwin_thread_info) <event>: Initialize.
2328
2329 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2330
2331         PR gdb/23555
2332         PR gdb/23558
2333         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2334         guesses.
2335
2336 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2337
2338         Revert:
2339         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2340
2341         PR gdb/23555
2342         PR gdb/23558
2343         * gnulib/aclocal.m4: Regenerate.
2344         * gnulib/config.in: Regenerate.
2345         * gnulib/configure: Regenerate.
2346         * gnulib/import/Makefile.am: Update.
2347         * gnulib/import/Makefile.in: Update.
2348         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2349         * gnulib/import/_Noreturn.h: ... this.
2350         * gnulib/import/alloca.in.h: Update.
2351         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2352         * gnulib/import/arg-nonnull.h: ... this.
2353         * gnulib/import/assure.h: Update.
2354         * gnulib/import/at-func.c: Update.
2355         * gnulib/import/basename-lgpl.c: Update.
2356         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2357         * gnulib/import/c++defs.h: ... this.
2358         * gnulib/import/canonicalize-lgpl.c: Update.
2359         * gnulib/import/cdefs.h: Update.
2360         * gnulib/import/chdir-long.c: Update.
2361         * gnulib/import/chdir-long.h: Update.
2362         * gnulib/import/cloexec.c: Update.
2363         * gnulib/import/cloexec.h: Update.
2364         * gnulib/import/close.c: Update.
2365         * gnulib/import/closedir.c: Update.
2366         * gnulib/import/config.charset: Update.
2367         * gnulib/import/dirent-private.h: Update.
2368         * gnulib/import/dirent.in.h: Update.
2369         * gnulib/import/dirfd.c: Update.
2370         * gnulib/import/dirname-lgpl.c: Update.
2371         * gnulib/import/dirname.h: Update.
2372         * gnulib/import/dosname.h: Update.
2373         * gnulib/import/dup-safer-flag.c: Update.
2374         * gnulib/import/dup-safer.c: Update.
2375         * gnulib/import/dup.c: Update.
2376         * gnulib/import/dup2.c: Update.
2377         * gnulib/import/errno.in.h: Update.
2378         * gnulib/import/error.c: Update.
2379         * gnulib/import/error.h: Update.
2380         * gnulib/import/exitfail.c: Update.
2381         * gnulib/import/exitfail.h: Update.
2382         * gnulib/import/extra/update-copyright: Update.
2383         * gnulib/import/fchdir.c: Update.
2384         * gnulib/import/fcntl.c: Update.
2385         * gnulib/import/fcntl.in.h: Update.
2386         * gnulib/import/fd-hook.c: Update.
2387         * gnulib/import/fd-hook.h: Update.
2388         * gnulib/import/fd-safer-flag.c: Update.
2389         * gnulib/import/fd-safer.c: Update.
2390         * gnulib/import/fdopendir.c: Update.
2391         * gnulib/import/filename.h: Update.
2392         * gnulib/import/filenamecat-lgpl.c: Update.
2393         * gnulib/import/filenamecat.h: Update.
2394         * gnulib/import/flexmember.h: Update.
2395         * gnulib/import/float+.h: Update.
2396         * gnulib/import/float.c: Update.
2397         * gnulib/import/float.in.h: Update.
2398         * gnulib/import/fnmatch.c: Update.
2399         * gnulib/import/fnmatch.in.h: Update.
2400         * gnulib/import/fnmatch_loop.c: Update.
2401         * gnulib/import/fpucw.h: Update.
2402         * gnulib/import/frexp.c: Update.
2403         * gnulib/import/frexpl.c: Update.
2404         * gnulib/import/fstat.c: Update.
2405         * gnulib/import/fstatat.c: Update.
2406         * gnulib/import/getcwd-lgpl.c: Update.
2407         * gnulib/import/getcwd.c: Update.
2408         * gnulib/import/getdtablesize.c: Update.
2409         * gnulib/import/getlogin_r.c: Update.
2410         * gnulib/import/getprogname.c: Update.
2411         * gnulib/import/getprogname.h: Update.
2412         * gnulib/import/gettext.h: Update.
2413         * gnulib/import/gettimeofday.c: Update.
2414         * gnulib/import/glob-libc.h: Update.
2415         * gnulib/import/glob.c: Update.
2416         * gnulib/import/glob.in.h: Update.
2417         * gnulib/import/glob_internal.h: Update.
2418         * gnulib/import/glob_pattern_p.c: Update.
2419         * gnulib/import/globfree.c: Update.
2420         * gnulib/import/hard-locale.c: Update.
2421         * gnulib/import/hard-locale.h: Update.
2422         * gnulib/import/intprops.h: Update.
2423         * gnulib/import/inttypes.in.h: Update.
2424         * gnulib/import/isnan.c: Update.
2425         * gnulib/import/isnand-nolibm.h: Update.
2426         * gnulib/import/isnand.c: Update.
2427         * gnulib/import/isnanl-nolibm.h: Update.
2428         * gnulib/import/isnanl.c: Update.
2429         * gnulib/import/itold.c: Update.
2430         * gnulib/import/libc-config.h: Update.
2431         * gnulib/import/limits.in.h: Update.
2432         * gnulib/import/localcharset.c: Update.
2433         * gnulib/import/localcharset.h: Update.
2434         * gnulib/import/localtime-buffer.c: Update.
2435         * gnulib/import/localtime-buffer.h: Update.
2436         * gnulib/import/lstat.c: Update.
2437         * gnulib/import/m4/00gnulib.m4: Update.
2438         * gnulib/import/m4/__inline.m4: Update.
2439         * gnulib/import/m4/absolute-header.m4: Update.
2440         * gnulib/import/m4/alloca.m4: Update.
2441         * gnulib/import/m4/builtin-expect.m4: Update.
2442         * gnulib/import/m4/canonicalize.m4: Update.
2443         * gnulib/import/m4/chdir-long.m4: Update.
2444         * gnulib/import/m4/close.m4: Update.
2445         * gnulib/import/m4/closedir.m4: Update.
2446         * gnulib/import/m4/configmake.m4: Update.
2447         * gnulib/import/m4/d-ino.m4: Update.
2448         * gnulib/import/m4/d-type.m4: Update.
2449         * gnulib/import/m4/dirent_h.m4: Update.
2450         * gnulib/import/m4/dirfd.m4: Update.
2451         * gnulib/import/m4/dirname.m4: Update.
2452         * gnulib/import/m4/double-slash-root.m4: Update.
2453         * gnulib/import/m4/dup.m4: Update.
2454         * gnulib/import/m4/dup2.m4: Update.
2455         * gnulib/import/m4/eealloc.m4: Update.
2456         * gnulib/import/m4/environ.m4: Update.
2457         * gnulib/import/m4/errno_h.m4: Update.
2458         * gnulib/import/m4/error.m4: Update.
2459         * gnulib/import/m4/exponentd.m4: Update.
2460         * gnulib/import/m4/exponentl.m4: Update.
2461         * gnulib/import/m4/extensions.m4: Update.
2462         * gnulib/import/m4/extern-inline.m4: Update.
2463         * gnulib/import/m4/fchdir.m4: Update.
2464         * gnulib/import/m4/fcntl-o.m4: Update.
2465         * gnulib/import/m4/fcntl.m4: Update.
2466         * gnulib/import/m4/fcntl_h.m4: Update.
2467         * gnulib/import/m4/fdopendir.m4: Update.
2468         * gnulib/import/m4/filenamecat.m4: Update.
2469         * gnulib/import/m4/flexmember.m4: Update.
2470         * gnulib/import/m4/float_h.m4: Update.
2471         * gnulib/import/m4/fnmatch.m4: Update.
2472         * gnulib/import/m4/fnmatch_h.m4: Update.
2473         * gnulib/import/m4/fpieee.m4: Update.
2474         * gnulib/import/m4/frexp.m4: Update.
2475         * gnulib/import/m4/frexpl.m4: Update.
2476         * gnulib/import/m4/fstat.m4: Update.
2477         * gnulib/import/m4/fstatat.m4: Update.
2478         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2479         * gnulib/import/m4/getcwd-path-max.m4: Update.
2480         * gnulib/import/m4/getcwd.m4: Update.
2481         * gnulib/import/m4/getdtablesize.m4: Update.
2482         * gnulib/import/m4/getlogin.m4: Update.
2483         * gnulib/import/m4/getlogin_r.m4: Update.
2484         * gnulib/import/m4/getpagesize.m4: Update.
2485         * gnulib/import/m4/getprogname.m4: Update.
2486         * gnulib/import/m4/gettimeofday.m4: Update.
2487         * gnulib/import/m4/glibc21.m4: Update.
2488         * gnulib/import/m4/glob.m4: Update.
2489         * gnulib/import/m4/glob_h.m4: Update.
2490         * gnulib/import/m4/gnulib-cache.m4: Update.
2491         * gnulib/import/m4/gnulib-common.m4: Update.
2492         * gnulib/import/m4/gnulib-comp.m4: Update.
2493         * gnulib/import/m4/gnulib-tool.m4: Update.
2494         * gnulib/import/m4/hard-locale.m4: Update.
2495         * gnulib/import/m4/include_next.m4: Update.
2496         * gnulib/import/m4/inttypes-pri.m4: Update.
2497         * gnulib/import/m4/inttypes.m4: Update.
2498         * gnulib/import/m4/isnand.m4: Update.
2499         * gnulib/import/m4/isnanl.m4: Update.
2500         * gnulib/import/m4/largefile.m4: Update.
2501         * gnulib/import/m4/limits-h.m4: Update.
2502         * gnulib/import/m4/localcharset.m4: Update.
2503         * gnulib/import/m4/locale-fr.m4: Update.
2504         * gnulib/import/m4/locale-ja.m4: Update.
2505         * gnulib/import/m4/locale-zh.m4: Update.
2506         * gnulib/import/m4/localtime-buffer.m4: Update.
2507         * gnulib/import/m4/longlong.m4: Update.
2508         * gnulib/import/m4/lstat.m4: Update.
2509         * gnulib/import/m4/malloc.m4: Update.
2510         * gnulib/import/m4/malloca.m4: Update.
2511         * gnulib/import/m4/math_h.m4: Update.
2512         * gnulib/import/m4/mbrtowc.m4: Update.
2513         * gnulib/import/m4/mbsinit.m4: Update.
2514         * gnulib/import/m4/mbsrtowcs.m4: Update.
2515         * gnulib/import/m4/mbstate_t.m4: Update.
2516         * gnulib/import/m4/memchr.m4: Update.
2517         * gnulib/import/m4/memmem.m4: Update.
2518         * gnulib/import/m4/mempcpy.m4: Update.
2519         * gnulib/import/m4/memrchr.m4: Update.
2520         * gnulib/import/m4/mkdir.m4: Update.
2521         * gnulib/import/m4/mkstemp.m4: Update.
2522         * gnulib/import/m4/mmap-anon.m4: Update.
2523         * gnulib/import/m4/mode_t.m4: Update.
2524         * gnulib/import/m4/msvc-inval.m4: Update.
2525         * gnulib/import/m4/msvc-nothrow.m4: Update.
2526         * gnulib/import/m4/multiarch.m4: Update.
2527         * gnulib/import/m4/nocrash.m4: Update.
2528         * gnulib/import/m4/off_t.m4: Update.
2529         * gnulib/import/m4/onceonly.m4: Update.
2530         * gnulib/import/m4/open-cloexec.m4: Update.
2531         * gnulib/import/m4/open.m4: Update.
2532         * gnulib/import/m4/openat.m4: Update.
2533         * gnulib/import/m4/opendir.m4: Update.
2534         * gnulib/import/m4/pathmax.m4: Update.
2535         * gnulib/import/m4/rawmemchr.m4: Update.
2536         * gnulib/import/m4/readdir.m4: Update.
2537         * gnulib/import/m4/readlink.m4: Update.
2538         * gnulib/import/m4/realloc.m4: Update.
2539         * gnulib/import/m4/rename.m4: Update.
2540         * gnulib/import/m4/rewinddir.m4: Update.
2541         * gnulib/import/m4/rmdir.m4: Update.
2542         * gnulib/import/m4/save-cwd.m4: Update.
2543         * gnulib/import/m4/secure_getenv.m4: Update.
2544         * gnulib/import/m4/setenv.m4: Update.
2545         * gnulib/import/m4/signal_h.m4: Update.
2546         * gnulib/import/m4/ssize_t.m4: Update.
2547         * gnulib/import/m4/stat-time.m4: Update.
2548         * gnulib/import/m4/stat.m4: Update.
2549         * gnulib/import/m4/std-gnu11.m4: Update.
2550         * gnulib/import/m4/stdbool.m4: Update.
2551         * gnulib/import/m4/stddef_h.m4: Update.
2552         * gnulib/import/m4/stdint.m4: Update.
2553         * gnulib/import/m4/stdio_h.m4: Update.
2554         * gnulib/import/m4/stdlib_h.m4: Update.
2555         * gnulib/import/m4/strchrnul.m4: Update.
2556         * gnulib/import/m4/strdup.m4: Update.
2557         * gnulib/import/m4/strerror.m4: Update.
2558         * gnulib/import/m4/string_h.m4: Update.
2559         * gnulib/import/m4/strstr.m4: Update.
2560         * gnulib/import/m4/strtok_r.m4: Update.
2561         * gnulib/import/m4/sys_socket_h.m4: Update.
2562         * gnulib/import/m4/sys_stat_h.m4: Update.
2563         * gnulib/import/m4/sys_time_h.m4: Update.
2564         * gnulib/import/m4/sys_types_h.m4: Update.
2565         * gnulib/import/m4/tempname.m4: Update.
2566         * gnulib/import/m4/time_h.m4: Update.
2567         * gnulib/import/m4/unistd-safer.m4: Update.
2568         * gnulib/import/m4/unistd_h.m4: Update.
2569         * gnulib/import/m4/warn-on-use.m4: Update.
2570         * gnulib/import/m4/wchar_h.m4: Update.
2571         * gnulib/import/m4/wchar_t.m4: Update.
2572         * gnulib/import/m4/wctype_h.m4: Update.
2573         * gnulib/import/m4/wint_t.m4: Update.
2574         * gnulib/import/malloc.c: Update.
2575         * gnulib/import/malloc/scratch_buffer.h: Update.
2576         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2577         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2578         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2579         * gnulib/import/malloca.c: Update.
2580         * gnulib/import/malloca.h: Update.
2581         * gnulib/import/malloca.valgrind: Update.
2582         * gnulib/import/math.in.h: Update.
2583         * gnulib/import/mbrtowc.c: Update.
2584         * gnulib/import/mbsinit.c: Update.
2585         * gnulib/import/mbsrtowcs-impl.h: Update.
2586         * gnulib/import/mbsrtowcs-state.c: Update.
2587         * gnulib/import/mbsrtowcs.c: Update.
2588         * gnulib/import/memchr.c: Update.
2589         * gnulib/import/memmem.c: Update.
2590         * gnulib/import/mempcpy.c: Update.
2591         * gnulib/import/memrchr.c: Update.
2592         * gnulib/import/mkdir.c: Update.
2593         * gnulib/import/mkstemp.c: Update.
2594         * gnulib/import/msvc-inval.c: Update.
2595         * gnulib/import/msvc-inval.h: Update.
2596         * gnulib/import/msvc-nothrow.c: Update.
2597         * gnulib/import/msvc-nothrow.h: Update.
2598         * gnulib/import/open.c: Update.
2599         * gnulib/import/openat-die.c: Update.
2600         * gnulib/import/openat-priv.h: Update.
2601         * gnulib/import/openat-proc.c: Update.
2602         * gnulib/import/openat.c: Update.
2603         * gnulib/import/openat.h: Update.
2604         * gnulib/import/opendir.c: Update.
2605         * gnulib/import/pathmax.h: Update.
2606         * gnulib/import/pipe-safer.c: Update.
2607         * gnulib/import/rawmemchr.c: Update.
2608         * gnulib/import/readdir.c: Update.
2609         * gnulib/import/readlink.c: Update.
2610         * gnulib/import/realloc.c: Update.
2611         * gnulib/import/ref-add.sin: Update.
2612         * gnulib/import/ref-del.sin: Update.
2613         * gnulib/import/rename.c: Update.
2614         * gnulib/import/rewinddir.c: Update.
2615         * gnulib/import/rmdir.c: Update.
2616         * gnulib/import/same-inode.h: Update.
2617         * gnulib/import/save-cwd.c: Update.
2618         * gnulib/import/save-cwd.h: Update.
2619         * gnulib/import/scratch_buffer.h: Update.
2620         * gnulib/import/secure_getenv.c: Update.
2621         * gnulib/import/setenv.c: Update.
2622         * gnulib/import/signal.in.h: Update.
2623         * gnulib/import/stat-time.c: Update.
2624         * gnulib/import/stat-time.h: Update.
2625         * gnulib/import/stat-w32.c: Update.
2626         * gnulib/import/stat-w32.h: Update.
2627         * gnulib/import/stat.c: Update.
2628         * gnulib/import/stdbool.in.h: Update.
2629         * gnulib/import/stddef.in.h: Update.
2630         * gnulib/import/stdint.in.h: Update.
2631         * gnulib/import/stdio.in.h: Update.
2632         * gnulib/import/stdlib.in.h: Update.
2633         * gnulib/import/str-two-way.h: Update.
2634         * gnulib/import/strchrnul.c: Update.
2635         * gnulib/import/strdup.c: Update.
2636         * gnulib/import/streq.h: Update.
2637         * gnulib/import/strerror-override.c: Update.
2638         * gnulib/import/strerror-override.h: Update.
2639         * gnulib/import/strerror.c: Update.
2640         * gnulib/import/string.in.h: Update.
2641         * gnulib/import/stripslash.c: Update.
2642         * gnulib/import/strnlen1.c: Update.
2643         * gnulib/import/strnlen1.h: Update.
2644         * gnulib/import/strstr.c: Update.
2645         * gnulib/import/strtok_r.c: Update.
2646         * gnulib/import/sys_stat.in.h: Update.
2647         * gnulib/import/sys_time.in.h: Update.
2648         * gnulib/import/sys_types.in.h: Update.
2649         * gnulib/import/tempname.c: Update.
2650         * gnulib/import/tempname.h: Update.
2651         * gnulib/import/time.in.h: Update.
2652         * gnulib/import/unistd--.h: Update.
2653         * gnulib/import/unistd-safer.h: Update.
2654         * gnulib/import/unistd.in.h: Update.
2655         * gnulib/import/unsetenv.c: Update.
2656         * gnulib/import/verify.h: Update.
2657         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2658         * gnulib/import/wchar.in.h: Update.
2659         * gnulib/import/wctype.in.h: Update.
2660         * gnulib/import/xalloc-oversized.h: Update.
2661         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2662         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2663
2664 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2665
2666         * record-btrace.c (get_thread_current_frame): Remove
2667         old_inferior_ptid.
2668
2669 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2670
2671         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2672         with check_tag to 1 if and only if the type is tagged and the
2673         component being searched cannot been found in the current
2674         view. Otherwise, always call ada_to_fixed_type with
2675         check_tag to 0.
2676
2677 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2678
2679         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2680         declaration.
2681         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2682         * ada-varobj.c (ada_varobj_get_number_of_children,
2683         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2684
2685 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2686
2687         * ada-valprint.c (ada_value_print): Use type instead of
2688         enclosing type.
2689
2690 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2691
2692         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2693         an array of access to unconstrained array.
2694
2695 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2696
2697         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2698         (ada_check_typedef): Use it.
2699
2700 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2701
2702         * ada-varobj.c (ada_varobj_describe_struct_child)
2703         (ada_varobj_describe_child): Handle union case like struct one.
2704
2705 2018-09-10  Tom Tromey  <tom@tromey.com>
2706
2707         PR python/18380:
2708         * python/python.c (_initialize_python): Make example in "python"
2709         help work in Python 3.
2710
2711 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2712
2713         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2714         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2715         $(EXEEXT) to the script, as it is not a program.
2716
2717 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2718
2719         * python/py-prettyprint.c (pretty_print_one_value): Return
2720         gdbpy_ref<>.
2721         (print_string_repr): Adjust.
2722         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2723         * python/python-internal.h (apply_varobj_pretty_printer): Return
2724         gdbpy_ref<>.
2725         * varobj.c (varobj_value_get_print_value): Adjust.
2726
2727 2018-09-08  Tom Tromey  <tom@tromey.com>
2728
2729         PR python/16047:
2730         * python/py-prettyprint.c (pretty_print_one_value): Check for
2731         to_string method.
2732
2733 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2734
2735         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2736         replace_operator_with_call.
2737
2738 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2739
2740         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2741
2742 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2743
2744         * ada-typeprint.c (print_range): Print the bounds using TYPE
2745         rather than its TYPE_TARGET_TYPE.
2746
2747 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2748
2749         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2750         call to ada_to_fixed_value_create.
2751
2752 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2753
2754         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2755
2756 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2757
2758         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2759         by calls to error.
2760
2761 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2762
2763         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2764         Move update of loop variable "fi".
2765
2766 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2767
2768         * ada-lang.c (value_assign_to_component): In the case of
2769         big-endian targets, extract the bits of the given VAL
2770         using an src_offset of zero if container is not a scalar.
2771
2772 2018-09-06  Simon Ser  <contact@emersion.fr>
2773
2774         PR gdb/23105
2775         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2776         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2777         * fbsd-tdep.c (fbsd_make_note_desc): New.
2778         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2779         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2780         * target.h (enum target_object) Add FreeBSD-specific
2781         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2782
2783 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2784
2785         * compile/compile-c.h (generate_c_for_variable_locations):
2786         Change reference to pointer.
2787         * compile/compile-c-support.c (compile_program) <compute>:
2788         Likewise.
2789         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2790         (generate_c_for_for_one_variable): Likewise
2791         (generate_c_for_variable_locations): Likewise
2792         * compile/compile-c-types.c (compile_c_instance::convert_type):
2793         Likewise
2794         * compile/compile-cplus-symbols.c (convert_one_symbol):
2795         std::move the scope passed to enter_scope.
2796         * compile/compile-cplus-types.c
2797         (compile_cplus_instance::enter_scope): Make parameter
2798         rvalue-reference.
2799         (compile_cplus_instance::new_scope): Change reference to
2800         pointer.
2801         (compile_cplus_instance::convert_type): Likewise
2802         (compile_cplus_convert_typedef): std::move the scope passed to
2803         enter_scope.
2804         (compile_cplus_convert_struct_or_union): Likewise.
2805         (compile_cplus_convert_enum): Likewise.
2806         (compile_cplus_convert_namespace): Likewise.
2807         * compile/compile-cplus.h (compile_cplus_instance)
2808         <enter_scope>: Make parameter rvalue-reference.
2809         * compile/compile-internal.h (compile_instance)
2810         <get_cached_type>: Likewise
2811         * compile/compile-loc2c.c (push): Likewise
2812         (pushf): Likewise
2813         (unary): Likewise
2814         (binary): Likewise
2815         (print_label): Likewise
2816         (pushf_register_address): Likewise
2817         (pushf_register): Likewise
2818         (do_compile_dwarf_expr_to_c): Likewise
2819         (compile_dwarf_expr_to_c): Likewise
2820         (compile_dwarf_bounds_to_c): Likewise
2821         * compile/compile.c (compile_instance::get_cached_type):
2822         Likewise
2823         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2824         (compile_dwarf_bounds_to_c): Likewise
2825         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2826         (dwarf2_compile_property_to_c): Likewise
2827         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2828         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2829         Likewise
2830
2831 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2832
2833         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2834         * tui/tui-data.c (init_content_element): Don't initialize it.
2835
2836 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2837
2838         * tui/tui-data.h (struct tui_win_info)
2839         <detail::opaque>: Remove.
2840         * tui/tui-data.c (init_win_info): Remove assignment.
2841
2842 2018-09-05  Tom Tromey  <tom@tromey.com>
2843
2844         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2845         -Wformat-nonliteral.
2846         * target-float.c (host_float_ops<T>::to_string)
2847         (host_float_ops<T>::from_string): Use
2848         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2849         * configure: Rebuild.
2850
2851 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2852
2853         * printcmd.c (printf_c_string): Use
2854         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2855         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2856
2857 2018-09-05  Tom Tromey  <tom@tromey.com>
2858
2859         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2860
2861 2018-09-05  Tom de Vries  <tdevries@suse.de>
2862
2863         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2864         with resolve_abstract_p == true.
2865         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2866         defaulting to false. Propagate resolve_abstract_p to
2867         dwarf2_fetch_die_loc_sect_off.
2868         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2869         parameter, defaulting to false.
2870         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2871         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2872         parameter.
2873         * dwarf2read.h (struct die_info): Forward-declare.
2874         (die_info_ptr): New typedef.
2875         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2876
2877 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2878
2879         GDB 8.2 released.
2880
2881 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2882             Pedro Alves  <palves@redhat.com>
2883
2884         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2885         "aclocal-m4-deps.mk".  Include file here.
2886         $(srcdir)/aclocal.m4: Add "configure.ac".
2887         * gnulib/aclocal-m4-deps.mk: New file.
2888         * gnulib/update-gnulib.sh: Automatically update
2889         "aclocal-m4-deps.mk".
2890
2891 2018-09-04  Tom Tromey  <tom@tromey.com>
2892
2893         * configure: Rebuild.
2894         * configure.ac: Remove multi-ice code.
2895
2896 2018-09-04  Tom Tromey  <tom@tromey.com>
2897
2898         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2899         (ada-exp.o): Update.
2900
2901 2018-09-04  Tom Tromey  <tom@tromey.com>
2902
2903         * Makefile.in (printcmd.o, target-float.o): Remove.
2904         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2905
2906 2018-09-04  Tom Tromey  <tom@tromey.com>
2907
2908         * gnulib/Makefile.in: Remove obsolete comment.
2909         * Makefile.in: Remove obsolete comment.
2910
2911 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2912
2913         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2914         line with '+'.
2915
2916 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2917
2918         * riscv-tdep.c: Add 'prologue-value.h' include.
2919         (struct riscv_unwind_cache): New struct.
2920         (riscv_debug_unwinder): New global.
2921         (riscv_scan_prologue): Update arguments, capture register details
2922         from prologue scan.
2923         (riscv_skip_prologue): Reformat arguments line, move end of
2924         prologue calculation into riscv_scan_prologue.
2925         (riscv_frame_cache): Update return type, create
2926         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2927         details.
2928         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2929         (riscv_frame_prev_register): Use the trad_frame within the
2930         riscv_unwind_cache.
2931         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2932         flag.
2933
2934 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2935
2936         * trad-frame.h (trad_frame_set_realreg): Declare.
2937         (trad_frame_set_addr): Declare.
2938         * trad-frame.c (trad_frame_set_realreg): Define new function.
2939         (trad_frame_set_addr): Define new function.
2940         (trad_frame_set_reg_realreg): Use new function.
2941         (trad_frame_set_reg_addr): Use new function.
2942
2943 2018-09-01  Keith Seitz  <keiths@redhat.com>
2944
2945         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2946         pulongest instead of "%lld".
2947         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2948         ATTRIBUTE_UNUSED.
2949
2950 2018-08-31  Tom Tromey  <tom@tromey.com>
2951
2952         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2953         variant part type.
2954
2955 2018-08-31  Pedro Alves  <palves@redhat.com>
2956
2957         * gdbarch.h: Regenerate.
2958
2959 2018-08-31  Pedro Alves  <palves@redhat.com>
2960
2961         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2962         * target.h (Hardware watchpoint interfaces): Describe
2963         continuable/steppable/non-steppable watchpoints.
2964         * gdbarch.h, gdbarch.c: Regenerate.
2965
2966 2018-08-31  Pedro Alves  <palves@redhat.com>
2967
2968         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2969         Delete.
2970         * s390-linux-nat.c
2971         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2972         * target.h (target_ops::have_continuable_watchpoint): Delete.
2973         (target_have_continuable_watchpoint): Delete.
2974         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2975         * target-delegates.c: Regenerate.
2976
2977 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2978
2979         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2980         the files present in "gnulib/import/m4/".
2981
2982 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2983
2984         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2985         c.sw, c.swsp, and c.sdsp.
2986
2987 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2988
2989         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2990         (riscv_read_misa_reg): Don't cache value read into inferior data.
2991         (riscv_new_inferior_data): Delete.
2992         (riscv_inferior_data_cleanup): Delete.
2993         (riscv_inferior_data): Delete.
2994         (riscv_invalidate_inferior_data): Delete.
2995         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2996
2997 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2998
2999         * compile/compile-cplus-types.c
3000         (compile_cplus_instance::leave_scope): Take the address of scope
3001         object.
3002         (compile_cplus_instance::convert_qualified_base): Compare quals
3003         to 0.
3004
3005 2018-08-30  Keith Seitz  <keiths@redhat.com>
3006
3007         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3008         Use "%s" and host_address_to_string instead of "%p" in printf.
3009
3010 2018-08-29  Keith Seitz  <keiths@redhat.com>
3011
3012         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3013         and compile-cplus-types.c.
3014         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3015         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3016         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3017         Declare.
3018         * compile/compile-c-support.c: Include compile-cplus.h.
3019         (load_libcompile): Templatize.
3020         (get_compile_context): "New" function.
3021         (c_get_compile_context): Use get_compile_context.
3022         (cplus_get_compile_context): New function.
3023         (cplus_push_user_expression, cplus_pop_user_expression)
3024         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3025         (cplus_compute_program): Define new structs/functions.
3026         * compile/compile-cplus-symmbols.c: New file.
3027         * compile/compile-cplus-types.c: New file.
3028         * compile/compile-cplus.h: New file.
3029         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3030         Declare.
3031         * compile/compile-object-load.c (get_out_value_type): Use
3032         strncmp_iw when comparing symbol names.
3033         (compile_object_load): Add mst_bss and mst_data.
3034         * compile/compile.c (_initialize_compile): Remove
3035         -Wno-implicit-function-declaration from `compile_args'.
3036         * compile/gcc-cp-plugin.h: New file.
3037         * NEWS: Mention C++ compile support and new debug options.
3038
3039 2018-08-29  Keith Seitz  <keiths@redhat.com>
3040
3041         * linespec.c (collect_info::add_symbol): Make virtual.
3042         (struct symbol_searcher_collect_info): New struct.
3043         (symbol_searcher::find_all_symbols): New method.
3044         * symtab.h (class symbol_searcher): New class.
3045
3046 2018-08-29  Keith Seitz  <keiths@redhat.com>
3047
3048         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3049         Change to vector of block_symbol.  Update all users.
3050         (struct collect_info) <symbols>: Likewise.
3051         (collect_info::add_symbol): Take block_symbol as argument.
3052         Update all callers.
3053         (decode_compound_collector) <m_symbols>: Change type to vector
3054         of block_symbol.  Update all users.
3055         (decode_compound_collector::operator ()): Change parameter type
3056         to block_symbol.
3057         (find_method, find_function_symbols, find_linespec_symbols)
3058         (find_label_symbols_in_block, find_label_symbols): Change symbol
3059         vectors to block_symbol vectors.
3060         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3061         block_symbol.
3062
3063 2018-08-29  Keith Seitz  <keiths@redhat.com>
3064
3065         * linespec.c (symbolp): Remove typedef and VEC definitions.
3066         (bound_minimal_symbol_d): Likewise.
3067
3068 2018-08-29  Keith Seitz  <keiths@redhat.com>
3069
3070         * linespec.c (decode_compound_collector::decode_compound_collector):
3071         Remove initialization for `m_symtabs'.
3072         (decode_compound_collector::release_symbols): Change return type
3073         to std::vector.  Update all callers.
3074         (class decode_compound_collector) <m_symbols>: Change type to
3075         std::vector.
3076         (lookup_prefix_sym): Change return type to std::vector.  Update all
3077         callers.
3078         (compare_symbols): Remove.
3079         (std_compare_symbols): Rename to `compare_symbols'.
3080         (find_method): Change `sym_classes' parameter to std::vector.
3081         Update all callers.  Use std::sort to sort sym_classes.
3082         (find_linespec_symbols): Remove cleanup.
3083
3084 2018-08-29  Keith Seitz  <keiths@redhat.com>
3085
3086         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3087         std::vector.  Update all users.
3088         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3089         (struct collect_info) <minimal_symbols>: Likewise.
3090         (compare_msymbols): Return bool.  Change parameters to const
3091         bound_minimal_symbol references.
3092         (find_method, find_function_symbols, find_linespec_symbols): Change
3093         `minsyms' parameter to std::vector.  Update all callers.
3094
3095 2018-08-29  Keith Seitz  <keiths@redhat.com>
3096
3097         * linespec.c (struct linespec) <label_symbols>: Change type to
3098         std::vector.  Update all users.
3099         (find_label_symbols_in_block): Change `result' parameter to
3100         std::vector.  Update all callers.
3101         (find_label_symbols): Return std::vector.  Update all callers.
3102
3103 2018-08-29  Keith Seitz  <keiths@redhat.com>
3104
3105         * linespec.c (struct linespec) <function_symbols>: Change type to
3106         std::vector.  Update all users.
3107         (struct collect_info) <function_symbols>: Likewise.
3108         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3109         (std_compare_symbols): New function.
3110         (find_method, find_function_symbols, find_linespec_symbols)
3111         (find_label_symbols_in_block): Change `symbols' parameter to
3112         std::vector.  Update all callers.
3113         (find_label_symbols): Likewise for `function_symbols' and
3114         `label_funcs_ret'.
3115
3116 2018-08-29  Keith Seitz  <keiths@redhat.com>
3117
3118         * linespec.c (symtab_vector_up): Define.
3119         (struct linespec) <file_symtabs>: Change type to std::vector *.
3120         Update all uses.
3121         (struct collect_info) <file_symtabs>: Likewise.
3122         (collect_symtabs_from_filename): Return symtab_vector_up.
3123         Update all callers.
3124         (decode_objc): Remove cleanup.
3125         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3126         (symtab_collector::release_symtabs): Return symtab_vector_up.
3127         Update all callers.
3128         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3129         Update all users.
3130         (collect_symtabs_from_filename, symtabs_from_filename): Return
3131         symtab_vector_up.  Update all callers.
3132
3133 2018-08-29  Tom Tromey  <tom@tromey.com>
3134
3135         * csky-tdep.c (csky_analyze_prologue): Use
3136         core_addr_to_string_nz.
3137
3138 2018-08-29  Tom Tromey  <tom@tromey.com>
3139
3140         * windows-nat.c (struct xlate_exception) <them>: Change type to
3141         DWORD.
3142         (xlate): Fix formatting.  Remove last entry.
3143         (struct xlate_exception, xlate): Comment out.
3144         (windows_nat_target::resume): Use ranged for.
3145
3146 2018-08-29  Jim Wilson  <jimw@sifive.com>
3147
3148         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3149         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3150         of NT_PRFPREG.
3151         (riscv_linux_nat_target::store_registers): Likewise.
3152
3153 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3154
3155         PR gdb/23555
3156         PR gdb/23558
3157         * gnulib/aclocal.m4: Regenerate.
3158         * gnulib/config.in: Regenerate.
3159         * gnulib/configure: Regenerate.
3160         * gnulib/import/Makefile.am: Update.
3161         * gnulib/import/Makefile.in: Update.
3162         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3163         * gnulib/import/_Noreturn.h: ... this.
3164         * gnulib/import/alloca.in.h: Update.
3165         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3166         * gnulib/import/arg-nonnull.h: ... this.
3167         * gnulib/import/assure.h: Update.
3168         * gnulib/import/at-func.c: Update.
3169         * gnulib/import/basename-lgpl.c: Update.
3170         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3171         * gnulib/import/c++defs.h: ... this.
3172         * gnulib/import/canonicalize-lgpl.c: Update.
3173         * gnulib/import/cdefs.h: Update.
3174         * gnulib/import/chdir-long.c: Update.
3175         * gnulib/import/chdir-long.h: Update.
3176         * gnulib/import/cloexec.c: Update.
3177         * gnulib/import/cloexec.h: Update.
3178         * gnulib/import/close.c: Update.
3179         * gnulib/import/closedir.c: Update.
3180         * gnulib/import/config.charset: Update.
3181         * gnulib/import/dirent-private.h: Update.
3182         * gnulib/import/dirent.in.h: Update.
3183         * gnulib/import/dirfd.c: Update.
3184         * gnulib/import/dirname-lgpl.c: Update.
3185         * gnulib/import/dirname.h: Update.
3186         * gnulib/import/dosname.h: Update.
3187         * gnulib/import/dup-safer-flag.c: Update.
3188         * gnulib/import/dup-safer.c: Update.
3189         * gnulib/import/dup.c: Update.
3190         * gnulib/import/dup2.c: Update.
3191         * gnulib/import/errno.in.h: Update.
3192         * gnulib/import/error.c: Update.
3193         * gnulib/import/error.h: Update.
3194         * gnulib/import/exitfail.c: Update.
3195         * gnulib/import/exitfail.h: Update.
3196         * gnulib/import/extra/update-copyright: Update.
3197         * gnulib/import/fchdir.c: Update.
3198         * gnulib/import/fcntl.c: Update.
3199         * gnulib/import/fcntl.in.h: Update.
3200         * gnulib/import/fd-hook.c: Update.
3201         * gnulib/import/fd-hook.h: Update.
3202         * gnulib/import/fd-safer-flag.c: Update.
3203         * gnulib/import/fd-safer.c: Update.
3204         * gnulib/import/fdopendir.c: Update.
3205         * gnulib/import/filename.h: Update.
3206         * gnulib/import/filenamecat-lgpl.c: Update.
3207         * gnulib/import/filenamecat.h: Update.
3208         * gnulib/import/flexmember.h: Update.
3209         * gnulib/import/float+.h: Update.
3210         * gnulib/import/float.c: Update.
3211         * gnulib/import/float.in.h: Update.
3212         * gnulib/import/fnmatch.c: Update.
3213         * gnulib/import/fnmatch.in.h: Update.
3214         * gnulib/import/fnmatch_loop.c: Update.
3215         * gnulib/import/fpucw.h: Update.
3216         * gnulib/import/frexp.c: Update.
3217         * gnulib/import/frexpl.c: Update.
3218         * gnulib/import/fstat.c: Update.
3219         * gnulib/import/fstatat.c: Update.
3220         * gnulib/import/getcwd-lgpl.c: Update.
3221         * gnulib/import/getcwd.c: Update.
3222         * gnulib/import/getdtablesize.c: Update.
3223         * gnulib/import/getlogin_r.c: Update.
3224         * gnulib/import/getprogname.c: Update.
3225         * gnulib/import/getprogname.h: Update.
3226         * gnulib/import/gettext.h: Update.
3227         * gnulib/import/gettimeofday.c: Update.
3228         * gnulib/import/glob-libc.h: Update.
3229         * gnulib/import/glob.c: Update.
3230         * gnulib/import/glob.in.h: Update.
3231         * gnulib/import/glob_internal.h: Update.
3232         * gnulib/import/glob_pattern_p.c: Update.
3233         * gnulib/import/globfree.c: Update.
3234         * gnulib/import/hard-locale.c: Update.
3235         * gnulib/import/hard-locale.h: Update.
3236         * gnulib/import/intprops.h: Update.
3237         * gnulib/import/inttypes.in.h: Update.
3238         * gnulib/import/isnan.c: Update.
3239         * gnulib/import/isnand-nolibm.h: Update.
3240         * gnulib/import/isnand.c: Update.
3241         * gnulib/import/isnanl-nolibm.h: Update.
3242         * gnulib/import/isnanl.c: Update.
3243         * gnulib/import/itold.c: Update.
3244         * gnulib/import/libc-config.h: Update.
3245         * gnulib/import/limits.in.h: Update.
3246         * gnulib/import/localcharset.c: Update.
3247         * gnulib/import/localcharset.h: Update.
3248         * gnulib/import/localtime-buffer.c: Update.
3249         * gnulib/import/localtime-buffer.h: Update.
3250         * gnulib/import/lstat.c: Update.
3251         * gnulib/import/m4/00gnulib.m4: Update.
3252         * gnulib/import/m4/__inline.m4: Update.
3253         * gnulib/import/m4/absolute-header.m4: Update.
3254         * gnulib/import/m4/alloca.m4: Update.
3255         * gnulib/import/m4/builtin-expect.m4: Update.
3256         * gnulib/import/m4/canonicalize.m4: Update.
3257         * gnulib/import/m4/chdir-long.m4: Update.
3258         * gnulib/import/m4/close.m4: Update.
3259         * gnulib/import/m4/closedir.m4: Update.
3260         * gnulib/import/m4/configmake.m4: Update.
3261         * gnulib/import/m4/d-ino.m4: Update.
3262         * gnulib/import/m4/d-type.m4: Update.
3263         * gnulib/import/m4/dirent_h.m4: Update.
3264         * gnulib/import/m4/dirfd.m4: Update.
3265         * gnulib/import/m4/dirname.m4: Update.
3266         * gnulib/import/m4/double-slash-root.m4: Update.
3267         * gnulib/import/m4/dup.m4: Update.
3268         * gnulib/import/m4/dup2.m4: Update.
3269         * gnulib/import/m4/eealloc.m4: Update.
3270         * gnulib/import/m4/environ.m4: Update.
3271         * gnulib/import/m4/errno_h.m4: Update.
3272         * gnulib/import/m4/error.m4: Update.
3273         * gnulib/import/m4/exponentd.m4: Update.
3274         * gnulib/import/m4/exponentl.m4: Update.
3275         * gnulib/import/m4/extensions.m4: Update.
3276         * gnulib/import/m4/extern-inline.m4: Update.
3277         * gnulib/import/m4/fchdir.m4: Update.
3278         * gnulib/import/m4/fcntl-o.m4: Update.
3279         * gnulib/import/m4/fcntl.m4: Update.
3280         * gnulib/import/m4/fcntl_h.m4: Update.
3281         * gnulib/import/m4/fdopendir.m4: Update.
3282         * gnulib/import/m4/filenamecat.m4: Update.
3283         * gnulib/import/m4/flexmember.m4: Update.
3284         * gnulib/import/m4/float_h.m4: Update.
3285         * gnulib/import/m4/fnmatch.m4: Update.
3286         * gnulib/import/m4/fnmatch_h.m4: Update.
3287         * gnulib/import/m4/fpieee.m4: Update.
3288         * gnulib/import/m4/frexp.m4: Update.
3289         * gnulib/import/m4/frexpl.m4: Update.
3290         * gnulib/import/m4/fstat.m4: Update.
3291         * gnulib/import/m4/fstatat.m4: Update.
3292         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3293         * gnulib/import/m4/getcwd-path-max.m4: Update.
3294         * gnulib/import/m4/getcwd.m4: Update.
3295         * gnulib/import/m4/getdtablesize.m4: Update.
3296         * gnulib/import/m4/getlogin.m4: Update.
3297         * gnulib/import/m4/getlogin_r.m4: Update.
3298         * gnulib/import/m4/getpagesize.m4: Update.
3299         * gnulib/import/m4/getprogname.m4: Update.
3300         * gnulib/import/m4/gettimeofday.m4: Update.
3301         * gnulib/import/m4/glibc21.m4: Update.
3302         * gnulib/import/m4/glob.m4: Update.
3303         * gnulib/import/m4/glob_h.m4: Update.
3304         * gnulib/import/m4/gnulib-cache.m4: Update.
3305         * gnulib/import/m4/gnulib-common.m4: Update.
3306         * gnulib/import/m4/gnulib-comp.m4: Update.
3307         * gnulib/import/m4/gnulib-tool.m4: Update.
3308         * gnulib/import/m4/hard-locale.m4: Update.
3309         * gnulib/import/m4/include_next.m4: Update.
3310         * gnulib/import/m4/inttypes-pri.m4: Update.
3311         * gnulib/import/m4/inttypes.m4: Update.
3312         * gnulib/import/m4/isnand.m4: Update.
3313         * gnulib/import/m4/isnanl.m4: Update.
3314         * gnulib/import/m4/largefile.m4: Update.
3315         * gnulib/import/m4/limits-h.m4: Update.
3316         * gnulib/import/m4/localcharset.m4: Update.
3317         * gnulib/import/m4/locale-fr.m4: Update.
3318         * gnulib/import/m4/locale-ja.m4: Update.
3319         * gnulib/import/m4/locale-zh.m4: Update.
3320         * gnulib/import/m4/localtime-buffer.m4: Update.
3321         * gnulib/import/m4/longlong.m4: Update.
3322         * gnulib/import/m4/lstat.m4: Update.
3323         * gnulib/import/m4/malloc.m4: Update.
3324         * gnulib/import/m4/malloca.m4: Update.
3325         * gnulib/import/m4/math_h.m4: Update.
3326         * gnulib/import/m4/mbrtowc.m4: Update.
3327         * gnulib/import/m4/mbsinit.m4: Update.
3328         * gnulib/import/m4/mbsrtowcs.m4: Update.
3329         * gnulib/import/m4/mbstate_t.m4: Update.
3330         * gnulib/import/m4/memchr.m4: Update.
3331         * gnulib/import/m4/memmem.m4: Update.
3332         * gnulib/import/m4/mempcpy.m4: Update.
3333         * gnulib/import/m4/memrchr.m4: Update.
3334         * gnulib/import/m4/mkdir.m4: Update.
3335         * gnulib/import/m4/mkstemp.m4: Update.
3336         * gnulib/import/m4/mmap-anon.m4: Update.
3337         * gnulib/import/m4/mode_t.m4: Update.
3338         * gnulib/import/m4/msvc-inval.m4: Update.
3339         * gnulib/import/m4/msvc-nothrow.m4: Update.
3340         * gnulib/import/m4/multiarch.m4: Update.
3341         * gnulib/import/m4/nocrash.m4: Update.
3342         * gnulib/import/m4/off_t.m4: Update.
3343         * gnulib/import/m4/onceonly.m4: Update.
3344         * gnulib/import/m4/open-cloexec.m4: Update.
3345         * gnulib/import/m4/open.m4: Update.
3346         * gnulib/import/m4/openat.m4: Update.
3347         * gnulib/import/m4/opendir.m4: Update.
3348         * gnulib/import/m4/pathmax.m4: Update.
3349         * gnulib/import/m4/rawmemchr.m4: Update.
3350         * gnulib/import/m4/readdir.m4: Update.
3351         * gnulib/import/m4/readlink.m4: Update.
3352         * gnulib/import/m4/realloc.m4: Update.
3353         * gnulib/import/m4/rename.m4: Update.
3354         * gnulib/import/m4/rewinddir.m4: Update.
3355         * gnulib/import/m4/rmdir.m4: Update.
3356         * gnulib/import/m4/save-cwd.m4: Update.
3357         * gnulib/import/m4/secure_getenv.m4: Update.
3358         * gnulib/import/m4/setenv.m4: Update.
3359         * gnulib/import/m4/signal_h.m4: Update.
3360         * gnulib/import/m4/ssize_t.m4: Update.
3361         * gnulib/import/m4/stat-time.m4: Update.
3362         * gnulib/import/m4/stat.m4: Update.
3363         * gnulib/import/m4/std-gnu11.m4: Update.
3364         * gnulib/import/m4/stdbool.m4: Update.
3365         * gnulib/import/m4/stddef_h.m4: Update.
3366         * gnulib/import/m4/stdint.m4: Update.
3367         * gnulib/import/m4/stdio_h.m4: Update.
3368         * gnulib/import/m4/stdlib_h.m4: Update.
3369         * gnulib/import/m4/strchrnul.m4: Update.
3370         * gnulib/import/m4/strdup.m4: Update.
3371         * gnulib/import/m4/strerror.m4: Update.
3372         * gnulib/import/m4/string_h.m4: Update.
3373         * gnulib/import/m4/strstr.m4: Update.
3374         * gnulib/import/m4/strtok_r.m4: Update.
3375         * gnulib/import/m4/sys_socket_h.m4: Update.
3376         * gnulib/import/m4/sys_stat_h.m4: Update.
3377         * gnulib/import/m4/sys_time_h.m4: Update.
3378         * gnulib/import/m4/sys_types_h.m4: Update.
3379         * gnulib/import/m4/tempname.m4: Update.
3380         * gnulib/import/m4/time_h.m4: Update.
3381         * gnulib/import/m4/unistd-safer.m4: Update.
3382         * gnulib/import/m4/unistd_h.m4: Update.
3383         * gnulib/import/m4/warn-on-use.m4: Update.
3384         * gnulib/import/m4/wchar_h.m4: Update.
3385         * gnulib/import/m4/wchar_t.m4: Update.
3386         * gnulib/import/m4/wctype_h.m4: Update.
3387         * gnulib/import/m4/wint_t.m4: Update.
3388         * gnulib/import/malloc.c: Update.
3389         * gnulib/import/malloc/scratch_buffer.h: Update.
3390         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3391         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3392         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3393         * gnulib/import/malloca.c: Update.
3394         * gnulib/import/malloca.h: Update.
3395         * gnulib/import/malloca.valgrind: Update.
3396         * gnulib/import/math.in.h: Update.
3397         * gnulib/import/mbrtowc.c: Update.
3398         * gnulib/import/mbsinit.c: Update.
3399         * gnulib/import/mbsrtowcs-impl.h: Update.
3400         * gnulib/import/mbsrtowcs-state.c: Update.
3401         * gnulib/import/mbsrtowcs.c: Update.
3402         * gnulib/import/memchr.c: Update.
3403         * gnulib/import/memmem.c: Update.
3404         * gnulib/import/mempcpy.c: Update.
3405         * gnulib/import/memrchr.c: Update.
3406         * gnulib/import/mkdir.c: Update.
3407         * gnulib/import/mkstemp.c: Update.
3408         * gnulib/import/msvc-inval.c: Update.
3409         * gnulib/import/msvc-inval.h: Update.
3410         * gnulib/import/msvc-nothrow.c: Update.
3411         * gnulib/import/msvc-nothrow.h: Update.
3412         * gnulib/import/open.c: Update.
3413         * gnulib/import/openat-die.c: Update.
3414         * gnulib/import/openat-priv.h: Update.
3415         * gnulib/import/openat-proc.c: Update.
3416         * gnulib/import/openat.c: Update.
3417         * gnulib/import/openat.h: Update.
3418         * gnulib/import/opendir.c: Update.
3419         * gnulib/import/pathmax.h: Update.
3420         * gnulib/import/pipe-safer.c: Update.
3421         * gnulib/import/rawmemchr.c: Update.
3422         * gnulib/import/readdir.c: Update.
3423         * gnulib/import/readlink.c: Update.
3424         * gnulib/import/realloc.c: Update.
3425         * gnulib/import/ref-add.sin: Update.
3426         * gnulib/import/ref-del.sin: Update.
3427         * gnulib/import/rename.c: Update.
3428         * gnulib/import/rewinddir.c: Update.
3429         * gnulib/import/rmdir.c: Update.
3430         * gnulib/import/same-inode.h: Update.
3431         * gnulib/import/save-cwd.c: Update.
3432         * gnulib/import/save-cwd.h: Update.
3433         * gnulib/import/scratch_buffer.h: Update.
3434         * gnulib/import/secure_getenv.c: Update.
3435         * gnulib/import/setenv.c: Update.
3436         * gnulib/import/signal.in.h: Update.
3437         * gnulib/import/stat-time.c: Update.
3438         * gnulib/import/stat-time.h: Update.
3439         * gnulib/import/stat-w32.c: Update.
3440         * gnulib/import/stat-w32.h: Update.
3441         * gnulib/import/stat.c: Update.
3442         * gnulib/import/stdbool.in.h: Update.
3443         * gnulib/import/stddef.in.h: Update.
3444         * gnulib/import/stdint.in.h: Update.
3445         * gnulib/import/stdio.in.h: Update.
3446         * gnulib/import/stdlib.in.h: Update.
3447         * gnulib/import/str-two-way.h: Update.
3448         * gnulib/import/strchrnul.c: Update.
3449         * gnulib/import/strdup.c: Update.
3450         * gnulib/import/streq.h: Update.
3451         * gnulib/import/strerror-override.c: Update.
3452         * gnulib/import/strerror-override.h: Update.
3453         * gnulib/import/strerror.c: Update.
3454         * gnulib/import/string.in.h: Update.
3455         * gnulib/import/stripslash.c: Update.
3456         * gnulib/import/strnlen1.c: Update.
3457         * gnulib/import/strnlen1.h: Update.
3458         * gnulib/import/strstr.c: Update.
3459         * gnulib/import/strtok_r.c: Update.
3460         * gnulib/import/sys_stat.in.h: Update.
3461         * gnulib/import/sys_time.in.h: Update.
3462         * gnulib/import/sys_types.in.h: Update.
3463         * gnulib/import/tempname.c: Update.
3464         * gnulib/import/tempname.h: Update.
3465         * gnulib/import/time.in.h: Update.
3466         * gnulib/import/unistd--.h: Update.
3467         * gnulib/import/unistd-safer.h: Update.
3468         * gnulib/import/unistd.in.h: Update.
3469         * gnulib/import/unsetenv.c: Update.
3470         * gnulib/import/verify.h: Update.
3471         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3472         * gnulib/import/wchar.in.h: Update.
3473         * gnulib/import/wctype.in.h: Update.
3474         * gnulib/import/xalloc-oversized.h: Update.
3475         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3476         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3477
3478 2018-08-16  Gary Benson <gbenson@redhat.com>
3479
3480         PR gdb/13000:
3481         * gdb/main.c (captured_main_1): Exit with nonzero status
3482         in batch mode if the last command to be executed failed.
3483         * NEWS: Mention the above.
3484
3485 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3486
3487         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3488         end of warning message.
3489
3490 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3491
3492         PR gdb/22943:
3493         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3494         (aarch64_extract_return_value): Use
3495         aapcs_is_vfp_call_or_return_candidate.
3496         (aarch64_return_in_memory): Likewise.
3497         (aarch64_store_return_value): Likewise.
3498
3499 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3500
3501         * aarch64-tdep.c
3502         (aapcs_is_vfp_call_or_return_candidate): Make static
3503         (pass_in_v_or_stack): Remove function.
3504         (pass_in_v_vfp_candidate): New function.
3505         (aarch64_push_dummy_call): Check for float register candidates.
3506
3507 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3508
3509         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3510         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3511         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3512
3513 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3514
3515         PR build/23399
3516         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3517         (struct ipa_sym_addresses): Rename to...
3518         (struct ipa_sym_addresses_common): ... this.
3519         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3520
3521 2018-08-28  Tom Tromey  <tom@tromey.com>
3522
3523         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3524         (token_fifo): Now a std::vector.
3525         (yylex, c_parse): Update.
3526         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3527         (token_fifo): Now a std::vector.
3528         (yylex, d_parse): Update.
3529         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3530         (token_fifo): Now a std::vector.
3531         (yylex, go_parse): Update.
3532
3533 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3534
3535         * parser-defs.h (struct type_stack) <elements>: Change type to
3536         std::vector<union type_stack_elt>.
3537         <depth, size>: Remove.
3538         * parse.c (parse_exp_in_context_1): Adjust.
3539         (type_stack_reserve): Remove.
3540         (check_type_stack_depth): Remove.
3541         (insert_into_type_stack): Adjust to std::vector.
3542         (insert_type): Likewise.
3543         (push_type): Likewise.
3544         (push_type_int): Likewise.
3545         (insert_type_address_space): Likewise.
3546         (pop_type): Likewise.
3547         (pop_type_int): Likewise.
3548         (pop_typelist): Likewise.
3549         (pop_type_stack): Likewise.
3550         (append_type_stack): Likewise.
3551         (push_type_stack): Likewise.
3552         (get_type_stack): Likewise.
3553         (type_stack_cleanup): Likewise.
3554         (push_typelist): Likewise.
3555         (follow_types): Likewise.
3556         (_initialize_parse): Likewise.
3557
3558 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3559
3560         * NEWS: Mention csky target.
3561
3562 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3563             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3564             Don Breazeal  <donb@codesourcery.com>
3565
3566         * csky-linux-tdep.c: New file.
3567         * csky-tdep.c: Likewise.
3568         * csky-tdep.h: Likewise.
3569         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3570         csky-tdep.o.
3571         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3572         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3573         * configure.tgt: Add csky support.
3574
3575 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3576
3577         * python/py-framefilter.c (py_print_frame): Print frame architecture
3578         when printing on an MI output.
3579
3580 2018-08-27  Tom Tromey  <tom@tromey.com>
3581
3582         PR build/23087:
3583         * configure: Rebuild.
3584         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3585
3586 2018-08-27  Tom Tromey  <tom@tromey.com>
3587
3588         * aarch64-linux-tdep.c
3589         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3590         casts to int.
3591
3592 2018-08-27  Tom Tromey  <tom@tromey.com>
3593
3594         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3595         unsigned.
3596         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3597         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3598         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3599         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3600         unsigned.
3601
3602 2018-08-27  Tom Tromey  <tom@tromey.com>
3603
3604         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3605         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3606
3607 2018-08-27  Tom Tromey  <tom@tromey.com>
3608
3609         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3610         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3611         ULONGEST_MAX.
3612         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3613         ULONGEST_MAX.
3614         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3615         ULONGEST_MAX.
3616         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3617         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3618         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3619         ULONGEST_MAX.
3620         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3621         (ppc64_linux_sigaction_tramp_frame)
3622         (ppc32_linux_sighandler_tramp_frame)
3623         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3624         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3625         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3626         * mn10300-linux-tdep.c (am33_linux_sigframe)
3627         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3628         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3629         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3630         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3631         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3632         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3633         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3634         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3635         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3636         * microblaze-linux-tdep.c
3637         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3638         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3639         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3640         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3641         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3642         * common/common-types.h (ULONGEST_MAX): New define.
3643         (CORE_ADDR_MAX): Fix formatting.
3644         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3645         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3646         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3647         (arm_linux_rt_sigreturn_tramp_frame)
3648         (arm_eabi_linux_sigreturn_tramp_frame)
3649         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3650         (thumb2_eabi_linux_sigreturn_tramp_frame)
3651         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3652         (arm_linux_restart_syscall_tramp_frame)
3653         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3654         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3655         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3656         ULONGEST_MAX.
3657         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3658
3659 2018-08-27  Tom Tromey  <tom@tromey.com>
3660
3661         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3662         CORE_ADDR_MAX.
3663         * mips-tdep.c (mips_deal_with_atomic_sequence)
3664         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3665         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3666         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3667         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3668         CORE_ADDR_MAX.
3669         * aarch64-tdep.c (aarch64_software_single_step): Use
3670         CORE_ADDR_MAX.
3671
3672 2018-08-27  Tom Tromey  <tom@tromey.com>
3673
3674         * linespec.c (complete_linespec_component): Add cast to "char".
3675         * completer.c (completion_tracker::build_completion_result): Add
3676         cast to "char".
3677
3678 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3679
3680         * solist.h (struct solist, struct target_so_ops): Fix
3681         indentation.
3682
3683 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3684
3685         * ada-tasks.c (ada_task_info_s): Remove typedef.
3686         (DEF_VEC_O(ada_task_info_s)): Remove.
3687         (struct ada_tasks_inferior_data): Initialize fields.
3688         <task_list>: Make an std::vector.
3689         (get_ada_tasks_inferior_data): Allocate with new.
3690         (ada_get_task_number): Adjust.
3691         (get_task_number_from_id): Likewise.
3692         (valid_task_id): Likewise.
3693         (ada_get_task_info_from_ptid): Likewise.
3694         (iterate_over_live_ada_tasks): Likewise.
3695         (add_ada_task): Likewise.
3696         (read_known_tasks): Likewise.
3697         (ada_build_task_list): Likewise.
3698         (print_ada_task_info): Likewise.
3699         (info_task): Likewise.
3700         (task_command_1): Likewise.
3701
3702 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3703
3704         * ada-lang.c (add_angle_brackets): Return std::string.
3705
3706 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3707
3708         * python/py-threadevent.c (py_get_event_thread): Initialize
3709         pythread.
3710
3711 2018-08-24  Pedro Alves  <palves@redhat.com>
3712
3713         * python/py-bpevent.c (create_breakpoint_event_object): Use
3714         copy-initialization.
3715         * python/py-continueevent.c (emit_continue_event): Use
3716         copy-initialization.
3717         * python/py-exitedevent.c (create_exited_event_object): Return a
3718         gdbpy_ref<>.
3719         (emit_exited_event): Use copy-initialization.
3720         * python/py-inferior.c (python_new_inferior)
3721         (python_inferior_deleted, add_thread_object): Use
3722         copy-initialization.
3723         * python/py-infevents.c (create_inferior_call_event_object)
3724         (create_register_changed_event_object)
3725         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3726         (emit_inferior_call_event, emit_memory_changed_event)
3727         (emit_register_changed_event): Use copy-initialization.
3728         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3729         Return a gdbpy_ref<>.
3730         (emit_new_objfile_event): Use copy-initialization.
3731         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3732         (emit_clear_objfiles_event): Use copy-initialization.
3733         * python/py-signalevent.c (create_signal_event_object): Use
3734         copy-initialization.
3735         * python/py-threadevent.c (create_thread_event_object): Use
3736         copy-initialization.
3737
3738 2018-08-24  Pedro Alves  <palves@redhat.com>
3739             Simon Marchi  <simon.marchi@ericsson.com>
3740
3741         PR gdb/23379
3742         * python/py-continueevent.c: Include "gdbthread.h".
3743         (create_continue_event_object): Add intro comment.  Add 'ptid'
3744         parameter.  Use it to find thread to pass to
3745         create_thread_event_object.
3746         (emit_continue_event): Pass PTID down to
3747         create_continue_event_object.
3748         * python/py-event.h (py_get_event_thread): Declare.
3749         (create_thread_event_object): Remove default from 'thread'
3750         parameter.
3751         * python/py-stopevent.c (create_stop_event_object): Use
3752         py_get_event_thread.
3753         * python/py-threadevent.c (get_event_thread): Rename to ...
3754         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3755         and use it to find the thread.
3756         (create_thread_event_object): Assert that THREAD isn't null.
3757         Don't find the event thread here.
3758
3759 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3760
3761         * block.h (blockrange, blockranges): New struct declarations.
3762         (struct block): Add new field named `ranges'.
3763         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3764         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3765         macros for accessing ranges in struct block.
3766         (make_blockranges): New declaration.
3767         block.c (make_blockranges): New function.
3768         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3769         for block.
3770         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3771         * blockframe.c (cache_pc_function_block): New static global.
3772         (clear_pc_function_cache): Clear cache_pc_function_block.
3773         (find_pc_partial_function): Move comment to symtab.h.  Add
3774         support for non-contiguous blocks.
3775         * cli/cli-cmds.c (block.h): Include.
3776         (print_disassembly): Handle printing of non-contiguous blocks.
3777         (disassemble_current_function): Likewise.
3778         (disassemble_command): Likewise.
3779
3780         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3781         BLOCK_START.
3782         * blockframe.c (get_pc_function_start): Likewise.
3783         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3784         (gcc_symbol_address): Likewise.
3785         * compile/compile-object-run.c (compile_object_run): Likewise.
3786         * compile/compile.c (get_expr_block_and_pc): Likewise.
3787         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3788         (func_addr_to_tail_call_list): Likewise.
3789         * findvar.c (default_read_var_value): Likewise.
3790         * inline-frame.c (inline_frame_this_id): Likewise.
3791         (skip-inline_frames): Likewise.
3792         * infcmd.c (until_next_command): Likewise.
3793         * linespec.c (convert_linespec_to_sals): Likewise.
3794         * parse.c (parse_exp_in_context_1): Likewise.
3795         * printcmd.c (build_address_symbolic): likewise.
3796         (info_address_command): Likewise.
3797         symtab.c (find_function_start_sal): Likewise.
3798         (skip_prologue_sal): Likewise.
3799         (find_function_alias_target): Likewise.
3800         (find_gnu_ifunc): Likewise.
3801         * stack.c (find_frame_funname): Likewise.
3802         * symtab.c (fixup_symbol_section): Likewise.
3803         (find_function_start_sal): Likewise.
3804         (skip_prologue_sal): Likewsie.
3805         (find_function_alias_target): Likewise.
3806         (find_gnu_ifunc): Likewise.
3807         * tracepoint.c (info_scope_command): Likewise.
3808         * value.c (value_fn_field): Likewise.
3809
3810         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3811         in place of find_pc_partial_function.
3812         * blockframe.c (find_function_entry_range_from_pc): New function.
3813         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3814         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3815         for each range in a block.
3816
3817
3818 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3819
3820         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3821         incrementation.
3822
3823 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3824
3825         * solib-svr4.c (read_program_headers_from_bfd): Return
3826         gdb::optional<gdb::byte_vector>.
3827         (svr4_exec_displacement): Adjust.
3828
3829 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3830
3831         * solib-svr4.c (read_program_header): Return
3832         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3833         (find_program_interpreter): Return
3834         gdb::optional<gdb::byte_vector>.
3835         (scan_dyntag_auxv): Adjust.
3836         (enable_break): Adjust.
3837         (svr4_exec_displacement): Adjust.
3838
3839 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3840
3841         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3842         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3843
3844 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3845
3846         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3847         string_vprintf.
3848         * guile/scm-utils.c (gdbscm_printf): Likewise.
3849         * serial.c (serial_printf): Likewise.
3850         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3851
3852 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3853
3854         * stack.c (print_frame): Print frame architecture when printing on
3855         an MI output.
3856         * NEWS: Mention new "arch" attribute in frame output.
3857
3858 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3859
3860         * arch/aarch64.h (aarch64_regnum): Update comment.
3861
3862 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3863
3864         * NEWS: Add SVE to 8.2 section.
3865
3866 2018-08-21  Pedro Alves  <palves@redhat.com>
3867
3868         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3869         out from gdbscm_parse_function_args.
3870         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3871         gdbscm_parse_function_args_1.
3872
3873 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3874
3875         PR gdb/17816
3876         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3877         operator.
3878
3879 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3880
3881         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3882
3883 2018-08-19  Michael Spang  <spang@google.com>
3884
3885         PR gdb/11786
3886         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3887         for PT_TLS segments.
3888
3889 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3890
3891         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3892         dwarf_variable_value.
3893         * dwarf2-frame.c (class dwarf_expr_executor):
3894         Add override for dwarf_variable_value.
3895         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3896         (class symbol_needs_eval_context): Likewise.
3897         (indirect_synthetic_pointer): Add forward declaration.
3898         (sect_variable_value): New function.
3899         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3900         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3901         for DW_OP_GNU_variable_value.
3902
3903 2018-08-16  Tom Tromey  <tom@tromey.com>
3904
3905         * top.c (read_command_file): Update.
3906         (command_line_input): Remove "repeat" argument.
3907         * ada-lang.c (get_selections): Update.
3908         * linespec.c (decode_line_2): Update.
3909         * defs.h (command_line_input): Remove argument.
3910         * cli/cli-script.c (read_next_line): Update.
3911         * python/py-gdb-readline.c: Update.
3912
3913 2018-08-17  Tom Tromey  <tom@tromey.com>
3914
3915         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3916         command_line_input.
3917
3918 2018-08-15  Tom Tromey  <tom@tromey.com>
3919
3920         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3921
3922 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3923
3924         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3925         If used, use find_pc_partial_function to find address range
3926         to disassemble.
3927         * mi/mi-main.c (mi_cmd_list_features): Report
3928         "data-disassemble-a-option" feature.
3929         * NEWS: Mention new -data-disassemble option -a.
3930
3931 2018-08-13  Tom Tromey  <tom@tromey.com>
3932
3933         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3934
3935 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3936
3937         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3938         (aarch64_linux_collect_sve_regset): Likewise.
3939         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3940         * regcache.h (regcache_map_entry_size): New function.
3941
3942 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3943
3944         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3945         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3946         (SVE_HEADER_VL_LENGTH): Likewise.
3947         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3948         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3949         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3950         (SVE_HEADER_SIZE_OFFSET): Likewise.
3951         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3952         (SVE_HEADER_VL_OFFSET): Likewise.
3953         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3954         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3955         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3956         (SVE_HEADER_SIZE): Likewise.
3957         (aarch64_linux_core_read_vq): Add function.
3958         (aarch64_linux_core_read_description): Check for SVE section.
3959
3960 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3961
3962         * aarch64-fbsd-tdep.c
3963         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3964         collect_size.
3965         * aarch64-linux-tdep.c
3966         (aarch64_linux_iterate_over_regset_sections): Likewise.
3967         * alpha-linux-tdep.c
3968         (alpha_linux_iterate_over_regset_sections):
3969         * alpha-nbsd-tdep.c
3970         (alphanbsd_iterate_over_regset_sections): Likewise.
3971         * amd64-fbsd-tdep.c
3972         (amd64fbsd_iterate_over_regset_sections): Likewise.
3973         * amd64-linux-tdep.c
3974         (amd64_linux_iterate_over_regset_sections): Likewise.
3975         * arm-bsd-tdep.c
3976         (armbsd_iterate_over_regset_sections): Likewise.
3977         * arm-fbsd-tdep.c
3978         (arm_fbsd_iterate_over_regset_sections): Likewise.
3979         * arm-linux-tdep.c
3980         (arm_linux_iterate_over_regset_sections): Likewise.
3981         * corelow.c (get_core_registers_cb): Likewise.
3982         (core_target::fetch_registers): Likewise.
3983         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3984         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3985         * gdbarch.h (void): Regenerate.
3986         * gdbarch.sh: Add supply_size and collect_size.
3987         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3988         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3989         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3990         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3991         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3992         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3993         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3994         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3995         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3996         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3997         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3998         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3999         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4000         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4001         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4002         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4003         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4004         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4005         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4006         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4007         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4008         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4009         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4010         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4011         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4012         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4013         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4014         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4015         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4016         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4017
4018 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4019
4020         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4021         with string_printf.
4022
4023 2018-08-10  Keith Seitz  <keiths@redhat.com>
4024
4025         * compile/compile-c-support.c (add_code_header, add_code_footer):
4026         Move into policy class.
4027         (c_push_user_expression, pop_user_expression_nop)
4028         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4029         (compile_program): New host class.
4030         (c_compile_program): New typedef.
4031         (c_compute_porgram): Use c_compile_program.
4032
4033 2018-08-10  Keith Seitz  <keiths@redhat.com>
4034
4035         * compile/compile-internal.h (compile_instance::~compile_instance):
4036         Remove calls to htab_delete.
4037         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4038         * compile.c (compile_instance::compile_instance): Initialize
4039         htab unique pointers.
4040         (compile_instance::get_cached_type, compile_instance::insert_type)
4041         (compile_instance::error_symbol_once): Update for unique_ptr.
4042
4043 2018-08-10  Keith Seitz  <keiths@redhat.com>
4044
4045         * compile/compile-c-symbols.c (struct symbol_error)
4046         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4047         (compile_instance::insert_symbol_error)
4048         (compile_instance::error_symbol_once): Move to ...
4049         * compile/compile.c: ... here.
4050
4051 2018-08-10  Keith Seitz  <keiths@redhat.com>
4052
4053         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4054         instead of `new_compile_instance'.
4055         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4056         Update description.
4057         If the symbol error map is not initialized, create it.
4058         (generate_c_for_for_one_symbol): Do not check/initialize
4059         the symbol error map.
4060         * compile/compile-c-types.c (compile_c_instance): Make a class.
4061         Update all callers.
4062         (compile_instance::compile_instance): Initialize the type cache.
4063         (get_cached_type): New function.
4064         (insert_type): Update description.
4065         (compile_c_instance::m_default_cflags): Define.
4066         (convert_type): Update description.  Use get_cached_type.
4067         (delete_instance): Moved to destructor.
4068         (new_compile_instance): Moved to constructor.
4069         * compile/compile-c.h (compile_c_instance): Make class inheriting
4070         from compile_instance.
4071         <base>: Remove field.
4072         <type_map, symbol_err_map>: Move to base class.
4073         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4074         * compile/compile-internal.h (compile_instance): Make class.
4075         <type_map_t, symbol_err_map_t>: Define.
4076         <fe>: Rename to `m_gcc_fe'.
4077         <scope, block, gcc_target_options>: Add `m_' prefix.
4078         <m_type_map, m_symbol_err_map>: New fields, moved from
4079         compile_c_instance.
4080         <destroy>: Remove.
4081         (convert_type, new_compile_instance): Remove.
4082         * compile/compile.c (cleanup_compile_instance): Remove.
4083         (compile_to_object): Use unique_ptr to eliminate cleanups.
4084         (compile_instance::set_print_callback, compile_instance::version)
4085         (compile_instance::set_verbose)
4086         (compile_instance::set_driver_filename)
4087         (compile_instance::set_triplet_regexp)
4088         (compile_instance::set_arguments)
4089         (compile_instance::set_source_file)
4090         (compile_instance::compile): Define.
4091
4092 2018-08-10  Keith Seitz  <keiths@redhat.com>
4093
4094         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4095         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4096         gcc-c-fe.def to define C plugin.
4097         (delete_instance): Delete `c_plugin'.
4098         (new_compile_instance): Initialize `c_plugin'.
4099         * compile/compile-c.h: Include gcc_c_plugin.h.
4100         (struct compile_c_instance) <c_plugin>: New member.
4101         * gcc-c-plugin.h: New file.
4102         Update all callers with API change.
4103
4104 2018-08-10  Keith Seitz  <keiths@redhat.com>
4105
4106         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4107         (HFILES_NO_SRCDIR): ... to here.
4108         Add compile-internal.h and compile-c.h.
4109         * compile/compile-c-support.c: Include compile-c.h.
4110         * compile/compile-c-symbols.c: Include compile-c.h.
4111         (generate_c_for_variable_locations): Update comment.
4112         * compile/compile-c-types.c: Include compile-c.h.
4113         * compile/compile-c.h: New file -- moved C language declarations
4114         from other files here.
4115         * compile/compile-internal.h: Do not include hashtab.h or
4116         common/enum-flags.h.
4117         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4118         (gcc_convert_symbol, gcc_symbol_address)
4119         (generate_c_for_variable_locations, c_get_mode_for_size)
4120         (c_get_range_decl_name): Definitions moved to compile-c.h.
4121         * compile/compile-loc2c.c: Include compile-c.h.
4122
4123 2018-08-10  Keith Seitz  <keiths@redhat.com>
4124
4125         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4126         (c_symbol_substitution_name): ... this.
4127         Update all callers.
4128
4129 2018-08-10  Keith Seitz  <keiths@redhat.com>
4130
4131         * compile/compile-c-support.c (c_compute_program): Use
4132         unique_xmalloc_ptr to eliminate cleanup.
4133         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4134         Return a unique_xmalloc_ptr and eliminate cleanup.
4135         * compile/compile-internal.h (generate_c_for_variable_locations):
4136         Return unique_xmalloc_ptr and update description.
4137
4138 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4139
4140         * corelow.c (core_target::get_core_register_section): Rename
4141         min_size to section_min_size.
4142
4143 2018-08-09  Jim Wilson  <jimw@sifive.com>
4144
4145         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4146         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4147         * NEWS: Mention new GNU/Linux RISC-V target.
4148         * configure.host: Add riscv*-*-linux*.
4149         * configure.nat: Add riscv*.
4150         * configure.tgt: Add riscv*-*-linux*.
4151         * riscv-linux-nat.c: New file.
4152         * riscv-linux-tdep.c: New file.
4153
4154 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4155
4156         * infrun.c (resume): Make static, add forward declaration.
4157         (proceed): Update header comment.
4158         * infrun.h (resume): Delete declaration.
4159
4160 2018-08-09  Tom Tromey  <tom@tromey.com>
4161
4162         * riscv-tdep.h: Minor formatting fixes.
4163
4164 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4165
4166         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4167         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4168         (test_mkdir_recursive): Likewise.
4169         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4170
4171 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4172
4173         * valarith.c (value_subscripted_rvalue): If an array is not in
4174         memory, and we don't know the upper bound, then we can't know that
4175         the requested element exists or not.
4176
4177 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4178
4179         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4180         (target_options_to_string): Add comment.
4181
4182 2018-08-08  Tom Tromey  <tom@tromey.com>
4183
4184         * unittests/scoped_mmap-selftests.c: Check result of "write".
4185
4186 2018-08-08  Jim Wilson  <jimw@sifive.com>
4187
4188         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4189         (decode_register_index_short): New.
4190         (decode_j_type_insn, decode_cj_type_insn): New.
4191         (decode_b_type_insn, decode_cb_type_insn): New.
4192         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4193         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4194         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4195         is_c_sw_insn instead of is_sw_insn.
4196         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4197         (riscv_software_single_step): New.
4198         * riscv-tdep.h (riscv_software_single_step): Declare.
4199
4200         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4201         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4202
4203 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4204
4205         PR gdb/18050:
4206         * target.c (dispose_inferior): Don't dispose of inferiors that are
4207         already killed.
4208
4209 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4210
4211         * remote.c (remote_target::download_tracepoint): Change char* to
4212         const char*.
4213
4214 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4215
4216         * target.h (target_options_to_string): Return an std::string.
4217         * target.c (str_comma_list_concat_elem): Return void, use
4218         std::string.
4219         (do_option): Likewise.
4220         (target_options_to_string): Return an std::string.
4221         * linux-nat.c (linux_nat_target::wait): Adjust.
4222         * target-debug.h (target_debug_print_options): Adjust.
4223
4224 2018-08-07  Tom Tromey  <tom@tromey.com>
4225
4226         * Makefile.in (CPPFLAGS): New variable.
4227         (INTERNAL_CPPFLAGS): Use it.
4228
4229 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4230
4231         * NEWS: Mention the index cache.
4232
4233 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4234
4235         * common/pathstuff.h (get_standard_cache_dir): New.
4236         * common/pathstuff.c (get_standard_cache_dir): New.
4237         * build-id.h (build_id_to_string): New.
4238         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4239         DEBUG_STR_SUFFIX): Move to here.
4240         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4241         DEBUG_STR_SUFFIX): Move from there.
4242         (write_psymtabs_to_index): Make non-static, add basename
4243         parameter.  Write to temporary files, rename when done.
4244         (save_gdb_index_command): Adjust call to
4245         write_psymtabs_to_index.
4246         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4247         field.
4248         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4249         (get_gdb_index_contents_from_cache): New.
4250         (get_gdb_index_contents_from_cache_dwz): New.
4251         (dwarf2_initialize_objfile): Read index from cache.
4252         (dwarf2_build_psymtabs): Save to index.
4253         * dwarf-index-cache.h: New file.
4254         * dwarf-index-cache.c: New file.
4255         * dwarf-index-write.h: New file.
4256
4257 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4258
4259         * gnulib/aclocal.m4: Re-generate.
4260         * gnulib/config.in: Re-generate.
4261         * gnulib/configure: Re-generate.
4262         * gnulib/import/Makefile.am: Re-generate.
4263         * gnulib/import/Makefile.in: Re-generate.
4264         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4265         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4266         * gnulib/import/m4/mkdir.m4: New file.
4267         * gnulib/import/mkdir.c: New file.
4268         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4269         module.
4270
4271 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4272
4273         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4274         * common/scoped_mmap.c: New file.
4275         * common/scoped_mmap.h (destroy): New method.
4276         (~scoped_mmap, reset): Use destroy.
4277         (scoped_mmap): New move constructor.
4278         (mmap_file): New declaration.
4279         * unittests/scoped_mmap-selftests.c (test_normal,
4280         test_invalid_filename, run_tests): New functions.
4281         (_initialize_scoped_mmap_selftests): Register selftest.
4282
4283 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4284
4285         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4286         (read_gdb_index_from_buffer): ... this.  Remove section
4287         parameter, add buffer parameter.
4288         (get_gdb_index_contents_ftype,
4289         get_gdb_index_contents_dwz_ftype): New typedefs.
4290         (dwarf2_read_gdb_index): Add callback parameters to get the
4291         index contents.
4292         (get_gdb_index_contents_from_section): New.
4293         (dwarf2_initialize_objfile): Update call to
4294         dwarf2_read_gdb_index.
4295
4296 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4297
4298         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4299         (gdb_open_cloexec): Likewise.
4300         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4301         (commandline_from_pid): Likewise.
4302         (linux_xfer_osdata_threads): Likewise.
4303         (linux_xfer_osdata_fds): Likewise.
4304         * ada-lang.c (is_package_name): Likewise.
4305         * auxv.c (procfs_xfer_auxv): Likewise.
4306         * breakpoint.c (print_one_breakpoint_location): Use
4307         uiout::field_fmt.
4308         (print_one_catch_solib): Use string_printf.
4309         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4310         (add_pe_forwarded_sym): Likewise.
4311         * dwarf2read.c (create_type_unit_group): Likewise.
4312         (build_error_marker_type): Likewise.
4313         * infcall.c (get_function_name): Likewise.
4314         * valprint.c (print_converted_chars_to_obstack): Likewise.
4315         * xtensa-tdep.c (xtensa_register_type): Likewise.
4316
4317 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4318
4319         * remote.c (remote_target::download_tracepoint): Fix format
4320         string errors.
4321
4322 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4323
4324         * tracefile.c: Include common/byte-vector.h.
4325         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4326         with trace_regblock_size if needed.  Update uses of buf.
4327
4328 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4329
4330         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4331         std::vector<unsigned char>.
4332         * tracepoint.c (collection_list::collection_list): Remove
4333         m_regs_mask initializer from initializer list.  Resize
4334         m_regs_mask using the largest remote register number.
4335         (collection_list::add_remote_register): Remove size check on
4336         m_regs_mask.  Use at to access element.
4337         (collection_list::stringify): Change type of temp_buf to
4338         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4339         stringify the register mask.  Use pack_hex_byte for the register
4340         mask.
4341
4342 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4343
4344         * tracepoint.h (class collection_list) <add_register>: Remove.
4345         <add_remote_register, add_ax_registers, add_local_register>:
4346         Declare.
4347         <add_memrange>: Add scope parameter.
4348         * tracepoint.c (encode_actions_1): Likewise.
4349         (collection_list::add_register): Rename to ...
4350         (collection_list::add_remote_register): ... this.  Update
4351         comment.
4352         (collection_list::add_ax_registers, add_local_register): New
4353         methods.
4354         (collection_list::add_memrange): Add scope parameter.  Call
4355         add_local_register instead of add_register.
4356         (finalize_tracepoint_aexpr): New function.
4357         (collection_list::collect_symbol): Update calls to add_memrange.
4358         Call add_local_register instead of add_register.  Call
4359         add_ax_registers.  Call finalize_tracepoint_aexpr.
4360         (encode_actions_1): Get remote regnos for $reg action.  Call
4361         add_remote_register, add_ax_registers, and add_local_register.
4362         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4363         (validate_actionline): Call finalize_tracepoint_aexpr.
4364
4365 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4366
4367         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4368         Replace array buf with gdb::char_vector buf, of size
4369         get_remote_packet_size ().  Replace references to buf and
4370         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4371         and xsnprintf with snprintf.  Raise errors if the buffer is too
4372         small.
4373
4374 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4375
4376         * remote.c (remote_target::download_tracepoint): Fix the has_more
4377         predicate in the QTDP action list iteration.
4378
4379 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4380
4381         * remote.c (remote_target::download_tracepoint): Fix indentation
4382         in for block.
4383
4384 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4385
4386         * proc-api.c (_initialize_proc_api): Remove c, unused.
4387         * procfs.c (procfs_init_inferior): Remove signals, unused.
4388         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4389         unused.
4390
4391 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4392             Andrew Burgess  <andrew.burgess@embecosm.com>
4393
4394         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4395         'W_STOPCODE (0)' as this could be ambiguous.
4396
4397 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4398
4399         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4400         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4401         "ai_socktype").
4402
4403 2018-08-02  Tom Tromey  <tom@tromey.com>
4404
4405         PR symtab/16842.
4406         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4407         symbols.
4408         (process_structure_scope): Likewise.
4409
4410 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4411
4412         PR gdb/22629:
4413         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4414         kill inferior.
4415
4416 2018-08-02  Tom Tromey  <tom@tromey.com>
4417
4418         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4419         (darwin_suspend_inferior, darwin_resume_inferior)
4420         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4421         (darwin_check_new_threads): Check result of get_darwin_inferior.
4422
4423 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4424
4425         GDB 8.1.1 released.
4426
4427 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4428
4429         * varobj.c (varobj_get_path_expr_parent): Report an error if
4430         parent is a dynamic varobj.
4431
4432 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4433
4434         * gnulib/aclocal.m4: Re-generate.
4435         * gnulib/config.in: Re-generate.
4436         * gnulib/configure: Re-generate.
4437         * gnulib/import/Makefile.in: Re-generate.
4438         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4439         * gnulib/import/m4/onceonly.m4: Re-generate.
4440
4441 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4442
4443         * target-descriptions.c (struct xml_test_tdesc): New.
4444         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4445         (record_xml_tdesc): Update.
4446         (maintenance_check_xml_descriptions): Update.
4447         * target-descriptions.h (record_xml_tdesc): Update comment.
4448
4449 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4450
4451         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4452         checking array bounds are defined.
4453
4454 2018-07-30  Tom Tromey  <tom@tromey.com>
4455
4456         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4457         irreflexivity violation.
4458
4459 2018-07-30  Tom Tromey  <tom@tromey.com>
4460
4461         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4462         * value.c (unpack_long): Remove lint code.
4463         * valops.c (value_ind): Remove lint code.
4464         * valarith.c (value_x_binop, value_x_unop, value_equal)
4465         (value_pos): Remove lint code.
4466
4467 2018-07-28  Tom de Vries  <tdevries@suse.de>
4468
4469         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4470         with undefined upper bound as <optimized out>.
4471
4472 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4473
4474         * gcore.in: Rename variable "name" to "prefix".  Expand
4475         "usage" text.
4476
4477 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4478
4479         * windows-nat.c (windows_nat_target::create_inferior): Update to
4480         call close() in global namespace.
4481
4482 2018-07-26  Tom Tromey  <tom@tromey.com>
4483
4484         * dwarf-index-write.c (add_address_entry): Don't add objfile
4485         offsets.
4486         * dbxread.c (find_stab_function): Rename from
4487         find_stab_function_addr.  Return a bound_minimal_symbol.
4488         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4489         Don't add objfile offsets.
4490         (end_psymtab): Use raw_text_low, raw_text_high,
4491         MSYMBOL_VALUE_RAW_ADDRESS.
4492         (read_ofile_symtab): Update.
4493         (process_one_symbol): Update.
4494         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4495         offsets.
4496         (dw2_relocate): Remove.
4497         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4498         searching addrmap.
4499         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4500         Update.
4501         (process_psymtab_comp_unit_reader, add_partial_symbol)
4502         (add_partial_subprogram, dwarf2_ranges_read): Update.
4503         (load_partial_dies): Update.
4504         (add_address_entry): Don't add objfile offsets.
4505         (dwarf2_build_include_psymtabs): Update.
4506         (create_addrmap_from_aranges): Don't add objfile offsets.
4507         (dw2_find_pc_sect_compunit_symtab): Update.
4508         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4509         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4510         Update.
4511         (parse_partial_symbols): Don't add objfile offsets.  Use
4512         raw_text_low, raw_text_high.  Update.
4513         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4514         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4515         or call 'relocate' quick function.  Clear psymbol_map.
4516         * psympriv.h (struct partial_symbol) <address>: Add section
4517         offset.
4518         <set_unrelocated_address>: Rename from set_address.
4519         <raw_text_low, raw_text_high>: New methods.
4520         <text_low, text_high>: Add objfile parameter.
4521         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4522         set_unrelocated_address.
4523         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4524         (find_pc_psymbol): Update.
4525         (fixup_psymbol_section, relocate_psymtabs): Remove.
4526         (dump_psymtab, psym_functions): Update.
4527         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4528         parameter.
4529         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4530         (start_psymtab_common): Update.
4531         * symfile-debug.c (debug_qf_relocate): Remove.
4532         (debug_sym_quick_functions): Update.
4533         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4534         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4535         Update.
4536
4537 2018-07-26  Tom Tromey  <tromey@redhat.com>
4538
4539         * dbxread.c (end_psymtab): Use text_high_valid and
4540         text_low_valid.
4541         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4542         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4543         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4544         Update comment.
4545         <text_low_valid, text_high_valid>: New fields.
4546         <set_text_low, set_text_high>: Update.
4547         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4548
4549 2018-07-26  Tom Tromey  <tom@tromey.com>
4550
4551         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4552         Update.
4553         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4554         textlow and texthigh fields.
4555         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4556         Update.
4557         * mdebugread.c (parse_lines, parse_partial_symbols)
4558         (psymtab_to_symtab_1): Update.
4559         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4560         Rename fields.  Update comment.  Now private.
4561         <text_low, text_high, set_text_low, set_text_high>: New methods.
4562         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4563         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4564         (start_psymtab_common, maintenance_info_psymtabs)
4565         (maintenance_check_psymtabs): Update.
4566         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4567         texthigh fields.
4568         (scan_xcoff_symtab): Update.
4569
4570 2018-07-26  Tom Tromey  <tromey@redhat.com>
4571
4572         * psympriv.h (struct partial_symbol) <unrelocated_address,
4573         address, set_address>: New methods.
4574         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4575         (fixup_psymbol_section, relocate_psymtabs): Update.
4576         (print_partial_symbols): Add 'objfile' parameter.  Update.
4577         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4578         Update.
4579
4580 2018-07-26  Tom Tromey  <tom@tromey.com>
4581
4582         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4583         (debug_names::write_psymbols): Update.
4584         * psympriv.h (struct partial_symbol): Derive from
4585         general_symbol_info.
4586         <obj_section>: New method.
4587         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4588         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4589         (find_pc_sect_psymbol, fixup_psymbol_section)
4590         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4591         (print_partial_symbols, recursively_search_psymtabs)
4592         (compare_psymbols, psymbol_hash, psymbol_compare)
4593         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4594         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4595
4596 2018-07-26  Tom Tromey  <tromey@redhat.com>
4597
4598         * dbxread.c (end_psymtab): Remove dead code.
4599
4600 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4601
4602         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4603         DWARF unwinders are disabled.
4604         * dwarf2-frame.c: Add dwarf2read.h include.
4605         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4606         disabled.
4607         (dwarf2_frame_unwinders_enabled_p): Define.
4608         (show_dwarf_unwinders_enabled_p): New function.
4609         (_initialize_dwarf2_frame): Register switch to control DWARF
4610         unwinder use.
4611         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4612         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4613         (show_dwarf_cmdlist): Remove static keyword.
4614         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4615         (show_dwarf_cmdlist): Declare.
4616         * NEWS: Document new feature.
4617
4618 2018-07-26  Tom de Vries  <tdevries@suse.de>
4619
4620         PR breakpoints/23366
4621         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4622
4623 2018-07-26  Tom de Vries  <tdevries@suse.de>
4624
4625         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4626         DW_AT_count can't be translated to a dynamic prop.
4627
4628 2018-07-25  Tom de Vries  <tdevries@suse.de>
4629
4630         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4631         try/catch.
4632
4633 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4634
4635         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4636
4637 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4638
4639         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4640
4641 2018-07-24  Keith Seitz  <keiths@redhat.comt
4642
4643         PR symtab/23010
4644         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4645         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4646         instead of add_symbol_to_list.
4647         (read_file_scope): Call prepare_one_comp_unit before reading
4648         any other DIEs.
4649
4650 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4651
4652         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4653
4654 2018-07-24  Tom Tromey  <tom@tromey.com>
4655
4656         * utils.c (malloc, realloc, free): Don't declare.
4657         * configure, config.in: Rebuild.
4658         * configure.ac: Don't check for declarations of free, malloc, or
4659         realloc.
4660
4661 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4662
4663         * aarch64-linux-nat.c
4664         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4665         variable.
4666         * arm-linux-nat.c (fetch_regs): Likewise.
4667         (store_regs): Likewise.
4668         (fetch_vfp_regs): Likewise.
4669         (store_vfp_regs): Likewise.
4670         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4671         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4672         (arm_linux_nat_target::insert_watchpoint): Likewise.
4673         (arm_linux_nat_target::remove_watchpoint): Likewise.
4674         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4675         Likewise.
4676         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4677         Likewise.
4678         * ppc-linux-nat.c (fetch_register): Likewise.
4679         (fetch_all_gp_regs): Likewise.
4680         (fetch_ppc_registers): Likewise.
4681         (store_all_gp_regs): Likewise.
4682         (store_ppc_registers): Likewise.
4683         (hwdebug_insert_point): Likewise.
4684         (can_use_watchpoint_cond_accel): Likewise.
4685         * remote-sim.c (gdb_os_write_stdout): Likewise.
4686
4687 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4688             Tom Tromey  <tom@tromey.com>
4689
4690         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4691         test for it.
4692         * configure: Rebuild.
4693
4694 2018-07-22  Tom Tromey  <tom@tromey.com>
4695
4696         * regformats/regdat.sh: Define xmltarget_${name} inside
4697         #ifndef IN_PROCESS_AGENT.
4698
4699 2018-07-22  Tom Tromey  <tom@tromey.com>
4700
4701         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4702
4703 2018-07-22  Tom Tromey  <tom@tromey.com>
4704
4705         * symfile.c (reread_symbols): Notify iter, not objfile.
4706
4707 2018-07-22  Tom Tromey  <tom@tromey.com>
4708
4709         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4710         Use arch_ops.
4711         (ravenscar_thread_target::prepare_to_store): Likewise.
4712
4713 2018-07-22  Tom Tromey  <tom@tromey.com>
4714
4715         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4716         unused variable.  Call value_fetch_lazy when needed.
4717         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4718         Remove unused variable.  Call value_fetch_lazy when needed.
4719
4720 2018-07-22  Tom Tromey  <tom@tromey.com>
4721
4722         * m32c-tdep.c (mark_dma): Return void.
4723         (make_regs): Remove unused declarations.
4724
4725 2018-07-22  Tom Tromey  <tom@tromey.com>
4726
4727         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4728         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4729         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4730         bkscm_get_valid_block_smob_arg_unsafe for effect.
4731
4732 2018-07-22  Tom Tromey  <tom@tromey.com>
4733
4734         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4735         value_type.
4736
4737 2018-07-22  Tom Tromey  <tom@tromey.com>
4738
4739         * windows-nat.c (saved_context): Conditionally define.
4740         * remote.c (remote_target::remote_btrace_maybe_reopen):
4741         Conditionally declare "warned".
4742         * inflow.c (sigquit_ours): Conditionally define.
4743         (new_tty): Move "tty" declaration inside #if.
4744         * guile/guile.c (guile_datadir): Conditionally define.
4745         * charset.c (set_be_le_names): Move some declarations inside #if.
4746         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4747         #if.
4748         (parse_xml_btrace_conf): Likewise.
4749
4750 2018-07-22  Tom Tromey  <tom@tromey.com>
4751
4752         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4753
4754 2018-07-22  Tom Tromey  <tom@tromey.com>
4755
4756         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4757         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4758         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4759         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4760         * stack.c (frame_apply_level_command): Remove unused variable.
4761         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4762         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4763         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4764         unused variable.
4765         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4766         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4767         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4768         variable.
4769         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4770         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4771         variable.
4772         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4773         Remove unused variable.
4774         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4775         variable.
4776         * common/tdesc.c (print_xml_feature::visit): Remove unused
4777         variable.
4778         * compile/compile-object-load.c (store_regs): Remove unused
4779         variables.
4780         * complaints.c (clear_complaints): Remove unused variable.
4781         * corelow.c (core_target_open): Remove unused variable.
4782         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4783         variable.
4784         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4785         variable.
4786         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4787         variable.
4788         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4789         variable.
4790         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4791         variable.
4792         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4793         variable.
4794         * ia64-tdep.c (examine_prologue): Remove unused variable.
4795         * infcall.c (run_inferior_call): Remove unused variable.
4796         * inferior.c (exit_inferior): Remove unused variable.
4797         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4798         * linespec.c (decode_line_2): Remove unused variable.
4799         * linux-nat.c (super_close): Remove.
4800         * linux-tdep.c (linux_info_proc): Remove unused variable.
4801         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4802         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4803         Remove unused variable.
4804         * parse.c (find_minsym_type_and_address): Remove unused variable.
4805         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4806         variable.
4807         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4808         variable.
4809         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4810         variables.
4811         * record-btrace.c (record_btrace_target::store_registers): Remove
4812         unused variable.
4813         (cmd_show_record_btrace_cpu): Remove unused variable.
4814         * riscv-tdep.c (riscv_register_reggroup_p)
4815         (riscv_push_dummy_call, riscv_return_value): Remove unused
4816         variable.
4817         * rust-exp.y (literal): Remove unused variable.
4818         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4819         unused variable.
4820         <STRUCTOP_ANONYMOUS>: Likewise.
4821         * s390-linux-tdep.c (s390_linux_init_abi_31)
4822         (s390_linux_init_abi_64): Remove unused variable.
4823         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4824         (file_select_thread, net_windows_open, _initialize_ser_windows):
4825         Remove unused variables.
4826         * symtab.c (find_pc_sect_line): Remove unused variable.
4827         * target-memory.c (compute_garbled_blocks): Remove unused
4828         variable.
4829         (target_write_memory_blocks): Remove unused variable.
4830         * target.c (target_stack::unpush): Remove unused variables.
4831         * tracepoint.c (start_tracing, all_tracepoint_actions)
4832         (merge_uploaded_trace_state_variables)
4833         (print_one_static_tracepoint_marker): Remove unused variable.
4834         * unittests/basic_string_view/element_access/char/1.cc (test01):
4835         Remove unused variable.
4836         * windows-nat.c (windows_continue, windows_add_all_dlls)
4837         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4838         Remove unused variables.
4839
4840 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4841
4842         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4843         attr_profile in HAVE_ELF.
4844         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4845         HAVE_ELF.
4846
4847 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4848
4849         * frame.c (frame_register_unwind): Change parameter name.
4850         (frame_unwind_register): Likewise.
4851         (frame_unwind_register_value): Likewise.
4852         (frame_unwind_register_signed): Likewise.
4853         (frame_unwind_register_unsigned): Likewise.
4854         * frame.h (frame_register_unwind): Likewise.
4855         (frame_unwind_register): Likewise.
4856         (frame_unwind_register_value): Likewise.
4857         (frame_unwind_register_signed): Likewise.
4858         (frame_unwind_register_unsigned): Likewise.
4859         (frame_unwind_arch): Likewise.
4860
4861 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4862
4863         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4864         ISA maintenance.
4865
4866 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4867
4868         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4869         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4870         hand.
4871
4872 2018-07-20  Keith Seitz  <keiths@redhat.com>
4873
4874         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4875         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4876         m_compunit_symtab, m_language>: Add "m_" prefix.
4877         Update all uses.
4878         * buildsym.c: Update all uses.
4879
4880 2018-07-20  Tom Tromey  <tom@tromey.com>
4881
4882         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4883         * buildsym.h (record_line_ftype): Remove typedef.
4884
4885 2018-07-20  Tom Tromey  <tom@tromey.com>
4886
4887         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4888         (end_expandable_symtab): Likewise.
4889         (end_symtab_get_static_block): Likewise.
4890         (end_symtab_from_static_block): Likewise.
4891         * buildsym-legacy.c (augment_type_symtab): Remove.
4892         (end_expandable_symtab): Remove.
4893         (end_symtab_get_static_block): Remove.
4894         (end_symtab_from_static_block): Remove.
4895
4896 2018-07-20  Tom Tromey  <tom@tromey.com>
4897
4898         * dwarf2read.c: Include buildsym.h.
4899         (struct dwarf2_cu) <builder>: New method.
4900         (fixup_go_packaging): Update.
4901         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4902         use scoped_free_pendings.
4903         (using_directives): Add "cu" parameter, remove "language".
4904         (read_import_statement, setup_type_unit_groups, )
4905         (read_func_scope, read_lexical_block_scope)
4906         (dwarf2_record_block_ranges, read_namespace): Update.
4907         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4908         (lnp_state_machine::handle_end_sequence): Update.
4909         (class lnp_state_machine) <m_cu>: New member.
4910         <m_record_line_callback>: Remove.
4911         <m_currently_recording_lines>: New member.
4912         (lnp_state_machine::handle_set_file): Update.
4913         (noop_record_line): Remove.
4914         (dwarf_record_line_p): Add cu parameter.
4915         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4916         (lnp_state_machine::record_line)
4917         (lnp_state_machine::lnp_state_machine)
4918         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4919         (dwarf_decode_lines): Update.
4920         (dwarf2_start_subfile): Add cu parameter.
4921         (dwarf2_start_symtab, new_symbol): Update.
4922         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4923         Remove dwarf2_per_objfile parameter.
4924         (dwarf_decode_macros): Update.
4925
4926 2018-07-20  Tom Tromey  <tom@tromey.com>
4927
4928         * stabsread.c (define_symbol): Update.
4929         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4930         * dwarf2read.c (new_symbol): Update.
4931         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4932         * cp-namespace.c: Include buildsym.h.
4933         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4934         * buildsym-legacy.c (get_buildsym_compunit): New function.
4935
4936 2018-07-20  Tom Tromey  <tom@tromey.com>
4937
4938         * xcoffread.c: Include buildsym-legacy.h.
4939         * windows-nat.c: Include buildsym-legacy.h.
4940         * stabsread.c: Include buildsym-legacy.h.
4941         * mdebugread.c: Include buildsym-legacy.h.
4942         * buildsym-legacy.h: New file.
4943         * buildsym-legacy.c: New file, from buildsym.c.
4944         * go32-nat.c: Include buildsym-legacy.h.
4945         * dwarf2read.c: Include buildsym-legacy.h.
4946         * dbxread.c: Include buildsym-legacy.h.
4947         * cp-namespace.c: Include buildsym-legacy.h.
4948         * coffread.c: Include buildsym-legacy.h.
4949         * buildsym.h: Move some contents to buildsym-legacy.h.
4950         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4951         buildsym-legacy.c.
4952         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4953
4954 2018-07-20  Tom Tromey  <tom@tromey.com>
4955
4956         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4957         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4958         (buildsym_compunit::buildsym_compunit)
4959         (buildsym_compunit::~buildsym_compunit)
4960         (buildsym_compunit::get_macro_table): Define.
4961
4962 2018-07-20  Tom Tromey  <tom@tromey.com>
4963
4964         * buildsym.c (reset_symtab_globals): Remove.
4965         (buildsym_compunit::end_symtab_from_static_block): Update.
4966         (buildsym_compunit::augment_type_symtab): Update.
4967         (end_symtab_from_static_block): Call free_buildsym_compunit.
4968         (augment_type_symtab, end_symtab, end_expandable_symtab):
4969         Likewise.
4970
4971 2018-07-20  Tom Tromey  <tom@tromey.com>
4972
4973         * arch-utils.c: Do not include buildsym.h.
4974         * mipsread.c: Do not include buildsym.h.
4975         * machoread.c: Do not include buildsym.h.
4976         * elfread.c: Do not include buildsym.h.
4977
4978 2018-07-20  Tom Tromey  <tom@tromey.com>
4979
4980         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4981         initialization.
4982         (buildsym_compunit): Add new constructor.
4983         (struct buildsym_compunit) <get_last_source_file, finish_block,
4984         record_block_range, start_subfile, patch_subfile_names,
4985         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4986         set_last_source_start_addr, get_last_source_start_addr,
4987         get_local_using_directives, set_local_using_directives,
4988         get_global_using_directives, outermost_context_p,
4989         get_current_context_stack, get_context_stack_depth,
4990         get_current_subfile, get_local_symbols, get_file_symbols,
4991         get_global_symbols, record_debugformat, record_producer,
4992         push_context, pop_context, end_symtab_get_static_block,
4993         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4994         New public methods.
4995         <record_pending_block, finish_block_internal, make_blockvector,
4996         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4997         private methods.
4998         Update all users.
4999
5000 2018-05-22  Tom Tromey  <tom@tromey.com>
5001
5002         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5003         parameter.
5004         (finish_block_internal): Update.
5005
5006 2018-07-20  Tom Tromey  <tom@tromey.com>
5007
5008         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5009         parameter.
5010         (finish_block_internal): Update.
5011
5012 2018-07-20  Tom Tromey  <tom@tromey.com>
5013
5014         * buildsym.h (EXTERN): Don't define or undef.
5015         * buildsym.c (EXTERN): Don't define.
5016
5017 2018-07-20  Tom Tromey  <tom@tromey.com>
5018
5019         * buildsym.c: Remove TODO comment.
5020
5021 2018-07-20  Tom Tromey  <tom@tromey.com>
5022
5023         * coffread.c (coff_symtab_read): Update.
5024         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5025         (xcoff_new_init): Update.
5026         * mipsread.c (mipscoff_new_init): Update.
5027         * mdebugread.c (mdebug_build_psymtabs): Update.
5028         * elfread.c (elf_new_init): Update.
5029         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5030         Update.
5031         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5032         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5033         (stabsect_build_psymtabs): Update.
5034         * buildsym.h (buildsym_init): Don't declare.
5035         * buildsym.c: Update comment.
5036         (prepare_for_building): Remove.
5037         (start_symtab, restart_symtab): Update.
5038         (reset_symtab_globals): Update comment.
5039         (buildsym_init): Remove.
5040
5041 2018-07-20  Tom Tromey  <tom@tromey.com>
5042
5043         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5044         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5045         (read_enum_type, common_block_start, common_block_end)
5046         (cleanup_undefined_types_1, finish_global_stabs): Update.
5047         * mdebugread.c (psymtab_to_symtab_1): Update.
5048         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5049         (read_lexical_block_scope, new_symbol): Update.
5050         * dbxread.c (process_one_symbol): Update.
5051         * coffread.c (coff_symtab_read, process_coff_symbol)
5052         (coff_read_enum_type): Update.
5053         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5054         declare.
5055         (get_local_symbols, get_file_symbols, get_global_symbols): New
5056         functions.
5057         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5058         m_global_symbols.
5059         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5060         (~scoped_free_pendings): Update.
5061         (finish_block, prepare_for_building, reset_symtab_globals)
5062         (end_symtab_get_static_block, end_symtab_with_blockvector)
5063         (augment_type_symtab, push_context): Update.
5064         (get_local_symbols, get_file_symbols, get_global_symbols): New
5065         functions.
5066         (buildsym_init): Update.
5067
5068 2018-07-20  Tom Tromey  <tom@tromey.com>
5069
5070         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5071         (process_full_type_unit): Likewise.
5072         (dwarf2_start_symtab): Set list_in_scope.
5073
5074 2018-07-20  Tom Tromey  <tom@tromey.com>
5075
5076         * dwarf2read.c (process_psymtab_comp_unit_reader)
5077         (build_type_psymtabs_reader): Do not set list_in_scope.
5078
5079 2018-07-20  Tom Tromey  <tom@tromey.com>
5080
5081         * buildsym.c (free_pendings): Remove.
5082         (add_symbol_to_list, scoped_free_pendings)
5083         (finish_block_internal, buildsym_init): Update.
5084
5085 2018-07-20  Tom Tromey  <tom@tromey.com>
5086
5087         * xcoffread.c (read_xcoff_symtab): Update.
5088         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5089         Update.
5090         * dbxread.c (process_one_symbol): Update.
5091         * coffread.c (coff_symtab_read): Update.
5092         * buildsym.h (finish_block): Update.
5093         * buildsym.c (finish_block): Remove "listhead" argument.
5094         (end_symtab_get_static_block): Update.
5095
5096 2018-07-20  Tom Tromey  <tom@tromey.com>
5097
5098         * buildsym.h (class scoped_free_pendings): Remove constructor.
5099         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5100         method.
5101         <m_pending_block_obstack, m_pending_blocks>: New members.
5102         (pending_block_obstack, pending_blocks): Remove.
5103         (scoped_free_pendings::scoped_free_pendings): Default.
5104         (~scoped_free_pendings): Update.
5105         (free_pending_blocks): Remove.
5106         (finish_block_internal, record_pending_block, make_blockvector)
5107         (end_symtab_get_static_block, augment_type_symtab, push_context)
5108         (buildsym_init): Update.
5109
5110 2018-07-20  Tom Tromey  <tom@tromey.com>
5111
5112         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5113         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5114         members.
5115         (pending_addrmap, pending_addrmap_obstack)
5116         (pending_addrmap_interesting): Remove.
5117         (scoped_free_pendings, record_block_range, make_blockvector)
5118         (prepare_for_building, reset_symtab_globals, buildsym_init):
5119         Update.
5120
5121 2018-07-20  Tom Tromey  <tom@tromey.com>
5122
5123         * xcoffread.c (process_linenos): Update.
5124         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5125         * mdebugread.c (psymtab_to_symtab_1): Update.
5126         * dwarf2read.c (setup_type_unit_groups)
5127         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5128         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5129         * dbxread.c (process_one_symbol): Update.
5130         * coffread.c (coff_symtab_read, enter_linenos)
5131         (process_coff_symbol): Update.
5132         * buildsym.h (current_subfile): Don't declare.
5133         (get_current_subfile): Declare.
5134         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5135         member.
5136         (start_subfile, free_buildsym_compunit, push_subfile)
5137         (prepare_for_building, start_symtab): Update.
5138         (get_current_subfile): New function.
5139
5140 2018-07-20  Tom Tromey  <tom@tromey.com>
5141
5142         * coffread.c (coff_symtab_read): Update.
5143         * xcoffread.c (read_xcoff_symtab): Update.
5144         * dwarf2read.c (new_symbol): Update.
5145         (read_func_scope, read_lexical_block_scope): Update.
5146         * dbxread.c (process_one_symbol): Update.
5147         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5148         (outermost_context_p): Remove macro.
5149         (outermost_context_p, get_current_context_stack)
5150         (get_context_stack_depth): Declare.
5151         (pop_context): Return struct context_stack.
5152         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5153         member.
5154         (context_stack_size): Remove.
5155         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5156         (prepare_for_building, end_symtab_get_static_block)
5157         (augment_type_symtab, push_context): Update.
5158         (pop_context): Return struct context_stack.
5159         (outermost_context_p, get_current_context_stack)
5160         (get_context_stack_depth): New functions.
5161         (buildsym_init): Update.
5162
5163 2018-07-20  Tom Tromey  <tom@tromey.com>
5164
5165         * rust-exp.y: Now a pure parser.  Update all rules.
5166         (%union): Move earlier.
5167         (current_parser, work_obstack): Remove globals.
5168         (rust_parser, ~rust_parser): Update.
5169         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5170         lex_character, lex_number, lex_string, lex_identifier,
5171         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5172         convert_name, convert_params_to_expression,
5173         convert_ast_to_expression, ast_basic_type, ast_operation,
5174         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5175         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5176         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5177         ast_array_type, ast_slice_type, ast_reference_type,
5178         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5179         (rust_parse): Update.
5180         (rustyyerror, rustyylex): Add parser parameter.
5181         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5182         (rust_lex_stringish_test, rust_lex_test_sequence)
5183         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5184         (rust_lex_test_push_back, rust_lex_tests): Update.
5185
5186 2018-07-19  Pedro Alves  <palves@redhat.com>
5187
5188         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5189         gdb::unique_xmalloc_ptr.
5190         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5191         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5192         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5193         copy-initialization.
5194         * guile/scm-pretty-print.c (ppscm_print_children): Use
5195         gdb::unique_xmalloc_ptr instead of cleanups.
5196         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5197         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5198         gdb::unique_xmalloc_ptr.
5199         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5200         Adjust to use gdb::unique_xmalloc_ptr.
5201         * guile/scm-utils.c (extract_arg): Adjust.
5202         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5203         gdb::unique_xmalloc_ptr instead of a cleanup.
5204
5205 2018-07-19  Tom Tromey  <tom@tromey.com>
5206
5207         * utils.c (do_value_free_to_mark)
5208         (make_cleanup_value_free_to_mark): Remove.
5209         * utils.h (make_cleanup_value_free_to_mark): Remove.
5210
5211 2018-07-19  Pedro Alves  <palves@redhat.com>
5212
5213         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5214         forwarding reference.
5215
5216 2018-07-18  Pedro Alves  <palves@redhat.com>
5217
5218         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5219         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5220         cleanup.
5221
5222 2018-07-18  Pedro Alves  <palves@redhat.com>
5223
5224         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5225         exceptions.
5226         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5227         (gdbscm_wrap): New.
5228         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5229         directly instead of a cleanup.
5230         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5231         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5232         (vlscm_binop_gdbthrow): New, factored out from ...
5233         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5234         (vlscm_rich_compare): Use gdbscm_wrap.
5235         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5236         instead of a cleanup.
5237         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5238         cleanup.
5239         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5240         Use xfree directly instead of a cleanup.
5241         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5242         Adjust to use gdbscm_wrap and scoped_value_mark.
5243         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5244         (gdbscm_value_address, gdbscm_value_dereference)
5245         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5246         scoped_value_mark.
5247         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5248         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5249         scoped_value_mark.
5250         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5251         gdbscm_wrap and scoped_value_mark.
5252         (gdbscm_value_to_string): Use xfree directly instead of a
5253         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5254         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5255         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5256         scoped_value_mark.
5257         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5258         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5259         scoped_value_mark.
5260         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5261         gdbscm_wrap.
5262
5263 2018-07-18  Tom de Vries  <tdevries@suse.de>
5264
5265         * findvar.c (default_read_var_value): Also resolve dynamic type for
5266         LOC_OPTIMIZED_OUT vars.
5267
5268 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5269
5270         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5271         decoding.
5272
5273 2018-07-17  Tom Tromey  <tom@tromey.com>
5274
5275         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5276         (compute_enum_list, pascm_set_param_value_x)
5277         (gdbscm_parameter_value): Update.
5278         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5279         (gdbscm_scm_to_host_string): Update.
5280         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5281         Update.
5282         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5283         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5284         * guile/scm-string.c (gdbscm_scm_to_string): Return
5285         unique_xmalloc_ptr.
5286         (gdbscm_scm_to_host_string): Likewise.
5287
5288 2018-07-17  Tom Tromey  <tom@tromey.com>
5289
5290         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5291         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5292         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5293         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5294         unique_xmalloc_ptr.
5295
5296 2018-07-17  Tom Tromey  <tom@tromey.com>
5297
5298         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5299         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5300         Update.
5301         * guile/scm-cmd.c (cmdscm_function): Update.
5302         * guile/scm-pretty-print.c
5303         (ppscm_print_exception_unless_memory_error): Update.
5304         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5305         Return unique_xmalloc_ptr.
5306
5307 2018-07-17  Tom Tromey  <tom@tromey.com>
5308
5309         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5310         Use string_printf.
5311
5312 2018-07-17  Jim Wilson  <jimw@sifive.com>
5313
5314         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5315         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5316         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5317         unecessary braces after EF_RISCV_RVC test.  Delete call to
5318         set_gdbarch_decr_pc_after_break.
5319
5320         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5321         RISCV_LAST_FP_REGNUM + 1.
5322         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5323
5324 2018-07-17  Tom Tromey  <tom@tromey.com>
5325
5326         * configure.ac: Remove --disable-gdbcli.
5327         * configure: Rebuild.
5328         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5329         (SUBDIR_CLI_CFLAGS): Remove.
5330         (SFILES): Use SUBDIR_CLI_SRCS.
5331         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5332
5333 2018-07-17  Tom Tromey  <tom@tromey.com>
5334
5335         PR gdb/18624:
5336         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5337
5338 2018-07-16  Jim Wilson  <jimw@sifive.com>
5339
5340         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5341
5342 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5343
5344         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5345         variable.
5346         (libunwind_frame_sniffer): Likewise.
5347         (libunwind_frame_prev_register): Likewise.
5348         (libunwind_sigtramp_frame_sniffer): Likewise.
5349         * ia64-tdep.c (ia64_access_reg): Likewise.
5350         (ia64_access_rse_reg): Likewise.
5351         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5352         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5353
5354 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5355
5356         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5357
5358 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5359
5360         * remote-sim.c (gdbsim_target::close,
5361         gdbsim_target::mourn_inferior): Remove unused variables.
5362
5363 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5364
5365         * ia64-tdep.c (ktab_buf): New global.
5366         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5367         (get_kernel_table): Adjust.
5368
5369 2018-07-16  Tom Tromey  <tom@tromey.com>
5370
5371         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5372         * dwarf2read.c (using_directives, new_symbol): Use
5373         outermost_context_p.
5374         * dbxread.c (process_one_symbol): Use outermost_context_p.
5375         * coffread.c (coff_symtab_read): Use outermost_context_p.
5376
5377 2018-07-16  Tom Tromey  <tom@tromey.com>
5378
5379         * dwarf2read.c (using_directives, read_func_scope)
5380         (read_lexical_block_scope): Update.
5381         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5382         * buildsym.h (local_using_directives, global_using_directives):
5383         Don't declare.
5384         (get_local_using_directives, set_local_using_directives)
5385         (get_global_using_directives): Declare.
5386         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5387         m_global_using_directives>: New members.
5388         (finish_block_internal, prepare_for_building)
5389         (reset_symtab_globals, end_symtab_get_static_block)
5390         (push_context): Update.
5391         (get_local_using_directives, set_local_using_directives)
5392         (get_global_using_directives): New functions.
5393         (buildsym_init): Update.
5394
5395 2018-07-16  Tom Tromey  <tom@tromey.com>
5396
5397         * xcoffread.c (xcoff_initial_scan): Don't call
5398         free_pending_blocks.
5399         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5400         * buildsym.h (class scoped_free_pendings): Add constructor.
5401         (free_pending_blocks): Don't declare.
5402         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5403         (free_pending_blocks): Now static.
5404
5405 2018-07-16  Tom Tromey  <tom@tromey.com>
5406
5407         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5408         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5409         member.
5410         (struct subfile_stack): Remove.
5411         (subfile_stack): Remove.
5412         (push_subfile, pop_subfile, buildsym_init): Update.
5413
5414 2018-07-16  Tom Tromey  <tom@tromey.com>
5415
5416         * buildsym.c (push_subfile): Use gdb_assert.
5417         (pop_subfile): Use gdb_assert.
5418
5419 2018-07-16  Tom Tromey  <tom@tromey.com>
5420
5421         * buildsym.h (merge_symbol_lists): Remove.
5422         * buildsym.c (merge_symbol_lists): Remove.
5423
5424 2018-07-16  Tom Tromey  <tom@tromey.com>
5425
5426         * stabsread.c (scan_file_globals): Update comment.
5427         * stabsread.h (scan_file_globals): Move from buildsym.h.
5428         * buildsym.h (scan_file_globals): Move to stabsread.h.
5429
5430 2018-07-16  Tom Tromey  <tom@tromey.com>
5431
5432         * xcoffread.c (xcoff_new_init): Update.
5433         * mipsread.c (mipscoff_new_init): Update.
5434         * mdebugread.c (mdebug_build_psymtabs): Update.
5435         * elfread.c (elf_new_init): Update.
5436         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5437         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5438         * buildsym.h (buildsym_new_init): Don't declare.
5439         * buildsym.c (buildsym_new_init): Remove.
5440
5441 2018-07-16  Tom Tromey  <tom@tromey.com>
5442
5443         * stabsread.h (within_function): Move from buildsym.h.
5444         * stabsread.c (start_stabs): Clear within_function.
5445         * coffread.c (coff_start_symtab): Clear within_function.
5446         * buildsym.h (within_function): Move to stabsread.h.
5447         * buildsym.c (prepare_for_building): Update.
5448
5449 2018-07-16  Tom Tromey  <tom@tromey.com>
5450
5451         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5452         * dwarf2read.c (dwarf2_start_symtab): Don't set
5453         processing_gcc_compilation.
5454         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5455
5456 2018-07-16  Tom Tromey  <tom@tromey.com>
5457
5458         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5459         (next_symbol_text_func): Move from buildsym.h.
5460         * stabsread.c (hashname): Move from buildsym.c.
5461         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5462         (next_symbol_text_func, hashname): Move to stabsread.h.
5463         * buildsym.c: Don't include bcache.h
5464         (hashname): Move to stasbread.c.
5465
5466 2018-07-16  Tom Tromey  <tom@tromey.com>
5467
5468         * buildsym.h (context_stack_size): Don't declare.
5469         * buildsym.c (context_stack_size): New global.
5470
5471 2018-07-16  Tom Tromey  <tom@tromey.com>
5472
5473         * dbxread.c (processing_acc_compilation): New global.
5474         * buildsym.h (processing_acc_compilation): Don't declare.
5475
5476 2018-07-16  Tom Tromey  <tom@tromey.com>
5477
5478         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5479         * dbxread.c (read_ofile_symtab): Update.
5480         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5481         * buildsym.h (last_source_start_addr): Remove.
5482         (set_last_source_start_addr, get_last_source_start_addr):
5483         Declare.
5484         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5485         parameter.
5486         (struct buildsym_compunit) <m_last_source_start_addr>: New
5487         member.
5488         (prepare_for_building): Remove start_addr parameter.
5489         (start_symtab, restart_symtab, end_symtab_get_static_block)
5490         (end_symtab_with_blockvector): Update.
5491         (set_last_source_start_addr, get_last_source_start_addr): New
5492         functions.
5493
5494 2018-07-16  Tom Tromey  <tom@tromey.com>
5495
5496         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5497         member.
5498         (have_line_numbers): Remove.
5499         (record_line, prepare_for_building, end_symtab_get_static_block)
5500         (augment_type_symtab): Update.
5501
5502 2018-07-16  Tom Tromey  <tom@tromey.com>
5503
5504         * buildsym.c (~buildsym_compunit): Free the macro table.
5505         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5506         methods.
5507         <m_pending_macros>: New member.
5508         (pending_macros): Remove.
5509         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5510         (reset_symtab_globals, end_symtab_get_static_block)
5511         (end_symtab_with_blockvector, augment_type_symtab)
5512         (buildsym_init): Update.
5513
5514 2018-07-16  Tom Tromey  <tom@tromey.com>
5515
5516         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5517         parameter.
5518         (buildsym_compunit::set_last_source_file): New method.
5519         <m_last_source_file>: New member.
5520         (prepare_for_building): Remove "name" parameter.
5521         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5522         (last_source_file): Remove.
5523         (set_last_source_file, get_last_source_file): Update.
5524
5525 2018-07-16  Tom Tromey  <tom@tromey.com>
5526
5527         * buildsym.c (prepare_for_building): Add assert.
5528
5529 2018-07-16  Tom Tromey  <tom@tromey.com>
5530
5531         * buildsym.c (~buildsym_compunit): Update.
5532         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5533         (start_subfile, patch_subfile_names)
5534         (end_symtab_with_blockvector): Update.
5535
5536 2018-07-16  Tom Tromey  <tom@tromey.com>
5537
5538         * buildsym.c (struct buildsym_compunit): Add constructor,
5539         destructor, initializers.
5540         (start_buildsym_compunit): Remove.
5541         (free_buildsym_compunit): Use "delete".
5542         (start_symtab, restart_symtab): Use "new".
5543
5544 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5545
5546         * symfile.c (set_objfile_default_section_offset): Remove struct
5547         keyword.
5548
5549 2018-07-14  Stafford Horne  <shorne@gmail.com>
5550
5551         * (Responsible Maintainers): Add myself as or1k maintainer.
5552
5553 2018-07-13  Tom Tromey  <tom@tromey.com>
5554
5555         * symfile.c (set_objfile_default_section_offset): Use extra braces
5556         around initializer.
5557
5558 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5559
5560         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5561         non-branching basr.
5562
5563 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5564
5565         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5566         unittests/cli-utils-selftests.c
5567         * unittests/cli-utils-selftests.c: New file.
5568
5569 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5570
5571         * NEWS: Mention new commands. Mention change to 'thread apply'.
5572
5573 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5574
5575         * thread.c (thr_try_catch_cmd): New function.
5576         (thread_apply_all_command): Handle qcs flags.
5577         (thread_apply_command): Handle qcs flags.
5578         (taas_command): New function.
5579         (tfaas_command): New function.
5580         (_initialize_thread): Update to setup the new commands 'taas
5581         and 'tfaas'. Change doc string for 'thread apply'.
5582
5583 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5584
5585         * stack.c: (trailing_outermost_frame): New function, mostly
5586         extracted from backtrace_command_1.
5587         (leading_innermost_frame): New function.
5588         (backtrace_command_1): Update to call trailing_outermost_frame.
5589         (frame_apply_command_count): New function.
5590         (frame_apply_level_command): New function.
5591         (frame_apply_all_command): New function.
5592         (frame_apply_command): New function.
5593         (faas_command): New function.
5594         (frame_cmd_list): New variable.
5595         (_initialize_stack): Update to setup the new commands 'frame apply'
5596         and 'faas'.
5597
5598 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5599
5600         * cli-utils.c (number_or_range_parser::get_number): Only handle
5601         numbers or convenience var as numbers.
5602         (parse_flags): New function.
5603         (parse_flags_qcs): New function.
5604         (number_or_range_parser::finished): Ensure parsing end is detected
5605         before end of string.
5606         * cli-utils.h (parse_flags): New function.
5607         (parse_flags_qcs): New function.
5608         (number_or_range_parser): Remove m_finished bool.
5609         (number_or_range_parser::skip_range): Set m_in_range to false.
5610
5611 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5612
5613         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5614         on Windows.
5615
5616 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5617             Jan Kratochvil  <jan.kratochvil@redhat.com>
5618             Paul Fertser  <fercerpav@gmail.com>
5619             Tsutomu Seki  <sekiriki@gmail.com>
5620             Pedro Alves  <palves@redhat.com>
5621
5622         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5623         'unittests/parse-connection-spec-selftests.c'.
5624         (COMMON_SFILES): Add 'common/netstuff.c'.
5625         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5626         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5627         * common/netstuff.c: New file.
5628         * common/netstuff.h: New file.
5629         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5630         (wait_for_connect): Update comment.  New parameter
5631         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5632         Use 'sock' directly instead of 'scb->fd'.
5633         (try_connect): New function, with code from 'net_open'.
5634         (net_open): Rewrite main loop to deal with multiple
5635         sockets/addresses.  Handle IPv6-style hostnames; implement
5636         support for IPv6 connections.
5637         * unittests/parse-connection-spec-selftests.c: New file.
5638
5639 2018-07-11  Pedro Alves  <palves@redhat.com>
5640
5641         PR gdb/23377
5642         * remote.c (remote_target::remote_detach_pid): Call
5643         set_current_process.
5644
5645 2018-07-11  Pedro Alves  <palves@redhat.com>
5646
5647         * h8300-tdep.c (h8300_gdbarch_init): Remove
5648         set_gdbarch_ecoff_reg_to_regnum calls.
5649
5650 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5651
5652         PR c++/23373
5653         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5654         offsets/sizes for static members of a class/struct.
5655
5656 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5657
5658         * target-descriptions.c (tdesc_register_bitsize): Rename.
5659         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5660         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5661         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5662
5663 2018-07-10  Tom Tromey  <tom@tromey.com>
5664
5665         * breakpoint.c (moribund_locations): Now static and a
5666         std::vector.
5667         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5668         (build_bpstat_chain, update_global_location_list)
5669         (breakpoint_retire_moribund): Update.
5670         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5671         VEC.
5672
5673 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5674
5675         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5676         (riscv_register_reggroup_p): Use new function, remove unneeded
5677         parenthesis.
5678         (riscv_push_dummy_call): Extend assert to compare against xlen or
5679         flen based on register type.
5680
5681 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5682
5683         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5684
5685 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5686
5687         * remote.c (show_hardware_watchpoint_limit): New function.
5688         (show_hardware_watchpoint_length_limit): New function.
5689         (show_hardware_breakpoint_limit): New function.
5690         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5691         where appropriate, update help text.
5692
5693 2018-07-09  Tom Tromey  <tom@tromey.com>
5694
5695         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5696         (CLIBS): Don't mention NAT_CLIBS.
5697
5698 2018-07-09  Tom Tromey  <tom@tromey.com>
5699
5700         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5701         (LIBGDB_OBS, clean mostlyclean): Update.
5702         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5703
5704 2018-07-09  Tom Tromey  <tom@tromey.com>
5705
5706         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5707         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5708         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5709
5710 2018-07-09  Tom Tromey  <tom@tromey.com>
5711
5712         * Makefile.in (ALLDEPFILES): Remove exec.c.
5713         (COMMON_OBS): Remove exec.o.
5714         (COMMON_SFILES): Add exec.c.
5715
5716 2018-07-09  Tom Tromey  <tom@tromey.com>
5717
5718         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5719
5720 2018-07-09  Tom Tromey  <tom@tromey.com>
5721
5722         * Makefile.in (clean mostlyclean): Remove stamp-version.
5723         (version.c): Depend on stamp-version.
5724         (stamp-version): New rule, from version.c rule.
5725
5726 2018-07-09  Tom Tromey  <tom@tromey.com>
5727
5728         * Makefile.in (init.c): Depend on stamp-init.
5729         (stamp-init): New rule, from init.c rule.
5730         (clean mostlyclean): Remove stamp-init.
5731
5732 2018-07-09  Tom Tromey  <tom@tromey.com>
5733
5734         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5735         SUBDIR_GCC_COMPILE_SRCS.
5736
5737 2018-07-09  Tom Tromey  <tom@tromey.com>
5738
5739         * Makefile.in (init.c): Remove some unused sed rules.
5740
5741 2018-07-09  Tom Tromey  <tom@tromey.com>
5742
5743         * Makefile.in (TSOBS): Remove.
5744         (INIT_FILES): Update.
5745         (LIBGDB_OBS): Update.
5746         (COMMON_SFILES): Add inflow.c.
5747         (SFILES): Remove inflow.c.
5748
5749 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5750
5751         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5752
5753 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5754
5755         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5756         get_saveloc_name, is_signal_frame_name, step_name,
5757         init_remote_name, create_addr_space_name,
5758         destroy_addr_space_name, search_unwind_table_name,
5759         find_dyn_list_name): Constify.
5760
5761 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5762
5763         * darwin-nat.c (darwin_pthread_kill): New function.
5764         (darwin_resume_thread): Use darwin_pthread_kill.
5765
5766 2018-07-05  Tom de Vries  <tdevries@suse.de>
5767
5768         * macroexp.c (macro_buffer) <operator=>: New member function.
5769
5770 2018-07-04  Tom Tromey  <tom@tromey.com>
5771
5772         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5773
5774 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5775
5776         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5777         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5778         * maint.c: Likewise.
5779         * top.c: Likewise.
5780
5781 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5782
5783         * NEWS: Create a new section for the next release branch.
5784         Rename the section of the current branch, now that it has
5785         been cut.
5786
5787 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5788
5789         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5790         * version.in: Bump version to 8.2.50.DATE-git.
5791
5792 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5793             Pedro Alves  <palves@redhat.com>
5794
5795         * linux-nat.c (linux_init_ptrace): Rename to ...
5796         (linux_init_ptrace_procfs): ... this.  Call
5797         linux_proc_init_warnings.
5798         (linux_nat_target::post_attach)
5799         (linux_nat_target::post_startup_inferior): Adjust.
5800         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5801         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5802
5803 2018-07-04  Tom de Vries  <tdevries@suse.de>
5804
5805         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5806         check ...
5807         (read_comp_unit_head): ... here.
5808
5809 2018-07-03  Tom Tromey  <tom@tromey.com>
5810
5811         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5812         (stop_tracing, tstatus_command)
5813         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5814         (print_one_static_tracepoint_marker): Update.
5815         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5816         std::vector.
5817         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5818         VEC.
5819         (all_tracepoints, static_tracepoints_here): Return std::vector.
5820
5821 2018-07-03  Tom Tromey  <tom@tromey.com>
5822
5823         * common/ptid.c (ptid_equal): Remove.
5824         * common/ptid.h (ptid_equal): Don't declare.
5825         * ada-tasks.c: Update.
5826         * breakpoint.c: Update.
5827         * common/agent.c: Update.
5828         * corelow.c: Update.
5829         * darwin-nat-info.c: Update.
5830         * darwin-nat.c: Update.
5831         * dcache.c: Update.
5832         * dtrace-probe.c: Update.
5833         * dummy-frame.c: Update.
5834         * fbsd-nat.c: Update.
5835         * frame.c: Update.
5836         * gdbthread.h: Update.
5837         * gnu-nat.c: Update.
5838         * go32-nat.c: Update.
5839         * inf-loop.c: Update.
5840         * inf-ptrace.c: Update.
5841         * infcall.c: Update.
5842         * infcmd.c: Update.
5843         * inflow.c: Update.
5844         * infrun.c: Update.
5845         * linux-fork.c: Update.
5846         * linux-nat.c: Update.
5847         * linux-thread-db.c: Update.
5848         * mi/mi-cmd-var.c: Update.
5849         * mi/mi-interp.c: Update.
5850         * mi/mi-main.c: Update.
5851         * nto-procfs.c: Update.
5852         * ppc-linux-tdep.c: Update.
5853         * procfs.c: Update.
5854         * python/py-inferior.c: Update.
5855         * python/py-record-btrace.c: Update.
5856         * python/py-record.c: Update.
5857         * ravenscar-thread.c: Update.
5858         * regcache.c: Update.
5859         * remote-sim.c: Update.
5860         * remote.c: Update.
5861         * sol-thread.c: Update.
5862         * solib.c: Update.
5863         * target.c: Update.
5864         * tui/tui-stack.c: Update.
5865         * varobj.c: Update.
5866         * windows-nat.c: Update.
5867         * windows-tdep.c: Update.
5868
5869 2018-07-03  Tom Tromey  <tom@tromey.com>
5870
5871         * common/ptid.c (ptid_match): Remove.
5872         * common/ptid.h (ptid_match): Don't declare.
5873         * fbsd-nat.c: Update.
5874         * infcmd.c: Update.
5875         * infrun.c: Update.
5876         * linux-nat.c: Update.
5877         * record-btrace.c: Update.
5878         * regcache.c: Update.
5879         * remote.c: Update.
5880
5881 2018-07-03  Tom Tromey  <tom@tromey.com>
5882
5883         * common/ptid.c (ptid_tid_p): Remove.
5884         * common/ptid.h (ptid_tid_p): Don't declare.
5885         * sol-thread.c: Update.
5886
5887 2018-07-03  Tom Tromey  <tom@tromey.com>
5888
5889         * common/ptid.c (ptid_lwp_p): Remove.
5890         * common/ptid.h (ptid_lwp_p): Don't declare.
5891         * fbsd-nat.c: Update.
5892         * linux-nat.c: Update.
5893         * nat/linux-procfs.c: Update.
5894         * nat/x86-linux-dregs.c: Update.
5895         * sol-thread.c: Update.
5896
5897 2018-07-03  Tom Tromey  <tom@tromey.com>
5898
5899         * common/ptid.c (ptid_is_pid): Remove.
5900         * common/ptid.h (ptid_is_pid): Don't declare.
5901         * infrun.c: Update.
5902         * linux-nat.c: Update.
5903         * mi/mi-interp.c: Update.
5904         * remote.c: Update.
5905         * thread.c: Update.
5906
5907 2018-07-03  Tom Tromey  <tom@tromey.com>
5908
5909         * common/ptid.c (ptid_get_tid): Remove.
5910         * common/ptid.h (ptid_get_tid): Don't declare.
5911         * ada-tasks.c: Update.
5912         * aix-thread.c: Update.
5913         * bsd-uthread.c: Update.
5914         * darwin-nat.c: Update.
5915         * fbsd-nat.c: Update.
5916         * i386-darwin-nat.c: Update.
5917         * infrun.c: Update.
5918         * linux-tdep.c: Update.
5919         * nto-procfs.c: Update.
5920         * ppc-ravenscar-thread.c: Update.
5921         * python/py-infthread.c: Update.
5922         * ravenscar-thread.c: Update.
5923         * sol-thread.c: Update.
5924         * sparc-ravenscar-thread.c: Update.
5925         * windows-nat.c: Update.
5926
5927 2018-07-03  Tom Tromey  <tom@tromey.com>
5928
5929         * common/ptid.c (ptid_get_lwp): Remove.
5930         * common/ptid.h (ptid_get_lwp): Don't declare.
5931         * aarch64-linux-nat.c: Update.
5932         * ada-tasks.c: Update.
5933         * aix-thread.c: Update.
5934         * amd64-linux-nat.c: Update.
5935         * arm-linux-nat.c: Update.
5936         * corelow.c: Update.
5937         * fbsd-nat.c: Update.
5938         * fbsd-tdep.c: Update.
5939         * gnu-nat.c: Update.
5940         * i386-cygwin-tdep.c: Update.
5941         * i386-gnu-nat.c: Update.
5942         * i386-linux-nat.c: Update.
5943         * ia64-linux-nat.c: Update.
5944         * inf-ptrace.c: Update.
5945         * infrun.c: Update.
5946         * linux-fork.c: Update.
5947         * linux-nat.c: Update.
5948         * linux-tdep.c: Update.
5949         * linux-thread-db.c: Update.
5950         * mips-linux-nat.c: Update.
5951         * nat/aarch64-linux-hw-point.c: Update.
5952         * nat/aarch64-linux.c: Update.
5953         * nat/linux-btrace.c: Update.
5954         * nat/linux-osdata.c: Update.
5955         * nat/linux-procfs.c: Update.
5956         * nat/x86-linux-dregs.c: Update.
5957         * obsd-nat.c: Update.
5958         * ppc-fbsd-nat.c: Update.
5959         * ppc-linux-nat.c: Update.
5960         * procfs.c: Update.
5961         * python/py-infthread.c: Update.
5962         * ravenscar-thread.c: Update.
5963         * remote.c: Update.
5964         * s390-linux-nat.c: Update.
5965         * sol-thread.c: Update.
5966         * sol2-tdep.c: Update.
5967         * spu-linux-nat.c: Update.
5968         * x86-linux-nat.c: Update.
5969         * xtensa-linux-nat.c: Update.
5970
5971 2018-07-03  Tom Tromey  <tom@tromey.com>
5972
5973         * common/ptid.c (ptid_get_pid): Remove.
5974         * common/ptid.h (ptid_get_pid): Don't declare.
5975         * aarch64-linux-nat.c: Update.
5976         * ada-lang.c: Update.
5977         * aix-thread.c: Update.
5978         * alpha-bsd-nat.c: Update.
5979         * amd64-fbsd-nat.c: Update.
5980         * amd64-linux-nat.c: Update.
5981         * arm-linux-nat.c: Update.
5982         * arm-nbsd-nat.c: Update.
5983         * auxv.c: Update.
5984         * break-catch-syscall.c: Update.
5985         * breakpoint.c: Update.
5986         * bsd-uthread.c: Update.
5987         * corelow.c: Update.
5988         * ctf.c: Update.
5989         * darwin-nat.c: Update.
5990         * fbsd-nat.c: Update.
5991         * fbsd-tdep.c: Update.
5992         * gcore.c: Update.
5993         * gnu-nat.c: Update.
5994         * hppa-nbsd-nat.c: Update.
5995         * hppa-obsd-nat.c: Update.
5996         * i386-fbsd-nat.c: Update.
5997         * ia64-linux-nat.c: Update.
5998         * inf-ptrace.c: Update.
5999         * infcmd.c: Update.
6000         * inferior.c: Update.
6001         * inferior.h: Update.
6002         * inflow.c: Update.
6003         * infrun.c: Update.
6004         * linux-fork.c: Update.
6005         * linux-nat.c: Update.
6006         * linux-tdep.c: Update.
6007         * linux-thread-db.c: Update.
6008         * m68k-bsd-nat.c: Update.
6009         * mi/mi-interp.c: Update.
6010         * mi/mi-main.c: Update.
6011         * mips-linux-nat.c: Update.
6012         * mips-nbsd-nat.c: Update.
6013         * mips64-obsd-nat.c: Update.
6014         * nat/aarch64-linux-hw-point.c: Update.
6015         * nat/aarch64-linux.c: Update.
6016         * nat/linux-btrace.c: Update.
6017         * nat/linux-osdata.c: Update.
6018         * nat/linux-procfs.c: Update.
6019         * nat/x86-linux-dregs.c: Update.
6020         * nto-procfs.c: Update.
6021         * obsd-nat.c: Update.
6022         * ppc-linux-nat.c: Update.
6023         * ppc-nbsd-nat.c: Update.
6024         * ppc-obsd-nat.c: Update.
6025         * proc-service.c: Update.
6026         * procfs.c: Update.
6027         * python/py-inferior.c: Update.
6028         * python/py-infthread.c: Update.
6029         * ravenscar-thread.c: Update.
6030         * record.c: Update.
6031         * remote-sim.c: Update.
6032         * remote.c: Update.
6033         * rs6000-nat.c: Update.
6034         * s390-linux-nat.c: Update.
6035         * sh-nbsd-nat.c: Update.
6036         * sol-thread.c: Update.
6037         * sparc-nat.c: Update.
6038         * sparc64-tdep.c: Update.
6039         * spu-linux-nat.c: Update.
6040         * spu-tdep.c: Update.
6041         * target-debug.h: Update.
6042         * target.c: Update.
6043         * thread.c: Update.
6044         * tid-parse.c: Update.
6045         * tracefile-tfile.c: Update.
6046         * vax-bsd-nat.c: Update.
6047         * windows-nat.c: Update.
6048         * x86-linux-nat.c: Update.
6049         * x86-nat.c: Update.
6050
6051 2018-07-03  Tom Tromey  <tom@tromey.com>
6052
6053         * common/ptid.c (pid_to_ptid): Remove.
6054         * common/ptid.h (pid_to_ptid): Don't declare.
6055         * aix-thread.c: Update.
6056         * arm-linux-nat.c: Update.
6057         * common/ptid.c: Update.
6058         * common/ptid.h: Update.
6059         * corelow.c: Update.
6060         * ctf.c: Update.
6061         * darwin-nat.c: Update.
6062         * fbsd-nat.c: Update.
6063         * fork-child.c: Update.
6064         * gnu-nat.c: Update.
6065         * go32-nat.c: Update.
6066         * inf-ptrace.c: Update.
6067         * infcmd.c: Update.
6068         * inferior.c: Update.
6069         * infrun.c: Update.
6070         * linux-fork.c: Update.
6071         * linux-nat.c: Update.
6072         * nat/aarch64-linux-hw-point.c: Update.
6073         * nat/fork-inferior.c: Update.
6074         * nat/x86-linux-dregs.c: Update.
6075         * nto-procfs.c: Update.
6076         * obsd-nat.c: Update.
6077         * procfs.c: Update.
6078         * progspace.c: Update.
6079         * remote.c: Update.
6080         * rs6000-nat.c: Update.
6081         * s390-linux-nat.c: Update.
6082         * sol-thread.c: Update.
6083         * spu-linux-nat.c: Update.
6084         * target.c: Update.
6085         * top.c: Update.
6086         * tracefile-tfile.c: Update.
6087         * windows-nat.c: Update.
6088
6089 2018-07-03  Tom Tromey  <tom@tromey.com>
6090
6091         * common/ptid.h (ptid_build): Don't declare.
6092         * common/ptid.c (ptid_build): Remove.
6093         * aix-thread.c: Update.
6094         * bsd-kvm.c: Update.
6095         * bsd-uthread.c: Update.
6096         * common/agent.c: Update.
6097         * common/ptid.c: Update.
6098         * common/ptid.h: Update.
6099         * corelow.c: Update.
6100         * darwin-nat.c: Update.
6101         * fbsd-nat.c: Update.
6102         * gnu-nat.c: Update.
6103         * linux-fork.c: Update.
6104         * linux-nat.c: Update.
6105         * linux-thread-db.c: Update.
6106         * nat/linux-osdata.c: Update.
6107         * nat/linux-procfs.c: Update.
6108         * nto-procfs.c: Update.
6109         * obsd-nat.c: Update.
6110         * proc-service.c: Update.
6111         * procfs.c: Update.
6112         * ravenscar-thread.c: Update.
6113         * remote-sim.c: Update.
6114         * remote.c: Update.
6115         * sol-thread.c: Update.
6116         * target.c: Update.
6117         * windows-nat.c: Update.
6118
6119 2018-07-03  Tom Tromey  <tom@tromey.com>
6120
6121         * infrun.c (follow_exec): Use exit_inferior_silent.
6122         * inferior.c (exit_inferior_num_silent): Remove.
6123         * inferior.h (exit_inferior_num_silent): Don't declare.
6124
6125 2018-07-03  Tom Tromey  <tom@tromey.com>
6126
6127         PR cli/23340:
6128         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6129         inferior_ptid on error.
6130
6131 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6132             Simon Marchi  <simon.marchi@polymtl.ca>
6133
6134         PR tdep/8282
6135         * disasm.h (gdb_disassembler): Add
6136         `m_disassembler_options_holder'. member
6137         * disasm.c (get_all_disassembler_options): New function.
6138         (gdb_disassembler::gdb_disassembler): Use it.
6139         (gdb_buffered_insn_length_init_dis): Likewise.
6140         (gdb_buffered_insn_length): Adjust accordingly.
6141         (set_disassembler_options): Handle options with arguments.
6142         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6143         line if showing options with descriptions.
6144         (disassembler_options_completer): Adapt to using the
6145         `disasm_options_and_args_t' structure.
6146         * mips-tdep.c (mips_disassembler_options): New variable.
6147         (mips_disassembler_options_o32): Likewise.
6148         (mips_disassembler_options_n32): Likewise.
6149         (mips_disassembler_options_n64): Likewise.
6150         (gdb_print_insn_mips): Don't set `disassembler_options'.
6151         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6152         functions.
6153         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6154         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6155         `gdbarch_disassembler_options_implicit' and
6156         `gdbarch_valid_disassembler_options'.
6157         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6158         `disasm_options_and_args_t' structure.
6159         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6160         method.
6161         (valid_disassembler_options): Switch from `disasm_options_t' to
6162         the `disasm_options_and_args_t' structure.
6163         * NEWS: Document `set disassembler-options' support for the MIPS
6164         target.
6165         * gdbarch.h: Regenerate.
6166         * gdbarch.c: Regenerate.
6167
6168 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6169
6170         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6171
6172 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6173
6174         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6175         parameter in call to amd64_target_description.
6176         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6177         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6178         (amd64fbsd_init_abi): Likewise.
6179         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6180         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6181         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6182         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6183
6184 2018-06-29  Pedro Alves  <palves@redhat.com>
6185
6186         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6187         "segments" parameter.
6188         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6189         (_initialize_amd64_tdep): Update call to
6190         amd64_create_target_description.
6191         (amd64_target_description): Add "segments" parameter.  Adjust
6192         the implementation to use it.
6193         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6194         call to amd64_create_target_description.
6195         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6196         * gdb/arch/amd64.h (amd64_create_target_description): Add
6197         "segments" register.
6198         * gdb/arch/amd64.c (amd64_create_target_description): Add
6199         "segments" parameter.  Call create_feature_i386_64bit_segments
6200         only if SEGMENTS is true.
6201         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6202         call to amd64_create_target_description.
6203
6204 2018-06-29  Pedro Alves  <palves@redhat.com>
6205
6206         * thread.c (thread_target_id_str): New, factored out from ...
6207         (print_thread_info_1): ... here.  Use it to compute the max
6208         "Target Id" column width.
6209
6210 2018-06-29  Pedro Alves  <palves@redhat.com>
6211
6212         * remote.c (remote_target::extra_thread_info): Delete
6213         'display_buf' and 'n' locals.  from the cache, regardless of
6214         packet mechanims is in use.  Use cache for qThreadExtra and qP
6215         methods too.
6216
6217 2018-06-29  Pedro Alves  <palves@redhat.com>
6218
6219         * blockframe.c (find_pc_sect_containing_function): New function.
6220         * breakpoint.c (print_breakpoint_location): Don't call
6221         find_pc_sect_function.
6222         * linespec.c (create_sals_line_offset): Record the location's
6223         symbol in the sal.
6224         * linespec.c (convert_address_location_to_sals): Fill in sal's
6225         symbol with find_pc_sect_containing_function.
6226         * symtab.c (find_function_start_sal): Rename to ...
6227         (find_function_start_sal_1): ... this.
6228         (find_function_start_sal): Reimplement as wrapper around
6229         find_function_start_sal_1, and use
6230         find_pc_sect_containing_function to fill in the sal's symbol.
6231         (find_function_start_sal(symbol*, bool)): Adjust.
6232         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6233         comments.
6234         (find_pc_sect_containing_function): Declare.
6235
6236 2018-06-29  Pedro Alves  <palves@redhat.com>
6237
6238         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6239         true if the the location has no symbol.
6240
6241 2018-06-28  Tom Tromey  <tom@tromey.com>
6242
6243         * NEWS: Mention --enable-codesign.
6244         * silent-rules.mk (ECHO_SIGN): New variable.
6245         * configure.ac: Add --enable-codesign.
6246         * configure: Rebuild.
6247         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6248         (gdb$(EXEEXT)): Optionally invoke codesign.
6249
6250 2018-06-28  Pedro Alves  <palves@redhat.com>
6251
6252         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6253         comments.
6254         (switch_to_thread_no_regs): Adjust comment.
6255         * infcmd.c (stop_pc): Delete.
6256         (post_create_inferior, info_program_command): Replace references
6257         to stop_pc with references to thread_info->suspend.stop_pc.
6258         * inferior.h (stop_pc): Delete declaration.
6259         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6260         (handle_inferior_event_1, handle_signal_stop)
6261         (process_event_stop_test, keep_going_stepped_thread)
6262         (handle_step_into_function, handle_step_into_function_backward)
6263         (print_stop_location): Replace references to stop_pc with
6264         references to thread_info->suspend.stop_pc.
6265         (struct infcall_suspend_state) <stop_pc>: Delete field.
6266         (save_infcall_suspend_state, restore_infcall_suspend_state):
6267         Remove references to inf_stat->stop_pc.
6268         * linux-fork.c (fork_load_infrun_state): Likewise.
6269         * record-btrace.c (record_btrace_set_replay): Likewise.
6270         * record-full.c (record_full_goto_entry): Likewise.
6271         * remote.c (print_one_stopped_thread): Likewise.
6272         * target.c (target_resume): Extend comment.
6273         * thread.c (set_executing_thread): New.
6274         (set_executing): Use it.
6275         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6276         Remove references to stop_pc.
6277
6278 2018-06-28  Pedro Alves  <palves@redhat.com>
6279
6280         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6281         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6282
6283 2018-06-28  Tom Tromey  <tom@tromey.com>
6284
6285         * coffread.c (coff_symfile_finish): Update.
6286         * xcoffread.c (xcoff_symfile_finish): Update.
6287         * elfread.c (elf_symfile_finish): Update.
6288         * symfile.h (dwarf2_free_objfile): Don't declare.
6289         * dwarf2read.c (_initialize_dwarf2_read): Use
6290         register_objfile_data_with_cleanup.
6291         (dwarf2_free_objfile): Now static.  Change signature.
6292
6293 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6294
6295         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6296         option "-o" to add-symbol-file-load to add an offset to each
6297         section's load address.
6298         * symfile.c (set_objfile_default_section_offset): New function.
6299
6300 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6301
6302         * symfile.c (add_symbol_file_command): Make sure that sections
6303         with the same name are sorted in the same order.
6304
6305 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6306
6307         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6308         require the second argument.  If omitted, load sections at the
6309         addresses specified in the file.
6310
6311 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6312
6313         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6314         (_initialize_symfile): Add option "-o" to symbol-file to add an
6315         offset to each section of the symbol file.
6316
6317 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6318
6319         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6320
6321 2018-06-27  Tom Tromey  <tom@tromey.com>
6322
6323         * stack.c (_initialize_stack): Update "func" help text.
6324
6325 2018-06-27  Tom Tromey  <tom@tromey.com>
6326
6327         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6328         std::vector.
6329         (unwind_infopy_str, pyuw_create_unwind_info)
6330         (unwind_infopy_add_saved_register, pyuw_sniffer)
6331         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6332         Update.
6333         (struct saved_reg): Add constructor.
6334         <value>: Now a gdbpy_ref<>.
6335
6336 2018-06-27  Tom Tromey  <tom@tromey.com>
6337
6338         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6339
6340 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6341
6342         * gdb-gdb.py.in: Format using autopep8.
6343
6344 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6345
6346         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6347         (type_lookup_function): Recognize CORE_ADDR values.
6348
6349 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6350
6351         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6352         print tag_name.
6353
6354 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6355
6356         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6357         <__lt__>: Add.
6358
6359 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6360
6361         * gdb-gdb.py: Move to...
6362         * gdb-gdb.py.in: ... here.
6363         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6364         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6365         dependencies.
6366         (distclean): Remove gdb-gdb.py when cleaning.
6367         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6368         * configure: Re-generate.
6369
6370 2018-06-27  Pedro Alves  <palves@redhat.com>
6371
6372         * proc-service.c (get_ps_regcache): New.
6373         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6374         (ps_lsetfpregs): Use it.
6375
6376 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6377
6378         PR gdb/21695
6379         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6380         (dwarf_decode_lines_1): Adjust.
6381
6382 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6383
6384         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6385         override.
6386         <info_proc>: Likewise.
6387
6388 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6389
6390         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6391         to windows_fetch_one_register, and only handle the case of
6392         fetching one register.  Move the code that reloads the context
6393         and iterates over all registers if R is negative to...
6394         (windows_nat_target::fetch_registers): ... here.
6395         (do_windows_store_inferior_registers): Rename to
6396         windows_store_one_register, and only handle the case of storing
6397         one register.  Move the code that handles the case where r is
6398         negative to...
6399         (windows_nat_target::store_registers) ... here.
6400
6401 2018-06-26  Tom Tromey  <tom@tromey.com>
6402
6403         PR rust/22574:
6404         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6405         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6406         Update.
6407         (rust_internal_print_type): Add podata parameter.
6408         (rust_print_type): Update.
6409
6410 2018-06-26  Tom Tromey  <tom@tromey.com>
6411
6412         * typeprint.h (struct print_offset_data) <update, finish,
6413         maybe_print_hole>: New methods.
6414         <indentation>: New constant.
6415         * typeprint.c (print_offset_data::indentation): Define.
6416         (print_offset_data::maybe_print_hole, print_offset_data::update)
6417         (print_offset_data::finish): Move from c-typeprint.c and rename.
6418         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6419         (print_spaces_filtered_with_print_options): Update.
6420         (c_print_type_union_field_offset, maybe_print_hole)
6421         (c_print_type_struct_field_offset): Move to typeprint.c and
6422         rename.
6423         (c_type_print_base_struct_union): Update.
6424
6425 2018-06-25  Pedro Alves  <palves@redhat.com>
6426
6427         * gdbthread.h (thread_info_ref, delete_thread)
6428         (delete_thread_silent, first_thread_of_inferior)
6429         (any_thread_of_inferior, switch_to_thread)
6430         (enable_thread_stack_temporaries)
6431         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6432         (get_last_thread_stack_temporary)
6433         (value_in_thread_stack_temporaries, can_access_registers_thread):
6434         Spell out "struct thread_info" instead of just "thread_info".
6435         * inferior.h (notice_new_inferior): Likewise.
6436
6437 2018-06-25  Pedro Alves  <palves@redhat.com>
6438
6439         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6440         pass thread_info pointer to delete_thread.
6441         (windows_nat_target::detach): Pass inferior pointer to
6442         detach_inferior.
6443         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6444         delete_thread.
6445         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6446         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6447         and pass a thread_info pointer to delete_thread.
6448         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6449         pass thread_info pointer to delete_thread.
6450         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6451         delete_thread_silent call.
6452         * procfs.c (procfs_target::detach): Pass inferior pointer to
6453         detach_inferior.
6454         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6455         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6456         delete_thread_silent call.
6457         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6458         pass thread_info pointer to delete_thread.
6459         (windows_nat_target::detach): Pass inferior pointer to
6460         delete_inferior.
6461
6462 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6463
6464         * regcache.c (readable_regcache::read_part): Fix asserts.
6465         (reg_buffer::raw_collect_part): New function.
6466         (regcache::write_part): Fix asserts.
6467         (reg_buffer::raw_supply_part): New function.
6468         (regcache::transfer_regset_register): New helper function.
6469         (regcache::transfer_regset): Call new functions.
6470         (regcache_supply_regset): Use gdb_byte*.
6471         (regcache::supply_regset): Likewise.
6472         (regcache_collect_regset): Likewise.
6473         (regcache::collect_regset): Likewise.
6474         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6475         (reg_buffer::raw_supply_part): Likewise.
6476         (regcache::transfer_regset_register): Likewise.
6477         (regcache::transfer_regset): Use gdb_byte*.
6478
6479 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6480
6481         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6482
6483 2018-06-21  Pedro Alves  <palves@redhat.com>
6484
6485         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6486         instead of a ptid_t.  All callers adjusted.
6487         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6488         adjusted.
6489         (print_ada_task_info, display_current_task_id, task_command_1):
6490         Adjust.
6491         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6492         inferior_thread.
6493         (breakpoint_kind): Adjust.
6494         (remove_breakpoints_pid): Rename to ...
6495         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6496         pointer.  All callers adjusted.
6497         (bpstat_clear_actions): Use inferior_thread.
6498         (get_bpstat_thread): New.
6499         (bpstat_do_actions): Use it.
6500         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6501         to take a thread_info pointer.  All callers adjusted.
6502         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6503         (breakpoint_re_set_thread): Use inferior_thread.
6504         * breakpoint.h (struct inferior): Forward declare.
6505         (bpstat_stop_status): Update.
6506         (remove_breakpoints_pid): Delete.
6507         (remove_breakpoints_inf): New.
6508         * bsd-uthread.c (bsd_uthread_target::wait)
6509         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6510         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6511         (maint_btrace_packet_history_cmd)
6512         (maint_btrace_clear_packet_history_cmd): Adjust.
6513         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6514         inferior_thread.
6515         * cli/cli-interp.c: Include "inferior.h".
6516         * common/refcounted-object.h (struct
6517         refcounted_object_ref_policy): New.
6518         * compile/compile-object-load.c: Include gdbthread.h.
6519         (store_regs): Use inferior_thread.
6520         * corelow.c (core_target::close): Use current_inferior.
6521         (core_target_open): Adjust to use first_thread_of_inferior and use
6522         the current inferior.
6523         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6524         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6525         <thread>: ... this new field.  All references adjusted.
6526         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6527         Take a thread_info pointer instead of a ptid_t.
6528         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6529         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6530         thread_info pointer instead of a ptid_t.
6531         * elfread.c: Include "inferior.h".
6532         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6533         Use inferior_thread.
6534         * eval.c (evaluate_subexp): Likewise.
6535         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6536         inferior_thread.
6537         * gdb_proc_service.h (struct thread_info): Forward declare.
6538         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6539         <thread>: ... this new field.  All references adjusted.
6540         * gdbarch.h, gdbarch.c: Regenerate.
6541         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6542         'thread' parameter.  All implementations and callers adjusted.
6543         * gdbthread.h (thread_info) <set_running>: New method.
6544         (delete_thread, delete_thread_silent): Take a thread_info pointer
6545         instead of a ptid.
6546         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6547         (first_thread_of_process): Delete, replaced by ...
6548         (first_thread_of_inferior): ... this new function.  All callers
6549         adjusted.
6550         (any_live_thread_of_process): Delete, replaced by ...
6551         (any_live_thread_of_inferior): ... this new function.  All callers
6552         adjusted.
6553         (switch_to_thread, switch_to_no_thread): Declare.
6554         (is_executing): Delete.
6555         (enable_thread_stack_temporaries): Update comment.
6556         <enable_thread_stack_temporaries>: Take a thread_info pointer
6557         instead of a ptid_t.  Incref the thread.
6558         <~enable_thread_stack_temporaries>: Decref the thread.
6559         <m_ptid>: Delete
6560         <m_thr>: New.
6561         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6562         (get_last_thread_stack_temporary)
6563         (value_in_thread_stack_temporaries, can_access_registers_thread):
6564         Take a thread_info pointer instead of a ptid_t.  All callers
6565         adjusted.
6566         * infcall.c (get_call_return_value): Use inferior_thread.
6567         (run_inferior_call): Work with thread pointers instead of ptid_t.
6568         (call_function_by_hand_dummy): Work with thread pointers instead
6569         of ptid_t.  Use thread_info_ref.
6570         * infcmd.c (proceed_thread_callback): Access thread's state
6571         directly.
6572         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6573         access thread's state directly.
6574         (continue_command): Use inferior_thread.
6575         (info_program_command): Use find_thread_ptid and access thread
6576         state directly.
6577         (proceed_after_attach_callback): Use thread state directly.
6578         (notice_new_inferior): Take a thread_info pointer instead of a
6579         ptid_t.  All callers adjusted.
6580         (exit_inferior): Take an inferior pointer instead of a pid.  All
6581         callers adjusted.
6582         (exit_inferior_silent): New.
6583         (detach_inferior): Delete.
6584         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6585         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6586         (detach_inferior_command, kill_inferior_command): Use
6587         find_inferior_id instead of valid_gdb_inferior_id and
6588         gdb_inferior_id_to_pid.
6589         (inferior_command): Use inferior and thread pointers.
6590         * inferior.h (struct thread_info): Forward declare.
6591         (notice_new_inferior): Take a thread_info pointer instead of a
6592         ptid_t.  All callers adjusted.
6593         (detach_inferior): Delete declaration.
6594         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6595         instead of a pid.  All callers adjusted.
6596         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6597         (valid_gdb_inferior_id): Delete.
6598         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6599         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6600         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6601         ...
6602         <inf>: ... this new field.
6603         <step_ptid>: Delete, replaced by ...
6604         <step_thread>: ... this new field.
6605         (get_displaced_stepping_state): Take an inferior pointer instead
6606         of a pid.  All callers adjusted.
6607         (displaced_step_in_progress_any_inferior): Adjust.
6608         (displaced_step_in_progress_thread): Take a thread pointer instead
6609         of a ptid_t.  All callers adjusted.
6610         (displaced_step_in_progress, add_displaced_stepping_state): Take
6611         an inferior pointer instead of a pid.  All callers adjusted.
6612         (get_displaced_step_closure_by_addr): Adjust.
6613         (remove_displaced_stepping_state): Take an inferior pointer
6614         instead of a pid.  All callers adjusted.
6615         (displaced_step_prepare_throw, displaced_step_prepare)
6616         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6617         All callers adjusted.
6618         (start_step_over): Adjust.
6619         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6620         displaced step queue.
6621         (do_target_resume): Adjust.
6622         (fetch_inferior_event): Use inferior_thread.
6623         (context_switch, get_inferior_stop_soon): Take an
6624         execution_control_state pointer instead of a ptid_t.  All callers
6625         adjusted.
6626         (switch_to_thread_cleanup): Delete.
6627         (stop_all_threads): Use scoped_restore_current_thread.
6628         * inline-frame.c: Include "gdbthread.h".
6629         (inline_state) <inline_state>: Take a thread pointer instead of a
6630         ptid_t.  All callers adjusted.
6631         <ptid>: Delete, replaced by ...
6632         <thread>: ... this new field.
6633         (find_inline_frame_state): Take a thread pointer instead of a
6634         ptid_t.  All callers adjusted.
6635         (skip_inline_frames, step_into_inline_frame)
6636         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6637         pointer instead of a ptid_t.  All callers adjusted.
6638         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6639         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6640         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6641         pointers directly.
6642         * linux-nat.c (get_detach_signal): Likewise.
6643         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6644         (thread_db_notice_clone): Adjust.
6645         (thread_db_find_new_threads_silently)
6646         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6647         a thread pointer instead of a ptid_t.  All callers adjusted.
6648         * mi/mi-cmd-var.c: Include "inferior.h".
6649         (mi_cmd_var_update_iter): Update to use thread pointers.
6650         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6651         inferior directly.
6652         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6653         out to ...
6654         (mi_output_running): ... this new function.
6655         (mi_on_resume_1): Adjust to use it.
6656         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6657         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6658         directly.
6659         (interrupt_thread_callback): : Adjust to use thread and inferior
6660         pointers.
6661         * proc-service.c: Include "gdbthread.h".
6662         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6663         * progspace-and-thread.c: Include "inferior.h".
6664         * progspace.c: Include "inferior.h".
6665         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6666         hold a reference to an inferior_object.
6667         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6668         inferior_thread.
6669         * python/py-inferior.c (struct inferior_object): Give the type a
6670         tag name instead of a typedef.
6671         (python_on_normal_stop): No need to check if the current thread is
6672         listed.
6673         (inferior_to_inferior_object): Change return type to
6674         inferior_object.  All callers adjusted.
6675         (find_thread_object): Delete, bits factored out to ...
6676         (thread_to_thread_object): ... this new function.
6677         * python/py-infthread.c (create_thread_object): Use
6678         inferior_to_inferior_object.
6679         (thpy_is_stopped): Use thread pointer directly.
6680         (gdbpy_selected_thread): Use inferior_thread.
6681         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6682         field, replaced with ...
6683         <thread>: ... this new field.  All users adjusted.
6684         (btpy_insn_or_gap_new): Drop const.
6685         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6686         callers adjusted.
6687         * python/py-record.c: Include "gdbthread.h".
6688         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6689         a ptid_t.  All callers adjusted.
6690         (gdbpy_current_recording): Use inferior_thread.
6691         * python/py-record.h (recpy_record_object) <ptid>: Delete
6692         field, replaced with ...
6693         <thread>: ... this new field.  All users adjusted.
6694         (recpy_element_object) <ptid>: Delete
6695         field, replaced with ...
6696         <thread>: ... this new field.  All users adjusted.
6697         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6698         a ptid_t.  All callers adjusted.
6699         * python/py-threadevent.c: Include "gdbthread.h".
6700         (get_event_thread): Use thread_to_thread_object.
6701         * python/python-internal.h (struct inferior_object): Forward
6702         declare.
6703         (find_thread_object, find_inferior_object): Delete declarations.
6704         (thread_to_thread_object, inferior_to_inferior_object): New
6705         declarations.
6706         * record-btrace.c: Include "inferior.h".
6707         (require_btrace_thread): Use inferior_thread.
6708         (record_btrace_frame_sniffer)
6709         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6710         (get_thread_current_frame): Use scoped_restore_current_thread and
6711         switch_to_thread.
6712         (get_thread_current_frame): Use thread pointer directly.
6713         (record_btrace_replay_at_breakpoint): Use thread's inferior
6714         pointer directly.
6715         * record-full.c: Include "inferior.h".
6716         * regcache.c: Include "gdbthread.h".
6717         (get_thread_arch_regcache): Use the inferior's address space
6718         directly.
6719         (get_thread_regcache, registers_changed_thread): New.
6720         * regcache.h (get_thread_regcache(thread_info *thread)): New
6721         overload.
6722         (registers_changed_thread): New.
6723         (remote_target) <remote_detach_1>: Swap order of parameters.
6724         (remote_add_thread): <remote_add_thread>: Return the new thread.
6725         (get_remote_thread_info(ptid_t)): New overload.
6726         (remote_target::remote_notice_new_inferior): Use thread pointers
6727         directly.
6728         (remote_target::process_initial_stop_replies): Use
6729         thread_info::set_running.
6730         (remote_target::remote_detach_1, remote_target::detach)
6731         (extended_remote_target::detach): Adjust.
6732         * stack.c (frame_show_address): Use inferior_thread.
6733         * target-debug.h (target_debug_print_thread_info_pp): New.
6734         * target-delegates.c: Regenerate.
6735         * target.c (default_thread_address_space): Delete.
6736         (memory_xfer_partial_1): Use current_inferior.
6737         (target_detach): Use current_inferior.
6738         (target_thread_address_space): Delete.
6739         (generic_mourn_inferior): Use current_inferior.
6740         * target.h (struct target_ops) <thread_address_space>: Delete.
6741         (target_thread_address_space): Delete.
6742         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6743         pointers directly.
6744         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6745         thread pointer instead of a ptid_t.  Adjust all callers.
6746         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6747         (first_thread_of_process): Delete, replaced by ...
6748         (first_thread_of_inferior): ... this new function.  All callers
6749         adjusted.
6750         (any_thread_of_process): Rename to ...
6751         (any_thread_of_inferior): ... this, and take an inferior pointer.
6752         (any_live_thread_of_process): Rename to ...
6753         (any_live_thread_of_inferior): ... this, and take an inferior
6754         pointer.
6755         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6756         (value_in_thread_stack_temporaries)
6757         (get_last_thread_stack_temporary): Take a thread pointer instead
6758         of a ptid_t.  Adjust all callers.
6759         (thread_info::set_running): New.
6760         (validate_registers_access): Use inferior_thread.
6761         (can_access_registers_ptid): Rename to ...
6762         (can_access_registers_thread): ... this, and take a thread
6763         pointer.
6764         (print_thread_info_1): Adjust to compare thread pointers instead
6765         of ptids.
6766         (switch_to_no_thread, switch_to_thread): Make extern.
6767         (scoped_restore_current_thread::~scoped_restore_current_thread):
6768         Use m_thread pointer directly.
6769         (scoped_restore_current_thread::scoped_restore_current_thread):
6770         Use inferior_thread.
6771         (thread_command): Use thread pointer directly.
6772         (thread_num_make_value_helper): Use inferior_thread.
6773         * top.c (execute_command): Use inferior_thread.
6774         * tui/tui-interp.c: Include "inferior.h".
6775         * varobj.c (varobj_create): Use inferior_thread.
6776         (value_of_root_1): Use find_thread_global_id instead of
6777         global_thread_id_to_ptid.
6778
6779 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6780
6781         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6782         possible.
6783         (regcache::write_part): Likewise.
6784         (readable_regcache::cooked_read_part): Update comment.
6785         (readable_regcache::cooked_write_part): Likewise.
6786         * regcache.h: (readable_regcache::read_part): Likewise.
6787         (regcache::write_part): Likewise.
6788
6789 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6790             Dirk Schubert  <dirk.schubert@arm.com>
6791
6792         * aarch64-linux-nat.c (post_attach): New.
6793         (aarch64_linux_nat_target::post_attach): Override post_attach to
6794         record the number of hardware debug registers.
6795
6796 2018-06-20  Tom Tromey  <tom@tromey.com>
6797
6798         * python/py-param.c (add_setshow_generic): Make parameters const.
6799         (parmpy_init): Update.
6800
6801 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6802
6803         * regcache.h (regcache_cooked_read_ftype): Rename to...
6804         (register_read_ftype): ...this, change type to function_view.
6805         (class reg_buffer) <save>: Remove src parameter.
6806         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6807         parameter non-const in first overload.  Remove src parameter in
6808         second overload.
6809         * regcache.c (do_cooked_read): Remove.
6810         (readonly_detached_regcache::readonly_detached_regcache): Make
6811         parameter non-const, adjust call to other constructor.
6812         (reg_buffer::save): Remove src parameter.
6813         * frame.c (do_frame_register_read): Remove.
6814         (frame_save_as_regcache): Use lambda function.
6815         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6816         parameter to ppu2spu_data *.
6817         (ppu2spu_sniffer): Use lambda function.
6818
6819 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6820
6821         * record-full.c (record_full_target::insert_breakpoint): Remove
6822         "struct" keyword, add const.
6823
6824 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6825
6826         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6827         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6828         * configure.ac: Remove AC_PREREQ, add missing quoting.
6829         * gnulib/configure.ac: Modernize usage of
6830         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6831         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6832         (AUTOMAKE_VERSION): Bump to 1.15.1.
6833         * configure: Re-generate.
6834         * config.in: Re-generate.
6835         * aclocal.m4: Re-generate.
6836         * gnulib/aclocal.m4: Re-generate.
6837         * gnulib/config.in: Re-generate.
6838         * gnulib/configure: Re-generate.
6839         * gnulib/import/Makefile.in: Re-generate.
6840
6841 2018-06-19  Pedro Alves  <palves@redhat.com>
6842
6843         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6844         (lookup_minimal_symbol_by_pc_section): ... here with
6845         gdb_assert_not_reached added.
6846
6847 2018-06-19  Pedro Alves  <palves@redhat.com>
6848
6849         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6850         parameter with a block parameter.  Compare location's block symbol
6851         with the frame's block instead of addresses.
6852         (skip_inline_frames): Pass the current block instead of the
6853         frame's address.  Break out as soon as we determine the frame
6854         should not be skipped.
6855
6856 2018-06-18  Tom Tromey  <tom@tromey.com>
6857
6858         * solib-aix.c (solib_aix_get_section_offsets): Return
6859         unique_xmalloc_ptr.
6860         (solib_aix_solib_create_inferior_hook): Update.
6861
6862 2018-06-18  Tom Tromey  <tom@tromey.com>
6863
6864         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6865
6866 2018-06-18  Tom Tromey  <tom@tromey.com>
6867
6868         * solib-frv.c (frv_relocate_main_executable): Use
6869         unique_xmalloc_ptr.
6870         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6871         unique_xmalloc_ptr.
6872
6873 2018-06-18  Tom Tromey  <tom@tromey.com>
6874
6875         * objfiles.h (inhibit_section_map_updates): Update.
6876         (resume_section_map_updates, resume_section_map_updates_cleanup):
6877         Remove.
6878         * solib-svr4.c (svr4_handle_solib_event): Update.
6879         * objfiles.c (inhibit_section_map_updates): Return
6880         scoped_restore_tmpl<int>.
6881         (resume_section_map_updates, resume_section_map_updates_cleanup):
6882         Remove.
6883
6884 2018-06-18  Tom Tromey  <tom@tromey.com>
6885
6886         * valprint.h (read_string): Update.
6887         * valprint.c (read_string): Change type of "buffer".
6888         (val_print_string): Update.
6889         * python/py-value.c (valpy_string): Update.
6890         * language.h (struct language_defn) <la_get_string>: Change
6891         type of "buffer".
6892         (default_get_string, c_get_string): Update.
6893         * language.c (default_get_string): Change type of "buffer".
6894         * guile/scm-value.c (gdbscm_value_to_string): Update.
6895         * c-lang.c (c_get_string): Change type of "buffer".
6896
6897 2018-06-18  Tom Tromey  <tom@tromey.com>
6898
6899         * ser-mingw.c (struct pipe_state_destroyer): New.
6900         (pipe_state_up): New typedef.
6901         (cleanup_pipe_state): Remove.
6902         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6903
6904 2018-06-18  Tom Tromey  <tom@tromey.com>
6905
6906         * rust-lang.h (rust_yyerror): Don't declare.
6907         * rust-lang.c (rust_language_defn): Update.
6908         * rust-exp.y (yyerror): Now static.
6909         * parse.c (parse_exp_in_context_1): Update.
6910         * p-lang.h (p_yyerror): Don't declare.
6911         * p-lang.c (p_language_defn): Update.
6912         * p-exp.y (yyerror): Now static.
6913         * opencl-lang.c (opencl_language_defn): Update.
6914         * objc-lang.c (objc_language_defn): Update.
6915         * m2-lang.h (m2_yyerror): Don't declare.
6916         * m2-lang.c (m2_language_defn): Update.
6917         * m2-exp.y (yyerror): Now static.
6918         * language.h (struct language_defn) <la_error>: Remove.
6919         * language.c (unk_lang_error): Remove.
6920         (unknown_language_defn, auto_language_defn): Remove.
6921         * go-lang.h (go_yyerror): Don't declare.
6922         * go-lang.c (go_language_defn): Update.
6923         * go-exp.y (yyerror): Now static.
6924         * f-lang.h (f_yyerror): Don't declare.
6925         * f-lang.c (f_language_defn): Update.
6926         * f-exp.y (yyerror): Now static.
6927         * d-lang.h (d_yyerror): Don't declare.
6928         * d-lang.c (d_language_defn): Update.
6929         * d-exp.y (yyerror): Now static.
6930         * c-lang.h (c_yyerror): Don't declare.
6931         * c-lang.c (c_language_defn, cplus_language_defn)
6932         (asm_language_defn, minimal_language_defn): Update.
6933         * c-exp.y (yyerror): Now static.
6934         * ada-lang.h (ada_yyerror): Don't declare.
6935         * ada-lang.c (ada_language_defn): Update.
6936         * ada-exp.y (yyerror): Now static.
6937
6938 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6939
6940         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6941         (store_sveregs_to_thread): Likewise.
6942         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6943         (aarch64_linux_store_inferior_registers): Likewise.
6944         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6945         function.
6946         (aarch64_sve_regs_copy_to_regcache): Likewise.
6947         (aarch64_sve_regs_copy_from_regcache): Likewise.
6948         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6949         declaration.
6950         (aarch64_sve_regs_copy_to_regcache): Likewise.
6951         (aarch64_sve_regs_copy_from_regcache): Likewise.
6952         (sve_context): Structure from Linux headers.
6953         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6954         (SVE_SIG_ZREG_SIZE): Likewise.
6955         (SVE_SIG_PREG_SIZE): Likewise.
6956         (SVE_SIG_FFR_SIZE): Likewise.
6957         (SVE_SIG_REGS_OFFSET): Likewise.
6958         (SVE_SIG_ZREGS_OFFSET): Likewise.
6959         (SVE_SIG_ZREG_OFFSET): Likewise.
6960         (SVE_SIG_ZREGS_SIZE): Likewise.
6961         (SVE_SIG_PREGS_OFFSET): Likewise.
6962         (SVE_SIG_PREG_OFFSET): Likewise.
6963         (SVE_SIG_PREGS_SIZE): Likewise.
6964         (SVE_SIG_FFR_OFFSET): Likewise.
6965         (SVE_SIG_REGS_SIZE): Likewise.
6966         (SVE_SIG_CONTEXT_SIZE): Likewise.
6967         (SVE_PT_REGS_MASK): Likewise.
6968         (SVE_PT_REGS_FPSIMD): Likewise.
6969         (SVE_PT_REGS_SVE): Likewise.
6970         (SVE_PT_VL_INHERIT): Likewise.
6971         (SVE_PT_VL_ONEXEC): Likewise.
6972         (SVE_PT_REGS_OFFSET): Likewise.
6973         (SVE_PT_FPSIMD_OFFSET): Likewise.
6974         (SVE_PT_FPSIMD_SIZE): Likewise.
6975         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6976         (SVE_PT_SVE_PREG_SIZE): Likewise.
6977         (SVE_PT_SVE_FFR_SIZE): Likewise.
6978         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6979         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6980         (__SVE_SIG_TO_PT): Likewise.
6981         (SVE_PT_SVE_OFFSET): Likewise.
6982         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6983         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6984         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6985         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6986         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6987         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6988         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6989         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6990         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6991         (SVE_PT_SVE_SIZE): Likewise.
6992         (SVE_PT_SIZE): Likewise.
6993         (HAS_SVE_STATE): New define.
6994
6995 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6996
6997         * nat/aarch64-sve-linux-sigcontext.h: New file.
6998         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6999         new files.
7000         (SVE_VQ_MIN): Likewise.
7001         (SVE_VQ_MAX): Likewise.
7002         (SVE_VL_MIN): Likewise.
7003         (SVE_VL_MAX): Likewise.
7004         (SVE_NUM_ZREGS): Likewise.
7005         (SVE_NUM_PREGS): Likewise.
7006         (sve_vl_valid): Likewise.
7007         (struct user_sve_header): Likewise.
7008
7009 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7010             Richard Bunt <Richard.Bunt@arm.com>
7011
7012         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7013         was requested by GDB.
7014
7015 2018-06-15  Tom de Vries  <tdevries@suse.de>
7016
7017         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7018
7019 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7020
7021         * gnulib/update-gnulib.sh: Print expected versions of
7022         autoconf/aclocal.
7023
7024 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7025
7026         * arch-utils.c (default_type_align): Use type_length_units.
7027         * gdbtypes.c (type_align): Use type_length_units.
7028
7029 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7030
7031         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7032         of 'define' command.
7033
7034 2018-06-14  Tom de Vries  <tdevries@suse.de>
7035
7036         PR cli/22573
7037         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7038         get_no_prettyformat_print_options.
7039
7040 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7041
7042         * sparc-nat.h: Include target.h.
7043         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7044         <fetch_registers>: Remove this argument in function call.
7045         <store_registers>: Remove this argument in function call, remove
7046         extra semicolon.
7047         <low_forget_process>: Call sparc64_forget_process instead of
7048         sparc_forget_process.
7049
7050 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7051
7052         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7053         (procfs_target::make_corefile_notes): Adjust to new
7054         target_read_alloc return type.
7055
7056 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7057             Stephen Roberts  <stephen.roberts@arm.com>
7058
7059         PR gdb/22882
7060         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7061         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7062         Move should_notify_stop local into more inner scope.
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 (resume_1): Add call to mark_async_event_handler.
7069
7070 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7071
7072         * infrun.c (do_target_wait): Change old version of $pc printed.
7073
7074 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7075
7076         * dwarf2read.c (read_index_from_section): Rename to...
7077         (read_gdb_index_from_section): ... this, update all callers.
7078         (dwarf2_read_index): Rename to...
7079         (dwarf2_read_gdb_index): ... this, update all callers.
7080
7081 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7082
7083         * gdb/hppa-linux-nat.c
7084         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7085         hppa_linux_nat_target::fetch_registers.
7086
7087 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7088
7089         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7090         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7091         (AARCH64_DWARF_SVE_FFR): Likewise.
7092         (AARCH64_DWARF_SVE_P0): Likewise.
7093         (AARCH64_DWARF_SVE_Z0): Likewise.
7094
7095 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7096
7097         * common/common-regcache.h (raw_compare): New function.
7098         * regcache.c (regcache::raw_compare): Likewise.
7099         * regcache.h (regcache::raw_compare): New declaration.
7100
7101 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7102
7103         * common/common-regcache.h (reg_buffer_common): New structure.
7104         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7105         (reg_buffer::raw_supply): Likewise.
7106         (reg_buffer::raw_supply_integer): Likewise.
7107         (reg_buffer::raw_supply_zeroed): Likewise.
7108         (reg_buffer::raw_collect): Likewise.
7109         (reg_buffer::raw_collect_integer): Likewise.
7110         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7111         (reg_buffer::raw_supply): Likewise.
7112         (reg_buffer::raw_supply_integer): Likewise.
7113         (reg_buffer::raw_supply_zeroed): Likewise.
7114         (reg_buffer::raw_collect): Likewise.
7115         (reg_buffer::raw_collect_integer): Likewise.
7116
7117 2018-06-10  Tom Tromey  <tom@tromey.com>
7118
7119         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7120         (class remote_state) <stop_reply_queue>: Now std::vector.
7121         (remote_state::~remote_state)
7122         (remote_target::stop_reply_queue_length): Update.
7123         (struct queue_iter_param, remove_child_of_pending_fork)
7124         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7125         (check_pending_event_prevents_wildcard_vcont_callback)
7126         (remove_stop_reply_for_inferior)
7127         (remove_stop_reply_of_remote_state)
7128         (remote_notif_remove_once_on_match)
7129         (stop_reply_match_ptid_and_ws)
7130         (remote_kill_child_of_pending_fork): Remove.
7131         (remote_target::remove_new_fork_children)
7132         (remote_target::check_pending_events_prevent_wildcard_vcont)
7133         (remote_target::discard_pending_stop_replies)
7134         (remote_target::discard_pending_stop_replies_in_queue)
7135         (remote_target::remote_notif_remove_queued_reply)
7136         (remote_target::queued_stop_reply)
7137         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7138         (remote_target::wait, remote_target::kill_new_fork_children)
7139         (remote_target::async): Update.
7140
7141 2018-06-10  Tom Tromey  <tom@tromey.com>
7142
7143         * record-full.c (record_full_arch_list_cleanups): Remove.
7144         (record_full_message): Use try/catch.
7145         (record_full_wait_cleanups): Remove.
7146         (record_full_wait_1): Use try/catch.
7147         (record_full_restore): Likewise.
7148
7149 2018-06-10  Tom Tromey  <tom@tromey.com>
7150
7151         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7152         declare VEC.  Add constructor.
7153         <in_target_beneath>: Now bool.
7154         (record_full_breakpoints): Now a std::vector, static.
7155         (record_full_sync_record_breakpoints)
7156         (record_full_init_record_breakpoints)
7157         (record_full_target::insert_breakpoint)
7158         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7159
7160 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7161
7162         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7163         * serial.c (serial_interface_lookup): Remove struct keyword.
7164
7165 2018-06-10  Tom Tromey  <tom@tromey.com>
7166
7167         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7168         method.
7169         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7170         a method.
7171         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7172         method.
7173         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7174         "beneath" as a method.
7175         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7176         Use "beneath" as a method.
7177
7178 2018-06-10  Tom Tromey  <tom@tromey.com>
7179
7180         * tracefile.c (struct trace_file_writer_deleter): New.
7181         <operator()>: Rename from trace_file_writer_xfree.
7182         (trace_file_writer_up): New typedef.
7183         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7184
7185 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7186
7187         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7188         <m_registers, m_register_status>: Change type to
7189         std::unique_ptr.
7190         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7191         XCNEWVEC.
7192
7193 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7194
7195         * common/common-regcache.h (enum register_status): Add
7196         underlying type "signed char".
7197         * regcache.h (reg_buffer) <m_register_status>: Change type to
7198         register_status *.
7199         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7200         register_status instead of signed char.
7201         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7202         (reg_buffer::get_register_status): Remove cast.
7203         (readable_regcache::raw_read): Remove cast.
7204         (readable_regcache::cooked_read): Remove cast.
7205
7206 2018-06-09  Tom Tromey  <tom@tromey.com>
7207
7208         * source.c (reverse_search_command, forward_search_command): Use
7209         scoped_fd.
7210
7211 2018-06-09  Tom Tromey  <tom@tromey.com>
7212
7213         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7214         (serial_ops_list): Now static, std::vector.
7215         (serial_interface_lookup, serial_add_interface): Update.
7216
7217 2018-06-09  Tom Tromey  <tom@tromey.com>
7218
7219         * dwarf2read.c (process_cu_includes): Update.
7220         (process_full_comp_unit): Update.
7221         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7222         std::vector.
7223
7224 2018-06-08  Paul Koning  <paul_koning@dell.com>
7225
7226         PR gdb/23252
7227
7228         * python/python.c (do_start_initialization):
7229         Avoid call to internal Python API.
7230         (init__gdb_module): New function.
7231
7232 2018-06-08  Gary Benson <gbenson@redhat.com>
7233
7234         * linux-thread-db.c (valprint.h): New include.
7235         (struct check_thread_db_info): New structure.
7236         (check_thread_db_on_load, tdb_testinfo): New static globals.
7237         (check_thread_db, check_thread_db_callback): New functions.
7238         (try_thread_db_load_1): Run integrity checks if requested.
7239         (maintenance_check_libthread_db): New function.
7240         (_initialize_thread_db): Register "maint check libthread-db"
7241         and "maint set/show check-libthread-db".
7242         * NEWS: Mention the above new commands.
7243
7244 2018-06-08  Tom Tromey  <tom@tromey.com>
7245
7246         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7247         now a method.
7248
7249 2018-06-08  Tom Tromey  <tom@tromey.com>
7250
7251         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7252
7253 2018-06-08  Tom Tromey  <tom@tromey.com>
7254
7255         * common/btrace-common.h (struct btrace_data): Add constructor,
7256         destructor, move assignment operator.
7257         <empty, clear, fini>: New methods.
7258         <format>: Initialize.
7259         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7260         (btrace_data_empty): Don't declare.
7261         * common/btrace-common.c (btrace_data_init): Remove.
7262         (btrace_data::fini): Rename from btrace_data_fini.
7263         (btrace_data::empty): Rename from btrace_data_empty.
7264         (btrace_data::clear): Rename from btrace_data_clear.  Return
7265         bool.
7266         * btrace.h (make_cleanup_btrace_data): Don't declare.
7267         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7268         (parse_xml_btrace): Update.
7269         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7270         (maint_btrace_clear_packet_history_cmd): Update.
7271
7272 2018-06-07  Pedro Alves  <palves@redhat.com>
7273
7274         * target.h (target_ops) <beneath>: Now a method.  All references
7275         updated.
7276         (class target_stack): New.
7277         * target.c (g_target_stack): New.
7278         (g_current_top_target): Delete.
7279         (current_top_target): Get the top target out of g_target_stack.
7280         (target_stack::push, target_stack::unpush): New.
7281         (push_target, unpush_target): Reimplement.
7282         (target_is_pushed): Reimplement in terms of g_target_stack.
7283         (target_ops::beneath, target_stack::find_beneath): New.
7284
7285 2018-06-07  Pedro Alves  <palves@redhat.com>
7286
7287         * target.h (find_target_beneath): Delete declaration.
7288         * target.c (find_target_beneath): Delete definition.
7289         * aix-thread.c: All callers of find_target_beneath adjusted to
7290         call target_ops::beneath instead.
7291         * bsd-uthread.c: Likewise.
7292         * linux-thread-db.c: Likewise.
7293         * ravenscar-thread.c: Likewise.
7294         * sol-thread.c: Likewise.
7295         * spu-multiarch.c: Likewise.
7296
7297 2018-06-07  Pedro Alves  <palves@redhat.com>
7298
7299         * target.h (target_ops) <beneath>: Now a method.  All references
7300         updated.
7301         (target_ops) <m_beneath>: New.
7302         * target.c (target_ops::beneath): New.
7303         * corelow.c: Adjust all references to target_ops::beneath.
7304         * linux-thread-db.c: Likewise.
7305         * make-target-delegates: Likewise.
7306         * record-btrace.c: Likewise.
7307         * record-full.c: Likewise.
7308         * remote.c: Likewise.
7309         * target.c: Likewise.
7310         * target-delegates.c: Regenerate.
7311
7312 2018-06-07  Pedro Alves  <palves@redhat.com>
7313
7314         * target.h (target_stack): Delete.
7315         (current_top_target): Declare function.
7316         * target.c (target_stack): Delete.
7317         (g_current_top_target): New.
7318         (current_top_target): New function.
7319         * auxv.c: Use current_top_target instead of target_stack
7320         throughout.
7321         * avr-tdep.c: Likewise.
7322         * breakpoint.c: Likewise.
7323         * corefile.c: Likewise.
7324         * elfread.c: Likewise.
7325         * eval.c: Likewise.
7326         * exceptions.c: Likewise.
7327         * frame.c: Likewise.
7328         * gdbarch-selftests.c: Likewise.
7329         * gnu-v3-abi.c: Likewise.
7330         * ia64-tdep.c: Likewise.
7331         * ia64-vms-tdep.c: Likewise.
7332         * infcall.c: Likewise.
7333         * infcmd.c: Likewise.
7334         * infrun.c: Likewise.
7335         * linespec.c: Likewise.
7336         * linux-tdep.c: Likewise.
7337         * minsyms.c: Likewise.
7338         * ppc-linux-nat.c: Likewise.
7339         * ppc-linux-tdep.c: Likewise.
7340         * procfs.c: Likewise.
7341         * regcache.c: Likewise.
7342         * remote.c: Likewise.
7343         * rs6000-tdep.c: Likewise.
7344         * s390-linux-nat.c: Likewise.
7345         * s390-tdep.c: Likewise.
7346         * solib-aix.c: Likewise.
7347         * solib-darwin.c: Likewise.
7348         * solib-dsbt.c: Likewise.
7349         * solib-spu.c: Likewise.
7350         * solib-svr4.c: Likewise.
7351         * solib-target.c: Likewise.
7352         * sparc-tdep.c: Likewise.
7353         * sparc64-tdep.c: Likewise.
7354         * spu-tdep.c: Likewise.
7355         * symfile.c: Likewise.
7356         * symtab.c: Likewise.
7357         * target-descriptions.c: Likewise.
7358         * target-memory.c: Likewise.
7359         * target.c: Likewise.
7360         * target.h: Likewise.
7361         * tracefile-tfile.c: Likewise.
7362         * tracepoint.c: Likewise.
7363         * valops.c: Likewise.
7364         * valprint.c: Likewise.
7365         * value.c: Likewise.
7366         * windows-tdep.c: Likewise.
7367         * mi/mi-main.c: Likewise.
7368
7369 2018-06-07  Tom Tromey  <tom@tromey.com>
7370
7371         * valprint.h (build_address_symbolic): Declare.
7372         * printcmd.c (print_address_symbolic): Update.
7373         (build_address_symbolic): Change "name" and "filename" to
7374         std::string.
7375         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7376         Update.
7377         * defs.h (build_address_symbolic): Remove declaration.
7378
7379 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7380
7381         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7382         (aarch64_vnv_type): Add function.
7383         (aarch64_pseudo_register_name): Add V regs for SVE.
7384         (aarch64_pseudo_register_type): Likewise.
7385         (aarch64_pseudo_register_reggroup_p): Likewise.
7386         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7387         (aarch64_pseudo_read_value): Add V regs for SVE.
7388         (aarch64_pseudo_write_2): Use V0 offset for SVE
7389         (aarch64_pseudo_write): Add V regs for SVE.
7390         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7391
7392 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7393
7394         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7395         (sve_vl_from_vq): Likewise.
7396
7397 2018-06-05  Tom Tromey  <tom@tromey.com>
7398
7399         * cli/cli-cmds.c (show_version): Update.
7400         * top.c (print_gdb_version): Add "interactive" parameter.
7401         Update.
7402         * main.c (captured_main_1): Update.
7403         * top.h (print_gdb_version): Add "interactive" parameter and a
7404         comment.
7405
7406 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7407
7408         * common/enum-flags.h: Add trailing semicolon to example in
7409         comment.
7410
7411 2018-06-05  Tom Tromey  <tom@tromey.com>
7412
7413         PR cli/12326:
7414         * NEWS: Add entry about pager.
7415         * utils.c (pagination_disabled_for_command): New global.
7416         (prompt_for_continue): Allow "c" response to prompt.
7417         (reinitialize_more_filter): Clear
7418         pagination_disabled_for_command.
7419         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7420
7421 2018-06-04  Tom Tromey  <tom@tromey.com>
7422
7423         * ada-lang.h (ada_lookup_symbol_list): Update.
7424         * ada-lang.c (resolve_subexp): Update.
7425         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7426         parameter.
7427         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7428         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7429         results parameter to std::vector.
7430         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7431         Update.
7432         * ada-exp.y (block_lookup): Update.
7433         (select_possible_type_sym): Change type of syms.  Remove nsyms
7434         parameter.
7435         (write_var_or_type, write_name_assoc): Update.
7436
7437 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7438
7439         * windows-nat.c (windows_nat_target::xfer_partial): Return
7440         TARGET_XFER_E_IO if we need to delegate to the target beneath
7441         but BENEATH is NULL.
7442
7443 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7444
7445         * Makefile.in (config.status): Add configure.nat as a
7446         dependency.
7447
7448 2018-06-04  Tom Tromey  <tom@tromey.com>
7449
7450         * cp-name-parser.y (cpname_state): Add method declarations.
7451         (HANDLE_QUAL): Update.
7452         (cpname_state::d_grab, cpname_state::fill_comp)
7453         (cpname_state::make_operator, cpname_state::make_dtor)
7454         (cpname_state::make_builtin_type, cpname_state::make_name)
7455         (cpname_state::d_qualify, cpname_state::d_int_type)
7456         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7457         (%union): Move earlier.
7458
7459 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7460
7461         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7462
7463 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7464
7465         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7466         (aarch64_pseudo_write_1): Likewise.
7467         (aarch64_pseudo_read_value): Use helper.
7468         (aarch64_pseudo_write): Likewise.
7469
7470 2018-06-04  Pedro Alves  <palves@redhat.com>
7471
7472         * darwin-nat.c (darwin_ops): Delete.
7473         (darwin_attach_pid): Use get_native_target.
7474
7475 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7476
7477         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7478         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7479
7480 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7481
7482         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7483         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7484         (aarch64_gdbarch_init): Check for SVE.
7485         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7486
7487 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7488
7489         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7490         * aarch64-tdep.h (aarch64_read_description): Likewise.
7491         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7492         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7493         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7494         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7495         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7496
7497 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7498
7499         * value.c (value_fetch_lazy_bitfield): New.
7500         (value_fetch_lazy_memory): New.
7501         (value_fetch_lazy_register): New.
7502         (value_fetch_lazy): Factor out to smaller functions.
7503
7504 2018-06-01  Tom Tromey  <tom@tromey.com>
7505
7506         * cp-name-parser.y (backslashable, represented): Now const.
7507
7508 2018-06-01  Tom Tromey  <tom@tromey.com>
7509
7510         * cp-name-parser.y: Include parser-defs.h.
7511         (parser_fprintf): Remove declaration.
7512
7513 2018-06-01  Tom Tromey  <tom@tromey.com>
7514
7515         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7516         %parse-param.
7517         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7518         (global_result): Remove globals.
7519         (struct cpname_state): New.
7520         (yyparse): Don't declare.
7521         (yylex, yyerror): Move declarations after %union.
7522         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7523         (make_name): Add state parameter.
7524         Update all callers.
7525         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7526         parameter.
7527         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7528         Update.
7529         (yylex): Add lvalp, state parameters.
7530         (yyerror): Add state parameter.
7531         (cp_demangled_name_to_comp): Update.
7532
7533 2018-06-01  Tom Tromey  <tom@tromey.com>
7534
7535         * cp-name-parser.y (parser_fprintf): Declare.
7536         (GDB_YY_REMAP_PREFIX): Define.
7537         Include yy-remap.h.  Don't redefine yy* identifiers.
7538
7539 2018-06-01  Tom Tromey  <tom@tromey.com>
7540
7541         * python/py-type.c (typy_legacy_template_argument): Update.
7542         * cp-support.h (cp_demangled_name_to_comp): Update.
7543         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7544         parameter to be a "std::string *".
7545         (main): Update.
7546
7547 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7548
7549         * ada-lex.l: Include "diagnostics.h" instead of
7550         "common/diagnostics.h".
7551         * unittests/environ-selftests.c: Likewise.
7552         * common/diagnostics.h: Moved to ../include.
7553
7554 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7555
7556         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7557         to language_mode_manual while calling breakpoint_re_set_one.
7558
7559 2018-06-01  Tom Tromey  <tom@tromey.com>
7560
7561         * valops.c (value_cast_structs, destructor_name_p): Update.
7562         * symtab.c (gdb_mangle_name): Update.
7563         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7564         Update.
7565         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7566         (pascal_object_print_value_fields, pascal_object_print_value):
7567         Update.
7568         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7569         * linespec.c (find_methods): Update.
7570         * gdbtypes.h (type_name_no_tag): Remove.
7571         (type_name_or_error): Rename from type_name_no_tag_or_error.
7572         * gdbtypes.c (type_name_no_tag): Remove.
7573         (type_name_or_error): Rename from type_name_no_tag_or_error.
7574         (lookup_struct_elt_type, check_typedef): Update.
7575         * expprint.c (print_subexp_standard): Update.
7576         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7577         * d-namespace.c (d_lookup_nested_symbol): Update.
7578         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7579         (cp_print_class_member): Update.
7580         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7581         * completer.c (add_struct_fields): Update.
7582         * c-typeprint.c (cp_type_print_derivation_info)
7583         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7584         Update.
7585         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7586         (ada_prefer_type, ada_is_exception_sym): Update.
7587
7588 2018-06-01  Tom Tromey  <tom@tromey.com>
7589
7590         * valops.c (enum_constant_from_type, value_namespace_elt)
7591         (value_maybe_namespace_elt): Update.
7592         * valarith.c (find_size_for_pointer_math): Update.
7593         * target-descriptions.c (make_gdb_type): Update.
7594         * symmisc.c (print_symbol): Update.
7595         * stabsread.c (define_symbol, read_type)
7596         (complain_about_struct_wipeout, add_undefined_type)
7597         (cleanup_undefined_types_1): Update.
7598         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7599         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7600         (rust_internal_print_type, rust_composite_type)
7601         (rust_evaluate_funcall, rust_evaluate_subexp)
7602         (rust_inclusive_range_type_p): Update.
7603         * python/py-type.c (typy_get_tag): Update.
7604         * p-typeprint.c (pascal_type_print_base): Update.
7605         * mdebugread.c (parse_symbol, parse_type): Update.
7606         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7607         Update.
7608         * guile/scm-type.c (gdbscm_type_tag): Update.
7609         * go-lang.c (sixg_string_p): Update.
7610         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7611         Update.
7612         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7613         (TYPE_TAG_NAME): Remove.
7614         * gdbtypes.c (type_name_no_tag): Simplify.
7615         (check_typedef, check_types_equal, recursive_dump_type)
7616         (copy_type_recursive, arch_composite_type): Update.
7617         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7618         in summary mode when needed.
7619         * eval.c (evaluate_funcall): Update.
7620         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7621         (process_structure_scope, read_enumeration_type)
7622         (read_namespace_type, read_module_type, determine_prefix): Update.
7623         * cp-support.c (inspect_type): Update.
7624         * coffread.c (process_coff_symbol, decode_base_type): Update.
7625         * c-varobj.c (c_is_path_expr_parent): Update.
7626         * c-typeprint.c (c_type_print_base_struct_union): Update.
7627         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7628         summary when using C language.
7629         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7630         (gen_maybe_namespace_elt): Update.
7631         * ada-lang.c (ada_type_name): Simplify.
7632         (empty_record, ada_template_to_fixed_record_type_1)
7633         (template_to_static_fixed_type)
7634         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7635
7636 2018-06-01  Tom Tromey  <tom@tromey.com>
7637
7638         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7639         c_print_type.
7640         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7641         (c_print_type): Update.
7642         (c_print_type): New overload.
7643         (c_type_print_varspec_prefix, c_type_print_args)
7644         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7645         (c_type_print_base_struct_union, c_type_print_base_1)
7646         (cp_type_print_method_args): Add "language" parameter.
7647         (c_type_print_base): Update.
7648         * c-lang.h (c_print_type): Add new overload.
7649
7650 2018-06-01  Tom Tromey  <tom@tromey.com>
7651
7652         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7653         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7654
7655 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7656
7657         * aarch64-tdep.c (aarch64_sve_register_names): New const
7658         var.
7659         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7660         (AARCH64_SVE_Z_REGS_NUM): New define.
7661         (AARCH64_SVE_P_REGS_NUM): Likewise.
7662         (AARCH64_SVE_NUM_REGS): Likewise.
7663
7664 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7665
7666         * nat/linux-ptrace.h [__alpha__]
7667         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7668         definitions.
7669
7670 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7671
7672         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7673         the endianness selected.
7674         * NEWS: Document `set endian auto' mode operation update.
7675
7676 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7677
7678         * Makefile.in: Add new header.
7679         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7680         (sve_vl_from_vg): Likewise.
7681         (sve_vq_from_vl): Likewise.
7682         (sve_vl_from_vq): Likewise.
7683         (sve_vq_from_vg): Likewise.
7684         (sve_vg_from_vq): Likewise.
7685         * configure.nat: Add new c file.
7686         * nat/aarch64-sve-linux-ptrace.c: New file.
7687         * nat/aarch64-sve-linux-ptrace.h: New file.
7688
7689 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7690
7691         * aarch64-linux-nat.c (aarch64_linux_read_description):
7692         Add parmeter zero.
7693         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7694         Likewise.
7695         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7696         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7697         (aarch64_gdbarch_init): Add parmeter zero.
7698         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7699         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7700         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7701         parmeter.
7702         * doc/gdb.texinfo: Describe SVE feature
7703         * features/aarch64-sve.c: New file.
7704
7705 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7706
7707         PR gdb/23210
7708         * gdbarch.sh (significant_addr_bit): Default to zero when
7709         not set by target architecture.
7710         * gdbarch.c: Re-generated.
7711         * utils.c (address_significant): Update.
7712
7713 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7714
7715         * stack.c (func_command): Remove trailing newline in call to error.
7716
7717 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7718
7719         * regcache.h (regcache_raw_collect): Remove, update callers to
7720         use regcache::raw_collect.
7721         * regcache.c (regcache_raw_collect): Remove.
7722
7723 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7724
7725         * regcache.h (regcache_raw_supply): Remove, update callers to
7726         use detached_regcache::raw_supply.
7727         * regcache.c (regcache_raw_supply): Remove.
7728
7729 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7730
7731         * regcache.h (regcache_cooked_write_part): Remove, update
7732         callers to use regcache::cooked_write_part.
7733         * regcache.c (regcache_cooked_write_part): Remove.
7734
7735 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7736
7737         * regcache.h (regcache_cooked_read_part): Remove, update callers
7738         to use readable_regcache::cooked_read_part.
7739         * regcache.c (regcache_cooked_read_part): Remove.
7740
7741 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7742
7743         * regcache.h (regcache_cooked_read_value): Remove, update
7744         callers to use readable_regcache::cooked_read_value.
7745         * regcache.c (regcache_cooked_read_value): Remove.
7746
7747 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7748
7749         * regcache.h (regcache_cooked_write): Remove, update callers to
7750         use regcache::cooked_write.
7751         * regcache.c (regcache_cooked_write): Remove.
7752
7753 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7754
7755         * regcache.h (regcache_invalidate): Remove, update callers to
7756         use detached_regcache::invalidate instead.
7757         * regcache.c (regcache_invalidate): Remove.
7758
7759 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7760
7761         * regcache.h (regcache_raw_write_part): Remove, update callers
7762         to use regcache::raw_write_part instead.
7763         * regcache.c (regcache_raw_write_part): Remove.
7764
7765 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7766
7767         * regcache.h (regcache_raw_read_part): Remove, update callers to
7768         use readable_regcache::raw_read_part instead.
7769         * regcache.c (regcache_raw_read_part): Remove.
7770
7771 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7772
7773         * regcache.h (regcache_cooked_read): Remove, update callers to
7774         use readable_regcache::cooked_read instead.
7775         * regcache.c (regcache_cooked_read): Remove.
7776
7777 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7778
7779         * regcache.h (regcache_raw_write): Remove, update callers to use
7780         regcache::raw_write instead.
7781         * regcache.c (regcache_raw_write): Remove.
7782
7783 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7784
7785         * regcache.h (regcache_raw_read): Remove, update callers to use
7786         readable_regcache::raw_read instead.
7787         * regcache.c (regcache_raw_read): Remove.
7788
7789 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7790
7791         * regcache.h (regcache_raw_update): Remove, update callers to
7792         use readable_regcache::raw_update instead.
7793         * regcache.c (regcache_raw_update): Remove.
7794
7795 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7796
7797         * regcache.h (regcache_register_status): Remove, update callers
7798         to use reg_buffer::get_register_status directly instead.
7799         * regcache.c (regcache_register_status): Remove.
7800
7801 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7802
7803         * regcache.h (regcache_get_ptid): Remove, update all callers to
7804         call regcache::ptid instead.
7805         * regcache.c (regcache_get_ptid): Remove.
7806
7807 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7808
7809         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7810
7811 2018-05-30  Pedro Alves  <palves@redhat.com>
7812
7813         * common/common-exceptions.h (exception_rethrow): Use
7814         ATTRIBUTE_NORETURN.
7815
7816 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7817
7818         * breakpoint.c (print_solib_event, check_status_catch_solib):
7819         Remove struct keyword in range-based for loops.
7820         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7821         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7822         Likewise.
7823         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7824         Likewise.
7825         * symfile.c (addr_info_make_relative): Likewise.
7826         * thread.c (value_in_thread_stack_temporaries): Likewise.
7827
7828 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7829
7830         PR gdb/16841
7831         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7832         aggregate type to get its real type before accessing it.
7833
7834 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7835
7836         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7837         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7838         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7839         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7840         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7841         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7842         * printcmd.c (info_address_command): Likewise.
7843
7844 2018-05-29  Tom Tromey  <tom@tromey.com>
7845
7846         * windows-nat.c (handle_exception): Update fall-through comment.
7847
7848 2018-05-29  Tom Tromey  <tom@tromey.com>
7849
7850         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7851         (struct program_space) <added_solibs>: Now a std::vector.
7852         * breakpoint.c (print_solib_event): Update.
7853         (check_status_catch_solib): Update.
7854         * progspace.c (clear_program_space_solib_cache): Update.
7855         * solib.c (update_solib_list): Update.
7856
7857 2018-05-29  Tom Tromey  <tom@tromey.com>
7858
7859         * python/py-type.c (typy_richcompare): Update.
7860         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7861         * gdbtypes.h (types_deeply_equal): Return bool.
7862         (types_equal): Likewise.
7863         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7864         declare VEC.
7865         (check_types_equal): Change worklist to std::vector.  Return
7866         bool.
7867         (struct type_equality_entry): Add constructor.
7868         (compare_maybe_null_strings): Return bool.
7869         (check_types_worklist): Return bool.  Change worklist to
7870         std::vector.
7871         (types_deeply_equal): Use std::vector.
7872         (types_equal): Return bool.
7873         (compare_maybe_null_strings): Simplify.
7874
7875 2018-05-29  Tom Tromey  <tom@tromey.com>
7876
7877         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7878
7879 2018-05-29  Tom Tromey  <tom@tromey.com>
7880
7881         * objc-lang.h: Don't include cp-support.h.
7882         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7883         declare VEC.
7884
7885 2018-05-27  Tom Tromey  <tom@tromey.com>
7886
7887         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7888
7889 2018-05-25  Tom Tromey  <tom@tromey.com>
7890
7891         * value.c (value::location): Initialize.
7892
7893 2018-05-25  Tom Tromey  <tom@tromey.com>
7894
7895         * dbxread.c (init_bincl_list): Remove.
7896         (bincl_list): Now a std::vector.
7897         (bincls_allocated, next_bincl): Remove.
7898         (free_bincl_list, do_free_bincl_list_cleanup)
7899         (make_cleanup_free_bincl_list): Remove.
7900         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7901         unique_xmalloc_ptr.
7902         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7903         (struct header_file_location): Add constructor.
7904         (add_bincl_to_list): Remove.
7905
7906 2018-05-25  Tom Tromey  <tom@tromey.com>
7907
7908         * tui/tui.c (tui_enable): Update.
7909         * mi/mi-interp.c (mi_interp::init): Update.
7910         * interps.h (class interp) <name>: New method.
7911         <m_name>: Rename from name.
7912         (~scoped_restore_interp): Update.
7913         * interps.c (interp::interp): Update.
7914         (interp_add, interp_set, interp_lookup_existing)
7915         (current_interp_named_p): Update.
7916
7917 2018-05-25  Tom Tromey  <tom@tromey.com>
7918
7919         * interps.c (interp_name): Remove.
7920         * mi/mi-interp.c (mi_interp::init): Update.
7921         * interps.h (interp_name): Remove.
7922         (~scoped_restore_interp): Update.
7923         * tui/tui.c (tui_enable): Update.
7924
7925 2018-05-25  Tom Tromey  <tom@tromey.com>
7926
7927         * utils.c (fputs_maybe_filtered): Update.
7928         * linespec.c (decode_line_full): Update.
7929         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7930         (mi_print_breakpoint_for_event, mi_solib_loaded)
7931         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7932         (mi_user_selected_context_changed): Update.
7933         * mi/mi-main.c (mi_execute_command): Update.
7934         * cli/cli-script.c (execute_control_command): Update.
7935         * python/python.c (execute_gdb_command): Update.
7936         * solib.c (info_sharedlibrary_command): Update.
7937         * interps.c (interp_ui_out): Remove.
7938         * interps.h (interp_ui_out): Remove.
7939
7940 2018-05-25  Tom Tromey  <tom@tromey.com>
7941
7942         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7943         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7944         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7945
7946 2018-05-25  Tom Tromey  <tom@tromey.com>
7947
7948         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7949         * interps.c (interp_exec): Use scoped_restore.
7950
7951 2018-05-25  Tom Tromey  <tom@tromey.com>
7952
7953         * remote.c (remote_target::remote_file_get): Use
7954         gdb::byte_vector.
7955         (remote_target::remote_file_put): Likewise.
7956
7957 2018-05-25  Tom Tromey  <tom@tromey.com>
7958
7959         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7960         a std::string.
7961         (get_pe_section_index, add_pe_exported_sym): Update.
7962         (read_pe_exported_syms): Use gdb::def_vector.
7963
7964 2018-05-25  Tom Tromey  <tom@tromey.com>
7965
7966         * frame.c (remove_prev_frame): Remove.
7967         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7968
7969 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7970
7971         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7972         Remove prototypes.
7973         * mips-linux-nat.c (supply_fpregset): Always call
7974         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7975         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7976         `mips_fill_fpregset'.
7977         * mips-linux-tdep.c (mips_supply_fpregset)
7978         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7979         (mips_fill_fpregset_wrapper): Remove functions.
7980         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7981         (mips_linux_fpregset): Remove variable.
7982         (mips_linux_iterate_over_regset_sections): Use
7983         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7984         (mips_linux_o32_sigframe_init): Remove comment.
7985
7986 2018-05-25  Pedro Alves  <palves@redhat.com>
7987
7988         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7989         (struct readahead_cache, struct packet_reg, struct
7990         remote_arch_state, class remote_state): Move higher up in the
7991         file.
7992         (remote_target::m_remote_state): Now an object instead of a pointer.
7993         (remote_target::get_remote_state): Adjust.
7994
7995 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7996
7997         * stack.c (select_and_print_frame): Delete.
7998         (struct function_bounds): Move struct within function.
7999         (func_command): Most content moved into new function
8000         find_frame_for_function, use new function, print result, add
8001         function comment.
8002         (find_frame_for_function): New function, now returns a result.
8003
8004 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8005
8006         * stack.c (iterate_over_block_arg_vars): Fix comment.
8007         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8008
8009 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8010
8011         PR gdb/23203
8012         * frame.c
8013         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8014         Define.
8015         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8016         Define.
8017         * frame.h (class scoped_restore_selected_frame): New class.
8018         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8019         of any exception, use scoped_restore_selected_frame to restore the
8020         frame instead.
8021
8022 2018-05-24  Pedro Alves  <palves@redhat.com>
8023
8024         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8025         override.
8026
8027 2018-05-23  Tom Tromey  <tom@tromey.com>
8028
8029         * complaints.c (struct complaints): Remove.
8030         (symfile_complaint_book): Remove.
8031         (series): New global.
8032         (complaint_internal): Update.
8033         (clear_complaints): Update.
8034
8035 2018-05-23  Tom Tromey  <tom@tromey.com>
8036
8037         * complaints.c (counters): New global.
8038         (struct complain): Remove.
8039         (struct complaints) <root>: Remove.
8040         (complaint_sentinel): Remove.
8041         (symfile_complaint_book): Update.
8042         (find_complaint) Remove.
8043         (complaint_internal, clear_complaints): Update.
8044
8045 2018-05-23  Tom Tromey  <tom@tromey.com>
8046
8047         * complaints.c (struct complain) <file, line>: Remove.
8048         (find_complaint): Remove file, line parameters.
8049         (complaint_internal): Update.
8050
8051 2018-05-23  Tom Tromey  <tom@tromey.com>
8052
8053         * complaints.c (vcomplaint): Remove.
8054         (complaint_internal) Merge in contents of vcomplaint.
8055
8056 2018-05-23  Tom Tromey  <tom@tromey.com>
8057
8058         * complaints.c (struct complaints) <explanation>: Remove.
8059         (symfile_explanations): Remove.
8060         (symfile_complaint_book): Update.
8061         (vcomplaint): Update.
8062         (struct explanation): Remove.
8063
8064 2018-05-23  Tom Tromey  <tom@tromey.com>
8065
8066         * complaints.c (symfile_complaints): Remove.
8067         (complaint_internal): Remove "complaints" parameter.
8068         (clear_complaints, vcomplaint): Remove "c" parameter.
8069         (get_complaints): Remove.
8070         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8071         (dwarf2_debug_line_missing_file_complaint)
8072         (dwarf2_debug_line_missing_end_sequence_complaint)
8073         (dwarf2_complex_location_expr_complaint)
8074         (dwarf2_const_value_length_mismatch_complaint)
8075         (dwarf2_section_buffer_overflow_complaint)
8076         (dwarf2_macro_malformed_definition_complaint)
8077         (dwarf2_invalid_attrib_class_complaint)
8078         (create_addrmap_from_index, dw2_symtab_iter_next)
8079         (dw2_expand_marked_cus)
8080         (dw2_debug_names_iterator::find_vec_in_debug_names)
8081         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8082         (create_debug_type_hash_table, init_cutu_and_read_dies)
8083         (partial_die_parent_scope, add_partial_enumeration)
8084         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8085         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8086         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8087         (create_cus_hash_table, create_dwp_hash_table)
8088         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8089         (dwarf2_rnglists_process, dwarf2_ranges_process)
8090         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8091         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8092         (handle_struct_member_die, process_structure_scope)
8093         (read_array_type, read_common_block, read_module_type)
8094         (read_tag_pointer_type, read_typedef, read_base_type)
8095         (read_subrange_type, load_partial_dies, partial_die_info::read)
8096         (partial_die_info::read, partial_die_info::read)
8097         (partial_die_info::read, read_checked_initial_length_and_offset)
8098         (dwarf2_string_attr, read_formatted_entries)
8099         (dwarf_decode_line_header)
8100         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8101         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8102         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8103         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8104         (get_signatured_type, get_DW_AT_signature_type)
8105         (decode_locdesc, file_file_name, consume_improper_spaces)
8106         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8107         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8108         (dwarf2_symbol_mark_computed, set_die_type)
8109         (read_attribute_value): Update.
8110         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8111         Update.
8112         * dbxread.c (unknown_symtype_complaint)
8113         (lbrac_mismatch_complaint, repeated_header_complaint)
8114         (set_namestring, function_outside_compilation_unit_complaint)
8115         (read_dbx_symtab, process_one_symbol): Update.
8116         * gdbtypes.c (stub_noname_complaint): Update.
8117         * windows-nat.c (handle_unload_dll): Update.
8118         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8119         (decode_base_type): Update.
8120         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8121         (eb_complaint, record_include_begin, record_include_end)
8122         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8123         (process_xcoff_symbol, read_symbol)
8124         (function_outside_compilation_unit_complaint)
8125         (scan_xcoff_symtab): Update.
8126         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8127         * buildsym.c (finish_block_internal, make_blockvector)
8128         (end_symtab_get_static_block, augment_type_symtab): Update.
8129         * dtrace-probe.c (dtrace_process_dof)
8130         (dtrace_static_probe_ops::get_probes): Update.
8131         * complaints.h (struct complaint): Don't declare.
8132         (symfile_complaints): Remove.
8133         (complaint_internal): Remove "complaints" parameter.
8134         (complaint): Likewise.
8135         (clear_complaints): Likewise.
8136         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8137         (reread_symbols): Update.
8138         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8139         (dwarf2_frame_cache, decode_frame_entry): Update.
8140         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8141         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8142         (info_selectors_command): Update.
8143         * macrotab.c (macro_include, check_for_redefinition)
8144         (macro_undef): Update.
8145         * objfiles.c (filter_overlapping_sections): Update.
8146         * stabsread.c (invalid_cpp_abbrev_complaint)
8147         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8148         (define_symbol, error_type, read_type, rs6000_builtin_type)
8149         (stabs_method_name_from_physname, read_member_functions)
8150         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8151         (attach_fields_to_type, complain_about_struct_wipeout)
8152         (read_range_type, read_args, common_block_start)
8153         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8154         Update.
8155         * mdebugread.c (index_complaint, unknown_ext_complaint)
8156         (basic_type_complaint, bad_tag_guess_complaint)
8157         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8158         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8159         (parse_procedure, parse_lines)
8160         (function_outside_compilation_unit_complaint)
8161         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8162         (bad_tag_guess_complaint, reg_value_complaint): Update.
8163         * cp-support.c (demangled_name_complaint): Update.
8164         * macroscope.c (sal_macro_scope): Update.
8165         * dwarf-index-write.c (class debug_names): Update.
8166
8167 2018-05-23  Tom Tromey  <tom@tromey.com>
8168
8169         * complaints.c (clear_complaints): Remove "noisy" parameter.
8170         * complaints.h (clear_complaints): Update.
8171         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8172         (reread_symbols): Update.
8173
8174 2018-05-23  Tom Tromey  <tom@tromey.com>
8175
8176         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8177         SUBSEQUENT_MESSAGE.
8178         (vcomplaint, clear_complaints): Update.
8179         (symfile_explanations): Remove some messages.
8180
8181 2018-05-23  Tom Tromey  <tom@tromey.com>
8182
8183         * complaints.c (internal_complaint): Remove.
8184         * complaints.h (internal_complaint): Remove.
8185
8186 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8187
8188         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8189
8190 2018-05-22  Pedro Alves  <palves@redhat.com>
8191
8192         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8193         (remote_fileio_badfd, remote_fileio_return_errno)
8194         (remote_fileio_return_success, remote_fileio_func_open)
8195         (remote_fileio_func_open, remote_fileio_func_close)
8196         (remote_fileio_func_read, remote_fileio_func_write)
8197         (remote_fileio_func_lseek, remote_fileio_func_rename)
8198         (remote_fileio_func_unlink, remote_fileio_func_stat)
8199         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8200         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8201         remote_target parameter.
8202         (remote_fio_func_map) <func>: Add remote_target parameter.
8203         (do_remote_fileio_request, remote_fileio_request):
8204         * remote-fileio.h (remote_fileio_request):
8205         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8206         remote_target parameter.
8207         (remote_notif_process, handle_notification): Adjust to pass down
8208         the remote.
8209         (remote_notif_state_allocate): Add remote_target parameter.  Save
8210         it.
8211         * remote-notif.h (struct remote_target): Forward declare.
8212         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8213         remote_target parameter.
8214         (struct remote_notif_state) <remote>: New field.
8215         (remote_notif_ack, remote_notif_parse): Add remote_target
8216         parameter.
8217         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8218         remote_target parameter.
8219         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8220         (threads_listing_context, rmt_thread_action, protocol_feature)
8221         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8222         (packet_result, struct threads_listing_context, remote_state):
8223         Move definitions and declarations higher up.
8224         (remote_target) <~remote_target>: Declare.
8225         (remote_download_command_source, remote_file_put, remote_file_get)
8226         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8227         (remote_hostio_pread_vFile, remote_hostio_send_command)
8228         (remote_hostio_set_filesystem, remote_hostio_open)
8229         (remote_hostio_close, remote_hostio_unlink, remote_state)
8230         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8231         (get_memory_write_packet_size, get_memory_read_packet_size)
8232         (append_pending_thread_resumptions, remote_detach_1)
8233         (append_resumption, remote_resume_with_vcont)
8234         (add_current_inferior_and_thread, wait_ns, wait_as)
8235         (process_stop_reply, remote_notice_new_inferior)
8236         (process_initial_stop_replies, remote_add_thread)
8237         (btrace_sync_conf, remote_btrace_maybe_reopen)
8238         (remove_new_fork_children, kill_new_fork_children)
8239         (discard_pending_stop_replies, stop_reply_queue_length)
8240         (check_pending_events_prevent_wildcard_vcont)
8241         (discard_pending_stop_replies_in_queue, stop_reply)
8242         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8243         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8244         (remote_interrupt_as, remote_interrupt_ns)
8245         (remote_get_noisy_reply, remote_query_attached)
8246         (remote_add_inferior, remote_current_thread, get_current_thread)
8247         (set_thread, set_general_thread, set_continue_thread)
8248         (set_general_process, write_ptid)
8249         (remote_unpack_thread_info_response, remote_get_threadinfo)
8250         (parse_threadlist_response, remote_get_threadlist)
8251         (remote_threadlist_iterator, remote_get_threads_with_ql)
8252         (remote_get_threads_with_qxfer)
8253         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8254         (get_offsets, remote_check_symbols, remote_supported_packet)
8255         (remote_query_supported, remote_packet_size)
8256         (remote_serial_quit_handler, remote_detach_pid)
8257         (remote_vcont_probe, remote_resume_with_hc)
8258         (send_interrupt_sequence, interrupt_query)
8259         (remote_notif_get_pending_events, fetch_register_using_p)
8260         (send_g_packet, process_g_packet, fetch_registers_using_g)
8261         (store_register_using_P, store_registers_using_G)
8262         (set_remote_traceframe, check_binary_download)
8263         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8264         (remote_xfer_live_readonly_partial, remote_read_bytes)
8265         (remote_send_printf, remote_flash_write, readchar)
8266         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8267         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8268         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8269         (extended_remote_disable_randomization, extended_remote_run)
8270         (send_environment_packet, extended_remote_environment_support)
8271         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8272         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8273         (packet_command): Now methods of ...
8274         (remote_target): ... this class.
8275         (m_remote_state) <remote_target>: New field.
8276         (struct remote_state) <stop_reply_queue,
8277         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8278         fields.
8279         (remote_state::remote_state): Allocate stop_reply_queue.
8280         (remote_state): Delete global.
8281         (get_remote_state_raw): Delete.
8282         (remote_target::get_remote_state): Allocate m_remote_state on
8283         demand.
8284         (get_current_remote_target): New.
8285         (remote_ops, extended_remote_ops): Delete.
8286         (wait_forever_enabled_p, remote_async_inferior_event_token):
8287         Delete, moved to struct remote_state.
8288         (remote_target::close): Delete self.  Destruction bits split to
8289         ...
8290         (remote_target::~remote_target): ... this.
8291         (show_memory_packet_size): Adjust to use
8292         get_current_remote_target.
8293         (struct protocol_feature) <func>: Add remote_target parameter.
8294         All callers adjusted.
8295         (curr_quit_handler_target): New.
8296         (remote_serial_quit_handler): Reimplement.
8297         (remote_target::open_1): Adjust to use get_current_remote_target.
8298         Heap-allocate remote_target/extended_remote_target instances.
8299         (vcont_builder::vcont_builder): Add remote_target parameter, and
8300         save it in m_remote.  All callers adjusted.
8301         (vcont_builder::m_remote): New field.
8302         (vcont_builder::restart, vcont_builder::flush)
8303         (vcont_builder::push_action): Use it.
8304         (remote_target::commit_resume): Use it.
8305         (struct queue_iter_param) <remote>: New field.
8306         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8307         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8308         (check_pending_event_prevents_wildcard_vcont_callback)
8309         (remote_target::check_pending_events_prevent_wildcard_vcont)
8310         (remote_target::discard_pending_stop_replies)
8311         (remote_target::discard_pending_stop_replies_in_queue)
8312         (remote_target::remote_notif_remove_queued_reply): Fill in
8313         'remote' field.
8314         (remote_notif_get_pending_events): New.
8315         (remote_target::readchar, remote_target::remote_serial_write):
8316         Save/restore curr_quit_handler_target.
8317         (putpkt): New.
8318         (kill_new_fork_children): Fill in 'remote' field.
8319         (packet_command): Use get_current_remote_target, defer to
8320         remote_target method of same name.
8321         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8322         parameter, and save it in m_remote.  All callers adjusted.
8323         (scoped_remote_fd::release): Use m_remote.
8324         (scoped_remote_fd::m_remote): New field.
8325         (remote_file_put, remote_file_get, remote_file_delete): Use
8326         get_current_remote_target, defer to remote_target method of same
8327         name.
8328         (remote_btrace_reset): Add remote_state paremeter.  Update all
8329         callers.
8330         (remote_async_inferior_event_handler). Pass down 'data'.
8331         (remote_new_objfile): Use get_current_remote_target.
8332         (remote_target::vcont_r_supported): New.
8333         (set_range_stepping): Use get_current_remote_target and
8334         remote_target::vcont_r_supported.
8335         (_initialize_remote): Don't allocate 'remote_state' and
8336         'stop_reply_queue' globals.
8337         * remote.h (struct remote_target): Forward declare.
8338         (getpkt, putpkt, remote_notif_get_pending_events): Add
8339         'remote_target' parameter.
8340
8341 2018-05-22  Pedro Alves  <palves@redhat.com>
8342
8343         * remote.c (vcont_builder): Now a class.  Make all data members
8344         private.
8345         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8346         Declare methods.
8347         (vcont_builder_restart): Rename to ...
8348         (vcont_builder::restart): ... this.
8349         (vcont_builder_flush): Rename to ...
8350         (vcont_builder::flush): ... this.
8351         (vcont_builder_push_action): Rename to ...
8352         (vcont_builder::push_action): ... this.
8353         (remote_target::commit_resume): Adjust.
8354
8355 2018-05-22  Pedro Alves  <palves@redhat.com>
8356
8357         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8358         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8359         (get_fixed_memory_packet_size): New.
8360         (get_memory_packet_size): Use it.
8361         (set_memory_packet_size): Don't override the config size with
8362         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8363         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8364         Don't refer to get_memory_packet_size if not connected to a remote
8365         target.  Show "(default)" if configured size is 0.
8366
8367 2018-05-22  Pedro Alves  <palves@redhat.com>
8368
8369         * remote.c (remote_target::mourn_inferior): Move
8370         discard_pending_stop_replies call here from ...
8371         (_initialize_remote): ... here.
8372
8373 2018-05-22  Pedro Alves  <palves@redhat.com>
8374
8375         * remote.c (compare_section_command): Remove set_general_process
8376         call.
8377
8378 2018-05-22  Pedro Alves  <palves@redhat.com>
8379
8380         * remote.c (struct packet_reg, struct remote_arch_state):
8381         Move higher up in the file.
8382         (remote_state) <m_arch_states>: Store remote_arch_state values
8383         instead of remote_arch_state pointers.
8384         (remote_state::get_remote_arch_state): Adjust.
8385
8386 2018-05-22  Pedro Alves  <palves@redhat.com>
8387
8388         * remote.c: Include <unordered_map>.
8389         (remote_state): Now a class.
8390         (remote_state) <get_remote_arch_state>: Declare method.
8391         <get_remote_arch_state>: New field.
8392         (remote_arch_state) <remote_arch_state>: Declare ctor.
8393         <regs>: Now a unique_ptr.
8394         (remote_gdbarch_data_handle): Delete.
8395         (get_remote_arch_state): Delete.
8396         (remote_state::get_remote_arch_state): New.
8397         (get_remote_state): Adjust to call remote_state's
8398         get_remote_arch_state method.
8399         (init_remote_state): Delete, bits factored out to ...
8400         (remote_arch_state::remote_arch_state): ... this new method.
8401         (get_remote_packet_size, get_memory_packet_size)
8402         (process_g_packet, remote_target::fetch_registers)
8403         (remote_target::prepare_to_store, store_registers_using_G)
8404         (remote_target::store_registers, remote_target::get_trace_status):
8405         Adjust to call remote_state's method.
8406         (_initialize_remote): Remove reference to
8407         remote_gdbarch_data_handle.
8408
8409 2018-05-22  Pedro Alves  <palves@redhat.com>
8410
8411         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8412         pread>: New method declarations.
8413         (remote_target::open_1): Adjust.
8414         (readahead_cache_invalidate): Rename to ...
8415         (readahead_cache::invalidate): ... this, and adjust to be a class
8416         method.
8417         (readahead_cache_invalidate_fd): Rename to ...
8418         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8419         class method.
8420         (remote_hostio_pwrite): Adjust.
8421         (remote_hostio_pread_from_cache): Rename to ...
8422         (readahead_cache::pread): ... this, and adjust to be a class
8423         method.
8424         (remote_hostio_close): Adjust.
8425
8426 2018-05-22  Pedro Alves  <palves@redhat.com>
8427
8428         * remote.c (remote_hostio_close_cleanup): Delete.
8429         (class scoped_remote_fd): New.
8430         (remote_file_put, remote_file_get): Use it.
8431
8432 2018-05-22  Pedro Alves  <palves@redhat.com>
8433
8434         (struct vCont_action_support): Use bool and initialize all fields.
8435         (struct readahead_cache): Initialize all fields.
8436         (remote_state): Use bool and initialize all fields.
8437         (remote_state::remote_state, remote_state::~remote_state): New.
8438         (new_remote_state): Delete.
8439         (_initialize_remote): Use new to allocate remote_state.
8440
8441 2018-05-22  Pedro Alves  <palves@redhat.com>
8442             張俊芝  <zjz@zjz.name>
8443
8444         PR gdb/22973
8445         * c-exp.y: Include "c-support.h".
8446         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8447         of tolower.  Use c_ident_is_alpha to scan names.
8448         * c-lang.c: Include "c-support.h".
8449         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8450         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8451         * c-support.h: New file, with bits factored out from ...
8452         * cp-name-parser.y: ... this file.
8453         Include "c-support.h".
8454         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8455         c-support.h and renamed.
8456         (symbol_end, yylex): Adjust.
8457
8458 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8459
8460         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8461         parameter type to CORE_ADDR.
8462         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8463         parameter type in declaration to CORE_ADDR.
8464         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8465         target_auxv_search to get AT_HWCAP and use the result to get the
8466         target description.
8467         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8468         to CORE_ADDR. Remove the cast of the return value to unsigned
8469         long. Fix error predicate of target_auxv_search.
8470         (ppc_linux_nat_target::read_description): Change the type of the
8471         hwcap variable to CORE_ADDR.
8472
8473 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8474
8475         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8476         if the size of fpscr is larger than 32 bits.
8477
8478 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8479
8480         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8481         (ppc32_linux_vsxregmap): New global.
8482         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8483         regcache_supply_regset, and regcache_collect_regset.
8484         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8485         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8486         (fetch_vsx_register, store_vsx_register): Remove.
8487         (fetch_vsx_registers): Add regno parameter. Get regset using
8488         ppc_linux_vsxregset. Use regset to supply registers.
8489         (store_vsx_registers): Add regno parameter. Get regset using
8490         ppc_linux_vsxregset. Use regset to collect registers.
8491         (fetch_register): Call fetch_vsx_registers instead of
8492         fetch_vsx_register.
8493         (store_register): Call store_vsx_registers instead of
8494         store_vsx_register.
8495         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8496         new regno parameter.
8497         (store_ppc_registers): Call store_vsx_registers with -1 for the
8498         new regno parameter.
8499         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8500         (ppc_collect_vsxregset): Remove.
8501
8502 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8503
8504         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8505         offset fields.
8506         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8507         for vector register offset fields.
8508         (ppc64_fbsd_reg_offsets): Likewise.
8509         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8510         to vector register offset fields.
8511         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8512         to vector register offset fields.
8513         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8514         vector register offset fields.
8515         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8516         initializers for vector register offset fields.
8517         (rs6000_aix64_reg_offsets): Likewise.
8518         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8519         (ppc_supply_vrregset): Remove.
8520         (ppc_collect_vrregset): Remove.
8521         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8522         (ppc_linux_vrregset) : New function.
8523         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8524         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8525         (ppc32_linux_vrregset): Remove.
8526         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8527         and use result instead of ppc32_linux_vrregset.
8528         (ppc32_linux_reg_offsets): Remove initializers for vector register
8529         offset fields.
8530         (ppc64_linux_reg_offsets): Likewise.
8531         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8532         * ppc-linux-nat.c: Include regset.h.
8533         (gdb_vrregset_t): Adjust comment to account for little-endian
8534         mode.
8535         (supply_vrregset, fill_vrregset): Remove.
8536         (fetch_altivec_register, store_altivec_register): Remove.
8537         (fetch_altivec_registers): Add regno parameter. Get regset using
8538         ppc_linux_vrregset. Use regset to supply registers.
8539         (store_altivec_registers): Add regno parameter. Get regset using
8540         ppc_linux_vrregset. Use regset to collect registers.
8541         (fetch_register): Call fetch_altivec_registers instead of
8542         fetch_altivec_register.
8543         (store_register): Call store_altivec_registers instead of
8544         store_altivec_register.
8545         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8546         the new regno parameter.
8547         (store_ppc_registers): Call store_altivec_registers with -1 for
8548         the new regno parameter.
8549
8550 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8551
8552         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8553         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8554         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8555         (gdb_vrregset_t): Change array type size to
8556         PPC_LINUX_SIZEOF_VRREGSET.
8557         (gdb_vsxregset_t): Change array type size to
8558         PPC_LINUX_SIZEOF_VSXREGSET.
8559         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8560         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8561         PPC_LINUX_SIZEOF_VSXREGSET.
8562
8563 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8564
8565         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8566         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8567         nat/ppc-linux.c.
8568         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8569         ppc_linux_target_wordsize with tid.
8570         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8571         wordsize with tid.
8572         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8573         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8574         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8575         tid parameter. Remove static specifier.
8576         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8577         (ppc_linux_target_wordsize): New declaration.
8578
8579 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8580
8581         * arch/ppc-linux-common.c: New file.
8582         * arch/ppc-linux-common.h: New file.
8583         * arch/ppc-linux-tdesc.h: New file.
8584         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8585         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8586         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8587         arch/ppc-linux-tdesc.h.
8588         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8589         arch/ppc-linux-tdesc.h.
8590         (ppc_linux_nat_target::read_description): Remove target
8591         description matching code. Fill a ppc_linux_features struct and
8592         call ppc_linux_match_description with it. Move comment about ISA
8593         2.05 to ppc-linux-common.c.
8594         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8595         arch/ppc-linux-tdesc.h.
8596         (ppc_linux_core_read_description): Remove target description
8597         matching code. Fill a ppc_linux_features struct and call
8598         ppc_linux_match_description with it.
8599         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8600         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8601         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8602         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8603         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8604         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8605         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8606         (tdesc_powerpc_e500l): Remove.
8607
8608 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8609
8610         * ada-lang.c (catch_assert_command): Pass empty string instead
8611         of NULL for excep_string argument.
8612
8613 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8614
8615         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8616         the width of the requested register exceeds the width of the
8617         `ptrace' data type.
8618
8619 2018-05-21  Tom Tromey  <tom@tromey.com>
8620
8621         * printcmd.c (output_command): Remove.
8622         (output_command_const): Rename to output_command.
8623         * valprint.h (output_command): Rename from output_command_const.
8624         * tracepoint.c (trace_dump_actions): Call output_command.
8625
8626 2018-05-21  Tom Tromey  <tom@tromey.com>
8627
8628         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8629         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8630         * ada-lang.h (create_ada_exception_catchpoint): Update.
8631         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8632         std::string.
8633         (create_excep_cond_exprs, ~ada_catchpoint)
8634         (should_stop_exception, print_one_exception)
8635         (print_mention_exception, print_recreate_exception): Update.
8636         (ada_get_next_arg): Remove.
8637         (catch_ada_exception_command_split): Use std::string.  Change type
8638         of "excep_string", "cond_string".
8639         (catch_ada_exception_command): Update.
8640         (create_ada_exception_catchpoint): Change type of excep_string.
8641         (ada_exception_sal): Remove excep_string parameter.
8642         (~ada_catchpoint): Remove.
8643
8644 2018-05-21  Tom Tromey  <tom@tromey.com>
8645
8646         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8647         cleanup.
8648
8649 2018-05-21  Tom Tromey  <tom@tromey.com>
8650
8651         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8652         Return unique_xmalloc_ptr.
8653         (print_it_exception): Update.
8654
8655 2018-05-21  Tom Tromey  <tom@tromey.com>
8656
8657         * tracepoint.c (trace_dump_actions): Use std::string.
8658
8659 2018-05-21  Tom Tromey  <tom@tromey.com>
8660
8661         * symfile.c (reread_symbols): Use std::string for original_name.
8662
8663 2018-05-21  Tom Tromey  <tom@tromey.com>
8664
8665         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8666         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8667         constructor.
8668
8669 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8670
8671         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8672         instance to...
8673         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8674         * objfiles.c (get_objfile_bfd_data): Allocate
8675         objfile_per_bfd_storage with obstack_new when allocating on
8676         obstack.
8677
8678 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8679
8680         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8681         OBSTACK_ZALLOC.
8682         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8683         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8684         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8685         (add_pending): Likewise.
8686         (parse_symbol): Likewise.
8687         (parse_partial_symbols): Likewise.
8688         (psymtab_to_symtab_1): Likewise.
8689         (new_psymtab): Likewise.
8690         (elfmdebug_build_psymtabs): Likewise.
8691         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8692         * objfiles.c (get_objfile_bfd_data): Likewise.
8693         (objfile_register_static_link): Likewise.
8694         * psymtab.c (allocate_psymtab): Likewise.
8695         * stabsread.c (read_member_functions): Likewise.
8696         * xcoffread.c (xcoff_end_psymtab): Likewise.
8697
8698 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8699
8700         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8701         compiler supports std::is_trivially_constructible.
8702         * common/poison.h: Include obstack.h.
8703         (IsMallocable): Define to is_trivially_constructible if the
8704         compiler supports it, define to true_type otherwise.
8705         (xobnew): New.
8706         (XOBNEW): Redefine.
8707         (xobnewvec): New.
8708         (XOBNEWVEC): Redefine.
8709         * gdb_obstack.h (obstack_zalloc): New.
8710         (OBSTACK_ZALLOC): Redefine.
8711         (obstack_calloc): New.
8712         (OBSTACK_CALLOC): Redefine.
8713         (obstack_new): New.
8714         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8715         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8716         gdbarch.c.
8717         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8718         obstack_calloc/obstack_zalloc.
8719         (gdbarch_obstack_zalloc): Remove.
8720         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8721
8722 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8723
8724         * stack.c (backtrace_command_1): Remove useless variable int i.
8725
8726 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8727
8728         * stack.c (print_frame_info): Fix comment.
8729
8730 2018-05-18  Tom Tromey  <tom@tromey.com>
8731
8732         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8733         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8734         (~dwarf2_per_objfile): Update
8735         (dwarf2_get_dwz_file): Use new.
8736         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8737         unique_ptr.
8738
8739 2018-05-18  Tom Tromey  <tom@tromey.com>
8740
8741         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8742         unique_ptr.
8743         * dwarf2read.c (struct dwp_file): Add constructor and
8744         initializers.
8745         (open_and_init_dwp_file): Return a unique_ptr.
8746         (dwarf2_per_objfile, create_dwp_hash_table)
8747         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8748         (lookup_dwo_unit_in_dwp): Update.
8749         (open_and_init_dwp_file, get_dwp_file): Update.
8750
8751 2018-05-18  Tom Tromey  <tom@tromey.com>
8752
8753         * dwarf2read.c (dwarf2_per_objfile): Update.
8754         (struct mapped_index): Add initializers.
8755         (dwarf2_read_index): Use new.
8756         (dw2_symtab_iter_init): Update.
8757         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8758         unique_ptr.
8759
8760 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8761
8762         * dwarf2read.c (mapped_index) <total_size>: Remove.
8763
8764 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8765
8766         * unittests/format_pieces-selftests.c (test_format_specifier):
8767         Add ARI comments.
8768
8769 2018-05-18  Tom Tromey  <tom@tromey.com>
8770
8771         * c-typeprint.c (maybe_print_hole): New function.
8772         (c_print_type_struct_field_offset): Update.
8773         (c_type_print_base_struct_union): Call maybe_print_hole.
8774
8775 2018-05-17  Keith Seitz  <keiths@redhat.com>
8776
8777         * breakpoint.c (build_bpstat_chain): New function, moved from
8778         bpstat_stop_status.
8779         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8780         If no stop chain is passed, call build_bpstat_chain to build it.
8781         * breakpoint.h (build_bpstat_chain): Declare.
8782         (bpstat_stop_status): Move documentation here from breakpoint.c.
8783         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8784         build the stop chain and pass it to skip_inline_frames.
8785         Pass this stop chain to bpstat_stop_status.
8786         * inline-frame.c: Include breakpoint.h.
8787         (stopped_by_user_bp_inline_frame): New function.
8788         (skip_inline_frames): Add parameter `stop_chain'.
8789         Move documention to inline-frame.h.
8790         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8791         whether the frame should be elided.
8792         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8793         Add moved documentation and update for new parameter.
8794
8795 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8796
8797         PR cli/14975
8798         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8799         unittests/format_pieces-selftests.c.
8800         * common/format.h (format_piece) <operator==>: New.
8801         (format_pieces) <operator[]>: Remove.
8802         * common/format.c (format_pieces::format_pieces): Handle \e.
8803         * unittests/format_pieces-selftests.c: New.
8804
8805 2018-05-17  Tom Tromey  <tom@tromey.com>
8806
8807         PR symtab/23010:
8808         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8809         (dw2_instantiate_symtab): Add skip_partial parameter.
8810         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8811         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8812         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8813         (dw2_expand_symtabs_matching_one)
8814         (dw2_find_pc_sect_compunit_symtab)
8815         (dw2_debug_names_lookup_symbol)
8816         (dw2_debug_names_expand_symtabs_for_function): Update.
8817         (init_cutu_and_read_dies): Add skip_partial parameter.
8818         (process_psymtab_comp_unit, build_type_psymtabs_1)
8819         (process_skeletonless_type_unit, load_partial_comp_unit)
8820         (psymtab_to_symtab_1): Update.
8821         (load_full_comp_unit): Add skip_partial parameter.
8822         (process_imported_unit_die, dwarf2_read_addr_index)
8823         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8824         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8825         (read_signatured_type): Update.
8826
8827 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8828
8829         * value.c (release_value): Remove unused variable.
8830         (record_latest_value): Likewise.
8831         (access_value_history): Likewise.
8832         (preserve_values): Likewise.
8833
8834 2018-05-17  Tom Tromey  <tom@tromey.com>
8835
8836         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8837         Initialize.
8838
8839 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8840
8841         PR gdb/22286
8842         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8843         Also handle registers whose width is not a multiple of
8844         PTRACE_TYPE_RET.
8845         (linux_nat_trad_target::store_register): Likewise.
8846
8847 2018-05-16  Tom Tromey  <tom@tromey.com>
8848
8849         * gdbcore.h (core_bfd): Redefine.
8850         * corelow.c (core_target::close): Update.
8851         (core_target_open): Update.
8852         * progspace.h (struct program_space) <cbfd>: Now a
8853         gdb_bfd_ref_ptr.
8854
8855 2018-05-16  Tom Tromey  <tom@tromey.com>
8856
8857         PR cli/19551:
8858         * symfile-add-flags.h (enum symfile_add_flags)
8859         <SYMFILE_NOT_FILENAME>: New constant.
8860         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8861         objfile name from BFD.
8862         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8863         * minidebug.c (find_separate_debug_file_in_section): Put
8864         ".gnu_debugdata" into BFD's file name.
8865
8866 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8867
8868         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8869         Remove.
8870
8871 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8872
8873         PR binutils/21446
8874         * aarch64-tdep.c (aarch64_analyze_prologue,
8875         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8876         Indicate not interested in errors.
8877
8878 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8879
8880         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8881         Supply the MIPS_ZERO_REGNUM register.
8882
8883 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8884
8885         * mips-tdep.c (mask_address_var): Make variable static.
8886
8887 2018-05-14  Tom Tromey  <tom@tromey.com>
8888
8889         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8890
8891 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8892
8893         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8894         FXSAVE_ADDR for the mxcsr register.
8895
8896 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8897
8898         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8899
8900 2018-05-11  Pedro Alves  <palves@redhat.com>
8901
8902         * corelow.c (core_target) <core_target>: No longer inline.
8903         Initialize m_core_gdbarch, m_core_vec and build the section table
8904         here.
8905         <~core_target>: New.
8906         <core_gdbarch, get_core_register_section>: New methods.
8907         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8908         factored out from ...
8909         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8910         (core_ops): Delete.
8911         (sniff_core_bfd): Add gdbarch parameter.
8912         (core_close): Delete, merged into ...
8913         (core_target::close): ... here.  Delete self.
8914         (core_close_cleanup): Delete.
8915         (core_target_open): Allocate a core_target on the heap.  Use a
8916         unique_ptr instead of a cleanup.  Bits moved into the core_target
8917         ctor.  Adjust to use core_target methods instead of globals.
8918         (get_core_register_section): Rename to ...
8919         (core_target::get_core_register_section): ... this and adjust.
8920         (struct get_core_registers_cb_data): New.
8921         (get_core_registers_cb): Use it.  Use bool.
8922         (core_target::fetch_registers, core_target::files_info)
8923         (core_target::xfer_partial, core_target::read_description)
8924         (core_target::pid_to, core_target::thread_name): Adjust to
8925         reference class fields instead of globals.
8926         * target.h (struct target_ops_deleter, target_ops_up): New.
8927
8928 2018-05-11  Pedro Alves  <palves@redhat.com>
8929
8930         * corefile.c (core_file_command): Move to corelow.c.
8931         * corelow.c (the_core_target): Delete.
8932         (core_file_command): Moved from corefile.c.  Check exec_bfd
8933         instead of the_core_target.  Use target_detach instead of calling
8934         into the_core_target directly.
8935         (maybe_say_no_core_file_now): New.
8936         (core_target::detach): Use it.
8937         (_initialize_corelow): Remove references to the_core_target.
8938         * gdbcore.h (the_core_target): Delete.
8939
8940 2018-05-11  Tom Tromey  <tromey@redhat.com>
8941             Pedro Alves  <palves@redhat.com>
8942
8943         * corefile.c (core_bfd): Remove.
8944         * gdbcore.h (core_bfd): Now a macro.
8945         * progspace.h (struct program_space) <cbfd>: New field.
8946
8947 2018-05-11  Tom Tromey  <tom@tromey.com>
8948
8949         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8950         gdb::def_vector.
8951
8952 2018-05-10  Tom Tromey  <tom@tromey.com>
8953
8954         * configure: Rebuild.
8955         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8956
8957 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8958
8959         PR server/23158:
8960         * regformats/regdat.sh: Adjust script, following the addition
8961         of the new expedite_regs parameter to init_target_desc.
8962
8963 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8964     
8965         PR gdb/23127
8966         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8967         set_gdbarch_significant_addr_bit.
8968         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8969         set_gdbarch_significant_addr_bit.
8970         * utils.c (address_significant): Update to sign extend addr.
8971
8972 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8973
8974         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8975         (xtensa_linux_init_abi): Limit tdep->num_regs by
8976         tdep->num_nopriv_regs.
8977         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8978         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8979         not initialized.
8980
8981 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8982
8983         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8984
8985 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8986
8987         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8988         (I387_MXCSR_INIT_VAL): New constant.
8989         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8990         buffer if it was supplied by the inferior.
8991         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8992         (i387_xsave_get_clear_bv): New function.
8993         (i387_supply_xsave): Only read x87 control registers from the
8994         xsave buffer if the feature is enabled, and the state will have
8995         been written, otherwise, provide a suitable default.
8996         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8997         including x87 control registers.  Update control registers if they
8998         have changed from the default value, and mark features as enabled
8999         as required.
9000         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9001
9002 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9003
9004         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9005
9006 2018-05-07  Tom Tromey  <tom@tromey.com>
9007
9008         * configure: Rebuild.
9009         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9010
9011 2018-05-07  Tom Tromey  <tom@tromey.com>
9012
9013         PR tdep/20362:
9014         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9015         bit.  Use correct value for VDIV.
9016
9017 2018-05-04  Tom Tromey  <tom@tromey.com>
9018
9019         * configure: Rebuild.
9020         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9021
9022 2018-05-04  Tom Tromey  <tom@tromey.com>
9023
9024         * linux-record.c (record_linux_system_call) <case
9025         RECORD_SYS_RECVFROM>: Add "break".
9026
9027 2018-05-04  Tom Tromey  <tom@tromey.com>
9028
9029         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9030         Add missing "break".
9031         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9032         Add missing "break".
9033
9034 2018-05-04  Tom Tromey  <tom@tromey.com>
9035
9036         * rs6000-tdep.c (ppc_process_record_op4)
9037         (ppc_process_record_op63): Add fall-through comment.
9038
9039 2018-05-04  Tom Tromey  <tom@tromey.com>
9040
9041         * i386-tdep.c (i386_process_record): Add fall-through comment.
9042
9043 2018-05-04  Tom Tromey  <tom@tromey.com>
9044
9045         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9046         comment.
9047
9048 2018-05-04  Tom Tromey  <tom@tromey.com>
9049
9050         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9051         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9052         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9053         comment.
9054         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9055         comment.
9056         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9057         comment.
9058
9059 2018-05-04  Tom Tromey  <tom@tromey.com>
9060
9061         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9062
9063 2018-05-04  Tom Tromey  <tom@tromey.com>
9064
9065         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9066         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9067         * symfile.c (section_is_mapped): Fix fall-through comment.
9068         * stabsread.c (define_symbol, read_member_functions): Fix
9069         fall-through comment.
9070         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9071         comment.
9072         * remote.c (remote_wait_as): Fix fall-through comment.
9073         * p-exp.y (yylex): Fix fall-through comment.
9074         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9075         comment.
9076         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9077         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9078         * jv-exp.y (yylex): Fix fall-through comment.
9079         * go-exp.y (lex_one_token): Fix fall-through comment.
9080         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9081         fall-through comment.
9082         * f-exp.y (yylex): Fix fall-through comment.
9083         * dwarf2read.c (process_die): Fix fall-through comments.
9084         * dbxread.c (process_one_symbol): Fix fall-through comment.
9085         * d-exp.y (lex_one_token): Fix fall-through comment.
9086         * cp-name-parser.y (yylex): Fix fall-through comment.
9087         * coffread.c (coff_symtab_read): Fix fall-through comment.
9088         * c-exp.y (lex_one_token): Fix fall-through comment.
9089         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9090         comment.
9091         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9092         comment.
9093
9094 2018-05-04  Tom Tromey  <tom@tromey.com>
9095
9096         PR python/22730:
9097         * NEWS: Mention gdb.execute change.
9098         * gdbcmd.h (execute_control_command): Don't declare.
9099         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9100         execute_control_commands, execute_control_commands_to_string.
9101         * cli/cli-script.h (execute_control_commands)
9102         (execute_control_commands_to_string): Declare.
9103         (execute_control_command): Add from_tty parameter.
9104         * cli/cli-script.c (execute_control_commands)
9105         (execute_control_commands_to_string): New functions.
9106         (execute_user_command): Use execute_control_commands.
9107         (execute_control_command_1): Add "from_tty" parameter.  Update.
9108         (execute_control_command): Likewise.
9109
9110 2018-05-04  Tom Tromey  <tom@tromey.com>
9111
9112         PR python/22731:
9113         * NEWS: Mention that breakpoint commands are writable.
9114         * python/py-breakpoint.c (bppy_set_commands): New function.
9115         (breakpoint_object_getset) <"commands">: Use it.
9116
9117 2018-05-04  Tom Tromey  <tom@tromey.com>
9118
9119         * tracepoint.c (actions_command): Update.
9120         * mi/mi-cmd-break.c (mi_command_line_array)
9121         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9122         (mi_read_next_line): Remove.
9123         (mi_cmd_break_commands): Update.
9124         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9125         function_view.
9126         * cli/cli-script.c (get_command_line): Update.
9127         (process_next_line): Use function_view.  Constify.
9128         (recurse_read_control_structure, read_command_lines)
9129         (read_command_lines_1): Change argument types to function_view.
9130         (do_define_command, document_command): Update.
9131         * breakpoint.h (check_tracepoint_command): Don't declare.
9132         * breakpoint.c (check_tracepoint_command): Remove.
9133         (commands_command_1, create_tracepoint_from_upload): Update.
9134
9135 2018-05-04  Tom Tromey  <tom@tromey.com>
9136
9137         PR gdb/11750:
9138         * cli/cli-script.h (enum command_control_type) <define_control>:
9139         New constant.
9140         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9141         (build_command_line, execute_control_command_1)
9142         (process_next_line): Likewise.
9143         (do_define_command): New function, extracted from define_command.
9144         (define_command): Use it.
9145
9146 2018-05-04  Tom Tromey  <tom@tromey.com>
9147
9148         * tracepoint.c (actions_command): Update.
9149         * cli/cli-script.h (read_command_lines): Update.
9150         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9151         (MAX_TMPBUF): Remove define.
9152         (define_command): Use string_printf.
9153         (document_command): Likewise.
9154         * breakpoint.c (commands_command_1): Update.
9155
9156 2018-05-04  Tom Tromey  <tom@tromey.com>
9157
9158         * top.c (execute_command): Update.
9159         * cli/cli-script.h (print_command_lines): Now varargs.
9160         * cli/cli-script.c (print_command_lines): Now varargs.
9161         (execute_control_command_1) <case while_control, case if_control>:
9162         Update.
9163
9164 2018-05-04  Tom Tromey  <tom@tromey.com>
9165
9166         * tracepoint.c (all_tracepoint_actions): Rename from
9167         all_tracepoint_actions_and_cleanup.  Change return type.
9168         (actions_command, encode_actions_1, encode_actions)
9169         (trace_dump_actions, tdump_command): Update.
9170         * remote.c (remote_download_command_source): Update.
9171         * python/python.c (gdbpy_eval_from_control_command)
9172         (python_command, python_interactive_command): Update.
9173         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9174         * guile/guile.c (guile_command)
9175         (gdbscm_eval_from_control_command, guile_command): Update.
9176         * compile/compile.c (compile_code_command)
9177         (compile_print_command, compile_to_object): Update.
9178         * cli/cli-script.h (struct command_lines_deleter): New.
9179         (counted_command_line): New typedef.
9180         (struct command_line): Add constructor, destructor.
9181         <body_list>: Remove.
9182         <body_list_0, body_list_1>: New members.
9183         (command_line_up): Remove typedef.
9184         (read_command_lines, read_command_lines_1, get_command_line):
9185         Update.
9186         (copy_command_lines): Don't declare.
9187         * cli/cli-script.c (build_command_line): Use "new".
9188         (get_command_line): Return counted_command_line.
9189         (print_command_lines, execute_user_command)
9190         (execute_control_command_1, while_command, if_command): Update.
9191         (realloc_body_list): Remove.
9192         (process_next_line, recurse_read_control_structure): Update.
9193         (read_command_lines, read_command_lines_1): Return counted_command_line.
9194         (free_command_lines): Use "delete".
9195         (copy_command_lines): Remove.
9196         (define_command, document_command, show_user_1): Update.
9197         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9198         a counted_command_line.
9199         * breakpoint.h (counted_command_line): Remove typedef.
9200         (breakpoint_set_commands): Update.
9201         * breakpoint.c (check_no_tracepoint_commands)
9202         (validate_commands_for_breakpoint): Update.
9203         (breakpoint_set_commands): Change commands to be a
9204         counted_command_line.
9205         (commands_command_1, update_dprintf_command_list)
9206         (create_tracepoint_from_upload): Update.
9207
9208 2018-05-04  Tom Tromey  <tom@tromey.com>
9209
9210         * cli/cli-decode.h (cmd_list_element): New constructor.
9211         (~cmd_list_element): New destructor.
9212         (struct cmd_list_element): Add initializers.
9213         * cli/cli-decode.c (do_add_cmd): Use "new".
9214         (delete_cmd): Use "delete".
9215
9216 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9217             Pedro Alves <palves@redhat.com>
9218
9219         PR breakpoints/19806 and support for PR external/20207.
9220         * NEWS: Mention Aarch64 watchpoint improvements.
9221         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9222         watchpoints and PR external/20207 watchpoints.
9223         * nat/aarch64-linux-hw-point.c
9224         (kernel_supports_any_contiguous_range): New.
9225         (aarch64_watchpoint_offset): New.
9226         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9227         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9228         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9229         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9230         next_addr_orig_p.  Support PR external/20207 watchpoints.
9231         (aarch64_downgrade_regs): New.
9232         (aarch64_dr_state_insert_one_point): New parameters offset and
9233         addr_orig.
9234         (aarch64_dr_state_remove_one_point): Likewise.
9235         (aarch64_handle_breakpoint): Update caller.
9236         (aarch64_handle_aligned_watchpoint): Likewise.
9237         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9238         aligned_offset.
9239         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9240         aarch64_downgrade_regs.
9241         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9242         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9243         (DR_CONTROL_MASK): ... this.
9244         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9245         (unsigned int aarch64_watchpoint_offset): New prototype.
9246         (aarch64_linux_set_debug_regs): Remove const from state.
9247         * utils.c (align_up, align_down): Move to ...
9248         * common/common-utils.c (align_up, align_down): ... here.
9249         * utils.h (align_up, align_down): Move to ...
9250         * common/common-utils.h (align_up, align_down): ... here.
9251
9252 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9253
9254         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9255         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9256         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9257         Re-implement to match the ABI as summarized in GCC's
9258         gcc/config/sparc/sparc.c.  All callers updated.
9259         (sparc32_store_arguments): Remove assertion.
9260
9261 2018-05-04  Tom Tromey  <tom@tromey.com>
9262
9263         * printcmd.c: Don't include tui.h.
9264         (decode_format): Use skip_spaces.
9265
9266 2018-05-04  Tom Tromey  <tom@tromey.com>
9267
9268         PR gdb/22619:
9269         * printcmd.c (last_count): New global.
9270         (x_command): Use saved count when repeating.
9271
9272 2018-05-04  Tom Tromey  <tom@tromey.com>
9273
9274         * nto-procfs.c (do_closedir_cleanup): Remove.
9275         (procfs_pidlist): Use gdb_dir_up.
9276         * procfs.c (do_closedir_cleanup): Remove.
9277         (proc_update_threads): Use gdb_dir_up.
9278         * common/filestuff.h (struct gdb_dir_deleter): New.
9279         (gdb_dir_up): New typedef.
9280
9281 2018-05-04  Tom Tromey  <tom@tromey.com>
9282
9283         * ada-lang.c (print_mention_exception): Use std::string.
9284
9285 2018-05-04  Tom Tromey  <tom@tromey.com>
9286
9287         * ada-lang.c (create_excep_cond_exprs): Update.
9288         (ada_exception_catchpoint_cond_string): Use std::string.
9289
9290 2018-05-04  Tom Tromey  <tom@tromey.com>
9291
9292         * ada-lang.c (xget_renaming_scope): Return std::string.
9293         (old_renaming_is_invisible): Update.
9294
9295 2018-05-04  Tom Tromey  <tom@tromey.com>
9296
9297         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9298         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9299
9300 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9301
9302         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9303
9304 2018-05-04  Tom Tromey  <tom@tromey.com>
9305
9306         * remote.c (remote_query_supported_append): Change type.
9307         (remote_check_symbols): Update.
9308
9309 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9310
9311         PR gdb/11420
9312         * configure.ac: Prepend libpython.
9313         * python/python-config.py: Likewise.
9314         * configure: Regenerate.
9315
9316 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9317
9318         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9319
9320 2018-05-03  Pedro Alves  <palves@redhat.com>
9321
9322         * s390-linux-nat.c
9323         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9324         override.  Write 'true' instead of '1'.
9325         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9326         declaration.
9327
9328 2018-05-02  Pedro Alves  <palves@redhat.com>
9329
9330         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9331         add_inf_child_target.
9332         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9333         add_inf_child_target.
9334         * aix-thread.c (aix_thread_target_info): New.
9335         (aix_thread_target) <shortname, longname, doc>: Delete.
9336         <info>: New.
9337         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9338         add_inf_child_target.
9339         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9340         add_inf_child_target.
9341         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9342         add_inf_child_target.
9343         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9344         add_inf_child_target.
9345         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9346         add_inf_child_target.
9347         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9348         add_inf_child_target.
9349         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9350         add_inf_child_target.
9351         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9352         add_inf_child_target.
9353         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9354         add_inf_child_target.
9355         * bfd-target.c (target_bfd_target_info): New.
9356         (target_bfd) <shortname, longname, doc>: Delete.
9357         <info>: New.
9358         * bsd-kvm.c (bsd_kvm_target_info): New.
9359         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9360         <info>: New.
9361         (bsd_kvm_target::open): Rename to ...
9362         (bsd_kvm_target_open): ... this.  Adjust.
9363         * bsd-uthread.c (bsd_uthread_target_info): New.
9364         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9365         <info>: New.
9366         * corefile.c (core_file_command): Adjust.
9367         * corelow.c (core_target_info): New.
9368         (core_target) <shortname, longname, doc>: Delete.
9369         <info>: New.
9370         (core_target::open): Rename to ...
9371         (core_target_open): ... this.  Adjust.
9372         * ctf.c (ctf_target_info): New.
9373         (ctf_target) <shortname, longname, doc>: Delete.
9374         <info>: New.
9375         (ctf_target::open): Rename to ...
9376         (ctf_target_open): ... this.
9377         (_initialize_ctf): Adjust.
9378         * exec.c (exec_target_info): New.
9379         (exec_target) <shortname, longname, doc>: Delete.
9380         <info>: New.
9381         (exec_target::open): Rename to ...
9382         (exec_target_open): ... this.
9383         * gdbcore.h (core_target_open): Declare.
9384         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9385         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9386         add_inf_child_target.
9387         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9388         add_inf_child_target.
9389         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9390         add_inf_child_target.
9391         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9392         add_inf_child_target.
9393         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9394         add_inf_child_target.
9395         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9396         add_inf_child_target.
9397         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9398         add_inf_child_target.
9399         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9400         add_inf_child_target.
9401         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9402         add_inf_child_target.
9403         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9404         add_inf_child_target.
9405         * inf-child.c (inf_child_target_info): New.
9406         (inf_child_target::info): New.
9407         (inf_child_open_target): Remove 'target' parameter.  Use
9408         get_native_target instead.
9409         (inf_child_target::open): Delete.
9410         (add_inf_child_target): New.
9411         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9412         Delete.
9413         <info>: New.
9414         (add_inf_child_target): Declare.
9415         (inf_child_open_target): Declare.
9416         * linux-thread-db.c (thread_db_target_info): New.
9417         (thread_db_target) <shortname, longname, doc>: Delete.
9418         <info>: New.
9419         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9420         add_inf_child_target.
9421         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9422         add_inf_child_target.
9423         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9424         add_inf_child_target.
9425         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9426         add_inf_child_target.
9427         * make-target-delegates (print_class): Adjust.
9428         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9429         add_inf_child_target.
9430         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9431         add_inf_child_target.
9432         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9433         add_inf_child_target.
9434         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9435         add_inf_child_target.
9436         * nto-procfs.c (nto_native_target_info): New.
9437         (nto_procfs_target_native) <shortname, longname, doc>:
9438         Delete.
9439         <info>: New.
9440         (nto_procfs_target_info): New.
9441         (nto_procfs_target_procfs) <shortname, longname, doc>:
9442         Delete.
9443         <info>: New.
9444         (init_procfs_targets): Adjust.
9445         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9446         add_inf_child_target.
9447         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9448         add_inf_child_target.
9449         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9450         add_inf_child_target.
9451         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9452         add_inf_child_target.
9453         * ravenscar-thread.c (ravenscar_target_info): New.
9454         (ravenscar_thread_target) <shortname, longname, doc>:
9455         Delete.
9456         <info>: New.
9457         * record-btrace.c (record_btrace_target_info):
9458         (record_btrace_target) <shortname, longname, doc>: Delete.
9459         <info>: New.
9460         (record_btrace_target::open): Rename to ...
9461         (record_btrace_target_open): ... this.  Adjust.
9462         * record-full.c (record_longname, record_doc): New.
9463         (record_full_base_target) <shortname, longname, doc>: Delete.
9464         <info>: New.
9465         (record_full_target_info): New.
9466         (record_full_target): <shortname>: Delete.
9467         <info>: New.
9468         (record_full_core_open_1, record_full_open_1): Update comments.
9469         (record_full_base_target::open): Rename to ...
9470         (record_full_open): ... this.
9471         (cmd_record_full_restore): Update.
9472         (_initialize_record_full): Update.
9473         * remote-sim.c (remote_sim_target_info): New.
9474         (gdbsim_target) <shortname, longname, doc>: Delete.
9475         <info>: New.
9476         (gdbsim_target::open): Rename to ...
9477         (gdbsim_target_open): ... this.
9478         (_initialize_remote_sim): Adjust.
9479         * remote.c (remote_doc): New.
9480         (remote_target_info): New.
9481         (remote_target) <shortname, longname, doc>: Delete.
9482         <info>: New.
9483         (extended_remote_target_info): New.
9484         (extended_remote_target) <shortname, longname, doc>: Delete.
9485         <info>: New.
9486         (remote_target::open_1): Make static.  Adjust.
9487         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9488         * s390-linux-nat.c (_initialize_s390_nat): Use
9489         add_inf_child_target.
9490         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9491         add_inf_child_target.
9492         * sol-thread.c (thread_db_target_info): New.
9493         (sol_thread_target) <shortname, longname, doc>: Delete.
9494         <info>: New.
9495         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9496         add_inf_child_target.
9497         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9498         add_inf_child_target.
9499         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9500         add_inf_child_target.
9501         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9502         add_inf_child_target.
9503         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9504         add_inf_child_target.
9505         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9506         add_inf_child_target.
9507         * spu-linux-nat.c (_initialize_spu_nat): Use
9508         add_inf_child_target.
9509         * spu-multiarch.c (spu_multiarch_target_info): New.
9510         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9511         <info>: New.
9512         * target-delegates.c: Regenerate.
9513         * target.c: Include <unordered_map>.
9514         (target_ops_p): Delete.
9515         (DEF_VEC_P(target_ops_p)): Delete.
9516         (target_factories): New.
9517         (test_target_info): New.
9518         (test_target_ops::info): New.
9519         (open_target): Adjust to use target_factories.
9520         (add_target_with_completer): Rename to ...
9521         (add_target): ... this.  Change prototype.  Register target_info
9522         and open callback in target_factories.  Register target_info in
9523         command context instead of target_ops.
9524         (add_target): Delete old implementation.
9525         (add_deprecated_target_alias): Change prototype.  Adjust.
9526         (the_native_target): New.
9527         (set_native_target, get_native_target): New.
9528         (find_default_run_target): Use the_native_target.
9529         (find_attach_target, find_run_target): Simplify.
9530         (target_ops::open): Delete.
9531         (dummy_target_info): New.
9532         (dummy_target::shortname, dummy_target::longname)
9533         (dummy_target::doc): Delete.
9534         (dummy_target::info): New.
9535         (debug_target::shortname, debug_target::longname)
9536         (debug_target::doc): Delete.
9537         (debug_target::info): New.
9538         * target.h (struct target_info): New.
9539         (target_ops::~target_ops): Add comment.
9540         (target_ops::info): New.
9541         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9542         longer virtual.  Implement in terms of target_info.
9543         (set_native_target, get_native_target): Declare.
9544         (target_open_ftype): New.
9545         (add_target, add_target_with_completer)
9546         (add_deprecated_target_alias): Change prototype.
9547         (test_target) <shortname, longname, doc>: Delete.
9548         <info>: New.
9549         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9550         add_inf_child_target.
9551         * tracefile-tfile.c (tfile_target_info): New.
9552         (tfile_target) <shortname, longname, doc>: Delete.
9553         <info>: New.
9554         (tfile_target::open): Rename to ...
9555         (tfile_target_open): ... this.
9556         (_initialize_tracefile_tfile): Adjust.
9557         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9558         add_inf_child_target.
9559         * windows-nat.c (_initialize_windows_nat): Use
9560         add_inf_child_target.
9561         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9562         add_inf_child_target.
9563
9564 2018-05-02  Pedro Alves  <palves@redhat.com>
9565
9566         * linux-nat.h (linux_nat_target) <low_new_thread,
9567         low_delete_thread, low_new_fork, low_forget_process,
9568         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9569         New virtual methods.
9570         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9571         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9572         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9573         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9574         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9575         Delete.
9576         * linux-fork.c (delete_fork): Adjust to call low method.
9577         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9578         (linux_nat_new_fork, linux_nat_forget_process_hook)
9579         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9580         (linux_nat_status_is_event):
9581         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9582         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9583         to call low method.
9584         (sigtrap_is_event): Rename to ...
9585         (linux_nat_target::low_status_is_event): ... this.
9586         (linux_nat_set_status_is_event): Delete.
9587         (save_stop_reason, linux_nat_wait_1)
9588         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9589         low methods.
9590         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9591         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9592         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9593         (linux_nat_set_prepare_to_resume): Delete.
9594         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9595         low virtual methods.
9596         * amd64-linux-nat.c: Likewise.
9597         * arm-linux-nat.c: Likewise.
9598         * i386-linux-nat.c: Likewise.
9599         * ia64-linux-nat.c: Likewise.
9600         * mips-linux-nat.c: Likewise.
9601         * ppc-linux-nat.c: Likewise.
9602         * s390-linux-nat.c: Likewise.
9603         * sparc64-linux-nat.c: Likewise.
9604         * x86-linux-nat.c: Likewise.
9605         * x86-linux-nat.h: Include "nat/x86-linux.h".
9606         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9607         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9608         Override methods.
9609
9610 2018-05-02  Pedro Alves  <palves@redhat.com>
9611
9612         * target.h (target_ops)
9613         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9614         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9615         stopped_by_watchpoint, have_continuable_watchpoint,
9616         stopped_data_address, watchpoint_addr_within_range,
9617         can_accel_watchpoint_condition, can_run, thread_alive,
9618         has_all_memory, has_memory, has_stack, has_registers,
9619         has_execution, can_async_p, is_async_p, supports_non_stop,
9620         always_non_stop_p, can_execute_reverse, supports_multi_process,
9621         supports_enable_disable_tracepoint,
9622         supports_disable_randomization, supports_string_tracing,
9623         supports_evaluation_of_breakpoint_conditions,
9624         can_run_breakpoint_commands, filesystem_is_local,
9625         can_download_tracepoint, get_trace_state_variable_value,
9626         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9627         record_is_replaying, record_will_replay,
9628         augmented_libraries_svr4_read>: Adjust to return bool.
9629         * aarch64-linux-nat.c: All implementations adjusted.
9630         * aix-thread.c: All implementations adjusted.
9631         * arm-linux-nat.c: All implementations adjusted.
9632         * breakpoint.c: All implementations adjusted.
9633         * bsd-kvm.c: All implementations adjusted.
9634         * bsd-uthread.c: All implementations adjusted.
9635         * corelow.c: All implementations adjusted.
9636         * ctf.c: All implementations adjusted.
9637         * darwin-nat.c: All implementations adjusted.
9638         * darwin-nat.h: All implementations adjusted.
9639         * exec.c: All implementations adjusted.
9640         * fbsd-nat.c: All implementations adjusted.
9641         * fbsd-nat.h: All implementations adjusted.
9642         * gnu-nat.c: All implementations adjusted.
9643         * gnu-nat.h: All implementations adjusted.
9644         * go32-nat.c: All implementations adjusted.
9645         * ia64-linux-nat.c: All implementations adjusted.
9646         * inf-child.c: All implementations adjusted.
9647         * inf-child.h: All implementations adjusted.
9648         * inf-ptrace.c: All implementations adjusted.
9649         * inf-ptrace.h: All implementations adjusted.
9650         * linux-nat.c: All implementations adjusted.
9651         * linux-nat.h: All implementations adjusted.
9652         * mips-linux-nat.c: All implementations adjusted.
9653         * nto-procfs.c: All implementations adjusted.
9654         * ppc-linux-nat.c: All implementations adjusted.
9655         * procfs.c: All implementations adjusted.
9656         * ravenscar-thread.c: All implementations adjusted.
9657         * record-btrace.c: All implementations adjusted.
9658         * record-full.c: All implementations adjusted.
9659         * remote-sim.c: All implementations adjusted.
9660         * remote.c: All implementations adjusted.
9661         * s390-linux-nat.c: All implementations adjusted.
9662         * sol-thread.c: All implementations adjusted.
9663         * spu-multiarch.c: All implementations adjusted.
9664         * target-delegates.c: All implementations adjusted.
9665         * target.c: All implementations adjusted.
9666         * target.h: All implementations adjusted.
9667         * tracefile-tfile.c: All implementations adjusted.
9668         * tracefile.c: All implementations adjusted.
9669         * tracefile.h: All implementations adjusted.
9670         * windows-nat.c: All implementations adjusted.
9671         * x86-linux-nat.h: All implementations adjusted.
9672         * x86-nat.h: All implementations adjusted.
9673
9674 2018-05-02  Pedro Alves  <palves@redhat.com>
9675
9676         * make-target-delegates (scan_target_h): Don't trim lines here.
9677         Replace sequences of tabs and/or whitespace with a single
9678         whitespace.
9679         (top level, parsing methods): Trim each line before processing it
9680         here.
9681
9682 2018-05-02  Pedro Alves  <palves@redhat.com>
9683             John Baldwin  <jhb@freebsd.org>
9684
9685         * target.h (enum strata) <debug_stratum>: New.
9686         (struct target_ops) <all delegation methods>: Replace by C++
9687         virtual methods, and drop "to_" prefix.  All references updated
9688         throughout.
9689         <to_shortname, to_longname, to_doc, to_data,
9690         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9691         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9692         virtual methods.  All references updated throughout.
9693         <can_attach, supports_terminal_ours, can_create_inferior,
9694         get_thread_control_capabilities, attach_no_wait>: New
9695         virtual methods.
9696         <insert_breakpoint, remove_breakpoint>: Now
9697         TARGET_DEFAULT_NORETURN methods.
9698         <info_proc>: Now returns bool.
9699         <to_magic>: Delete.
9700         (OPS_MAGIC): Delete.
9701         (current_target): Delete.  All references replaced by references
9702         to ...
9703         (target_stack): ... this.  New.
9704         (target_shortname, target_longname): Adjust.
9705         (target_can_run): Now a function declaration.
9706         (default_child_has_all_memory, default_child_has_memory)
9707         (default_child_has_stack, default_child_has_registers)
9708         (default_child_has_execution): Remove target_ops parameter.
9709         (complete_target_initialization): Delete.
9710         (memory_breakpoint_target): New template class.
9711         (test_target_ops): Refactor as a C++ class with virtual methods.
9712         * make-target-delegates (NAME_PART): Tighten.
9713         (POINTER_PART, CP_SYMBOL): New.
9714         (SIMPLE_RETURN_PART): Reimplement.
9715         (VEC_RETURN_PART): Expect less.
9716         (RETURN_PART, VIRTUAL_PART): New.
9717         (METHOD): Adjust to C++ virtual methods.
9718         (scan_target_h): Remove reference to C99.
9719         (dname): Output "target_ops::" prefix.
9720         (write_function_header): Adjust to output a C++ class method.
9721         (write_declaration): New.
9722         (write_delegator): Adjust to output a C++ class method.
9723         (tdname): Output "dummy_target::" prefix.
9724         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9725         method.
9726         (tdefault_names, debug_names): Delete.
9727         (return_types, tdefaults, styles, argtypes_array): New.
9728         (top level): All methods are delegators.
9729         (print_class): New.
9730         (top level): Print dummy_target and debug_target classes.
9731         * target-delegates.c: Regenerate.
9732         * target-debug.h (target_debug_print_enum_info_proc_what)
9733         (target_debug_print_thread_control_capabilities)
9734         (target_debug_print_thread_info_p): New.
9735         * target.c (dummy_target): Delete.
9736         (the_dummy_target, the_debug_target): New.
9737         (target_stack): Now extern.
9738         (set_targetdebug): Push/unpush debug target.
9739         (default_child_has_all_memory, default_child_has_memory)
9740         (default_child_has_stack, default_child_has_registers)
9741         (default_child_has_execution): Remove target_ops parameter.
9742         (complete_target_initialization): Delete.
9743         (add_target_with_completer): No longer call
9744         complete_target_initialization.
9745         (target_supports_terminal_ours): Use regular delegation.
9746         (update_current_target): Delete.
9747         (push_target): No longer check magic number.  Don't call
9748         update_current_target.
9749         (unpush_target): Don't call update_current_target.
9750         (target_is_pushed): No longer check magic number.
9751         (target_require_runnable): Skip for all stratums over
9752         process_stratum.
9753         (target_ops::info_proc): New.
9754         (target_info_proc): Use find_target_at and
9755         find_default_run_target.
9756         (target_supports_disable_randomization): Use regular delegation.
9757         (target_get_osdata): Use find_target_at.
9758         (target_ops::open, target_ops::close, target_ops::can_attach)
9759         (target_ops::attach, target_ops::can_create_inferior)
9760         (target_ops::create_inferior, target_ops::can_run)
9761         (target_can_run): New.
9762         (default_fileio_target): Use regular delegation.
9763         (target_ops::fileio_open, target_ops::fileio_pwrite)
9764         (target_ops::fileio_pread, target_ops::fileio_fstat)
9765         (target_ops::fileio_close, target_ops::fileio_unlink)
9766         (target_ops::fileio_readlink): New.
9767         (target_fileio_open_1, target_fileio_unlink)
9768         (target_fileio_readlink): Always call the target method.  Handle
9769         FILEIO_ENOSYS.
9770         (return_zero, return_zero_has_execution): Delete.
9771         (init_dummy_target): Delete.
9772         (dummy_target::dummy_target, dummy_target::shortname)
9773         (dummy_target::longname, dummy_target::doc)
9774         (debug_target::debug_target, debug_target::shortname)
9775         (debug_target::longname, debug_target::doc): New.
9776         (target_supports_delete_record): Use regular delegation.
9777         (setup_target_debug): Delete.
9778         (maintenance_print_target_stack): Skip debug_stratum.
9779         (initialize_targets): Instantiate the_dummy_target and
9780         the_debug_target.
9781         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9782         use target_stack.
9783         (target_auxv_search, fprint_target_auxv): Adjust.
9784         (info_auxv_command): Adjust to use target_stack.
9785         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9786         * exceptions.c (print_flush): Handle a NULL target_stack.
9787         * regcache.c (target_ops_no_register): Refactor as class with
9788         virtual methods.
9789
9790         * exec.c (exec_target): New class.
9791         (exec_ops): Now an exec_target.
9792         (exec_open, exec_close_1, exec_get_section_table)
9793         (exec_xfer_partial, exec_files_info, exec_has_memory)
9794         (exec_make_note_section): Refactor as exec_target methods.
9795         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9796         Delete.
9797         (exec_target::find_memory_regions): New.
9798         (_initialize_exec): Don't call init_exec_ops.
9799         * gdbcore.h (exec_file_clear): Delete.
9800
9801         * corefile.c (core_target): Delete.
9802         (core_file_command): Adjust.
9803         * corelow.c (core_target): New class.
9804         (the_core_target): New.
9805         (core_close): Remove target_ops parameter.
9806         (core_close_cleanup): Adjust.
9807         (core_target::close): New.
9808         (core_open, core_detach, get_core_registers, core_files_info)
9809         (core_xfer_partial, core_thread_alive, core_read_description)
9810         (core_pid_to_str, core_thread_name, core_has_memory)
9811         (core_has_stack, core_has_registers, core_info_proc): Rework as
9812         core_target methods.
9813         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9814         (_initialize_corelow): Initialize the_core_target.
9815         * gdbcore.h (core_target): Delete.
9816         (the_core_target): New.
9817
9818         * ctf.c: (ctf_target): New class.
9819         (ctf_ops): Now a ctf_target.
9820         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9821         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9822         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9823         methods.
9824         (init_ctf_ops): Delete.
9825         (_initialize_ctf): Don't call it.
9826         * tracefile-tfile.c (tfile_target): New class.
9827         (tfile_ops): Now a tfile_target.
9828         (tfile_open, tfile_close, tfile_files_info)
9829         (tfile_get_tracepoint_status, tfile_trace_find)
9830         (tfile_fetch_registers, tfile_xfer_partial)
9831         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9832         Refactor as tfile_target methods.
9833         (tfile_xfer_partial_features): Remove target_ops parameter.
9834         (init_tfile_ops): Delete.
9835         (_initialize_tracefile_tfile): Don't call it.
9836         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9837         (tracefile_has_stack, tracefile_has_registers)
9838         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9839         tracefile_target methods.
9840         (init_tracefile_ops): Delete.
9841         (tracefile_target::tracefile_target): New.
9842         * tracefile.h: Include "target.h".
9843         (tracefile_target): New class.
9844         (init_tracefile_ops): Delete.
9845
9846         * spu-multiarch.c (spu_multiarch_target): New class.
9847         (spu_ops): Now a spu_multiarch_target.
9848         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9849         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9850         (spu_search_memory, spu_mourn_inferior): Refactor as
9851         spu_multiarch_target methods.
9852         (init_spu_ops): Delete.
9853         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9854         complete_target_initialization.
9855
9856         * ravenscar-thread.c (ravenscar_thread_target): New class.
9857         (ravenscar_ops): Now a ravenscar_thread_target.
9858         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9859         (ravenscar_thread_alive, ravenscar_pid_to_str)
9860         (ravenscar_fetch_registers, ravenscar_store_registers)
9861         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9862         (ravenscar_stopped_by_hw_breakpoint)
9863         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9864         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9865         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9866         methods.
9867         (init_ravenscar_thread_ops): Delete.
9868         (_initialize_ravenscar): Remove references to
9869         init_ravenscar_thread_ops and complete_target_initialization.
9870
9871         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9872         (bsd_uthread_target): New class.
9873         (bsd_uthread_ops): Now a bsd_uthread_target.
9874         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9875         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9876         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9877         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9878         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9879         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9880         (bsd_uthread_target): Delete function.
9881         (_initialize_bsd_uthread): Remove reference to
9882         complete_target_initialization.
9883
9884         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9885         (target_bfd): ... this new class.
9886         (target_bfd_xfer_partial, target_bfd_get_section_table)
9887         (target_bfd_close): Refactor as target_bfd methods.
9888         (target_bfd::~target_bfd): New.
9889         (target_bfd_reopen): Adjust.
9890         (target_bfd::close): New.
9891
9892         * record-btrace.c (record_btrace_target): New class.
9893         (record_btrace_ops): Now a record_btrace_target.
9894         (record_btrace_open, record_btrace_stop_recording)
9895         (record_btrace_disconnect, record_btrace_close)
9896         (record_btrace_async, record_btrace_info)
9897         (record_btrace_insn_history, record_btrace_insn_history_range)
9898         (record_btrace_insn_history_from, record_btrace_call_history)
9899         (record_btrace_call_history_range)
9900         (record_btrace_call_history_from, record_btrace_record_method)
9901         (record_btrace_is_replaying, record_btrace_will_replay)
9902         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9903         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9904         (record_btrace_store_registers, record_btrace_prepare_to_store)
9905         (record_btrace_to_get_unwinder)
9906         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9907         (record_btrace_commit_resume, record_btrace_wait)
9908         (record_btrace_stop, record_btrace_can_execute_reverse)
9909         (record_btrace_stopped_by_sw_breakpoint)
9910         (record_btrace_supports_stopped_by_sw_breakpoint)
9911         (record_btrace_stopped_by_hw_breakpoint)
9912         (record_btrace_supports_stopped_by_hw_breakpoint)
9913         (record_btrace_update_thread_list, record_btrace_thread_alive)
9914         (record_btrace_goto_begin, record_btrace_goto_end)
9915         (record_btrace_goto, record_btrace_stop_replaying_all)
9916         (record_btrace_execution_direction)
9917         (record_btrace_prepare_to_generate_core)
9918         (record_btrace_done_generating_core): Refactor as
9919         record_btrace_target methods.
9920         (init_record_btrace_ops): Delete.
9921         (_initialize_record_btrace): Remove reference to
9922         init_record_btrace_ops.
9923         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9924         the execution_direction global.
9925         (record_full_base_target, record_full_target)
9926         (record_full_core_target): New classes.
9927         (record_full_ops): Now a record_full_target.
9928         (record_full_core_ops): Now a record_full_core_target.
9929         (record_full_target::detach, record_full_target::disconnect)
9930         (record_full_core_target::disconnect)
9931         (record_full_target::mourn_inferior, record_full_target::kill):
9932         New.
9933         (record_full_open, record_full_close, record_full_async): Refactor
9934         as methods of the record_full_base_target class.
9935         (record_full_resume, record_full_commit_resume): Refactor
9936         as methods of the record_full_target class.
9937         (record_full_wait, record_full_stopped_by_watchpoint)
9938         (record_full_stopped_data_address)
9939         (record_full_stopped_by_sw_breakpoint)
9940         (record_full_supports_stopped_by_sw_breakpoint)
9941         (record_full_stopped_by_hw_breakpoint)
9942         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9943         methods of the record_full_base_target class.
9944         (record_full_store_registers, record_full_xfer_partial)
9945         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9946         Refactor as methods of the record_full_target class.
9947         (record_full_can_execute_reverse, record_full_get_bookmark)
9948         (record_full_goto_bookmark, record_full_execution_direction)
9949         (record_full_record_method, record_full_info, record_full_delete)
9950         (record_full_is_replaying, record_full_will_replay)
9951         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9952         (record_full_stop_replaying): Refactor as methods of the
9953         record_full_base_target class.
9954         (record_full_core_resume, record_full_core_kill)
9955         (record_full_core_fetch_registers)
9956         (record_full_core_prepare_to_store)
9957         (record_full_core_store_registers, record_full_core_xfer_partial)
9958         (record_full_core_insert_breakpoint)
9959         (record_full_core_remove_breakpoint)
9960         (record_full_core_has_execution): Refactor
9961         as methods of the record_full_core_target class.
9962         (record_full_base_target::supports_delete_record): New.
9963         (init_record_full_ops): Delete.
9964         (init_record_full_core_ops): Delete.
9965         (record_full_save): Refactor as method of the
9966         record_full_base_target class.
9967         (_initialize_record_full): Remove references to
9968         init_record_full_ops and init_record_full_core_ops.
9969
9970         * remote.c (remote_target, extended_remote_target): New classes.
9971         (remote_ops): Now a remote_target.
9972         (extended_remote_ops): Now an extended_remote_target.
9973         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9974         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9975         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9976         (remote_pass_signals, remote_set_syscall_catchpoint)
9977         (remote_program_signals, )
9978         (remote_thread_always_alive): Remove target_ops parameter.
9979         (remote_thread_alive, remote_thread_name)
9980         (remote_update_thread_list, remote_threads_extra_info)
9981         (remote_static_tracepoint_marker_at)
9982         (remote_static_tracepoint_markers_by_strid)
9983         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9984         (remote_open): Refactor as methods of remote_target.
9985         (extended_remote_open, extended_remote_detach)
9986         (extended_remote_attach, extended_remote_post_attach):
9987         (extended_remote_supports_disable_randomization)
9988         (extended_remote_create_inferior): : Refactor as method of
9989         extended_remote_target.
9990         (remote_set_permissions, remote_open_1, remote_detach)
9991         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9992         (remote_resume, remote_commit_resume, remote_stop)
9993         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9994         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9995         (remote_prepare_to_store, remote_store_registers)
9996         (remote_flash_erase, remote_flash_done, remote_files_info)
9997         (remote_kill, remote_mourn, remote_insert_breakpoint)
9998         (remote_remove_breakpoint, remote_insert_watchpoint)
9999         (remote_watchpoint_addr_within_range)
10000         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10001         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10002         (remote_supports_stopped_by_sw_breakpoint)
10003         (remote_stopped_by_hw_breakpoint)
10004         (remote_supports_stopped_by_hw_breakpoint)
10005         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10006         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10007         (remote_verify_memory): Refactor as methods of remote_target.
10008         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10009         parameter.
10010         (remote_xfer_partial, remote_get_memory_xfer_limit)
10011         (remote_search_memory, remote_rcmd, remote_memory_map)
10012         (remote_pid_to_str, remote_get_thread_local_address)
10013         (remote_get_tib_address, remote_read_description): Refactor as
10014         methods of remote_target.
10015         (remote_target::fileio_open, remote_target::fileio_pwrite)
10016         (remote_target::fileio_pread, remote_target::fileio_close): New.
10017         (remote_hostio_readlink, remote_hostio_fstat)
10018         (remote_filesystem_is_local, remote_can_execute_reverse)
10019         (remote_supports_non_stop, remote_supports_disable_randomization)
10020         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10021         (remote_supports_enable_disable_tracepoint)
10022         (remote_supports_string_tracing)
10023         (remote_can_run_breakpoint_commands, remote_trace_init)
10024         (remote_download_tracepoint, remote_can_download_tracepoint)
10025         (remote_download_trace_state_variable, remote_enable_tracepoint)
10026         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10027         (remote_trace_start, remote_get_trace_status)
10028         (remote_get_tracepoint_status, remote_trace_stop)
10029         (remote_trace_find, remote_get_trace_state_variable_value)
10030         (remote_save_trace_data, remote_get_raw_trace_data)
10031         (remote_set_disconnected_tracing, remote_core_of_thread)
10032         (remote_set_circular_trace_buffer, remote_traceframe_info)
10033         (remote_get_min_fast_tracepoint_insn_len)
10034         (remote_set_trace_buffer_size, remote_set_trace_notes)
10035         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10036         (remote_disable_btrace, remote_teardown_btrace)
10037         (remote_read_btrace, remote_btrace_conf)
10038         (remote_augmented_libraries_svr4_read, remote_load)
10039         (remote_pid_to_exec_file, remote_can_do_single_step)
10040         (remote_execution_direction, remote_thread_handle_to_thread_info):
10041         Refactor as methods of remote_target.
10042         (init_remote_ops, init_extended_remote_ops): Delete.
10043         (remote_can_async_p, remote_is_async_p, remote_async)
10044         (remote_thread_events, remote_upload_tracepoints)
10045         (remote_upload_trace_state_variables): Refactor as methods of
10046         remote_target.
10047         (_initialize_remote): Remove references to init_remote_ops and
10048         init_extended_remote_ops.
10049
10050         * remote-sim.c (gdbsim_target): New class.
10051         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10052         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10053         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10054         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10055         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10056         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10057         Refactor as methods of gdbsim_target.
10058         (gdbsim_ops): Now a gdbsim_target.
10059         (init_gdbsim_ops): Delete.
10060         (gdbsim_cntrl_c): Adjust.
10061         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10062
10063         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10064         (the_amd64_linux_nat_target): New.
10065         (amd64_linux_fetch_inferior_registers)
10066         (amd64_linux_store_inferior_registers): Refactor as methods of
10067         amd64_linux_nat_target.
10068         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10069         * i386-linux-nat.c: Don't include "linux-nat.h".
10070         (i386_linux_nat_target): New class.
10071         (the_i386_linux_nat_target): New.
10072         (i386_linux_fetch_inferior_registers)
10073         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10074         as methods of i386_linux_nat_target.
10075         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10076         * inf-child.c (inf_child_ops): Delete.
10077         (inf_child_fetch_inferior_registers)
10078         (inf_child_store_inferior_registers): Delete.
10079         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10080         methods of inf_child_target.
10081         (inf_child_target::supports_terminal_ours)
10082         (inf_child_target::terminal_init)
10083         (inf_child_target::terminal_inferior)
10084         (inf_child_target::terminal_ours_for_output)
10085         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10086         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10087         New.
10088         (inf_child_open, inf_child_disconnect, inf_child_close)
10089         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10090         (inf_child_post_startup_inferior, inf_child_can_run)
10091         (inf_child_pid_to_exec_file): Refactor as methods of
10092         inf_child_target.
10093         (inf_child_follow_fork): Delete.
10094         (inf_child_target::can_create_inferior)
10095         (inf_child_target::can_attach): New.
10096         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10097         (inf_child_target::has_stack, inf_child_target::has_registers)
10098         (inf_child_target::has_execution): New.
10099         (inf_child_fileio_open, inf_child_fileio_pwrite)
10100         (inf_child_fileio_pread, inf_child_fileio_fstat)
10101         (inf_child_fileio_close, inf_child_fileio_unlink)
10102         (inf_child_fileio_readlink, inf_child_use_agent)
10103         (inf_child_can_use_agent): Refactor as methods of
10104         inf_child_target.
10105         (return_zero, inf_child_target): Delete.
10106         (inf_child_target::inf_child_target): New.
10107         * inf-child.h: Include "target.h".
10108         (inf_child_target): Delete function prototype.
10109         (inf_child_target): New class.
10110         (inf_child_open_target, inf_child_mourn_inferior)
10111         (inf_child_maybe_unpush_target): Delete.
10112         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10113         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10114         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10115         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10116         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10117         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10118         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10119         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10120         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10121         methods of inf_ptrace_target.
10122         (inf_ptrace_target): Delete function.
10123         * inf-ptrace.h: Include "inf-child.h".
10124         (inf_ptrace_target): Delete function declaration.
10125         (inf_ptrace_target): New class.
10126         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10127         * linux-nat.c (linux_target): New.
10128         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10129         (linux_nat_target::~linux_nat_target): New.
10130         (linux_child_post_attach, linux_child_post_startup_inferior)
10131         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10132         (linux_child_remove_fork_catchpoint)
10133         (linux_child_insert_vfork_catchpoint)
10134         (linux_child_remove_vfork_catchpoint)
10135         (linux_child_insert_exec_catchpoint)
10136         (linux_child_remove_exec_catchpoint)
10137         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10138         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10139         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10140         (linux_nat_stopped_data_address)
10141         (linux_nat_stopped_by_sw_breakpoint)
10142         (linux_nat_supports_stopped_by_sw_breakpoint)
10143         (linux_nat_stopped_by_hw_breakpoint)
10144         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10145         (linux_nat_kill, linux_nat_mourn_inferior)
10146         (linux_nat_xfer_partial, linux_nat_thread_alive)
10147         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10148         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10149         (linux_child_static_tracepoint_markers_by_strid)
10150         (linux_nat_is_async_p, linux_nat_can_async_p)
10151         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10152         (linux_nat_supports_multi_process)
10153         (linux_nat_supports_disable_randomization, linux_nat_async)
10154         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10155         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10156         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10157         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10158         methods of linux_nat_target.
10159         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10160         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10161         parameter.
10162         (check_stopped_by_watchpoint): Adjust.
10163         (linux_xfer_partial): Delete.
10164         (linux_target_install_ops, linux_target, linux_nat_add_target):
10165         Delete.
10166         (linux_nat_target::linux_nat_target): New.
10167         * linux-nat.h: Include "inf-ptrace.h".
10168         (linux_nat_target): New.
10169         (linux_target, linux_target_install_ops, linux_nat_add_target):
10170         Delete function declarations.
10171         (linux_target): Declare global.
10172         * linux-thread-db.c (thread_db_target): New.
10173         (thread_db_target::thread_db_target): New.
10174         (thread_db_ops): Delete.
10175         (the_thread_db_target): New.
10176         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10177         (thread_db_update_thread_list, thread_db_pid_to_str)
10178         (thread_db_extra_thread_info)
10179         (thread_db_thread_handle_to_thread_info)
10180         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10181         (thread_db_resume): Refactor as methods of thread_db_target.
10182         (init_thread_db_ops): Delete.
10183         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10184         * x86-linux-nat.c: Don't include "linux-nat.h".
10185         (super_post_startup_inferior): Delete.
10186         (x86_linux_nat_target::~x86_linux_nat_target): New.
10187         (x86_linux_child_post_startup_inferior)
10188         (x86_linux_read_description, x86_linux_enable_btrace)
10189         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10190         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10191         methods of x86_linux_nat_target.
10192         (x86_linux_create_target): Delete.  Bits folded ...
10193         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10194         pointer.
10195         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10196         (x86_linux_nat_target): New class.
10197         (x86_linux_create_target): Delete.
10198         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10199         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10200         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10201         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10202         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10203         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10204         make extern.
10205         (x86_use_watchpoints): Delete.
10206         * x86-nat.h: Include "breakpoint.h" and "target.h".
10207         (x86_use_watchpoints): Delete.
10208         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10209         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10210         (x86_insert_watchpoint, x86_remove_watchpoint)
10211         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10212         (x86_stopped_by_hw_breakpoint): New declarations.
10213         (x86_nat_target): New template class.
10214
10215         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10216         (the_ppc_linux_nat_target): New.
10217         (ppc_linux_fetch_inferior_registers)
10218         (ppc_linux_can_use_hw_breakpoint)
10219         (ppc_linux_region_ok_for_hw_watchpoint)
10220         (ppc_linux_ranged_break_num_registers)
10221         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10222         (ppc_linux_insert_mask_watchpoint)
10223         (ppc_linux_remove_mask_watchpoint)
10224         (ppc_linux_can_accel_watchpoint_condition)
10225         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10226         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10227         (ppc_linux_watchpoint_addr_within_range)
10228         (ppc_linux_masked_watch_num_registers)
10229         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10230         (ppc_linux_read_description): Refactor as methods of
10231         ppc_linux_nat_target.
10232         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10233
10234         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10235         (procfs_target): New class.
10236         (the_procfs_target): New.
10237         (procfs_target): Delete function.
10238         (procfs_auxv_parse, procfs_attach, procfs_detach)
10239         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10240         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10241         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10242         (procfs_create_inferior, procfs_update_thread_list)
10243         (procfs_thread_alive, procfs_pid_to_str)
10244         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10245         (procfs_stopped_data_address, procfs_insert_watchpoint)
10246         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10247         (proc_find_memory_regions, procfs_info_proc)
10248         (procfs_make_note_section): Refactor as methods of procfs_target.
10249         (_initialize_procfs): Adjust.
10250         * sol-thread.c (sol_thread_target): New class.
10251         (sol_thread_ops): Now a sol_thread_target.
10252         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10253         (sol_thread_fetch_registers, sol_thread_store_registers)
10254         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10255         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10256         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10257         (init_sol_thread_ops): Delete.
10258         (_initialize_sol_thread): Adjust.  Remove references to
10259         init_sol_thread_ops and complete_target_initialization.
10260
10261         * windows-nat.c (windows_nat_target): New class.
10262         (windows_fetch_inferior_registers)
10263         (windows_store_inferior_registers, windows_resume, windows_wait)
10264         (windows_attach, windows_detach, windows_pid_to_exec_file)
10265         (windows_files_info, windows_create_inferior)
10266         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10267         (windows_close, windows_pid_to_str, windows_xfer_partial)
10268         (windows_get_tib_address, windows_get_ada_task_ptid)
10269         (windows_thread_name, windows_thread_alive): Refactor as
10270         windows_nat_target methods.
10271         (do_initial_windows_stuff): Adjust.
10272         (windows_target): Delete function.
10273         (_initialize_windows_nat): Adjust.
10274
10275         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10276         (darwin_mourn_inferior, darwin_kill_inferior)
10277         (darwin_create_inferior, darwin_attach, darwin_detach)
10278         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10279         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10280         (darwin_supports_multi_process): Refactor as darwin_nat_target
10281         methods.
10282         (darwin_resume_to, darwin_files_info): Delete.
10283         (_initialize_darwin_inferior): Rename to ...
10284         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10285         * darwin-nat.h: Include "inf-child.h".
10286         (darwin_nat_target): New class.
10287         (darwin_complete_target): Delete.
10288         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10289         (darwin_target): New.
10290         (i386_darwin_fetch_inferior_registers)
10291         (i386_darwin_store_inferior_registers): Refactor as methods of
10292         darwin_nat_target.
10293         (darwin_complete_target): Delete, with ...
10294         (_initialize_i386_darwin_nat): ... bits factored out here.
10295
10296         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10297         (the_alpha_linux_nat_target): New.
10298         (alpha_linux_register_u_offset): Refactor as
10299         alpha_linux_nat_target method.
10300         (_initialize_alpha_linux_nat): Adjust.
10301         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10302         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10303         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10304         methods of linux_nat_trad_target.
10305         (linux_trad_target): Delete.
10306         * linux-nat-trad.h (linux_trad_target): Delete function.
10307         (linux_nat_trad_target): New class.
10308         * mips-linux-nat.c (mips_linux_nat_target): New class.
10309         (super_fetch_registers, super_store_registers, super_close):
10310         Delete.
10311         (the_mips_linux_nat_target): New.
10312         (mips64_linux_regsets_fetch_registers)
10313         (mips64_linux_regsets_store_registers)
10314         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10315         (mips_linux_register_u_offset, mips_linux_read_description)
10316         (mips_linux_can_use_hw_breakpoint)
10317         (mips_linux_stopped_by_watchpoint)
10318         (mips_linux_stopped_data_address)
10319         (mips_linux_region_ok_for_hw_watchpoint)
10320         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10321         (mips_linux_close): Refactor as methods of mips_linux_nat.
10322         (_initialize_mips_linux_nat): Adjust to C++ification.
10323
10324         * aix-thread.c (aix_thread_target): New class.
10325         (aix_thread_ops): Now an aix_thread_target.
10326         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10327         (aix_thread_fetch_registers, aix_thread_store_registers)
10328         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10329         (aix_thread_thread_alive, aix_thread_pid_to_str)
10330         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10331         Refactor as methods of aix_thread_target.
10332         (init_aix_thread_ops): Delete.
10333         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10334         and complete_target_initialization.
10335         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10336         (rs6000_nat_target): New class.
10337         (the_rs6000_nat_target): New.
10338         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10339         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10340         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10341         (super_create_inferior): Delete.
10342         (_initialize_rs6000_nat): Adjust to C++ification.
10343
10344         * arm-linux-nat.c (arm_linux_nat_target): New class.
10345         (the_arm_linux_nat_target): New.
10346         (arm_linux_fetch_inferior_registers)
10347         (arm_linux_store_inferior_registers, arm_linux_read_description)
10348         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10349         (arm_linux_remove_hw_breakpoint)
10350         (arm_linux_region_ok_for_hw_watchpoint)
10351         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10352         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10353         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10354         arm_linux_nat_target.
10355         (_initialize_arm_linux_nat): Adjust to C++ification.
10356
10357         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10358         (the_aarch64_linux_nat_target): New.
10359         (aarch64_linux_fetch_inferior_registers)
10360         (aarch64_linux_store_inferior_registers)
10361         (aarch64_linux_child_post_startup_inferior)
10362         (aarch64_linux_read_description)
10363         (aarch64_linux_can_use_hw_breakpoint)
10364         (aarch64_linux_insert_hw_breakpoint)
10365         (aarch64_linux_remove_hw_breakpoint)
10366         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10367         (aarch64_linux_region_ok_for_hw_watchpoint)
10368         (aarch64_linux_stopped_data_address)
10369         (aarch64_linux_stopped_by_watchpoint)
10370         (aarch64_linux_watchpoint_addr_within_range)
10371         (aarch64_linux_can_do_single_step): Refactor as methods of
10372         aarch64_linux_nat_target.
10373         (super_post_startup_inferior): Delete.
10374         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10375
10376         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10377         (the_hppa_linux_nat_target): New.
10378         (hppa_linux_fetch_inferior_registers)
10379         (hppa_linux_store_inferior_registers): Refactor as methods of
10380         hppa_linux_nat_target.
10381         (_initialize_hppa_linux_nat): Adjust to C++ification.
10382
10383         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10384         (the_ia64_linux_nat_target): New.
10385         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10386         (ia64_linux_stopped_data_address)
10387         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10388         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10389         ia64_linux_nat_target methods.
10390         (super_xfer_partial): Delete.
10391         (_initialize_ia64_linux_nat): Adjust to C++ification.
10392
10393         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10394         (the_m32r_linux_nat_target): New.
10395         (m32r_linux_fetch_inferior_registers)
10396         (m32r_linux_store_inferior_registers): Refactor as
10397         m32r_linux_nat_target methods.
10398         (_initialize_m32r_linux_nat): Adjust to C++ification.
10399
10400         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10401         (the_m68k_linux_nat_target): New.
10402         (m68k_linux_fetch_inferior_registers)
10403         (m68k_linux_store_inferior_registers): Refactor as
10404         m68k_linux_nat_target methods.
10405         (_initialize_m68k_linux_nat): Adjust to C++ification.
10406
10407         * s390-linux-nat.c (s390_linux_nat_target): New class.
10408         (the_s390_linux_nat_target): New.
10409         (s390_linux_fetch_inferior_registers)
10410         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10411         (s390_insert_watchpoint, s390_remove_watchpoint)
10412         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10413         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10414         (s390_auxv_parse, s390_read_description): Refactor as methods of
10415         s390_linux_nat_target.
10416         (_initialize_s390_nat): Adjust to C++ification.
10417
10418         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10419         (the_sparc_linux_nat_target): New.
10420         (_initialize_sparc_linux_nat): Adjust to C++ification.
10421         * sparc-nat.c (sparc_fetch_inferior_registers)
10422         (sparc_store_inferior_registers): Remove target_ops parameter.
10423         * sparc-nat.h (sparc_fetch_inferior_registers)
10424         (sparc_store_inferior_registers): Remove target_ops parameter.
10425         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10426         (the_sparc64_linux_nat_target): New.
10427         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10428
10429         * spu-linux-nat.c (spu_linux_nat_target): New class.
10430         (the_spu_linux_nat_target): New.
10431         (spu_child_post_startup_inferior, spu_child_post_attach)
10432         (spu_child_wait, spu_fetch_inferior_registers)
10433         (spu_store_inferior_registers, spu_xfer_partial)
10434         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10435         methods.
10436         (_initialize_spu_nat): Adjust to C++ification.
10437
10438         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10439         (the_tilegx_linux_nat_target): New.
10440         (fetch_inferior_registers, store_inferior_registers):
10441         Refactor as methods.
10442         (_initialize_tile_linux_nat): Adjust to C++ification.
10443
10444         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10445         (the_xtensa_linux_nat_target): New.
10446         (xtensa_linux_fetch_inferior_registers)
10447         (xtensa_linux_store_inferior_registers): Refactor as
10448         xtensa_linux_nat_target methods.
10449         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10450
10451         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10452         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10453         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10454         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10455         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10456         (fbsd_stopped_by_sw_breakpoint)
10457         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10458         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10459         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10460         (fbsd_post_startup_inferior, fbsd_post_attach)
10461         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10462         (fbsd_set_syscall_catchpoint)
10463         (super_xfer_partial, super_resume, super_wait)
10464         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10465         (fbsd_handle_debug_trap): Remove target_ops parameter.
10466         (fbsd_nat_add_target): Delete.
10467         * fbsd-nat.h: Include "inf-ptrace.h".
10468         (fbsd_nat_add_target): Delete.
10469         (USE_SIGTRAP_SIGINFO): Define.
10470         (fbsd_nat_target): New class.
10471
10472         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10473         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10474         (amd64bsd_target): Delete.
10475         * amd64-bsd-nat.h: New file.
10476         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10477         "x86-bsd-nat.h".
10478         (amd64_fbsd_nat_target): New class.
10479         (the_amd64_fbsd_nat_target): New.
10480         (amd64fbsd_read_description): Refactor as method of
10481         amd64_fbsd_nat_target.
10482         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10483         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10484         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10485         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10486         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10487         (i386bsd_target): Delete.
10488         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10489         (i386bsd_fetch_inferior_registers)
10490         (i386bsd_store_inferior_registers): Declare.
10491         (i386_bsd_nat_target): New class.
10492         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10493         (the_i386_fbsd_nat_target): New.
10494         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10495         i386_fbsd_nat_target methods.
10496         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10497         (_initialize_i386fbsd_nat): Adjust to C++ification.
10498         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10499         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10500         (_initialize_x86_bsd_nat): Adjust to C++ification.
10501         * x86-bsd-nat.h: Include "x86-nat.h".
10502         (x86bsd_target): Delete declaration.
10503         (x86bsd_nat_target): New class.
10504
10505         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10506         (the_aarch64_fbsd_nat_target): New.
10507         (aarch64_fbsd_fetch_inferior_registers)
10508         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10509         aarch64_fbsd_nat_target.
10510         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10511         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10512         (the_alpha_bsd_nat_target): New.
10513         (alphabsd_fetch_inferior_registers)
10514         (alphabsd_store_inferior_registers): Refactor as
10515         alpha_bsd_nat_target methods.
10516         (_initialize_alphabsd_nat): Refactor as methods of
10517         alpha_bsd_nat_target.
10518         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10519         (the_amd64_nbsd_nat_target): New.
10520         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10521         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10522         (the_amd64_obsd_nat_target): New.
10523         (_initialize_amd64obsd_nat): Adjust to C++ification.
10524         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10525         (the_arm_fbsd_nat_target): New.
10526         (arm_fbsd_fetch_inferior_registers)
10527         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10528         (_initialize_arm_fbsd_nat): Refactor as methods of
10529         arm_fbsd_nat_target.
10530         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10531         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10532         (the_arm_netbsd_nat_target): New.
10533         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10534         arm_netbsd_nat_target.
10535         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10536         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10537         (the_hppa_nbsd_nat_target): New.
10538         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10539         hppa_nbsd_nat_target methods.
10540         (_initialize_hppanbsd_nat): Adjust to C++ification.
10541         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10542         (the_hppa_obsd_nat_target): New.
10543         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10544         methods of hppa_obsd_nat_target.
10545         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10546         add_target.
10547         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10548         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10549         add_target.
10550         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10551         (_initialize_i386obsd_nat): Use add_target.
10552         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10553         (the_m68k_bsd_nat_target): New.
10554         (m68kbsd_fetch_inferior_registers)
10555         (m68kbsd_store_inferior_registers): Refactor as methods of
10556         m68k_bsd_nat_target.
10557         (_initialize_m68kbsd_nat): Adjust to C++ification.
10558         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10559         (the_mips_fbsd_nat_target): New.
10560         (mips_fbsd_fetch_inferior_registers)
10561         (mips_fbsd_store_inferior_registers): Refactor as methods of
10562         mips_fbsd_nat_target.
10563         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10564         add_target.
10565         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10566         (the_mips_nbsd_nat_target): New.
10567         (mipsnbsd_fetch_inferior_registers)
10568         (mipsnbsd_store_inferior_registers): Refactor as methods of
10569         mips_nbsd_nat_target.
10570         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10571         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10572         (the_mips64_obsd_nat_target): New.
10573         (mips64obsd_fetch_inferior_registers)
10574         (mips64obsd_store_inferior_registers): Refactor as methods of
10575         mips64_obsd_nat_target.
10576         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10577         add_target.
10578         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10579         nbsd_nat_target.
10580         * nbsd-nat.h: Include "inf-ptrace.h".
10581         (nbsd_nat_target): New class.
10582         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10583         (obsd_wait): Refactor as methods of obsd_nat_target.
10584         (obsd_add_target): Delete.
10585         * obsd-nat.h: Include "inf-ptrace.h".
10586         (obsd_nat_target): New class.
10587         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10588         (the_ppc_fbsd_nat_target): New.
10589         (ppcfbsd_fetch_inferior_registers)
10590         (ppcfbsd_store_inferior_registers): Refactor as methods of
10591         ppc_fbsd_nat_target.
10592         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10593         add_target.
10594         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10595         (the_ppc_nbsd_nat_target): New.
10596         (ppcnbsd_fetch_inferior_registers)
10597         (ppcnbsd_store_inferior_registers): Refactor as methods of
10598         ppc_nbsd_nat_target.
10599         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10600         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10601         (the_ppc_obsd_nat_target): New.
10602         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10603         methods of ppc_obsd_nat_target.
10604         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10605         add_target.
10606         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10607         (the_sh_nbsd_nat_target): New.
10608         (shnbsd_fetch_inferior_registers)
10609         (shnbsd_store_inferior_registers): Refactor as methods of
10610         sh_nbsd_nat_target.
10611         (_initialize_shnbsd_nat): Adjust to C++ification.
10612         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10613         (inf_ptrace_xfer_partial): Delete.
10614         (sparc_xfer_partial, sparc_target): Delete.
10615         * sparc-nat.h (sparc_fetch_inferior_registers)
10616         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10617         (sparc_target): Delete function declaration.
10618         (sparc_target): New template class.
10619         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10620         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10621         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10622         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10623         add_target.
10624         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10625         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10626         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10627         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10628         add_target.
10629         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10630         (the_vax_bsd_nat_target): New.
10631         (vaxbsd_fetch_inferior_registers)
10632         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10633         methods.
10634         (_initialize_vaxbsd_nat): Adjust to C++ification.
10635
10636         * bsd-kvm.c (bsd_kvm_target): New class.
10637         (bsd_kvm_ops): Now a bsd_kvm_target.
10638         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10639         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10640         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10641         bsd_kvm_target.
10642         (bsd_kvm_return_one): Delete.
10643         (bsd_kvm_add_target): Adjust to C++ification.
10644
10645         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10646         (nto_procfs_target_procfs): New classes.
10647         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10648         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10649         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10650         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10651         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10652         (procfs_remove_hw_breakpoint, procfs_resume)
10653         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10654         (procfs_kill_inferior, procfs_store_registers)
10655         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10656         as methods of nto_procfs_target.
10657         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10658         (nto_native_ops): Delete.
10659         (procfs_open, procfs_native_open): Delete.
10660         (nto_native_ops): Now an nto_procfs_target_native.
10661         (init_procfs_targets): Adjust to C++ification.
10662         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10663         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10664         Refactor as methods of nto_procfs_target.
10665
10666         * go32-nat.c (go32_nat_target): New class.
10667         (the_go32_nat_target): New.
10668         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10669         (go32_store_registers, go32_xfer_partial, go32_files_info)
10670         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10671         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10672         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10673         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10674         (go32_target): Delete.
10675         (_initialize_go32_nat): Adjust to C++ification.
10676
10677         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10678         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10679         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10680         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10681         gnu_nat_target.
10682         (gnu_target): Delete.
10683         * gnu-nat.h (gnu_target): Delete.
10684         (gnu_nat_target): New class.
10685         * i386-gnu-nat.c (gnu_base_target): New.
10686         (i386_gnu_nat_target): New class.
10687         (the_i386_gnu_nat_target): New.
10688         (_initialize_i386gnu_nat): Adjust to C++ification.
10689
10690 2018-05-02  Pedro Alves  <palves@redhat.com>
10691
10692         * bfd-target.c (target_bfd_xclose): Rename to ...
10693         (target_bfd_close): ... this.
10694         (target_bfd_reopen): Adjust.
10695         * target.c (target_close): Remove references to to_xclose.
10696         * target.h (target_ops::to_xclose): Delete.
10697         (target_ops::to_close): Update comments.
10698
10699 2018-05-02  Pedro Alves  <palves@redhat.com>
10700
10701         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10702         "linux-nat.h".
10703         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10704         * inf-ptrace.c (inf_ptrace_register_u_offset)
10705         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10706         (inf_ptrace_store_register, inf_ptrace_store_registers)
10707         (inf_ptrace_trad_target): Move to ...
10708         * linux-nat-trad.c: ... this new file.
10709         * linux-nat-trad.h: New file.
10710         * linux-nat.c (linux_target_install_ops): Make extern.
10711         (linux_trad_target): Delete.
10712         * linux-nat.h (linux_trad_target): Delete declaration.
10713         (linux_target_install_ops): Declare.
10714         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10715         "linux-nat.h".
10716
10717 2018-05-02  Pedro Alves  <palves@redhat.com>
10718
10719         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10720         procfs_target/add_target here.
10721         * procfs.c (procfs_target): Make static.
10722         (_initialize_procfs): Call add_target here.
10723         * procfs.h (struct target_ops): Remove forward declaration.
10724         (procfs_target): Remove declaration.
10725         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10726
10727 2018-05-02  Pedro Alves  <palves@redhat.com>
10728
10729         * procfs.c (procfs_stopped_by_watchpoint)
10730         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10731         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10732         Forward declare.
10733         (procfs_use_watchpoints): Delete, move contents...
10734         (procfs_target): ... here.
10735         * procfs.h (procfs_use_watchpoints): Delete declaration.
10736         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10737         procfs_use_watchpoints.
10738         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10739         procfs_use_watchpoints.
10740
10741 2018-05-02  Tom Tromey  <tom@tromey.com>
10742
10743         PR python/20084:
10744         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10745         and var_zuinteger_unlimited.
10746         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10747         and PARAM_ZUINTEGER_UNLIMITED.
10748         (set_parameter_value): Handle var_zuinteger and
10749         var_zuinteger_unlimited.
10750         (add_setshow_generic): Likewise.
10751         (parmpy_init): Likewise.
10752
10753 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10754
10755         PR rust/23124
10756         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10757         pointer is not null before dereferencing it.
10758
10759 2018-04-30  Tom Tromey  <tom@tromey.com>
10760
10761         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10762         is_mi_like_p.
10763
10764 2018-04-30  Tom Tromey  <tom@tromey.com>
10765
10766         * breakpoint.c (mention): Remove use of is_mi_like_p.
10767         (print_mention_ranged_breakpoint): Likewise.
10768         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10769         of is_mi_like_p.
10770
10771 2018-04-30  Tom Tromey  <tom@tromey.com>
10772
10773         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10774
10775 2018-04-30  Tom Tromey  <tom@tromey.com>
10776
10777         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10778         (info_spu_event_command): Remove some uses of is_mi_like_p.
10779
10780 2018-04-30  Tom Tromey  <tom@tromey.com>
10781
10782         * python/py-framefilter.c (py_print_single_arg)
10783         (enumerate_locals, py_print_args, py_print_frame): Remove some
10784         uses of is_mi_like_p.
10785
10786 2018-04-30  Tom Tromey  <tom@tromey.com>
10787
10788         * ui-out.c: Update.
10789         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10790         * ui-out.h (ui_out::is_mi_like_p): Now const.
10791         (ui_out::do_is_mi_like_p): Now const.
10792         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10793
10794 2018-04-30  Tom Tromey  <tom@tromey.com>
10795
10796         * varobj.c (varobj_set_visualizer): Use new_reference.
10797         * python/python.c (gdbpy_decode_line): Use new_reference.
10798         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10799         new_reference.
10800
10801 2018-04-30  Tom Tromey  <tom@tromey.com>
10802
10803         * varobj.c (install_new_value): Use new_reference.
10804         * value.h (value_incref): Return void.  Swap intro comment with
10805         value_decref.
10806         * value.c (set_value_parent): Use new_reference.
10807         (value_incref): Return void.  Update intro comment.
10808         (release_value): Use new_reference.
10809         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10810
10811 2018-04-30  Tom Tromey  <tom@tromey.com>
10812
10813         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10814         * gdb_bfd.h (new_bfd_ref): Remove.
10815         (gdb_bfd_open): Update comment.
10816         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10817         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10818         (gdb_bfd_fdopenr): Use new_reference.
10819         * exec.c (exec_file_attach): Use new_reference.
10820
10821 2018-04-30  Tom Tromey  <tom@tromey.com>
10822
10823         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10824         method.
10825
10826 2018-04-30  Tom Tromey  <tom@tromey.com>
10827
10828         * jit.c (jit_read_code_entry): Use type_align.
10829         * i386-tdep.c (i386_gdbarch_init): Don't call
10830         set_gdbarch_long_long_align_bit.
10831         * gdbarch.sh: Remove long_long_align_bit.
10832         * gdbarch.c, gdbarch.h: Rebuild.
10833         * arc-tdep.c (arc_type_align): New function.
10834         (arc_gdbarch_init): Use arc_type_align.  Don't call
10835         set_gdbarch_long_long_align_bit.
10836
10837 2018-04-30  Tom Tromey  <tom@tromey.com>
10838
10839         * rust-lang.c (rust_type_alignment): Remove.
10840         (rust_composite_type): Use type_align.
10841
10842 2018-04-30  Tom Tromey  <tom@tromey.com>
10843
10844         * NEWS: Mention Type.align.
10845         * python/py-type.c (typy_get_alignof): New function.
10846         (type_object_getset): Add "alignof".
10847
10848 2018-04-30  Tom Tromey  <tom@tromey.com>
10849
10850         PR exp/17095:
10851         * NEWS: Update.
10852         * std-operator.def (UNOP_ALIGNOF): New operator.
10853         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10854         New.
10855         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10856         * c-lang.c (c_op_print_tab): Add alignof.
10857         * c-exp.y (ALIGNOF): New token.
10858         (exp): Add "ALIGNOF" production.
10859         (ident_tokens): Add _Alignof and alignof.
10860
10861 2018-04-30  Tom Tromey  <tom@tromey.com>
10862
10863         * i386-tdep.c (i386_type_align): New function.
10864         (i386_gdbarch_init): Update.
10865         * gdbarch.sh (type_align): New method.
10866         * gdbarch.c, gdbarch.h: Rebuild.
10867         * arch-utils.h (default_type_align): Declare.
10868         * arch-utils.c (default_type_align): New function.
10869         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10870         (struct type) <align_log2>: New field.
10871         <instance_flags>: Now a bitfield.
10872         (TYPE_RAW_ALIGN): New macro.
10873         (type_align, type_raw_align, set_type_align): Declare.
10874         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10875         functions.
10876         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10877         (get_alignment, maybe_set_alignment): New functions.
10878         (read_structure_type, read_enumeration_type, read_array_type)
10879         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10880         (read_subrange_type, read_base_type): Set type alignment.
10881
10882 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10883
10884         * dwarf2read.c (read_index_from_section): Use bool.
10885
10886 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10887
10888         PR gdb/22950
10889         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10890         with #ifdef.
10891
10892 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10893
10894         PR build/22873
10895         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10896         last step, and do it atomically.
10897
10898 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10899
10900         * compile/compile-c-types.c (convert_int, convert_float):
10901         Update for C FE v1.
10902
10903 2018-04-27  Tom Tromey  <tom@tromey.com>
10904
10905         PR rust/22545:
10906         * rust-lang.c (rust_inclusive_range_type_p): New function.
10907         (rust_range): Handle inclusive ranges.
10908         (rust_compute_range): Likewise.
10909         * rust-exp.y (struct rust_op) <inclusive>: New field.
10910         (DOTDOTEQ): New constant.
10911         (range_expr): Add "..=" productions.
10912         (operator_tokens): Add "..=" token.
10913         (ast_range): Add "inclusive" parameter.
10914         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10915         ranges.
10916         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10917         bounds values.
10918         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10919         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10920         Update comments.
10921         * expprint.c (print_subexp_standard): Handle new bounds values.
10922         (dump_subexp_body_standard): Likewise.
10923
10924 2018-04-27  Tom Tromey  <tom@tromey.com>
10925
10926         * configure: Rebuild.
10927         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10928         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10929         "OVERRIDE".
10930         (class symbol_needs_eval_context): Likewise.
10931         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10932         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10933         "virtual".
10934         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10935         "override".
10936         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10937         * aarch64-tdep.c (instruction_reader::read): Use "override".
10938         (instruction_reader_test::read): Likewise.
10939         * arm-tdep.c (instruction_reader::read): Use "override".
10940         (instruction_reader_thumb::read): Likewise.
10941
10942 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10943
10944         PR remote/9665
10945         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10946         instead of remote_send.
10947         (remote_send): Remove.
10948
10949 2018-04-26  Pedro Alves  <palves@redhat.com>
10950
10951         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10952         find_function_start_sal instead of find_pc_line.
10953
10954 2018-04-26  Pedro Alves  <palves@redhat.com>
10955
10956         * breakpoint.c (set_breakpoint_location_function): Handle
10957         mst_data_gnu_ifunc.
10958         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10959         * elfread.c (elf_symtab_read): Give data symbols with
10960         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10961         (elf_rel_plt_read): Update comment.
10962         * linespec.c (convert_linespec_to_sals): Handle
10963         mst_data_gnu_ifunc.
10964         (minsym_found): Handle mst_data_gnu_ifunc.
10965         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10966         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10967         * parse.c (find_minsym_type_and_address): Handle
10968         mst_data_gnu_ifunc.
10969         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10970         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10971         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10972         comment.
10973         <mst_data_gnu_ifunc>: New enumerator.
10974
10975 2018-04-26  Pedro Alves  <palves@redhat.com>
10976
10977         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10978         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10979         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10980         Handle it.
10981         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10982         (lookup_minimal_symbol_by_pc): Adjust.
10983         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10984         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10985         * minsyms.h (lookup_msym_prefer): New enum.
10986         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10987         parameter by a lookup_msym_prefer parameter.
10988
10989 2018-04-26  Pedro Alves  <palves@redhat.com>
10990
10991         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10992         ends in "@plt" instead of looking at the symbol's section.
10993
10994 2018-04-26  Pedro Alves  <palves@redhat.com>
10995
10996         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10997         all references.
10998         (find_pc_partial_function_gnu_ifunc): Rename to ...
10999         (find_pc_partial_function): ... this, and remove references to
11000         'is_gnu_ifunc_p'.
11001         (find_pc_partial_function): Delete old implementation.
11002         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11003
11004 2018-04-26  Pedro Alves  <palves@redhat.com>
11005
11006         * linespec.c (struct bound_minimal_symbol_search_key): New.
11007         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11008         skip first line if we found a GNU ifunc minimal symbol by name.
11009         (compare_msymbols): Change parameters to work with a destructured
11010         lhs minsym.
11011         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11012         functions.
11013
11014 2018-04-26  Pedro Alves  <palves@redhat.com>
11015
11016         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11017         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11018         address/name.
11019         (add_location_to_breakpoint): Store the minsym and the objfile in
11020         the breakpoint location.
11021         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11022         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11023         Record the minsym in the sal.
11024         * symtab.h (symtab_and_line) <msymbol>: New field.
11025
11026 2018-04-26  Pedro Alves  <palves@redhat.com>
11027
11028         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11029         unless we actually resolved the ifunc.
11030
11031 2018-04-26  Pedro Alves  <palves@redhat.com>
11032
11033         * c-exp.y (variable production): Prefer ifunc minsyms over
11034         regular function symbols.
11035         * symtab.c (find_gnu_ifunc): New function.
11036         * minsyms.h (lookup_msym_prefer): New enum.
11037         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11038         parameter by a lookup_msym_prefer parameter.
11039         * symtab.h (find_gnu_ifunc): New declaration.
11040
11041 2018-04-26  Pedro Alves  <palves@redhat.com>
11042
11043         * blockframe.c (find_gnu_ifunc_target_type): New function.
11044         (find_function_type): New.
11045         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11046         return a value with a memory address.
11047         (eval_call): For calls to GNU ifunc functions, try to find the
11048         type of the target function from the type that the resolver
11049         returns.
11050         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11051         symbols.
11052         * infcall.c (find_function_return_type): Delete.
11053         (find_function_addr): Add 'function_type' parameter.  For calls to
11054         GNU ifunc functions, try to find the type of the target function
11055         from the type that the resolver returns, and return it via
11056         FUNCTION_TYPE.
11057         (call_function_by_hand_dummy): Adjust to use the function type
11058         returned by find_function_addr.
11059         (find_function_addr): Add 'function_type' parameter and move
11060         description here.
11061         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11062         declarations.
11063
11064 2018-04-26  Pedro Alves  <palves@redhat.com>
11065
11066         * c-exp.y (variable production): Skip finding an alias for ifunc
11067         symbols.
11068
11069 2018-04-26  Pedro Alves  <palves@redhat.com>
11070
11071         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11072
11073 2018-04-25  Pedro Alves  <palves@redhat.com>
11074
11075         * infcmd.c (kill_command): Print the pid as string, not the whole
11076         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11077         message.
11078         * remote.c (remote_detach_1): Print the pid as string, not the
11079         whole thread's ptid.
11080
11081 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11082             Sergio Durigan Junior  <sergiodj@redhat.com>
11083             Pedro Alves  <palves@redhat.com>
11084
11085         * infcmd.c (kill_command): Print message when inferior has
11086         been killed.
11087         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11088         '1'.
11089         (add_inferior): Improve message printed when
11090         'print_inferior_events' is on.
11091         (exit_inferior): Remove message printed when
11092         'print_inferior_events' is on.
11093         (detach_inferior): Improve message printed when
11094         'print_inferior_events' is on.
11095         (initialize_inferiors): Use 'add_inferior_silent' to set
11096         'current_inferior_'.
11097         * inferior.h (print_inferior_events): Declare here as
11098         'extern'.
11099         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11100         '[Detaching...]' messages when 'print_inferior_events' is on.
11101         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11102         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11103         'Detaching after fork from child...', replace it by '... from
11104         parent...'.
11105         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11106         prefix/suffix when printing 'Detaching...' messages.  Print
11107         them when 'print_inferior_events' is on.
11108         * remote.c (remote_detach_1): Print message when detaching
11109         from inferior and '!is_fork_parent'.
11110
11111 2018-04-24  Tom Tromey  <tom@tromey.com>
11112
11113         * cli-out.h: Reindent.
11114
11115 2018-04-24  Tom Tromey  <tom@tromey.com>
11116
11117         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11118         (cli_ui_out::do_field_string): Use fputs_filtered.
11119         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11120
11121 2018-04-23  Tom Tromey  <tom@tromey.com>
11122
11123         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11124         gdb::unique_xmalloc_ptr.
11125
11126 2018-04-23  Tom Tromey  <tom@tromey.com>
11127
11128         * configure: Rebuild.
11129
11130 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11131
11132         PR gdb/23095
11133         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11134         prepare_for_testing.  Set normal_bp to r_debug_state if target
11135         is bsd.
11136
11137 2018-04-21  Pedro Alves  <palves@redhat.com>
11138             Rajendra SY  <rajendra.sy@gmail.com>
11139
11140         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11141         * remote.c (extended_remote_attach): In all-stop mode, mark the
11142         thread as executing.
11143
11144 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11145
11146         * thread.c (thread_apply_all_command): Fix comment.
11147         (thread_command): Fix comment.
11148
11149 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11150
11151         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11152         parameter.
11153         * features/aarch64-core.c (create_feature_aarch64_core):
11154         Regenerate.
11155         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11156         Likewise.
11157         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11158         Likewise.
11159         * features/i386/32bit-avx512.c
11160         (create_feature_i386_32bit_avx512): Likewise.
11161         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11162         Likewise.
11163         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11164         Likewise.
11165         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11166         Likewise.
11167         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11168         Likewise.
11169         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11170         Likewise.
11171         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11172         Likewise.
11173         * features/i386/64bit-avx512.c
11174         (create_feature_i386_64bit_avx512): Likewise.
11175         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11176         Likewise.
11177         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11178         Likewise.
11179         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11180         Likewise.
11181         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11182         Likewise.
11183         * features/i386/64bit-segments.c
11184         (create_feature_i386_64bit_segments): Likewise.
11185         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11186         Likewise.
11187         * features/i386/x32-core.c
11188         (create_feature_i386_x32_core): Likewise.
11189         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11190         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11191         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11192         * target-descriptions.c: In generated code, don't pass xml
11193         filename.
11194
11195 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11196
11197         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11198         (print_xml_feature::visit_post): Likewise.
11199         (print_xml_feature::visit): Likewise.
11200         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11201         (print_xml_feature): Add new class.
11202         * regformats/regdat.sh: Null xmltarget on feature targets.
11203         * target-descriptions.c (struct target_desc): Add xmltarget.
11204         (maintenance_check_tdesc_xml_convert): Add unittest function.
11205         (tdesc_get_features_xml): Add function to get xml.
11206         (maintenance_check_xml_descriptions): Test xml generation.
11207         * xml-tdesc.c (string_read_description_xml): Add function.
11208         * xml-tdesc.h (string_read_description_xml): Add declaration.
11209
11210 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11211
11212         * features/Makefile: Add feature marker to targets with new style
11213         target descriptions.
11214         * regformats/aarch64.dat: Regenerate.
11215         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11216         * regformats/i386/amd64-avx-linux.dat: Likewise.
11217         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11218         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11219         * regformats/i386/amd64-linux.dat: Likewise.
11220         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11221         * regformats/i386/amd64.dat: Likewise.
11222         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11223         * regformats/i386/i386-avx-linux.dat: Likewise.
11224         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11225         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11226         * regformats/i386/i386-linux.dat: Likewise.
11227         * regformats/i386/i386-mmx-linux.dat: Likewise.
11228         * regformats/i386/i386-mpx-linux.dat: Likewise.
11229         * regformats/i386/i386.dat: Likewise.
11230         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11231         * regformats/i386/x32-avx-linux.dat: Likewise.
11232         * regformats/i386/x32-linux.dat: Likewise.
11233         * regformats/tic6x-c62x-linux.dat: Likewise.
11234         * regformats/tic6x-c64x-linux.dat: Likewise.
11235         * regformats/tic6x-c64xp-linux.dat: Likewise.
11236         * regformats/regdat.sh: Parse feature marker.
11237
11238 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11239
11240         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11241         (tdesc_osabi_name): Likewise.
11242         * target-descriptions.c (tdesc_architecture_name): Add new
11243         function.
11244         (tdesc_osabi_name): Likewise.
11245
11246 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11247
11248         * common/tdesc.c (tdesc_predefined_type): Move to here.
11249         (tdesc_named_type): Likewise.
11250         (tdesc_create_vector): Likewise.
11251         (tdesc_create_struct): Likewise.
11252         (tdesc_set_struct_size): Likewise.
11253         (tdesc_create_union): Likewise.
11254         (tdesc_create_flags): Likewise.
11255         (tdesc_create_enum): Likewise.
11256         (tdesc_add_field): Likewise.
11257         (tdesc_add_typed_bitfield): Likewise.
11258         (tdesc_add_bitfield): Likewise.
11259         (tdesc_add_flag): Likewise.
11260         (tdesc_add_enum_value): Likewise.
11261         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11262         (struct tdesc_type_vector): Likewise.
11263         (struct tdesc_type_field): Likewise.
11264         (struct tdesc_type_with_fields): Likewise.
11265         (tdesc_create_enum): Add declaration.
11266         (tdesc_add_typed_bitfield): Likewise.
11267         (tdesc_add_enum_value): Likewise.
11268         * target-descriptions.c (tdesc_type_field): Move from here.
11269         (tdesc_type_builtin): Likewise.
11270         (tdesc_type_vector): Likewise.
11271         (tdesc_type_with_fields): Likewise.
11272         (tdesc_predefined_types): Likewise.
11273         (tdesc_named_type): Likewise.
11274         (tdesc_create_vector): Likewise.
11275         (tdesc_create_struct): Likewise.
11276         (tdesc_set_struct_size): Likewise.
11277         (tdesc_create_union): Likewise.
11278         (tdesc_create_flags): Likewise.
11279         (tdesc_create_enum): Likewise.
11280         (tdesc_add_field): Likewise.
11281         (tdesc_add_typed_bitfield): Likewise.
11282         (tdesc_add_bitfield): Likewise.
11283         (tdesc_add_flag): Likewise.
11284         (tdesc_add_enum_value): Likewise.
11285         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11286         (tdesc_add_typed_bitfield): Likewise.
11287         (tdesc_add_enum_value): Likewise.
11288
11289 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11290
11291         * common/tdesc.c (tdesc_feature::accept): Move to here.
11292         (tdesc_feature::operator==): Likewise.
11293         (tdesc_create_reg): Likewise.
11294         * common/tdesc.h (tdesc_type_kind): Likewise.
11295         (struct tdesc_type): Likewise.
11296         (struct tdesc_feature): Likewise.
11297         * regformats/regdat.sh: Create a feature.
11298         * target-descriptions.c (tdesc_type_kind): Move from here.
11299         (tdesc_type): Likewise.
11300         (tdesc_type_up): Likewise.
11301         (tdesc_feature): Likewise.
11302         (tdesc_create_reg): Likewise.
11303
11304 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11305
11306         * Makefile.in: Add arch/tdesc.c
11307         * common/tdesc.c: New file.
11308         * common/tdesc.h (tdesc_element_visitor): Move to here.
11309         (tdesc_element): Likewise.
11310         (tdesc_reg): Likewise.
11311         (tdesc_reg_up): Likewise.
11312         * regformats/regdef.h (reg): Add offset to constructors.
11313         * target-descriptions.c (tdesc_element_visitor): Move from here.
11314         (tdesc_element): Likewise.
11315         (tdesc_reg): Likewise.
11316         (tdesc_reg_up): Likewise.
11317
11318 2018-04-17  Tom Tromey  <tom@tromey.com>
11319
11320         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11321         discriminant field.
11322
11323 2018-04-17  Tom Tromey  <tom@tromey.com>
11324
11325         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11326
11327 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11328
11329         * symtab.c (print_symbol_info): Skip printing filename and line
11330         number when `last' is NULL.
11331         (symtab_symbol_info): Use empty string instead of NULL for first
11332         invocation of print_symbol_info.
11333         (rbreak_command): Pass NULL to `last' parameter of
11334         print_symbol_info.
11335
11336 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11337
11338         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11339         instead of nullptr.
11340
11341 2018-04-16  Pedro Alves  <palves@redhat.com>
11342
11343         * MAINTAINERS (sh): Remove.
11344         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11345         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11346         (ALLDEPFILES): Remove sh64-tdep.c.
11347         * NEWS: Mentions that support for SH-5/SH64 is removed.
11348         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11349         (sh*-*-openbsd*): Ditto.
11350         (sh64-*-elf*): Remove.
11351         (sh*): Remove.
11352         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11353         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11354         * sh-tdep.c: No longer include "sh64-tdep.h".
11355         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11356         * sh64-tdep.c, sh64-tdep.h: Remove files.
11357
11358 2018-04-16  Pedro Alves  <palves@redhat.com>
11359
11360         * MAINTAINERS: Remove m88k.
11361         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11362         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11363         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11364         * NEWS: Mention that support for m88k was removed.
11365         * configure.host (m88*-*-*): Remove support.
11366         * configure.nat (m88k-*-*): Remove support.
11367         * configure.tgt (m88*-*-openbsd*): Remove.
11368         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11369
11370 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11371
11372         * configure.tgt (x86_tobjs): New variable.
11373         (amd64_tobjs, i386_tobjs): Use it.
11374
11375 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11376
11377         * symtab.c (print_symbol_info): Precede the symbol definition by
11378         the line number when available.
11379         * NEWS: Advertise this enhancement.
11380
11381 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11382
11383         * NEWS (New options): announce set/show record btrace cpu.
11384         * btrace.c: Include record-btrace.h.
11385         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11386         the vendor is unknown.
11387         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11388         Maybe overwrite the btrace configuration's cpu.
11389         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11390         (btrace_fetch): Add cpu parameter.  Update callers.
11391         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11392         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11393         errata workarounds if the vendor is unknown.
11394         * python/py-record-btrace.c: Include record-btrace.h.
11395         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11396         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11397         * record-btrace.c (record_btrace_cpu_state_kind): New.
11398         (record_btrace_cpu): New.
11399         (set_record_btrace_cpu_cmdlist): New.
11400         (record_btrace_get_cpu): New.
11401         (require_btrace_thread, record_btrace_info)
11402         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11403         (cmd_set_record_btrace_cpu_none): New.
11404         (cmd_set_record_btrace_cpu_auto): New.
11405         (cmd_set_record_btrace_cpu): New.
11406         (cmd_show_record_btrace_cpu): New.
11407         (_initialize_record_btrace): Initialize set/show record btrace cpu
11408         commands.
11409         * record-btrace.h (record_btrace_get_cpu): New.
11410
11411 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11412
11413         * record.c (set_record_command): Fix typo in message.
11414
11415 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11416
11417         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11418
11419 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11420
11421         * infrun.c (process_event_stop_test): Call
11422         gdbarch_in_indirect_branch_thunk.
11423         * gdbarch.sh (in_indirect_branch_thunk): New.
11424         * gdbarch.c: Regenerated.
11425         * gdbarch.h: Regenerated.
11426         * x86-tdep.h: New.
11427         * x86-tdep.c: New.
11428         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11429         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11430         (ALLDEPFILES): Add x86-tdep.c.
11431         * arch-utils.h (default_in_indirect_branch_thunk): New.
11432         * arch-utils.c (default_in_indirect_branch_thunk): New.
11433         * i386-tdep: Include x86-tdep.h.
11434         (i386_in_indirect_branch_thunk): New.
11435         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11436         function.
11437         * amd64-tdep: Include x86-tdep.h.
11438         (amd64_in_indirect_branch_thunk): New.
11439         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11440
11441 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11442
11443         PR gdb/23053
11444         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11445         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11446         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11447         regression.
11448
11449 2018-04-12  Tom Tromey  <tom@tromey.com>
11450
11451         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11452         (rust_evaluate_subexp): Likewise.
11453
11454 2018-04-12  Pedro Alves  <palves@redhat.com>
11455
11456         * procfs.c (procfs_detach): Make forward declaration's prototype
11457         match definition's protototype.
11458         (proc_get_LDT_entry): Remove stale do_cleanups call.
11459
11460 2018-04-12  Pedro Alves  <palves@redhat.com>
11461
11462         * target.h (target_ops::to_has_exited): Delete.
11463         (target_has_exited): Delete.
11464         * target-delegates.c: Regenerate.
11465
11466 2018-04-11  Pedro Alves  <palves@redhat.com>
11467
11468         * target.c (fileio_fh_t::t): Add comment.
11469         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11470         (target_fileio_close): Handle a NULL target.
11471         (invalidate_fileio_fh): New.
11472         (target_close): Call it.
11473         * remote.c (remote_hostio_send_command): No longer check whether
11474         remote_desc is open.
11475
11476 2018-04-11  Pedro Alves  <palves@redhat.com>
11477
11478         * target.c (fileio_fh_t): Make it a named struct instead of a
11479         typedef.
11480         (fileio_fh_t::is_closed): New method.
11481         (DEF_VEC_O (fileio_fh_t)): Remove.
11482         (fileio_fhandles): Now a std::vector.
11483         (is_closed_fileio_fh): Delete.
11484         (acquire_fileio_fd): Adjust.  Rename parameters.
11485         (release_fileio_fd): Adjust.
11486         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11487         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11488         (target_fileio_close): Adjust.
11489
11490 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11491
11492         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11493         index.
11494
11495 2018-04-10  Pedro Alves  <palves@redhat.com>
11496
11497         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11498         (scoped_finish_thread_state): New class.
11499         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11500         cleanup.
11501         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11502         (fetch_inferior_event, normal_stop): Likewise.
11503         * thread.c (finish_thread_state_cleanup): Delete.
11504
11505 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11506             Pedro Alves  <palves@redhat.com>
11507
11508         * value.c: Include "selftest.h" and "common/array-view.h".
11509         (struct range) <operator ==>: New.
11510         (test_ranges_contain): New.
11511         (check_ranges_vector): New.
11512         (test_insert_into_bit_range_vector): New.
11513         (_initialize_values): Register selftests.
11514         * common/array-view.h (operator==, operator!=): New.
11515
11516 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11517
11518         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11519         an iterator.
11520         * inline-frame.c: Include <algorithm>.
11521         (struct inline_state): Add constructor.
11522         (inline_state_s): Remove.
11523         (DEF_VEC_O(inline_state_s)): Remove.
11524         (inline_states): Change type to std::vector.
11525         (find_inline_frame_state): Adjust to std::vector.
11526         (allocate_inline_frame_state): Remove.
11527         (clear_inline_frame_state): Adjust to std::vector.
11528         (skip_inline_frames): Adjust to std::vector.
11529
11530 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11531
11532         * tracepoint.h (struct trace_state_variable): Add constructor.
11533         <name>: Change type to std::string.
11534         * tracepoint.c (tsv_s): Remove.
11535         (DEF_VEC_O(tsv_s)): Remove.
11536         (tvariables): Change to std::vector.
11537         (create_trace_state_variable): Adjust to std::vector.
11538         (find_trace_state_variable): Likewise.
11539         (find_trace_state_variable_by_number): Likewise.
11540         (delete_trace_state_variable): Likewise.
11541         (trace_variable_command): Adjust to std::string.
11542         (delete_trace_variable_command): Likewise.
11543         (tvariables_info_1): Adjust to std::vector.
11544         (save_trace_state_variables): Likewise.
11545         (start_tracing): Likewise.
11546         (merge_uploaded_trace_state_variables): Adjust to std::vector
11547         and std::string.
11548         * target.h (struct target_ops)
11549         <to_download_trace_state_variable>: Pass reference to
11550         trace_state_variable.
11551         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11552         * target-delegates.c: Re-generate.
11553         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11554         (mi_tsv_deleted): Likewise.
11555         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11556         * remote.c (remote_download_trace_state_variable): Change
11557         pointer to reference and adjust.
11558         * make-target-delegates (parse_argtypes): Handle references.
11559         (write_function_header): Likewise.
11560         (munge_type): Likewise.
11561
11562 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11563
11564         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11565         string_view-selftests.c.
11566         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11567         testsuite.
11568         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11569         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11570         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11571         * unittests/basic_string_view/element_access/char/1.cc:
11572         Likewise.
11573         * unittests/basic_string_view/element_access/char/empty.cc:
11574         Likewise.
11575         * unittests/basic_string_view/element_access/char/front_back.cc:
11576         Likewise.
11577         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11578         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11579         Likewise.
11580         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11581         Likewise.
11582         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11583         Likewise.
11584         * unittests/basic_string_view/operations/compare/char/1.cc:
11585         Likewise.
11586         * unittests/basic_string_view/operations/compare/char/13650.cc:
11587         Likewise.
11588         * unittests/basic_string_view/operations/copy/char/1.cc:
11589         Likewise.
11590         * unittests/basic_string_view/operations/data/char/1.cc:
11591         Likewise.
11592         * unittests/basic_string_view/operations/find/char/1.cc:
11593         Likewise.
11594         * unittests/basic_string_view/operations/find/char/2.cc:
11595         Likewise.
11596         * unittests/basic_string_view/operations/find/char/3.cc:
11597         Likewise.
11598         * unittests/basic_string_view/operations/find/char/4.cc:
11599         Likewise.
11600         * unittests/basic_string_view/operations/rfind/char/1.cc:
11601         Likewise.
11602         * unittests/basic_string_view/operations/rfind/char/2.cc:
11603         Likewise.
11604         * unittests/basic_string_view/operations/rfind/char/3.cc:
11605         Likewise.
11606         * unittests/basic_string_view/operations/substr/char/1.cc:
11607         Likewise.
11608         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11609         * unittests/string_view-selftests.c: New file.
11610
11611 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11612
11613         * unittests/basic_string_view/capacity/1.cc: New file.
11614         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11615         * unittests/basic_string_view/cons/char/1.cc: New file.
11616         * unittests/basic_string_view/cons/char/2.cc: New file.
11617         * unittests/basic_string_view/cons/char/3.cc: New file.
11618         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11619         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11620         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11621         * unittests/basic_string_view/element_access/char/1.cc: New file.
11622         * unittests/basic_string_view/element_access/char/2.cc: New file.
11623         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11624         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11625         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11626         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11627         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11628         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11629         * unittests/basic_string_view/include.cc: New file.
11630         * unittests/basic_string_view/inserters/char/1.cc: New file.
11631         * unittests/basic_string_view/inserters/char/2.cc: New file.
11632         * unittests/basic_string_view/inserters/char/3.cc: New file.
11633         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11634         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11635         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11636         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11637         * unittests/basic_string_view/literals/types.cc: New file.
11638         * unittests/basic_string_view/literals/values.cc: New file.
11639         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11640         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11641         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11642         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11643         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11644         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11645         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11646         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11647         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11648         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11649         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11650         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11651         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11652         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11653         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11654         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11655         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11656         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11657         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11658         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11659         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11660         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11661         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11662         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11663         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11664         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11665         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11666         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11667         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11668         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11669         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11670         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11671         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11672         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11673         * unittests/basic_string_view/operators/char/2.cc: New file.
11674         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11675         * unittests/basic_string_view/range_access/char/1.cc: New file.
11676         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11677         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11678         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11679         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11680         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11681         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11682         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11683         * unittests/basic_string_view/typedefs.cc: New file.
11684         * unittests/basic_string_view/types/1.cc: New file.
11685
11686 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11687
11688         * common/gdb_string_view.h: Remove libstdc++ implementation
11689         details, adjust to gdb reality.
11690         * common/gdb_string_view.tcc: Likewise.
11691         * cli/cli-script.c (struct string_view): Remove.
11692         (user_args) <m_args>: Change element type to gdb::string_view.
11693         (user_args::insert_args): Adjust.
11694
11695 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11696
11697         * common/gdb_string_view.h: New file.
11698         * common/gdb_string_view.tcc: New file.
11699
11700 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11701
11702         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11703         * configure: Re-generate.
11704
11705 2018-04-09  Pedro Alves  <palves@redhat.com>
11706
11707         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11708         (set_target_gdbarch): Call
11709         gdb::observers::architecture_changed.notify instead of
11710         observer_notify_architecture_changed.
11711
11712 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11713
11714         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11715         (do_restore_current_traceframe_cleanup): Remove.
11716         (restore_current_traceframe_cleanup_dtor): Remove.
11717         (make_cleanup_restore_current_traceframe): Remove.
11718         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11719         New.
11720         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11721         * infrun.c (fetch_inferior_event): Use
11722         scoped_restore_current_traceframe.
11723
11724 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11725
11726         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11727         Remove.
11728         <n_allocated_type_units>: Remove.
11729         <all_type_units>: Change to std::vector.
11730         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11731         to std::vector change.
11732         (dwarf2_per_objfile::get_cutu): Likewise.
11733         (dwarf2_per_objfile::get_tu): Likewise.
11734         (create_signatured_type_table_from_index): Likewise.
11735         (create_signatured_type_table_from_debug_names): Likewise.
11736         (dw2_symtab_iter_next): Likewise.
11737         (dw2_print_stats): Likewise.
11738         (dw2_expand_all_symtabs): Likewise.
11739         (dw2_expand_marked_cus): Likewise.
11740         (dw2_debug_names_iterator::next): Likewise.
11741         (dwarf2_initialize_objfile): Likewise.
11742         (add_signatured_type_cu_to_table): Likewise.
11743         (create_all_type_units): Likewise.
11744         (add_type_unit): Likewise.
11745         (struct tu_abbrev_offset): Add constructor.
11746         (build_type_psymtabs_1): Adjust to std::vector change.
11747         (print_tu_stats): Likewise.
11748         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11749         (write_debug_names): Likewise.
11750
11751 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11752
11753         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11754         Make an std::vector.
11755         <n_comp_units>: Remove.
11756         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11757         to std::vector change.
11758         (dwarf2_per_objfile::get_cutu): Likewise.
11759         (dwarf2_per_objfile::get_cu): Likewise.
11760         (create_cus_from_index): Likewise.
11761         (create_addrmap_from_index): Likewise.
11762         (create_addrmap_from_aranges): Likewise.
11763         (dwarf2_read_index): Likewise.
11764         (dw2_find_last_source_symtab): Likewise.
11765         (dw2_map_symtabs_matching_filename): Likewise.
11766         (dw2_symtab_iter_next): Likewise.
11767         (dw2_print_stats): Likewise.
11768         (dw2_expand_all_symtabs): Likewise.
11769         (dw2_expand_symtabs_with_fullname): Likewise.
11770         (dw2_expand_marked_cus): Likewise.
11771         (dw2_map_symbol_filenames): Likewise.
11772         (create_cus_from_debug_names): Likewise.
11773         (dwarf2_read_debug_names): Likewise.
11774         (dw2_debug_names_iterator::next): Likewise.
11775         (dwarf2_initialize_objfile): Likewise.
11776         (set_partial_user): Likewise.
11777         (dwarf2_build_psymtabs_hard): Likewise.
11778         (read_comp_units_from_section): Remove arguments, adjust to
11779         std::vector change.
11780         (create_all_comp_units): Adjust to std::vector and
11781         read_comp_units_from_section changes.
11782         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11783         change.
11784         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11785         (psyms_seen_size): Likewise.
11786         (write_gdbindex): Likewise.
11787         (write_debug_names): Likewise.
11788
11789 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11790
11791         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11792         with dwarf2_per_objfile.
11793         (create_cus_from_index): Likewise.
11794         (create_signatured_type_table_from_index): Likewise.
11795         (dwarf2_read_index): Likewise.
11796         (dwarf2_initialize_objfile): Likewise.
11797         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11798         per_cu rather than get_dwarf2_per_objfile.
11799
11800 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11801
11802         * dwarf2read.h (struct signatured_type): Forward declare.
11803         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11804         New methods.
11805         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11806         (dw2_get_cutu): ...this.
11807         (dwarf2_per_objfile::get_cu): Rename from...
11808         (dw2_get_cu): ...this.
11809         (dwarf2_per_objfile::get_tu): New.
11810         (create_addrmap_from_index): Adjust.
11811         (create_addrmap_from_aranges): Adjust.
11812         (dw2_find_last_source_symtab): Adjust.
11813         (dw2_map_symtabs_matching_filename): Adjust.
11814         (dw2_symtab_iter_next): Adjust.
11815         (dw2_print_stats): Adjust.
11816         (dw2_expand_all_symtabs): Adjust.
11817         (dw2_expand_symtabs_with_fullname): Adjust.
11818         (dw2_expand_marked_cus): Adjust.
11819         (dw_expand_symtabs_matching_file_matcher): Adjust.
11820         (dw2_map_symbol_filenames): Adjust.
11821         (dw2_debug_names_iterator::next): Adjust.
11822         (dwarf2_initialize_objfile): Adjust.
11823         (set_partial_user): Adjust.
11824         (dwarf2_build_psymtabs_hard): Adjust.
11825
11826 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11827
11828         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11829         Remove unused variables.
11830         (dw2_map_symtabs_matching_filename): Likewise.
11831         (dwarf2_record_block_ranges): Likewise.
11832         (dwarf2_read_addr_index): Likewise.
11833         (follow_die_offset): Likewise.
11834
11835 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11836
11837         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11838         to symbol_file_add_main.
11839
11840 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11841
11842         PR mi/22299
11843         * mi/mi-console.c (do_fputc_async_safe): New.
11844         (mi_console_file::write_async_safe): New.
11845         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11846         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11847         New.
11848         * ui-file.c (ui_file::putstrn): Adjust call to
11849         fputstrn_unfiltered.
11850         * utils.c (printchar): Replace do_fputs and do_fprintf
11851         parameters by do_fputc.
11852         (fputstr_filtered): Adjust call to printchar.
11853         (fputstr_unfiltered): Likewise.
11854         (fputstrn_filtered): Likewise.
11855         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11856         printchar.
11857         * utils.h (do_fputc_ftype): New typedef.
11858         (fputstrn_unfiltered): Add do_fputc parameter.
11859
11860 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11861
11862         * regformats/i386/i386-avx.dat: Remove.
11863
11864 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11865
11866         PR gdb/22979
11867         * amd64-tdep.c (amd64_none_init_abi): New function.
11868         (amd64_x32_none_init_abi): New function.
11869         (_initialize_amd64_tdep): Register handlers for x86-64 and
11870         x64_32 with GDB_OSABI_NONE.
11871         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11872         GDB_OSABI_NONE osabi.
11873
11874 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11875
11876         PR gdb/22980
11877         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11878         GDB_OSABI_NONE.
11879         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11880         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11881
11882 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11883
11884         * common/byte-vector.h (char_vector): New type.
11885         * target.h (target_read_alloc): Return
11886         gdb::optional<byte_vector>.
11887         (target_read_stralloc): Return gdb::optional<char_vector>.
11888         (target_get_osdata): Return gdb::optional<char_vector>.
11889         * target.c (target_read_alloc_1): Templatize.  Replacement
11890         manual memory management with vector.
11891         (target_read_alloc): Change return type, adjust.
11892         (target_read_stralloc): Change return type, adjust.
11893         (target_get_osdata): Change return type, adjust.
11894         * auxv.c (struct auxv_info) <length>: Remove.
11895         <data>: Change type to gdb::optional<byte_vector>.
11896         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11897         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11898         (target_auxv_search): Adjust.
11899         (fprint_target_auxv): Adjust.
11900         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11901         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11902         (linux_make_corefile_notes): Adjust.
11903         * osdata.c (get_osdata): Adjust.
11904         * remote.c (remote_get_threads_with_qxfer): Adjust.
11905         (remote_memory_map): Adjust.
11906         (remote_traceframe_info): Adjust.
11907         (btrace_read_config): Adjust.
11908         (remote_read_btrace): Adjust.
11909         (remote_pid_to_exec_file): Adjust.
11910         * solib-aix.c (solib_aix_get_library_list): Adjust.
11911         * solib-dsbt.c (decode_loadmap): Don't free buf.
11912         (dsbt_get_initial_loadmaps): Adjust.
11913         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11914         * solib-target.c (solib_target_current_sos): Adjust.
11915         * tracepoint.c (sdata_make_value): Adjust.
11916         * xml-support.c (xinclude_start_include): Adjust.
11917         (xml_fetch_content_from_file): Adjust.
11918         * xml-support.h (xml_fetch_another): Change return type.
11919         (xml_fetch_content_from_file): Change return type.
11920         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11921         * xml-tdesc.c (file_read_description_xml): Adjust.
11922         (fetch_available_features_from_target): Change return type.
11923         (target_fetch_description_xml): Adjust.
11924         (target_read_description_xml): Adjust.
11925
11926 2018-04-06  Tom Tromey  <tom@tromey.com>
11927
11928         * value.c (~value): Update.
11929         (struct value) <contents>: Now unique_xmalloc_ptr.
11930         (value_contents_bits_eq, allocate_value_contents)
11931         (value_contents_raw, value_contents_all_raw)
11932         (value_contents_for_printing, value_contents_for_printing_const)
11933         (set_value_enclosing_type): Update.
11934
11935 2018-04-06  Tom Tromey  <tom@tromey.com>
11936
11937         * value.c (range_s): Remove typedef, VEC.
11938         (struct range): Add operator<.
11939         (range_lessthan): Remove.
11940         (ranges_contain): Change type.
11941         (~value): Update.
11942         (struct value) <unavailable, optimized_out>: Now std::vector.
11943         (value_entirely_available)
11944         (value_entirely_covered_by_range_vector)
11945         (value_entirely_unavailable, value_entirely_optimized_out):
11946         Update.
11947         (insert_into_bit_range_vector): Change argument type.
11948         (find_first_range_overlap): Likewise.
11949         (struct ranges_and_idx, value_contents_bits_eq)
11950         (require_not_optimized_out, require_available): Update.
11951         (ranges_copy_adjusted): Change argument types.
11952         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11953
11954 2018-04-06  Tom Tromey  <tom@tromey.com>
11955
11956         * value.c (~value): Update.
11957         (struct value) <parent>: Now a value_ref_ptr.
11958         (value_parent, set_value_parent, value_address, value_copy):
11959         Update.
11960
11961 2018-04-06  Tom Tromey  <tom@tromey.com>
11962
11963         * value.c (struct value): Add constructor, destructor, and member
11964         initializers.
11965         (allocate_value_lazy, value_decref): Update.
11966
11967 2018-04-06  Tom Tromey  <tom@tromey.com>
11968
11969         * value.c (struct value) <released, next>: Remove.
11970         (all_values): Now a std::vector.
11971         (allocate_value_lazy): Update.
11972         (value_next): Remove.
11973         (value_mark, value_free_to_mark, release_value)
11974         (value_release_to_mark): Update.
11975
11976 2018-04-06  Tom Tromey  <tom@tromey.com>
11977
11978         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11979         (free_value_chain): Remove.
11980         * value.c (free_value_chain): Remove.
11981         (value_release_to_mark): Return a std::vector.
11982         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11983         std::vector.
11984         (check_condition): Update.
11985         * eval.c (fetch_subexp_value): Change "val_chain" to a
11986         std::vector.
11987         * breakpoint.c (update_watchpoint): Update.
11988         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11989
11990 2018-04-06  Tom Tromey  <tom@tromey.com>
11991
11992         * value.h (free_all_values): Remove.
11993         * value.c (free_all_values): Remove.
11994
11995 2018-04-06  Tom Tromey  <tom@tromey.com>
11996
11997         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11998         (value_history_chain, value_history_count): Remove.
11999         (value_history): New global.
12000         (record_latest_value, access_value_history, show_values)
12001         (preserve_values): Update.
12002
12003 2018-04-06  Tom Tromey  <tom@tromey.com>
12004
12005         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12006         * varobj.c (varobj_set_display_format, varobj_set_value)
12007         (install_default_visualizer, construct_visualizer)
12008         (install_new_value, ~varobj, varobj_get_value_type)
12009         (my_value_of_variable, varobj_editable_p): Update.
12010         * c-varobj.c (c_describe_child, c_value_of_variable)
12011         (cplus_number_of_children, cplus_describe_child): Update.
12012         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12013         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12014         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12015
12016 2018-04-06  Tom Tromey  <tom@tromey.com>
12017
12018         * printcmd.c (last_examine_address): Change type to
12019         value_ref_ptr.
12020         (do_examine, x_command): Update.
12021
12022 2018-04-06  Tom Tromey  <tom@tromey.com>
12023
12024         * value.c (release_value): Update.
12025         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12026         (struct bpstats) <val>: Now a value_ref_ptr.
12027         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12028         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12029         (~watchpoint, print_it_watchpoint, watch_command_1)
12030         (invalidate_bp_value_on_memory_change): Update.
12031
12032 2018-04-06  Tom Tromey  <tom@tromey.com>
12033
12034         * varobj.c (varobj_clear_saved_item)
12035         (update_dynamic_varobj_children, install_new_value, ~varobj):
12036         Update.
12037         * value.h (value_incref): Move declaration earlier.
12038         (value_decref): Rename from value_free.
12039         (struct value_ref_policy): New.
12040         (value_ref_ptr): New typedef.
12041         (struct value_deleter): Remove.
12042         (gdb_value_up): Remove typedef.
12043         (release_value): Change return type.
12044         (release_value_or_incref): Remove.
12045         * value.c (set_value_parent): Update.
12046         (value_incref): Change return type.
12047         (value_decref): Rename from value_free.
12048         (value_free_to_mark, free_all_values, free_value_chain): Update.
12049         (release_value): Return value_ref_ptr.
12050         (release_value_or_incref): Remove.
12051         (record_latest_value, set_internalvar, clear_internalvar):
12052         Update.
12053         * stack.c (info_frame_command): Don't call value_free.
12054         * python/py-value.c (valpy_dealloc, valpy_new)
12055         (value_to_value_object): Update.
12056         * printcmd.c (do_examine): Update.
12057         * opencl-lang.c (lval_func_free_closure): Update.
12058         * mi/mi-main.c (register_changed_p): Don't call value_free.
12059         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12060         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12061         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12062         value_free.
12063         * guile/scm-value.c (vlscm_free_value_smob)
12064         (vlscm_scm_from_value): Update.
12065         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12066         (frame_unwind_register_unsigned, get_frame_register_bytes)
12067         (put_frame_register_bytes): Don't call value_free.
12068         * findvar.c (address_from_register): Don't call value_free.
12069         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12070         * dwarf2loc.c (entry_data_value_free_closure)
12071         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12072         (dwarf2_evaluate_loc_desc_full): Update.
12073         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12074         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12075         (~watchpoint, watch_command_1)
12076         (invalidate_bp_value_on_memory_change): Update.
12077         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12078
12079 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12080
12081         PR gdb/23022
12082         * warning.m4: Add -Wno-error=deprecated-register.
12083         * configure: Re-generate.
12084
12085 2018-04-05  Tom Tromey  <tom@tromey.com>
12086
12087         * linespec.h: Remove include of "vec.h".
12088
12089 2018-04-05  Tom Tromey  <tom@tromey.com>
12090
12091         * linespec.c (typep): Remove typedef.
12092         (find_methods, find_superclass_methods): Take a std::vector.
12093         (find_method): Use std::vector.
12094
12095 2018-04-05  Tom Tromey  <tom@tromey.com>
12096
12097         * utils.c (compare_strings): Remove.
12098         * utils.h (compare_strings): Remove.
12099         * objc-lang.h (find_imps): Update.
12100         * objc-lang.c (find_methods): Take a std::vector.
12101         (uniquify_strings, find_imps): Likewise.
12102         * linespec.c (find_methods): Take a std::vector.
12103         (decode_objc): Use std::vector.
12104         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12105         a std::vector.
12106         (find_method, find_function_symbols): Use std::vector.
12107
12108 2018-04-05  Tom Tromey  <tom@tromey.com>
12109
12110         * completer.c (completion_tracker::completion_tracker): Remove
12111         cast.
12112         (completion_tracker::discard_completions): Likewise.
12113         * breakpoint.c (ambiguous_names_p): Remove cast.
12114         * ada-lang.c (_initialize_ada_language): Remove cast.
12115         * utils.h (streq): Update.
12116         (streq_hash): Add new declaration.
12117         * utils.c (streq): Return bool.
12118         (streq_hash): New function.
12119
12120 2018-04-05  Tom Tromey  <tom@tromey.com>
12121
12122         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12123         Remove a string copy.
12124
12125 2018-04-05  Tom Tromey  <tom@tromey.com>
12126
12127         * linespec.c (filter_results): Use std::vector.
12128         (decode_line_2, decode_line_full): Update.
12129
12130 2018-04-05  Tom Tromey  <tom@tromey.com>
12131
12132         * linespec.c (canonical_to_fullform): Return std::string.
12133         (filter_results): Update.
12134         (struct decode_line_2_item): Add constructor.
12135         <fullform, displayform>: Now std::string.
12136         (decode_line_2_compare_items): Now a std::sort comparator.
12137         (decode_line_2): Update.
12138
12139 2018-04-05  Tom Tromey  <tom@tromey.com>
12140
12141         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12142         (unexpected_linespec_error): Update.
12143         (linespec_parse_basic, parse_linespec): Update.
12144
12145 2018-04-05  Tom Tromey  <tom@tromey.com>
12146
12147         * linespec.c (linespec_parse_basic): Reindent.
12148
12149 2018-04-05  Tom Tromey  <tom@tromey.com>
12150
12151         * minsyms.h (iterate_over_minimal_symbols): Update.
12152         * minsyms.c (iterate_over_minimal_symbols): Take a
12153         gdb::function_view.
12154         * linespec.c (struct collect_minsyms): Remove.
12155         (compare_msyms): Now a std::sort comparator.
12156         (add_minsym): Add parameters.
12157         (search_minsyms_for_name): Update.  Use std::vector.
12158
12159 2018-04-03  Tom Tromey  <tom@tromey.com>
12160
12161         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12162         gdb::byte_vector.
12163
12164 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12165
12166         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12167
12168 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12169
12170         PR gdb/16959
12171         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12172         printing static type.
12173
12174 2018-04-01  Tom Tromey  <tom@tromey.com>
12175
12176         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12177         (rs6000_xfer_shared_libraries): Update.
12178
12179 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12180
12181         * common/gdb_vecs.h (char_ptr): Remove.
12182         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12183
12184 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12185
12186         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12187         with std::vector.
12188         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12189
12190 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12191
12192         * tracepoint.h (struct uploaded_tp): Initialize fields.
12193         <actions, step_actions, cmd_strings>: Change type to
12194         std::vector<char *>.
12195         * tracepoint.c (get_uploaded_tp): Allocate with new.
12196         (free_uploaded_tps): Free with delete.
12197         (parse_tracepoint_definition): Adjust to std::vector change.
12198         * breakpoint.c (read_uploaded_action): Likewise.
12199         (create_tracepoint_from_upload): Likewise.
12200         * ctf.c (ctf_write_uploaded_tp): Likewise.
12201         (SET_ARRAY_FIELD): Likewise.
12202         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12203
12204 2018-03-30  Tom Tromey  <tom@tromey.com>
12205
12206         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12207         std::unique_ptr.
12208         (svr4_keep_data_in_core): Update.
12209         (svr4_read_so_list): Update.
12210
12211 2018-03-30  Tom Tromey  <tom@tromey.com>
12212
12213         * windows-nat.c (handle_output_debug_string, handle_exception):
12214         Update.
12215         * target.h (target_read_string): Update.
12216         * target.c (target_read_string): Change "string" to
12217         unique_xmalloc_ptr.
12218         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12219         Update.
12220         * solib-frv.c (frv_current_sos): Update.
12221         * solib-dsbt.c (dsbt_current_sos): Update.
12222         * solib-darwin.c (darwin_current_sos): Update.
12223         * linux-thread-db.c (inferior_has_bug): Update.
12224         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12225         Update.  Remove alloca.
12226         * ada-lang.c (ada_main_name): Update.
12227
12228 2018-03-30  Tom Tromey  <tom@tromey.com>
12229
12230         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12231         (struct dwo_file_deleter): New.
12232         (dwo_file_up): New typedef.
12233         (open_and_init_dwo_file): Use dwo_file_up.
12234         (free_dwo_file_cleanup): Remove.
12235
12236 2018-03-30  Tom Tromey  <tom@tromey.com>
12237
12238         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12239         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12240
12241 2018-03-30  Tom Tromey  <tom@tromey.com>
12242
12243         * dwarf2read.c (class free_cached_comp_units): New class.
12244         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12245         (free_cached_comp_units): Remove function.
12246
12247 2018-03-30  Tom Tromey  <tom@tromey.com>
12248
12249         * utils.h (make_cleanup_unpush_target): Remove.
12250         * inf-ptrace.c (struct target_unpusher): New.
12251         (target_unpush_up) New typedef.
12252         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12253         target_unpush_up.
12254         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12255
12256 2018-03-27  Tom Tromey  <tom@tromey.com>
12257
12258         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12259
12260 2018-03-27  Pedro Alves  <palves@redhat.com>
12261             Tom Tromey  <tom@tromey.com>
12262
12263         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12264         destructor.  Now a class.
12265         (gdb_readline_wrapper_cleanup): Remove function.
12266         (gdb_readline_wrapper): Remove cleanups.
12267
12268 2018-03-27  Tom Tromey  <tom@tromey.com>
12269
12270         * typeprint.h (struct type_print_options) <local_typedefs,
12271         global_typedefs>: Remove "struct" keyword.
12272         (class typedef_hash_table): New class.
12273         (recursively_update_typedef_hash, add_template_parameters)
12274         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12275         (find_typedef_in_hash): Don't declare.
12276         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12277         (typedef_hash_table::recursively_update): Rename from
12278         recursively_update_typedef_hash.  Now a member.
12279         (typedef_hash_table::add_template_parameters): Rename from
12280         add_template_parameters.  Now a member.
12281         (typedef_hash_table::typedef_hash_table): Now a constructor;
12282         rename from create_typedef_hash.
12283         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12284         rename from free_typedef_hash.
12285         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12286         (do_free_global_table): Remove.
12287         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12288         from copy_type_recursive.
12289         (create_global_typedef_table): Remove.
12290         (typedef_hash_table::find_global_typedef): Now a member of
12291         typedef_hash_table.
12292         (typedef_hash_table::find_typedef): Rename from
12293         find_typedef_in_hash; now a member.
12294         (whatis_exp): Update.
12295         * extension.h (struct ext_lang_type_printers): Add constructor and
12296         destructor.
12297         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12298         declare.
12299         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12300         Now a constructor; rename from start_ext_lang_type_printers.
12301         (ext_lang_type_printers): Now a destructor; rename from
12302         free_ext_lang_type_printers.
12303         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12304         Update.
12305         (c_type_print_base_struct_union): Update.  Remove cleanups.
12306
12307 2018-03-27  Tom Tromey  <tom@tromey.com>
12308
12309         * dwarf-index-write.c: Include <cmath>.
12310
12311 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12312
12313         * NEWS: Add entry describing new "set|show varsize-limit" command.
12314         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12315         command.
12316         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12317         "set variable".
12318
12319 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12320
12321         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12322         dwarf-index-write.c
12323         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12324         * dwarf-index-common.c: New file.
12325         * dwarf-index-common.h: New file.
12326         * dwarf-index-write.c: New file.
12327         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12328         (struct dwarf2_section_info): Move from here.
12329         (dwarf2_section_info_def): Likewise.
12330         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12331         (offset_type): Likewise.
12332         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12333         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12334         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12335         (byte_swap): Likewise.
12336         (MAYBE_SWAP): Likewise.
12337         (dwarf2_per_cu_ptr): Likewise.
12338         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12339         (struct tu_stats): Likewise.
12340         (struct dwarf2_per_objfile): Likewise.
12341         (struct dwarf2_per_cu_data): Likewise.
12342         (struct signatured_type): Likewise.
12343         (sig_type_ptr): Likewise.
12344         (DEF_VEC_P (sig_type_ptr)): Likewise.
12345         (INDEX4_SUFFIX): Likewise.
12346         (INDEX5_SUFFIX): Likewise.
12347         (DEBUG_STR_SUFFIX): Likewise.
12348         (dwarf2_read_section): Make non-static.
12349         (mapped_index_string_hash): Move from here.
12350         (dwarf5_djb_hash): Likewise.
12351         (file_write): Likewise.
12352         (class data_buf): Likewise.
12353         (struct symtab_index_entry): Likewise.
12354         (struct mapped_symtab): Likewise.
12355         (find_slot): Likewise.
12356         (hash_expand): Likewise.
12357         (add_index_entry): Likewise.
12358         (uniquify_cu_indices): Likewise.
12359         (class c_str_view): Likewise.
12360         (class c_str_view_hasher): Likewise.
12361         (class vector_hasher): Likewise.
12362         (write_hash_table): Likewise.
12363         (psym_index_map): Likewise.
12364         (struct addrmap_index_data): Likewise.
12365         (add_address_entry): Likewise.
12366         (add_address_entry_worker): Likewise.
12367         (write_address_map): Likewise.
12368         (symbol_kind): Likewise.
12369         (write_psymbols): Likewise.
12370         (struct signatured_type_index_data): Likewise.
12371         (write_one_signatured_type): Likewise.
12372         (recursively_count_psymbols): Likewise.
12373         (recursively_write_psymbols): Likewise.
12374         (class debug_names): Likewise.
12375         (check_dwarf64_offsets): Likewise.
12376         (psyms_seen_size): Likewise.
12377         (write_gdbindex): Likewise.
12378         (write_debug_names): Likewise.
12379         (assert_file_size): Likewise.
12380         (write_psymtabs_to_index): Likewise.
12381         (save_gdb_index_command): Likewise.
12382         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12383         command.
12384         * dwarf2read.h: New file.
12385
12386 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12387
12388         PR gdb/22670
12389         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12390         symbol name if the CU's language stores symbol names in linkage
12391         format.
12392         * language.h (struct language_defn)
12393         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12394         all instances of this struct.
12395
12396 2018-03-26  Tom Tromey  <tom@tromey.com>
12397
12398         * stack.c (backtrace_command_1): Remove verbose code.
12399
12400 2018-03-26  Tom Tromey  <tom@tromey.com>
12401
12402         * python/py-framefilter.c (py_print_type): Don't catch
12403         exceptions.  Return void.
12404         (py_print_value): Likewise.
12405         (py_print_single_arg): Likewise.
12406         (enumerate_args): Don't catch exceptions.
12407         (py_print_args): Likewise.
12408         (py_print_frame): Likewise.
12409         (gdbpy_apply_frame_filter): Catch exceptions here.
12410
12411 2018-03-26  Tom Tromey  <tom@tromey.com>
12412
12413         * stack.c (_initialize_stack): Remove trailing newlines from help
12414         text.  Add "Usage" line to "backtrace" help.
12415
12416 2018-03-26  Tom Tromey  <tom@tromey.com>
12417
12418         PR python/16486:
12419         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12420
12421 2018-03-26  Tom Tromey  <tom@tromey.com>
12422
12423         * python/py-framefilter.c (py_print_single_arg): Return
12424         EXT_LANG_BT_ERROR from catch.
12425
12426 2018-03-26  Tom Tromey  <tom@tromey.com>
12427
12428         PR backtrace/15584:
12429         * stack.c (backtrace_command_1): Move some code into no-filters
12430         "if".
12431
12432 2018-03-26  Tom Tromey  <tom@tromey.com>
12433
12434         * python/py-framefilter.c (throw_quit_or_print_exception): New
12435         function.
12436         (gdbpy_apply_frame_filter): Use it.
12437
12438 2018-03-26  Tom Tromey  <tom@tromey.com>
12439
12440         PR cli/17716:
12441         * python/py-framefilter.c (py_print_type, py_print_value)
12442         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12443         RETURN_MASK_ERROR.
12444
12445 2018-03-26  Tom Tromey  <tom@tromey.com>
12446
12447         * python/py-framefilter.c (enumerate_args): Use
12448         gdb::unique_xmalloc_ptr.
12449
12450 2018-03-26  Tom Tromey  <tom@tromey.com>
12451
12452         * python/py-framefilter.c (py_print_frame): Return
12453         EXT_LANG_BT_OK.
12454         (gdbpy_apply_frame_filter): Update comment.
12455         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12456         Remove.
12457         <EXT_LANG_BT_NO_FILTERS>: Change value.
12458
12459 2018-03-26  Tom Tromey  <tom@tromey.com>
12460
12461         PR backtrace/15582:
12462         * stack.c (backtrace_command): Parse "hide" argument.
12463         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12464         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12465         constant.
12466
12467 2018-03-26  Tom Tromey  <tom@tromey.com>
12468
12469         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12470         add "flags".
12471         (backtrace_command): Remove "fulltrace", add "flags".
12472
12473 2018-03-26  Tom Tromey  <tom@tromey.com>
12474
12475         * stack.c (backtrace_command): Rewrite command line parsing.
12476
12477 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12478
12479         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12480
12481 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12482
12483         * filename-seen-cache.h: Add include guard.
12484
12485 2018-03-26  Keith Seitz  <keiths@redhat.com>
12486
12487         * symfile.c (place_section): Remove "struct" from section_addr_info
12488         in comment.
12489         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12490         "struct" keyword from section_addr_info.
12491
12492 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12493
12494         * regformats/regdef.h (reg): Add constructors.
12495
12496 2018-03-25  Pedro Alves  <palves@redhat.com>
12497
12498         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12499         if then/else bodies in var_func_name extraction.
12500
12501 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12502
12503         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12504         lookup_minimal_symbol() to find symbol entry.
12505         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12506
12507 2018-03-23  Keith Seitz  <keiths@redhat.com>
12508
12509         PR c++/22968
12510         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12511         nested type definitions for C++, too.
12512
12513 2018-03-23  Tom Tromey  <tom@tromey.com>
12514
12515         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12516         a typedef.
12517         (macho_register_oso): Remove.
12518         (macho_symtab_read): Take a std::vector.
12519         (oso_el_compare_name): Now a std::sort comparator.
12520         (macho_symfile_read_all_oso): Take a std::vector.
12521         (macho_symfile_read): Use std::vector.  Remove cleanups.
12522
12523 2018-03-22  Tom Tromey  <tom@tromey.com>
12524
12525         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12526         (record_full_goto_bookmark): Use std::string.
12527
12528 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12529
12530         PR tdep/18295
12531         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12532         a single mask.
12533
12534 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12535
12536         * rs6000-tdep.c (store_insn_p): New function.
12537         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12538         and cr_reg to their unshifted values. Use store_insn_p to
12539         match LR saves using either R1 or fdata->alloca_reg. Use
12540         store_insn_p to match CR saves. Set alloca_reg_offset
12541         when alloca_reg and framep are set. Remove lr_reg shift
12542         when assigning to fdata->lr_register.
12543
12544 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12545
12546         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12547         command line args instead of emitting a warning.
12548
12549 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12550
12551         * tracepoint.h (struct static_tracepoint_marker): Initialize
12552         fields, define default constructor, move constructor and move
12553         assignment, disable the rest.
12554         <str_id, extra>: Make std::string.
12555         (release_static_tracepoint_marker): Remove.
12556         (free_current_marker): Remove.
12557         * tracepoint.c (free_current_marker): Remove.
12558         (parse_static_tracepoint_marker_definition): Adjust to
12559         std::string, use new hex2str overload.
12560         (release_static_tracepoint_marker): Remove.
12561         (print_one_static_tracepoint_marker): Get marker by reference
12562         and adjust to std::string.
12563         (info_static_tracepoint_markers_command): Adjust to std::vector
12564         changes
12565         * target.h (static_tracepoint_marker_p): Remove typedef.
12566         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12567         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12568         bool.
12569         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12570         * target-debug.h
12571         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12572         (target_debug_print_std_vector_static_tracepoint_marker): New.
12573         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12574         to...
12575         (target_debug_print_static_tracepoint_marker_p): ... this.
12576         * target-delegates.c: Re-generate.
12577         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12578         Make std::string.
12579         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12580         (decode_static_tracepoint_spec): Adjust to std::vector.
12581         (tracepoint_print_one_detail): Adjust to std::string.
12582         (strace_marker_decode_location): Adjust to std::string.
12583         (update_static_tracepoint): Adjust to std::string, remove call
12584         to release_static_tracepoint_marker.
12585         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12586         Adjust to std::vector.
12587         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12588         (remote_static_tracepoint_markers_by_strid): Adjust to
12589         std::vector.
12590         * common/rsp-low.h (hex2str): New overload with explicit count
12591         of bytes.
12592         * common/rsp-low.c (hex2str): New overload with explicit count
12593         of bytes.
12594         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12595         (_initialize_rsp_low_selftests): Add test_hex2str test.
12596         * unittests/tracepoint-selftests.c
12597         (test_parse_static_tracepoint_marker_definition): Adjust to
12598         std::string.
12599
12600 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12601
12602         * tracepoint.c (parse_static_tracepoint_marker_definition):
12603         Consider case where the definition is followed by more
12604         definitions.
12605         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12606         tracepoint-selftests.c.
12607         * unittests/tracepoint-selftests.c: New.
12608
12609 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12610
12611         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12612         Carvalho.
12613
12614 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12615
12616         * symtab.c (find_pc_sect_line): fixed indentation.
12617
12618 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12619
12620         * symtab.c (find_pc_sect_line): now uses binary search.
12621
12622 2018-03-19  Tom Tromey  <tom@tromey.com>
12623
12624         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12625         "IDENT" production.
12626
12627 2018-03-19  Pedro Alves  <palves@redhat.com>
12628             Tom Tromey  <tom@tromey.com>
12629
12630         * unittests/observable-selftests.c: New file.
12631         * common/observable.h: New file.
12632         * observable.h: New file.
12633         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12634         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12635         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12636         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12637         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12638         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12639         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12640         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12641         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12642         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12643         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12644         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12645         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12646         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12647         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12648         tui/tui-interp.c, valops.c: Update all users.
12649         * tui/tui-hooks.c (tui_bp_created_observer)
12650         (tui_bp_deleted_observer, tui_bp_modified_observer)
12651         (tui_inferior_exit_observer, tui_before_prompt_observer)
12652         (tui_normal_stop_observer, tui_register_changed_observer):
12653         Remove.
12654         (tui_observers_token): New global.
12655         (attach_or_detach, tui_attach_detach_observers): New functions.
12656         (tui_install_hooks, tui_remove_hooks): Use
12657         tui_attach_detach_observers.
12658         * record-btrace.c (record_btrace_thread_observer): Remove.
12659         (record_btrace_thread_observer_token): New global.
12660         * observer.sh: Remove.
12661         * observer.c: Rename to observable.c.
12662         * observable.c (namespace gdb_observers): Define new objects.
12663         (observer_debug): Move into gdb_observers namespace.
12664         (struct observer, struct observer_list, xalloc_observer_list_node)
12665         (xfree_observer_list_node, generic_observer_attach)
12666         (generic_observer_detach, generic_observer_notify): Remove.
12667         (_initialize_observer): Update.
12668         Don't include observer.inc.
12669         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12670         (clean mostlyclean): Likewise.
12671         (observer.h, observer.inc): Remove targets.
12672         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12673         (COMMON_SFILES): Use observable.c, not observer.c.
12674         * .gitignore: Remove observer.h.
12675
12676 2018-03-18  Tom Tromey  <tom@tromey.com>
12677
12678         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12679         gdb::def_vector.
12680         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12681
12682 2018-03-17  Tom Tromey  <tom@tromey.com>
12683
12684         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12685
12686 2018-03-17  Tom Tromey  <tom@tromey.com>
12687
12688         * target.c (class scoped_target_fd): New.
12689         (target_fileio_close_cleanup): Remove.
12690         (target_fileio_read_alloc_1): Use scoped_target_fd.
12691
12692 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12693
12694         * silent-rules.mk: New.
12695         * Makefile.in: Include silent-rules.mk
12696         (srcdir, VPATH, top_srcdir): Move up.
12697         (COMPILE): Add ECHO_CXX.
12698         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12699         (init.c): Add ECHO_INIT_C.
12700         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12701         (version.c): Add ECHO_GEN.
12702         (printcmd.o): Add ECHO_CXX.
12703         (target-float.o): Add ECHO_CXX.
12704         (ada-exp.o): Add ECHO_CXX.
12705         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12706         (insight$(EXEEXT)): Add ECHO_CXXLD.
12707         * gnulib/configure.ac: Add AM_SILENT_RULES.
12708         * gnulib/aclocal.m4: Re-generate.
12709         * gnulib/configure: Re-generate.
12710         * gnulib/import/Makefile.in: Re-generate.
12711
12712 2018-03-16  Tom Tromey  <tom@tromey.com>
12713
12714         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12715         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12716         * utils.c (do_free_section_addr_info)
12717         (make_cleanup_free_section_addr_info): Remove.
12718         * symfile.h (struct other_sections): Add constructor.
12719         (struct section_addr_info): Remove.
12720         (section_addr_info): New typedef.
12721         (struct sym_fns) <sym_offsets>: Change type of parameter.
12722         (build_section_addr_info_from_objfile)
12723         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12724         (default_symfile_offsets, symbol_file_add)
12725         (symbol_file_add_from_bfd)
12726         (build_section_addr_info_from_section_table): Update.
12727         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12728         * symfile.c (alloc_section_addr_info): Remove.
12729         (build_section_addr_info_from_section_table): Change return type.
12730         Update.
12731         (build_section_addr_info_from_bfd)
12732         (build_section_addr_info_from_objfile): Likewise.
12733         (free_section_addr_info): Remove.
12734         (relative_addr_info_to_section_offsets): Change type of "addrs".
12735         (addrs_section_compar): Now a std::sort comparator.
12736         (addrs_section_sort): Change return type.
12737         (addr_info_make_relative): Change type of "addrs".  Update.
12738         (default_symfile_offsets, syms_from_objfile_1)
12739         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12740         (symbol_file_add_separate): Update.
12741         (symbol_file_add): Change type of "addrs".  Update.
12742         (add_symbol_file_command): Update.  Remove cleanups.
12743         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12744         cleanups.
12745         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12746         * solib.c (solib_read_symbols): Update.
12747         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12748         * machoread.c (macho_symfile_offsets): Update.
12749         * jit.c (jit_bfd_try_read_symtab): Update.
12750
12751 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12752
12753         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12754         unittests/utils-selftests.c.
12755         * unittests/utils-selftests.c: New file.
12756
12757 2018-03-14  Tom Tromey  <tom@tromey.com>
12758
12759         PR cli/14977:
12760         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12761         for NULL.
12762
12763 2018-03-14  Tom Tromey  <tom@tromey.com>
12764
12765         PR cli/19918:
12766         * printcmd.c (printf_pointer): Allow "-" in format.
12767
12768 2018-03-14  Tom Tromey  <tom@tromey.com>
12769
12770         * printcmd.c (_initialize_printcmd): Add usage to printf.
12771
12772 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12773
12774         * MAINTAINERS: Update my email address.
12775
12776 2018-03-13  Tom Tromey  <tom@tromey.com>
12777
12778         * machoread.c (macho_check_dsym): Change filenamep to a
12779         std::string*.
12780         (macho_symfile_read): Update.
12781         * symfile.c (load_command): Use std::string.
12782
12783 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12784
12785         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12786         to error message string.
12787         (riscv_register_name): Use xsnprintf instead of sprintf.
12788         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12789         internal_error.
12790         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12791         error.
12792         (riscv_push_dummy_call): Likewise.
12793
12794 2018-03-12  Tom Tromey  <tom@tromey.com>
12795
12796         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12797         Use gdb::byte_vector.
12798         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12799
12800 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12801
12802         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12803         parameter type to readable_regcache.
12804         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12805         the declaration.
12806
12807 2018-03-11  Tom Tromey  <tom@tromey.com>
12808
12809         * dwarf2read.c (struct nextfield): Add initializers.
12810         (struct nextfnfield): Remove.
12811         (struct fnfieldlist): Add initializers.  Remove "length" and
12812         "head", use std::vector.
12813         (struct decl_field_list): Remove.
12814         (struct field_info): Add initializers.
12815         <fields, baseclasses>: Now std::vector.
12816         <nbaseclasses, nfnfields, typedef_field_list_count,
12817         nested_types_list_count>: Remove.
12818         (dwarf2_add_field, dwarf2_add_type_defn)
12819         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12820         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12821         (process_structure_scope): Update.
12822
12823 2018-03-11  Tom Tromey  <tom@tromey.com>
12824
12825         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12826         for use by std::sort.
12827         (build_type_psymtabs_1): Use std::vector.
12828
12829 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12830
12831         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12832         and LIBMPFR in the printed configuration.
12833
12834 2018-03-08  Tom Tromey  <tom@tromey.com>
12835
12836         * source.c (get_filename_and_charpos): Use scoped_fd.
12837         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12838         (procfs_pidlist): Likewise.
12839         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12840         (iterate_over_mappings): Likewise.
12841
12842 2018-03-08  Tom Tromey  <tom@tromey.com>
12843
12844         * infcall.c (struct call_return_meta_info)
12845         <stack_temporaries_enabled>: Remove.
12846         (get_call_return_value, call_function_by_hand_dummy): Update.
12847         * thread.c (disable_thread_stack_temporaries): Remove.
12848         (enable_thread_stack_temporaries): Remove.
12849         (thread_stack_temporaries_enabled_p): Return bool.
12850         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12851         (get_last_thread_stack_temporary): Update.
12852         * eval.c (evaluate_subexp): Update.
12853         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12854         class, not a function.
12855         (value_ptr, value_vec): Remove typedefs.
12856         (class thread_info) <stack_temporaries_enabled>: Now bool.
12857         <stack_temporaries>: Now a std::vector.
12858         (thread_stack_temporaries_enabled_p)
12859         (value_in_thread_stack_temporaries): Return bool.
12860
12861 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12862
12863         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12864         (getpkt_or_notif_sane_1): Likewise.
12865
12866 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12867
12868         * build-id.c (build_id_to_debug_bfd): Use std::string.
12869
12870 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12871
12872         * build-id.c (find_separate_debug_file_by_buildid): Return
12873         std::string.
12874         * build-id.h (find_separate_debug_file_by_buildid): Return
12875         std::string.
12876         * coffread.c (coff_symfile_read): Adjust to std::string.
12877         * elfread.c (elf_symfile_read): Adjust to std::string.
12878         * symfile.c (separate_debug_file_exists): Change parameter to
12879         std::string.
12880         (find_separate_debug_file): Return std::string.
12881         (find_separate_debug_file_by_debuglink): Return std::string.
12882         * symfile.h (find_separate_debug_file_by_debuglink): Return
12883         std::string.
12884
12885 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12886
12887         * common/xml-utils.c (xml_escape_text): Move code to...
12888         (xml_escape_text_append): ... this new function.
12889         * common/xml-utils.h (xml_escape_text_append): New declaration.
12890         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12891         New function.
12892         (_initialize_xml_utils): register test_xml_escape_text_append as
12893         a selftest.
12894
12895 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12896
12897         * defs.h: Remove MAX_REGISTER_SIZE.
12898         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12899         asserts.
12900         * python/py-unwind.c (pyuw_sniffer): Likewise.
12901
12902 2018-03-07  Tom Tromey  <tom@tromey.com>
12903
12904         * linux-tdep.c (linux_info_proc): Update.
12905         * target.h (struct target_ops) <to_fileio_readlink>: Return
12906         optional<string>.
12907         (target_fileio_readlink): Return optional<string>.
12908         * remote.c (remote_hostio_readlink): Return optional<string>.
12909         * inf-child.c (inf_child_fileio_readlink): Return
12910         optional<string>.
12911         * target.c (target_fileio_readlink): Return optional<string>.
12912
12913 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12914
12915         * regcache.c (cooked_read_test): Add riscv to the list of
12916         architectures that have a save_reggroup.
12917
12918 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12919
12920         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12921         value is not a dynamic class object.
12922
12923 2018-03-06  Tom Tromey  <tom@tromey.com>
12924
12925         * rust-exp.y: Formatting fixes.
12926
12927 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12928
12929         * riscv-tdep.c (riscv_register_name): Remove target description
12930         support.
12931         (riscv_gdbarch_init): Remove target description check.
12932
12933 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12934
12935         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12936         comment.
12937         * riscv-tdep.h: Likewise.
12938
12939 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12940
12941         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12942         (riscv_pseudo_register_write): Delete.
12943         (riscv_gdbarch_init): Remove all use of pseudo registers.
12944
12945 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12946
12947         * record-btrace.c (btrace_print_lines): Replace cleanup
12948         parameter with RAII equivalents.
12949         (btrace_insn_history): Replace cleanup with RAII equivalents.
12950         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12951         make_cleanup_ui_out_tuple_begin_end): Remove.
12952         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12953         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12954         make_cleanup_ui_out_list_begin_end): Remove.
12955
12956 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12957
12958         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12959         parameter types to std::vector.  Use bool.
12960         (record_btrace_wait): Replace VEC(tp_t) with
12961         std::vector<thread_info *>.
12962         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12963
12964 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12965
12966         * record-btrace.c (record_btrace_disable_callback): Remove.
12967         (struct scoped_btrace_disable): New.
12968         (record_btrace_open): Use scoped_btrace_disable.
12969
12970 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12971
12972         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12973         reading values from registers.
12974
12975 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12976
12977         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12978         where appropriate.
12979
12980 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12981
12982         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12983         change parameter type.  Use GDB's print functions, and use
12984         core_addr_to_string where appropriate.
12985         (riscv_push_dummy_call): Use core_addr_to_string where
12986         appropriate, update call to riscv_print_arg_location, and reindent
12987         a few lines.
12988         (riscv_return_value): Update call to riscv_print_arg_location.
12989
12990 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12991             Tim Newsome <tim@sifive.com>
12992             Albert Ou <a0u@eecs.berkeley.edu>
12993             Darius Rad <darius@bluespec.com>
12994
12995         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12996         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12997         (ALLDEPFILES): Add riscv-tdep.c
12998         * configure.tgt: Add riscv support.
12999         * riscv-tdep.c: New file.
13000         * riscv-tdep.h: New file.
13001         * NEWS: Mention new target.
13002         * MAINTAINERS: Add entry for riscv.
13003
13004 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13005
13006         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13007         fields within aggregates.
13008
13009 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13010
13011         * record-btrace.c (btrace_print_lines): Change type of flags to
13012         gdb_disassembly_flags.
13013
13014 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13015
13016         * fbsd-nat.c: Include "inf-ptrace.h".
13017         (USE_SIGTRAP_SIGINFO): Conditionally define.
13018         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13019         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13020         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13021         function.
13022         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13023         Likewise.
13024         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13025         Likewise.
13026         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13027         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13028         "supports_stopped_by_hw_breakpoint" target methods.
13029
13030 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13031
13032         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13033         * fbsd-nat.c (debug_fbsd_nat): New variable.
13034         (show_fbsd_nat_debug): New function.
13035         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13036         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13037
13038 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13039
13040         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13041         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13042         prototype.
13043         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13044         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13045         method.
13046
13047 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13048
13049         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13050         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13051
13052 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13053
13054         * charset.c (struct charset_vector): New.
13055         (charsets): Change type to charset_vector.
13056         (find_charset_names): Adjust.
13057         (add_one): Adjust.
13058         (_initialize_charset): Adjust.
13059
13060 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13061
13062         * progspace.h (struct program_space) <deleted_solibs>: Change
13063         type to std::vector<std::string>.
13064         * progspace.c (clear_program_space_solib_cache): Adjust.
13065         * breakpoint.c (print_solib_event): Adjust.
13066         (check_status_catch_solib): Adjust.
13067         * solib.c (update_solib_list): Adjust.
13068         * ui-out.h (class ui_out) <field_string>: New overload.
13069         * ui-out.c (ui_out::field_string): New overload.
13070
13071 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13072
13073         * progspace.h (struct program_space): Add constructor and
13074         destructor, initialize fields.
13075         (add_program_space): Remove.
13076         * progspace.c (add_program_space): Rename to...
13077         (program_space::program_space): ... this.
13078         (release_program_space): Rename to...
13079         (program_space::~program_space): ... this.
13080         (delete_program_space): Use delete to delete program_space.
13081         (initialize_progspace): Use new to allocate program_space.
13082         * inferior.c (add_inferior_with_spaces): Likewise.
13083         (clone_inferior_command): Likewise.
13084         * infrun.c (follow_fork_inferior): Likewise.
13085         (handle_vfork_child_exec_or_exit): Likewise.
13086
13087 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13088
13089         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13090         (delim_string_to_char_ptr_vec): Return std::vector of
13091         gdb::unique_xmalloc_ptr.
13092         (dirnames_to_char_ptr_vec_append): Take std::vector of
13093         gdb::unique_xmalloc_ptr.
13094         (dirnames_to_char_ptr_vec): Return std::vector of
13095         gdb::unique_xmalloc_ptr.
13096         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13097         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13098         (delim_string_to_char_ptr_vec): Return an std::vector of
13099         gdb::unique_xmalloc_ptr, adjust the code.
13100         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13101         gdb::unique_xmalloc_ptr, adjust the code.
13102         (dirnames_to_char_ptr_vec): Return an std::vector of
13103         gdb::unique_xmalloc_ptr, adjust the code.
13104         * auto-load.c (auto_load_safe_path_vec): Change type to
13105         std::vector of gdb::unique_xmalloc_ptr.
13106         (auto_load_expand_dir_vars): Return an std::vector of
13107         gdb::unique_xmalloc_ptr, adjust the code.
13108         (auto_load_safe_path_vec_update): Adjust.
13109         (filename_is_in_auto_load_safe_path_vec): Adjust.
13110         (auto_load_objfile_script_1): Adjust.
13111         * build-id.c (build_id_to_debug_bfd): Adjust.
13112         * linux-thread-db.c (thread_db_load_search): Adjust.
13113         * source.c (add_path): Adjust.
13114         (openp): Adjust.
13115         * symfile.c (find_separate_debug_file): Adjust.
13116         * utils.c (do_free_char_ptr_vec): Remove.
13117         (make_cleanup_free_char_ptr_vec): Remove.
13118
13119 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13120
13121         PR gdb/22907
13122         * common/pathstuff.c: Conditionally include "<windows.h>".
13123
13124 2018-03-01  Georg Sauthoff  <mail@georg.so>
13125
13126         PR gdb/22888
13127         * gcore.in: Quote variables and switch interpreter to bash.
13128
13129 2018-03-01  Tom Tromey  <tom@tromey.com>
13130
13131         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13132         assertion.  Add assertion for discriminant_index.
13133         (quirk_rust_enum): Use correct base type name in univariant case.
13134
13135 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13136
13137         * record.c (get_call_history_modifiers): Return a
13138         record_print_flags.
13139         (cmd_record_call_history): Adjust.
13140         * record-btrace.c (record_btrace_call_history): Adjust.
13141         (record_btrace_call_history_range): Adjust.
13142         (record_btrace_call_history_from): Adjust.
13143         * target-debug.h (target_debug_print_record_print_flags): New.
13144         * target-delegates.c: Re-generate.
13145         * target.c (target_call_history): Change flags type.
13146         (target_call_history_from): Likewise.
13147         (target_call_history_range): Likewise.
13148         * target.h (struct target_ops) <target_call_history>: Likewise.
13149         (target_call_history_from): Likewise.
13150         (target_call_history_range): Likewise.
13151
13152 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13153             Simon Marchi  <simon.marchi@polymtl.ca>
13154
13155         * common/common-utils.c: Include "sys/stat.h".
13156         (is_regular_file): Move here from "source.c"; change return
13157         type to "bool".
13158         * common/common-utils.h (is_regular_file): New prototype.
13159         * common/pathstuff.c (contains_dir_separator): New function.
13160         * common/pathstuff.h (contains_dir_separator): New prototype.
13161         * source.c: Don't include "sys/stat.h".
13162         (is_regular_file): Move to "common/common-utils.c".
13163
13164 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13165
13166         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13167         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13168         * auto-load.c: Include "common/pathstuff.h".
13169         * common/common-def.h (current_directory): Move here.
13170         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13171         function.
13172         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13173         prototype.
13174         * common/pathstuff.c: New file.
13175         * common/pathstuff.h: New file.
13176         * compile/compile.c: Include "common/pathstuff.h".
13177         * defs.h (current_directory): Move to "common/common-defs.h".
13178         * dwarf2read.c: Include "common/pathstuff.h".
13179         * exec.c: Likewise.
13180         * guile/scm-safe-call.c: Likewise.
13181         * linux-thread-db.c: Likewise.
13182         * main.c: Likewise.
13183         * nto-tdep.c: Likewise.
13184         * objfiles.c: Likewise.
13185         * source.c: Likewise.
13186         * symtab.c: Likewise.
13187         * utils.c: Include "common/pathstuff.h".
13188         (gdb_realpath): Move to "common/pathstuff.c".
13189         (gdb_realpath_keepfile): Likewise.
13190         (gdb_abspath): Likewise.
13191         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13192         (gdb_realpath_keepfile): Likewise.
13193         (gdb_abspath): Likewise.
13194
13195 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13196
13197         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13198         wildcard process pid for super_resume for kernels with a
13199         specific bug.
13200
13201 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13202
13203         * compile/compile.c (get_args): Add additional comments
13204         explaining function.
13205
13206 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13207             Tom Tromey  <tom@tromey.com>
13208
13209         * target.h (memory_write_request_s): Remove typedef.  Don't define
13210         VEC.
13211         (target_write_memory_blocks): Change argument to std::vector.
13212         (struct memory_write_request): Add constructor.
13213         * target-memory.c (compare_block_starting_address): Return bool.
13214         Change argument types.
13215         (claim_memory): Change arguments to use std::vector.
13216         (split_regular_and_flash_blocks, blocks_to_erase)
13217         (compute_garbled_blocks): Likewise.
13218         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13219         (target_write_memory_blocks): Change argument to std::vector.
13220         * symfile.c (struct load_section_data): Add constructor and
13221         destructor.  Use std::vector for "requests".
13222         (struct load_progress_data): Add initializers.
13223         (load_section_callback): Update.  Use "new".
13224         (clear_memory_write_data): Remove.
13225         (generic_load): Update.
13226
13227 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13228
13229         * arch/aarch64.h: Use common/tdesc.h.
13230
13231 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13232
13233         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13234         architecture with a 64-bit ABI.
13235
13236 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13237
13238         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13239         ahead of target description loading.
13240
13241 2018-02-26  Tom Tromey  <tom@tromey.com>
13242
13243         * stack.c (backtrace_command_1): Update.
13244         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13245         of "flags".
13246         * python/py-framefilter.c (py_print_frame)
13247         (gdbpy_apply_frame_filter): Change type of "flags".
13248         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13249         of "flags".
13250         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13251         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13252         * extension.h (enum frame_filter_flag): Rename from
13253         frame_filter_flags.
13254         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13255         (apply_ext_lang_frame_filter): Change type of "flags".
13256         * extension.c (apply_ext_lang_frame_filter): Change type of
13257         "flags".
13258         * extension-priv.h (struct extension_language_ops)
13259         <apply_frame_filter>: Change type of "flags".
13260
13261 2018-02-26  Tom Tromey  <tom@tromey.com>
13262
13263         PR python/16497:
13264         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13265         off-by-one in py_end computation.
13266         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13267         PRINT_MORE_FRAMES.
13268         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13269         constant.
13270
13271 2018-02-26  Tom Tromey  <tom@tromey.com>
13272
13273         * dwarf2read.c (struct variant_field): New.
13274         (struct nextfield) <variant>: New field.
13275         (dwarf2_add_field): Handle DW_TAG_variant_part.
13276         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13277         discriminated union.
13278         (read_structure_type): Handle DW_TAG_variant_part.
13279         (handle_struct_member_die): New function, extracted from
13280         process_structure_scope.  Handle DW_TAG_variant.
13281         (process_structure_scope): Handle discriminated unions.  Call
13282         handle_struct_member_die.
13283
13284 2018-02-26  Tom Tromey  <tom@tromey.com>
13285
13286         * rust-lang.h (rust_last_path_segment): Declare.
13287         * rust-lang.c (rust_last_path_segment): Now public.  Change
13288         contract.
13289         (struct disr_info): Remove.
13290         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13291         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13292         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13293         (rust_enum_p, rust_enum_variant): New function.
13294         (rust_underscore_fields): Remove "offset" parameter.
13295         (rust_print_enum): New function.
13296         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13297         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13298         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13299         enums.
13300         (rust_internal_print_type): New function, from rust_print_type.
13301         Remove enum code.
13302         (rust_print_type): Call rust_internal_print_type.
13303         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13304         Update enum handling.
13305         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13306         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13307         (rust_union_quirks): New functions.
13308         (process_full_comp_unit, process_full_type_unit): Call
13309         rust_union_quirks.
13310         (process_structure_scope): Update rust_unions if necessary.
13311
13312 2018-02-26  Tom Tromey  <tom@tromey.com>
13313
13314         * value.h (value_union_variant): Declare.
13315         * valops.c (value_union_variant): New function.
13316         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13317         (struct discriminant_info): New.
13318         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13319         enumerator.
13320         (struct main_type) <flag_discriminated_union>: New field.
13321
13322 2018-02-26  Tom Tromey  <tom@tromey.com>
13323
13324         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13325         unittests/unpack-selftests.c.
13326         * unittests/unpack-selftests.c: New file.
13327         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13328
13329 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13330
13331         * dwarf2read.c (struct partial_die_info) <read>: New method.
13332         (read_partial_die): Remove the declaration.
13333         (load_partial_dies): Update.
13334         (partial_die_info::partial_die_info):
13335         (read_partial_die): Change it to partial_die_info::read.
13336
13337 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13338
13339         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13340         (fixup_partial_die): Remove declaration.
13341         (scan_partial_symbols): Update.
13342         (partial_die_parent_scope): Likewise.
13343         (partial_die_full_name): Likewise.
13344         (fixup_partial_die): Change it to partial_die_info::fixup.
13345
13346 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13347
13348         * dwarf2read.c (read_partial_die): Update the declaration.
13349         (load_partial_dies): Caller update.
13350         (read_partial_die): Remove one argument abbrev_len.
13351
13352 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13353
13354         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13355         assignment operator.
13356         (load_partial_dies): Use ctor and copy ctor.
13357         (read_partial_die): Update.
13358         (dwarf2_cu::find_partial_die): Use ctor.
13359
13360 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13361
13362         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13363         (find_partial_die_in_comp_unit): Change it to
13364         dwarf2_cu::find_partial_die.
13365         (find_partial_die): Update.
13366
13367 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13368
13369         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13370         is NULL.
13371
13372 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13373
13374         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13375
13376 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13377
13378         * arch/amd64.h: Use common/tdesc.h.
13379         * arch/i386.c: Likewise.
13380         * arch/i386.h: Likewise.
13381         * arch/tic6x.c: Likewise.
13382         * arch/tdesc.h: Move file from here...
13383         * common/tdesc.h: ...to here.
13384         * features/aarch64-core.c: Regenerate.
13385         * features/aarch64-fpu.c: Regenerate.
13386         * features/i386/32bit-avx.c: Regenerate.
13387         * features/i386/32bit-avx512.c: Regenerate.
13388         * features/i386/32bit-core.c: Regenerate.
13389         * features/i386/32bit-linux.c: Regenerate.
13390         * features/i386/32bit-mpx.c: Regenerate.
13391         * features/i386/32bit-pkeys.c: Regenerate.
13392         * features/i386/32bit-sse.c: Regenerate.
13393         * features/i386/64bit-avx.c: Regenerate.
13394         * features/i386/64bit-avx512.c: Regenerate.
13395         * features/i386/64bit-core.c: Regenerate.
13396         * features/i386/64bit-linux.c: Regenerate.
13397         * features/i386/64bit-mpx.c: Regenerate.
13398         * features/i386/64bit-pkeys.c: Regenerate.
13399         * features/i386/64bit-segments.c: Regenerate.
13400         * features/i386/64bit-sse.c: Regenerate.
13401         * features/i386/x32-core.c: Regenerate.
13402         * features/tic6x-c6xp.c: Regenerate.
13403         * features/tic6x-core.c: Regenerate.
13404         * features/tic6x-gp.c: Regenerate.
13405         * target-descriptions.c: Use common/tdesc.h.
13406         * target-descriptions.h: Likewise.
13407
13408 2018-02-24  Tom Tromey  <tom@tromey.com>
13409
13410         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13411         (try_thread_db_load_from_dir, thread_db_load_search): Use
13412         std::string.
13413         (info_auto_load_libthread_db_compare): Return bool.  Change
13414         argument types.
13415         (info_auto_load_libthread_db): Use std::vector, std::string.
13416         Remove cleanups.
13417
13418 2018-02-24  Tom Tromey  <tom@tromey.com>
13419
13420         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13421         std::string.
13422         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13423         std::string*.
13424         * gdbarch.c: Rebuild.
13425         * gdbarch.h: Rebuild.
13426         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13427         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13428         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13429         std::string*.
13430
13431 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13432
13433         * gdbtypes.h (sect_offset): Change type to uint64_t.
13434         (sect_offset_str): New function.
13435         * dwarf2read.c (create_addrmap_from_aranges): Use
13436         sect_offset_str.
13437         (error_check_comp_unit_head): Likewise.
13438         (create_debug_type_hash_table): Likewise.
13439         (read_cutu_die_from_dwo): Likewise.
13440         (init_cutu_and_read_dies): Likewise.
13441         (init_cutu_and_read_dies_no_follow): Likewise.
13442         (process_psymtab_comp_unit_reader): Likewise.
13443         (partial_die_parent_scope): Likewise.
13444         (peek_die_abbrev): Likewise.
13445         (process_queue): Likewise.
13446         (dwarf2_physname): Likewise.
13447         (read_namespace_alias): Likewise.
13448         (read_import_statement): Likewise.
13449         (create_dwo_cu_reader): Likewise.
13450         (create_cus_hash_table): Likewise.
13451         (lookup_dwo_cutu): Likewise.
13452         (inherit_abstract_dies): Likewise.
13453         (read_func_scope): Likewise.
13454         (read_call_site_scope): Likewise.
13455         (dwarf2_add_member_fn): Likewise.
13456         (read_common_block): Likewise.
13457         (read_module_type): Likewise.
13458         (read_typedef): Likewise.
13459         (read_subrange_type): Likewise.
13460         (load_partial_dies): Likewise.
13461         (read_partial_die): Likewise.
13462         (find_partial_die): Likewise.
13463         (read_str_index): Likewise.
13464         (dwarf2_string_attr): Likewise.
13465         (build_error_marker_type): Likewise.
13466         (lookup_die_type): Likewise.
13467         (dump_die_shallow): Likewise.
13468         (follow_die_ref): Likewise.
13469         (dwarf2_fetch_die_loc_sect_off): Likewise.
13470         (dwarf2_fetch_constant_bytes): Likewise.
13471         (follow_die_sig): Likewise.
13472         (get_signatured_type): Likewise.
13473         (get_DW_AT_signature_type): Likewise.
13474         (dwarf2_find_containing_comp_unit): Likewise.
13475         (set_die_type): Likewise.
13476
13477 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13478
13479         * arch/aarch64.c: Include "common-defs.h".
13480         * arch/amd64.c: Likewise.
13481         * arch/i386.c: Likewise.
13482
13483 2018-02-21  Tom Tromey  <tom@tromey.com>
13484
13485         * value.h: (extract_field_op): Update.
13486         * eval.c (extract_field_op): Return a const char *.
13487         * expression.h (parse_expression_for_completion): Update.
13488         * completer.c (complete_expression): Update.
13489         (add_struct_fields): Make fieldname const.
13490         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13491         (mark_completion_tag, parse_exp_in_context_1): Update.
13492         (parse_expression_for_completion): Change "name" to
13493         unique_xmalloc_ptr*.
13494
13495 2018-02-21  Tom Tromey  <tom@tromey.com>
13496
13497         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13498
13499 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13500
13501         * avr-tdep.c (avr_read_pc): Change parameter type to
13502         readable_regcache.
13503         * gdbarch.sh (read_pc): Likewise.
13504         * gdbarch.c: Re-generated.
13505         * gdbarch.h: Re-generated.
13506         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13507         readable_regcache.
13508         * ia64-tdep.c (ia64_read_pc): Likewise.
13509         * mips-tdep.c (mips_read_pc): Likewise.
13510         * spu-tdep.c (spu_read_pc): Likewise.
13511
13512 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13513
13514         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13515         * regcache-dump.c: New file.
13516         * regcache.c: Move register_dump to regcache-dump.c.
13517         (maintenance_print_registers): Likewise.
13518         (maintenance_print_raw_registers): Likewise.
13519         (maintenance_print_cooked_registers): Likewise.
13520         (maintenance_print_register_groups): Likewise.
13521         (maintenance_print_remote_registers): Likewise.
13522         (_initialize_regcache): Likewise.
13523         * regcache.h (register_dump): Moved from regcache.c.
13524
13525 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13526
13527         * regcache.c (regcache::regcache): Update.
13528         (regcache::invalidate): Move it to detached_regcache::invalidate.
13529         (get_thread_arch_aspace_regcache): Update.
13530         (regcache::raw_update): Update.
13531         (regcache::cooked_read): Remove some code.
13532         (regcache::cooked_read_value): Likewise.
13533         (regcache::raw_write): Remove assert on m_readonly_p.
13534         (regcache::raw_supply_integer): Move it to
13535         detached_regcache::raw_supply_integer.
13536         (regcache::raw_supply_zeroed): Likewise.
13537         * regcache.h (detached_regcache) <raw_supply_integer>: New
13538         declaration.
13539         <raw_supply_zeroed, invalidate>: Likewise.
13540         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13541         <invalidate>: Likewise.
13542         <m_readonly_p>: Removed.
13543
13544 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13545
13546         * infcmd.c (get_return_value): Let stop_regs point to
13547         get_current_regcache.
13548         * regcache.c (regcache::regcache): Remove.
13549         (register_dump_reg_buffer): New class.
13550         (regcache_print): Adjust.
13551         * regcache.h (regcache): Remove constructors.
13552
13553 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13554
13555         * regcache.c (class register_dump): New class.
13556         (register_dump_regcache, register_dump_none): New class.
13557         (register_dump_remote, register_dump_groups): New class.
13558         (regcache_print): Update.
13559         * regcache.h (regcache_dump_what): Move it to regcache.c.
13560         (regcache) <dump>: Remove.
13561
13562 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13563
13564         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13565          reg_buffer_rw *.
13566         (jit_unwind_reg_set_impl): Call raw_supply.
13567         (jit_frame_sniffer): Use reg_buffer_rw.
13568         * record-full.c (record_full_core_regbuf): Change its type.
13569         (record_full_core_open_1): Use reg_buffer_rw.
13570         (record_full_close): Likewise.
13571         (record_full_core_fetch_registers): Use regcache->raw_supply.
13572         (record_full_core_store_registers): Likewise.
13573         * regcache.c (regcache::get_register_status): Move it to
13574         reg_buffer.
13575         (regcache_raw_set_cached_value): Remove.
13576         (regcache::raw_set_cached_value): Remove.
13577         (regcache::raw_write): Call raw_supply.
13578         (regcache::raw_supply): Move it to reg_buffer_rw.
13579         * regcache.h (regcache_raw_set_cached_value): Remove.
13580         (reg_buffer_rw): New class.
13581
13582 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13583
13584         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13585         readonly_detached_regcache.
13586         (dummy_frame_prev_register): Use regcache->cooked_read.
13587         * frame.c (frame_save_as_regcache): Change return type.
13588         (frame_pop): Update.
13589         * frame.h (frame_save_as_regcache): Update declaration.
13590         * inferior.h (get_infcall_suspend_state_regcache): Update
13591         declaration.
13592         * infrun.c (infcall_suspend_state) <registers>: use
13593         readonly_detached_regcache.
13594         (save_infcall_suspend_state): Don't use regcache_dup.
13595         (get_infcall_suspend_state_regcache): Change return type.
13596         * linux-fork.c (struct fork_info) <savedregs>: Change to
13597         readonly_detached_regcache.
13598         <pc>: New field.
13599         (fork_save_infrun_state): Don't use regcache_dup.
13600         (info_checkpoints_command): Adjust.
13601         * mi/mi-main.c (register_changed_p): Update declaration.
13602         (mi_cmd_data_list_changed_registers): Use
13603         readonly_detached_regcache.
13604         (register_changed_p): Change parameter type to
13605         readonly_detached_regcache.
13606         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13607         readonly_detached_regcache.
13608         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13609         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13610         New.
13611         (regcache::save): Move it to reg_buffer.
13612         (regcache::restore): Change parameter type.
13613         (regcache_dup): Remove.
13614         * regcache.h (reg_buffer) <save>: New method.
13615         (readonly_detached_regcache): New class.
13616         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13617         readonly_detached_regcache.
13618         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13619
13620 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13621
13622         * frame.c (frame_save_as_regcache): Use regcache method save.
13623         (frame_pop): Use regcache method restore.
13624         * infrun.c (restore_infcall_suspend_state): Likewise.
13625         * linux-fork.c (fork_load_infrun_state): Likewise.
13626         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13627         save.
13628         * regcache.c (regcache_save): Remove.
13629         (regcache::restore): More asserts.
13630         (regcache_cpy): Remove.
13631         * regcache.h (regcache_save): Remove the declaration.
13632         (regcache::restore): Move from private to public.
13633         Remove the friend declaration of regcache_cpy.
13634         (regcache_cpy): Remove declaration.
13635
13636 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13637
13638         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13639         parameter type to 'readable_regcache *'.
13640         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13641         * arm-tdep.c (arm_neon_quad_read): Likewise.
13642         (arm_pseudo_read): Likewise.
13643         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13644         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13645         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13646         * gdbarch.c: Re-generated.
13647         * gdbarch.h: Re-generated.
13648         * gdbarch.sh (pseudo_register_read): Change parameter type to
13649         'readable_regcache *'.
13650         (pseudo_register_read_value): Likewise.
13651         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13652         (h8300_pseudo_register_read): Likewise.
13653         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13654         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13655         (i386_pseudo_register_read_into_value): Likewise.
13656         (i386_pseudo_register_read_value): Likewise.
13657         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13658         declaration.
13659         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13660         * m32c-tdep.c (m32c_raw_read): Likewise.
13661         (m32c_read_flg): Likewise.
13662         (m32c_banked_register): Likewise.
13663         (m32c_banked_read): Likewise.
13664         (m32c_sb_read): Likewise.
13665         (m32c_part_read): Likewise.
13666         (m32c_cat_read): Likewise.
13667         (m32c_r3r2r1r0_read): Likewise.
13668         (m32c_pseudo_register_read): Likewise.
13669         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13670         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13671         (mep_pseudo_cr64_read): Likewise.
13672         (mep_pseudo_register_read): Likewise.
13673         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13674         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13675         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13676         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13677         (regcache::cooked_read): Likewise.
13678         (regcache::cooked_read_value): Likewise.
13679         (regcache_cooked_read_signed):
13680         (regcache::cooked_read): Likewise.
13681         * regcache.h (readable_regcache): New class.
13682         (regcache): Inherit readable_regcache.  Move some methods to
13683         readable_regcache.
13684         * rl78-tdep.c (rl78_pseudo_register_read): Change
13685         parameter type to 'readable_regcache *'.
13686         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13687         (e500_pseudo_register_read): Change parameter type to
13688         'readable_regcache *'.
13689         (dfp_pseudo_register_read): Likewise.
13690         (vsx_pseudo_register_read): Likewise.
13691         (efpr_pseudo_register_read): Likewise.
13692         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13693         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13694         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13695         (sh64_pseudo_register_read): Likewise.
13696         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13697         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13698         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13699         (spu_pseudo_register_read): Likewise.
13700         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13701         (xtensa_pseudo_register_read): Likewise.
13702
13703 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13704
13705         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13706         (regcache::arch): Move it to reg_buffer::arch.
13707         (regcache::register_buffer): Likewise.
13708         (regcache::assert_regnum): Likewise.
13709         (regcache::num_raw_registers): Likewise.
13710         * regcache.h (reg_buffer): New class.
13711         (regcache): Inherit reg_buffer.
13712
13713 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13714
13715         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13716         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13717
13718 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13719
13720         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13721
13722 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13723
13724         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13725         (SFILES): Remove common/*.c files.
13726         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13727         * common/common.host: Add common reference.
13728         * configure.ac: Likewise.
13729         * configure: Regenerate.
13730
13731 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13732
13733         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13734         (block_initialize_namespace): Use new.
13735         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13736         (dwarf2_free_objfile): Use delete.
13737         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13738         (copy_type_recursive): Use new.
13739         * gdb_obstack.h (allocate_on_obstack): New.
13740
13741 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13742
13743         PR gdb/22849
13744         * inferior.c (exit_inferior_1): Reset inf->control.
13745
13746 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13747
13748         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13749         declaration.
13750
13751 2018-02-14  Pedro Alves  <palves@redhat.com>
13752
13753         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13754         frame_cleanup_after_sniffer on exception.
13755
13756 2018-02-14  Tom Tromey  <tom@tromey.com>
13757
13758         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13759         const.
13760         (solib_bfd_open): Make pathname const.
13761         * solib.c (solib_bfd_open): Make pathname const.
13762         * solib-spu.c (spu_bfd_fopen): Make name const.
13763         (spu_bfd_open): Make pathname const.
13764         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13765         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13766
13767 2018-02-14  Tom Tromey  <tom@tromey.com>
13768
13769         * symfile.c (symfile_bfd_open): Update.
13770         * source.h (openp, source_full_path_of, find_and_open_source):
13771         Change argument type to unique_xmalloc_ptr.
13772         * source.c (openp): Take a unique_xmalloc_ptr.
13773         (source_full_path_of, find_and_open_source): Likewise.
13774         (open_source_file, symtab_to_fullname): Update.
13775         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13776         unique_xmalloc_ptr.
13777         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13778         (exec_file_find): Update.
13779         * psymtab.c (psymtab_to_fullname): Update.
13780         * nto-tdep.h (nto_find_and_open_solib): Update.
13781         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13782         unique_xmalloc_ptr.
13783         * exec.c (exec_file_attach): Update.
13784         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13785         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13786
13787 2018-02-14  Tom Tromey  <tom@tromey.com>
13788
13789         * solib.c: Include source.h.
13790         * nto-tdep.c: Include source.h.
13791         * mi/mi-cmd-env.c: Include source.h.
13792         * infcmd.c: Include source.h.
13793         * exec.c: Include source.h.
13794         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13795         (add_path, directory_switch, source_path, init_source_path): Move
13796         declarations...
13797         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13798         (add_path, directory_switch, source_path, init_source_path):
13799         ...here.
13800
13801 2018-02-14  Tom Tromey  <tom@tromey.com>
13802
13803         * solist.h (exec_file_find, solib_find): Return
13804         unique_xmalloc_ptr.
13805         (solib_bfd_fopen): Take a const char *.
13806         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13807         (exec_file_find, solib_find): Likewise.
13808         (solib_bfd_fopen): Do not take ownership of "pathname".
13809         (solib_bfd_open): Use unique_xmalloc_ptr.
13810         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13811         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13812         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13813         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13814
13815 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13816
13817         * ada-lang.c (name_match_type_from_name): Remove reference to
13818         ada_name_for_lookup in function's documentation.
13819         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13820
13821 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13822
13823         * defs.h (enum openp_flags): New enum.
13824         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13825         Move to enum openp_flags.
13826         (openp_flags): New enum flags.
13827         (openp): Change parameter type to openp_flags.
13828         * source.c (openp): Change parameter type to openp_flags.
13829         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13830         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13831
13832 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13833
13834         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13835         per-command.
13836
13837 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13838
13839         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13840         into...
13841         (class dwarf2_queue_guard): ...the destructor of this new class.
13842         (dw2_do_instantiate_symtab): Create instance of the new class
13843         dwarf2_queue_guard, remove cleanup.
13844
13845 2018-02-09  Tom Tromey  <tom@tromey.com>
13846
13847         * source.c (find_source_lines): Don't reference past the end of
13848         the vector.
13849
13850 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13851
13852         * remote.c (remote_btrace_maybe_reopen): Change error message.
13853         * btrace.c (btrace_enable): Likewise.
13854         (parse_xml_btrace): Likewise.
13855         (parse_xml_btrace_conf): Likewise.
13856
13857 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13858
13859         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13860         (linux_enable_pt, linux_enable_bts): Call
13861         diagnose_perf_event_open_fail.
13862
13863 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13864
13865         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13866         Remove parameter and change return type.  Update callers.  Move it.
13867         (linux_enable_bts, linux_enable_pt): Improve error message.
13868         (linux_enable_pt): Remove zero buffer size check.
13869         (linux_enable_btrace): Improve error messages.  Remove NULL return
13870         check.
13871
13872 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13873
13874         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13875         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13876         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13877         (linux_supports_pt, linux_supports_btrace): Remove.
13878         (linux_enable_bts): Call cpu_supports_bts.
13879         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13880         * remote.c (remote_supports_btrace): Remove.
13881         (init_remote_ops): Remove remote_supports_btrace.
13882         * target-delegates.c: Regenerated.
13883         * target.c (target_supports_btrace): Remove.
13884         * target.h (target_ops) <to_supports_btrace>: Remove
13885         (target_supports_btrace): Remove.
13886         * x86-linux-nat.c (x86_linux_create_target): Remove
13887         linux_supports_btrace.
13888
13889 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13890
13891         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13892         btrace failed.
13893         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13894         exception and use message in own exception.
13895
13896 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13897
13898         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13899         (perf_event_pt_event_type): Use gdb_file_up.
13900         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13901         scoped_fd, and scoped_mmap.
13902
13903 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13904
13905         * common/scoped_mmap.h: New.
13906         * unittests/scoped_mmap-selftest.c: New.
13907         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13908         unittests/scoped_mmap-selftest.c.
13909
13910 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13911
13912         * common/scoped_fd.h: New.
13913         * unittests/scoped_fd-selftest.c: New.
13914         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13915         unittests/scoped_fd-selftest.c.
13916
13917 2018-02-09  Tom Tromey  <tom@tromey.com>
13918
13919         * auto-load.c (auto_load_section_scripts): Use
13920         gdb::unique_xmalloc_ptr.
13921
13922 2018-02-09  Tom Tromey  <tom@tromey.com>
13923
13924         * auto-load.c (execute_script_contents): Use std::string.
13925
13926 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13927
13928         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13929         Python function, rather than a new command.
13930
13931 2018-02-08  Tom Tromey  <tom@tromey.com>
13932
13933         * solib.c (solib_find_1): Use std::string.
13934         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13935
13936 2018-02-08  Tom Tromey  <tom@tromey.com>
13937
13938         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13939
13940 2018-02-08  Tom Tromey  <tom@tromey.com>
13941
13942         * source.c (find_source_lines): Use gdb::def_vector.
13943
13944 2018-02-08  Tom Tromey  <tom@tromey.com>
13945
13946         * macrocmd.c (struct temporary_macro_definition): New.
13947         (macro_define_command): Use temporary_macro_definition.  Remove
13948         cleanups.
13949         (free_macro_definition_ptr): Remove.
13950
13951 2018-02-08  Tom Tromey  <tom@tromey.com>
13952
13953         * macroexp.c (maybe_expand): Use std::string.
13954
13955 2018-02-08  Tom Tromey  <tom@tromey.com>
13956
13957         * macroexp.c (struct macro_buffer): Add initializers for some
13958         members.
13959         (init_buffer, init_shared_buffer, free_buffer)
13960         (free_buffer_return_text): Remove.
13961         (macro_buffer): New constructors.
13962         (~macro_buffer): New destructor.
13963         (macro_buffer::set_shared): New method.
13964         (macro_buffer::resize_buffer, macro_buffer::appendc)
13965         (macro_buffer::appendmem): Now methods, not free functions.
13966         (set_token, append_tokens_without_splicing, stringify)
13967         (macro_stringify): Update.
13968         (gather_arguments): Change return type.  Remove argc_p argument,
13969         add args_ptr argument.  Use std::vector.
13970         (substitute_args): Remove argc argument.  Accept std::vector.
13971         (expand): Update.  Use std::vector.
13972         (scan, macro_expand, macro_expand_next): Update.
13973
13974 2018-02-08  Tom Tromey  <tom@tromey.com>
13975
13976         * symtab.c (default_collect_symbol_completion_matches_break_on):
13977         Use unique_xmalloc_ptr.
13978         * macroscope.h: (sal_macro_scope, user_macro_scope)
13979         (default_macro_scope): Return unique_xmalloc_ptr.
13980         * macroscope.c (sal_macro_scope, user_macro_scope)
13981         (default_macro_scope): Return unique_xmalloc_ptr.
13982         * macroexp.h (macro_expand, macro_expand_once): Return
13983         unique_xmalloc_ptr.
13984         * macroexp.c (macro_expand, macro_expand_once): Return
13985         unique_xmalloc_ptr.
13986         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13987         (info_macro_command, info_macros_command): Use
13988         unique_xmalloc_ptr.
13989         * compile/compile-c-support.c (write_macro_definitions): Use
13990         unique_xmalloc_ptr.
13991         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13992
13993 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13994
13995         * value.c (value_static_field): Assign field type instead of
13996         containing type when returning an optimized out value.
13997
13998 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13999
14000         * ft32-tdep.c (ft32_read_pc): Remove.
14001         (ft32_write_pc): Remove.
14002         (ft32_gdbarch_init): Update.
14003         * m32r-tdep.c (m32r_read_pc): Remove.
14004         (m32r_gdbarch_init): Update.
14005         * mep-tdep.c (mep_read_pc): Remove.
14006         (mep_gdbarch_init): Update.
14007         * microblaze-tdep.c (microblaze_write_pc): Remove.
14008         (microblaze_gdbarch_init): Update.
14009         * mn10300-tdep.c (mn10300_read_pc): Remove.
14010         (mn10300_write_pc): Remove.
14011         (mn10300_gdbarch_init): Update.
14012         * moxie-tdep.c (moxie_read_pc): Remove.
14013         (moxie_write_pc): Remove.
14014         (moxie_gdbarch_init): Update.
14015
14016 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14017
14018         * expprint.c (print_subexp_standard): Handle
14019         OP_F77_UNDETERMINED_ARGLIST.
14020         (dump_subexp_body_standard): Likewise.
14021
14022 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14023
14024         * target-descriptions.c (tdesc_element_visitor) Add empty
14025         implementations.
14026         (tdesc_type): Move make_gdb_type from here.
14027         (tdesc_type_builtin): Likewise.
14028         (tdesc_type_vector): Likewise.
14029         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14030         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14031         (make_gdb_type_union): Likewise.
14032         (make_gdb_type_flags): Likewise.
14033         (make_gdb_type_enum): Likewise.
14034         (make_gdb_type): New function.
14035         (tdesc_register_type): Use static make_gdb_type.
14036
14037 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14038
14039         * infcmd.c (default_print_one_register_info): Align natural-format
14040         column values consistently one under another.
14041         (pad_to_column): New function.
14042
14043 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14044
14045         * dwarf2read.c (dwarf2_physname): Move commment.
14046
14047 2018-02-01  Leszek Swirski  <leszeks@google.com>
14048
14049         * varobj.c (varobj_formatted_print_options): Allow recursive
14050         pretty printing if pretty printing is enabled.
14051
14052 2018-02-01  Leszek Swirski  <leszeks@google.com>
14053
14054         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14055         names after a structop as a filename.
14056
14057 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14058
14059         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14060         (arm_record_coproc_data_proc): Likewise.
14061
14062 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14063
14064         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14065
14066 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14067
14068         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14069         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14070
14071 2018-01-31  Pedro Alves  <palves@redhat.com>
14072
14073         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14074         * inflow.c (child_terminal_save_inferior): Wrap reference to
14075         tcgetpgrp in HAVE_TERMIOS_H.
14076         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14077         _WIN32.
14078         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14079         always iterate over all inferiors.
14080         (gdbsim_cntrl_c): Adjust.
14081         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14082
14083 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14084
14085         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14086         index type is objfile-owned if the element type is as well.
14087
14088 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14089
14090         GDB 8.1 released.
14091
14092 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14093
14094         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14095         "features/s390x-linux64.c".
14096         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14097         s390_linux32 and s390x_linux64.
14098         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14099         default tdesc.
14100         * s390-tdep.c: Include "features/s390-linux32.c" and
14101         "features/s390x-linux64.c".
14102         (s390_tdesc_valid): Add check for tdesc_has_registers.
14103         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14104         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14105         tdesc_s390x_linux64.
14106         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14107         tdesc_s390x_linux64 to...
14108         * s390-tdep.h: ...here.
14109
14110 2018-01-30  Pedro Alves  <palves@redhat.com>
14111
14112         PR gdb/13211
14113         * config.in, configure: Regenerate.
14114         * configure.ac: Check for getpgid.
14115         * go32-nat.c (go32_pass_ctrlc): New.
14116         (go32_target): Install it.
14117         * inf-child.c (inf_child_target): Install
14118         child_terminal_save_inferior, child_pass_ctrlc and
14119         child_interrupt.
14120         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14121         (inf_ptrace_target): No longer install it.
14122         * infcmd.c (interrupt_target_1): Adjust.
14123         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14124         (child_interrupt): Declare.
14125         (inferior::terminal_state): New.
14126         * inflow.c (struct terminal_info): Update comments.
14127         (inferior_process_group): Delete.
14128         (terminal_is_ours): Delete.
14129         (gdb_tty_state): New.
14130         (child_terminal_init): Adjust.
14131         (is_gdb_terminal, sharing_input_terminal_1)
14132         (sharing_input_terminal): New functions.
14133         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14134         Set the process's actual process group in the foreground if
14135         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14136         mark terminal as the inferior's if not sharing GDB's terminal.
14137         Don't check attach_flag.
14138         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14139         pass down a target_terminal_state.
14140         (child_terminal_save_inferior): New, factored out from ...
14141         (child_terminal_ours_1): ... this.  Handle
14142         target_terminal_state::is_ours_for_output.
14143         (child_interrupt, child_pass_ctrlc): New.
14144         (inflow_inferior_exit): Clear the inferior's terminal_state.
14145         (copy_terminal_info): Copy the inferior's terminal state.
14146         (_initialize_inflow): Remove reference to terminal_is_ours.
14147         * inflow.h (inferior_process_group): Delete.
14148         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14149         * procfs.c (procfs_target): Don't install procfs_interrupt.
14150         (procfs_interrupt): Delete.
14151         * remote.c (remote_serial_quit_handler): Adjust.
14152         (remote_interrupt): Remove ptid parameter.  Adjust.
14153         * target-delegates.c: Regenerate.
14154         * target.c: Include "terminal.h".
14155         (target_terminal::terminal_state): Rename to ...
14156         (target_terminal::m_terminal_state): ... this.
14157         (target_terminal::init): Adjust.
14158         (target_terminal::inferior): Adjust to per-inferior
14159         terminal_state.
14160         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14161         (target_terminal::ours, target_terminal::ours_for_output): Use
14162         target_terminal_is_ours_kind.
14163         (target_interrupt): Remove ptid parameter.  Adjust.
14164         (default_target_pass_ctrlc): Adjust.
14165         * target.h (target_ops::to_terminal_save_inferior): New field.
14166         (target_ops::to_interrupt): Remove ptid_t parameter.
14167         (target_interrupt): Remove ptid_t parameter.  Update comment.
14168         (target_pass_ctrlc): Update comment.
14169         * target/target.h (target_terminal_state): New scoped enum,
14170         factored out of ...
14171         (target_terminal::terminal_state): ... here.
14172         (target_terminal::inferior): Update comments.
14173         (target_terminal::restore_inferior): New.
14174         (target_terminal::is_inferior, target_terminal::is_ours)
14175         (target_terminal::is_ours_for_output): Adjust.
14176         (target_terminal::scoped_restore_terminal_state): Adjust to
14177         rename, and call restore_inferior() instead of inferior().
14178         (target_terminal::scoped_restore_terminal_state::m_state): Change
14179         type.
14180         (target_terminal::terminal_state): Rename to ...
14181         (target_terminal::m_terminal_state): ... this and change type.
14182
14183 2018-01-30  Pedro Alves  <palves@redhat.com>
14184
14185         * linux-nat.c (wait_for_signal): New function.
14186         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14187         directly.
14188         (async_terminal_is_ours)
14189         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14190         (linux_nat_add_target): Don't override
14191         to_terminal_inferior/to_terminal_ours.
14192
14193 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14194
14195         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14196
14197 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14198
14199         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14200         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14201         dwarf2_per_objfile_free here.
14202         (dwarf2_per_objfile_free): Remove.
14203         (_initialize_dwarf2_read): Don't register
14204         dwarf2_per_objfile_free as a registry cleanup.
14205
14206 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14207
14208         Avoid compilation errors in MinGW native builds
14209
14210         The error is triggered by including python-internal.h, and the
14211         error message is:
14212
14213              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14214                       from build-gnulib/import/math.h:27,
14215                       from d:/usr/Python26/include/pyport.h:235,
14216                       from d:/usr/Python26/include/Python.h:58,
14217                       from python/python-internal.h:94,
14218                       from python/py-arch.c:24:
14219              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14220         using ::hypot;
14221                 ^~~~~
14222
14223         This happens because Python headers define 'hypot' to expand t
14224         '_hypot' in the Windows builds.
14225         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14226         'hypoth'.  This avoids a compilation error.
14227
14228 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14229
14230         * MAINTAINERS (Write After Approval): Fix ordering.
14231
14232 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14233
14234         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14235
14236 2018-01-26  Alan Modra  <amodra@gmail.com>
14237
14238         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14239         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14240         Remove nop.  Make const.  Comment.
14241         (powerpc32_plt_stub_so_2): New.
14242         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14243         Correct count.  Update uses.
14244         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14245         Move common code reading PLT entry word.  Correct
14246         powerpc32_plt_stub PLT address calculation.
14247         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14248         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14249         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14250         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14251         (ppc64_standard_linkage8): Likewise.
14252         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14253         Correct insns description.
14254         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14255
14256 2018-01-24  Pedro Alves  <palves@redhat.com>
14257
14258         GCC PR libstdc++/83906
14259         * gdbtypes.c (operator==(const dynamic_prop &,
14260         const dynamic_prop &)): New.
14261         (operator==(const range_bounds &, const range_bounds &)): New.
14262         (check_types_equal): Use them instead of memcmp.
14263         * gdbtypes.h (operator==(const dynamic_prop &,
14264         const dynamic_prop &)): Declare.
14265         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14266         (operator==(const range_bounds &, const range_bounds &)): Declare.
14267         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14268
14269 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14270
14271         * s390-linux-tdep.c (s390_record_address_mask)
14272         (s390_record_calc_disp_common, s390_record_calc_disp)
14273         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14274         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14275         (s390_process_record): Move to s390-tdep.c.
14276         (s390_linux_init_abi_any): Adjust.
14277         * s390-tdep.c (s390_record_address_mask)
14278         (s390_record_calc_disp_common, s390_record_calc_disp)
14279         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14280         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14281         (s390_process_record): Moved from s390-linux-tdep.c
14282         (s390_gdbarch_init): Adjust.
14283
14284 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14285
14286         * s390-linux-nat.c (s390-tdep.h): New include.
14287         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14288         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14289         (ALLDEPFILES): Add s390-tdep.c.
14290         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14291         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14292         * s390-tdep.h: ...this.  New file.
14293         * s390-linux-tdep.c (s390-tdep.h): New include.
14294         (_initialize_s390_tdep): Rename to...
14295         (_initialize_s390_linux_tdep): ...this and adjust.
14296         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14297         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14298         s390-tdep.h.
14299         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14300         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14301         (s390_is_partial_instruction, s390_software_single_step)
14302         (is_non_branch_ril, s390_displaced_step_copy_insn)
14303         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14304         (s390_prologue_data, s390_addr, s390_store, s390_load)
14305         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14306         (s390_register_call_saved, s390_guess_tracepoint_registers)
14307         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14308         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14309         (s390_pseudo_register_name, s390_pseudo_register_type)
14310         (s390_pseudo_register_read, s390_pseudo_register_write)
14311         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14312         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14313         (s390_addr_bits_remove, s390_address_class_type_flags)
14314         (s390_address_class_type_flags_to_name)
14315         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14316         (s390_function_arg_float, s390_function_arg_vector)
14317         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14318         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14319         (s390_frame_align, s390_register_return_value, s390_return_value)
14320         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14321         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14322         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14323         (s390_trad_frame_prev_register, s390_unwind_cache)
14324         (s390_prologue_frame_unwind_cache)
14325         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14326         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14327         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14328         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14329         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14330         (s390_frame_base_address, s390_local_base_address)
14331         (s390_frame_base, s390_gcc_target_options)
14332         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14333         (s390_validate_reg_range, s390_tdesc_valid)
14334         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14335         * s390-tdep.c: ...this.  New file.
14336
14337 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14338
14339         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14340         (s390_process_record, s390_gdbarch_tdep_alloc)
14341         (s390_linux_init_abi_any): Use/set new hook.
14342
14343 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14344
14345         * s390-linux-tdep.c (osabi.h): New include.
14346         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14347         (s390_linux_init_abi_any): New functions.
14348         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14349
14350 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14351
14352         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14353         tdesc_has_registers check
14354
14355 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14356
14357         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14358         (s390_validate_reg_range): New macro.
14359         (s390_gdbarch_init): Adjust.
14360
14361 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14362
14363         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14364         (s390_gdbarch_tdep_alloc): Adjust.
14365         (s390_gdbarch_init): Adjust.
14366
14367 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14368
14369         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14370         <have_tdb>: Change type to bool.
14371         (s390_gdbarch_tdep_alloc): Adjust.
14372         (s390_gdbarch_init): Adjust.
14373
14374 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14375
14376         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14377         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14378         (s390_gdbarch_tdep_alloc): New function.
14379         (s390_gdbarch_init): Allocate tdep at start and use its fields
14380         instead of separate variables.
14381
14382 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14383
14384         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14385         when looking for cached gdbarch and add comment for remaining.
14386
14387 2018-01-22  Pedro Alves  <palves@redhat.com>
14388             Sergio Durigan Junior  <sergiodj@redhat.com>
14389
14390         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14391         case.
14392
14393 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14394
14395         * MAINTAINERS: Update my company e-mail address.
14396
14397 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14398
14399         * regcache.c (cooked_write_test): New function.
14400         (_initialize_regcache): Register the test.
14401
14402 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14403
14404         * ia64-tdep.c (ia64_pseudo_register_read): Call
14405         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14406         * m32c-tdep.c (m32c_cat_read): Likewise.
14407         (m32c_r3r2r1r0_read): Likewise.
14408         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14409         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14410
14411 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14412
14413         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14414         method raw_read instead of regcache_raw_read.
14415         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14416         * arm-tdep.c (arm_neon_quad_read): Likewise.
14417         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14418         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14419         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14420         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14421         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14422         (i386_pseudo_register_read_into_value): Likewise.
14423         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14424         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14425         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14426         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14427         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14428         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14429         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14430         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14431         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14432
14433 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14434
14435         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14436         * configure.tgt: Remove target mt.
14437         * mt-tdep.c: Remove.
14438         * regcache.c (cooked_read_test): Remove the check for mt.
14439
14440 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14441
14442         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14443         instead of gdbarch_pseudo_register_read_value.
14444
14445 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14446
14447         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14448         language is Ada.
14449
14450 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14451
14452         * linespec.c (create_sals_line_offset): Remove code that preserved
14453         the symtab_and_line's line number.
14454
14455 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14456
14457         * varobj.c (varobj_create): Don't set valid_block when creating a
14458         floating varobj.
14459
14460 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14461
14462         * varobj.c (varobj_create): Remove out of date comment.
14463
14464 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14465
14466         PR mi/20395
14467         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14468         updating innermost block.
14469         * parse.c (innermost_block_tracker::update): Take extra type
14470         parameter, and check types match before updating innermost block.
14471         (write_dollar_variable): Update innermost block for registers.
14472         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14473         (innermost_block_tracker::innermost_block_tracker): Initialise
14474         m_types member.
14475         (innermost_block_tracker::reset): Take type parameter.
14476         (innermost_block_tracker::update): Take type parameter, and pass
14477         type through as needed.
14478         (innermost_block_tracker::m_types): New member.
14479         * varobj.c (varobj_create): Pass type when reseting innermost
14480         block.
14481
14482 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14483
14484         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14485         * ada-lang.c (resolve_subexp): Likewise.
14486         * breakpoint.c (set_breakpoint_condition) Likewise.
14487         (watch_command_1) Likewise.
14488         * c-exp.y (variable): Likewise.
14489         * d-exp.y (PrimaryExpression): Likewise.
14490         * f-exp.y (variable): Likewise.
14491         * go-exp.y (variable): Likewise.
14492         * m2-exp.y (variable): Likewise.
14493         * objfiles.c (objfile::~objfile): Likewise.
14494         * p-exp.y (variable): Likewise.
14495         * parse.c (innermost_block): Change type.
14496         * parser-defs.h (class innermost_block_tracker): New.
14497         (innermost_block): Change to innermost_block_tracker.
14498         * printcmd.c (display_command): Switch to innermost_block API.
14499         (do_one_display): Likewise.
14500         * rust-exp.y (do_one_display): Likewise.
14501         * symfile.c (clear_symtab_users): Likewise.
14502         * varobj.c (varobj_create): Switch to innermost_block API, replace
14503         use of innermost_block with block stored on varobj object.
14504
14505 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14506
14507         * expression.h (innermost_block): Remove declaration.
14508         * varobj.c: Add 'parser-defs.h' include.
14509
14510 2018-01-19  Tom Tromey  <tom@tromey.com>
14511
14512         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14513         symbols in the static and global blocks.
14514
14515 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14516
14517         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14518         gdb_ptrace.h, and move including gdb_wait.h ...
14519         * nat/linux-ptrace.h: ... to here.
14520
14521 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14522
14523         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14524         inf_ptrace_detach_success.
14525         (inf_ptrace_detach_success): Add inferior parameter, use it
14526         instead of inferior_ptid, pass it to detach_inferior.
14527         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14528         parameter.
14529         * inferior.c (detach_inferior): Add overload that takes an
14530         inferior object.
14531         * inferior.h (detach_inferior): Likewise.
14532         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14533         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14534         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14535
14536 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14537
14538         * target.h (struct target_ops) <to_detach>: Add inferior
14539         parameter.
14540         (target_detach): Likewise.
14541         * target.c (dispose_inferior): Pass inferior down.
14542         (target_detach): Pass inferior down.  Assert that it is equal to
14543         the current inferior.
14544         * aix-thread.c (aix_thread_detach): Pass inferior down.
14545         * corefile.c (core_file_command): Pass current_inferior() down.
14546         * corelow.c (core_detach): Add inferior parameter.
14547         * darwin-nat.c (darwin_detach): Likewise.
14548         * gnu-nat.c (gnu_detach): Likewise.
14549         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14550         * infcmd.c (detach_command): Pass current_inferior() down to
14551         target_detach.
14552         * infrun.c (follow_fork_inferior): Pass parent_inf to
14553         target_detach.
14554         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14555         target_detach.
14556         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14557         * linux-thread-db.c (thread_db_detach): Likewise.
14558         * nto-procfs.c (procfs_detach): Likewise.
14559         * procfs.c (procfs_detach): Likewise.
14560         * record.c (record_detach): Likewise.
14561         * record.h (struct inferior): Forward-declare.
14562         (record_detach): Add inferior parameter.
14563         * remote-sim.c (gdbsim_detach): Likewise.
14564         * remote.c (remote_detach_1): Likewise.
14565         (remote_detach): Likewise.
14566         (extended_remote_detach): Likewise.
14567         * sol-thread.c (sol_thread_detach): Likewise.
14568         * target-debug.h (target_debug_print_inferior_p): New macro.
14569         * target-delegates.c: Re-generate.
14570         * top.c (kill_or_detach): Pass inferior down to target_detach.
14571         * windows-nat.c (windows_detach): Add inferior parameter.
14572
14573 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14574
14575         * target.h (struct target_ops) <to_detach>: Remove args
14576         parameter.
14577         (target_detach): Likewise.
14578         * target.c (dispose_inferior): Adjust.
14579         (target_detach): Remove args parameter, adjust.
14580         * aix-thread.c (aix_thread_detach): Adjust.
14581         * corefile.c (core_file_command): Adjust.
14582         * corelow.c (core_detach): Adjust.
14583         * darwin-nat.c (darwin_detach): Adjust.
14584         * gnu-nat.c (gnu_detach): Adjust.
14585         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14586         * infcmd.c (detach_command): Adjust
14587         * infrun.c (follow_fork_inferior): Adjust.
14588         (handle_vfork_child_exec_or_exit): Adjust.
14589         * linux-fork.c (linux_fork_detach): Remove args parameter.
14590         * linux-fork.h (linux_fork_detach): Likewise.
14591         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14592         * linux-thread-db.c (thread_db_detach): Likewise.
14593         * nto-procfs.c (procfs_detach): Likewise.
14594         * procfs.c (procfs_detach): Likewise.
14595         (do_detach): Remove signo parameter.
14596         * record.c (record_detach): Remove args parameter.
14597         * record.h (record_detach): Likewise.
14598         * remote-sim.c (gdbsim_detach): Likewise.
14599         * remote.c (remote_detach_1): Likewise.
14600         (remote_detach): Likewise.
14601         (extended_remote_detach): Likewise.
14602         * sol-thread.c (sol_thread_detach): Likewise.
14603         * target-delegates.c: Re-generate.
14604         * top.c (struct qt_args) <args>: Remove field.
14605         (kill_or_detach): Don't pass args.
14606         (quit_force): Don't set args.
14607         * windows-nat.c (windows_detach): Remove args parameter.
14608
14609 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14610
14611         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14612         (arm_linux_init_abi): Install it.
14613
14614 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14615
14616         * osabi.c (gdb_osabi_names): Extend the regexp for
14617         arm-linux-gnueabihf.
14618
14619 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14620
14621         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14622         m_abbrevs.
14623         (abbrev_table::add_abbrev): Update.
14624         (abbrev_table::lookup_abbrev): Update.
14625
14626 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14627
14628         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14629
14630 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14631
14632         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14633         to "std::string".
14634
14635 2018-01-17  Tom Tromey  <tom@tromey.com>
14636
14637         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14638
14639 2018-01-17  Tom Tromey  <tom@tromey.com>
14640
14641         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14642         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14643         (create_array_type_with_stride): Update.
14644         * dwarf2read.c (set_die_type): Update.
14645
14646 2018-01-17  Tom Tromey  <tom@tromey.com>
14647
14648         * dwarf2read.c (delayed_method_info): Remove typedef.
14649         (dwarf2_cu::method_info): Now a std::vector.
14650         (add_to_method_list): Update.
14651         (free_delayed_list): Remove.
14652         (compute_delayed_physnames): Update.
14653         (process_full_comp_unit, process_full_type_unit): Clear the method
14654         list.  Remove cleanups.
14655         (psymtab_include_file_name): Add name_holder parameter.  Use
14656         unique_xmalloc_ptr.
14657         (dwarf_decode_lines): Update.
14658
14659 2018-01-17  Tom Tromey  <tom@tromey.com>
14660             Simon Marchi  <simon.marchi@ericsson.com>
14661
14662         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14663         (dwarf2_per_objfile::free_cached_comp_units)
14664         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14665         (init_cutu_and_read_dies_no_follow): Update.
14666         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14667         (dwarf2_cu::~dwarf2_cu): New.
14668         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14669         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14670
14671 2018-01-17  Tom Tromey  <tom@tromey.com>
14672             Simon Marchi  <simon.marchi@ericsson.com>
14673
14674         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14675         (struct die_reader_specs) <abbrev_table>: New member.
14676         (struct abbrev_table): Add constructor.
14677         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14678         <abbrev_obstack>: Now an auto_obstack.
14679         (abbrev_table_up): New typedef.
14680         (init_cu_die_reader): Add abbrev_table parameter.
14681         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14682         Add result_dwo_abbrev_table.
14683         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14684         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14685         Update.
14686         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14687         parameter.
14688         (skip_children): Update.
14689         (abbrev_table::alloc_abbrev): Rename from
14690         abbrev_table_alloc_abbrev.
14691         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14692         (abbrev_table::lookup_abbrev): Rename from
14693         abbrev_table_lookup_abbrev.
14694         (abbrev_table_read_table): Return abbrev_table_up.
14695         (abbrev_table_free, abbrev_table_free_cleanup)
14696         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14697         (load_partial_dies): Update.
14698
14699 2018-01-17  Tom Tromey  <tom@tromey.com>
14700
14701         * dwarf2read.c (dwarf2_compute_name): Update comment.
14702         (read_func_scope, read_variable): Update.
14703         (new_symbol): Remove.
14704         (new_symbol_full): Rename to new_symbol.
14705
14706 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14707
14708         PR gdb/16577
14709         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14710         a warning instead of throwing an error, set section size to 0 and return
14711         NULL.
14712         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14713
14714 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14715
14716         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14717         std::string.
14718         (linux_ptrace_attach_fail_reason_string): Likewise.
14719         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14720         Likewise.
14721         (linux_ptrace_attach_fail_reason_string): Likewise.
14722         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14723
14724 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14725
14726         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14727
14728 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14729
14730         PR gdb/21559
14731         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14732         checking for fs_base/gs_base fields in struct user_regs_struct.
14733         * configure: Regenerate.
14734
14735 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14736
14737         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14738         function.
14739         (aarch64_linux_init_abi): Install it to gdbarch hook
14740         gcc_target_options.
14741
14742 2018-01-15  Pedro Alves  <palves@redhat.com>
14743
14744         * common/signals-state-save-restore.c
14745         (save_original_signals_state): Fix typos.
14746
14747 2017-01-12  Tom Tromey  <tom@tromey.com>
14748             Sergio Durigan Junior  <sergiodj@redhat.com>
14749
14750         * Makefile.in (install-only): Install gdb-add-index.
14751
14752 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14753
14754         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14755
14756 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14757
14758         * infrun.c (keep_going_pass_signal): Clear step-over info when
14759         insert_breakpoints fails.
14760
14761 2018-01-11  Pedro Alves  <palves@redhat.com>
14762
14763         PR gdb/22583
14764         * infrun.c (resume): Rename to ...
14765         (resume_1): ... this.
14766         (resume): Reimplement as wrapper around resume_1.
14767
14768 2018-01-11  Pedro Alves  <palves@redhat.com>
14769
14770         PR remote/22597
14771         * remote.c (remote_parse_stop_reply): Default to the last-set
14772         general thread instead of to 'magic_null_ptid'.
14773
14774 2018-01-10  Pedro Alves  <palves@redhat.com>
14775
14776         * language.h (language_get_symbol_name_matcher): Rename ...
14777         (get_symbol_name_matcher): ... this.
14778         * language.c (language_get_symbol_name_matcher): Ditto.
14779         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14780         callers adjusted.
14781
14782 2018-01-10  Pedro Alves  <palves@redhat.com>
14783
14784         PR gdb/22670
14785         * dwarf2read.c
14786         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14787         Adjust to use language_get_symbol_name_matcher instead of
14788         language_defn::la_get_symbol_name_matcher.
14789         * language.c (language_get_symbol_name_matcher): If in Ada mode
14790         and the lookup name is a verbatim match, return Ada's matcher.
14791         * language.h (language_get_symbol_name_matcher): Adjust comment.
14792         (ada_lookup_name_info::verbatim_p):: New method.
14793
14794 2018-01-10  Pedro Alves  <palves@redhat.com>
14795
14796         PR gdb/22670
14797         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14798         minsym's language is language_auto or language_cplus, pass down
14799         language_ada instead.
14800         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14801
14802 2018-01-10  Pedro Alves  <palves@redhat.com>
14803
14804         PR gdb/22670
14805         * minsyms.c (linkage_name_str): New function.
14806         (iterate_over_minimal_symbols): Use it.
14807
14808 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14809
14810         * NEWS: Document that 'info proc' now works on FreeBSD.
14811
14812 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14813
14814         * configure.ac: Check for kinfo_getfile in libutil.
14815         * configure: Regenerate.
14816         * config.in: Regenerate.
14817         * fbsd-nat.c: Include "fbsd-tdep.h".
14818         (fbsd_fetch_cmdline): New.
14819         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14820         rather than calling error.
14821         (fbsd_info_proc): New.
14822         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14823         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14824         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14825
14826 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14827
14828         * fbsd-nat.c (struct free_deleter): Remove.
14829         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14830
14831 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14832
14833         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14834         NULL for an empty pathname.
14835
14836 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14837
14838         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14839         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14840         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14841         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14842         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14843         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14844         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14845         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14846         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14847         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14848         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14849         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14850         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14851         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14852         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14853
14854 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14855
14856         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14857         (gnu_xfer_auxv): New function.
14858         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14859         TARGET_OBJECT_AUXV.
14860
14861 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14862             Simon Marchi  <simon.marchi@ericsson.com>
14863
14864         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14865         common/selftest.c.
14866         (COMMON_OBS): Remove selftest.o.
14867         * configure.ac: Append selftest-arch.c and common/selftest.c to
14868         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14869         * configure: Re-generated.
14870         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14871         GDB_SELF_TEST.
14872         (maintenance_info_selftests): Likewise.
14873
14874 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14875
14876         * ada-valprint.c (val_print_packed_array_elements): Use
14877         proper number of elements when printing an array indexed
14878         by an enumeration type.
14879
14880 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14881
14882         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14883         (dw2_get_file_names_reader): Adjust.
14884         (lookup_dwo_signatured_type): Adjust.
14885         (lookup_dwp_signatured_type): Adjust.
14886         (lookup_signatured_type): Adjust.
14887         (create_type_unit_group): Adjust.
14888         (get_type_unit_group): Adjust.
14889         (process_psymtab_comp_unit_reader): Adjust.
14890         (build_type_psymtabs_reader): Adjust.
14891         (scan_partial_symbols): Adjust.
14892         (add_partial_symbol): Adjust.
14893         (add_partial_subprogram): Adjust.
14894         (peek_die_abbrev): Adjust.
14895         (fixup_go_packaging): Adjust.
14896         (process_imported_unit_die): Adjust.
14897         (dwarf2_compute_name): Adjust.
14898         (dwarf2_physname): Adjust.
14899         (read_import_statement): Adjust.
14900         (handle_DW_AT_stmt_list): Adjust.
14901         (read_file_scope): Adjust.
14902         (read_func_scope): Adjust.
14903         (read_lexical_block_scope): Adjust.
14904         (read_call_site_scope): Adjust.
14905         (read_variable): Adjust.
14906         (dwarf2_rnglists_process): Adjust.
14907         (dwarf2_ranges_process): Adjust.
14908         (dwarf2_ranges_read): Adjust.
14909         (dwarf2_get_pc_bounds): Adjust.
14910         (dwarf2_record_block_ranges): Adjust.
14911         (dwarf2_add_field): Adjust.
14912         (dwarf2_add_member_fn): Adjust.
14913         (read_structure_type): Adjust.
14914         (process_structure_scope): Adjust.
14915         (read_enumeration_type): Adjust.
14916         (read_array_type): Adjust.
14917         (mark_common_block_symbol_computed): Adjust.
14918         (read_common_block): Adjust.
14919         (read_namespace_type): Adjust.
14920         (read_namespace): Adjust.
14921         (read_module_type): Adjust.
14922         (read_tag_pointer_type): Adjust.
14923         (read_tag_ptr_to_member_type): Adjust.
14924         (read_tag_string_type): Adjust.
14925         (read_subroutine_type): Adjust.
14926         (read_typedef): Adjust.
14927         (read_base_type): Adjust.
14928         (attr_to_dynamic_prop): Adjust.
14929         (read_subrange_type): Adjust.
14930         (read_unspecified_type): Adjust.
14931         (dwarf2_read_abbrevs): Adjust.
14932         (load_partial_dies): Adjust.
14933         (read_partial_die): Adjust.
14934         (find_partial_die): Adjust.
14935         (guess_partial_die_structure_name): Adjust.
14936         (fixup_partial_die): Adjust.
14937         (read_attribute_value): Adjust.
14938         (read_addr_index): Adjust.
14939         (read_addr_index_from_leb128): Adjust.
14940         (read_str_index): Adjust.
14941         (dwarf2_string_attr): Adjust.
14942         (get_debug_line_section): Adjust.
14943         (dwarf_decode_line_header): Adjust.
14944         (lnp_state_machine::check_line_address): Adjust.
14945         (dwarf_decode_lines_1): Adjust.
14946         (dwarf_decode_lines): Adjust.
14947         (dwarf2_start_symtab): Adjust.
14948         (var_decode_location): Adjust.
14949         (new_symbol_full): Adjust.
14950         (dwarf2_const_value_data): Adjust.
14951         (dwarf2_const_value_attr): Adjust.
14952         (dwarf2_const_value): Adjust.
14953         (die_type): Adjust.
14954         (die_containing_type): Adjust.
14955         (build_error_marker_type): Adjust.
14956         (lookup_die_type): Adjust.
14957         (guess_full_die_structure_name): Adjust.
14958         (anonymous_struct_prefix): Adjust.
14959         (determine_prefix): Adjust.
14960         (dwarf2_name): Adjust.
14961         (follow_die_ref_or_sig): Adjust.
14962         (follow_die_offset): Adjust.
14963         (follow_die_ref): Adjust.
14964         (follow_die_sig_1): Adjust.
14965         (follow_die_sig): Adjust.
14966         (get_signatured_type): Adjust.
14967         (get_DW_AT_signature_type): Adjust.
14968         (decode_locdesc): Adjust.
14969         (dwarf_decode_macros): Adjust.
14970         (cu_debug_loc_section): Adjust.
14971         (fill_in_loclist_baton): Adjust.
14972         (dwarf2_symbol_mark_computed): Adjust.
14973         (init_one_comp_unit): Don't assign
14974         dwarf2_cu::dwarf2_per_objfile.
14975         (set_die_type): Adjust.
14976
14977 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14978
14979         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14980         <dwarf2_per_objfile>: New field.
14981         (dwarf2_per_objfile): Remove global.
14982         (get_dwarf2_per_objfile): New function.
14983         (set_dwarf2_per_objfile): New function.
14984         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14985         dwarf2_per_objfile.
14986         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14987         (read_abbrev_offset): Likewise.
14988         (read_indirect_string): Likewise.
14989         (read_indirect_line_string): Likewise.
14990         (read_indirect_string_at_offset): Likewise.
14991         (read_indirect_string_from_dwz): Likewise.
14992         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14993         dwarf2_per_objfile.
14994         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14995         (create_all_comp_units): Change objfile parameter to
14996         dwarf2_per_objfile.
14997         (create_all_type_units): Likewise.
14998         (process_queue): Add dwarf2_per_objfile parameter.
14999         (read_and_check_comp_unit_head): Likewise.
15000         (lookup_dwo_unit_in_dwp): Likewise.
15001         (get_dwp_file): Likewise.
15002         (process_cu_includes): Likewise.
15003         (struct free_dwo_file_cleanup_data): New struct.
15004         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15005         set_dwarf2_per_objfile.
15006         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15007         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15008         context, adjust calls.
15009         (dw2_instantiate_symtab): Likewise.
15010         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15011         (dw2_get_cu): Likewise.
15012         (create_cu_from_index_list): Change objfile parameter to
15013         dwarf2_per_objfile.
15014         (create_cus_from_index_list): Get dwarf2_per_objfile from
15015         context, adjust calls.
15016         (create_cus_from_index): Likewise.
15017         (create_signatured_type_table_from_index): Change objfile
15018         parameter to dwarf2_per_objfile.
15019         (create_signatured_type_table_from_debug_names): Change objfile
15020         parameter to dwarf2_per_objfile.
15021         (create_addrmap_from_index): Likewise.
15022         (create_addrmap_from_aranges): Likewise.
15023         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15024         (dw2_setup): Remove.
15025         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15026         context.
15027         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15028         get_dwarf2_per_objfile.
15029         (dw2_forget_cached_source_info): Likewise.
15030         (dw2_map_symtabs_matching_filename): Likewise.
15031         (struct dw2_symtab_iterator) <index>: Remove.
15032         <dwarf2_per_objfile>: New field.
15033         (dw2_symtab_iter_init): Replace index parameter with
15034         dwarf2_per_objfile.
15035         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15036         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15037         (dw2_print_stats): Likewise.
15038         (dw2_dump): Likewise.
15039         (dw2_expand_symtabs_for_function): Likewise.
15040         (dw2_expand_all_symtabs): Likewise.
15041         (dw2_expand_symtabs_with_fullname): Likewise.
15042         (dw2_expand_marked_cus): Replace index and objfile parameters
15043         with dwarf2_per_objfile.
15044         (dw_expand_symtabs_matching_file_matcher): Add
15045         dwarf2_per_objfile parameter and adjust calls.
15046         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15047         adjust calls.
15048         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15049         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15050         adjust calls.
15051         (create_cus_from_debug_names_list): Replace objfile parameter
15052         with dwarf2_per_objfile and adjust calls.
15053         (create_cus_from_debug_names): Likewise.
15054         (dwarf2_read_debug_names): Likewise.
15055         (mapped_debug_names::namei_to_name): Adjust call.
15056         (dw2_debug_names_iterator::next): Likewise.
15057         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15058         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15059         (dw2_debug_names_dump): Likewise.
15060         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15061         (dw2_debug_names_expand_symtabs_matching): Likewise.
15062         (dwarf2_initialize_objfile): Likewise.
15063         (dwarf2_build_psymtabs): Likewise.
15064         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15065         this_cu.
15066         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15067         (read_and_check_comp_unit_head): Likewise.
15068         (read_abbrev_offset): Likewise.
15069         (create_debug_type_hash_table): Likewise.
15070         (create_debug_types_hash_table): Likewise.
15071         (create_all_type_units): Replace objfile parameter with
15072         dwarf2_per_objfile.
15073         (add_type_unit): Add dwarf2_per_objfile parameter.
15074         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15075         with dwarf2_per_objfile.
15076         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15077         (lookup_dwp_signatured_type): Likewise.
15078         (lookup_signatured_type): Likewise.
15079         (read_cutu_die_from_dwo): Likewise.
15080         (init_tu_and_read_dwo_dies): Likewise.
15081         (init_cutu_and_read_dies): Likewise.
15082         (init_cutu_and_read_dies_no_follow): Likewise.
15083         (allocate_type_unit_groups_table): Add objfile parameter.
15084         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15085         (get_type_unit_group): Likewise.
15086         (process_psymtab_comp_unit): Update call.
15087         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15088         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15089         (print_tu_stats): Likewise.
15090         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15091         in void* parameter.
15092         (build_type_psymtabs): Change objfile parameter to
15093         dwarf2_per_objfile.
15094         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15095         passed in void* parameter.
15096         (process_skeletonless_type_units): Change objfile parameter to
15097         dwarf2_per_objfile.
15098         (set_partial_user): Likewise.
15099         (dwarf2_build_psymtabs_hard): Likewise.
15100         (read_comp_units_from_section): Likewise.
15101         (create_all_comp_units): Likewise.
15102         (scan_partial_symbols): Update calls.
15103         (add_partial_symbol): Likewise.
15104         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15105         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15106         (process_queue): Add dwarf2_per_objfile parameter.
15107         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15108         (compute_compunit_symtab_includes): Likewise.
15109         (process_cu_includes): Add dwarf2_per_objfile parameter.
15110         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15111         (process_full_type_unit): Likewise.
15112         (process_imported_unit_die): Update call.
15113         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15114         (read_file_scope): Likewise.
15115         (allocate_dwo_file_hash_table): Add objfile parameter.
15116         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15117         (create_cus_hash_table): Likewise.
15118         (create_dwp_hash_table): Likewise.
15119         (create_dwo_unit_in_dwp_v1): Likewise.
15120         (create_dwp_v2_section): Likewise.
15121         (create_dwo_unit_in_dwp_v2): Likewise.
15122         (lookup_dwo_unit_in_dwp): Likewise.
15123         (try_open_dwop_file): Likewise.
15124         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15125         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15126         cleanup to include a reference to dwarf2_per_objfile.
15127         (open_dwp_file): Add dwarf2_per_objfile parameter.
15128         (open_and_init_dwp_file): Likewise.
15129         (get_dwp_file): Likewise.
15130         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15131         (queue_and_load_all_dwo_tus): Update call.
15132         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15133         data.
15134         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15135         (dwarf2_ranges_process): Likewise.
15136         (dwarf2_get_pc_bounds): Likewise.
15137         (mark_common_block_symbol_computed): Likewise.
15138         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15139         (dwarf2_read_abbrevs): Update call.
15140         (read_partial_die): Use dwarf2_per_objfile from cu.
15141         (find_partial_die): Likewise.
15142         (fixup_partial_die): Likewise.
15143         (read_attribute_value): Likewise.
15144         (read_indirect_string_at_offset_from): Add objfile parameter.
15145         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15146         parameter.
15147         (read_indirect_string_from_dwz): Add objfile parameter.
15148         (read_indirect_string): Add objfile parameter.
15149         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15150         (read_addr_index): Use dwarf2_per_objfile from cu.
15151         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15152         call dw2_setup.
15153         (read_str_index): Use dwarf2_per_objfile from cu.
15154         (get_debug_line_section): Likewise.
15155         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15156         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15157         (new_symbol_full): Use dwarf2_per_objfile from cu.
15158         (build_error_marker_type): Likewise.
15159         (lookup_die_type): Likewise.
15160         (determine_prefix): Likewise.
15161         (follow_die_offset): Likewise.
15162         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15163         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15164         (dwarf2_fetch_die_type_sect_off): Likewise.
15165         (dwarf2_get_die_type): Likewise.
15166         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15167         (get_signatured_type): Likewise.
15168         (get_DW_AT_signature_type): Likewise.
15169         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15170         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15171         (cu_debug_loc_section): Likewise.
15172         (fill_in_loclist_baton): Likewise.
15173         (dwarf2_symbol_mark_computed): Likewise.
15174         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15175         dwarf2_per_objfile.
15176         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15177         parameter.
15178         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15179         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15180         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15181         (set_die_type): Use dwarf2_free_objfile from cu.
15182         (get_die_type_at_offset): Likewise.
15183         (dwarf2_per_objfile_free): Don't assign global variable.
15184         (debug_names) <constructor>: Add dwarf2_per_objfile
15185         parameter, update m_debugstrlookup construction.
15186         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15187         parameter.
15188         <m_dwarf2_per_objfile>: New field.
15189         <lookup>: Use m_dwarf2_per_objfile.
15190         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15191         (psyms_seen_size): Likewise.
15192         (write_gdbindex): Replace objfile parameter with
15193         dwarf2_per_objfile.
15194         (write_debug_names): Likewise.
15195         (write_psymtabs_to_index): Likewise.
15196         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15197         calls.
15198
15199 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15200
15201         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15202         <dwarf2_per_objfile>: New field.
15203         (struct dwarf2_per_cu_data) <objfile>: Remove.
15204         <dwarf2_per_objfile>: New field.
15205         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15206         of objfile.
15207         (create_signatured_type_table_from_index): Likewise.
15208         (create_debug_type_hash_table): Likewise.
15209         (fill_in_sig_entry_from_dwo_entry): Likewise.
15210         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15211         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15212         objfile.
15213         (create_partial_symtab): Access objfile through
15214         dwarf2_per_objfile.
15215         (process_psymtab_comp_unit_reader): Likewise.
15216         (read_comp_units_from_section): Likewise.
15217         (scan_partial_symbols): Likewise.
15218         (add_partial_symbol): Likewise.
15219         (add_partial_subprogram): Likewise.
15220         (peek_die_abbrev): Likewise.
15221         (fixup_go_packaging): Likewise.
15222         (process_full_comp_unit): Likewise.
15223         (process_full_type_unit): Likewise.
15224         (process_imported_unit_die): Likewise.
15225         (dwarf2_compute_name): Likewise.
15226         (dwarf2_physname): Likewise.
15227         (read_import_statement): Likewise.
15228         (create_cus_hash_table): Assign dwarf2_physname instead of
15229         objfile.
15230         (read_func_scope): Access objfile through dwarf2_per_objfile.
15231         (read_lexical_block_scope): Likewise.
15232         (read_call_site_scope): Likewise.
15233         (read_variable): Likewise.
15234         (dwarf2_rnglists_process): Likewise.
15235         (dwarf2_ranges_process): Likewise.
15236         (dwarf2_ranges_read): Likewise.
15237         (dwarf2_record_block_ranges): Likewise.
15238         (dwarf2_add_field): Likewise.
15239         (dwarf2_add_member_fn): Likewise.
15240         (read_structure_type): Likewise.
15241         (process_structure_scope): Likewise.
15242         (read_enumeration_type): Likewise.
15243         (read_array_type): Likewise.
15244         (read_common_block): Likewise.
15245         (read_namespace_type): Likewise.
15246         (read_namespace): Likewise.
15247         (read_module_type): Likewise.
15248         (read_tag_pointer_type): Likewise.
15249         (read_tag_ptr_to_member_type): Likewise.
15250         (read_tag_string_type): Likewise.
15251         (read_subroutine_type): Likewise.
15252         (read_typedef): Likewise.
15253         (read_base_type): Likewise.
15254         (attr_to_dynamic_prop): Likewise.
15255         (read_subrange_type): Likewise.
15256         (read_unspecified_type): Likewise.
15257         (load_partial_dies): Likewise.
15258         (read_partial_die): Likewise.
15259         (find_partial_die): Likewise.
15260         (guess_partial_die_structure_name): Likewise.
15261         (fixup_partial_die): Likewise.
15262         (read_attribute_value): Likewise.
15263         (read_addr_index_from_leb128): Likewise.
15264         (dwarf2_read_addr_index): Likewise.
15265         (dwarf2_string_attr): Likewise.
15266         (lnp_state_machine::check_line_address): Likewise.
15267         (dwarf_decode_lines_1): Likewise.
15268         (dwarf_decode_lines): Likewise.
15269         (dwarf2_start_symtab): Likewise.
15270         (var_decode_location): Likewise.
15271         (new_symbol_full): Likewise.
15272         (dwarf2_const_value_data): Likewise.
15273         (dwarf2_const_value_attr): Likewise.
15274         (dwarf2_const_value): Likewise.
15275         (die_type): Likewise.
15276         (die_containing_type): Likewise.
15277         (lookup_die_type): Likewise.
15278         (guess_full_die_structure_name): Likewise.
15279         (anonymous_struct_prefix): Likewise.
15280         (dwarf2_name): Likewise.
15281         (follow_die_ref_or_sig): Likewise.
15282         (follow_die_offset): Likewise.
15283         (follow_die_ref): Likewise.
15284         (dwarf2_fetch_die_loc_sect_off): Likewise.
15285         (dwarf2_fetch_constant_bytes): Likewise.
15286         (dwarf2_fetch_die_type_sect_off): Likewise.
15287         (dwarf2_get_die_type): Likewise.
15288         (follow_die_sig): Likewise.
15289         (decode_locdesc): Likewise.
15290         (dwarf2_per_cu_objfile): Likewise.
15291         (dwarf2_per_cu_text_offset): Likewise.
15292         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15293         objfile.
15294         (set_die_type): Access objfile through
15295         dwarf2_per_objfile.
15296
15297 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15298
15299         * valprint.c (converted_character_d): Remove typedef.
15300         (DEF_VEC_O (converted_character_d)): Remove.
15301         (count_next_character): Use std::vector.
15302         (print_converted_chars_to_obstack): Likewise.
15303         (generic_printstr): Likewise.
15304
15305 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15306
15307         * xml-support.h (struct gdb_xml_value): Add constructor.
15308         <value>: Change type to unique_xmalloc_ptr.
15309         (gdb_xml_value_s): Remove typedef.
15310         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15311         (gdb_xml_element_start_handler): Change parameter type to
15312         std::vector.
15313         (xml_find_attribute): Likewise.
15314         * xml-support.c (xml_find_attribute): Change parameter type to
15315         std::vector and adjust.
15316         (gdb_xml_values_cleanup): Remove.
15317         (gdb_xml_parser::start_element): Adjust to std::vector.
15318         (xinclude_start_include): Change paraeter type to std::vector
15319         and adjust.
15320         * btrace.c (check_xml_btrace_version): Likewise.
15321         (parse_xml_btrace_block): Likewise.
15322         (parse_xml_btrace_pt_config_cpu): Likewise.
15323         (parse_xml_btrace_pt): Likewise.
15324         (parse_xml_btrace_conf_bts): Likewise.
15325         (parse_xml_btrace_conf_pt): Likewise.
15326         * memory-map.c (memory_map_start_memory): Likewise.
15327         (memory_map_start_property): Likewise.
15328         * osdata.c (osdata_start_osdata): Likewise.
15329         (osdata_start_item): Likewise.
15330         (osdata_start_column): Likewise.
15331         * remote.c (start_thread): Likewise.
15332         * solib-aix.c (library_list_start_library): Likewise.
15333         (library_list_start_list): Likewise.
15334         * solib-svr4.c (library_list_start_library): Likewise.
15335         (svr4_library_list_start_list): Likewise.
15336         * solib-target.c (library_list_start_segment): Likewise.
15337         (library_list_start_section): Likewise.
15338         (library_list_start_library): Likewise.
15339         (library_list_start_list): Likewise.
15340         * tracepoint.c (traceframe_info_start_memory): Likewise.
15341         (traceframe_info_start_tvar): Likewise.
15342         * xml-syscall.c (syscall_start_syscall): Likewise.
15343         * xml-tdesc.c (tdesc_start_target): Likewise.
15344         (tdesc_start_feature): Likewise.
15345         (tdesc_start_reg): Likewise.
15346         (tdesc_start_union): Likewise.
15347         (tdesc_start_struct): Likewise.
15348         (tdesc_start_flags): Likewise.
15349         (tdesc_start_enum): Likewise.
15350         (tdesc_start_field): Likewise.
15351         (tdesc_start_enum_value): Likewise.
15352         (tdesc_start_vector): Likewise.
15353
15354 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15355
15356         * extension.h (struct xmethod_worker) <clone>: Remove.
15357         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15358         Remove.
15359         (python_xmethod_worker::clone): Remove.
15360         * valops.c (find_overload_match): Use std::move instead of
15361         clone.
15362
15363 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15364
15365         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15366         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15367         <free_xmethod_worker_data>: Remove.
15368         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15369         <get_xmethod_arg_types>: Remove.
15370         <get_xmethod_result_type>: Remove.
15371         <invoke_xmethod>: Remove.
15372         * extension.c (new_xmethod_worker): Remove.
15373         (clone_xmethod_worker): Remove.
15374         (get_matching_xmethod_workers): Return void, pass std::vector by
15375         pointer.
15376         (get_xmethod_arg_types): Rename to...
15377         (xmethod_worker::get_arg_types): ... this, and adjust.
15378         (get_xmethod_result_type): Rename to...
15379         (xmethod_worker::get_result_type): ... this, and adjust.
15380         (invoke_xmethod): Remove.
15381         (free_xmethod_worker): Remove.
15382         (free_xmethod_worker_vec): Remove.
15383         * extension.h (enum ext_lang_rc): Move here from
15384         extension-priv.h.
15385         (struct xmethod_worker): Add constructor and destructor.
15386         <data>: Remove.
15387         <value>: Remove.
15388         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15389         virtual pure methods.
15390         <get_arg_types, get_result_type>: New methods.
15391         (xmethod_worker_ptr): Remove typedef.
15392         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15393         (xmethod_worker_vec): Remove typedef.
15394         (xmethod_worker_up): New typedef.
15395         (invoke_xmethod): Remove.
15396         (clone_xmethod_worker): Remove.
15397         (free_xmethod_worker): Remove.
15398         (free_xmethod_worker_vec): Remove.
15399         (get_xmethod_arg_types): Remove.
15400         (get_xmethod_result_type): Remove.
15401         * valops.c (find_method_list): Use std::vector, don't use
15402         intermediate vector.
15403         (value_find_oload_method_list): Use std::vector.
15404         (find_overload_match): Use std::vector.
15405         (find_oload_champ): Use std::vector.
15406         * value.c (value_free): Use operator delete.
15407         (value_of_xmethod): Rename to...
15408         (value_from_xmethod): ... this.  Don't assign
15409         xmethod_worker::value, take rvalue-reference.
15410         (result_type_of_xmethod): Adjust.
15411         (call_xmethod): Adjust.
15412         * value.h: Include extension.h.
15413         (struct xmethod_worker): Don't forward-declare.
15414         (value_of_xmethod): Rename to...
15415         (value_from_xmethod): ... this, take rvalue-reference.
15416         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15417         (struct python_xmethod_worker): ... this, add constructor and
15418         destructor.
15419         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15420         (gdbpy_free_xmethod_worker_data): Rename to...
15421         (python_xmethod_worker::~python_xmethod_worker): ... this and
15422         adjust.
15423         (gdbpy_clone_xmethod_worker_data): Rename to...
15424         (python_xmethod_worker::clone): ... this and adjust.
15425         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15426         temporary vector.
15427         (gdbpy_get_xmethod_arg_types): Rename to...
15428         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15429         (gdbpy_get_xmethod_result_type): Rename to...
15430         (python_xmethod_worker::do_get_result_type): ... this and
15431         adjust.
15432         (gdbpy_invoke_xmethod): Rename to...
15433         (python_xmethod_worker::invoke): ... this and adjust.
15434         (new_python_xmethod_worker): Rename to...
15435         (python_xmethod_worker::python_xmethod_worker): ... this and
15436         adjust.
15437         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15438         Remove.
15439         (gdbpy_free_xmethod_worker_data): Remove.
15440         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15441         (gdbpy_get_xmethod_arg_types): Remove.
15442         (gdbpy_get_xmethod_result_type): Remove.
15443         (gdbpy_invoke_xmethod): Remove.
15444         * python/python.c (python_extension_ops): Remove obsolete
15445         callbacks.
15446
15447 2018-01-05  Pedro Alves  <palves@redhat.com>
15448
15449         PR gdb/18653
15450         * common/signals-state-save-restore.c
15451         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15452         find a custom handler preinstalled, instead of internal erroring.
15453         But only warn if !quiet.
15454         * common/signals-state-save-restore.h
15455         (save_original_signals_state): New parameter 'quiet'.
15456         * main.c (captured_main_1): Move save_original_signals_state call
15457         after option handling, and pass QUIET.
15458
15459 2018-01-05  Pedro Alves  <palves@redhat.com>
15460
15461         * spu-tdep.c (spu_catch_start): Pass
15462         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15463
15464 2018-01-05  Pedro Alves  <palves@redhat.com>
15465
15466         PR gdb/22670
15467         * ada-lang.c (literal_symbol_name_matcher): New function.
15468         (ada_get_symbol_name_matcher): Use it for
15469         symbol_name_match_type::SEARCH_NAME.
15470         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15471         it down instead of assuming symbol_name_match_type::FULL.
15472         * block.h (block_lookup_symbol): New parameter 'match_type'.
15473         * c-valprint.c (print_unpacked_pointer): Use
15474         lookup_symbol_search_name instead of lookup_symbol.
15475         * compile/compile-object-load.c (get_out_value_type): Pass down
15476         symbol_name_match_type::SEARCH_NAME.
15477         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15478         symbol_name_match_type::FULL.
15479         * cp-support.c (cp_get_symbol_name_matcher): Handle
15480         symbol_name_match_type::SEARCH_NAME.
15481         * infrun.c (insert_exception_resume_breakpoint): Use
15482         lookup_symbol_search_name.
15483         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15484         * psymtab.c (maintenance_check_psymtabs): Use
15485         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15486         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15487         SYMBOL_SEARCH_NAME.
15488         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15489         if symbol_name_match_type::SEARCH_NAME.
15490         (lookup_symbol_in_language): Pass down
15491         symbol_name_match_type::FULL.
15492         (lookup_symbol_search_name): New.
15493         (lookup_language_this): Pass down
15494         symbol_name_match_type::SEARCH_NAME.
15495         (lookup_symbol_aux, lookup_local_symbol): New parameter
15496         'match_type'.  Pass it down.
15497         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15498         (lookup_symbol_search_name): New declaration.
15499         (lookup_symbol_in_block): New 'match_type' parameter.
15500
15501 2018-01-05  Pedro Alves  <palves@redhat.com>
15502
15503         PR gdb/22670
15504         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15505         ada_lookup_symbol.
15506         (ada_lookup_symbol): Reimplement in terms of
15507         ada_lookup_symbol_list, bits factored out from
15508         ada_lookup_encoded_symbol.
15509
15510 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15511
15512         * ada-exp.y (write_object_renaming): When subscripting an array
15513         using a symbol as the index, pass the block in call to
15514         ada_lookup_encoded_symbol when looking that symbol up.
15515
15516 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15517
15518         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15519         TYPE_INDEX_TYPE.
15520
15521 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15522
15523         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15524         the case where VALUE_LVAL (val0) is not lval_memory.
15525
15526 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15527
15528         * ada-valprint.c (print_optional_low_bound): Handle
15529         character-indexed array printing like boolean-indexed array
15530         printing.
15531
15532 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15533
15534         * NEWS: Create a new section for the next release branch.
15535         Rename the section of the current branch, now that it has
15536         been cut.
15537
15538 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15539
15540         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15541         * version.in: Bump version to 8.1.50.DATE-git.
15542
15543 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15544
15545         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15546         Add field.
15547         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15548         Add field.
15549         (default_exception_support_info) <catch_handlers_sym>: Add field.
15550         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15551         (ada_exception_name_addr_1): Add "catch handlers" handling.
15552         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15553         Update all callers.
15554         (create_excep_cond_exprs) <ex>: Add parameter.
15555         (re_set_exception): Update create_excep_cond_exprs call.
15556         (print_it_exception, print_one_exception, print_mention_exception)
15557         (print_recreate_exception): Add "catch handler" handling.
15558         (allocate_location_catch_handlers, re_set_catch_handlers)
15559         (check_status_catch_handlers, print_it_catch_handlers)
15560         (print_one_catch_handlers, print_mention_catch_handlers)
15561         (print_recreate_catch_handlers): New function.
15562         (catch_handlers_breakpoint_ops): New variable.
15563         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15564         Add parameter.  Add "catch handler" handling.
15565         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15566         Add "catch handler" handling.
15567         (ada_exception_catchpoint_cond_string): Add "catch handler"
15568         handling.
15569         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15570         call.
15571         (catch_ada_handlers_command): New function.
15572         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15573         operations structure.
15574         (_initialize_ada_language): Add "catch handlers" command entry.
15575         * NEWS: Document "catch handlers" feature.
15576
15577 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15578
15579         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15580         account when creating the array type of the slice.
15581         (ada_value_slice): Likewise.
15582
15583 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15584
15585         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15586         New enum value.
15587         (create_array_type_with_stride): Add byte_stride_prop parameter.
15588         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15589         New parameter.  Update all callers in this file.
15590         (array_type_has_dynamic_stride): New function.
15591         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15592         of arrays with dynamic byte strides.
15593         * dwarf2read.c (read_array_type): Add support for dynamic
15594         DW_AT_byte_stride attributes.
15595
15596 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15597
15598         * dwarf2read.c (read_unspecified_type): Treat
15599         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15600
15601 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15602
15603         Update copyright year range in all GDB files.
15604
15605 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15606
15607         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15608         and gdb/testsuite/gdb.base/step-line.c.
15609
15610 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15611
15612         * copyright.py (main): Dump the contents of
15613         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15614         even if BY_HAND is empty.
15615
15616 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15617
15618         * top.c (print_gdb_version): Update Copyright year in version
15619         message.
15620
15621 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15622
15623         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15624
15625 For older changes see ChangeLog-2017.
15626 \f
15627 Local Variables:
15628 mode: change-log
15629 left-margin: 8
15630 fill-column: 74
15631 version-control: never
15632 coding: utf-8
15633 End: